{"version":3,"file":"static/js/1542.f4f5df45.chunk.js","mappings":"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","sources":["utils/translations/global-translations.tsx","config/globals.ts","packages/ui/layout/styled.ts","packages/ui/layout/index.tsx","packages/ui/theme/global-styles.ts","packages/ui/theme/theme.ts","packages/utils/routes/custom-router.tsx","components/antd-config-provider/index.tsx","components/translations-bar/styled.ts","components/translations-bar/index.tsx","containers/translations/index.tsx","packages/hooks/current-path/index.ts","constants/menu.tsx","components/consultant-menu/index.tsx","components/dashboard-menu/index.tsx","components/sidebar-logo/styled.ts","components/sidebar-logo/index.tsx","components/topbar/index.tsx","packages/utils/ga4/user.ts","scripts/clarity/index.ts","containers/analytics/index.tsx","scripts/google-tag-manager/index.ts","packages/utils/auth/index.ts","containers/dashboard-layout/index.tsx","scripts/usersnap/index.ts","config/index.ts","App.tsx","main.tsx","packages/react-query/index.tsx","packages/ui/center/styled.ts","packages/ui/center/index.tsx","packages/ui/form-with-schema/form-dev-presets.tsx","packages/ui/form-with-schema/index.tsx","packages/ui/icon/icons/arrow-left.svg","packages/ui/icon/icons/arrow-right.svg","packages/ui/icon/icons/beneficial.svg","packages/ui/icon/icons/biological-action.svg","packages/ui/icon/icons/biological-spray-action.svg","packages/ui/icon/icons/camera.svg","packages/ui/icon/icons/center.svg","packages/ui/icon/icons/chemical-action.svg","packages/ui/icon/icons/chevron-back.svg","packages/ui/icon/icons/chevron-next.svg","packages/ui/icon/icons/circle.svg","packages/ui/icon/icons/circle-arrow-left.svg","packages/ui/icon/icons/circle-arrow-right.svg","packages/ui/icon/icons/cross.svg","packages/ui/icon/icons/customer.svg","packages/ui/icon/icons/department-avatar.svg","packages/ui/icon/icons/disease.svg","packages/ui/icon/icons/draw.svg","packages/ui/icon/icons/globe.svg","packages/ui/icon/icons/horiver.svg","packages/ui/icon/icons/indoor.svg","packages/ui/icon/icons/leaf.svg","packages/ui/icon/icons/link.svg","packages/ui/icon/icons/location-avatar.svg","packages/ui/icon/icons/nutrient.svg","packages/ui/icon/icons/outdoor.svg","packages/ui/icon/icons/pest.svg","packages/ui/icon/icons/pollination.svg","packages/ui/icon/icons/trash.svg","packages/ui/icon/icons/triangle.svg","packages/ui/icon/icons/index.tsx","packages/ui/icon/index.tsx","packages/utils/ga4/event.ts","packages/utils/ga4/utils.ts","packages/utils/routes/index.ts","stores/auth/index.ts","stores/compare/index.tsx","stores/settings/index.tsx","stores/translations/index.ts","utils/auth/index.ts","utils/hva/index.ts","../../../services/hva/spec/core/ApiError.ts","../../../services/hva/spec/core/OpenAPI.ts","../../../services/hva/spec/core/request.ts","../../../services/hva/spec/models/BillingPlanCreate.ts","../../../services/hva/spec/models/BillingPlanDetails.ts","../../../services/hva/spec/models/BillingProductCreate.ts","../../../services/hva/spec/models/BillingProductDetails.ts","../../../services/hva/spec/models/BillingSubscriptionCreate.ts","../../../services/hva/spec/models/BillingSubscriptionDetails.ts","../../../services/hva/spec/models/DocToCItem.ts","../../../services/hva/spec/models/DocToCItemCreate.ts","../../../services/hva/spec/models/DocToCItemSettings.ts","../../../services/hva/spec/models/DocTopic.ts","../../../services/hva/spec/models/DocTopicCreate.ts","../../../services/hva/spec/models/DocTopicInfo.ts","../../../services/hva/spec/models/DocTopicSettings.ts","../../../services/hva/spec/models/FmsConfiguration.ts","../../../services/hva/spec/models/FmsConfigurationCreate.ts","../../../services/hva/spec/models/FmsEnterpriseDetails.ts","../../../services/hva/spec/models/FmsEnterpriseIdentifiers.ts","../../../services/hva/spec/models/FmsProperty.ts","../../../services/hva/spec/models/FmsUserAction.ts","../../../services/hva/spec/models/KpAction.ts","../../../services/hva/spec/models/KpActionCreate.ts","../../../services/hva/spec/models/KpActionSettings.ts","../../../services/hva/spec/models/KpAlert.ts","../../../services/hva/spec/models/KpAlertCreate.ts","../../../services/hva/spec/models/KpAlertSettings.ts","../../../services/hva/spec/models/KpDepartment.ts","../../../services/hva/spec/models/KpDepartmentCreate.ts","../../../services/hva/spec/models/KpDepartmentDetails.ts","../../../services/hva/spec/models/KpDepartmentSettings.ts","../../../services/hva/spec/models/KpDxCustomer.ts","../../../services/hva/spec/models/KpDxCustomerCreate.ts","../../../services/hva/spec/models/KpObservation.ts","../../../services/hva/spec/models/KpObservationCreate.ts","../../../services/hva/spec/models/KpRecData.ts","../../../services/hva/spec/models/KpScoutDataImport.ts","../../../services/hva/spec/models/KpScoutReference.ts","../../../services/hva/spec/models/KpScoutReferenceCreate.ts","../../../services/hva/spec/models/KpScoutReferenceSettings.ts","../../../services/hva/spec/models/KpScoutTemplateRecord.ts","../../../services/hva/spec/models/KpScoutTemplateRecordCreate.ts","../../../services/hva/spec/models/KpScoutTemplateRecordSettings.ts","../../../services/hva/spec/models/KpScoutUserProperty.ts","../../../services/hva/spec/models/KpUserPropertyCreate.ts","../../../services/hva/spec/services/ActionsService.ts","../../../services/hva/spec/services/AlertsService.ts","../../../services/hva/spec/services/BioProductsService.ts","../../../services/hva/spec/services/ChemProductsService.ts","../../../services/hva/spec/services/ConfigurationsService.ts","../../../services/hva/spec/services/CropTemplatesService.ts","../../../services/hva/spec/services/CsIntegrationService.ts","../../../services/hva/spec/services/DepartmentsService.ts","../../../services/hva/spec/services/EnterprisesService.ts","../../../services/hva/spec/services/GeoCodeService.ts","../../../services/hva/spec/services/LocationsService.ts","../../../services/hva/spec/services/ScoutAggregatedDataService.ts","../../../services/hva/spec/services/ScoutDataImportsService.ts","../../../services/hva/spec/services/ScoutTemplateRecordsDepartmentService.ts","../../../services/hva/spec/services/ScoutTemplateRecordsLocationService.ts","../../../services/hva/spec/services/ScoutTemplateRecordsService.ts","../../../services/hva/spec/services/ScoutTripCardsService.ts","../../../services/hva/spec/services/ScoutTripObservationsService.ts","../../../services/hva/spec/services/ScoutTripsService.ts","../../../services/hva/spec/services/ScoutUsersService.ts","../../../services/hva/spec/services/SignUpInvitationsService.ts","../../../services/hva/spec/services/UserEnterpriseRelationsService.ts","../../../services/hva/spec/services/UsersService.ts","../../../services/hva/spec/services/VisitReportsService.ts","../../../services/koppert/spec/core/ApiError.ts","../../../services/koppert/spec/core/CancelablePromise.ts","../../../services/koppert/spec/core/OpenAPI.ts","../../../services/koppert/spec/models/AddRemoveRelationsDto.ts","../../../services/koppert/spec/models/AlertsReportDataDto.ts","../../../services/koppert/spec/models/CreateDepartmentDto.ts","../../../services/koppert/spec/models/CreateEnterpriseDto.ts","../../../services/koppert/spec/models/CreateObservationItemDto.ts","../../../services/koppert/spec/models/CreateObservationPhotoDto.ts","../../../services/koppert/spec/models/CreateTeamMemberDto.ts","../../../services/koppert/spec/models/CreateUserDto.ts","../../../services/koppert/spec/models/Department.ts","../../../services/koppert/spec/models/Enterprise.ts","../../../services/koppert/spec/models/Observation.ts","../../../services/koppert/spec/models/ObservationItem.ts","../../../services/koppert/spec/models/ObservationMethods.ts","../../../services/koppert/spec/models/ObservationPhoto.ts","../../../services/koppert/spec/models/ScoutableCategories.ts","../../../services/koppert/spec/models/ScoutableDataDto.ts","../../../services/koppert/spec/models/ScoutableIcons.ts","../../../services/koppert/spec/models/ScoutableStages.ts","../../../services/koppert/spec/models/SignUpBodyDto.ts","../../../services/koppert/spec/models/TeamMemberDto.ts","../../../services/koppert/spec/models/UpdateDepartmentDto.ts","../../../services/koppert/spec/models/UpdateEnterpriseDto.ts","../../../services/koppert/spec/models/UpdateObservationItemDto.ts","../../../services/koppert/spec/models/UpdateObservationPhotoDto.ts","../../../services/koppert/spec/models/UpdateUserDto.ts","../../../services/koppert/spec/models/User.ts","../../../services/koppert/spec/models/UserDto.ts","../../../services/koppert/spec/models/UserMetadataDto.ts","../../../packages/stores/auth/index.ts","../../../packages/stores/enterprise/index.ts","../../../packages/stores/sso/index.ts","../../../services/koppert/spec/core/request.ts","../../../services/koppert/spec/services/AuthenticationService.ts","../../../services/koppert/spec/services/ConsultantNotesService.ts","../../../services/koppert/spec/services/DepartmentsService.ts","../../../services/koppert/spec/services/EnterprisesService.ts","../../../services/koppert/spec/services/LocationsService.ts","../../../services/koppert/spec/services/PermissionsService.ts","../../../services/koppert/spec/services/ProtectService.ts","../../../services/koppert/spec/services/ReportsService.ts","../../../services/koppert/spec/services/RolesService.ts","../../../services/koppert/spec/services/ScoutablesService.ts","../../../services/koppert/spec/services/ScoutPreferencesService.ts","../../../services/koppert/spec/services/ScoutPreferencesTemplatesService.ts","../../../services/koppert/spec/services/TeamMembersService.ts","../../../services/koppert/spec/services/UsersService.ts","../../../services/koppert/utils/query-factory/index.ts","../../../services/koppert/hooks/consultant-notes/index.ts","../../../services/koppert/hooks/auth/index.ts","../../../services/koppert/hooks/departments/index.ts","../../../services/koppert/hooks/enterprises/index.ts","../../../services/koppert/hooks/locations/index.ts","../../../services/koppert/hooks/roles/index.ts","../../../services/koppert/hooks/permissions/index.ts","../../../services/koppert/hooks/protect/index.ts","../../../services/koppert/hooks/reports/index.ts","../../../services/koppert/hooks/scout-preferences/index.ts","../../../services/koppert/hooks/scout-preferences-templates/index.ts","../../../services/koppert/hooks/scoutables/index.ts","../../../services/koppert/hooks/team-members/index.ts","../../../services/koppert/hooks/users/index.ts"],"sourcesContent":["import { IntlShape } from 'react-intl';\nimport * as yup from 'yup';\n\nimport { useTranslationsStore } from 'src/stores/translations';\n\nfunction globalYup({ formatMessage: t }: IntlShape) {\n // Adds translations for the default error messages generated by yup\n\n yup.setLocale({\n mixed: {\n required: ({ label }) => t({ id: 'Form.Error.General.require' }, label ? { label: t({ id: label }) } : undefined),\n notType: ({ type, label }) => {\n switch (type) {\n case 'number':\n return t({ id: 'Form.Error.General.integer' }, label ? { label: t({ id: label }) } : undefined);\n default:\n return 'Wrong type error or any other custom error message';\n }\n },\n },\n array: {\n min: ({ label, min }) => t({ id: 'Form.Error.List.MinLength' }, { label: t({ id: label }), min }),\n },\n string: {\n email: 'ServerError.Code.user/invalid-email',\n min: ({ label, min }) => t({ id: 'Form.Error.String.MinLength' }, { label: t({ id: label }), min }),\n max: ({ label, max }) => t({ id: 'Form.Error.String.MaxLength' }, { label: t({ id: label }), max }),\n },\n date: {\n min: ({ min }) => ({ key: 'Form.Error.date.largeThan', values: { min } }),\n },\n number: {\n moreThan: ({ label, more }) => {\n const translatedLabel = t({ id: label });\n\n return t({ id: 'Form.Error.Number.MoreThan' }, { label: translatedLabel, more });\n },\n lessThan: ({ label, less }) => {\n const translatedLabel = t({ id: label });\n\n return t({ id: 'Form.Error.Number.LessThan' }, { label: translatedLabel, less });\n },\n max: ({ label, max }) => {\n const translatedLabel = t({ id: label });\n\n return t({ id: 'Form.Error.Number.Max' }, { label: translatedLabel, max });\n },\n min: ({ label, min }) => {\n const translatedLabel = t({ id: label });\n\n return t({ id: 'Form.Error.Number.Min' }, { label: translatedLabel, min });\n },\n },\n });\n}\n\nexport const subscribeTranslations = () => {\n useTranslationsStore.subscribe((state) => {\n if (state.intl) {\n globalYup(state.intl);\n }\n });\n};\n","import dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\nimport isLeapYear from 'dayjs/plugin/isLeapYear';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport isSameOrBefore from 'dayjs/plugin/isSameOrBefore';\nimport localeData from 'dayjs/plugin/localeData';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport updateLocale from 'dayjs/plugin/updateLocale';\nimport weekday from 'dayjs/plugin/weekday';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport weekYear from 'dayjs/plugin/weekYear';\n\nimport { subscribeTranslations } from 'src/utils/translations/global-translations';\n\nconst suppressUnhandledErrorsInDevMode = () => {\n if (process.env.NODE_ENV === 'development') {\n const consoleError = console.error.bind(console);\n\n console.error = (errObj, ...args) => {\n if (\n (typeof errObj.message === 'string' &&\n errObj?.message?.startsWith('[@formatjs/intl Error MISSING_TRANSLATION] Missing message:')) ||\n args.find((arg) => arg?.message?.startsWith('[@formatjs/intl Error MISSING_TRANSLATION] Missing message:')) ||\n errObj?.startsWith?.('Warning: [antd: Form.Item] `name`') ||\n args.includes('findDOMNode')\n ) {\n return;\n }\n consoleError(errObj, ...args);\n };\n }\n};\n\nexport const setupGlobals = () => {\n dayjs.extend(weekOfYear);\n dayjs.extend(isoWeek);\n dayjs.extend(isSameOrBefore);\n dayjs.extend(updateLocale);\n dayjs.extend(localeData);\n dayjs.extend(localizedFormat);\n dayjs.extend(weekday);\n dayjs.extend(weekYear);\n dayjs.extend(advancedFormat);\n dayjs.extend(customParseFormat);\n dayjs.extend(isLeapYear);\n dayjs.extend((o, c) => {\n // todo support Wo (ISO week)\n const proto = c.prototype;\n const oldFormat = proto.format;\n\n proto.format = function f(formatStr) {\n const str = (formatStr || '').replace('Wo', 'wo');\n\n return oldFormat.bind(this)(str);\n };\n });\n\n // listen for translation changes\n subscribeTranslations();\n\n suppressUnhandledErrorsInDevMode();\n};\n","import { LeftOutlined } from '@ant-design/icons';\nimport { Button } from 'antd';\nimport styled from 'styled-components/macro';\n\nexport const InfoButton = styled(Button)`\n align-self: center;\n background-color: ${(p) => p.theme.colors['ui-warning']} !important;\n border-color: ${(p) => p.theme.colors['ui-warning']} !important;\n\n :hover {\n color: white !important;\n }\n`;\n\nexport const Trigger = styled(LeftOutlined)`\n width: 100%;\n height: 14px;\n margin: 14px 0;\n cursor: pointer;\n`;\n\nexport const TriggerContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n","import React from 'react';\nimport { Navigate, Route, RouteProps, Routes, useLocation } from 'react-router-dom';\nimport { QuestionOutlined } from '@ant-design/icons';\nimport { Layout as AntLayout, Spin } from 'antd';\n\nimport Center from 'src/packages/ui/center';\nimport { getDynamicLayoutRoutes } from 'src/packages/utils/routes';\nimport { PageRoutes } from 'src/packages/utils/routes/types';\n\nimport * as Styled from './styled';\n\nfunction FallbackLoader() {\n return (\n
\n \n
\n );\n}\n\ntype LayoutProps = {\n pages: Record<\n string,\n () => Promise<{\n [key: string]: any;\n }>\n >;\n notFoundRedirect?: string;\n sidebar?: (domain?: string) => JSX.Element | undefined | null | false;\n header?: (domain: string) => JSX.Element | undefined | null | false;\n onRoutes?: (arg: PageRoutes) => JSX.Element[] | JSX.Element;\n};\n\nfunction Layout({ sidebar, header, pages, onRoutes, notFoundRedirect }: LayoutProps) {\n const location = useLocation();\n const domainRef = React.useRef('');\n\n const [collapsed, setCollapsed] = React.useState(false);\n\n const handleRoutes = React.useCallback(\n ({ routes, domain }: PageRoutes) => {\n const subRoutes = routes.map(({ element: Component, ...rest }) => (\n }\n key={rest.path}\n />\n ));\n\n domainRef.current = domain;\n\n return onRoutes ? onRoutes({ domain, routes: subRoutes }) : subRoutes;\n },\n [onRoutes],\n );\n\n const renderRoutes = React.useMemo(\n () => getDynamicLayoutRoutes(location.pathname, pages, handleRoutes),\n [location.pathname],\n );\n const renderHeader = React.useMemo(() => header?.(domainRef.current), [location.pathname]);\n const renderSidebar = React.useMemo(() => sidebar?.(domainRef.current), [location.pathname]);\n\n return (\n \n {renderHeader && {renderHeader}}\n \n {renderSidebar && (\n \n }\n shape='circle'\n target='_blank'\n type='primary'\n />\n setCollapsed((v) => !v)} />\n \n }\n collapsible\n >\n {renderSidebar}\n \n )}\n \n }>\n \n {renderRoutes}\n {notFoundRedirect && (\n \n }\n key='*'\n path='*'\n />\n )}\n \n \n \n \n \n );\n}\n\nexport default Layout;\n","import { createGlobalStyle } from 'styled-components';\n\nimport '@fontsource/archivo/variable-full.css';\nimport '@fontsource/arimo/400.css';\nimport '@fontsource/arimo/600.css';\nimport '@fontsource/arimo/700.css';\n\nexport default createGlobalStyle`\n /* Box sizing rules */\n *,\n *::before,\n *::after {\n box-sizing: border-box !important;\n }\n\n body {\n background-color: ${({ theme }) => theme.colors['off-white-100']} !important;\n }\n\n div[id*='root'], #root {\n height: 100%;\n }\n\n /* Remove default margin and padding */\n body,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n p,\n ul,\n ol,\n li,\n figure,\n figcaption,\n blockquote,\n dl,\n dd {\n margin: 0;\n padding: 0;\n }\n\n ul,\n ol {\n list-style-type: none;\n }\n\n /* Set core body defaults */\n body {\n font-size: 16px;\n min-height: 100vh;\n scroll-behavior: smooth;\n text-rendering: optimizeSpeed;\n line-height: 1.5;\n font-weight: normal;\n font-style: normal;\n font-stretch: normal;\n letter-spacing: normal;\n font-family: 'Arimo', sans-serif;\n background-color: #f8f8f8;\n }\n\n p {\n margin: 0.8rem 0;\n font-size: 0.9rem;\n font-weight: 400;\n color: #253237;\n }\n\n a {\n text-decoration: none;\n box-shadow: none;\n outline: none;\n font-family: 'Arimo', sans-serif;\n font-weight: 600;\n color: ${({ theme }) => theme.colors['koppert-green']};\n }\n\n a:hover {\n\n color: ${({ theme }) => theme.colors['bright-green']};\n }\n\n /* A elements that don't have a class get default styles */\n a:not([class]) {\n text-decoration-skip-ink: auto;\n }\n\n /* Make images easier to work with */\n img {\n max-width: 100%;\n display: block;\n }\n\n /* Natural flow and rhythm in articles by default */\n article > * + * {\n margin-top: 1rem;\n }\n\n /* Inherit fonts for inputs and buttons */\n input,\n button,\n textarea,\n select {\n font: inherit;\n }\n\n button {\n cursor: pointer;\n :hover {\n cursor: pointer;\n }\n }\n\n /* Remove all animations and transitions for people that prefer not to see them */\n @media (prefers-reduced-motion: reduce) {\n * {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n }\n }\n\n h1 {\n font-size: 2rem;\n }\n h2 {\n font-size: 1.8rem;\n }\n h3 {\n font-size: 1.6rem;\n }\n h4 {\n font-size: 1.4rem;\n }\n h5 {\n font-size: 1.2rem;\n }\n h6 {\n font-size: 0.8rem;\n }\n\n h1, h2, h3, h4, h5 {\n font-family: \"ArchivoVariable\", serif;\n font-weight: 400;\n font-stretch: 125%;\n font-display: swap;\n letter-spacing: -0.04em;\n display: block;\n margin: 0;\n }\n\n\n::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n }\n\n::-webkit-scrollbar-track {\n background: ${({ theme }) => theme.colors['off-white']};\n}\n\n::-webkit-scrollbar-thumb {\n background: ${(props) => props.theme.colors['off-white-400']};\n border-radius: 12px;\n}\n\n::-webkit-scrollbar-thumb:hover {\n background: #e8e4d7;\n}\n\n .showOnScreenshot {\n display: none;\n }\n`;\n","export const theme = {\n colors: {\n 'koppert-green': '#004832',\n 'deep-green': '#002E0C',\n 'bright-green': '#27C25A',\n 'light-green': '#B9E6B9',\n 'pale-green': '#F2FBF3',\n 'off-white': '#F6F2E6',\n 'off-white-100': '#FAF8F2',\n 'off-white-400': '#C5C2B8',\n 'gray-200': '#e0e0e0',\n 'ui-hover': '#2D794A',\n 'ui-success': '#23b45a',\n 'ui-warning': '#ffcd00',\n 'ui-error': '#EF3340',\n 'ui-error-light': '#E4490B',\n 'light-gray': '#cacaca',\n 'white-ghost': '#f1f1f2',\n white: '#FFFFFF',\n },\n} as const;\n","import React from 'react';\nimport { Router } from 'react-router-dom';\nimport { BrowserHistory } from 'history';\n\ninterface ICustomRouterProps extends React.PropsWithChildren {\n basename?: string;\n history: BrowserHistory;\n}\n\nconst CustomRouter: React.FC = ({ basename = '', children, history }) => {\n const [state, setState] = React.useState({\n action: history.action,\n location: history.location,\n });\n\n React.useLayoutEffect(() => history.listen(setState), [history]);\n\n return (\n \n {children}\n \n );\n};\n\nexport default CustomRouter;\n","import React from 'react';\nimport { ConfigProvider, Spin } from 'antd';\nimport dayjs from 'dayjs';\n\nimport { useAuthStore } from 'src/stores/auth';\nimport { useSettings } from 'src/stores/settings';\nimport { useTranslationsStore } from 'src/stores/translations';\n\nconst antdLocaleMap = {\n en: () => import('antd/es/locale/en_US'),\n de: () => import('antd/es/locale/de_DE'),\n fr: () => import('antd/es/locale/fr_FR'),\n es: () => import('antd/es/locale/es_ES'),\n it: () => import('antd/es/locale/it_IT'),\n nl: () => import('antd/es/locale/nl_NL'),\n pl: () => import('antd/es/locale/pl_PL'),\n ru: () => import('antd/es/locale/ru_RU'),\n};\n\nconst dayjsLocaleMap = {\n en: () => import('dayjs/locale/en'),\n de: () => import('dayjs/locale/de'),\n fr: () => import('dayjs/locale/fr'),\n es: () => import('dayjs/locale/es'),\n it: () => import('dayjs/locale/it'),\n nl: () => import('dayjs/locale/nl'),\n pl: () => import('dayjs/locale/pl'),\n ru: () => import('dayjs/locale/ru'),\n};\n\nconst AntdConfigProvider: React.FC = ({ children }) => {\n const [loading, setLoading] = React.useState(false);\n\n const [antLocale, setAntLocale] = React.useState();\n const translationsStore = useTranslationsStore();\n const authStore = useAuthStore();\n const { weekNumberingSystem } = useSettings();\n\n React.useEffect(() => {\n (async () => {\n setLoading(true);\n try {\n const targetLocale = (authStore?.User?.Culture?.toLocaleLowerCase() as keyof typeof antdLocaleMap) || 'en';\n\n const antdLocale = await antdLocaleMap[targetLocale]?.();\n const dayjsLocale = await dayjsLocaleMap[targetLocale]?.();\n\n if (!antdLocale.default) {\n throw new Error(`Locale ${targetLocale} not found`);\n }\n\n dayjs.locale(dayjsLocale.default);\n dayjs.updateLocale(targetLocale, {\n weekStart: weekNumberingSystem.weekStartDay,\n yearStart: weekNumberingSystem.yearStartDay,\n });\n\n setAntLocale(antdLocale.default);\n } catch (e) {\n dayjs.locale('en');\n setAntLocale((await antdLocaleMap.en()).default);\n } finally {\n setLoading(false);\n }\n })();\n }, [translationsStore.language, authStore?.User?.Culture, weekNumberingSystem]);\n\n if (loading) {\n return ;\n }\n\n return {children};\n};\n\nexport default AntdConfigProvider;\n","import { Button } from 'antd';\nimport styled from 'styled-components';\n\nexport const CollapseButton = styled(Button)`\n z-index: 3;\n right: 75px;\n bottom: 12px;\n position: fixed !important;\n`;\n\nexport const Bar = styled.div<{ $collapsed: boolean }>`\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 2;\n display: flex;\n position: fixed;\n overflow: hidden;\n align-items: center;\n background-color: #fff;\n transition: height 0.3s ease-in-out;\n height: ${({ $collapsed }) => ($collapsed ? '0' : '50px')};\n`;\n\nexport const SwitchContainer = styled.label`\n display: flex;\n column-gap: 15px;\n padding: 0 150px;\n margin-left: auto;\n align-items: center;\n cursor: pointer;\n`;\n","import React from 'react';\nimport { createIntl } from 'react-intl';\nimport { ArrowDownOutlined, ArrowUpOutlined } from '@ant-design/icons';\nimport { Switch } from 'antd';\n\nimport { useAuthStore } from 'src/stores/auth';\nimport { useTranslationsStore } from 'src/stores/translations';\n\nimport * as Styled from './styled';\n\nexport const translatorLanguage = '__translations__';\n\nconst TranslationsBar: React.FunctionComponent = () => {\n const authStore = useAuthStore();\n const translationsStore = useTranslationsStore();\n const [isCollapsed, setIsCollapsed] = React.useState(true);\n\n const isTranslatorAccount = authStore.User?.UserName?.toLowerCase() === 'translator';\n\n const ButtonIcon = React.useMemo(() => (isCollapsed ? ArrowUpOutlined : ArrowDownOutlined), [isCollapsed]);\n\n const handleSwitchChange = () => {\n const changeToEnglish = translationsStore.language !== 'en';\n\n if (changeToEnglish) {\n return translationsStore.setIntl('en');\n }\n\n return translationsStore.setIntlRaw(\n translatorLanguage,\n createIntl({\n locale: 'en',\n messages: {},\n onError: () => null,\n }),\n );\n };\n\n if (!isTranslatorAccount && process.env.NODE_ENV !== 'development') {\n return null;\n }\n\n return (\n <>\n }\n onClick={() => setIsCollapsed(!isCollapsed)}\n />\n \n \n Show translations\n \n Show keys\n \n \n \n );\n};\n\nexport default TranslationsBar;\n","import React from 'react';\nimport { createIntl, RawIntlProvider } from 'react-intl';\nimport { Alert, Spin } from 'antd';\n\nimport TranslationsBar, { translatorLanguage } from 'src/components/translations-bar';\nimport { useAuthStore } from 'src/stores/auth';\nimport { useTranslationsStore } from 'src/stores/translations';\n\nconst fallbackIntl = createIntl({\n locale: 'en',\n messages: {},\n onError: () => null,\n});\n\nconst Translations: React.FC = ({ children }) => {\n const translationStore = useTranslationsStore((state) => state);\n const { User } = useAuthStore();\n\n React.useEffect(() => {\n translationStore.syncTranslations();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n React.useEffect(() => {\n if (User?.Culture) {\n translationStore.setIntl(User.Culture);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [User?.Culture]);\n\n const showChildren = process.env.NODE_ENV === 'development' || translationStore.hasSynced;\n\n return (\n <>\n \n {translationStore.hasSynced && !translationStore.intl && translationStore.language !== translatorLanguage && (\n \n )}\n {!translationStore.hasSynced && (\n Loading translations}\n />\n )}\n {showChildren && {children}}\n \n );\n};\n\nexport default Translations;\n","import React from 'react';\nimport { useLocation } from 'react-router-dom';\n\nimport { Path } from 'src/packages/types/path';\n\nexport const useCurrentPath = (paths: Path[]) => {\n const location = useLocation();\n\n return React.useMemo(\n () =>\n paths.reduce(\n (acc, { path, key }) => {\n if (Array.isArray(path)) {\n return path.reduce((_, subPath) => (location.pathname.includes(subPath) ? { path: subPath, key } : _), acc);\n }\n if (typeof path === 'string' && location.pathname.includes(path)) {\n return { path, key };\n }\n\n return acc;\n },\n { path: '', key: '' },\n ),\n [location.pathname, paths],\n );\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport {\n AimOutlined,\n AppstoreAddOutlined,\n BarChartOutlined,\n FormOutlined,\n HomeOutlined,\n LeftCircleOutlined,\n SendOutlined,\n TeamOutlined,\n} from '@ant-design/icons';\n\nimport { FmsUserEnterpriseRelation } from '@koppert/services-hva/spec';\nimport { Path } from '@koppert/types/path';\nimport Icon from '@koppert/ui/icon';\n\nimport { vanillaTranslationsStore } from 'src/stores/translations';\n\nexport const dashboardMenuPaths = (impersonatedUser?: FmsUserEnterpriseRelation | null): Path[] => {\n const t = vanillaTranslationsStore.getState().intl?.formatMessage;\n\n if (!t) {\n return [];\n }\n\n return [\n ...(impersonatedUser\n ? [\n {\n key: '/consultant/customers',\n path: '/consultant/customers',\n icon: ,\n label: (\n \n {t({ id: 'Button.GoBack' })}\n \n ),\n },\n ]\n : []),\n {\n key: '/dashboard',\n path: '/dashboard',\n icon: ,\n label: {t({ id: 'PageTitle.Home' })},\n },\n {\n key: '/dashboard/analysis',\n path: '/dashboard/analysis',\n icon: ,\n label: {t({ id: 'PageTitle.Analysis' })},\n },\n {\n key: '/dashboard/compare',\n path: '/dashboard/compare',\n icon: ,\n label: {t({ id: 'PageTitle.Compare' })},\n },\n {\n key: '/dashboard/treatments',\n path: '/dashboard/treatments',\n icon: ,\n label: {t({ id: 'PageTitle.Treatments' })},\n },\n {\n key: '/dashboard/scout-sessions',\n path: '/dashboard/scout-sessions',\n icon: ,\n label: {t({ id: 'PageTitle.ScoutSessions' })},\n },\n {\n key: '/dashboard/locations',\n path: '/dashboard/locations',\n icon: ,\n label: {t({ id: 'PageTitle.Locations' })},\n },\n {\n key: '/dashboard/my-team',\n path: '/dashboard/my-team',\n icon: ,\n label: {t({ id: 'PageTitle.Team' })},\n },\n ];\n};\n\nexport const consultantMenuPaths = (): Path[] => {\n const t = vanillaTranslationsStore.getState().intl?.formatMessage;\n\n if (!t) {\n return [];\n }\n\n return [\n {\n key: '/consultant/customers',\n path: '/consultant/customers',\n icon: ,\n label: {t({ id: 'PageTitle.MyCustomers' })},\n },\n ];\n};\n","import React from 'react';\nimport { Menu } from 'antd';\n\nimport { useCurrentPath } from '@koppert/hooks/current-path';\n\nimport { consultantMenuPaths } from 'src/constants/menu';\n\nconst ConsultantSidebarMenu: React.FC = () => {\n const paths = React.useMemo(consultantMenuPaths, []);\n const currentPath = useCurrentPath(paths);\n\n return (\n \n );\n};\n\nexport default ConsultantSidebarMenu;\n","import React from 'react';\nimport { Menu } from 'antd';\n\nimport { useCurrentPath } from '@koppert/hooks/current-path';\n\nimport { dashboardMenuPaths } from 'src/constants/menu';\nimport { useAuthStore } from 'src/stores/auth';\n\nconst DashboardSidebarMenu: React.FC = () => {\n const { setImpersonateUser, ImpersonateUser } = useAuthStore();\n\n const paths = React.useMemo(() => dashboardMenuPaths(ImpersonateUser), [ImpersonateUser]);\n const currentPath = useCurrentPath(paths);\n\n return (\n {\n if (item.key === '/consultant/customers') {\n // reset impersonated user when going back to customers\n setImpersonateUser(null);\n }\n }}\n />\n );\n};\n\nexport default DashboardSidebarMenu;\n","import styled from 'styled-components';\n\nimport type * as Types from './types';\n\nexport const SidebarLogoContainer = styled.div`\n height: 64px;\n background: ${({ theme }) => theme.colors['koppert-green']};\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n\n svg {\n transition: all 0.25s;\n height: 16px;\n width: ${({ collapsed }) => (collapsed ? 16 : 170)}px;\n }\n\n text:nth-child(2) {\n opacity: ${({ collapsed }) => (collapsed ? 0 : 1)};\n }\n`;\n","import React from 'react';\n\nimport * as Styled from './styled';\nimport type * as Types from './types';\n\nconst MenuLogo: React.FC = ({ collapsed = false }) => (\n \n \n \n \n \n N\n \n \n ATUTEC\n \n \n \n SCOUT\n \n \n \n \n);\n\nexport default MenuLogo;\n","import React from 'react';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport { LogoutOutlined, ProfileOutlined, SettingOutlined, UserOutlined } from '@ant-design/icons';\nimport type { MenuProps } from 'antd';\nimport { Menu } from 'antd';\n\nimport { ga4ExecuteEvent } from '@koppert/utils/ga4';\n\nimport { useAuthStore } from 'src/stores/auth';\n\nimport MenuLogo from '../sidebar-logo';\n\nconst Topbar: React.FunctionComponent = () => {\n const { formatMessage: t } = useIntl();\n const { User, ImpersonateUser } = useAuthStore();\n\n const items = React.useMemo(\n () => [\n {\n label: User?.UserName || 'NT',\n icon: ,\n key: 'topbar-submenu',\n style: { marginLeft: 'auto' },\n children: [\n ...(!ImpersonateUser\n ? [\n {\n key: 'my-profile',\n label: (\n \n ga4ExecuteEvent('item_clicked', {\n category: 'settings',\n clicked_item: 'My profile',\n })\n }\n >\n {t({ id: 'Topbar.Link.Profile' })}\n \n ),\n icon: ,\n },\n {\n key: 'settings',\n label: (\n {\n ga4ExecuteEvent('settings_opened', {\n category: 'settings',\n });\n ga4ExecuteEvent('item_clicked', {\n category: 'settings',\n clicked_item: 'Settings',\n });\n }}\n >\n {t({ id: 'Topbar.Link.Settings' })}\n \n ),\n icon: ,\n },\n {\n type: 'divider',\n },\n ]\n : []),\n {\n key: 'logout',\n label: (\n {\n ga4ExecuteEvent('item_clicked', {\n category: 'settings',\n clicked_item: 'Sign out',\n });\n }}\n >\n {t({ id: 'Topbar.Link.Signout' })}\n \n ),\n icon: ,\n },\n ],\n },\n ],\n [],\n );\n\n return (\n
\n \n \n
\n );\n};\n\nexport default Topbar;\n","import { GA4UserProperties } from './types';\nimport { normalizeOptions } from './utils';\n\nexport const ga4SetUserProperties = (options: GA4UserProperties, ga4Id: string) => {\n if (ga4Id) {\n window.gtag?.('config', ga4Id, {\n user_id: options.user_id,\n });\n }\n\n window.gtag?.('set', 'user_properties', normalizeOptions(options));\n\n if (options.user_id) {\n window.dataLayer?.push({\n user_id: options.user_id,\n });\n }\n};\n","export const clarityScript = `(function(c,l,a,r,i,t,y){\n c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};\n t=l.createElement(r);t.async=1;t.src=\"https://www.clarity.ms/tag/\"+i;\n y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);\n})(window, document, \"clarity\", \"script\", \"${process.env.REACT_APP_CLARITY_ID}\");`;\n","import React from 'react';\nimport { Helmet } from 'react-helmet';\n\nimport { ga4ExecuteEvent, ga4SetUserProperties } from '@koppert/utils/ga4';\n\nimport { clarityScript } from 'src/scripts/clarity';\nimport { googleAnalyticsScript } from 'src/scripts/google-tag-manager';\nimport { useAuthStore } from 'src/stores/auth';\nimport { useSettings } from 'src/stores/settings';\n\nconst PROD = process.env.NODE_ENV === 'production';\n\nconst GA4Ids = [\n {\n type: 'production',\n host: 'www.natutecscout.com',\n id: 'G-V7ZXKH3N7Q',\n },\n // {\n // type: 'stage',\n // host: 'www.natutecscout.com',\n // id: 'G-RXFQ8DPPN7',\n // },\n {\n type: 'development',\n host: 'ns-development.azurewebsites.net',\n id: 'G-JDDE4K0SQ8',\n },\n {\n type: 'local',\n host: 'dboryn-koppert-monitor.netlify.app',\n id: 'G-5P93DGSS3Q',\n },\n];\n\nexport const Analytics: React.FC = () => {\n const { User, ImpersonateUser } = useAuthStore();\n\n const { unitSystem, weekNumberingSystem } = useSettings();\n\n const isImpersonated = !!ImpersonateUser;\n\n const { host } = window.location;\n\n const ga4Id = GA4Ids.find((x) => x.host === host);\n\n React.useEffect(() => {\n if (!User) {\n return;\n }\n\n const username = User?.UserName;\n const enterpriseId = User?.EnterpriseId?.toString();\n\n if (username) {\n window.clarity?.('set', 'username', username);\n }\n\n if (enterpriseId) {\n window.clarity?.('set', 'EnterpriseID', enterpriseId);\n }\n\n if (!ga4Id) {\n return;\n }\n\n ga4SetUserProperties(\n {\n is_koppert_employee: User.Email?.includes('@koppert.'),\n roles: User.Roles?.join(','),\n is_consultant: User.Roles?.includes('KpConsultant'),\n user_name: username,\n impersonated: isImpersonated,\n enterprise_id: enterpriseId,\n koppert_user_id: User.UserId,\n domain_name: host,\n units: unitSystem,\n week_numbering: weekNumberingSystem.name,\n active_ui_language: User.Culture,\n user_id: User.UserId,\n },\n ga4Id.id,\n );\n }, [User, host, isImpersonated, weekNumberingSystem, unitSystem, ga4Id]);\n\n React.useEffect(() => {\n const event = () => {\n ga4ExecuteEvent('feedback_clicked', {\n category: 'general',\n });\n };\n\n const timeoutId = setTimeout(() => {\n const element = document.getElementsByTagName('us-button')?.[0];\n\n element?.addEventListener('click', event);\n }, 4000);\n\n return () => {\n clearTimeout(timeoutId);\n };\n }, []);\n\n return (\n \n {PROD && process.env.REACT_APP_CLARITY_ID && }\n\n {PROD &&\n ga4Id && [\n ,\n ,\n ]}\n \n );\n};\n","export const googleAnalyticsScript = (id: string) => `\nwindow.dataLayer = window.dataLayer || [];\nfunction gtag() {\n dataLayer.push(arguments);\n}\ngtag('js', new Date());\ngtag('config', '${id}');`;\n","import dayjs from 'dayjs';\nimport decode from 'jwt-decode';\n\nexport const isTokenExpired = (token?: string) => {\n if (!token) {\n return true;\n }\n\n try {\n const decoded = decode(token);\n\n return dayjs().isAfter((decoded?.exp ?? 0) * 1000);\n } catch (err) {\n return true;\n }\n};\n","import React from 'react';\nimport { Helmet } from 'react-helmet';\nimport { Outlet, useNavigate } from 'react-router-dom';\n\nimport { isTokenExpired } from '@koppert/utils/auth';\n\nimport { userSnapScript } from 'src/scripts/usersnap';\nimport { useAuthStore } from 'src/stores/auth';\n\nconst PROD = process.env.NODE_ENV === 'production';\n\nconst DashboardLayout: React.FC<{ domain: 'dashboard' | 'consultant' }> = ({ domain }) => {\n const navigate = useNavigate();\n\n const { AccessToken, User, ImpersonateUser, HasDefaultEnterprise } = useAuthStore();\n\n React.useEffect(() => {\n if (isTokenExpired(AccessToken)) {\n navigate('/logout', { replace: true });\n } else if (domain === 'consultant' && !User?.Roles?.includes('KpConsultant')) {\n navigate('/dashboard', { replace: true });\n } else if (domain === 'dashboard' && User?.Roles?.includes('KpConsultant') && !ImpersonateUser) {\n navigate('/consultant/customers', { replace: true });\n } else if (HasDefaultEnterprise) {\n navigate('/invitation/enterprise', { replace: true });\n }\n }, [AccessToken, HasDefaultEnterprise, ImpersonateUser, User?.Roles, domain, navigate]);\n\n if (!User || !AccessToken) {\n // this is just to prevent the app from flashing before the user is authenticated\n return null;\n }\n\n return (\n <>\n {PROD && domain === 'dashboard' && }\n \n \n );\n};\n\nexport default React.memo(DashboardLayout);\n","export const userSnapScript = `\nwindow.onUsersnapCXLoad = function(api) {\n api.init();\n }\n var script = document.createElement('script');\n script.defer = 1;\n script.src = 'https://widget.usersnap.com/global/load/4db342c0-8bca-42de-8948-bdade037975b?onload=onUsersnapCXLoad';\n document.getElementsByTagName('head')[0].appendChild(script);`;\n","export const config = {\n BASE_URL: process.env.REACT_APP_BASE_URL,\n API_URL: process.env.REACT_APP_KOPPERT_BACKEND_API_URL,\n HVA_API_URL: process.env.REACT_APP_HVA_BASE_URL,\n PORTAL_URL: process.env.REACT_APP_PORTAL_URL,\n IS_DEV: process.env.NODE_ENV === 'development',\n};\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport { notification } from 'antd';\nimport { BrowserHistory } from 'history';\nimport { ThemeProvider } from 'styled-components';\n\nimport pages from './packages/pages.macro/pages.macro';\nimport { CustomQueryProvider, queryClient } from '@koppert/react-query';\nimport { OpenAPI as KoppertOpenAPI } from '@koppert/services';\nimport { OpenAPI as HvaOpenAPI } from '@koppert/services-hva/spec';\nimport FormDevPresets from '@koppert/ui/form-with-schema/form-dev-presets';\nimport Layout from '@koppert/ui/layout';\nimport GlobalStyles from '@koppert/ui/theme/global-styles';\nimport { theme } from '@koppert/ui/theme/theme';\nimport CustomRouter from '@koppert/utils/routes/custom-router';\n\nimport AntdConfigProvider from 'src/components/antd-config-provider';\nimport Translations from 'src/containers/translations';\n\nimport ConsultantSidebarMenu from './components/consultant-menu';\nimport DashboardSidebarMenu from './components/dashboard-menu';\nimport NatutecScoutTopbar from './components/topbar';\nimport { Analytics } from './containers/analytics';\nimport DashboardLayout from './containers/dashboard-layout';\nimport { useAuthStore } from './stores/auth';\nimport { vanillaTranslationsStore } from './stores/translations';\nimport { cleanupUserData } from './utils/auth';\nimport { config } from './config';\n\nif (process.env.NODE_ENV === 'development') {\n // load the presets per domain in dev mode\n FormDevPresets.presets = import('src/components/forms/__dev-presets__');\n}\n\nHvaOpenAPI.BASE = config.HVA_API_URL;\nKoppertOpenAPI.BASE = config.API_URL;\n\ninterface AppProps {\n history: BrowserHistory;\n hideHeader: boolean;\n}\n\nconst App: React.FC = ({ history, hideHeader }) => {\n const { logout } = useAuthStore();\n\n React.useEffect(() => {\n const event = () => {\n cleanupUserData();\n logout();\n };\n\n window.addEventListener('portal-logout', event);\n\n return () => {\n window.removeEventListener('portal-logout', event);\n };\n }, [logout]);\n\n React.useEffect(() => {\n const { queries, mutations } = queryClient.getDefaultOptions();\n\n // TODO move this to a better place\n queryClient.setDefaultOptions({\n queries,\n mutations: {\n ...mutations,\n onError: (e: any) => {\n const { intl } = vanillaTranslationsStore.getState();\n let message;\n\n if (Reflect.has(e?.response?.data || {}, 'ErrorCode')) {\n message = intl?.formatMessage({ id: e.response.data.ErrorCode });\n } else if (Reflect.has(e?.response?.data || {}, 'Message')) {\n message = intl?.formatMessage({ id: e.response.data.Message });\n }\n if (!message) {\n // @todo: make a sentry log\n if (Reflect.has(e?.body || {}, 'Message')) {\n message = intl?.formatMessage({ id: e.body.Message });\n } else {\n message = 'Something went wrong, please try again later';\n }\n }\n\n notification.error({ message });\n },\n },\n });\n }, []);\n\n React.useEffect(() => {\n // TODO: this is a tempororily fix!\n if (history.location.pathname.startsWith('/apps/monitoring/impersonate')) {\n history.replace(`${config.BASE_URL}/impersonate${history.location.search}`);\n\n return;\n }\n // TODO: this is a tempororily fix!\n if (history.location.pathname.startsWith('/apps/monitoring/sso-login')) {\n history.replace(`${config.BASE_URL}/sso-login${history.location.hash}`);\n\n return;\n }\n\n if (!history.location.pathname.startsWith(`${config.BASE_URL}/`)) {\n history.replace(`${config.BASE_URL}/dashboard`);\n }\n }, []);\n\n return (\n <>\n \n \n \n \n \n \n \n !hideHeader && process.env.REACT_APP_SCOUT\n ? ['dashboard', 'consultant'].includes(domain) && \n : null\n }\n notFoundRedirect='/dashboard'\n pages={pages.getRoutes()}\n sidebar={(domain) => {\n if (domain === 'dashboard') {\n return ;\n }\n if (domain === 'consultant') {\n return ;\n }\n }}\n onRoutes={({ routes, domain }) =>\n domain === 'dashboard' || domain === 'consultant' ? (\n }>{routes}\n ) : (\n routes\n )\n }\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default App;\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { BrowserHistory, createBrowserHistory } from 'history';\n\nimport { setupGlobals } from 'src/config/globals';\n\nimport App from './App';\n\ninterface CustomPortalProperties {\n hideHeader: boolean;\n}\n\nconst mount = (\n element: HTMLElement,\n history: BrowserHistory,\n custom: CustomPortalProperties = {\n hideHeader: false,\n },\n) => {\n setupGlobals();\n\n const root = createRoot(element);\n\n root.render(\n \n \n ,\n );\n\n return {\n onParentNavigate({ pathname: nextPathname }: any) {\n const { pathname } = history.location;\n\n if (pathname !== nextPathname) {\n history.replace(nextPathname);\n }\n },\n };\n};\n\nif (process.env.NODE_ENV === 'development' || process.env.REACT_APP_SCOUT) {\n // eslint-disable-next-line global-require\n require('antd/dist/antd.less');\n const history = createBrowserHistory();\n\n const root = document.getElementById('scout-root');\n\n if (root) {\n mount(root, history);\n }\n}\n\nexport { mount };\n","import React, { PropsWithChildren } from 'react';\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport { ReactQueryDevtools } from '@tanstack/react-query-devtools';\n\nexport const queryClient = new QueryClient({\n defaultOptions: {\n queries: {\n networkMode: 'offlineFirst',\n retry: 1,\n retryDelay: (attemptIndex) => Math.min(1000 * 2 ** attemptIndex, 30000),\n staleTime: 1 * 60 * 1000, // 1 min\n cacheTime: 1000 * 60 * 60 * 24, // 24 hours\n refetchOnWindowFocus: false,\n suspense: false,\n },\n mutations: {\n retry: 1,\n retryDelay: (attemptIndex) => Math.min(1000 * 2 ** attemptIndex, 30000),\n },\n },\n});\n\nexport const CustomQueryProvider: React.FC = ({ children }) => (\n \n \n {children}\n \n);\n","import styled from 'styled-components';\n\nexport const CenterContainer = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n`;\n\nexport const CenterContainerRightFirst = styled(CenterContainer)`\n margin-left: 700px;\n\n @media (max-width: 1000px) {\n margin-left: 0px;\n }\n`;\n","import React from 'react';\n\nimport * as Styled from './styled';\n\nconst Center: React.FC> = ({ children, style }) => (\n {children}\n);\n\nexport default Center;\n","import React from 'react';\nimport { Button, Input, InputNumber, Space, Typography } from 'antd';\n\n// eslint-disable-next-line import/no-cycle\nimport { useSchema } from '.';\n\ninterface FormDevPresetsProps {\n presetName: string;\n hasBulk: boolean;\n ref: any;\n}\n\nconst FormDevPresets: React.FC & {\n presets?: Promise;\n} = React.forwardRef(({ presetName, hasBulk }, ref) => {\n const { form } = useSchema();\n const bulkAmmountRef = React.useRef(0);\n\n React.useImperativeHandle(ref, () => ({\n getAmmount: () => bulkAmmountRef.current,\n }));\n\n if (!form || !FormDevPresets.presets) {\n return null;\n }\n\n const handleFillForm = async (ammount = 0) => {\n const { presets = {} } = await FormDevPresets.presets;\n\n const preset = presets[presetName];\n\n if (!preset) {\n return;\n }\n\n form.setFields(\n Object.entries(preset).map(([name, value]: any) => ({\n name,\n value: ammount\n ? Array.from({ length: ammount }).map(() => value(form.getFieldInstance(name)))\n : value(form.getFieldInstance(name)),\n })),\n );\n };\n\n return (\n
\n Form helpers (dev mode)\n \n handleFillForm(0)}\n >\n Fill form\n \n {hasBulk && (\n \n \n size='small'\n style={{ width: 'calc(100% - 155px)' }}\n onChange={(n) => {\n bulkAmmountRef.current = n;\n }}\n />\n handleFillForm(bulkAmmountRef.current)}\n >\n OK\n \n \n )}\n \n
\n );\n});\n\nexport default FormDevPresets;\n","import React from 'react';\nimport { Form, FormInstance } from 'antd';\nimport * as yup from 'yup';\n\nimport * as Types from './types';\n\ninterface IFormWithSchemaContext {\n schema: yup.SchemaOf | null;\n values: Partial | null;\n errors: Record, string[]>;\n defaultValues: Partial | null;\n form: FormInstance | null;\n setValues: React.Dispatch & Partial>> | null;\n setSchemaContext: React.Dispatch>> | null;\n getFormItems: (\n cb?: (key?: keyof T, val?: string) => R,\n ) => Record;\n}\n\nconst FormWithSchemaContext = React.createContext({\n schema: null,\n values: null,\n defaultValues: null,\n form: null,\n setValues: null,\n errors: {},\n setSchemaContext: null,\n getFormItems: () => ({}),\n});\n\nconst isDev = process.env.NODE_ENV === 'development';\n// Lazy load presets, so Faker will not be bundled into the production build\n// eslint-disable-next-line import/no-cycle\nconst FormDevPreset = isDev ? React.lazy(() => import('./form-dev-presets')) : () => null;\n\nfunction FormWithSchema>({\n name: formName,\n schema,\n submitMode = 'submit',\n onSubmit,\n children,\n defaultValues = {},\n onBulk,\n}: React.PropsWithChildren>) {\n const [form] = Form.useForm();\n const schemaShape = schema.getDefaultFromShape();\n const [values, setValues] = React.useState({ ...schemaShape, ...defaultValues });\n const [fieldErrors, setFieldErrors] = React.useState({});\n const [schemaContext, setSchemaContext] = React.useState>({});\n\n const devRef = React.useRef();\n\n /*\n Why do we need to set a proxy on the setFields?\n Currently the ant-design form api does not trigger the onValuesChange callback\n when using the hook api for setting values.\n So we need to set a proxy on the setFields function to trigger a \"trap\" for setting the values.\n */\n React.useEffect(() => {\n const proxy = (trap: U) =>\n new Proxy(trap, {\n apply(target, ctx, args) {\n let dynamicValues: T;\n\n if (Array.isArray(args[0])) {\n dynamicValues = args[0].reduce(\n (acc: T, field: { name: keyof T; value: T[keyof T] }) => ({\n ...acc,\n [field.name]: ctx.getFieldValue(field.name),\n }),\n {} as T,\n );\n } else {\n [dynamicValues] = args;\n }\n\n setFieldErrors({});\n setValues((prev) => ({ ...prev, ...dynamicValues }));\n\n return Reflect.apply(target, ctx, args);\n },\n });\n\n form.setFields = proxy(form.setFields);\n form.setFieldsValue = proxy(form.setFieldsValue);\n }, [form]);\n\n const handleFieldValues = React.useCallback(\n (field: T) => {\n const [name] = Object.entries(field)[0];\n\n form.setFields([{ name, errors: undefined }]);\n\n setValues(form.getFieldsValue());\n\n if (submitMode === 'onChange') {\n form.submit();\n }\n },\n [form, submitMode],\n );\n\n const handleSubmit = async (formValues: T) => {\n try {\n form.setFields(Object.keys(formValues).map((name) => ({ name, errors: undefined })));\n\n if (isDev && onBulk && devRef.current?.getAmmount() > 0) {\n const formFields = Object.keys(values) as string[];\n\n const result = Array.from({ length: devRef.current.getAmmount() }).map((_, idx) =>\n formFields.reduce(\n (acc, cur) => ({\n ...acc,\n [cur]: Array.isArray(formValues[cur])\n ? formValues?.[cur]?.[idx] || values[cur]\n : formValues?.[cur] || values[cur],\n }),\n {} as T,\n ),\n );\n\n return onBulk(result);\n }\n\n const validValues = await schema.validate(formValues, {\n abortEarly: false,\n stripUnknown: true,\n context: schemaContext,\n });\n\n onSubmit(validValues as T);\n } catch (err) {\n console.error(err);\n if (err instanceof yup.ValidationError) {\n form.setFields(err.inner.map(({ path, errors }) => ({ name: path!, errors })));\n setFieldErrors(\n err.inner.reduce(\n (prev, { path, errors }) => ({\n ...prev,\n [path!]: errors,\n }),\n {},\n ),\n );\n }\n }\n };\n\n const getFormItems = React.useCallback(\n (callback?: (key?: keyof T, val?: string) => R) =>\n // TODO: Look at this AS ANY\n Object.entries(schema.fields as any).reduce(\n (acc: Record, [key, val]) => ({\n ...acc,\n [key]: callback\n ? callback(key as keyof T, val.spec.label || key)\n : {\n name: key,\n label: val.spec.label || key,\n },\n }),\n {} as Record,\n ),\n [schema.fields],\n );\n\n const contextValue = React.useMemo(\n () => ({\n formName,\n schema,\n defaultValues,\n values,\n errors: fieldErrors,\n form,\n setValues,\n setSchemaContext,\n getFormItems,\n }),\n [formName, schema, defaultValues, values, form, setValues, setSchemaContext, getFormItems, fieldErrors],\n );\n\n return (\n // TODO fix type\n \n \n {children}\n {isDev && (\n \n \n \n )}\n \n \n );\n}\n\n// TODO: move to better place\nexport const useSchema = () => React.useContext(FormWithSchemaContext) as IFormWithSchemaContext;\nexport default FormWithSchema;\n","var _g;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgArrowLeft(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"45px\",\n height: \"45px\",\n viewBox: \"0 0 45 45\",\n enableBackground: \"new 0 0 45 45\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.643,41.776L0.996,22.726l20.71-19.578v12.818h20.33v13.068H21.643V41.776z M6.856,22.69l10.787,9.953v-7.609h20.393 v-5.068h-20.33v-7.532L6.856,22.69z\"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgArrowLeft);\nexport default __webpack_public_path__ + \"static/media/arrow-left.b5db429eb778013d09d2f7404a3378f1.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgArrowRight(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#002e0c\",\n d: \"M231.622 975.246l48.755 48.755 512-512-512-512-48.755 48.755 463.244 463.244-463.244 463.244z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgArrowRight);\nexport default __webpack_public_path__ + \"static/media/arrow-right.25d89488099230f71e9aa77291c73a78.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgBeneficial(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M482.45 8.046l-318.61 146.139c-32.768 14.921-54.126 48.713-54.126 85.723v220.672c0 260.608 174.811 504.247 409.6 563.419 234.789-59.173 409.6-302.811 409.6-563.346v-220.672c0-37.083-21.358-70.875-54.126-85.87l-318.61-146.066c-10.813-5.111-23.49-8.094-36.864-8.094s-26.051 2.984-37.402 8.322l0.538-0.227zM395.41 702.903l-118.711-123.611c-8.299-8.75-13.403-20.602-13.403-33.646s5.104-24.896 13.423-33.667l-0.020 0.022c8.104-8.605 19.573-13.962 32.293-13.962s24.188 5.358 32.272 13.94l0.021 0.022 86.601 89.673 269.458-280.503c8.104-8.605 19.573-13.962 32.293-13.962s24.188 5.358 32.272 13.94l0.021 0.022c8.299 8.75 13.403 20.602 13.403 33.646s-5.104 24.896-13.423 33.667l0.020-0.022-301.934 314.368c-8.104 8.605-19.573 13.962-32.293 13.962s-24.188-5.358-32.272-13.94l-0.021-0.022z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgBeneficial);\nexport default __webpack_public_path__ + \"static/media/beneficial.5a5372b047783f71e1b2b34f44556426.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgBiologicalAction(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n color: \"#53b68b\",\n width: 18,\n height: 18,\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M973.017 67.306c-10.202-20.403-40.807-25.504-51.009 0-56.11 96.917-153.026 158.127-265.245 158.127h-142.824c-188.732 0-341.758 153.026-341.758 346.859 0 10.202 0 25.504 5.101 35.706 112.219-81.614 275.447-153.026 504.986-153.026 15.303 0 30.605 15.303 30.605 30.605s-10.202 25.504-30.605 25.504c-443.776 0-632.508 275.447-678.416 382.565-10.202 30.605 0 61.21 30.605 76.513 30.605 10.202 61.21 0 76.513-30.605 5.101-5.101 35.706-86.715 127.522-163.228 56.11 76.513 168.329 153.026 311.153 137.723 280.548-20.403 474.381-275.447 474.381-581.499 0-91.816-20.403-188.732-51.009-265.245z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgBiologicalAction);\nexport default __webpack_public_path__ + \"static/media/biological-action.8966322fcc053fd8b4a028a64e4ed930.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgBiologicalSprayAction(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n color: \"#53b68b\",\n width: 18,\n height: 18,\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M960.52,343.69H833.57v63.48A243,243,0,0,0,904.74,579l34,34c23.92,23.93,28.75,63.3,6.84,89.09a63.46,63.46,0,0,1-93.36,3.9l-37.24-37.19A367.57,367.57,0,0,1,712.12,470.65h-5.5a126.94,126.94,0,0,0-127,127v63.81a39.24,39.24,0,0,1-39.25,39.24H365a39.25,39.25,0,0,1-39.25-39.25V597.6a127,127,0,0,0-126.94-127H63.5A63.5,63.5,0,0,1,10.68,372L123.42,202.84A253.92,253.92,0,0,1,334.68,89.78H960.52A63.48,63.48,0,0,1,1024,153.26v127A63.48,63.48,0,0,1,960.52,343.69ZM366.14,934.22H540.42A39.24,39.24,0,0,0,579.67,895V796.3a39.24,39.24,0,0,0-39.25-39.24H366.14a39.24,39.24,0,0,0-39.25,39.24V895A39.24,39.24,0,0,0,366.14,934.22Z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgBiologicalSprayAction);\nexport default __webpack_public_path__ + \"static/media/biological-spray-action.d2c7cb70791a0d0c215f645662a009ff.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCamera(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"64 64 896 896\",\n focusable: \"false\",\n \"data-icon\": \"camera\",\n width: \"1em\",\n height: \"1em\",\n fill: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M864 248H728l-32.4-90.8a32.07 32.07 0 00-30.2-21.2H358.6c-13.5 0-25.6 8.5-30.1 21.2L296 248H160c-44.2 0-80 35.8-80 80v456c0 44.2 35.8 80 80 80h704c44.2 0 80-35.8 80-80V328c0-44.2-35.8-80-80-80zm8 536c0 4.4-3.6 8-8 8H160c-4.4 0-8-3.6-8-8V328c0-4.4 3.6-8 8-8h186.7l17.1-47.8 22.9-64.2h250.5l22.9 64.2 17.1 47.8H864c4.4 0 8 3.6 8 8v456zM512 384c-88.4 0-160 71.6-160 160s71.6 160 160 160 160-71.6 160-160-71.6-160-160-160zm0 256c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCamera);\nexport default __webpack_public_path__ + \"static/media/camera.35c566ae2db4dd122c92bf6cdc19361a.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCenter(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"-0.0000152588 -0.0000152588 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M113.778 682.667h-113.778v227.556c0 62.578 51.2 113.778 113.778 113.778h227.556v-113.778h-227.556v-227.556zM113.778 113.778h227.556v-113.778h-227.556c-62.578 0-113.778 51.2-113.778 113.778v227.556h113.778v-227.556zM910.222 0h-227.556v113.778h227.556v227.556h113.778v-227.556c0-62.578-51.2-113.778-113.778-113.778zM910.222 910.222h-227.556v113.778h227.556c62.578 0 113.778-51.2 113.778-113.778v-227.556h-113.778v227.556zM512 341.333c-94.436 0-170.667 76.231-170.667 170.667s76.231 170.667 170.667 170.667 170.667-76.231 170.667-170.667-76.231-170.667-170.667-170.667z\",\n fill: \"currentColor\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCenter);\nexport default __webpack_public_path__ + \"static/media/center.4d72f43dbad7c1319fcc96f7cef6981d.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgChemicalAction(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n color: \"#ec9e20\",\n width: 18,\n height: 18,\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M938.386 807l-234.4-377v-302h16c26.6 0 48-21.4 48-48v-32c0-26.6-21.4-48-48-48h-416c-26.6 0-48 21.4-48 48v32c0 26.6 21.4 48 48 48h16v302l-234.4 377c-58.6 94.2 9 217 120.2 217h612.4c111.4 0 178.8-123 120.2-217zM339.786 640l96.4-155.2c7.4-10.4 11.6-23.2 11.6-36.8v-320h128v320c0 13.8 4.4 26.4 11.6 36.8l96.4 155.2h-344z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgChemicalAction);\nexport default __webpack_public_path__ + \"static/media/chemical-action.210656880e15305c0e3f82b270a8e3b5.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgChevronBack(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 21,\n height: 21,\n viewBox: \"0 0 21 21\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.4343 4.62219L12.8157 4.00356L6.31927 10.5L12.8157 16.9964L13.4343 16.3778L7.55652 10.5L13.4343 4.62219Z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgChevronBack);\nexport default __webpack_public_path__ + \"static/media/chevron-back.5aa82ea42d6a82d751006342f2eb3f87.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgChevronNext(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 21,\n height: 21,\n viewBox: \"0 0 21 21\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.56572 16.3778L8.18435 16.9964L14.6808 10.5L8.18435 4.00357L7.56572 4.62219L13.4435 10.5L7.56572 16.3778Z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgChevronNext);\nexport default __webpack_public_path__ + \"static/media/chevron-next.8ff95f71c45efa31d90773779a27ffb1.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCircle(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"45px\",\n height: \"45px\",\n viewBox: \"0 0 45 45\",\n enableBackground: \"new 0 0 45 45\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.5,43.5c-11.58,0-21-9.421-21-21s9.42-21,21-21c11.579,0,21,9.42,21,21S34.079,43.5,22.5,43.5z M22.5,5.5 c-9.374,0-17,7.626-17,17c0,9.375,7.626,17,17,17s17-7.626,17-17C39.5,13.125,31.874,5.5,22.5,5.5z\"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCircle);\nexport default __webpack_public_path__ + \"static/media/circle.24c6463e5f1d2ee3f984fcda82dbd519.svg\";\nexport { ForwardRef as ReactComponent };","var _rect, _g, _defs;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCircleArrowLeft(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 39,\n height: 39,\n viewBox: \"0 0 38 37\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 2,\n y: 1,\n width: 35,\n height: 35,\n rx: 17.5,\n fill: \"white\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter0_d_7_37)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.4343 12.6222L21.8157 12.0036L15.3193 18.5L21.8157 24.9964L22.4343 24.3778L16.5565 18.5L22.4343 12.6222Z\",\n fill: \"#229949\"\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 2.4375,\n y: 1.4375,\n width: 34.125,\n height: 34.125,\n rx: 17.0625,\n stroke: \"#229949\",\n strokeWidth: 0.875,\n shapeRendering: \"auto\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter0_d_7_37\",\n x: 0,\n y: 0,\n width: 39,\n height: 39,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 1\n }), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 1\n }), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0.180392 0 0 0 0 0.0470588 0 0 0 0.08 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_7_37\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_7_37\",\n result: \"shape\"\n })))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCircleArrowLeft);\nexport default __webpack_public_path__ + \"static/media/circle-arrow-left.6a9ff3ae25f7fdb35932ebf053eb5162.svg\";\nexport { ForwardRef as ReactComponent };","var _rect, _g, _defs;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCircleArrowRight(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 39,\n height: 39,\n viewBox: \"0 0 38 37\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 37,\n y: 36,\n width: 35,\n height: 35,\n rx: 17.5,\n transform: \"rotate(-180 37 36)\",\n fill: \"white\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#filter0_d_7_36)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.5657 24.3778L17.1843 24.9964L23.6808 18.5L17.1843 12.0036L16.5657 12.6222L22.4435 18.5L16.5657 24.3778Z\",\n fill: \"#229949\"\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 36.5625,\n y: 35.5625,\n width: 34.125,\n height: 34.125,\n rx: 17.0625,\n transform: \"rotate(-180 36.5625 35.5625)\",\n stroke: \"#229949\",\n strokeWidth: 0.875,\n shapeRendering: \"auto\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"filter0_d_7_36\",\n x: 0,\n y: 0,\n width: 39,\n height: 39,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"SourceAlpha\",\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 1\n }), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 1\n }), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"hardAlpha\",\n operator: \"out\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n type: \"matrix\",\n values: \"0 0 0 0 0 0 0 0 0 0.180392 0 0 0 0 0.0470588 0 0 0 0.08 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_7_36\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n mode: \"normal\",\n in: \"SourceGraphic\",\n in2: \"effect1_dropShadow_7_36\",\n result: \"shape\"\n })))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCircleArrowRight);\nexport default __webpack_public_path__ + \"static/media/circle-arrow-right.9175ed22e50dbe2e4377d4aa20ce6a23.svg\";\nexport { ForwardRef as ReactComponent };","var _g, _g2;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCross(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"45px\",\n height: \"45px\",\n viewBox: \"0 0 45 45\",\n enableBackground: \"new 0 0 45 45\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n id: \"Layer_1_copy\"\n })), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", {\n id: \"Layer_1\"\n }, /*#__PURE__*/React.createElement(\"polygon\", {\n points: \"39.028,36.2 25.327,22.499 39.026,8.8 36.198,5.972 22.499,19.671 8.8,5.972 5.972,8.8 19.671,22.499 5.97,36.2 8.798,39.028 22.499,25.327 36.2,39.028 \"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCross);\nexport default __webpack_public_path__ + \"static/media/cross.0fae764ff05b6a950f993bd5ecec7e65.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgCustomer(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 18,\n viewBox: \"0 0 1024 1024\",\n className: \"navLink-icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M563.202 716.8h-102.4c-28.16 0-51.2-23.040-51.2-51.2h-357.888v204.8c0 56.32 46.080 102.4 102.4 102.4h716.289c56.32 0 102.4-46.080 102.4-102.4v-204.8h-358.401c0 28.16-23.040 51.2-51.2 51.2zM921.601 256h-204.8c0-113.152-91.648-204.8-204.8-204.8s-204.8 91.648-204.8 204.8h-204.8c-56.32 0-102.4 46.080-102.4 102.4v153.6c0 56.832 45.568 102.4 102.4 102.4h307.2v-51.2c0-28.16 23.040-51.2 51.2-51.2h102.4c28.16 0 51.2 23.040 51.2 51.2v51.2h307.2c56.32 0 102.4-46.080 102.4-102.4v-153.6c0-56.32-46.080-102.4-102.4-102.4zM409.602 256c0-56.32 46.080-102.4 102.4-102.4s102.4 46.080 102.4 102.4h-204.8z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgCustomer);\nexport default __webpack_public_path__ + \"static/media/customer.d4230da9cee05c38b530d242a57e380d.svg\";\nexport { ForwardRef as ReactComponent };","var _circle, _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgDepartmentAvatar(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 40,\n height: 40,\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n r: 512,\n cx: 512,\n cy: 512,\n fill: \"#004832\"\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"translate(256 256) scale(0.5)\",\n fill: \"#fff\",\n d: \"M0.001 350.316h215.579v-215.579h-107.789c-59.284 0-107.789 48.505-107.789 107.789v107.789zM0.001 619.79h215.579v-215.579h-215.579v215.579zM269.475 619.79h215.579v-215.579h-215.579v215.579zM538.948 619.79h215.579v-215.579h-215.579v215.579zM269.475 350.316h215.579v-215.579h-215.579v215.579zM538.948 134.737v215.579h215.579v-215.579h-215.579zM808.422 619.79h215.579v-215.579h-215.579v215.579zM107.79 889.264h107.789v-215.579h-215.579v107.789c0 59.284 48.505 107.789 107.789 107.789zM269.475 889.264h215.579v-215.579h-215.579v215.579zM538.948 889.264h215.579v-215.579h-215.579v215.579zM808.422 889.264h107.789c59.284 0 107.789-48.505 107.789-107.789v-107.789h-215.579v215.579zM808.422 134.737v215.579h215.579v-107.789c0-59.284-48.505-107.789-107.789-107.789h-107.789z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgDepartmentAvatar);\nexport default __webpack_public_path__ + \"static/media/department-avatar.f0802571504e86f75fa92ffafb8d6555.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgDisease(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M512 0c280.253 0 512 231.747 512 512s-231.747 512-512 512-512-226.358-512-512 226.358-512 512-512zM474.274 199.411c-21.558 21.558-21.558 48.505 0 70.063l10.779 5.389c21.558 21.558 48.505 21.558 70.063 0l86.232-86.232c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-91.621 86.232zM560.505 619.789c0 26.947 21.558 48.505 48.505 48.505h10.779c26.947 0 48.505-21.558 48.505-48.505v-161.684c0-26.947-21.558-48.505-48.505-48.505h-10.779c-26.947 0-48.505 21.558-48.505 48.505v161.684zM269.474 765.305c-21.558 21.558-21.558 48.505 0 70.063l5.389 5.389c21.558 21.558 48.505 21.558 70.063 0l86.232-86.232c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-86.232 86.232zM118.568 533.558c-21.558 21.558-21.558 48.505 0 70.063l5.389 5.389c21.558 21.558 48.505 21.558 70.063 0l5.389-5.389c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-5.389 5.389zM781.474 635.958c-21.558 21.558-21.558 48.505 0 70.063l5.389 5.389c21.558 21.558 48.505 21.558 70.063 0l5.389-5.389c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-5.389 5.389zM528.168 840.758c-21.558 21.558-21.558 48.505 0 70.063l5.389 5.389c21.558 21.558 48.505 21.558 70.063 0l5.389-5.389c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-5.389 5.389zM781.474 382.653c-21.558 21.558-21.558 48.505 0 70.063l5.389 5.389c21.558 21.558 48.505 21.558 70.063 0l5.389-5.389c21.558-21.558 21.558-48.505 0-70.063l-5.389-5.389c-21.558-21.558-48.505-21.558-70.063 0l-5.389 5.389zM296.421 269.474c-21.558-16.168-48.505-16.168-70.063 0l-5.389 10.779c-21.558 21.558-21.558 48.505 0 70.063l161.684 161.684c21.558 21.558 48.505 21.558 70.063 0l5.389-5.389c21.558-21.558 21.558-48.505 0-70.063l-161.684-167.074z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgDisease);\nexport default __webpack_public_path__ + \"static/media/disease.4410a1af0fbd51988faa634b4d964e38.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgDraw(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"-0.0420074 0.076004 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M127.969 469.37v-85.38h-128.010v85.38h85.38z M-0.041 1024.041h85.38c42.63 0 85.38 0 85.38 0v-85.38h-170.761v85.38z M409.592 383.99h-196.242v85.38h110.862z M-0.041 597.38h85.38v256.021h-85.38v-256.021z M255.979 938.661h256.021v85.38h-256.021v-85.38z M725.391 529.028v25.602h85.26v-110.862z M725.391 640.010h85.38v256.021h-85.38v-256.021z M597.38 938.661h213.391v85.38h-213.391v-85.38z M767.953 85.383l85.307-85.307 170.699 170.699-85.307 85.307-170.699-170.699z M341.36 512l-42.751 213.391 213.391-42.751 384.031-384.031-170.64-170.64z\",\n fill: \"currentColor\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgDraw);\nexport default __webpack_public_path__ + \"static/media/draw.da6d3b45972d877c3df189d8457c4044.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgGlobe(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512 0c-282.624 0-512 229.376-512 512s229.376 512 512 512 512-229.376 512-512-229.376-512-512-512zM460.8 918.016c-202.24-25.088-358.4-197.12-358.4-406.016 0-31.744 4.096-61.952 10.752-91.648l245.248 245.248v51.2c0 56.32 46.080 102.4 102.4 102.4v98.816zM814.080 787.968c-13.312-41.472-51.2-71.168-97.28-71.168h-51.2v-153.6c0-28.16-23.040-51.2-51.2-51.2h-307.2v-102.4h102.4c28.16 0 51.2-23.040 51.2-51.2v-102.4h102.4c56.32 0 102.4-46.080 102.4-102.4v-20.992c150.016 60.928 256 207.872 256 379.392 0 106.496-40.96 203.264-107.52 275.968z\",\n fill: \"currentColor\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgGlobe);\nexport default __webpack_public_path__ + \"static/media/globe.dd87d8219bbe9d1094e8e97a635df262.svg\";\nexport { ForwardRef as ReactComponent };","var _polygon;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgHoriver(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n points: \"10 1 18 1 18 23 6 23 6 5 10 1\",\n transform: \"scale(46) translate(-2 0)\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgHoriver);\nexport default __webpack_public_path__ + \"static/media/horiver.1a4e8aa2c5c901c7de0faeadec54e4b2.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgIndoor(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 44,\n height: 42,\n viewBox: \"0 0 44 42\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.3333 41H1.33203V12.2362L11.6129 1.00006L22.3333 12.2362V41Z\",\n stroke: \"#002e0c\",\n strokeWidth: 0.702323,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.33203 12.2408H22.3333\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.20117 4.79562V41\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.1992 4.79562V41\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.33203 31.0729H22.3333\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.33203 21.5109H22.3333\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M43.3313 40.9999H22.3301V12.2362L32.6106 1L43.3313 12.2362V40.9999Z\",\n stroke: \"#002e0c\",\n strokeWidth: 0.702323,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.3301 12.2408H43.3313\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29.2031 4.79562V41\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M36.2031 4.79562V41\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.3301 31.0729H43.3313\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.3301 21.5109H43.3313\",\n stroke: \"#002e0c\",\n strokeWidth: 0.351161,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgIndoor);\nexport default __webpack_public_path__ + \"static/media/indoor.75255aa081ebfc50e6e80eac7769c18d.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgLeaf(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 65,\n height: 57,\n viewBox: \"0 0 65 57\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M64.3203 17.2386C64.3203 33.1363 55.6132 46.4859 42.5308 50.8115C40.0399 51.7981 37.3315 52.3602 34.49 52.3602C26.4231 52.3602 18.9279 47.8221 15.1368 40.6178C8.40858 46.824 6.59632 53.9177 6.56524 54.0544C6.23834 55.4229 5.014 56.3427 3.66537 56.3427C3.43617 56.3427 3.20211 56.3155 2.96905 56.2612C1.36685 55.8761 0.378686 54.2624 0.762766 52.6615C1.95578 47.7517 12.008 24.5205 42.4398 24.5205C43.5377 24.5225 44.4326 23.6275 44.4326 22.5337C44.4326 21.4399 43.5377 20.5449 42.4438 20.5449C29.0942 20.5449 19.4487 24.8456 12.6484 29.9419C12.6724 28.597 12.8028 27.2272 13.0878 25.8338C14.7621 17.6538 21.2964 11.0424 29.4205 9.15303C32.9419 8.33739 36.3414 8.40563 39.4799 9.15236C46.4406 10.808 54.172 8.23106 58.0376 1.54036C58.7416 0.318758 60.5261 0.357539 61.1028 1.6433C63.1643 6.22084 64.3203 11.8316 64.3203 17.2386Z\",\n fill: \"currentColor\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgLeaf);\nexport default __webpack_public_path__ + \"static/media/leaf.77431ba9d6e6574c5ab1e704be6e95a1.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgLink(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n stroke: \"currentColor\",\n strokeWidth: 0,\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n id: \"Icons/Link\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n id: \"Vector\",\n d: \"M17.3535 8.207L6.707 18.8535L6 18.1465L16.6465 7.5H9.3535V6.5H18.3535V15.5H17.3535V8.207Z\"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgLink);\nexport default __webpack_public_path__ + \"static/media/link.85431ba2f700a8856646127abc352035.svg\";\nexport { ForwardRef as ReactComponent };","var _circle, _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgLocationAvatar(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 40,\n height: 40,\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n r: 512,\n cx: 512,\n cy: 512,\n fill: \"#004832\"\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"translate(256 256) scale(0.5)\",\n fill: \"#fff\",\n d: \"M-12.8 384l1024-384-384 1024-128-512z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgLocationAvatar);\nexport default __webpack_public_path__ + \"static/media/location-avatar.8005d01108d81f717f04c6243a8c1a0b.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgNutrient(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M183.784,510.365c-5.274,55.654,11.571,110.848,51.661,150.989,40.141,40.09,95.334,56.934,150.989,51.661,5.274-55.6-11.571-110.848-51.712-150.938-40.09-40.141-95.334-56.986-150.938-51.712M344.808,442.32c0,56.781,27.136,107.674,70.2,143.309,43.059-35.635,70.2-86.528,70.2-143.309,0-56.73-27.136-107.674-70.2-143.258-43.059,35.584-70.2,86.528-70.2,143.258M495.285,562.076c-40.141,40.09-56.934,95.334-51.661,150.938,55.6,5.274,110.848-11.571,150.938-51.661,40.141-40.141,56.934-95.334,51.712-150.989-55.654-5.274-110.848,11.571-150.989,51.712M49.18,831.593C19.74,709.43,4.738,613.43,3.97,514,4.738,413.7,20,316.828,50,193.078h.256c109.517-9.677,237.722-14.8,370.842-14.8,128.41,0,251.853,4.864,358.758,13.926C809.96,316.368,825.269,413.494,826.037,514c-.768,99.635-15.821,195.84-45.363,318.362-107.059,9.062-230.861,13.978-359.578,13.978-133.12,0-261.325-5.12-370.842-14.848a7.637,7.637,0,0,1-1.075.1M421.1,884.739c-131.738,0-258.56-5.069-367.77-14.49C43.6,899.484,18.46,994.921,97.922,1013.66c0,0,30.157,12.339,79.206-15.258,0,0,42.189-28.314,98.2-2.867,0,0,72.7,30.464,139.674,30.464s139.725-30.464,139.725-30.464c56.013-25.446,98.2,2.867,98.2,2.867,49.05,27.6,79.155,15.258,79.155,15.258,78.694-18.586,54.835-112.282,44.9-142.541C670.44,879.977,548.175,884.739,421.1,884.739M52.2,154.422C41.909,121.705,21.48,32.412,97.922,14.39c0,0,30.157-12.39,79.206,15.258,0,0,42.189,28.314,98.2,2.867C275.33,32.515,348.034,2,415,2S554.728,32.515,554.728,32.515c56.013,25.446,98.2-2.867,98.2-2.867C701.98,2,732.085,14.39,732.085,14.39c75.878,17.869,56.422,105.779,45.978,139.162-106.8-8.858-229.478-13.67-356.966-13.67-132.147,0-259.43,5.069-368.9,14.541\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgNutrient);\nexport default __webpack_public_path__ + \"static/media/nutrient.c6c194f803d3a6a1c2bef966e71e75df.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgOutdoor(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 44,\n height: 40,\n viewBox: \"0 0 44 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.0332 18.7038H41.2723\",\n stroke: \"#002e0c\",\n strokeWidth: 0.632279,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.8535 16.6805C12.8535 11.6511 16.5887 7.57568 21.1963 7.57568C25.8039 7.57568 29.5388 10.0451 29.5388 16.6805\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.0566 10.99L34.3143 8.33444\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.2012 7.19632L28.6177 2.89682\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.7361 10.99L8.47852 8.33444\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.6509 7.19632L14.2344 2.89682\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.4824 6.18469V1\",\n stroke: \"#002e0c\",\n strokeWidth: 0.31614,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.6002 20.7271C13.6002 20.7271 3.98791 28.8645 1 39\",\n stroke: \"#002e0c\",\n strokeWidth: 0.442595,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.4004 20.7271C30.4004 20.7271 40.0131 28.8645 43.0006 39\",\n stroke: \"#002e0c\",\n strokeWidth: 0.442595,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M25.6816 20.7271C25.6816 20.7271 31.2827 29.1498 33.3914 39\",\n stroke: \"#002e0c\",\n strokeWidth: 0.442595,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.9723 20.7271C17.9723 20.7271 12.3295 29.1498 10.2051 39\",\n stroke: \"#002e0c\",\n strokeWidth: 0.442595,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.4824 20.7271V39\",\n stroke: \"#002e0c\",\n strokeWidth: 0.442595,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgOutdoor);\nexport default __webpack_public_path__ + \"static/media/outdoor.b963f95313e6cf1b76ee2e385dc45b3d.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgPest(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M721.827 332.336c121.135 206.129 181.703 362.702 181.703 469.716 0 176.283-259.562 165.2-345.163 0l-44.529-116.148-44.167 116.148c-85.989 173.362-349.2 177.545-349.2 0 0-107.958 61.066-264.937 183.199-470.936l-129.71-72.605c-21.934-12.278-29.449-39.47-16.786-60.735s40.711-28.552 62.645-16.274l130.761 73.194c70.841-109.562 125.26-164.343 163.257-164.343 38.11 0 91.945 55.108 161.505 165.324l132.514-74.174c21.934-12.278 49.981-4.992 62.645 16.274s5.148 48.457-16.786 60.735l-131.888 73.825zM470.271 428.258c-24.061 0-43.566 18.911-43.566 42.238s19.505 42.238 43.566 42.238h87.132c24.061 0 43.566-18.911 43.566-42.238s-19.505-42.238-43.566-42.238h-87.132z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgPest);\nexport default __webpack_public_path__ + \"static/media/pest.90330ba98094d1eb41a152175332b1ac.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgPollination(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1024 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n transform: \"scale(1)\",\n fill: \"currentColor\",\n d: \"M246.144 364.288c-65.249 0-118.144-52.895-118.144-118.144s52.895-118.144 118.144-118.144v0c65.249 0 118.144 52.895 118.144 118.144s-52.895 118.144-118.144 118.144v0zM512 541.568c-48.955 0-88.64-39.685-88.64-88.64s39.685-88.64 88.64-88.64h0c48.955 0 88.64 39.685 88.64 88.64s-39.685 88.64-88.64 88.64h0zM305.28 896c-1.419 0.041-3.088 0.064-4.763 0.064-97.909 0-177.28-79.371-177.28-177.28s79.371-177.28 177.28-177.28c1.675 0 3.344 0.023 5.008 0.069l-0.245-0.005c95.838 2.657 172.517 80.982 172.517 177.216s-76.679 174.559-172.272 177.211l-0.245 0.005zM748.288 836.928c-0.915 0.020-1.993 0.032-3.074 0.032-81.579 0-147.712-66.133-147.712-147.712s66.133-147.712 147.712-147.712c1.081 0 2.159 0.012 3.235 0.035l-0.161-0.003c80.246 1.723 144.638 67.182 144.638 147.68s-64.392 145.956-144.477 147.677l-0.161 0.003zM748.288 423.36c-0.915 0.020-1.993 0.032-3.074 0.032-81.579 0-147.712-66.133-147.712-147.712s66.133-147.712 147.712-147.712c1.081 0 2.159 0.012 3.235 0.035l-0.161-0.003c80.246 1.723 144.638 67.182 144.638 147.68s-64.392 145.956-144.477 147.677l-0.161 0.003z\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgPollination);\nexport default __webpack_public_path__ + \"static/media/pollination.59b58c1ab4474271580b46e7be0dbc7e.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgTrash(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"113.779 0.00000190735 796.4 1024\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M170.669 910.221c0 62.578 51.2 113.778 113.778 113.778h455.11c62.578 0 113.778-51.2 113.778-113.778v-568.888c0-62.578-51.2-113.778-113.778-113.778h-455.11c-62.578 0-113.778 51.2-113.778 113.778v568.888zM853.334 56.889h-142.222l-40.391-40.391c-10.24-10.24-25.031-16.498-39.822-16.498h-237.796c-14.791 0-29.582 6.258-39.822 16.498l-40.391 40.391h-142.222c-31.289 0-56.889 25.6-56.889 56.889s25.6 56.889 56.889 56.889h682.666c31.289 0 56.889-25.6 56.889-56.889s-25.6-56.889-56.889-56.889z\",\n fill: \"currentColor\"\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgTrash);\nexport default __webpack_public_path__ + \"static/media/trash.e7ef81908d327203f3896024598411dd.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport * as React from \"react\";\nfunction SvgTriangle(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"45px\",\n height: \"45px\",\n viewBox: \"0 0 45 45\",\n enableBackground: \"new 0 0 45 45\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M44.135,41.133H0.677l21.729-38.02L44.135,41.133z M7.571,37.133h29.671L22.406,11.174L7.571,37.133z\"\n }))));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgTriangle);\nexport default __webpack_public_path__ + \"static/media/triangle.e1270e6def4a9dbe95b16033aaa5ab13.svg\";\nexport { ForwardRef as ReactComponent };","import { ReactComponent as arrowLeft } from './arrow-left.svg';\nimport { ReactComponent as arrowRight } from './arrow-right.svg';\nimport { ReactComponent as beneficial } from './beneficial.svg';\nimport { ReactComponent as biologicalAction } from './biological-action.svg';\nimport { ReactComponent as biologicalSprayAction } from './biological-spray-action.svg';\nimport { ReactComponent as camera } from './camera.svg';\nimport { ReactComponent as center } from './center.svg';\nimport { ReactComponent as chemicalAction } from './chemical-action.svg';\nimport { ReactComponent as chevronBack } from './chevron-back.svg';\nimport { ReactComponent as chevronNext } from './chevron-next.svg';\nimport { ReactComponent as circle } from './circle.svg';\nimport { ReactComponent as circleArrowLeft } from './circle-arrow-left.svg';\nimport { ReactComponent as circleArrowRight } from './circle-arrow-right.svg';\nimport { ReactComponent as cross } from './cross.svg';\nimport { ReactComponent as customer } from './customer.svg';\nimport { ReactComponent as departmentAvatar } from './department-avatar.svg';\nimport { ReactComponent as disease } from './disease.svg';\nimport { ReactComponent as draw } from './draw.svg';\nimport { ReactComponent as globe } from './globe.svg';\nimport { ReactComponent as horiver } from './horiver.svg';\nimport { ReactComponent as indoor } from './indoor.svg';\nimport { ReactComponent as leaf } from './leaf.svg';\nimport { ReactComponent as link } from './link.svg';\nimport { ReactComponent as locationAvatar } from './location-avatar.svg';\nimport { ReactComponent as nutrient } from './nutrient.svg';\nimport { ReactComponent as outdoor } from './outdoor.svg';\nimport { ReactComponent as pest } from './pest.svg';\nimport { ReactComponent as pollination } from './pollination.svg';\nimport { ReactComponent as trash } from './trash.svg';\nimport { ReactComponent as triangle } from './triangle.svg';\n\nexport default {\n 'arrow-right': arrowRight,\n beneficial,\n 'biological-action': biologicalAction,\n 'biological-spray-action': biologicalSprayAction,\n camera,\n 'chemical-action': chemicalAction,\n customer,\n 'department-avatar': departmentAvatar,\n disease,\n horiver,\n 'location-avatar': locationAvatar,\n 'arrow-left': arrowLeft,\n nutrient,\n pest,\n pollination,\n center,\n trash,\n draw,\n globe,\n leaf,\n indoor,\n outdoor,\n circle,\n triangle,\n cross,\n circleArrowLeft,\n circleArrowRight,\n chevronBack,\n chevronNext,\n link,\n};\n","import React from 'react';\n\n// import { Spin } from 'antd';\nimport { KpScoutTemplateRecord } from '@koppert/services-hva/spec';\n\nimport icons from './icons';\n// import type * as Types from './types';\n\n// const iconsCached = new Map>>();\n\n// function useDynamicSVGImport(name: string) {\n// const [loading, setLoading] = React.useState(false);\n// const [error, setError] = React.useState();\n\n// React.useEffect(() => {\n// if (name && !iconsCached.has(name)) {\n// const importIcon = async () => {\n// try {\n// setLoading(true);\n// const icon: React.FC> = (\n// await import(`!!@svgr/webpack?-svgo,+titleProp,+ref!./icons/${name}.svg`)\n// )?.default;\n\n// // iconsCached.set(name, icon);\n// } catch (err: any) {\n// console.log(err);\n// setError(err);\n// } finally {\n// setLoading(false);\n// }\n// };\n\n// importIcon();\n// }\n// }, [name]);\n\n// return { error, loading, SvgIcon: iconsCached.get(name) };\n// }\n\ninterface IconProps extends React.SVGProps {\n name: keyof typeof icons | `${KpScoutTemplateRecord.Category}`;\n height?: string | number;\n width?: string | number;\n}\n\nconst Icon: React.FC = ({ name, ...rest }) => {\n // const { loading, error, SvgIcon } = useDynamicSVGImport(name);\n\n const Component = icons[name as keyof typeof icons];\n\n if (!Component || !React.isValidElement()) {\n return null;\n }\n\n return ;\n};\n\nexport default React.memo(Icon);\n","import { GA4EventData, GA4EventName } from './types';\nimport { normalizeOptions } from './utils';\n\nexport const ga4ExecuteEvent = (event: GA4EventName, options: GA4EventData) => {\n window.gtag?.('event', event, normalizeOptions(options));\n};\n","import { isBoolean, isNil, reduce } from 'lodash-es';\n\nconst booleanToString = (v: boolean) => (v ? 'true' : 'false');\n\nexport const normalizeOptions = (obj: Record) =>\n reduce(\n obj,\n (result, value, key) => {\n if (isNil(value)) {\n return result;\n }\n\n return {\n ...result,\n [key]: isBoolean(value) ? booleanToString(value) : value,\n };\n },\n {},\n );\n","import React from 'react';\n\nimport type * as Types from './types';\n\nexport const getDynamicLayoutRoutes =

(\n path: string,\n pages: Types.Pages,\n onRoutes: (arg: Types.PageRoutes

) => JSX.Element | JSX.Element[],\n) => {\n const mappedRoutes = new Map();\n\n Object.entries(pages).forEach(([route, page]) => {\n const [domain] = route.startsWith('/') ? route.slice(1).split('/') : route.split('/');\n\n const entry = {\n route,\n page,\n };\n\n if (mappedRoutes.has(domain)) {\n const prev = mappedRoutes.get(domain) || [];\n // move routes with :id to the bottom\n const newEntry = [...prev, entry];\n\n mappedRoutes.set(domain, newEntry);\n } else {\n mappedRoutes.set(domain, [entry]);\n }\n });\n\n const result: Array> = [];\n\n mappedRoutes.forEach((routes, domain) => {\n const domainRoutes: unknown = routes.map(({ route, page }) => {\n const pageModule = React.lazy(page as () => Promise<{ default: React.ComponentType }>);\n\n return { key: route, path: route, index: true, element: pageModule };\n });\n\n result.push({ domain, routes: domainRoutes as Array

});\n });\n\n const router = result.find(({ domain }) => path.includes(domain));\n\n return router ? onRoutes(router) : null;\n};\n\nexport const getBreadcrumbsFromRoutes: Types.BreadcrumbRoutes = (path, breadcrumbs, params, options) => {\n let routes = path\n .split('/')\n .filter(Boolean)\n .reduce((acc, cur, idx) => [...acc, `${acc?.[idx - 1] || ''}/${cur}`], []);\n\n // TODO: rewrite this, wtf\n if (params[0] && path.endsWith('*')) {\n const parts = params[0].split('/');\n const routeWithParams = `:${parts.map((_, idx) => idx).join('/:')}`;\n const newRoute = path.replace('*', routeWithParams);\n\n // eslint-disable-next-line no-param-reassign\n path = newRoute;\n // eslint-disable-next-line no-param-reassign\n params = Object.fromEntries(params[0].split('/').map((val, idx) => [idx, val]));\n // eslint-disable-next-line no-param-reassign\n // routes = newRoute\n // .split('/')\n // .filter(Boolean)\n // .reduce>>(\n // (acc, cur, idx) => [...acc, { route: `${acc?.[idx - 1]?.route || ''}/${cur}` }],\n // [],\n // ) as any;\n }\n\n // compat check for react router v6 from v5\n if (!path.includes(':')) {\n routes = routes.map((route) =>\n Object.keys(params).reduce((prev, key) => prev.replace(`/${params[key]!}`, `/:${key}`), route),\n );\n }\n\n return routes\n .map((route) => {\n const last = route.split('/').at(-1)!;\n\n let breadcrumbName;\n let item;\n\n // replace :placeholderId for real id\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const path = Object.keys(params).reduce((prev, key) => key && prev.replace(`:${key}`, params[key]!), route);\n\n if (breadcrumbs[last]) {\n item = breadcrumbs[last];\n } else if (Reflect.has(breadcrumbs, last)) {\n item = null;\n } else if (options?.auto) {\n if (last.startsWith(':')) {\n const key = last.replace(':', '');\n\n item = params[key] || key;\n } else {\n item = last;\n }\n }\n\n if (item) {\n if (React.isValidElement(item)) {\n breadcrumbName = React.cloneElement(item);\n }\n breadcrumbName = item;\n }\n\n return { breadcrumbName, path };\n })\n .filter(({ breadcrumbName }) => breadcrumbName);\n};\n","import { pick } from 'lodash-es';\nimport create from 'zustand';\nimport { devtools, persist } from 'zustand/middleware';\nimport createVanilla, { StateCreator } from 'zustand/vanilla';\n\nimport { OpenAPI } from '@koppert/services-hva/spec';\n\nimport type * as Types from './types';\n\nconst store: StateCreator<\n Types.AuthStore,\n [],\n [['zustand/devtools', Types.AuthStore], ['zustand/persist', Types.AuthStore]]\n> = devtools(\n persist(\n (set, get) => ({\n setUser: (data) => {\n const { setConfig } = get();\n\n set(data);\n setConfig();\n },\n setImpersonateUser: (data) => {\n set((state) => ({\n ...state,\n ImpersonateUser: data ? { ...data, isLoggedIn: false } : null,\n }));\n },\n setConfig: () => {\n const { AccessToken } = get();\n\n OpenAPI.TOKEN = AccessToken;\n },\n logout: () => {\n OpenAPI.TOKEN = undefined;\n set(\n (state) => pick(state, ['setUser', 'setConfig', 'logout', 'setImpersonateUser']),\n true,\n );\n },\n }),\n {\n name: 'stores/auth',\n version: 2,\n onRehydrateStorage: () => (state) => {\n state?.setConfig();\n },\n },\n ),\n { name: 'stores/auth' },\n);\n\nexport const vanillaAuthStore = createVanilla(store);\nexport const useAuthStore = create(vanillaAuthStore);\n","import create, { StateCreator } from 'zustand';\nimport { devtools, subscribeWithSelector } from 'zustand/middleware';\nimport { immer } from 'zustand/middleware/immer';\nimport createVanilla from 'zustand/vanilla';\n\nimport { KpAction, KpScoutTemplateRecord } from '@koppert/services-hva/spec';\n\nimport { DepartmentEntry as DE, RecordEntry } from 'src/containers/compare-modal/types';\n\nexport const objectIsRecord = (object: KpScoutTemplateRecord | KpAction): object is KpScoutTemplateRecord =>\n Reflect.has(object, 'ScoutTemplRecId');\n\nexport enum ChartActionMode {\n DEFAULT,\n COMBINED,\n}\nexport interface DepartmentEntry extends Omit {\n selectedActions: KpAction[];\n selectedRecords: KpScoutTemplateRecord[];\n}\n\ntype CompareStoreState = {\n startWeek: number;\n chartActionMode: ChartActionMode;\n records: KpScoutTemplateRecord[];\n departmentEntries: DepartmentEntry[];\n};\n\ntype CompareStoreActions = {\n resetStore: () => void;\n setStartWeek: (startWeek: number) => void;\n handleChartActionModeChange(mode: ChartActionMode): any;\n isActionActionChecked(indexInStore: number, action: KpAction): boolean;\n isRecordChecked(indexInStore: number, record: KpScoutTemplateRecord): boolean;\n onModalSave(args: { departmentEntries: DE[]; recordEntries: RecordEntry[] }): any;\n onActionOrRecordChange(indexStore: number, recordOrActions: KpScoutTemplateRecord | KpAction[]): any;\n setSettingsFromStorage(settings: CompareStoreState): void;\n};\n\nexport type CompareStore = CompareStoreState & CompareStoreActions;\n\nconst initialState: CompareStoreState = {\n startWeek: 1,\n chartActionMode: ChartActionMode.DEFAULT,\n records: [],\n departmentEntries: [],\n};\n\nconst store: StateCreator<\n CompareStore,\n [],\n [['zustand/immer', CompareStore], ['zustand/devtools', CompareStore], ['zustand/subscribeWithSelector', CompareStore]]\n> = immer(\n devtools(\n subscribeWithSelector((set, get) => ({\n ...initialState,\n resetStore: () => set(() => ({ ...initialState })),\n setStartWeek: (startWeek: number) => {\n if (startWeek != null) {\n set((state) => {\n state.startWeek = startWeek;\n });\n }\n },\n isRecordChecked(indexInStore, record) {\n const departmentEntry = get().departmentEntries[indexInStore];\n\n return Boolean(departmentEntry?.selectedRecords.find((r) => r.ScoutTemplRecId === record.ScoutTemplRecId));\n },\n isActionActionChecked(indexInStore, action) {\n const departmentEntry = get().departmentEntries[indexInStore];\n\n return Boolean(departmentEntry.selectedActions.find((a) => a.Action === action.Action));\n },\n onActionOrRecordChange(indexInStore, recordOrActions) {\n return () => {\n set((draft) => {\n const entry = draft.departmentEntries[indexInStore];\n\n if (!entry) {\n return;\n }\n\n if (Array.isArray(recordOrActions)) {\n const action = entry.selectedActions.find((a) => a.Action === recordOrActions[0].Action);\n\n if (action) {\n entry.selectedActions = entry.selectedActions.filter((a) => a.Action !== action!.Action);\n } else {\n entry.selectedActions.push(...recordOrActions);\n }\n } else if (objectIsRecord(recordOrActions)) {\n const recordIndex = entry.selectedRecords.findIndex(\n (r) => r.ScoutTemplRecId === recordOrActions.ScoutTemplRecId,\n );\n\n if (recordIndex === -1) {\n entry.selectedRecords.push(recordOrActions);\n } else {\n entry.selectedRecords.splice(recordIndex, 1);\n }\n }\n });\n };\n },\n onModalSave(args) {\n const { departmentEntries, recordEntries } = args;\n\n set((state) => {\n state.departmentEntries = departmentEntries.map(({ location, department, year, id }) => ({\n id,\n year,\n location,\n department,\n selectedActions: [],\n selectedRecords: [],\n }));\n state.records = recordEntries.filter(Boolean) as KpScoutTemplateRecord[];\n });\n },\n handleChartActionModeChange(mode) {\n set(() => ({ chartActionMode: mode }));\n },\n setSettingsFromStorage(settings: CompareStoreState) {\n if (settings) {\n set(() => settings);\n }\n },\n })),\n ),\n);\n\nexport const vanillaCompareStore = createVanilla(store);\nexport const useCompareStore = create(vanillaCompareStore);\n","import create, { GetState, SetState, StateCreator } from 'zustand';\nimport { devtools, persist } from 'zustand/middleware';\nimport createVanilla from 'zustand/vanilla';\n\nimport { WEEK_NUMBERING_SYSTEM } from 'src/constants';\n\ntype SettingsStore = {\n weekNumberingSystem: {\n name: keyof typeof WEEK_NUMBERING_SYSTEM;\n weekStartDay: number;\n yearStartDay: number;\n };\n unitSystem: 'SI' | 'BI';\n setWeekNumberingSystem(weekNumberingSystem: SettingsStore['weekNumberingSystem']): void;\n setUnitSystem(unitSystem: SettingsStore['unitSystem']): void;\n};\n\nconst myMiddlewares: (\n fn: (set: SetState, get: GetState) => SettingsStore,\n) => StateCreator = (f) =>\n devtools(persist(f, { name: 'stores/settings', version: 3 }), {\n name: 'stores/settings',\n });\n\nexport const vanillaSettingsStore = createVanilla()(\n myMiddlewares((set) => ({\n weekNumberingSystem: {\n name: 'iso-8601',\n weekStartDay: 1,\n yearStartDay: 4,\n },\n unitSystem: 'SI',\n setWeekNumberingSystem: (weekNumberingSystem: SettingsStore['weekNumberingSystem']) =>\n set((state) => ({ ...state, weekNumberingSystem })),\n setUnitSystem: (unitSystem: SettingsStore['unitSystem']) => set((state) => ({ ...state, unitSystem })),\n })),\n);\n\nexport const useSettings = create(vanillaSettingsStore);\n","import { createIntl, createIntlCache } from 'react-intl';\nimport dayjs from 'dayjs';\nimport create, { StateCreator } from 'zustand';\nimport { devtools, persist } from 'zustand/middleware';\nimport createVanilla from 'zustand/vanilla';\n\nimport { getAnonymousToken } from 'src/utils/hva';\n\nimport type * as Types from './types';\n\nconst store: StateCreator<\n Types.TranslationStore,\n [],\n [['zustand/devtools', Types.TranslationStore], ['zustand/persist', Types.TranslationStore]]\n> = devtools(\n persist(\n (set, get) => ({\n token: undefined,\n language: 'en',\n intl: undefined,\n hasSynced: false,\n messages: undefined,\n intlCache: undefined,\n lastSynced: undefined,\n tokenExpiry: undefined,\n getAvailableLanguages: () => {\n const { messages } = get();\n\n return Object.entries(messages || {})\n .map(([localeKey, message]) => ({ locale: localeKey, label: message.Languages }))\n .filter((lang) => lang.label);\n },\n getToken: async () => {\n const { token, tokenExpiry } = get();\n\n if (token && dayjs().isBefore(tokenExpiry)) {\n return token;\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n const { token_type, access_token, expires_in } = await getAnonymousToken();\n\n const newToken = `${token_type} ${access_token}`;\n\n set({\n token: newToken,\n tokenExpiry: dayjs().add(expires_in, 'seconds').toISOString(),\n });\n\n return newToken;\n },\n syncTranslations: async () => {\n try {\n const { getToken, lastSynced, messages, setIntl, language } = get();\n\n const token = await getToken();\n const modifiedSince = messages && lastSynced;\n const appIds = ['KpScoutDashboard', 'KpScoutRef'];\n\n const url = new URL(`/api/v1/textresources/${appIds.join(',')}/grouped`, process.env.REACT_APP_HVA_BASE_URL);\n\n const headers = new Headers();\n\n headers.append('Authorization', token);\n\n if (modifiedSince) {\n headers.append('If-Modified-Since', modifiedSince);\n }\n\n const res = await fetch(url.toString(), {\n headers,\n });\n\n if (res.ok) {\n const translationsBody = await res.json();\n\n const messagesMap: Types.TranslationStore['messages'] = {};\n\n Object.entries(translationsBody.Resources).forEach(([key, translations]) => {\n Object.entries(translations as any).forEach(([lang, translation]) => {\n if (!Reflect.has(messagesMap, lang)) {\n messagesMap[lang] = {};\n }\n\n messagesMap[lang] = {\n ...messagesMap[lang],\n [key]: (translation as any).replace(/\\{\\{(.*?)\\}\\}/g, '{$1}'),\n };\n });\n });\n\n set({ messages: messagesMap, lastSynced: dayjs().toDate().toUTCString() });\n }\n setIntl(language);\n } catch (err) {\n console.error(err);\n // TODO: sentry log for unavailable translations\n set({ hasSynced: true, messages: undefined, intl: undefined });\n }\n },\n setIntl: (language = 'en') => {\n const { messages } = get();\n\n set({\n language,\n hasSynced: true,\n intl: createIntl(\n {\n locale: language,\n messages: { ...messages?.en, ...messages?.[language] },\n onError: () => null,\n },\n createIntlCache(),\n ),\n });\n },\n setIntlRaw: (language, intl) => {\n set({\n intl,\n language: language ?? 'en',\n hasSynced: true,\n });\n },\n }),\n {\n name: 'stores/translations',\n version: 3,\n partialize: (state) =>\n Object.fromEntries(Object.entries(state).filter(([key]) => !['intl', 'hasSynced'].includes(key))) as any,\n },\n ),\n { name: 'stores/translations' },\n);\n\nexport const vanillaTranslationsStore = createVanilla(store);\nexport const useTranslationsStore = create(vanillaTranslationsStore);\n","import { queryClient } from '@koppert/react-query';\n\nimport { vanillaCompareStore } from 'src/stores/compare';\n\nexport const cleanupUserData = (keepQueryClient?: boolean) => {\n localStorage.removeItem('stores/compare');\n\n vanillaCompareStore.getState().resetStore();\n window.dataLayer = [];\n\n console.info('Cache cleared');\n if (!keepQueryClient) {\n queryClient.clear();\n }\n};\n","import type * as Types from './types';\n\nexport const getAnonymousToken: Types.GetAnonymousToken = async () => {\n const scope = 'KPRes';\n const grantType = 'client_credentials';\n\n const url = new URL('/identity/connect/token', process.env.REACT_APP_HVA_ID_SERVER);\n\n const res = await fetch(url.toString(), {\n method: 'POST',\n headers: {\n Authorization: `Basic ${btoa('kp-resource-client:F95C5A25-0BA7-407C-A1B8-7D3FC360D9C5')}`,\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: `grant_type=${grantType}&scope=${scope}`,\n });\n\n const json = await res.json();\n\n return json;\n};\n\nexport const getSSOAuthorizationLink = () => {\n const responseType = 'id_token token';\n const scopes = ['openid', 'profile', 'email', 'roles', 'offline_access', 'KPortal', 'KPortal.w', 'userconfigs'];\n\n function random() {\n return `${Date.now()}${Math.random()}`.replace('.', '');\n }\n\n const state = random();\n const nonce = random();\n\n localStorage.setItem('state', state);\n localStorage.setItem('nonce', nonce);\n\n const clientId = 'kp-client-implicit';\n\n // * After login at Koppert server the SSO redirects to the redirectUri. Backend has to approve these links.\n // const redirectUri = `${window.location.protocol}//${window.location.host}/apps/monitor/sso-login`;\n // TODO: this is a tempororily fix!\n const redirectUri = `${window.location.protocol}//${window.location.host}/apps/monitoring/sso-login`;\n const authorizationUrl = new URL('/identity/connect/authorize', process.env.REACT_APP_HVA_ID_SERVER);\n\n const params = new URLSearchParams({\n client_id: clientId,\n redirect_uri: redirectUri,\n response_type: responseType,\n scope: scopes.join(' '),\n state,\n nonce,\n acr_values: 'idp:kadfs',\n });\n\n authorizationUrl.search = params.toString();\n\n return authorizationUrl.href;\n};\n\nexport * from './types';\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { ApiResult } from './ApiResult';\n\nexport class ApiError extends Error {\n public readonly url: string;\n public readonly status: number;\n public readonly statusText: string;\n public readonly body: any;\n\n constructor(response: ApiResult, message: string) {\n super(message);\n\n this.url = response.url;\n this.status = response.status;\n this.statusText = response.statusText;\n this.body = response.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { ApiRequestOptions } from './ApiRequestOptions';\n\ntype Resolver = (options: ApiRequestOptions) => Promise;\ntype Headers = Record;\n\ntype Config = {\n BASE: string;\n VERSION: string;\n WITH_CREDENTIALS: boolean;\n TOKEN?: string | Resolver;\n USERNAME?: string | Resolver;\n PASSWORD?: string | Resolver;\n HEADERS?: Headers | Resolver;\n};\n\nexport const OpenAPI: Config = {\n BASE: 'https://ont-kpdev.azurewebsites.net',\n VERSION: '1',\n WITH_CREDENTIALS: false,\n TOKEN: undefined,\n USERNAME: undefined,\n PASSWORD: undefined,\n HEADERS: undefined,\n};\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport { ApiError } from './ApiError';\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\nimport { OpenAPI } from './OpenAPI';\n\nfunction isDefined(value: T | null | undefined): value is Exclude {\n return value !== undefined && value !== null;\n}\n\nfunction isString(value: any): value is string {\n return typeof value === 'string';\n}\n\nfunction isStringWithValue(value: any): value is string {\n return isString(value) && value !== '';\n}\n\nfunction isBlob(value: any): value is Blob {\n return value instanceof Blob;\n}\n\nfunction getQueryString(params: Record): string {\n const qs: string[] = [];\n Object.keys(params).forEach((key) => {\n const value = params[key];\n if (isDefined(value)) {\n if (Array.isArray(value)) {\n value.forEach((value) => {\n qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);\n });\n } else {\n qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);\n }\n }\n });\n if (qs.length > 0) {\n return `?${qs.join('&')}`;\n }\n return '';\n}\n\nfunction getUrl(options: ApiRequestOptions): string {\n // const path = options.path.replace(/[:]/g, '_');\n const url = `${OpenAPI.BASE}${options.path}`;\n\n if (options.query) {\n return `${url}${getQueryString(options.query)}`;\n }\n return url;\n}\n\nfunction getFormData(params: Record): FormData {\n const formData = new FormData();\n Object.keys(params).forEach((key) => {\n const value = params[key];\n if (isDefined(value)) {\n formData.append(key, value);\n }\n });\n return formData;\n}\n\ntype Resolver = (options: ApiRequestOptions) => Promise;\n\nasync function resolve(options: ApiRequestOptions, resolver?: T | Resolver): Promise {\n if (typeof resolver === 'function') {\n return (resolver as Resolver)(options);\n }\n return resolver;\n}\n\nasync function getHeaders(options: ApiRequestOptions): Promise {\n const token = await resolve(options, OpenAPI.TOKEN);\n const username = await resolve(options, OpenAPI.USERNAME);\n const password = await resolve(options, OpenAPI.PASSWORD);\n const defaultHeaders = await resolve(options, OpenAPI.HEADERS);\n\n const headers = new Headers({\n Accept: 'application/json',\n ...defaultHeaders,\n ...options.headers,\n });\n\n if (isStringWithValue(token)) {\n headers.append('Authorization', `Bearer ${token}`);\n }\n\n if (isStringWithValue(username) && isStringWithValue(password)) {\n const credentials = btoa(`${username}:${password}`);\n headers.append('Authorization', `Basic ${credentials}`);\n }\n\n if (options.body) {\n if (isBlob(options.body)) {\n headers.append('Content-Type', options.body.type || 'application/octet-stream');\n } else if (isString(options.body)) {\n headers.append('Content-Type', 'text/plain');\n } else {\n headers.append('Content-Type', 'application/json');\n }\n }\n return headers;\n}\n\nfunction getRequestBody(options: ApiRequestOptions): BodyInit | undefined {\n if (options.formData) {\n return getFormData(options.formData);\n }\n if (options.body) {\n if (isString(options.body) || isBlob(options.body)) {\n return options.body;\n } else {\n return JSON.stringify(options.body);\n }\n }\n return undefined;\n}\n\nasync function sendRequest(options: ApiRequestOptions, url: string): Promise {\n const request: RequestInit = {\n method: options.method,\n headers: await getHeaders(options),\n body: getRequestBody(options),\n };\n if (OpenAPI.WITH_CREDENTIALS) {\n request.credentials = 'include';\n }\n return await fetch(url, request);\n}\n\nfunction getResponseHeader(response: Response, responseHeader?: string): string | null {\n if (responseHeader) {\n const content = response.headers.get(responseHeader);\n if (isString(content)) {\n return content;\n }\n }\n return null;\n}\n\nasync function getResponseBody(response: Response): Promise {\n try {\n const contentType = response.headers.get('Content-Type');\n if (contentType) {\n const isJSON = contentType.toLowerCase().startsWith('application/json');\n if (isJSON) {\n return await response.json();\n } else {\n return await response.text();\n }\n }\n } catch (error) {\n console.error(error);\n }\n return null;\n}\n\nfunction catchErrors(options: ApiRequestOptions, result: ApiResult): void {\n const errors: Record = {\n 400: 'Bad Request',\n 401: 'Unauthorized',\n 403: 'Forbidden',\n 404: 'Not Found',\n 500: 'Internal Server Error',\n 502: 'Bad Gateway',\n 503: 'Service Unavailable',\n ...options.errors,\n };\n\n const error = errors[result.status];\n if (error) {\n throw new ApiError(result, error);\n }\n\n if (!result.ok) {\n throw new ApiError(result, 'Generic Error');\n }\n}\n\n/**\n * Request using fetch client\n * @param options The request options from the the service\n * @returns ApiResult\n * @throws ApiError\n */\nexport async function request(options: ApiRequestOptions): Promise {\n const url = getUrl(options);\n const response = await sendRequest(options, url);\n const responseBody = await getResponseBody(response);\n const responseHeader = getResponseHeader(response, options.responseHeader);\n\n const result: ApiResult = {\n url,\n ok: response.ok,\n status: response.status,\n statusText: response.statusText,\n body: responseHeader || responseBody,\n };\n\n catchErrors(options, result);\n return result;\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a new billing plan.\n */\nexport type BillingPlanCreate = {\n ProductId: string;\n IsActive?: boolean;\n IsLiveMode?: boolean;\n Amount?: number;\n /**\n * ISO currency codes. https://www.iso.org/iso-4217-currency-codes.html\n */\n Currency: string;\n Interval?: BillingPlanCreate.Interval;\n IntervalCount?: number;\n NickName?: string;\n AggregateUsage?: BillingPlanCreate.AggregateUsage;\n BillingScheme?: BillingPlanCreate.BillingScheme;\n TrialPeriodDays?: number;\n UsageType?: BillingPlanCreate.UsageType;\n};\n\nexport namespace BillingPlanCreate {\n export enum Interval {\n DAY = 'Day',\n WEEK = 'Week',\n MONTH = 'Month',\n YEAR = 'Year',\n }\n\n export enum AggregateUsage {\n SUM = 'Sum',\n LAST_DURING_PERIOD = 'LastDuringPeriod',\n LAST_EVER = 'LastEver',\n MAX = 'Max',\n }\n\n export enum BillingScheme {\n PER_UNIT = 'PerUnit',\n TIERED = 'Tiered',\n }\n\n export enum UsageType {\n LICENSCED = 'Licensced',\n METERED = 'Metered',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties of the billing plan details.\n */\nexport type BillingPlanDetails = {\n PlanId?: string;\n ProductId?: string;\n IsActive?: boolean;\n IsLiveMode?: boolean;\n Amount?: number;\n /**\n * ISO currency codes. https://www.iso.org/iso-4217-currency-codes.html\n */\n Currency?: string;\n Interval?: BillingPlanDetails.Interval;\n IntervalCount?: number;\n NickName?: string;\n AggregateUsage?: BillingPlanDetails.AggregateUsage;\n BillingScheme?: BillingPlanDetails.BillingScheme;\n TrialPeriodDays?: number;\n UsageType?: BillingPlanDetails.UsageType;\n CreatedTimestampUtc?: string;\n};\n\nexport namespace BillingPlanDetails {\n export enum Interval {\n DAY = 'Day',\n WEEK = 'Week',\n MONTH = 'Month',\n YEAR = 'Year',\n }\n\n export enum AggregateUsage {\n SUM = 'Sum',\n LAST_DURING_PERIOD = 'LastDuringPeriod',\n LAST_EVER = 'LastEver',\n MAX = 'Max',\n }\n\n export enum BillingScheme {\n PER_UNIT = 'PerUnit',\n TIERED = 'Tiered',\n }\n\n export enum UsageType {\n LICENSCED = 'Licensced',\n METERED = 'Metered',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a new billing product.\n */\nexport type BillingProductCreate = {\n IsActive?: boolean;\n IsLiveMode?: boolean;\n Name: string;\n Description?: string;\n /**\n * Extra information about a product which will appear on your customer’s credit card statement. In the case that multiple products are billed at once, the first statement descriptor will be used.\n */\n StatementDescriptor?: string;\n ProductType?: BillingProductCreate.ProductType;\n /**\n * A label that represents units of this product and on customers’ receipts and invoices. When set, this will be included in associated invoice line item descriptions.\n */\n UnitLabel?: string;\n};\n\nexport namespace BillingProductCreate {\n export enum ProductType {\n SERVICE = 'Service',\n GOOD = 'Good',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties of the billing product details.\n */\nexport type BillingProductDetails = {\n ProductId?: string;\n IsActive?: boolean;\n IsLiveMode?: boolean;\n Name?: string;\n Description?: string;\n /**\n * Extra information about a product which will appear on your customer’s credit card statement. In the case that multiple products are billed at once, the first statement descriptor will be used.\n */\n StatementDescriptor?: string;\n ProductType?: BillingProductDetails.ProductType;\n /**\n * A label that represents units of this product and on customers’ receipts and invoices. When set, this will be included in associated invoice line item descriptions.\n */\n UnitLabel?: string;\n UpdatedTimestampUtc?: string;\n CreatedTimestampUtc?: string;\n};\n\nexport namespace BillingProductDetails {\n export enum ProductType {\n SERVICE = 'Service',\n GOOD = 'Good',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a new billing subscription.\n */\nexport type BillingSubscriptionCreate = {\n /**\n * If the subscription has been canceled with the at_period_end flag set to true, cancel_at_period_end on the subscription will be true. You can use this attribute to determine whether a subscription that has a status of active is scheduled to be canceled at the end of the current period.\n */\n CancelAtPeriodEnd?: boolean;\n /**\n * End date of the current period that the subscription has been invoiced for. At the end of this period, a new invoice will be created.\n */\n CurrentPeriodEnd?: string;\n /**\n * Start date of the current period that the subscription has been invoiced for.\n */\n CurrentPeriodStart?: string;\n Status?: BillingSubscriptionCreate.Status;\n /**\n * Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.\n */\n BillingCycleAnchor?: string;\n CollectionMethod?: BillingSubscriptionCreate.CollectionMethod;\n IsLiveMode?: boolean;\n /**\n * Only set if the subscription contains a single plan.\n */\n PlanId?: string;\n /**\n * The quantity of the plan to which the customer is subscribed. For example, if your plan is $10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged $50 (5 x $10) monthly.\n * Only set if the subscription contains a single plan.\n */\n Quantity?: number;\n /**\n * Date when the subscription was first created. The date might differ from the created date due to backdating.\n */\n StartDate?: string;\n /**\n * If the subscription has a trial, the end of that trial.\n */\n TrialEnd?: string;\n /**\n * If the subscription has a trial, the beginning of that trial.\n */\n TrialStart?: string;\n};\n\nexport namespace BillingSubscriptionCreate {\n export enum Status {\n ILLEGAL = 'Illegal',\n INCOMPLETE = 'Incomplete',\n INCOMPLETE_EXPIRED = 'Incomplete_expired',\n TRIALING = 'Trialing',\n ACTIVE = 'Active',\n PAST_DUE = 'Past_due',\n CANCELED = 'Canceled',\n UNPAID = 'Unpaid',\n }\n\n export enum CollectionMethod {\n SEND_INVOICE = 'SendInvoice',\n CHARGE_AUTOMATICALLY = 'ChargeAutomatically',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties of the billing subscription details.\n */\nexport type BillingSubscriptionDetails = {\n SubscriptionId?: string;\n EnterpriseId?: number;\n /**\n * If the subscription has been canceled with the at_period_end flag set to true, cancel_at_period_end on the subscription will be true. You can use this attribute to determine whether a subscription that has a status of active is scheduled to be canceled at the end of the current period.\n */\n CancelAtPeriodEnd?: boolean;\n /**\n * End date of the current period that the subscription has been invoiced for. At the end of this period, a new invoice will be created.\n */\n CurrentPeriodEnd?: string;\n /**\n * Start date of the current period that the subscription has been invoiced for.\n */\n CurrentPeriodStart?: string;\n Status?: BillingSubscriptionDetails.Status;\n /**\n * Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.\n */\n BillingCycleAnchor?: string;\n /**\n * A date in the future at which the subscription will automatically get canceled\n */\n CancelAt?: string;\n /**\n * If the subscription has been canceled, the date of that cancellation. If the subscription was canceled with cancel_at_period_end, canceled_at will still reflect the date of the initial cancellation request, not the end of the subscription period when the subscription is automatically moved to a canceled state.\n */\n CancelledAt?: string;\n CollectionMethod?: BillingSubscriptionDetails.CollectionMethod;\n DaysUntilDue?: number;\n /**\n * If the subscription has ended, the date the subscription ended.\n */\n EndedAt?: string;\n IsLiveMode?: boolean;\n /**\n * Only set if the subscription contains a single plan.\n */\n PlanId?: string;\n /**\n * The quantity of the plan to which the customer is subscribed. For example, if your plan is $10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged $50 (5 x $10) monthly.\n * Only set if the subscription contains a single plan.\n */\n Quantity?: number;\n /**\n * Date when the subscription was first created. The date might differ from the created date due to backdating.\n */\n StartDate?: string;\n /**\n * If the subscription has a trial, the end of that trial.\n */\n TrialEnd?: string;\n /**\n * If the subscription has a trial, the beginning of that trial.\n */\n TrialStart?: string;\n CreatedTimestampUtc?: string;\n};\n\nexport namespace BillingSubscriptionDetails {\n export enum Status {\n ILLEGAL = 'Illegal',\n INCOMPLETE = 'Incomplete',\n INCOMPLETE_EXPIRED = 'Incomplete_expired',\n TRIALING = 'Trialing',\n ACTIVE = 'Active',\n PAST_DUE = 'Past_due',\n CANCELED = 'Canceled',\n UNPAID = 'Unpaid',\n }\n\n export enum CollectionMethod {\n SEND_INVOICE = 'SendInvoice',\n CHARGE_AUTOMATICALLY = 'ChargeAutomatically',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the Table of Content item properties\n */\nexport type DocToCItem = {\n /**\n * Identifies the Table of Content item.\n */\n TocItemId?: string;\n /**\n * The item's title.\n */\n Title?: string;\n /**\n * Identifies the order in the list.\n */\n Order?: number;\n /**\n * Identifies the related topic\n */\n TopicId?: string;\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocToCItem.TopicType;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n /**\n * Available translations\n */\n TranslationCultures?: Array;\n /**\n * Collection of Table of Content (sub)items\n */\n Items?: Array;\n};\n\nexport namespace DocToCItem {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a Table of Content item.\n */\nexport type DocToCItemCreate = {\n /**\n * The title and body's culture.\n */\n Culture: string;\n /**\n * The item's title.\n */\n Title: string;\n /**\n * Identifies the order in the list.\n */\n Order?: number;\n /**\n * Identifies the related topic\n */\n TopicId: string;\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocToCItemCreate.TopicType;\n /**\n * Optional, the parent Table of Content item.\n */\n ParentTocItemId?: string;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n};\n\nexport namespace DocToCItemCreate {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to update a Table of Content item.\n */\nexport type DocToCItemSettings = {\n /**\n * The title and body's culture.\n */\n Culture?: string;\n /**\n * The item's title.\n */\n Title?: string;\n /**\n * Identifies the order in the list.\n */\n Order?: number;\n /**\n * Identifies the related topic\n */\n TopicId?: string;\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocToCItemSettings.TopicType;\n /**\n * Optional, the parent Table of Content item.\n */\n ParentTocItemId?: string;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n};\n\nexport namespace DocToCItemSettings {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the Topic's properties.\n */\nexport type DocTopic = {\n /**\n * The item's body\n */\n Body?: string;\n /**\n * Available translations.\n */\n TranslationCultures?: Array;\n /**\n * Identifies the related topic\n */\n TopicId?: string;\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocTopic.TopicType;\n /**\n * The topic's order in the topic list\n */\n Order?: number;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n /**\n * External reference.\n */\n Reference?: string;\n /**\n * Title's culture.\n */\n Culture?: string;\n /**\n * The item's title.\n */\n Title?: string;\n};\n\nexport namespace DocTopic {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a documentation topic.\n */\nexport type DocTopicCreate = {\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocTopicCreate.TopicType;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n /**\n * External reference.\n */\n Reference?: string;\n /**\n * The title and body's culture.\n */\n Culture: string;\n /**\n * Identifies the order in the list.\n */\n Order?: number;\n /**\n * The item's title.\n */\n Title: string;\n /**\n * The item's body\n */\n Body?: string;\n};\n\nexport namespace DocTopicCreate {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the Topic's info properties.\n */\nexport type DocTopicInfo = {\n /**\n * Available translations.\n */\n TranslationCultures?: Array;\n /**\n * Identifies the related topic\n */\n TopicId?: string;\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocTopicInfo.TopicType;\n /**\n * The topic's order in the topic list\n */\n Order?: number;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n /**\n * External reference.\n */\n Reference?: string;\n /**\n * Title's culture.\n */\n Culture?: string;\n /**\n * The item's title.\n */\n Title?: string;\n};\n\nexport namespace DocTopicInfo {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to update a documentation topic.\n */\nexport type DocTopicSettings = {\n /**\n * Identifies the content type of the related topic.\n */\n TopicType?: DocTopicSettings.TopicType;\n /**\n * Identifies the target audience.\n */\n Audience?: string;\n /**\n * External reference.\n */\n Reference?: string;\n /**\n * The title and body's culture.\n */\n Culture?: string;\n /**\n * Identifies the order in the list.\n */\n Order?: number;\n /**\n * The item's title.\n */\n Title?: string;\n /**\n * The item's body\n */\n Body?: string;\n};\n\nexport namespace DocTopicSettings {\n /**\n * Identifies the content type of the related topic.\n */\n export enum TopicType {\n CONCEPT = 'Concept',\n TASK = 'Task',\n REFERENCE = 'Reference',\n GLOSSARY = 'Glossary',\n TROUBLESHOOTING = 'Troubleshooting',\n FAQ = 'Faq',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { FmsProperty } from './FmsProperty';\nimport type { TimeZoneMapping } from './TimeZoneMapping';\n\nexport type FmsConfiguration = {\n PCellId?: string;\n PCellName?: string;\n PCellType?: string;\n ProductId?: number;\n ProductVersion?: string;\n EnterpriseId?: number;\n EnterpriseName?: string;\n PlatformType?: FmsConfiguration.PlatformType;\n SiteId?: string;\n AreaId?: string;\n PcsId?: string;\n Pid?: string;\n Latitude?: number;\n Longitude?: number;\n Elevation?: number;\n /**\n * The url of the dataserver for this configuration.\n */\n DataServer?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n Address?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n ZipCode?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n City?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n State?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n Country?: string;\n /**\n * The UTC timestamp when the configuration record has been created.\n */\n CreatedTimestampUTC?: string;\n /**\n * Indicates if the location is marked as deleted\n */\n IsDeleted?: boolean;\n /**\n * If marked as deleted, the UTC timestamp the location has been marked.\n */\n DeletedTimestampUtc?: string;\n TimeZoneInfo?: TimeZoneMapping;\n Properties?: Array;\n};\n\nexport namespace FmsConfiguration {\n export enum PlatformType {\n CLOUD = 'Cloud',\n CLOUD_EXTERNAL = 'CloudExternal',\n CLOUD_LOCAL = 'CloudLocal',\n LOCAL = 'Local',\n LOCAL_NETWORK = 'LocalNetwork',\n LOCAL_EXTERNAL = 'LocalExternal',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { FmsProperty } from './FmsProperty';\n\n/**\n * Configuration properties to create a new configuration\n */\nexport type FmsConfigurationCreate = {\n /**\n * Name of the system.\n */\n PCellName: string;\n /**\n * The Process Cell type id.\n * For the Paskal Plant Monitor system the value must be \"urn:fms:pcs:pc:pms\"\n */\n PCellType: string;\n /**\n * A site is defined as a part of the enterprise identified by a physical, geographical or logical location.\n * Normally only large enterprises can have multiple sites\n */\n SiteName: string;\n /**\n * An area is defined as a part of a site identified by a physical, geographical or logical location.\n * Normally only large sites can have multiple sites\n */\n AreaName: string;\n Latitude: number;\n Longitude: number;\n Elevation: number;\n UnitsSystem?: FmsConfigurationCreate.UnitsSystem;\n /**\n * The url of the dataserver for this configuration.\n */\n DataServer: string;\n /**\n * The windows time zone identifier that will be used for this configuration.\n */\n WindowsTimeZone: string;\n /**\n * Optional, the configuration's product version.\n */\n ProductVersion: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n Address?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n ZipCode?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n City?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n State?: string;\n /**\n * Optional. If not required, set the value to null or empty.\n */\n Country?: string;\n Properties?: Array;\n};\n\nexport namespace FmsConfigurationCreate {\n export enum UnitsSystem {\n SI = 'SI',\n BI = 'BI',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { FmsProperty } from './FmsProperty';\n\n/**\n * The enterprise details.\n */\nexport type FmsEnterpriseDetails = {\n /**\n * Kind of enterprise. Possible values are: Distributor, Dealer, Customer\n */\n EnterpriseKind?: FmsEnterpriseDetails.EnterpriseKind;\n /**\n * Dealer identifier.\n * When the enterprise kind is 'Customer': the dealer id identifies the customer's dealer.\n * When the enterprise kind is 'Dealer': the enterprise is a dealer identified by the dealer id.\n * When the enterprise kind is 'Distributor': the dealer id is null.\n */\n DealerId?: string;\n /**\n * Distributor identfier.\n * When the enterprise kind is 'Customer': the distributor id is null.\n * When the enterprise kind is 'Dealer': the distributor id identifies the dealer's distributor.\n * When the enterprise kind is 'Distributor': the enterprise is a distributor identified by the distributor id.\n */\n DistributorId?: string;\n /**\n * The UTC timestamp when the enterprise record has been created.\n */\n CreatedTimestampUTC?: string;\n /**\n * The user id to use for billing purposes.\n */\n BillingUserId?: string;\n /**\n * The user name to use for billing purposes\n */\n BillingUserName?: string;\n /**\n * Enterprise's contact first name.\n */\n ContactFirstName?: string;\n /**\n * Enterprise's contact last name.\n */\n ContactLastName?: string;\n /**\n * Enterprise's contact user id.\n */\n ContactUserId?: string;\n Properties?: Array;\n /**\n * Enterprise id.\n */\n EnterpriseId?: string;\n /**\n * Enterprise's name.\n */\n Name?: string;\n /**\n * Enterprise's address.\n * ///\n */\n Address?: string;\n /**\n * Enterprise's zipcode.\n */\n ZipCode?: string;\n /**\n * Enterprise's city.\n */\n City?: string;\n /**\n * Enterprise's state.\n */\n State?: string;\n /**\n * Enterprise's country.\n */\n Country?: string;\n /**\n * Optional, \"ISO 3166-1 alpha-3\" country code.\n */\n CountryCode?: string;\n /**\n * Enterprise's email.\n */\n Email?: string;\n /**\n * Enterprise's phone number.\n */\n PhoneNumber?: string;\n /**\n * Enterprise's website url.\n */\n Website?: string;\n /**\n * Enterprise's reference.\n */\n Reference?: string;\n /**\n * Enterprise's latitude.\n */\n Latitude?: number;\n /**\n * Enterprise's longitude.\n */\n Longitude?: number;\n};\n\nexport namespace FmsEnterpriseDetails {\n /**\n * Kind of enterprise. Possible values are: Distributor, Dealer, Customer\n */\n export enum EnterpriseKind {\n DISTRIBUTOR = 'Distributor',\n DEALER = 'Dealer',\n CUSTOMER = 'Customer',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the enterprise's identifiers.\n */\nexport type FmsEnterpriseIdentifiers = {\n /**\n * Enterprise id.\n */\n EnterpriseId?: string;\n /**\n * Enterprise's name.\n */\n EnterpriseName?: string;\n /**\n * Kind of enterprise. Possible values are: Distributor, Dealer, Customer\n */\n EnterpriseKind?: FmsEnterpriseIdentifiers.EnterpriseKind;\n /**\n * Dealer identifier.\n * When the enterprise kind is 'Customer': the dealer id identifies the customer's dealer.\n * When the enterprise kind is 'Dealer': the enterprise is a dealer identified by the dealer id.\n * When the enterprise kind is 'Distributor': the dealer id is null.\n */\n DealerId?: string;\n /**\n * Dealer's name.\n */\n DealerName?: string;\n /**\n * Distributor identfier.\n * When the enterprise kind is 'Customer': the distributor id identifies the dealer's distributor.\n * When the enterprise kind is 'Dealer': the distributor id identifies the dealer's distributor.\n * When the enterprise kind is 'Distributor': the enterprise is a distributor identified by the distributor id.\n */\n DistributorId?: string;\n /**\n * Distributor's name.\n */\n DistirbutorName?: string;\n};\n\nexport namespace FmsEnterpriseIdentifiers {\n /**\n * Kind of enterprise. Possible values are: Distributor, Dealer, Customer\n */\n export enum EnterpriseKind {\n DISTRIBUTOR = 'Distributor',\n DEALER = 'Dealer',\n CUSTOMER = 'Customer',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type FmsProperty = {\n PropertyName?: string;\n DataType?: FmsProperty.DataType;\n};\n\nexport namespace FmsProperty {\n export enum DataType {\n NUMBER = 'Number',\n STRING = 'String',\n BOOL = 'Bool',\n DATE_TIME = 'DateTime',\n BLOB = 'Blob',\n LONG = 'Long',\n CURVE = 'Curve',\n TIME_SPAN = 'TimeSpan',\n BIT_MATRIX = 'BitMatrix',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to send an action link\n */\nexport type FmsUserAction = {\n /**\n * User id, User name or email address.\n * When using an email address and the platform is not configured to use unique email addresses, the first occurence will be used.\n */\n UserId: string;\n /**\n * Type of channel to communicate the action to the user. Possible values are: email, sms.\n */\n ChannelType?: FmsUserAction.ChannelType;\n /**\n * The subject to be used when sending a message. If the subject can be used depends if the channel supports a subject.\n */\n Subject: string;\n /**\n * The body to be used when sending a message. The tag {callbackUrl} will be replaced with the callbackUrl\n * Example: \"Please confirm your acount by clicking here\"\n * For legacy EndPoints:\n * The body to be used when sending a message. Parameter 0 is the callbackUrl\n * Example: \"Please confirm your acount by clicking here\"\n */\n Body: string;\n /**\n * Callback format string to receive the code. The tag {code} will be replaced with the code.\n * Example: \"https://myapp.azurewebsites.net/account/confirmemail?code={code}\"\n * For legacy EndPoints:\n * Callback format string to receive the confimation code. Parameter 0 is userId, parameter 1 is confirmation code.\n * Example: \"https://myapp.azurewebsites.net/account/confirmemail?id={0}&code={1}\"\n */\n CallbackUrlFormatString: string;\n};\n\nexport namespace FmsUserAction {\n /**\n * Type of channel to communicate the action to the user. Possible values are: email, sms.\n */\n export enum ChannelType {\n EMAIL = 'email',\n SMS = 'sms',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the action properties.\n */\nexport type KpAction = {\n /**\n * Identifies the action.\n */\n ActionId?: number;\n /**\n * Identifies the location.\n */\n LocationId?: string;\n /**\n * The location's name.\n */\n LocationName?: string;\n /**\n * Identifies the department.\n */\n DepartmentId?: string;\n /**\n * The department's name.\n */\n DepartmentName?: string;\n /**\n * Timestamp the action was executed.\n */\n Timestamp?: string;\n /**\n * Name of the person who executed the action.\n */\n OperatorName?: string;\n /**\n * The type of action.\n */\n ActionKind?: KpAction.ActionKind;\n /**\n * Name of the action.\n */\n Action?: string;\n /**\n * The quantity.\n */\n Quantity?: number;\n /**\n * Optional, the unit quantity.\n */\n QuantityUnit?: KpAction.QuantityUnit;\n /**\n * Optional, the Volume used.\n */\n Volume?: number;\n /**\n * Optional, the volume unit.\n */\n VolumeUnit?: KpAction.VolumeUnit;\n /**\n * Optional, the Area unit.\n */\n AreaUnit?: KpAction.AreaUnit;\n /**\n * Optional, the department coverage (full, section).\n */\n DepartmentCoverage?: KpAction.DepartmentCoverage;\n /**\n * Optional, the department coverage quantity (e.g. 700)\n */\n CoverageQuantity?: number;\n /**\n * Optional, the department coverage unit (e.g. m2)\n */\n CoverageUnit?: KpAction.CoverageUnit;\n /**\n * Optional, application method (spraying, etc.)\n */\n ApplicationMethod?: KpAction.ApplicationMethod;\n /**\n * Optional, spray volume\n */\n SprayVolume?: number;\n /**\n * Optional, spray unit (e.g. liter)\n */\n SprayUnit?: KpAction.SprayUnit;\n /**\n * Pre harvest interval (PHI). The preharvest interval (PHI) is the wait time between a pesticide application and when a crop can be harvested.\n */\n Phi?: number;\n /**\n * Restricted Entry Interval (REI). The period of time after a field is treated\n * with a pesticide during which restrictions on entry are in effect to protect\n * persons from potential exposure to hazardous levels of pesticide residues.\n */\n Rei?: number;\n /**\n * Optional, position\n */\n Position?: string;\n /**\n * Optional note.\n */\n Note?: string;\n /**\n * List of effected scout template record ids.\n */\n EffectedTemplateRecords?: Array;\n /**\n * Optional, the equipment used.\n */\n Equipment?: string;\n};\n\nexport namespace KpAction {\n /**\n * The type of action.\n */\n export enum ActionKind {\n UNDEFINED = 'Undefined',\n BIOLOGICAL = 'Biological',\n CHEMICAL = 'Chemical',\n CULTURAL = 'Cultural',\n CROP_STAGE = 'CropStage',\n }\n\n /**\n * Optional, the unit quantity.\n */\n export enum QuantityUnit {\n GAL_US = 'galUs',\n G = 'g',\n KG = 'kg',\n L = 'l',\n LBS = 'lbs',\n ML = 'ml',\n OZ = 'oz',\n UNITS = 'units',\n SACHETS = 'sachets',\n }\n\n /**\n * Optional, the volume unit.\n */\n export enum VolumeUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n\n /**\n * Optional, the Area unit.\n */\n export enum AreaUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n /**\n * Optional, the department coverage (full, section).\n */\n export enum DepartmentCoverage {\n FULL = 'Full',\n SECTION = 'Section',\n }\n\n /**\n * Optional, the department coverage unit (e.g. m2)\n */\n export enum CoverageUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n /**\n * Optional, application method (spraying, etc.)\n */\n export enum ApplicationMethod {\n SPRAYING = 'Spraying',\n DRENCHING = 'Drenching',\n FOGGING = 'Fogging',\n DUSTING = 'Dusting',\n }\n\n /**\n * Optional, spray unit (e.g. liter)\n */\n export enum SprayUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to creat a action.\n */\nexport type KpActionCreate = {\n /**\n * Timestamp the action was executed.\n */\n Timestamp?: string;\n /**\n * Name of the person who executed the action.\n */\n OperatorName?: string;\n /**\n * The type of action.\n */\n ActionKind?: KpActionCreate.ActionKind;\n /**\n * Name of the action.\n */\n Action: string;\n /**\n * The quantity.\n */\n Quantity?: number;\n /**\n * Optional, the unit quantity.\n */\n QuantityUnit?: KpActionCreate.QuantityUnit;\n /**\n * Optional, the Volume used.\n */\n Volume?: number;\n /**\n * Optional, the volume unit.\n */\n VolumeUnit?: KpActionCreate.VolumeUnit;\n /**\n * Optional, the Area unit.\n */\n AreaUnit?: KpActionCreate.AreaUnit;\n /**\n * Optional, the department coverage (full, section).\n */\n DepartmentCoverage?: KpActionCreate.DepartmentCoverage;\n /**\n * Optional, the department coverage quantity (e.g. 700)\n */\n CoverageQuantity?: number;\n /**\n * Optional, the department coverage unit (e.g. m2)\n */\n CoverageUnit?: KpActionCreate.CoverageUnit;\n /**\n * Optional, application method (spraying, etc.)\n */\n ApplicationMethod?: KpActionCreate.ApplicationMethod;\n /**\n * Optional, spray volume\n */\n SprayVolume?: number;\n /**\n * Optional, spray unit (e.g. liter)\n */\n SprayUnit?: KpActionCreate.SprayUnit;\n /**\n * Pre harvest interval (PHI). The preharvest interval (PHI) is the wait time between a pesticide application and when a crop can be harvested.\n */\n Phi?: number;\n /**\n * Restricted Entry Interval (REI). The period of time after a field is treated\n * with a pesticide during which restrictions on entry are in effect to protect\n * persons from potential exposure to hazardous levels of pesticide residues.\n */\n Rei?: number;\n /**\n * Optional, position\n */\n Position?: string;\n /**\n * Optional note.\n */\n Note?: string;\n /**\n * List of effected scout template record ids.\n */\n EffectedTemplateRecords?: Array;\n /**\n * Optional, the equipment used.\n */\n Equipment?: string;\n};\n\nexport namespace KpActionCreate {\n /**\n * The type of action.\n */\n export enum ActionKind {\n UNDEFINED = 'Undefined',\n BIOLOGICAL = 'Biological',\n CHEMICAL = 'Chemical',\n CULTURAL = 'Cultural',\n CROP_STAGE = 'CropStage',\n }\n\n /**\n * Optional, the unit quantity.\n */\n export enum QuantityUnit {\n GAL_US = 'galUs',\n G = 'g',\n KG = 'kg',\n L = 'l',\n LBS = 'lbs',\n ML = 'ml',\n OZ = 'oz',\n UNITS = 'units',\n SACHETS = 'sachets',\n }\n\n /**\n * Optional, the volume unit.\n */\n export enum VolumeUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n\n /**\n * Optional, the Area unit.\n */\n export enum AreaUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n /**\n * Optional, the department coverage (full, section).\n */\n export enum DepartmentCoverage {\n FULL = 'Full',\n SECTION = 'Section',\n }\n\n /**\n * Optional, the department coverage unit (e.g. m2)\n */\n export enum CoverageUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n /**\n * Optional, application method (spraying, etc.)\n */\n export enum ApplicationMethod {\n SPRAYING = 'Spraying',\n DRENCHING = 'Drenching',\n FOGGING = 'Fogging',\n DUSTING = 'Dusting',\n }\n\n /**\n * Optional, spray unit (e.g. liter)\n */\n export enum SprayUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the action properties that can be changed.\n */\nexport type KpActionSettings = {\n Timestamp?: string;\n OperatorName?: string;\n Action?: string;\n Quantity?: number;\n QuantityUnit?: KpActionSettings.QuantityUnit;\n Volume?: number;\n VolumeUnit?: KpActionSettings.VolumeUnit;\n AreaUnit?: KpActionSettings.AreaUnit;\n DepartmentCoverage?: KpActionSettings.DepartmentCoverage;\n CoverageQuantity?: number;\n CoverageUnit?: KpActionSettings.CoverageUnit;\n ApplicationMethod?: KpActionSettings.ApplicationMethod;\n SprayVolume?: number;\n SprayUnit?: KpActionSettings.SprayUnit;\n Phi?: number;\n Rei?: number;\n Position?: string;\n Note?: string;\n EffectedTemplateRecords?: Array;\n Equipment?: string;\n};\n\nexport namespace KpActionSettings {\n export enum QuantityUnit {\n GAL_US = 'galUs',\n G = 'g',\n KG = 'kg',\n L = 'l',\n LBS = 'lbs',\n ML = 'ml',\n OZ = 'oz',\n UNITS = 'units',\n SACHETS = 'sachets',\n }\n\n export enum VolumeUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n\n export enum AreaUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n export enum DepartmentCoverage {\n FULL = 'Full',\n SECTION = 'Section',\n }\n\n export enum CoverageUnit {\n HA = 'ha',\n ACRE = 'acre',\n M2 = 'm2',\n FT2 = 'ft2',\n }\n\n export enum ApplicationMethod {\n SPRAYING = 'Spraying',\n DRENCHING = 'Drenching',\n FOGGING = 'Fogging',\n DUSTING = 'Dusting',\n }\n\n export enum SprayUnit {\n L = 'l',\n GAL_US = 'galUS',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpAlert = {\n AlertId?: number;\n EnterpriseId?: number;\n EnterpriseName?: string;\n LocationId?: string;\n LocationName?: string;\n DepartmentId?: string;\n DepartmentName?: string;\n Timestamp?: string;\n IsActive?: boolean;\n /**\n * The Scout Template identifier.\n */\n ScoutTemplateId?: string;\n ScoutTemplRecId?: number;\n ScoutTemplRecName?: string;\n /**\n * Marks the record as being the Species Pluralis (spp)\n */\n IsSpp?: boolean;\n /**\n * The insect life cycle stage for scouting.\n */\n Stage?: KpAlert.Stage;\n /**\n * Color to represent the record.\n */\n ScoutTemplRecColor?: string;\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n ScoutTemplRecObservationKind?: KpAlert.ScoutTemplRecObservationKind;\n ScoutRefId?: number;\n /**\n * Optional, the global scout reference family identifier\n */\n ScoutRefFamilyId?: number;\n /**\n * Optional, the global scout reference family thing identifier / translation key.\n */\n ScoutRefFamilyThingId?: string;\n AlertKind?: KpAlert.AlertKind;\n Threshold?: number;\n AlertValue?: number;\n Week?: number;\n};\n\nexport namespace KpAlert {\n /**\n * The insect life cycle stage for scouting.\n */\n export enum Stage {\n UNDEFINED = 'undefined',\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n }\n\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n export enum ScoutTemplRecObservationKind {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n\n export enum AlertKind {\n THRESHOLD_LOW = 'ThresholdLow',\n THRESHOLD_HIGH = 'ThresholdHigh',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpAlertCreate = {\n Timestamp?: string;\n IsActive?: boolean;\n ScoutTemplRecId?: number;\n ScoutRefId?: number;\n AlertKind?: KpAlertCreate.AlertKind;\n Threshold?: number;\n AlertValue?: number;\n};\n\nexport namespace KpAlertCreate {\n export enum AlertKind {\n THRESHOLD_LOW = 'ThresholdLow',\n THRESHOLD_HIGH = 'ThresholdHigh',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpAlertSettings = {\n Timestamp?: string;\n IsActive?: boolean;\n ScoutTemplRecId?: number;\n ScoutRefId?: number;\n AlertKind?: KpAlertSettings.AlertKind;\n Threshold?: number;\n AlertValue?: number;\n};\n\nexport namespace KpAlertSettings {\n export enum AlertKind {\n THRESHOLD_LOW = 'ThresholdLow',\n THRESHOLD_HIGH = 'ThresholdHigh',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDepartment = {\n DepartmentId?: string;\n Name?: string;\n LocationId?: string;\n DepartmentKind?: KpDepartment.DepartmentKind;\n AreaGross?: number;\n AreaNet?: number;\n Latitude?: number;\n Longitude?: number;\n /**\n * If connected, the scout template id.\n */\n ScoutTemplateId?: string;\n /**\n * If connected, the crop template id.\n */\n CropTemplateId?: string;\n /**\n * Optional, the crop variety.\n */\n CropVariety?: string;\n};\n\nexport namespace KpDepartment {\n export enum DepartmentKind {\n INDOOR = 'Indoor',\n OUTDOOR = 'Outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDepartmentCreate = {\n EnterpriseId?: number;\n Name: string;\n DepartmentKind?: KpDepartmentCreate.DepartmentKind;\n AreaGross?: number;\n AreaNet?: number;\n Latitude?: number;\n Longitude?: number;\n LatitudeMin?: number;\n LatitudeMax?: number;\n LongitudeMin?: number;\n LongitudeMax?: number;\n /**\n * If connected, the scout template id.\n */\n ScoutTemplateId?: string;\n /**\n * If connected, the crop template id.\n */\n CropTemplateId?: string;\n /**\n * Optional, the crop variety.\n */\n CropVariety?: string;\n /**\n * Optional, number of card positions in the department.\n */\n NumCardPositions?: number;\n /**\n * Optional, the date the number of card position has been changed.\n */\n NumCardPositionsDate?: string;\n LayoutContentType: string;\n LayoutContentEncoding?: string;\n Layout?: string;\n};\n\nexport namespace KpDepartmentCreate {\n export enum DepartmentKind {\n INDOOR = 'Indoor',\n OUTDOOR = 'Outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDepartmentDetails = {\n LatitudeMin?: number;\n LatitudeMax?: number;\n LongitudeMin?: number;\n LongitudeMax?: number;\n LayoutContentType?: string;\n LayoutContentEncoding?: string;\n Layout?: string;\n /**\n * Optional, number of card positions in the department.\n */\n NumCardPositions?: number;\n /**\n * Optional, the date the number of card position has been changed.\n */\n NumCardPositionsDate?: string;\n UpdatedTimestampUtc?: string;\n UpdatedCounter?: number;\n HasObservations?: boolean;\n HasObservationsUpdateTimestamp?: string;\n HasActions?: boolean;\n HasActionsUpdateTimestamp?: string;\n HasAlerts?: boolean;\n HasAlertsUpdateTimestamp?: string;\n /**\n * Indicates if the location is marked as deleted\n */\n IsDeleted?: boolean;\n /**\n * If marked as deleted, the UTC timestamp the location has been marked.\n */\n DeletedTimestampUtc?: string;\n CreatedTimestampUtc?: string;\n DepartmentId?: string;\n Name?: string;\n LocationId?: string;\n DepartmentKind?: KpDepartmentDetails.DepartmentKind;\n AreaGross?: number;\n AreaNet?: number;\n Latitude?: number;\n Longitude?: number;\n /**\n * If connected, the scout template id.\n */\n ScoutTemplateId?: string;\n /**\n * If connected, the crop template id.\n */\n CropTemplateId?: string;\n /**\n * Optional, the crop variety.\n */\n CropVariety?: string;\n};\n\nexport namespace KpDepartmentDetails {\n export enum DepartmentKind {\n INDOOR = 'Indoor',\n OUTDOOR = 'Outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDepartmentSettings = {\n Name?: string;\n DepartmentKind?: KpDepartmentSettings.DepartmentKind;\n AreaGross?: number;\n AreaNet?: number;\n Latitude?: number;\n Longitude?: number;\n LatitudeMin?: number;\n LatitudeMax?: number;\n LongitudeMin?: number;\n LongitudeMax?: number;\n /**\n * If connected, the scout template id.\n */\n ScoutTemplateId?: string;\n /**\n * If connected, the crop template id.\n */\n CropTemplateId?: string;\n /**\n * Optional, the crop variety.\n */\n CropVariety?: string;\n /**\n * Optional, number of card positions in the department.\n */\n NumCardPositions?: number;\n /**\n * Optional, the date the number of card position has been changed.\n */\n NumCardPositionsDate?: string;\n LayoutContentType?: string;\n LayoutContentEncoding?: string;\n Layout?: string;\n};\n\nexport namespace KpDepartmentSettings {\n export enum DepartmentKind {\n INDOOR = 'Indoor',\n OUTDOOR = 'Outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDxCustomer = {\n EnterpriseId?: number;\n Name?: string;\n Country?: string;\n DxType?: KpDxCustomer.DxType;\n};\n\nexport namespace KpDxCustomer {\n export enum DxType {\n METOS = 'Metos',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpDxCustomerCreate = {\n Name?: string;\n Country?: string;\n DxType?: KpDxCustomerCreate.DxType;\n};\n\nexport namespace KpDxCustomerCreate {\n export enum DxType {\n METOS = 'Metos',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { KpPosition } from './KpPosition';\n\nexport type KpObservation = {\n ObsId?: number;\n ScoutTripId?: string;\n /**\n * Scout Template record id.\n */\n recId?: number;\n position?: KpPosition;\n id?: string;\n category?: KpObservation.category;\n name?: string;\n observationType?: KpObservation.observationType;\n value?: string;\n date?: string;\n photoId?: string;\n text?: string;\n notifyMyConsultant?: boolean;\n cardId?: string;\n isCardReplaced?: boolean;\n};\n\nexport namespace KpObservation {\n export enum category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n\n export enum observationType {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { KpPosition } from './KpPosition';\n\nexport type KpObservationCreate = {\n position?: KpPosition;\n id?: string;\n /**\n * The sample id the observation belongs to.\n */\n sampleId?: string;\n /**\n * Scout Template record id.\n */\n recId?: number;\n category?: KpObservationCreate.category;\n observationType?: KpObservationCreate.observationType;\n value?: string;\n date?: string;\n photoId?: string;\n text?: string;\n notifyMyConsultant?: boolean;\n cardId?: string;\n isCardReplaced?: boolean;\n};\n\nexport namespace KpObservationCreate {\n export enum category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n\n export enum observationType {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { KpAggregatedDatapoint } from './KpAggregatedDatapoint';\n\n/**\n * Defines the aggregated data for a specific scout template record.\n */\nexport type KpRecData = {\n /**\n * Uniquely identifies the scout template record.\n */\n ScoutTemplRecId?: number;\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n ObservationKind?: KpRecData.ObservationKind;\n /**\n * Collection of aggregated data points.\n */\n Datapoints?: Array;\n};\n\nexport namespace KpRecData {\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n export enum ObservationKind {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the Scout Data Import properties.\n */\nexport type KpScoutDataImport = {\n /**\n * Identifies the scout data import.\n */\n DataImportId?: string;\n /**\n * Identifies the location.\n */\n LocationId?: string;\n /**\n * The location's name.\n */\n LocationName?: string;\n /**\n * Identifies the department.\n */\n DepartmentId?: string;\n /**\n * The department's name.\n */\n DepartmentName?: string;\n /**\n * Timestamp of the scout data import.\n */\n Timestamp?: string;\n /**\n * Id of the user who created the data import.\n */\n UserId?: string;\n /**\n * Name of the user who created the data import.\n */\n UserName?: string;\n /**\n * The file name of the data import.\n */\n FileName?: string;\n /**\n * Url to retrieve the original import file.\n */\n FileUrl?: string;\n /**\n * Indicating if the data file has been processed successfully.\n */\n IsProcessed?: boolean;\n /**\n * Local timestamp the data import has completed.\n */\n ProcessedTimestamp?: string;\n /**\n * UTC timestamp the processing has completed.\n */\n ProcessedTimestampUtc?: string;\n /**\n * Indicates the status of the data import. Valid values are: Queued, Imported, Error\n */\n ImportStatus?: KpScoutDataImport.ImportStatus;\n /**\n * Processing duration of the file in milliseconds.\n */\n ProcessingDurationMs?: number;\n /**\n * In case of an error, describes the error code.\n */\n ErrorCode?: string;\n /**\n * In case of an error, describes the error or exception.\n */\n ImportMessage?: string;\n /**\n * UTC timstamp the data import record is created.\n */\n CreatedTimestampUtc?: string;\n};\n\nexport namespace KpScoutDataImport {\n /**\n * Indicates the status of the data import. Valid values are: Queued, Imported, Error\n */\n export enum ImportStatus {\n QUEUED = 'Queued',\n IMPORTED = 'Imported',\n ERROR = 'Error',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties of a Scout Reference.\n */\nexport type KpScoutReference = {\n /**\n * The global scout reference id.\n */\n ScoutRefId?: number;\n /**\n * Optional, the global scout reference family identifier\n */\n ScoutRefFamilyId?: number;\n /**\n * Optional, the global scout reference family thing identifier / translation key.\n */\n ScoutRefFamilyThingId?: string;\n /**\n * The base (latin) name.\n */\n Name?: string;\n /**\n * Optional unique URN string that identifies the reference.\n */\n ThingId?: string;\n /**\n * The category (pest, biological, etc) of the reference.\n */\n Category?: KpScoutReference.Category;\n /**\n * Default color to represent the reference.\n */\n Color?: string;\n /**\n * Optional, default threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Optional, default threshold level 2 value.\n */\n ThresholdL2?: number;\n /**\n * Optional, default threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Indicates if the observation is an automated one, i.e. through machine learning.\n */\n Automated?: boolean;\n /**\n * Indicates if there are any scout template records referencing this one.\n */\n IsInUse?: boolean;\n /**\n * Timestamp the IsInUse has been updated.\n */\n InUseUpdateTimestamp?: string;\n};\n\nexport namespace KpScoutReference {\n /**\n * The category (pest, biological, etc) of the reference.\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a scout reference.\n */\nexport type KpScoutReferenceCreate = {\n /**\n * Optional, the global reference id to use. If null, the next available number will be used.\n */\n ScoutRefId?: number;\n /**\n * Optional, a related scout reference family id.\n */\n ScoutRefFamilyId?: number;\n /**\n * The base (latin) name.\n */\n Name: string;\n /**\n * Optional unique URN string that identifies the reference.\n */\n ThingId: string;\n /**\n * The category (pest, biological, etc) of the reference.\n */\n Category?: KpScoutReferenceCreate.Category;\n /**\n * Default color to represent the reference.\n */\n Color?: string;\n /**\n * Optional, default threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Optional, default threshold level 2value.\n */\n ThresholdL2?: number;\n /**\n * Optional, default threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Indicates if the observation is an automated one, i.e. through machine learning.\n */\n Automated?: boolean;\n};\n\nexport namespace KpScoutReferenceCreate {\n /**\n * The category (pest, biological, etc) of the reference.\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the reference properties that can be changed.\n */\nexport type KpScoutReferenceSettings = {\n /**\n * Optional, a related scout reference family id.\n */\n ScoutRefFamilyId?: number;\n /**\n * The base (latin) name.\n */\n Name?: string;\n /**\n * Optional unique URN string that identifies the reference.\n */\n ThingId?: string;\n /**\n * The category (pest, biological, etc) of the reference.\n */\n Category?: KpScoutReferenceSettings.Category;\n /**\n * Default color to represent the reference.\n */\n Color?: string;\n /**\n * Optional, default threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Optional, default threshold level 2value.\n */\n ThresholdL2?: number;\n /**\n * Optional, default threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Indicates if the observation is an automated one, i.e. through machine learning.\n */\n Automated?: boolean;\n};\n\nexport namespace KpScoutReferenceSettings {\n /**\n * The category (pest, biological, etc) of the reference.\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties of a Scout Template Record.\n */\nexport type KpScoutTemplateRecord = {\n /**\n * Uniquely identifies the scout template record.\n */\n ScoutTemplRecId?: number;\n /**\n * The scout template identifier the record belongs to.\n */\n ScoutTemplateId?: string;\n /**\n * The global scout reference identifier.\n */\n ScoutRefId?: number;\n /**\n * Optional, the global scout reference family identifier\n */\n ScoutRefFamilyId?: number;\n /**\n * Optional, the global scout reference family thing identifier / translation key.\n */\n ScoutRefFamilyThingId?: string;\n /**\n * Marks the record as being the Species Pluralis (spp)\n */\n IsSpp?: boolean;\n /**\n * Name of the Scout Template Record.\n */\n Name?: string;\n /**\n * Optional, description\n */\n Description?: string;\n /**\n * Color to represent the record.\n */\n Color?: string;\n /**\n * Indicates if the record is enabled for scouting.\n */\n Enabled?: boolean;\n /**\n * The order of the record in scout template. Records with the same FormOrder are ordered by name.\n */\n FormOrder?: number;\n /**\n * Optional, related groups.\n */\n RelatedGroups?: string;\n /**\n * The insect life cycle stage for scouting.\n */\n Stage?: KpScoutTemplateRecord.Stage;\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n Category?: KpScoutTemplateRecord.Category;\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n ObservationKind?: KpScoutTemplateRecord.ObservationKind;\n /**\n * Optional field to store observation kind related options.\n */\n OptionsObservationKind?: string;\n /**\n * Optional, default threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Optional, default threshold level 2value.\n */\n ThresholdL2?: number;\n /**\n * Optional, default threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Optional, the icon type to use.\n */\n IconType?: string;\n /**\n * Indicates if there are any observation records recorded for this template record.\n */\n IsInUse?: boolean;\n /**\n * Timestamp the IsInUse has been updated.\n */\n InUseUpdateTimestamp?: string;\n};\n\nexport namespace KpScoutTemplateRecord {\n /**\n * The insect life cycle stage for scouting.\n */\n export enum Stage {\n UNDEFINED = 'undefined',\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n }\n\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n export enum ObservationKind {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the properties to create a scout template record.\n */\nexport type KpScoutTemplateRecordCreate = {\n /**\n * The global scout reference identifier.\n */\n ScoutRefId?: number;\n /**\n * Name of the Scout Template Record.\n */\n Name: string;\n /**\n * Optional, description\n */\n Description?: string;\n /**\n * Color to represent the record.\n */\n Color?: string;\n /**\n * Indicates if the record is enabled for scouting.\n */\n Enabled?: boolean;\n /**\n * The order of the record in scout template. Records with the same FormOrder are ordered by name.\n */\n FormOrder?: number;\n /**\n * Optional, related groups.\n */\n RelatedGroups?: string;\n /**\n * Marks the record as being the Species Pluralis (spp)\n */\n IsSpp?: boolean;\n /**\n * The insect life cycle stage for scouting.\n */\n Stage?: KpScoutTemplateRecordCreate.Stage;\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n Category?: KpScoutTemplateRecordCreate.Category;\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n ObservationKind?: KpScoutTemplateRecordCreate.ObservationKind;\n /**\n * Optional field to store observation kind related options.\n */\n OptionsObservationKind?: string;\n /**\n * Optional, threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Optional, threshold level 2value.\n */\n ThresholdL2?: number;\n /**\n * Optional, threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Optional, the icon type to use.\n */\n IconType?: string;\n};\n\nexport namespace KpScoutTemplateRecordCreate {\n /**\n * The insect life cycle stage for scouting.\n */\n export enum Stage {\n UNDEFINED = 'undefined',\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n }\n\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n export enum ObservationKind {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\n/**\n * Defines the scout template record properties that can be changed.\n */\nexport type KpScoutTemplateRecordSettings = {\n /**\n * The global scout reference identifier.\n */\n ScoutRefId?: number;\n /**\n * Name of the Scout Template Record.\n */\n Name?: string;\n /**\n * Description\n */\n Description?: string;\n /**\n * Color to represent the record.\n */\n Color?: string;\n /**\n * Indicates if the record is enabled for scouting.\n */\n Enabled?: boolean;\n /**\n * The order of the record in scout template. Records with the same FormOrder are ordered by name.\n */\n FormOrder?: number;\n /**\n * Optional, related groups.\n */\n RelatedGroups?: string;\n /**\n * Marks the record as being the Species Pluralis (spp)\n */\n IsSpp?: boolean;\n /**\n * The insect life cycle stage for scouting.\n */\n Stage?: KpScoutTemplateRecordSettings.Stage;\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n Category?: KpScoutTemplateRecordSettings.Category;\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n ObservationKind?: KpScoutTemplateRecordSettings.ObservationKind;\n /**\n * Optional field to store observation kind related options.\n */\n OptionsObservationKind?: string;\n /**\n * Threshold level 1 value.\n */\n ThresholdL1?: number;\n /**\n * Threshold level 2value.\n */\n ThresholdL2?: number;\n /**\n * Threshold level 3 value.\n */\n ThresholdL3?: number;\n /**\n * Optional, default gain threshold value.\n */\n GainThreshold?: number;\n /**\n * Optional, the icon type to use.\n */\n IconType?: string;\n};\n\nexport namespace KpScoutTemplateRecordSettings {\n /**\n * The insect life cycle stage for scouting.\n */\n export enum Stage {\n UNDEFINED = 'undefined',\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n }\n\n /**\n * Indicates the category. pest, biological, note, disease, benificial, pollination\n */\n export enum Category {\n UNKNOWN = 'unknown',\n PEST = 'pest',\n BIOLOGICAL = 'biological',\n NOTE = 'note',\n DISEASE = 'disease',\n BENEFICIAL = 'beneficial',\n POLLINATION = 'pollination',\n MARKER = 'marker',\n PHOTO = 'photo',\n NUTRIENT = 'nutrient',\n }\n\n /**\n * Indicates how the observation is recorded. absence, intensity, count, cardCount\n */\n export enum ObservationKind {\n NONE = 'none',\n ABSENCE = 'absence',\n INTENSITY = 'intensity',\n COUNT = 'count',\n CARD_COUNT = 'cardCount',\n ROW_MARKER = 'rowMarker',\n LOCATION_MARKER = 'locationMarker',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpScoutUserProperty = {\n Key?: KpScoutUserProperty.Key;\n Data?: string;\n};\n\nexport namespace KpScoutUserProperty {\n export enum Key {\n COMPARISON_SETTINGS = 'ComparisonSettings',\n ANALYSIS_SETTINGS = 'AnalysisSettings',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type KpUserPropertyCreate = {\n Key?: KpUserPropertyCreate.Key;\n Data?: string;\n};\n\nexport namespace KpUserPropertyCreate {\n export enum Key {\n COMPARISON_SETTINGS = 'ComparisonSettings',\n ANALYSIS_SETTINGS = 'AnalysisSettings',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpAction } from '../models/KpAction';\nimport type { KpActionCreate } from '../models/KpActionCreate';\nimport type { KpActions } from '../models/KpActions';\nimport type { KpActionSettings } from '../models/KpActionSettings';\nimport type { KpNames } from '../models/KpNames';\nimport type { KpSearchTerm } from '../models/KpSearchTerm';\nimport { request as __request } from '../core/request';\n\nexport class ActionsService {\n /**\n * Get a list of all actions of the specified enterprise. Required scope: apiActions\n * @param enterpriseId The enterprise identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForEnterprise(\n enterpriseId: number,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/actions`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all actions of the specified enterprise. Required scope: apiActions\n * @param enterpriseId The enterprise identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForEnterprise1(\n enterpriseId: number,\n start: string,\n end: string,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/actions/from/${start}/to/${end}`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all actions of the specified location. Required scope: apiActions\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForLocation(\n pcellId: string,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/actions`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all actions of the specified location. Required scope: apiActions\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForLocation1(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/actions/from/${start}/to/${end}`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all actions of the specified department. Required scope: apiActions\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForDepartmentId(\n pcellId: string,\n departmentId: string,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a action.\n * Required scope: apiActions.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async actionsPostCreateAction(\n pcellId: string,\n departmentId: string,\n value: KpActionCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all actions of the specified department. Required scope: apiActions\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param operatorName Optional, filter by operator name.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpActions OK\n * @throws ApiError\n */\n public static async actionsGetActionsForDepartmentId1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n operatorName?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions/from/${start}/to/${end}`,\n query: {\n sort: sort,\n operatorName: operatorName,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified action.\n * Required scope: apiActions\n * @param pcellId The location identifier.\n * @param departmentId\n * @param actionId\n * @returns KpAction OK\n * @throws ApiError\n */\n public static async actionsGetAction(pcellId: string, departmentId: string, actionId: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions/${actionId}`,\n });\n return result.body;\n }\n\n /**\n * Update action settings. Required scope: apiActions.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param actionId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async actionsUpdateAction(\n pcellId: string,\n departmentId: string,\n actionId: number,\n value: KpActionSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions/${actionId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified action.\n * Required scope: apiActions.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param actionId\n * @returns any OK\n * @throws ApiError\n */\n public static async actionsDeleteAction(pcellId: string, departmentId: string, actionId: number): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/actions/${actionId}`,\n });\n return result.body;\n }\n\n /**\n * Search for action names. Required scope: apiActions\n * @param pcellId The location identifier.\n * @param actionKind The action kind store to search.\n * @param search Search parameters.\n * @returns KpNames OK\n * @throws ApiError\n */\n public static async actionsSearchProductsByItemNames(\n pcellId: string,\n actionKind: 'Undefined' | 'Biological' | 'Chemical' | 'Cultural' | 'CropStage',\n search: KpSearchTerm,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/actions/search/names/${actionKind}`,\n body: search,\n });\n return result.body;\n }\n\n /**\n * Search for action names for an Enterprise. Required scope: apiActions\n * @param enterpriseId The enterprise identifier.\n * @param actionKind The action kind store to search.\n * @param search Search parameters.\n * @returns KpNames OK\n * @throws ApiError\n */\n public static async actionsSearchProductsItemNamesByEnterprise(\n enterpriseId: number,\n actionKind: 'Undefined' | 'Biological' | 'Chemical' | 'Cultural' | 'CropStage',\n search: KpSearchTerm,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/enterprises/${enterpriseId}/actions/search/names/${actionKind}`,\n body: search,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpAlert } from '../models/KpAlert';\nimport type { KpAlertCreate } from '../models/KpAlertCreate';\nimport type { KpAlerts } from '../models/KpAlerts';\nimport type { KpAlertSettings } from '../models/KpAlertSettings';\nimport { request as __request } from '../core/request';\n\nexport class AlertsService {\n /**\n * Get a list of all alerts of the specified enterprise. Required scope: apiAlerts\n * @param enterpriseId The enterprise identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForEnterprise(\n enterpriseId: number,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/alerts`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all alerts of the specified enterprise. Required scope: apiAlerts\n * @param enterpriseId The enterprise identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForLocation(\n enterpriseId: number,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/alerts/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all alerts of the specified location. Required scope: apiAlerts\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForLocation1(\n pcellId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/alerts`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all alerts of the specified location. Required scope: apiAlerts\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForLocation2(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/alerts/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all alerts of the specified department. Required scope: apiAlerts\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForDepartmentId(\n pcellId: string,\n departmentId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a alert.\n * Required scope: apiAlerts.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async alertsPostCreateAlert(pcellId: string, departmentId: string, value: KpAlertCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all alerts of the specified department. Required scope: apiAlerts\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpAlerts OK\n * @throws ApiError\n */\n public static async alertsGetAlertsForDepartmentId1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified alert.\n * Required scope: apiAlerts\n * @param pcellId The location identifier.\n * @param departmentId\n * @param alertId\n * @returns KpAlert OK\n * @throws ApiError\n */\n public static async alertsGetAlert(pcellId: string, departmentId: string, alertId: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts/${alertId}`,\n });\n return result.body;\n }\n\n /**\n * Update alert settings. Required scope: apiAlerts.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param alertId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async alertsUpdateAlert(\n pcellId: string,\n departmentId: string,\n alertId: number,\n value: KpAlertSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts/${alertId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified alert.\n * Required scope: apiAlerts.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param alertId\n * @returns any OK\n * @throws ApiError\n */\n public static async alertsDeleteAlert(pcellId: string, departmentId: string, alertId: number): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/alerts/${alertId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpBioProduct } from '../models/KpBioProduct';\nimport type { KpBioProductCreate } from '../models/KpBioProductCreate';\nimport type { KpBioProducts } from '../models/KpBioProducts';\nimport type { KpBioProductSettings } from '../models/KpBioProductSettings';\nimport { request as __request } from '../core/request';\n\nexport class BioProductsService {\n /**\n * Get a list of all bio products from NS and SE (take only NS when SE is not available). Required scope: apiBioProducts\n * @param enterpriseId Optional, the Enterprise id.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpBioProducts OK\n * @throws ApiError\n */\n public static async bioProductsGet(enterpriseId?: number, page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/products/bio`,\n query: {\n enterpriseId: enterpriseId,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a bio product.\n * Required scope: apiBioProducts.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async bioProductsPostCreateBioProduct(value: KpBioProductCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/products/bio`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified bio product.\n * Required scope: apiBioProducts\n * @param productId\n * @returns KpBioProduct OK\n * @throws ApiError\n */\n public static async bioProductsGetBioProduct(productId: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/products/bio/${productId}`,\n });\n return result.body;\n }\n\n /**\n * Update Bio Product. Required scope: apiBioProducts.w\n * @param productId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async bioProductsUpdateBioProduct(productId: number, value: KpBioProductSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/products/bio/${productId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified bio product.\n * Required scope: apiBioProducts.w\n * @param productId\n * @returns any OK\n * @throws ApiError\n */\n public static async bioProductsDeleteBioProduct(productId: number): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/products/bio/${productId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpChemProduct } from '../models/KpChemProduct';\nimport type { KpChemProductCreate } from '../models/KpChemProductCreate';\nimport type { KpChemProducts } from '../models/KpChemProducts';\nimport type { KpChemProductSettings } from '../models/KpChemProductSettings';\nimport { request as __request } from '../core/request';\n\nexport class ChemProductsService {\n /**\n * Get a list of all chem products from NS and SE (take only NS when SE is not available). Required scope: apiChemProducts\n * @param enterpriseId Optional, the Enterprise id.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpChemProducts OK\n * @throws ApiError\n */\n public static async chemProductsGet(\n enterpriseId?: number,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/products/chem`,\n query: {\n enterpriseId: enterpriseId,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a chemical product.\n * Required scope: apiChemProducts.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async chemProductsPostCreateChemProduct(value: KpChemProductCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/products/chem`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified chemical product.\n * Required scope: apiChemProducts\n * @param productId\n * @returns KpChemProduct OK\n * @throws ApiError\n */\n public static async chemProductsGetChemProduct(productId: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/products/chem/${productId}`,\n });\n return result.body;\n }\n\n /**\n * Update chemical Product. Required scope: apiChemProducts.w\n * @param productId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async chemProductsUpdateChemProduct(productId: number, value: KpChemProductSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/products/chem/${productId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified chemical product.\n * Required scope: apiChemProducts.w\n * @param productId\n * @returns any OK\n * @throws ApiError\n */\n public static async chemProductsDeleteChemProduct(productId: number): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/products/chem/${productId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { FmsConfiguration } from '../models/FmsConfiguration';\nimport type { FmsConfigurationCreate } from '../models/FmsConfigurationCreate';\nimport type { FmsConfigurations } from '../models/FmsConfigurations';\nimport type { FmsConfigurationSettings } from '../models/FmsConfigurationSettings';\nimport type { FmsLicenseToken } from '../models/FmsLicenseToken';\nimport type { FmsProductLicense } from '../models/FmsProductLicense';\nimport type { FmsProductLicenseInfo } from '../models/FmsProductLicenseInfo';\nimport type { FmsSearch } from '../models/FmsSearch';\nimport type { FmsStructuredContentInfo } from '../models/FmsStructuredContentInfo';\nimport type { FmsUsers } from '../models/FmsUsers';\nimport type { FmsUsersDetails } from '../models/FmsUsersDetails';\nimport { request as __request } from '../core/request';\n\nexport class ConfigurationsService {\n /**\n * Get a list of all configurations.\n * Required scope: apiConfigurations\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsConfigurations OK\n * @throws ApiError\n */\n public static async configurationsGetConfigurations(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of the configurations of the specified enterprise.\n * Required scope: apiConfigurations\n * @param enterpriseId Enterprise id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsConfigurations OK\n * @throws ApiError\n */\n public static async configurationsGetEnterpriseConfigurations(\n enterpriseId: number,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/enterprise/${enterpriseId}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a new configuration.\n * Required scope: apiConfigurations.w\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsPostCreateConfiguration(\n enterpriseId: number,\n value: FmsConfigurationCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/enterprise/${enterpriseId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified configuration.\n * Required scope: apiConfigurations\n * @param pcellId Configuration id\n * @returns FmsConfiguration OK\n * @throws ApiError\n */\n public static async configurationsGetConfiguration(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Update configuration settings. Required scope: apiConfigurations.w\n * @param pcellId Configuration id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsPutConfiguration(pcellId: string, value: FmsConfigurationSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/configurations/${pcellId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete a configuration.\n * Required scope: apiConfigurations.w\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsDeleteConfiguration(pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/configurations/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Get the data server of the specified configuration.\n * Required scope: apiConfigurations\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsGetConfigurationDataServer(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/${pcellId}/server/data`,\n });\n return result.body;\n }\n\n /**\n * Get the fieldIO server of the specified configuration.\n * Required scope: apiConfigurations\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsGetConfigurationFieldIoServer(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/${pcellId}/server/fieldio`,\n });\n return result.body;\n }\n\n /**\n * Mark a configuration as deleted. This will not physically deleted the configuration's data.\n * Required scope: apiConfigurations.w\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsDeleteConfigurationMarkAsDeleted(pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/configurations/${pcellId}/mark`,\n });\n return result.body;\n }\n\n /**\n * Get a list of all available structured content items.\n * Required scope: apiConfigurations\n * @returns FmsStructuredContentInfo OK\n * @throws ApiError\n */\n public static async configurationsGetStructuredContentInfo(): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/scontent/info`,\n });\n return result.body;\n }\n\n /**\n * Get all users of the specified configuration.\n * Required scope: apiConfigurations\n * @param pcellId Configuration id\n * @returns FmsUsers OK\n * @throws ApiError\n */\n public static async configurationsGetConfigurationUsers(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/${pcellId}/users`,\n });\n return result.body;\n }\n\n /**\n * Get details of all users of the specified configuration.\n * Required scope: apiConfigurations\n * @param pcellId Configuration id\n * @returns FmsUsersDetails OK\n * @throws ApiError\n */\n public static async configurationsGetconfigurationUsersDetails(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/configurations/${pcellId}/users/details`,\n });\n return result.body;\n }\n\n /**\n * Required scope: apiConfigurations\n * @param search\n * @returns FmsConfigurations OK\n * @throws ApiError\n */\n public static async configurationsGetSearchConfigurations(search: FmsSearch): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/search`,\n body: search,\n });\n return result.body;\n }\n\n /**\n * Generate a product license token for the specified configuration.\n * Required scope: apiConfigurations.w\n * @param pcellId Configuration id\n * @returns FmsLicenseToken OK\n * @throws ApiError\n */\n public static async configurationsGenerateProductLicenseTokenAsync(pcellId: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/${pcellId}/license/token`,\n });\n return result.body;\n }\n\n /**\n * Generate a product license token for the posted configuration.\n * Required scope: apiConfigurations.w\n * @param license Configuration id\n * @returns FmsLicenseToken OK\n * @throws ApiError\n */\n public static async configurationsGenerateProductLicenseTokenAsync1(\n license: FmsProductLicense,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/license/token`,\n body: license,\n });\n return result.body;\n }\n\n /**\n * Validates a product license token.\n * Required scope: apiConfigurations\n * @param token The token\n * @returns FmsProductLicenseInfo OK\n * @throws ApiError\n */\n public static async configurationsValidateProductLicenseTokenAsync(\n token: FmsLicenseToken,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/license/token/validate`,\n body: token,\n });\n return result.body;\n }\n\n /**\n * Creates a new configuration from the posted product license token.\n * Required scope: apiConfigurations.w\n * @param token The token\n * @returns any OK\n * @throws ApiError\n */\n public static async configurationsCreateConfigurationFromProductLicenseToken(token: FmsLicenseToken): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/configurations/from/license`,\n body: token,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpCropTemplateCreate } from '../models/KpCropTemplateCreate';\nimport type { KpCropTemplateDetails } from '../models/KpCropTemplateDetails';\nimport type { KpCropTemplates } from '../models/KpCropTemplates';\nimport type { KpCropTemplateSettings } from '../models/KpCropTemplateSettings';\nimport { request as __request } from '../core/request';\n\nexport class CropTemplatesService {\n /**\n * Get a list of all crop templates. Required scope: apiScoutTemplates\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCropTemplates OK\n * @throws ApiError\n */\n public static async cropTemplatesGet(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/croptemplates`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a Crop Template.\n * Required scope: apiScoutTemplates.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async cropTemplatesPostCreateCropTemplate(value: KpCropTemplateCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/croptemplates`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all crop templates for the specified distributor. Required scope: apiScoutTemplates\n * @param distributorId The distributor id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCropTemplates OK\n * @throws ApiError\n */\n public static async cropTemplatesGet1(\n distributorId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/croptemplates/distributor/${distributorId}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all crop templates for the specified enterprise. Required scope: apiScoutTemplates\n * @param enterpriseId The enterprise id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCropTemplates OK\n * @throws ApiError\n */\n public static async cropTemplatesGet2(\n enterpriseId: number,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/croptemplates/enterprise/${enterpriseId}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all default crop templates. Required scope: apiScoutTemplates\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCropTemplates OK\n * @throws ApiError\n */\n public static async cropTemplatesGetDefaults(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/croptemplates/default`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified crop template.\n * Required scope: apiScoutTemplates\n * @param templateId Crop template id\n * @returns KpCropTemplateDetails OK\n * @throws ApiError\n */\n public static async cropTemplatesGetCropTemplate(templateId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/croptemplates/${templateId}`,\n });\n return result.body;\n }\n\n /**\n * Update CropTemplate settings. Required scope: apiScoutTemplates.w\n * @param templateId Crop template id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async cropTemplatesUpdateCropTemplate(templateId: string, value: KpCropTemplateSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/croptemplates/${templateId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Crop Template.\n * Required scope: apiScoutTemplates.w\n * @param templateId Crop template id\n * @returns any OK\n * @throws ApiError\n */\n public static async cropTemplatesDeleteCropTemplate(templateId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/croptemplates/${templateId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpConfigurationCreate } from '../models/KpConfigurationCreate';\nimport type { KpEnterpriseSignup } from '../models/KpEnterpriseSignup';\nimport type { KpLoginResult } from '../models/KpLoginResult';\nimport type { KpUserAndEnterpriseSignup } from '../models/KpUserAndEnterpriseSignup';\nimport type { KpUserLogin } from '../models/KpUserLogin';\nimport type { KpUserSignup } from '../models/KpUserSignup';\nimport { request as __request } from '../core/request';\n\nexport class CsIntegrationService {\n /**\n * Login a user and return the accesstoken and user details. Required scope: Allow Anonymous\n * @param value\n * @returns KpLoginResult OK\n * @throws ApiError\n */\n public static async csIntegrationLoginUser(value: KpUserLogin): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/login`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Login a user by impersonation token and return the accesstoken and user details. Required scope: Allow Anonymous\n * @param token URL encoded base 64 token.\n * @returns KpLoginResult OK\n * @throws ApiError\n */\n public static async csIntegrationImpersonateUser(token: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/impersonate/token/${token}`,\n });\n return result.body;\n }\n\n /**\n * In the signup process, create a user. Required scope: Allow Anonymous\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async csIntegrationSignupUser(value: KpUserSignup): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/signup`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * In the signup process, create a user. Required scope: Allow Anonymous\n * @param value\n * @param forward\n * @returns string OK\n * @throws ApiError\n */\n public static async csIntegrationSignupUserWithEnterprise(\n value: KpUserAndEnterpriseSignup,\n forward?: boolean,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/signup/withEnterprise`,\n query: {\n forward: forward,\n },\n body: value,\n });\n return result.body;\n }\n\n /**\n * In the signup process, create a user, login the user and return the accesstoken and user details. Required scope: Allow Anonymous\n * @param value\n * @returns KpLoginResult OK\n * @throws ApiError\n */\n public static async csIntegrationSignupUserLogin(value: KpUserSignup): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/signup/login`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * In the signup process, create a user, login the user and return the accesstoken and user details. Required scope: apiIntegration\n * @returns KpLoginResult OK\n * @throws ApiError\n */\n public static async csIntegrationUserInfo(): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/integration/user/info`,\n });\n return result.body;\n }\n\n /**\n * Refresh the user access token and return the accesstoken and user details. Required scope: apiIntegration\n * @param refreshToken\n * @returns KpLoginResult OK\n * @throws ApiError\n */\n public static async csIntegrationRefreshTokenUserInfo(refreshToken: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/refresh/${refreshToken}`,\n });\n return result.body;\n }\n\n /**\n * In the signup process, create an enterprise and move the user to the newly created enterprise. Required scope: apiIntegration.w\n * @param userId user GUID\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async csIntegrationSignupUserCreateEnterprise(userId: string, value: KpEnterpriseSignup): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/user/${userId}/enterprise`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Create a configuration for the specified enterprise. Required scope: apiIntegration.w\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async csIntegrationCreateConfiguration(\n enterpriseId: number,\n value: KpConfigurationCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/integration/enterprise/${enterpriseId}/configuration`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete a configuration for the specified enterprise. Required scope: apiIntegration.w\n * @param enterpriseId\n * @param pcellId Identifies the configuration/location to delete.\n * @returns any OK\n * @throws ApiError\n */\n public static async csIntegrationDeleteConfiguration(enterpriseId: number, pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/integration/enterprise/${enterpriseId}/configuration/${pcellId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpDepartmentCreate } from '../models/KpDepartmentCreate';\nimport type { KpDepartmentDetails } from '../models/KpDepartmentDetails';\nimport type { KpDepartments } from '../models/KpDepartments';\nimport type { KpDepartmentSettings } from '../models/KpDepartmentSettings';\nimport { QueueMsgDepartmentActionRequest } from '../models/QueueMsgDepartmentActionRequest';\nimport { request as __request } from '../core/request';\n\nexport class DepartmentsService {\n /**\n * Get a list of all departments. Required scope: apiDepartments\n * @param pcellId Location id\n * @param includeMarkedDeleted Optional, also include any departments marked as deleted.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpDepartments OK\n * @throws ApiError\n */\n public static async departmentsGet(\n pcellId: string,\n includeMarkedDeleted?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments`,\n query: {\n includeMarkedDeleted: includeMarkedDeleted,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a Department.\n * Required scope: apiDepartments.w\n * @param pcellId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async departmentsPostCreateDepartment(pcellId: string, value: KpDepartmentCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all departments. Required scope: apiDepartments\n * @param enterpriseId Location id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpDepartments OK\n * @throws ApiError\n */\n public static async departmentsGet1(enterpriseId: number, page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/departments`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified department.\n * Required scope: apiDepartments\n * @param pcellId Location id\n * @param departmentId\n * @param compact Optional, when true returns details with compact map instead of original map\n * @returns KpDepartmentDetails OK\n * @throws ApiError\n */\n public static async departmentsGetDepartment(\n pcellId: string,\n departmentId: string,\n compact?: boolean,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}`,\n query: {\n compact: compact,\n },\n });\n return result.body;\n }\n\n /**\n * Update Department settings. Required scope: apiDepartments.w\n * @param pcellId Location id\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async departmentsUpdateDepartment(\n pcellId: string,\n departmentId: string,\n value: KpDepartmentSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Department.\n * Required scope: apiDepartments.w\n * @param pcellId\n * @param departmentId\n * @returns any OK\n * @throws ApiError\n */\n public static async departmentsDeleteDepartment(pcellId: string, departmentId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}`,\n });\n return result.body;\n }\n\n /**\n * Mark the specified Department as deleted. This will not physically deleted the department's data.\n * Required scope: apiDepartments.w\n * @param pcellId\n * @param departmentId\n * @returns any OK\n * @throws ApiError\n */\n public static async departmentsDeleteDepartmentMarkAsDeleted(pcellId: string, departmentId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/mark`,\n });\n return result.body;\n }\n\n /**\n * Update Department settings. Required scope: apiDepartments.w\n * @param pcellId Location id\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static departmentsDepartmentActionRequest(\n pcellId: string,\n departmentId: string,\n value: QueueMsgDepartmentActionRequest,\n ): Promise {\n return __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/action/request`,\n body: value,\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { FmsCheck } from '../models/FmsCheck';\nimport type { FmsConfigurations } from '../models/FmsConfigurations';\nimport type { FmsEnterpriseCreate } from '../models/FmsEnterpriseCreate';\nimport type { FmsEnterpriseDetails } from '../models/FmsEnterpriseDetails';\nimport type { FmsEnterpriseDisable } from '../models/FmsEnterpriseDisable';\nimport type { FmsEnterpriseIdentifiers } from '../models/FmsEnterpriseIdentifiers';\nimport type { FmsEnterprises } from '../models/FmsEnterprises';\nimport type { FmsEnterprisesDetails } from '../models/FmsEnterprisesDetails';\nimport type { FmsEnterpriseSettings } from '../models/FmsEnterpriseSettings';\nimport type { FmsProperties } from '../models/FmsProperties';\nimport type { FmsSearch } from '../models/FmsSearch';\nimport type { FmsUsers } from '../models/FmsUsers';\nimport type { FmsUsersDetails } from '../models/FmsUsersDetails';\nimport type { FmsUsersDetailsConfigurations } from '../models/FmsUsersDetailsConfigurations';\nimport { request as __request } from '../core/request';\n\nexport class EnterprisesService {\n /**\n * Get a list of all Enterprises. Required scope: apiEnterprises\n * @param distributorId\n * @param dealerId\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsEnterprises OK\n * @throws ApiError\n */\n public static async enterprisesGet(\n distributorId: string,\n dealerId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create an Enterprise.\n * Required scope: apiEnterprises.w\n * @param distributorId\n * @param dealerId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPostCreateEnterprise(\n distributorId: string,\n dealerId: string,\n value: FmsEnterpriseCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all Enterprises. Required scope: apiEnterprises\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsEnterprises OK\n * @throws ApiError\n */\n public static async enterprisesGet1(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all enterprises by Enterprise ids. Required scope: apiEnterprises\n * @param ids The enterprise ids.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsEnterprises OK\n * @throws ApiError\n */\n public static async enterprisesGet2(ids: Array, page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/enterprises/ids`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n body: ids,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified enterprise.\n * Required scope: apiEnterprises\n * @param distributorId\n * @param dealerId\n * @param enterpriseId\n * @returns FmsEnterpriseDetails OK\n * @throws ApiError\n */\n public static async enterprisesGet3(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}`,\n });\n return result.body;\n }\n\n /**\n * Update Enterprise settings. Required scope: apiEnterprises\n * @param distributorId\n * @param dealerId\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPut(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n value: FmsEnterpriseSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete an Enterprise.\n * Required scope: apiEnterprises.w\n * @param distributorId\n * @param dealerId\n * @param enterpriseId Enterprise id\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesDeleteEnterprise(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}`,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified enterprise.\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @returns FmsEnterpriseDetails OK\n * @throws ApiError\n */\n public static async enterprisesGet4(enterpriseId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}`,\n });\n return result.body;\n }\n\n /**\n * Update Enterprise settings. Required scope: apiEnterprises\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPut1(enterpriseId: string, value: FmsEnterpriseSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/enterprises/${enterpriseId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all Enterprises with details. Required scope: apiEnterprises\n * @param distributorId\n * @param dealerId\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsEnterprisesDetails OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterprisesWithDetails(\n distributorId: string,\n dealerId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/details`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get the identifiers of the specified enterprise.\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @returns FmsEnterpriseIdentifiers OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseIdentifiers(enterpriseId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/ids`,\n });\n return result.body;\n }\n\n /**\n * Checks if an enterprise is available.\n * Required scope: -\n * @param check\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesGetCheckAvailable(check: FmsCheck): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/enterprises/check/available`,\n body: check,\n });\n return result.body;\n }\n\n /**\n * Required scope: apiEnterprises.w\n * @param distributorId\n * @param dealerId\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPut2(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n value: FmsEnterpriseDisable,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}/disable`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Update Enterprise properties. Required scope: apiEnterprises.w\n * @param enterpriseId Enterprise Id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPutUserProperties(enterpriseId: string, value: FmsProperties): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/enterprises/${enterpriseId}/properties`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Update Enterprise properties. Required scope: apiEnterprises.w\n * @param enterpriseId Enterprise Id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesPutUserProperties1(enterpriseId: string, value: FmsProperties): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/enterprises/${enterpriseId}/properties`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete Enterprise property. Required scope: apiEnterprises.w\n * @param enterpriseId Enterprise\n * @param propertyName Name of the property.\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesDeleteUserProperty(enterpriseId: string, propertyName: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/enterprises/${enterpriseId}/properties/${propertyName}`,\n });\n return result.body;\n }\n\n /**\n * Get the Enterprise's configurations. (i.e. customer configurations)\n * Required scope: apiEnterprises\n * @param distributorId\n * @param dealerId\n * @param enterpriseId\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsConfigurations OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseConfigurations(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}/configurations`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get the Enterprise's configurations. (i.e. customer configurations)\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsConfigurations OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseConfigurations1(\n enterpriseId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/configurations`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get all users of the specified enterprise.\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @returns FmsUsers OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseUsers(enterpriseId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/users`,\n });\n return result.body;\n }\n\n /**\n * Get details of all users of the specified enterprise.\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @returns FmsUsersDetails OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseUsersDetails(enterpriseId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/users/details`,\n });\n return result.body;\n }\n\n /**\n * Get details and configurations of all users of the specified enterprise.\n * Required scope: apiEnterprises\n * @param enterpriseId\n * @returns FmsUsersDetailsConfigurations OK\n * @throws ApiError\n */\n public static async enterprisesGetEnterpriseUsersDetailsWithConfigurations(\n enterpriseId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprises/${enterpriseId}/users/details/configurations`,\n });\n return result.body;\n }\n\n /**\n * Required scope: apiEnterprises\n * @param search\n * @returns FmsEnterprises OK\n * @throws ApiError\n */\n public static async enterprisesGetSearchEnterprises(search: FmsSearch): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/enterprises/search`,\n body: search,\n });\n return result.body;\n }\n\n /**\n * Move an enterprise to another Dealer. Required scope: apiEnterprises.w\n * @param distributorId Current distributor.\n * @param dealerId Current delaer id.\n * @param enterpriseId Enterpise Id to move.\n * @param toDealerId The Dealer Id to move the enterprise to.\n * @returns any OK\n * @throws ApiError\n */\n public static async enterprisesMoveEnterpriseToDealer(\n distributorId: string,\n dealerId: string,\n enterpriseId: string,\n toDealerId: string,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/distributors/${distributorId}/dealers/${dealerId}/enterprises/${enterpriseId}/moveto/${toDealerId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { GeoCodeLocation } from '../models/GeoCodeLocation';\nimport { request as __request } from '../core/request';\n\nexport class GeoCodeService {\n /**\n * Convert address to a geographic coordinate.\n * @param address Optional, the street addres.\n * @param zipcode Optional, zipcode\n * @param city Optional, city\n * @param country optional, country\n * @returns GeoCodeLocation OK\n * @throws ApiError\n */\n public static async geoCodeGet(\n address?: string,\n zipcode?: string,\n city?: string,\n country?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/geocode`,\n query: {\n address: address,\n zipcode: zipcode,\n city: city,\n country: country,\n },\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpEnterpriseSettings } from '../models/KpEnterpriseSettings';\nimport type { KpLocationCreate } from '../models/KpLocationCreate';\nimport type { KpLocationDetails } from '../models/KpLocationDetails';\nimport type { KpLocations } from '../models/KpLocations';\nimport type { KpLocationSettings } from '../models/KpLocationSettings';\nimport { request as __request } from '../core/request';\n\nexport class LocationsService {\n /**\n * Get a list of all locations for the user. Required scope: apiLocations\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpLocations OK\n * @throws ApiError\n */\n public static async locationsGet(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/user`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all locations for the specified enterprise id. Required scope: apiLocations\n * @param enterpriseId Enterprise Id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpLocations OK\n * @throws ApiError\n */\n public static async locationsGetLocationsForEnterpriseId(\n enterpriseId: number,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/enterprise/${enterpriseId}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Update Enterprise settings. Required scope: apiLocations.w\n * @param enterpriseId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async locationsUpdateEnterprise(enterpriseId: number, value: KpEnterpriseSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/enterprise/${enterpriseId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified location.\n * Required scope: apiLocations\n * @param pcellId\n * @returns KpLocationDetails OK\n * @throws ApiError\n */\n public static async locationsGetLocation(pcellId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Update Location settings. Required scope: apiLocations.w\n * @param pcellId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async locationsUpdateLocation(pcellId: string, value: KpLocationSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Create a Location.\n * Required scope: apiLocations.w\n * @param pcellId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async locationsPostCreateLocation(pcellId: string, value: KpLocationCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Location.\n * Required scope: apiLocations.w\n * @param pcellId\n * @returns any OK\n * @throws ApiError\n */\n public static async locationsDeleteLocation(pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Mark the specified Location as deleted. This will not physically delete the location's data.\n * Required scope: apiLocations.w\n * @param pcellId\n * @returns any OK\n * @throws ApiError\n */\n public static async locationsDeleteLocationMarkAsDeleted(pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/mark`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpAggregatedData } from '../models/KpAggregatedData';\nimport type { KpAggregatedDataAvailability } from '../models/KpAggregatedDataAvailability';\nimport { request as __request } from '../core/request';\n\nexport class ScoutAggregatedDataService {\n /**\n * Get aggregated scout data of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @returns KpAggregatedData OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataGet(\n pcellId: string,\n departmentId: string,\n sort?: string,\n templateRecId?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Get aggregated scout data of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param useDiffMethod\n * @returns KpAggregatedData OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataGetAsync(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: number,\n useDiffMethod?: boolean,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n useDiffMethod: useDiffMethod,\n },\n });\n return result.body;\n }\n\n /**\n * Get aggregated scout data availability of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @returns KpAggregatedDataAvailability OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataGetAvailabilityAsync(\n pcellId: string,\n departmentId: string,\n sort?: string,\n templateRecId?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/availability`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Get aggregated scout data availability of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @returns KpAggregatedDataAvailability OK\n * @throws ApiError\n */\n public static async scoutRawDataGetAvailabilityAsync1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/observations/availability/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Download aggregated scout data of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataDownloadAggregatedDataAsync(\n pcellId: string,\n departmentId: string,\n sort?: string,\n templateRecId?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/download`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Download aggregated scout data of the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param aggregate Optional, how to aggregate the data to download.\n * @param format Optional, file format to generate.\n * @param csvformat Optional, CSV format style.\n * @param culture Optional, the culture to use.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataDownloadAggregatedDataAsync1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n aggregate?: 'AverageM2' | 'Average' | 'Sum',\n format?: 'CSV' | 'XLSX',\n csvformat?: 'eur' | 'us' | 'mix',\n culture?: string,\n sort?: string,\n templateRecId?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/download/from/${start}/to/${end}`,\n query: {\n aggregate: aggregate,\n format: format,\n csvformat: csvformat,\n culture: culture,\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Download aggregated scout data of the specified department. Required scope: apiScoutData\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param format Optional, file format to generate.\n * @param csvformat Optional, CSV format style.\n * @param culture Optional, the culture to use.\n * @param trueCustomers Optional, filter on true customers (default true)\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataDownloadAggregatedDataAsync2(\n start: string,\n end: string,\n format?: 'CSV' | 'XLSX',\n csvformat?: 'eur' | 'us' | 'mix',\n culture?: string,\n trueCustomers?: boolean,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/sessions/download/from/${start}/to/${end}`,\n query: {\n format: format,\n csvformat: csvformat,\n culture: culture,\n trueCustomers: trueCustomers,\n },\n });\n return result.body;\n }\n\n /**\n * Download Excel data import template for the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param format Optional, the import format. Possible values are: aggregated, detailed. Default: aggregated.\n * @param culture Optional, the culture to use. Default: en\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutAggregatedDataDownloadImportTemplateAsync(\n pcellId: string,\n departmentId: string,\n format?: string,\n culture?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/download/import/template`,\n query: {\n format: format,\n culture: culture,\n },\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpScoutDataImport } from '../models/KpScoutDataImport';\nimport type { KpScoutDataImportCreate } from '../models/KpScoutDataImportCreate';\nimport type { KpScoutDataImports } from '../models/KpScoutDataImports';\nimport type { KpScoutDataImportSettings } from '../models/KpScoutDataImportSettings';\nimport { request as __request } from '../core/request';\n\nexport class ScoutDataImportsService {\n /**\n * Get a list of all scout data imports of the specified enterprise. Required scope: apiScoutData\n * @param enterpriseId The enterprise identifier\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutDataImports OK\n * @throws ApiError\n */\n public static async scoutDataImportsGetScoutDataImportsForEnterpriseId(\n enterpriseId: number,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/scout/data/imports`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scout data imports of the specified enterprise. Required scope: apiScoutData\n * @param enterpriseId The enterprise identifier\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutDataImports OK\n * @throws ApiError\n */\n public static async scoutDataImportsGetScoutTripsForLocation(\n enterpriseId: number,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/scout/data/imports/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scout data import.\n * Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param dataImportId\n * @returns KpScoutDataImport OK\n * @throws ApiError\n */\n public static async scoutDataImportsGetScoutDataImport(\n pcellId: string,\n departmentId: string,\n dataImportId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/imports/${dataImportId}`,\n });\n return result.body;\n }\n\n /**\n * Update Scout Data Import settings. Required scope: apiScoutData.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param dataImportId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutDataImportsUpdateScoutTrip(\n pcellId: string,\n departmentId: string,\n dataImportId: string,\n value: KpScoutDataImportSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/imports/${dataImportId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Scout Data Import.\n * Required scope: apiScoutData.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param dataImportId\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutDataImportsDeleteScoutDataImport(\n pcellId: string,\n departmentId: string,\n dataImportId: string,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/imports/${dataImportId}`,\n });\n return result.body;\n }\n\n /**\n * Create a Scout Data Import.\n * Required scope: apiScoutData.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutDataImportsPostCreateScoutDataImport(\n pcellId: string,\n departmentId: string,\n value: KpScoutDataImportCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/imports`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Download Excel data import template for the specified department. Required scope: apiScoutData\n * @param pcellId The location identifier.\n * @param departmentId\n * @param format Optional, the import format. Possible values are: aggregated, detailed. Default: aggregated.\n * @param culture Optional, the culture to use. Default: en\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutDataImportsDownloadImportTemplateAsync(\n pcellId: string,\n departmentId: string,\n format?: string,\n culture?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/data/scout/imports/download/import/template`,\n query: {\n format: format,\n culture: culture,\n },\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpChunkResult } from '../models/KpChunkResult';\nimport type { KpChunkScoutTemplateRecords } from '../models/KpChunkScoutTemplateRecords';\nimport type { KpScoutTemplateRecordDepartment } from '../models/KpScoutTemplateRecordDepartment';\nimport type { KpScoutTemplateRecordDepartmentSettings } from '../models/KpScoutTemplateRecordDepartmentSettings';\nimport type { KpScoutTemplateRecordsDepartment } from '../models/KpScoutTemplateRecordsDepartment';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTemplateRecordsDepartmentService {\n /**\n * Get a list of the scout template records override of the specified scout template and department. Required scope: apiScoutTemplates\n * @param templateId Scout template Id\n * @param departmentId Department Id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTemplateRecordsDepartment OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentGet(\n templateId: string,\n departmentId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/department/${departmentId}/records`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of the scout template records override of the specified department. Required scope: apiScoutTemplates\n * @param departmentId Department Id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTemplateRecordsDepartment OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentGet1(\n departmentId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/department/${departmentId}/records`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scout template record with the department override.\n * Required scope: apiScoutTemplates\n * @param templateId Scout Template Id\n * @param departmentId Department Id\n * @param recordId Scout Template Record Id\n * @returns KpScoutTemplateRecordDepartment OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentGetScoutTemplateRecord(\n templateId: string,\n departmentId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/department/${departmentId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Update ScoutTemplateRecord settings override for the specified department. Required scope: apiScoutTemplates.w\n * @param templateId Scout Template Id\n * @param departmentId Department Id\n * @param recordId Scout Template Record Id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentUpdateScoutTemplateRecord(\n templateId: string,\n departmentId: string,\n recordId: number,\n value: KpScoutTemplateRecordDepartmentSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/scouttemplates/${templateId}/department/${departmentId}/records/${recordId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Scout Template Record override for the specified department.\n * Required scope: apiScoutTemplates.w\n * @param templateId Scout Template Id\n * @param departmentId Department Id\n * @param recordId Scout Template Record Id\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentDeleteScoutTemplateRecord(\n templateId: string,\n departmentId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/scouttemplates/${templateId}/department/${departmentId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Upload a chunk of scout template records for department.\n * Required scope: apiScoutTemplates.w\n * @param templateId\n * @param departmentId The department identifier.\n * @param value\n * @returns KpChunkResult OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDepartmentPostScoutTemplateRecords(\n templateId: string,\n departmentId: string,\n value: KpChunkScoutTemplateRecords,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/scouttemplates/${templateId}/department/${departmentId}/records/chunk`,\n body: value,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpChunkResult } from '../models/KpChunkResult';\nimport type { KpChunkScoutTemplateRecords } from '../models/KpChunkScoutTemplateRecords';\nimport type { KpScoutTemplateRecordLocation } from '../models/KpScoutTemplateRecordLocation';\nimport type { KpScoutTemplateRecordLocationSettings } from '../models/KpScoutTemplateRecordLocationSettings';\nimport type { KpScoutTemplateRecordsLocation } from '../models/KpScoutTemplateRecordsLocation';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTemplateRecordsLocationService {\n /**\n * Get a list of the scout template records override of the specified scout template and location. Required scope: apiScoutTemplates\n * @param templateId Scout template Id\n * @param locationId Location Id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTemplateRecordsLocation OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationGet(\n templateId: string,\n locationId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/records`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of the scout template records override of the specified location. Required scope: apiScoutTemplates\n * @param locationId Location Id\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTemplateRecordsLocation OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationGet1(\n locationId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/location/${locationId}/records`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scout template record with the location override.\n * Required scope: apiScoutTemplates\n * @param templateId Scout Template Id\n * @param locationId Location Id\n * @param recordId Scout Template Record Id\n * @returns KpScoutTemplateRecordLocation OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationGetScoutTemplateRecord(\n templateId: string,\n locationId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Update ScoutTemplateRecord settings override for the specified location. Required scope: apiScoutTemplates.w\n * @param templateId Scout Template Id\n * @param locationId Location Id\n * @param recordId Scout Template Record Id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationUpdateScoutTemplateRecord(\n templateId: string,\n locationId: string,\n recordId: number,\n value: KpScoutTemplateRecordLocationSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/records/${recordId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Scout Template Record override for the specified location.\n * Required scope: apiScoutTemplates.w\n * @param templateId Scout Template Id\n * @param locationId Location Id\n * @param recordId Scout Template Record Id\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationDeleteScoutTemplateRecord(\n templateId: string,\n locationId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Upload a chunk of scout template records for location.\n * Required scope: apiScoutTemplates.w\n * @param templateId\n * @param locationId The location identifier.\n * @param value\n * @returns KpChunkResult OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationPostScoutTemplateRecords(\n templateId: string,\n locationId: string,\n value: KpChunkScoutTemplateRecords,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/records/chunk`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Reset colors of for the ScoutTemplate of the specified location or departments. Required scope: apiScoutTemplates.w\n * @param templateId Scout Template Id\n * @param locationId Location Id\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsLocationResetColorsScoutTemplate(\n templateId: string,\n locationId: string,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/scouttemplates/${templateId}/location/${locationId}/resetcolors`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpScoutTemplateRecord } from '../models/KpScoutTemplateRecord';\nimport type { KpScoutTemplateRecordCreate } from '../models/KpScoutTemplateRecordCreate';\nimport type { KpScoutTemplateRecords } from '../models/KpScoutTemplateRecords';\nimport type { KpScoutTemplateRecordSettings } from '../models/KpScoutTemplateRecordSettings';\nimport type { KpSearchTerm } from '../models/KpSearchTerm';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTemplateRecordsService {\n /**\n * Get a list of the scout template records of the specified scout template. Required scope: apiScoutTemplates\n * @param templateId Scout template id\n * @param enterpriseId Optional, the enterprise id to merge the override records for.\n * @param locationId Optional, the location id to merge the override records for.\n * @param cropTemplateId Optional, the cropTemplate id to filter the scout template records for.\n * @param departmentId Optional, the department id to merge the override records for.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTemplateRecords OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsGet(\n templateId: string,\n enterpriseId?: number,\n locationId?: string,\n cropTemplateId?: string,\n departmentId?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/records`,\n query: {\n enterpriseId: enterpriseId,\n locationId: locationId,\n cropTemplateId: cropTemplateId,\n departmentId: departmentId,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a Scout Template record.\n * Required scope: apiScoutTemplates.w\n * @param templateId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsPostCreateScoutTemplateRecord(\n templateId: string,\n value: KpScoutTemplateRecordCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/scouttemplates/${templateId}/records`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scout template record.\n * Required scope: apiScoutTemplates\n * @param templateId\n * @param recordId\n * @returns KpScoutTemplateRecord OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsGetScoutTemplateRecord(\n templateId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scouttemplates/${templateId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Update ScoutTemplateRecord settings. Required scope: apiScoutTemplates.w\n * @param templateId\n * @param recordId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsUpdateScoutTemplateRecord(\n templateId: string,\n recordId: number,\n value: KpScoutTemplateRecordSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/scouttemplates/${templateId}/records/${recordId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified Scout Template Record.\n * Required scope: apiScoutTemplates.w\n * @param templateId\n * @param recordId\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsDeleteScoutTemplateRecord(\n templateId: string,\n recordId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/scouttemplates/${templateId}/records/${recordId}`,\n });\n return result.body;\n }\n\n /**\n * Search for scout template records within the specified context identified by enterprise, location and crop template. Required scope: apiScoutTemplates\n * @param templateId Scout template id\n * @param search Search parameters.\n * @param enterpriseId Optional, the enterprise id to merge the override records for.\n * @param locationId Optional, the location id to merge the override records for.\n * @param cropTemplateId Optional, the cropTemplate id to filter the scout template for.\n * @param departmentId Optional, the department id to merge the override records for.\n * @returns KpScoutTemplateRecords OK\n * @throws ApiError\n */\n public static async scoutTemplateRecordsSearchScoutTemplateRecordsByNamesAsync(\n templateId: string,\n search: KpSearchTerm,\n enterpriseId?: number,\n locationId?: string,\n cropTemplateId?: string,\n departmentId?: string,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/scouttemplates/${templateId}/records/search/names`,\n query: {\n enterpriseId: enterpriseId,\n locationId: locationId,\n cropTemplateId: cropTemplateId,\n departmentId: departmentId,\n },\n body: search,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpCard } from '../models/KpCard';\nimport type { KpCardCreate } from '../models/KpCardCreate';\nimport type { KpCards } from '../models/KpCards';\nimport type { KpCardSettings } from '../models/KpCardSettings';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTripCardsService {\n /**\n * Get a list of all cards of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCards OK\n * @throws ApiError\n */\n public static async scoutTripCardsGet(\n pcellId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/cards`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all cards of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCards OK\n * @throws ApiError\n */\n public static async scoutTripCardsGet1(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/cards/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all cards of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCards OK\n * @throws ApiError\n */\n public static async scoutTripCardsGet2(\n pcellId: string,\n departmentId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/cards`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all cards of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCards OK\n * @throws ApiError\n */\n public static async scoutTripCardsGet3(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/cards/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all cards of the specified scouttrip. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpCards OK\n * @throws ApiError\n */\n public static async scoutTripCardsGet4(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/cards`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a Card.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripCardsPostCreateCard(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n value: KpCardCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/cards`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified card.\n * Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param cardId\n * @returns KpCard OK\n * @throws ApiError\n */\n public static async scoutTripCardsGetCard(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n cardId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/cards/${cardId}`,\n });\n return result.body;\n }\n\n /**\n * Update Card settings. Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param cardId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripCardsUpdateCard(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n cardId: string,\n value: KpCardSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/cards/${cardId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified card.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param cardId\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripCardsDeleteCard(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n cardId: string,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/cards/${cardId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpChunckObservations } from '../models/KpChunckObservations';\nimport type { KpChunkResult } from '../models/KpChunkResult';\nimport type { KpObservation } from '../models/KpObservation';\nimport type { KpObservationCreate } from '../models/KpObservationCreate';\nimport type { KpObservations } from '../models/KpObservations';\nimport type { KpObservationSettings } from '../models/KpObservationSettings';\nimport type { KpWeeks } from '../models/KpWeeks';\nimport type { KpYears } from '../models/KpYears';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTripObservationsService {\n /**\n * Get a list of all observations of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet(\n pcellId: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/observations`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observations of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet1(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/observations/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observations of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet2(\n pcellId: string,\n departmentId: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/observations`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observations of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, comma separated list with scout template record ids. E.g. 1,20 (Note = -1; Photo = -2)\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param useDiffMethod Optional, the number of records to return per page.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet3(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n useDiffMethod?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/observations/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n useDiffMethod: useDiffMethod,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observations of the specified scouttrip. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet4(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create an Observation.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripObservationsPostCreateObservation(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n value: KpObservationCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all observations of the specified scouttrip. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, filter on scout template record id.\n * @param filterUnique Optional, filter to take only distinct observations at each position.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpObservations OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGet5(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: number,\n filterUnique?: boolean,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n filterUnique: filterUnique,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observation Weeks of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, comma separated list with scout template record ids. E.g. -3,20 (Note =- 3; Photo = -8)\n * @returns KpWeeks OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGetObservationsWeeksAsync(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/observations/weeks/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observation Weeks of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, comma separated list with scout template record ids. E.g. -3,20 (Note = -3; Photo = -8)\n * @returns KpWeeks OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGetObservationsWeeksAsync1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n templateRecId?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/observations/weeks/from/${start}/to/${end}`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observation Years of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, comma separated list with scout template record ids. E.g. -3,20 (Note =- 3; Photo = -8)\n * @returns KpYears OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGetObservationsYearsAsync(\n pcellId: string,\n sort?: string,\n templateRecId?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/observations/years`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all observation Years of the specified location/department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param templateRecId Optional, comma separated list with scout template record ids. E.g. -3,20 (Note =- 3; Photo = -8)\n * @returns KpYears OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGetObservationsYearsAsync1(\n pcellId: string,\n departmentId: string,\n sort?: string,\n templateRecId?: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/observations/years`,\n query: {\n sort: sort,\n templateRecId: templateRecId,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified observation.\n * Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param observationId\n * @returns KpObservation OK\n * @throws ApiError\n */\n public static async scoutTripObservationsGetObservation(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n observationId: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations/${observationId}`,\n });\n return result.body;\n }\n\n /**\n * Update Observations settings. Required scope: apiScoutTrips.w\n * @param pcellId\n * @param departmentId\n * @param scoutTripId\n * @param observationId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripObservationsUpdateCard(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n observationId: number,\n value: KpObservationSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations/${observationId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified observation.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param observationId\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripObservationsDeleteObservation(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n observationId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations/${observationId}`,\n });\n return result.body;\n }\n\n /**\n * Upload a chunk of observations.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param value\n * @returns KpChunkResult OK\n * @throws ApiError\n */\n public static async scoutTripObservationsPostChunckObservations(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n value: KpChunckObservations,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}/observations/chunk`,\n body: value,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpScoutTrip } from '../models/KpScoutTrip';\nimport type { KpScoutTripCreate } from '../models/KpScoutTripCreate';\nimport type { KpScoutTrips } from '../models/KpScoutTrips';\nimport type { KpScoutTripSettings } from '../models/KpScoutTripSettings';\nimport { request as __request } from '../core/request';\n\nexport class ScoutTripsService {\n /**\n * Get a list of all scouttrips of the specified enterprise. Required scope: apiScoutTrips\n * @param enterpriseId The enterprise identifier\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForLocation(\n enterpriseId: number,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/scouttrips`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified enterprise. Required scope: apiScoutTrips\n * @param enterpriseId The enterprise identifier\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForLocation1(\n enterpriseId: number,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/enterprise/${enterpriseId}/scouttrips/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForLocation2(\n pcellId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/scouttrips`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified location. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForLocation3(\n pcellId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/scouttrips/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForDepartmentId(\n pcellId: string,\n departmentId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a ScoutTrip.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripsPostCreateScoutTrip(\n pcellId: string,\n departmentId: string,\n value: KpScoutTripCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified department. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForDepartmentId1(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified user. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param userId\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForUserId(\n pcellId: string,\n userId: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/users/${userId}/scouttrips`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Get a list of all scouttrips of the specified user. Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param userId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param sort Optional, timestamp sort order of the returned data. Supported values are: 'desc' and 'asc'.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns KpScoutTrips OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTripsForUserId1(\n pcellId: string,\n userId: string,\n start: string,\n end: string,\n sort?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/users/${userId}/scouttrips/from/${start}/to/${end}`,\n query: {\n sort: sort,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scouttrip.\n * Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @returns KpScoutTrip OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTrip(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}`,\n });\n return result.body;\n }\n\n /**\n * Update ScoutTrip settings. Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripsUpdateScoutTrip(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n value: KpScoutTripSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified ScoutTrip.\n * Required scope: apiScoutTrips.w\n * @param pcellId The location identifier.\n * @param departmentId\n * @param scoutTripId\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutTripsDeleteScoutTrip(\n pcellId: string,\n departmentId: string,\n scoutTripId: string,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/scouttrips/${scoutTripId}`,\n });\n return result.body;\n }\n\n /**\n * Returns the details of the specified scouttrip.\n * Required scope: apiScoutTrips\n * @param pcellId The location identifier.\n * @param scoutTripId\n * @returns KpScoutTrip OK\n * @throws ApiError\n */\n public static async scoutTripsGetScoutTrip1(pcellId: string, scoutTripId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/scouttrips/${scoutTripId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpScoutUserProperty } from '../models/KpScoutUserProperty';\nimport type { KpUserPropertyCreate } from '../models/KpUserPropertyCreate';\nimport { request as __request } from '../core/request';\n\nexport class ScoutUsersService {\n /**\n * Returns the data for a scout user property and key.\n * Required scope: apiScoutUsers\n * @param key\n * @returns KpScoutUserProperty OK\n * @throws ApiError\n */\n public static async scoutUsersGetScoutUserProperty(\n key: 'ComparisonSettings' | 'AnalysisSettings',\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/scout/users/prop/${key}`,\n });\n return result.body;\n }\n\n /**\n * Delete the specified property key for the current scout user.\n * Required scope: apiScoutUsers.w\n * @param key\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutUsersDeleteScoutUserProperty(key: 'ComparisonSettings' | 'AnalysisSettings'): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/scout/users/prop/${key}`,\n });\n return result.body;\n }\n\n /**\n * Create or update a scout user property for the specified Key.\n * Required scope: apiScoutUsers.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async scoutUsersPostCreateUpdateScoutUserProperty(value: KpUserPropertyCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/scout/users/prop`,\n body: value,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { FmsSignUpInvitation } from '../models/FmsSignUpInvitation';\nimport type { FmsSignUpInvitationAction } from '../models/FmsSignUpInvitationAction';\nimport type { FmsSignUpInvitationCreate } from '../models/FmsSignUpInvitationCreate';\nimport type { FmsSignUpInvitationInfo } from '../models/FmsSignUpInvitationInfo';\nimport type { FmsSignUpInvitations } from '../models/FmsSignUpInvitations';\nimport type { FmsSignUpInvitationSettings } from '../models/FmsSignUpInvitationSettings';\nimport { request as __request } from '../core/request';\n\nexport class SignUpInvitationsService {\n /**\n * Get a list of all sign up invitations for the specified inviter. Required scope: apiInvitations\n * @param inviterUserId\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsSignUpInvitations OK\n * @throws ApiError\n */\n public static async signUpInvitationsGet(\n inviterUserId: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/invitations/signup/inviter/${inviterUserId}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Delete all sign up invitations for the specified inviter.\n * Required scope: apiInvitations.w\n * @param inviterUserId\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsDeleteSignUpInvitationsByInviterUserId(inviterUserId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/invitations/signup/inviter/${inviterUserId}`,\n });\n return result.body;\n }\n\n /**\n * Create a sign up invitation.\n * Required scope: apiInvitations.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsPostCreateSignUpInvitation(value: FmsSignUpInvitationCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/invitations/signup`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified sign up invitation.\n * Required scope: apiInvitations\n * @param invitationId\n * @returns FmsSignUpInvitation OK\n * @throws ApiError\n */\n public static async signUpInvitationsGetSignUpInvitation(invitationId: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/invitations/signup/${invitationId}`,\n });\n return result.body;\n }\n\n /**\n * Update Sign Up Invitation settings. Required scope: apiInvitations.w\n * @param invitationId\n * @param value Sign Up Invatation settings.\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsUpdateSignUpInvitation(\n invitationId: string,\n value: FmsSignUpInvitationSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/invitations/signup/${invitationId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified sign up invitation.\n * Required scope: apiInvitations.w\n * @param invitationId\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsDeleteSignUpInvitation(invitationId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/invitations/signup/${invitationId}`,\n });\n return result.body;\n }\n\n /**\n * Delete all signup invitations for the specified inviter's enterprise.\n * Required scope: apiInvitations.w\n * @param enterpriseId\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsDeleteSignUpInvitationsByInviterEnterpriseId(\n enterpriseId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/invitations/signup/inviter/enterprise/${enterpriseId}`,\n });\n return result.body;\n }\n\n /**\n * Sends a sign up invitation by email to the invited user.\n * Required scope: apiInvitations.w\n * \n * The CallbackFormatString must contain tag {token} that will be replaced with the reset code.\n * Example: \"http://myapplication/account/invitation?code={token}\"\n * \n * @param invitationId Identifies the invitation to send.\n * @param action Required info for the action\n * @returns any OK\n * @throws ApiError\n */\n public static async signUpInvitationsPostSendSignUpInvitationEmail(\n invitationId: string,\n action: FmsSignUpInvitationAction,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/invitations/signup/${invitationId}/send/email`,\n body: action,\n });\n return result.body;\n }\n\n /**\n * Validates a sign up invitation token.\n * Required scope: apiAnonymous\n * @param token The token\n * @returns FmsSignUpInvitationInfo OK\n * @throws ApiError\n */\n public static async signUpInvitationsValidateSignUpInvitationTokenAsync(\n token: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/invitations/signup/token/${token}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { FmsUserEnterpriseRelation } from '../models/FmsUserEnterpriseRelation';\nimport type { FmsUserEnterpriseRelationCreate } from '../models/FmsUserEnterpriseRelationCreate';\nimport type { FmsUserEnterpriseRelations } from '../models/FmsUserEnterpriseRelations';\nimport type { FmsUserEnterpriseRelationSettings } from '../models/FmsUserEnterpriseRelationSettings';\nimport { request as __request } from '../core/request';\n\nexport class UserEnterpriseRelationsService {\n /**\n * Get a list of all user-enterprise relations for the specified user. Required scope: apiUsers\n * @param userId\n * @param relationKind Optional, relation kind filter\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsUserEnterpriseRelations OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsGet(\n userId: string,\n relationKind?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/relations/ue/user/${userId}`,\n query: {\n relationKind: relationKind,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a user-enterprise relation for the specified user.\n * Required scope: apiUsers.w\n * @param userId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsPostCreateUserEnterpriseRelation(\n userId: string,\n value: FmsUserEnterpriseRelationCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/relations/ue/user/${userId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete all user-enterprise relations for the specified user.\n * Required scope: apiUsers.w\n * @param userId\n * @returns any OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsDeleteUserEnterpriseRelationsByUserId(userId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/relations/ue/user/${userId}`,\n });\n return result.body;\n }\n\n /**\n * Get a list of all user-enterprise relations for the specified enterprise. Required scope: apiUsers\n * @param enterpriseId\n * @param relationKind Optional, relation kind filter.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsUserEnterpriseRelations OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsGetUserEnterpriseRelationsByEnterpriseId(\n enterpriseId: number,\n relationKind?: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/relations/ue/enterprise/${enterpriseId}`,\n query: {\n relationKind: relationKind,\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Delete all user-enterprise relations for the specified enterprise.\n * Required scope: apiUsers.w\n * @param enterpriseId\n * @returns any OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsDeleteUserEnterpriseRelationsByEnterpriseId(\n enterpriseId: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/relations/ue/enterprise/${enterpriseId}`,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified relation.\n * Required scope: apiUsers\n * @param relationId\n * @returns FmsUserEnterpriseRelation OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsGetUserEnterpriseRelation(\n relationId: string,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/relations/ue/${relationId}`,\n });\n return result.body;\n }\n\n /**\n * Update user-enterprise relation settings. Required scope: apiUsers.w\n * @param relationId\n * @param value User-enterprise relation settings.\n * @returns any OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsUpdateUserEnterpriseRelation(\n relationId: string,\n value: FmsUserEnterpriseRelationSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/relations/ue/${relationId}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete the specified user-enterprise relation.\n * Required scope: apiUsers.w\n * @param relationId\n * @returns any OK\n * @throws ApiError\n */\n public static async userEnterpriseRelationsDeleteUserEnterpriseRelation(relationId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/relations/ue/${relationId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { FmsCheck } from '../models/FmsCheck';\nimport type { FmsCheckResult } from '../models/FmsCheckResult';\nimport type { FmsImpersonationInfo } from '../models/FmsImpersonationInfo';\nimport type { FmsMapUsers } from '../models/FmsMapUsers';\nimport type { FmsPassword } from '../models/FmsPassword';\nimport type { FmsProperties } from '../models/FmsProperties';\nimport type { FmsRoles } from '../models/FmsRoles';\nimport type { FmsSearch } from '../models/FmsSearch';\nimport type { FmsSmsConfirmationAction } from '../models/FmsSmsConfirmationAction';\nimport type { FmsToken } from '../models/FmsToken';\nimport type { FmsUserAction } from '../models/FmsUserAction';\nimport type { FmsUserApplications } from '../models/FmsUserApplications';\nimport type { FmsUserCreate } from '../models/FmsUserCreate';\nimport type { FmsUserDetails } from '../models/FmsUserDetails';\nimport type { FmsUserDetailsConfigurations } from '../models/FmsUserDetailsConfigurations';\nimport type { FmsUserDisable } from '../models/FmsUserDisable';\nimport type { FmsUserFeedback } from '../models/FmsUserFeedback';\nimport type { FmsUserMessage } from '../models/FmsUserMessage';\nimport type { FmsUserRoles } from '../models/FmsUserRoles';\nimport type { FmsUsers } from '../models/FmsUsers';\nimport type { FmsUserSettings } from '../models/FmsUserSettings';\nimport { request as __request } from '../core/request';\n\nexport class UsersService {\n /**\n * Get a list of all users. Required scope: apiUsers\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsUsers OK\n * @throws ApiError\n */\n public static async usersGet(page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n return result.body;\n }\n\n /**\n * Create a user.\n * Required scope: apiUsers.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostCreateUser(value: FmsUserCreate): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Get a list of all users by UserIds. Required scope: apiUsers\n * @param ids The user ids.\n * @param page Optional, the result page number.\n * @param pageSize Optional, the number of records to return per page.\n * @returns FmsUsers OK\n * @throws ApiError\n */\n public static async usersGet1(ids: Array, page?: number, pageSize?: number): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/ids`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n body: ids,\n });\n return result.body;\n }\n\n /**\n * Get the details of the specified user.\n * Required scope: apiUsers\n * @param id User id\n * @returns FmsUserDetails OK\n * @throws ApiError\n */\n public static async usersGet2(id: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users/${id}`,\n });\n return result.body;\n }\n\n /**\n * Update user settings. Required scope: apiUsers.w\n * @param id User id\n * @param value User settings\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPut(id: string, value: FmsUserSettings): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${id}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete a user.\n * Required scope: apiUsers.w\n * @param id User id\n * @returns any OK\n * @throws ApiError\n */\n public static async usersDeleteUser(id: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/users/${id}`,\n });\n return result.body;\n }\n\n /**\n * Find a user.\n * Required scope: apiUsers\n * @param nameOrEmail\n * @returns FmsUserDetails OK\n * @throws ApiError\n */\n public static async usersFindUser(nameOrEmail: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users/find/${nameOrEmail}`,\n });\n return result.body;\n }\n\n /**\n * Find a user and check the supplied password.\n * Required scope: apiUsers\n * @param nameOrEmail\n * @param password\n * @returns FmsUserDetails OK\n * @throws ApiError\n */\n public static async usersFindUser1(nameOrEmail: string, password: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/find/${nameOrEmail}`,\n body: password,\n });\n return result.body;\n }\n\n /**\n * Get the User Applications.\n * Required scope: apiUsers\n * @param id User id\n * @returns FmsUserApplications OK\n * @throws ApiError\n */\n public static async usersGetUserApplications(id: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users/${id}/applications`,\n });\n return result.body;\n }\n\n /**\n * Update user granted applications. Required scope: apiUsers.w\n * @param id User id\n * @param value User Applications\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPutUserApplications(id: string, value: Array): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${id}/applications`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Create roles if not exist.\n * Required scope: apiUsers.w\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostCreateRolesIfNotExist(value: FmsRoles): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/roles`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Checks if a username is available.\n * Required scope: -\n * @param check\n * @returns any OK\n * @throws ApiError\n */\n public static async usersGetCheckAvailable(check: FmsCheck): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/check/available`,\n body: check,\n });\n return result.body;\n }\n\n /**\n * Required scope: apiUsers.w\n * @param id User id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPut1(id: string, value: FmsUserDisable): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${id}/disable`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Update user roles. Required scope: apiUsers.w\n * \n * Currently the roles allowed are:\n * Viewer, Operator, Service, MasterUser, PayingUser, Dealer, Distributor\n * \n * @param id User id\n * @param value User Roles\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPutUserRoles(id: string, value: FmsUserRoles): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${id}/roles`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Update User properties. Required scope: apiUsers.w\n * @param id User Id or user name\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPutUserProperties(id: string, value: FmsProperties): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${id}/properties`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Update User properties. Required scope: apiUsers.w\n * @param id User Id or user name\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPutUserProperties1(id: string, value: FmsProperties): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/properties`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Delete User property. Required scope: apiUsers.w\n * @param id User Id or user name\n * @param propertyName Name of the property.\n * @returns any OK\n * @throws ApiError\n */\n public static async usersDeleteUserProperty(id: string, propertyName: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/users/${id}/properties/${propertyName}`,\n });\n return result.body;\n }\n\n /**\n * Sends a confirmation email to the user.\n * Required scope: apiUsers.w (anonymous)\n * \n * The CallbackFormatString must contain a tag {code} that will be replaced with the confirmation code.\n * Example: \"http://myapplicatio/account/ConfirmEmail?code={code}\"\n * \n * @param id User Id or user name\n * @param confirmation Required info for the confirmation\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendConfirmationEmail(id: string, confirmation: FmsUserAction): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/confirmation/email/send`,\n body: confirmation,\n });\n return result.body;\n }\n\n /**\n * @deprecated\n * Confirms an email adres of a user by the generated code.\n * Required scope: - (anonymous)\n * Deprecated, use endpoint 'api/v1/users/confirmation/email/{code}'.\n * @param userId User id\n * @param code Confirmation code\n * @returns any OK\n * @throws ApiError\n */\n public static async usersConfirmationEmail(userId: string, code: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/confirmation/email/${code}`,\n });\n return result.body;\n }\n\n /**\n * Confirms an email adres of a user by the generated code.\n * Required scope: - (anonymous)\n * @param code Confirmation code\n * @returns any OK\n * @throws ApiError\n */\n public static async usersConfirmEmail(code: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/confirmation/email/${code}`,\n });\n return result.body;\n }\n\n /**\n * Extracts and returns the userId from the provided code.\n * Required scope: - (anonymous)\n * @param code Confirmation code\n * @returns string OK\n * @throws ApiError\n */\n public static async usersUserIdFromConfirmEmailCodeAsync(code: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/confirmation/email/${code}/extract/userid`,\n });\n return result.body;\n }\n\n /**\n * Sends a confirmation sms to the user.\n * Required scope: apiUsers.w\n * @param id User Id or user name\n * @param confirmation Required info for the confirmation\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendConfirmationSms(id: string, confirmation: FmsSmsConfirmationAction): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/confirmation/sms/send`,\n body: confirmation,\n });\n return result.body;\n }\n\n /**\n * Verify the code is valid for a specific user and a specific phone number.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param code Confirmation code\n * @param confirmation\n * @returns FmsCheckResult OK\n * @throws ApiError\n */\n public static async usersConfirmationSmsVerifyToken(\n userId: string,\n code: string,\n confirmation: FmsSmsConfirmationAction,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/confirmation/sms/verify/${code}`,\n body: confirmation,\n });\n return result.body;\n }\n\n /**\n * Confirms a sms phonenumber of a user by the generated code.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param code Confirmation code\n * @param confirmation\n * @returns any OK\n * @throws ApiError\n */\n public static async usersConfirmationSms(\n userId: string,\n code: string,\n confirmation: FmsSmsConfirmationAction,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/confirmation/sms/${code}`,\n body: confirmation,\n });\n return result.body;\n }\n\n /**\n * Sends a message to the user by email.\n * Required scope: apiUsers.w\n * @param id User Id or user name\n * @param message Required info for the message\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendMessageEmail(id: string, message: FmsUserMessage): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/msg/email/send`,\n body: message,\n });\n return result.body;\n }\n\n /**\n * Sends a sms to the user.\n * Required scope: apiUsers.w\n * \n * The Subject is ignored.\n * \n * @param id User Id or user name\n * @param message Required info for the message\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendMessageSms(id: string, message: FmsUserMessage): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/msg/sms/send`,\n body: message,\n });\n return result.body;\n }\n\n /**\n * Process feedback from a user.\n * Required scope: apiUsers.w\n * @param id User Id or user name\n * @param message Required feedback message\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostFeedback(id: string, message: FmsUserFeedback): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/feedback`,\n body: message,\n });\n return result.body;\n }\n\n /**\n * @deprecated\n * Sends a password reset email to the user.\n * Required scope: - (anonymous)\n * Deprecated, use endpoint 'api/v1/users/password/reset/send'.\n * The CallbackFormatString must contain one {code} that will be replaced with the reset code.\n * Example: \"http://myapplication/account/ResetPassword/?code={code}\"\n * \n * @param id User Id or user name\n * @param action Required info for the action\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendPasswordResetEmail(id: string, action: FmsUserAction): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/password/reset/send`,\n body: action,\n });\n return result.body;\n }\n\n /**\n * Sends a password reset email to the user.\n * Required scope: - (anonymous)\n * \n * The CallbackFormatString must contain a tag {code} that will be replaced with the reset code.\n * Example: \"http://myapplication/account/ResetPassword?code={code}\"\n * \n * @param action Required info for the action\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendPasswordResetEmail1(action: FmsUserAction): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/password/reset/send`,\n body: action,\n });\n return result.body;\n }\n\n /**\n * @deprecated\n * Resets a user's password.\n * Required scope: - (anonymous)\n * Deprecated, use endpoint 'api/v1/users/password/reset/{code}'.\n * @param userId User id\n * @param code Reset code\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersResetPassword(userId: string, code: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/password/reset/${code}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Resets a user's password.\n * Required scope: - (anonymous)\n * @param code Reset code\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersResetPassword1(code: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/password/reset/${code}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Resets a user's password without the need for a confirmation code. This is for support services and should be used with care.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersResetPasswordSupport(userId: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/password/reset/support`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Change a user's password.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersChangePassword(userId: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/users/${userId}/password`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Add a password to a user account.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersAddPassword(userId: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/password`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Check a user's password.\n * Required scope: apiUsers.w\n * @param userId User id\n * @param value\n * @returns FmsCheckResult OK\n * @throws ApiError\n */\n public static async usersCheckPassword(userId: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/password/check`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Sends an invitation email to the user.\n * Required scope: apiUsers.w\n * \n * The CallbackFormatString must contain: {userId} that is replaced with the user Id and {code} that is replaced with the code.\n * Example: \"http://myapplicatio/account/invitation/{userId}?code={code}\"\n * \n * @param id User Id or user name\n * @param action Required info for the action\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostSendUserInvitationEmail(id: string, action: FmsUserAction): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/invitation/send`,\n body: action,\n });\n return result.body;\n }\n\n /**\n * @deprecated\n * Add a user password only if one does not already exist.\n * Required scope: - (anonymous)\n * @param userId User id\n * @param code Invitation code\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostUserInvitationAddPassword(\n userId: string,\n code: string,\n value: FmsPassword,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/invitation/${code}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Add a user password only if one does not already exist.\n * Required scope: - (anonymous)\n * @param code Invitation code\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostUserInvitationAddPasswordFromCode(code: string, value: FmsPassword): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/password/invitation/${code}`,\n body: value,\n });\n return result.body;\n }\n\n /**\n * Extracts and returns the userId from the provided code.\n * Required scope: - (anonymous)\n * @param code Add password invitation code\n * @returns string OK\n * @throws ApiError\n */\n public static async usersUserIdFromAddPasswordInvitationCodeAsync(code: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/password/invitation/${code}/extract/userid`,\n });\n return result.body;\n }\n\n /**\n * Map a configuration to a specific user.\n * Required scope: apiUsers.w\n * @param id User id\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostMapping(id: string, pcellId: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${id}/map/configuration/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Map a configuration from a specific user.\n * Required scope: apiUsers.w\n * @param id User id\n * @param pcellId Configuration id\n * @returns any OK\n * @throws ApiError\n */\n public static async usersDeleteMapping(id: string, pcellId: string): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/users/${id}/map/configuration/${pcellId}`,\n });\n return result.body;\n }\n\n /**\n * Map a configuration to a list of users.\n * Required scope: apiUsers.w\n * @param pcellId Configuration id\n * @param mapping Mapping info with user ids.\n * @returns any OK\n * @throws ApiError\n */\n public static async usersPostMapUsers(pcellId: string, mapping: FmsMapUsers): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/map/configuration/${pcellId}`,\n body: mapping,\n });\n return result.body;\n }\n\n /**\n * Get a list of all configurations that are mapped to a specific user.\n * Required scope: apiUsers\n * @param id User id\n * @returns FmsUserDetailsConfigurations OK\n * @throws ApiError\n */\n public static async usersGetUserConfigurations(id: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users/${id}/configurations`,\n });\n return result.body;\n }\n\n /**\n * Required scope: apiUsers\n * @param search\n * @returns FmsUsers OK\n * @throws ApiError\n */\n public static async usersGetSearchUsers(search: FmsSearch): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/search`,\n body: search,\n });\n return result.body;\n }\n\n /**\n * Generate an impersonation token for the specified user.\n * Required scope: apiUsers.w\n * @param userId User id\n * @returns FmsToken OK\n * @throws ApiError\n */\n public static async usersGenerateImpersonationTokenAsync(userId: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/impersonation/token`,\n });\n return result.body;\n }\n\n /**\n * Validates an impersonation token.\n * Required scope: - (anonymous)\n * @param token The token\n * @returns FmsImpersonationInfo OK\n * @throws ApiError\n */\n public static async usersValidateImpersonationTokenAsync(token: string): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/users/impersonation/token/${token}`,\n });\n return result.body;\n }\n\n /**\n * Move a user to another Enterprise. Required scope: apiUsers.w\n * @param userId User id of the user to move.\n * @param enterpriseId Enterpise Id to move the user to.\n * @returns any OK\n * @throws ApiError\n */\n public static async usersMoveUserToEnterprise(userId: string, enterpriseId: string): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/users/${userId}/moveto/${enterpriseId}`,\n });\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { KpVisitReportCreate } from '../models/KpVisitReportCreate';\nimport type { KpVisitReports } from '../models/KpVisitReports';\nimport type { KpVisitReport } from '../models/KpVisitReport';\nimport type { KpVisitReportSettings } from '../models/KpVisitReportSettings';\n\nimport { request as __request } from '../core/request';\n\nexport class VisitReportsService {\n /**\n * Get a list of all visit reports by department and date from/to. Required scope: apiDepartments\n * @param pcellId\n * @param departmentId\n * @param start Start datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param end End datetime. A datetime pattern defined by the ISO-8601 standard. This is also known as the ‘sortable time format’. Example: 2008-04-10T06:30:00. See: http://en.wikipedia.org/wiki/ISO_8601\n * @param page\n * @param pageSize\n * @returns KpVisitReports OK\n * @throws ApiError\n */\n public static async visitReportsGetVisitReports(\n pcellId: string,\n departmentId: string,\n start: string,\n end: string,\n page?: number,\n pageSize?: number,\n ): Promise {\n const result = await __request({\n method: 'GET',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/visitreports/from/${start}/to/${end}`,\n query: {\n page: page,\n pageSize: pageSize,\n },\n });\n\n return result.body;\n }\n\n /**\n * Create a Department Visit Report.\n * Required scope: apiDepartments.w\n * @param pcellId\n * @param departmentId\n * @param value\n * @returns any OK\n * @throws ApiError\n */\n public static async visitReportsPostCreateVisitReport(\n pcellId: string,\n departmentId: string,\n value: KpVisitReportCreate,\n ): Promise {\n const result = await __request({\n method: 'POST',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/visitreports`,\n body: value,\n });\n\n return result.body;\n }\n\n public static async visitReportsUpdateVisitReport(\n pcellId: string,\n departmentId: string,\n year: number,\n week: number,\n value: KpVisitReportSettings,\n ): Promise {\n const result = await __request({\n method: 'PUT',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/visitreports/year/${year}/week/${week}`,\n body: value,\n });\n\n return result.body;\n }\n\n public static async visitReportsDeleteDepartment(\n pcellId: string,\n departmentId: string,\n year: number,\n week: number,\n ): Promise {\n const result = await __request({\n method: 'DELETE',\n path: `/api/v1/locations/${pcellId}/departments/${departmentId}/visitreports/year/${year}/week/${week}`,\n });\n\n return result.body;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { ApiRequestOptions } from './ApiRequestOptions';\nimport type { ApiResult } from './ApiResult';\n\nexport class ApiError extends Error {\n public readonly url: string;\n public readonly status: number;\n public readonly statusText: string;\n public readonly body: any;\n public readonly request: ApiRequestOptions;\n\n constructor(request: ApiRequestOptions, response: ApiResult, message: string) {\n super(message);\n\n this.name = 'ApiError';\n this.url = response.url;\n this.status = response.status;\n this.statusText = response.statusText;\n this.body = response.body;\n this.request = request;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nexport class CancelError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'CancelError';\n }\n\n public get isCancelled(): boolean {\n return true;\n }\n}\n\nexport interface OnCancel {\n readonly isResolved: boolean;\n readonly isRejected: boolean;\n readonly isCancelled: boolean;\n\n (cancelHandler: () => void): void;\n}\n\nexport class CancelablePromise implements Promise {\n readonly [Symbol.toStringTag]!: string;\n\n private _isResolved: boolean;\n private _isRejected: boolean;\n private _isCancelled: boolean;\n private readonly _cancelHandlers: (() => void)[];\n private readonly _promise: Promise;\n private _resolve?: (value: T | PromiseLike) => void;\n private _reject?: (reason?: any) => void;\n\n constructor(\n executor: (\n resolve: (value: T | PromiseLike) => void,\n reject: (reason?: any) => void,\n onCancel: OnCancel,\n ) => void,\n ) {\n this._isResolved = false;\n this._isRejected = false;\n this._isCancelled = false;\n this._cancelHandlers = [];\n this._promise = new Promise((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n\n const onResolve = (value: T | PromiseLike): void => {\n if (this._isResolved || this._isRejected || this._isCancelled) {\n return;\n }\n this._isResolved = true;\n this._resolve?.(value);\n };\n\n const onReject = (reason?: any): void => {\n if (this._isResolved || this._isRejected || this._isCancelled) {\n return;\n }\n this._isRejected = true;\n this._reject?.(reason);\n };\n\n const onCancel = (cancelHandler: () => void): void => {\n if (this._isResolved || this._isRejected || this._isCancelled) {\n return;\n }\n this._cancelHandlers.push(cancelHandler);\n };\n\n Object.defineProperty(onCancel, 'isResolved', {\n get: (): boolean => this._isResolved,\n });\n\n Object.defineProperty(onCancel, 'isRejected', {\n get: (): boolean => this._isRejected,\n });\n\n Object.defineProperty(onCancel, 'isCancelled', {\n get: (): boolean => this._isCancelled,\n });\n\n return executor(onResolve, onReject, onCancel as OnCancel);\n });\n }\n\n public then(\n onFulfilled?: ((value: T) => TResult1 | PromiseLike) | null,\n onRejected?: ((reason: any) => TResult2 | PromiseLike) | null,\n ): Promise {\n return this._promise.then(onFulfilled, onRejected);\n }\n\n public catch(\n onRejected?: ((reason: any) => TResult | PromiseLike) | null,\n ): Promise {\n return this._promise.catch(onRejected);\n }\n\n public finally(onFinally?: (() => void) | null): Promise {\n return this._promise.finally(onFinally);\n }\n\n public cancel(): void {\n if (this._isResolved || this._isRejected || this._isCancelled) {\n return;\n }\n this._isCancelled = true;\n if (this._cancelHandlers.length) {\n try {\n for (const cancelHandler of this._cancelHandlers) {\n cancelHandler();\n }\n } catch (error) {\n console.warn('Cancellation threw an error', error);\n return;\n }\n }\n this._cancelHandlers.length = 0;\n this._reject?.(new CancelError('Request aborted'));\n }\n\n public get isCancelled(): boolean {\n return this._isCancelled;\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { ApiRequestOptions } from './ApiRequestOptions';\n\ntype Resolver = (options: ApiRequestOptions) => Promise;\ntype Headers = Record;\n\nexport type OpenAPIConfig = {\n BASE: string;\n VERSION: string;\n WITH_CREDENTIALS: boolean;\n CREDENTIALS: 'include' | 'omit' | 'same-origin';\n TOKEN?: string | Resolver;\n USERNAME?: string | Resolver;\n PASSWORD?: string | Resolver;\n HEADERS?: Headers | Resolver;\n ENCODE_PATH?: (path: string) => string;\n};\n\nexport const OpenAPI: OpenAPIConfig = {\n BASE: '',\n VERSION: '1.0',\n WITH_CREDENTIALS: false,\n CREDENTIALS: 'include',\n TOKEN: undefined,\n USERNAME: undefined,\n PASSWORD: undefined,\n HEADERS: undefined,\n ENCODE_PATH: undefined,\n};\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type AddRemoveRelationsDto = {\n ids: Array;\n action: AddRemoveRelationsDto.action;\n};\n\nexport namespace AddRemoveRelationsDto {\n export enum action {\n ADD = 'add',\n REMOVE = 'remove',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { AlertsReportItemDto } from './AlertsReportItemDto';\n\nexport type AlertsReportDataDto = {\n items: Array;\n date: string;\n method: AlertsReportDataDto.method;\n stage: AlertsReportDataDto.stage;\n threshold: number;\n cause: any;\n departmentId: string;\n departmentName: string;\n map: any;\n locationId: string;\n locationName: string;\n scoutableId: string;\n scoutableName: string;\n};\n\nexport namespace AlertsReportDataDto {\n export enum method {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n }\n\n export enum stage {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateDepartmentDto = {\n area: number;\n name: string;\n type: CreateDepartmentDto.type;\n map?: any;\n cropVariety?: string;\n locationId: string;\n};\n\nexport namespace CreateDepartmentDto {\n export enum type {\n INDOOR = 'indoor',\n OUTDOOR = 'outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateEnterpriseDto = {\n unitsSystem: CreateEnterpriseDto.unitsSystem;\n weekNumberingSystem: CreateEnterpriseDto.weekNumberingSystem;\n name: string;\n erpCustomerKey: string;\n street: string;\n houseNumber: string;\n city: string;\n state?: string;\n country: string;\n zip: string;\n yearStart: number;\n weekStart: number;\n};\n\nexport namespace CreateEnterpriseDto {\n export enum unitsSystem {\n SI = 'SI',\n BI = 'BI',\n }\n\n export enum weekNumberingSystem {\n ISO_8601 = 'iso-8601',\n WESTERN_TRADITIONAL = 'western-traditional',\n MIDDLE_EASTERN = 'middle-eastern',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateObservationItemDto = {\n scoutableId: string;\n method: CreateObservationItemDto.method;\n stage: CreateObservationItemDto.stage;\n value?: number;\n};\n\nexport namespace CreateObservationItemDto {\n export enum method {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n }\n\n export enum stage {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateObservationPhotoDto = {\n url: string;\n type: CreateObservationPhotoDto.type;\n capturedAt: string;\n uploadedAt: string;\n};\n\nexport namespace CreateObservationPhotoDto {\n export enum type {\n HORIVER_CARD_HALF_FRONT = 'horiver-card-half-front',\n HORIVER_CARD_HALF_BACK = 'horiver-card-half-back',\n HORIVER_CARD_FULL_FRONT = 'horiver-card-full-front',\n HORIVER_CARD_FULL_BACK = 'horiver-card-full-back',\n NOTE = 'note',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateTeamMemberDto = {\n name: string;\n email: string;\n roleIds: Array;\n language: CreateTeamMemberDto.language;\n enterpriseIds: Array;\n locationIds?: Array;\n};\n\nexport namespace CreateTeamMemberDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type CreateUserDto = {\n name: string;\n email: string;\n language: CreateUserDto.language;\n roleIds: Array;\n};\n\nexport namespace CreateUserDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Enterprise } from './Enterprise';\nimport type { Location } from './Location';\nimport type { ScoutPreferences } from './ScoutPreferences';\n\nexport type Department = {\n id: string;\n area: number;\n name: string;\n type: Department.type;\n map: any;\n cropVariety: string;\n createdAt: string;\n updatedAt: string;\n location: Location;\n locationId: string;\n enterprise: Enterprise;\n enterpriseId: string;\n scoutPreferences: ScoutPreferences;\n};\n\nexport namespace Department {\n export enum type {\n INDOOR = 'indoor',\n OUTDOOR = 'outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Location } from './Location';\nimport type { User } from './User';\n\nexport type Enterprise = {\n id: string;\n name: string;\n erpCustomerKey: string;\n street: string;\n houseNumber: string;\n city: string;\n state: string;\n country: string;\n zip: string;\n unitsSystem: Enterprise.unitsSystem;\n weekNumberingSystem: Enterprise.weekNumberingSystem;\n yearStart: number;\n weekStart: number;\n createdAt: string;\n updatedAt: string;\n users: Array;\n locations: Array;\n};\n\nexport namespace Enterprise {\n export enum unitsSystem {\n SI = 'SI',\n BI = 'BI',\n }\n\n export enum weekNumberingSystem {\n ISO_8601 = 'iso-8601',\n WESTERN_TRADITIONAL = 'western-traditional',\n MIDDLE_EASTERN = 'middle-eastern',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Department } from './Department';\nimport type { Enterprise } from './Enterprise';\nimport type { Location } from './Location';\nimport type { ObservationItem } from './ObservationItem';\nimport type { ObservationPhoto } from './ObservationPhoto';\nimport type { User } from './User';\n\nexport type Observation = {\n id: string;\n date: string;\n source: Observation.source;\n isCardReplaced: boolean;\n position: Array;\n note: string | null;\n createdAt: string;\n updatedAt: string;\n department: Department;\n departmentId: string;\n location: Location;\n locationId: string;\n enterprise: Enterprise;\n enterpriseId: string;\n user: User;\n userId: string;\n scout: User;\n scoutId: string;\n items: Array;\n photos: Array;\n};\n\nexport namespace Observation {\n export enum source {\n MOBILE_APP = 'mobile_app',\n FILE = 'file',\n MANUAL = 'manual',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Observation } from './Observation';\nimport type { Scoutable } from './Scoutable';\n\nexport type ObservationItem = {\n id: string;\n method: ObservationItem.method;\n stage: ObservationItem.stage;\n value: number | null;\n valueFront: number | null;\n valueBack: number | null;\n createdAt: string;\n updatedAt: string;\n scoutable: Scoutable;\n scoutableId: string;\n observation: Observation;\n observationId: string;\n};\n\nexport namespace ObservationItem {\n export enum method {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n }\n\n export enum stage {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport enum ObservationMethods {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Observation } from './Observation';\n\nexport type ObservationPhoto = {\n id: string;\n url: string;\n type: ObservationPhoto.type;\n status: ObservationPhoto.status;\n capturedAt: string;\n uploadedAt: string;\n observation: Observation;\n observationId: string;\n};\n\nexport namespace ObservationPhoto {\n export enum type {\n HORIVER_CARD_HALF_FRONT = 'horiver-card-half-front',\n HORIVER_CARD_HALF_BACK = 'horiver-card-half-back',\n HORIVER_CARD_FULL_FRONT = 'horiver-card-full-front',\n HORIVER_CARD_FULL_BACK = 'horiver-card-full-back',\n NOTE = 'note',\n }\n\n export enum status {\n NEW = 'new',\n PROCESSING = 'processing',\n COUNTED = 'counted',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport enum ScoutableCategories {\n PEST = 'pest',\n BENEFICIAL = 'beneficial',\n DISEASE = 'disease',\n POLLINATION = 'pollination',\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type ScoutableDataDto = {\n id: string;\n icon: string;\n name: string;\n stage: ScoutableDataDto.stage;\n method: ScoutableDataDto.method;\n category: ScoutableDataDto.category;\n key: string;\n};\n\nexport namespace ScoutableDataDto {\n export enum stage {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n }\n\n export enum method {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n }\n\n export enum category {\n PEST = 'pest',\n BENEFICIAL = 'beneficial',\n DISEASE = 'disease',\n POLLINATION = 'pollination',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport enum ScoutableIcons {\n ARACHNID = 'arachnid',\n BACTERIA = 'bacteria',\n CHEMICAL = 'chemical',\n DIPTERA = 'diptera',\n FUNGUS = 'fungus',\n HORIVER_CARD = 'horiver-card',\n LEAF = 'leaf',\n NEMATODE = 'nematode',\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport enum ScoutableStages {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type SignUpBodyDto = {\n email: string;\n name: string;\n language: SignUpBodyDto.language;\n optIn: boolean;\n};\n\nexport namespace SignUpBodyDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Enterprise } from './Enterprise';\nimport type { Location } from './Location';\nimport type { RoleDto } from './RoleDto';\n\nexport type TeamMemberDto = {\n id: string;\n name: string;\n email: string;\n verified: boolean;\n language: TeamMemberDto.language;\n profilePictureUrl: string;\n roles: Array;\n enterprises: Array;\n locations: Array;\n createdAt: string;\n updatedAt: string;\n};\n\nexport namespace TeamMemberDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UpdateDepartmentDto = {\n area?: number;\n name?: string;\n type?: UpdateDepartmentDto.type;\n map?: any;\n cropVariety?: string;\n};\n\nexport namespace UpdateDepartmentDto {\n export enum type {\n INDOOR = 'indoor',\n OUTDOOR = 'outdoor',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UpdateEnterpriseDto = {\n unitsSystem?: UpdateEnterpriseDto.unitsSystem;\n weekNumberingSystem?: UpdateEnterpriseDto.weekNumberingSystem;\n name?: string;\n erpCustomerKey?: string;\n street?: string;\n houseNumber?: string;\n city?: string;\n state?: string;\n country?: string;\n zip?: string;\n yearStart?: number;\n weekStart?: number;\n};\n\nexport namespace UpdateEnterpriseDto {\n export enum unitsSystem {\n SI = 'SI',\n BI = 'BI',\n }\n\n export enum weekNumberingSystem {\n ISO_8601 = 'iso-8601',\n WESTERN_TRADITIONAL = 'western-traditional',\n MIDDLE_EASTERN = 'middle-eastern',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UpdateObservationItemDto = {\n scoutableId: string;\n method: UpdateObservationItemDto.method;\n stage: UpdateObservationItemDto.stage;\n value?: number;\n id?: string;\n};\n\nexport namespace UpdateObservationItemDto {\n export enum method {\n COUNT = 'count',\n INTENSITY = 'intensity',\n PRESENCE = 'presence',\n CARD_COUNT_HALF_DOUBLE = 'card-count-half-double',\n CARD_COUNT_HALF_SINGLE = 'card-count-half-single',\n CARD_COUNT_DOUBLE_SIDED = 'card-count-double-sided',\n CARD_COUNT_SINGLE_SIDED = 'card-count-single-sided',\n }\n\n export enum stage {\n EGG = 'egg',\n LARVA = 'larva',\n PUPA = 'pupa',\n NYMPH = 'nymph',\n ADULT = 'adult',\n POPULATION = 'population',\n UNSPECIFIED = 'unspecified',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UpdateObservationPhotoDto = {\n url: string;\n type: UpdateObservationPhotoDto.type;\n capturedAt: string;\n uploadedAt: string;\n id?: string;\n};\n\nexport namespace UpdateObservationPhotoDto {\n export enum type {\n HORIVER_CARD_HALF_FRONT = 'horiver-card-half-front',\n HORIVER_CARD_HALF_BACK = 'horiver-card-half-back',\n HORIVER_CARD_FULL_FRONT = 'horiver-card-full-front',\n HORIVER_CARD_FULL_BACK = 'horiver-card-full-back',\n NOTE = 'note',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UpdateUserDto = {\n name?: string;\n roleIds?: Array;\n language?: UpdateUserDto.language;\n};\n\nexport namespace UpdateUserDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Enterprise } from './Enterprise';\nimport type { Location } from './Location';\nimport type { UserMetadataDto } from './UserMetadataDto';\n\nexport type User = {\n id: string;\n fronteggId: string;\n name: string;\n email: string;\n verified: boolean;\n profilePictureUrl: string;\n language: User.language;\n metadata: UserMetadataDto;\n createdAt: string;\n updatedAt: string;\n enterprises: Array;\n locations: Array;\n};\n\nexport namespace User {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nimport type { Enterprise } from './Enterprise';\nimport type { PermissionDto } from './PermissionDto';\nimport type { RoleDto } from './RoleDto';\n\nexport type UserDto = {\n id: string;\n fronteggId: string;\n name: string;\n email: string;\n verified: boolean | null;\n profilePictureUrl: string;\n language: UserDto.language;\n roles: Array;\n permissions: Array;\n enterprises: Array;\n createdAt: string;\n updatedAt: string;\n};\n\nexport namespace UserDto {\n export enum language {\n EN = 'EN',\n NL = 'NL',\n PL = 'PL',\n IT = 'IT',\n FR = 'FR',\n ES = 'ES',\n DE = 'DE',\n RU = 'RU',\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\n\nexport type UserMetadataDto = {\n ip: string;\n termsAndConditionsAcceptedTimestamp: string;\n accountCreationMethod: UserMetadataDto.accountCreationMethod;\n optIn: boolean;\n};\n\nexport namespace UserMetadataDto {\n export enum accountCreationMethod {\n ADMIN = 'admin',\n ORGANIZATION = 'organization',\n SELF_SIGN_UP_CREDENTIALS = 'self-sign-up-credentials',\n SELF_SIGN_UP_SOCIAL = 'self-sign-up-social',\n SSO = 'sso',\n }\n}\n","import create from 'zustand';\nimport { persist } from 'zustand/middleware';\n\nimport { AuthResponseDto, OpenAPI, OpenAPIConfig, UserDto } from '@koppert/services';\n\ninterface AuthStore {\n auth?: AuthResponseDto & {\n profile?: UserDto;\n User?: {\n UserName: string;\n };\n };\n setAuth(user: AuthResponseDto & { profile?: UserDto }): void;\n setConfig(apiConfig?: OpenAPIConfig, apiUrl?: string): void;\n reset(): void;\n}\n\nconst initialState = {\n auth: undefined,\n};\n\nexport const useAuth = create()(\n persist(\n (set, get) => ({\n ...initialState,\n setAuth: (data) => {\n const { setConfig } = get();\n\n set(() => ({ auth: data }));\n setConfig();\n },\n setConfig: () => {\n const { auth } = get();\n\n if (auth?.accessToken) {\n OpenAPI.TOKEN = auth.accessToken;\n }\n },\n reset: () => set(initialState),\n }),\n {\n name: 'stores-portal/auth',\n version: 3,\n onRehydrateStorage: () => (state) => {\n // since onRehydrateStorage is fired when resolving this file as a dependency of OpenAPI\n // and OpenAPI is a dependency in setConfig\n // we need to delay the call of setConfig to avoid a circular dependency\n setTimeout(() => {\n state?.setConfig();\n }, 0);\n },\n },\n ),\n);\n","import create from 'zustand';\nimport { persist } from 'zustand/middleware';\n\nimport { Enterprise } from '@koppert/services';\n\ninterface EnterpriseSelectorStore {\n currentEnterprise?: Enterprise;\n currentEnterpriseId: string;\n initialize(enterprises: Enterprise[]): void;\n setEnterprise(enterprise?: Enterprise): void;\n reset(): void;\n}\n\nconst initialState = {\n currentEnterprise: undefined,\n currentEnterpriseId: '',\n};\n\nexport const useEnterpriseSelector = create()(\n persist(\n (set, get) => ({\n ...initialState,\n initialize: (enterprises) => {\n const { currentEnterprise } = get();\n\n const doesExist = currentEnterprise ? enterprises.some((x) => x.id === currentEnterprise.id) : false;\n\n if (doesExist) {\n return;\n }\n\n set({\n currentEnterprise: enterprises[0],\n currentEnterpriseId: enterprises[0].id,\n });\n },\n setEnterprise: (enterprise) => {\n set({\n currentEnterprise: enterprise,\n currentEnterpriseId: enterprise ? enterprise.id : '',\n });\n },\n reset: () => set(initialState),\n }),\n {\n name: 'stores-portal/enterprise-selector',\n version: 2,\n },\n ),\n);\n","import create from 'zustand';\nimport { persist } from 'zustand/middleware';\n\ninterface IsSSOStore {\n isSSO: boolean;\n setIsSSO(isSso: boolean): void;\n}\n\nexport const useIsSSO = create()(\n persist(\n (set) => ({\n isSSO: false,\n setIsSSO: (isSso: boolean): void => {\n set(() => ({ isSSO: isSso }));\n },\n }),\n {\n name: 'stores-portal/is-sso',\n version: 2,\n }\n )\n);\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport { useAuth } from '@koppert/stores';\nimport { ApiError, AuthenticationService, CancelablePromise, OpenAPIConfig } from '../../spec';\nimport { ApiRequestOptions } from '../../spec/core/ApiRequestOptions';\nimport { OnCancel } from '../../spec/core/CancelablePromise';\nimport { ApiResult } from '../../spec/core/ApiResult';\n\nlet counter = 0;\n\nconst isDefined = (value: T | null | undefined): value is Exclude => {\n return value !== undefined && value !== null;\n};\n\nconst isString = (value: any): value is string => {\n return typeof value === 'string';\n};\n\nconst isStringWithValue = (value: any): value is string => {\n return isString(value) && value !== '';\n};\n\nconst isBlob = (value: any): value is Blob => {\n return (\n typeof value === 'object' &&\n typeof value.type === 'string' &&\n typeof value.stream === 'function' &&\n typeof value.arrayBuffer === 'function' &&\n typeof value.constructor === 'function' &&\n typeof value.constructor.name === 'string' &&\n /^(Blob|File)$/.test(value.constructor.name) &&\n /^(Blob|File)$/.test(value[Symbol.toStringTag])\n );\n};\n\nconst isFormData = (value: any): value is FormData => {\n return value instanceof FormData;\n};\n\nconst base64 = (str: string): string => {\n try {\n return btoa(str);\n } catch (err) {\n // @ts-ignore\n return Buffer.from(str).toString('base64');\n }\n};\n\nconst getQueryString = (params: Record): string => {\n const qs: string[] = [];\n\n const append = (key: string, value: any) => {\n qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);\n };\n\n const process = (key: string, value: any) => {\n if (isDefined(value)) {\n if (Array.isArray(value)) {\n value.forEach((v) => {\n process(key, v);\n });\n } else if (typeof value === 'object') {\n Object.entries(value).forEach(([k, v]) => {\n process(`${key}[${k}]`, v);\n });\n } else {\n append(key, value);\n }\n }\n };\n\n Object.entries(params).forEach(([key, value]) => {\n process(key, value);\n });\n\n if (qs.length > 0) {\n return `?${qs.join('&')}`;\n }\n\n return '';\n};\n\nconst getUrl = (config: OpenAPIConfig, options: ApiRequestOptions): string => {\n const encoder = config.ENCODE_PATH || encodeURI;\n\n const path = options.url\n .replace('{api-version}', config.VERSION)\n .replace(/{(.*?)}/g, (substring: string, group: string) => {\n if (options.path?.hasOwnProperty(group)) {\n return encoder(String(options.path[group]));\n }\n return substring;\n });\n\n const url = `${config.BASE}${path}`;\n if (options.query) {\n return `${url}${getQueryString(options.query)}`;\n }\n return url;\n};\n\nconst getFormData = (options: ApiRequestOptions): FormData | undefined => {\n if (options.formData) {\n const formData = new FormData();\n\n const process = (key: string, value: any) => {\n if (isString(value) || isBlob(value)) {\n formData.append(key, value);\n } else {\n formData.append(key, JSON.stringify(value));\n }\n };\n\n Object.entries(options.formData)\n .filter(([_, value]) => isDefined(value))\n .forEach(([key, value]) => {\n if (Array.isArray(value)) {\n value.forEach((v) => process(key, v));\n } else {\n process(key, value);\n }\n });\n\n return formData;\n }\n return undefined;\n};\n\ntype Resolver = (options: ApiRequestOptions) => Promise;\n\nconst resolve = async (options: ApiRequestOptions, resolver?: T | Resolver): Promise => {\n if (typeof resolver === 'function') {\n return (resolver as Resolver)(options);\n }\n return resolver;\n};\n\nconst getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions): Promise => {\n const token = await resolve(options, config.TOKEN);\n const username = await resolve(options, config.USERNAME);\n const password = await resolve(options, config.PASSWORD);\n const additionalHeaders = await resolve(options, config.HEADERS);\n\n const headers = Object.entries({\n Accept: 'application/json',\n ...additionalHeaders,\n ...options.headers,\n })\n .filter(([_, value]) => isDefined(value))\n .reduce(\n (headers, [key, value]) => ({\n ...headers,\n [key]: String(value),\n }),\n {} as Record,\n );\n\n if (isStringWithValue(token)) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n if (isStringWithValue(username) && isStringWithValue(password)) {\n const credentials = base64(`${username}:${password}`);\n headers['Authorization'] = `Basic ${credentials}`;\n }\n\n if (options.body) {\n if (options.mediaType) {\n headers['Content-Type'] = options.mediaType;\n } else if (isBlob(options.body)) {\n headers['Content-Type'] = options.body.type || 'application/octet-stream';\n } else if (isString(options.body)) {\n headers['Content-Type'] = 'text/plain';\n } else if (!isFormData(options.body)) {\n headers['Content-Type'] = 'application/json';\n }\n }\n\n return new Headers(headers);\n};\n\nconst getRequestBody = (options: ApiRequestOptions): any => {\n if (options.body) {\n if (options.mediaType?.includes('/json')) {\n return JSON.stringify(options.body);\n } else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {\n return options.body;\n } else {\n return JSON.stringify(options.body);\n }\n }\n return undefined;\n};\n\nexport const sendRequest = async (\n config: OpenAPIConfig,\n options: ApiRequestOptions,\n url: string,\n body: any,\n formData: FormData | undefined,\n headers: Headers,\n onCancel: OnCancel,\n): Promise => {\n const controller = new AbortController();\n\n const request: RequestInit = {\n headers,\n body: body ?? formData,\n method: options.method,\n signal: controller.signal,\n };\n\n if (config.WITH_CREDENTIALS) {\n request.credentials = config.CREDENTIALS;\n }\n\n onCancel(() => controller.abort());\n\n return await fetch(url, request);\n};\n\nconst getResponseHeader = (response: Response, responseHeader?: string): string | undefined => {\n if (responseHeader) {\n const content = response.headers.get(responseHeader);\n if (isString(content)) {\n return content;\n }\n }\n return undefined;\n};\n\nconst getResponseBody = async (response: Response): Promise => {\n if (response.status !== 204) {\n try {\n const contentType = response.headers.get('Content-Type');\n if (contentType) {\n const isJSON = contentType.toLowerCase().startsWith('application/json');\n if (isJSON) {\n return await response.json();\n } else {\n return await response.text();\n }\n }\n } catch (error) {\n console.error(error);\n }\n }\n return undefined;\n};\n\nconst catchErrorCodes = async (options: ApiRequestOptions, result: ApiResult): Promise => {\n const errors: Record = {\n 400: 'Bad Request',\n 401: 'Unauthorized',\n 403: 'Forbidden',\n 404: 'Not Found',\n 500: 'Internal Server Error',\n 502: 'Bad Gateway',\n 503: 'Service Unavailable',\n ...options.errors,\n };\n\n const error = errors[result.status];\n\n if (error) {\n if (result.body?.metadata[0]?.translationCode == 'TOKEN_REVOKED') {\n await handleTokenRevoked(result);\n }\n\n if (result.body?.metadata[0]?.translationCode == 'TOKEN_EXPIRED') {\n await handleTokenExpired(result);\n }\n\n throw new ApiError(options, result, error);\n }\n\n if (!result.ok && result.body?.metadata[0]?.translationCode) {\n throw new ApiError(options, result, 'Translated Error');\n }\n\n if (!result.ok) {\n throw new ApiError(options, result, 'Generic Error');\n }\n};\n\n/**\n * Request method\n * @param config The OpenAPI configuration object\n * @param options The request options from the service\n * @returns CancelablePromise\n * @throws ApiError\n */\nexport const request = (config: OpenAPIConfig, options: ApiRequestOptions): CancelablePromise => {\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n try {\n const url = getUrl(config, options);\n const formData = getFormData(options);\n const body = getRequestBody(options);\n const headers = await getHeaders(config, options);\n\n if (!onCancel.isCancelled) {\n const response = await sendRequest(config, options, url, body, formData, headers, onCancel);\n const responseBody = await getResponseBody(response);\n const responseHeader = getResponseHeader(response, options.responseHeader);\n\n const result: ApiResult = {\n url,\n ok: response.ok,\n status: response.status,\n statusText: response.statusText,\n body: responseHeader ?? responseBody,\n };\n\n await catchErrorCodes(options, result);\n\n resolve(result.body);\n }\n } catch (error) {\n reject(error);\n }\n });\n};\n\nconst handleTokenRevoked = async (result: ApiResult) => {\n const refreshToken = useAuth.getState().auth?.refreshToken;\n\n if (refreshToken) {\n const newTokens = await AuthenticationService.refresh({\n requestBody: {\n refreshToken: refreshToken,\n },\n });\n\n useAuth.getState().setAuth({\n accessToken: newTokens.accessToken,\n refreshToken: newTokens.refreshToken,\n expiresIn: newTokens.expiresIn,\n expires: newTokens.expires,\n emailVerified: true,\n });\n }\n};\n\nconst handleTokenExpired = async (result: ApiResult) => {\n // Counter is kind of a hack to prevent unpredicted infinity loop\n // when user state is not predictable\n counter++;\n\n if (counter > 5) {\n counter = 0;\n logOut();\n return;\n }\n\n const refreshToken = useAuth.getState().auth?.refreshToken;\n\n if (!refreshToken) {\n logOut();\n return;\n }\n\n const newTokens = await AuthenticationService.refresh({\n requestBody: {\n refreshToken: refreshToken,\n },\n });\n\n if (!newTokens?.refreshToken) {\n logOut();\n return;\n }\n\n useAuth.getState().setAuth({\n accessToken: newTokens.accessToken,\n refreshToken: newTokens.refreshToken,\n expiresIn: newTokens.expiresIn,\n expires: newTokens.expires,\n emailVerified: true,\n });\n\n counter = 0;\n};\n\nconst logOut = () => {\n useAuth.getState().reset();\n useAuth.persist.clearStorage();\n};\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { AuthResponseDto } from '../models/AuthResponseDto';\nimport type { RefreshTokenBodyDto } from '../models/RefreshTokenBodyDto';\nimport type { SignInBodyDto } from '../models/SignInBodyDto';\nimport type { SignInSsoBodyDto } from '../models/SignInSsoBodyDto';\nimport type { SignInSsoResponseDto } from '../models/SignInSsoResponseDto';\nimport type { SignUpBodyDto } from '../models/SignUpBodyDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class AuthenticationService {\n /**\n * Sign in with local provider, with credentials\n * @returns AuthResponseDto\n * @throws ApiError\n */\n public static signIn({ requestBody }: { requestBody: SignInBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/auth/signin',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Sign up with local provider, with credentials\n * @returns any\n * @throws ApiError\n */\n public static signUp({ requestBody }: { requestBody: SignUpBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/auth/signup',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Sign in with SSO provider\n * @returns SignInSsoResponseDto\n * @throws ApiError\n */\n public static signInSso({ requestBody }: { requestBody: SignInSsoBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/auth/signin/sso',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Sign in with social provider\n * @returns any\n * @throws ApiError\n */\n public static signInSocial({ provider }: { provider: 'facebook' | 'google' | 'microsoft' }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/auth/signin/social',\n query: {\n provider: provider,\n },\n });\n }\n\n /**\n * Refreshes JWT token using a refresh token.\n * @returns AuthResponseDto\n * @throws ApiError\n */\n public static refresh({ requestBody }: { requestBody: RefreshTokenBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/auth/refresh',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Exchanges code to access token\n * @returns AuthResponseDto\n * @throws ApiError\n */\n public static exchangeCode({ code }: { code: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/auth/token',\n query: {\n code: code,\n },\n });\n }\n\n /**\n * Exchanges social provider code to access token\n * @returns AuthResponseDto\n * @throws ApiError\n */\n public static exchangeCodeSocial({\n code,\n state,\n provider,\n }: {\n code: string;\n state: string;\n provider: 'facebook' | 'google' | 'microsoft';\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/auth/social-token',\n query: {\n code: code,\n state: state,\n provider: provider,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { AttachmentsListDto } from '../models/AttachmentsListDto';\nimport type { ConsultantNoteDto } from '../models/ConsultantNoteDto';\nimport type { CreateConsultantNoteDto } from '../models/CreateConsultantNoteDto';\nimport type { DeleteAttachmentsBodyDto } from '../models/DeleteAttachmentsBodyDto';\nimport type { DownloadLinkBodyDto } from '../models/DownloadLinkBodyDto';\nimport type { DownloadLinkResponseDto } from '../models/DownloadLinkResponseDto';\nimport type { FilesUploadDto } from '../models/FilesUploadDto';\nimport type { PaginatedConsultantNotesDto } from '../models/PaginatedConsultantNotesDto';\nimport type { SendNotificationBodyDto } from '../models/SendNotificationBodyDto';\nimport type { UpdateConsultantNoteDto } from '../models/UpdateConsultantNoteDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ConsultantNotesService {\n /**\n * Create new consultant note\n * @returns ConsultantNoteDto\n * @throws ApiError\n */\n public static create({\n xEnterpriseId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n requestBody: CreateConsultantNoteDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/consultant-notes',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of consultant notes\n * @returns PaginatedConsultantNotesDto\n * @throws ApiError\n */\n public static findAll({\n xEnterpriseId,\n page = 1,\n limit = 10,\n sortBy,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n page?: number;\n limit?: number;\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/consultant-notes',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n page: page,\n limit: limit,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific consultant note\n * @returns ConsultantNoteDto\n * @throws ApiError\n */\n public static findOne({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/consultant-notes/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Update a specific consultant note\n * @returns ConsultantNoteDto\n * @throws ApiError\n */\n public static update({\n xEnterpriseId,\n id,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n requestBody: UpdateConsultantNoteDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/consultant-notes/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific consultant note\n * @returns any\n * @throws ApiError\n */\n public static delete({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/consultant-notes/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Send email notification to users\n * @returns any\n * @throws ApiError\n */\n public static sendNotification({\n xEnterpriseId,\n id,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n requestBody: SendNotificationBodyDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/consultant-notes/{id}/send-notification',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a list of attachments for a specific consultant note\n * @returns AttachmentsListDto\n * @throws ApiError\n */\n public static findAll1({\n xEnterpriseId,\n consultantNoteId,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n consultantNoteId: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/consultant-notes/{consultantNoteId}/attachments',\n path: {\n consultantNoteId: consultantNoteId,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Get a temporary link to download consultant note attachment\n * @returns DownloadLinkResponseDto\n * @throws ApiError\n */\n public static getDownloadLink({\n xEnterpriseId,\n consultantNoteId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n consultantNoteId: string;\n requestBody: DownloadLinkBodyDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/consultant-notes/{consultantNoteId}/attachments/download-link',\n path: {\n consultantNoteId: consultantNoteId,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Upload attachments to storage\n * @returns any\n * @throws ApiError\n */\n public static uploadMany({\n xEnterpriseId,\n consultantNoteId,\n formData,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n consultantNoteId: string;\n /**\n * Attachments\n */\n formData: FilesUploadDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/consultant-notes/{consultantNoteId}/attachments/upload',\n path: {\n consultantNoteId: consultantNoteId,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n formData: formData,\n mediaType: 'multipart/form-data',\n });\n }\n\n /**\n * Delete attachments from storage\n * @returns any\n * @throws ApiError\n */\n public static deleteMany({\n xEnterpriseId,\n consultantNoteId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n consultantNoteId: string;\n requestBody: DeleteAttachmentsBodyDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/consultant-notes/{consultantNoteId}/attachments/delete',\n path: {\n consultantNoteId: consultantNoteId,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateDepartmentDto } from '../models/CreateDepartmentDto';\nimport type { Department } from '../models/Department';\nimport type { PaginatedDepartmentsDto } from '../models/PaginatedDepartmentsDto';\nimport type { UpdateDepartmentDto } from '../models/UpdateDepartmentDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class DepartmentsService {\n /**\n * Create new department\n * @returns Department\n * @throws ApiError\n */\n public static create({\n xEnterpriseId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n requestBody: CreateDepartmentDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/departments',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of departments\n * @returns PaginatedDepartmentsDto\n * @throws ApiError\n */\n public static findAll({\n xEnterpriseId,\n locationId,\n enterpriseId,\n page = 1,\n limit = 10,\n name,\n sortBy,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n locationId: string;\n enterpriseId: string;\n page?: number;\n limit?: number;\n name?: string;\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/departments',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n page: page,\n limit: limit,\n locationId: locationId,\n enterpriseId: enterpriseId,\n name: name,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific department\n * @returns Department\n * @throws ApiError\n */\n public static findOne({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/departments/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Update a specific department\n * @returns Department\n * @throws ApiError\n */\n public static update({\n xEnterpriseId,\n id,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n requestBody: UpdateDepartmentDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/departments/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific department\n * @returns any\n * @throws ApiError\n */\n public static delete({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/departments/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { AddRemoveRelationsDto } from '../models/AddRemoveRelationsDto';\nimport type { CreateEnterpriseDto } from '../models/CreateEnterpriseDto';\nimport type { Enterprise } from '../models/Enterprise';\nimport type { ErpEnterpriseDto } from '../models/ErpEnterpriseDto';\nimport type { PaginatedEnterprisesDto } from '../models/PaginatedEnterprisesDto';\nimport type { PaginatedErpEnterpriseDto } from '../models/PaginatedErpEnterpriseDto';\nimport type { UpdateEnterpriseDto } from '../models/UpdateEnterpriseDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class EnterprisesService {\n /**\n * Get a paginated list of erp enterprises\n * @returns PaginatedErpEnterpriseDto\n * @throws ApiError\n */\n public static findErpEnterprises({\n page = 1,\n limit = 10,\n customerSearchQuery,\n }: {\n page?: number;\n limit?: number;\n customerSearchQuery?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/enterprises/erp',\n query: {\n page: page,\n limit: limit,\n customerSearchQuery: customerSearchQuery,\n },\n });\n }\n\n /**\n * Get a specific ERP enterprise\n * @returns ErpEnterpriseDto\n * @throws ApiError\n */\n public static findErpEnterprise({ customerKey }: { customerKey: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/enterprises/erp/{customerKey}',\n path: {\n customerKey: customerKey,\n },\n });\n }\n\n /**\n * Create new enterprise\n * @returns Enterprise\n * @throws ApiError\n */\n public static create({ requestBody }: { requestBody: CreateEnterpriseDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/enterprises',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of enterprises\n * @returns PaginatedEnterprisesDto\n * @throws ApiError\n */\n public static findAll({\n page = 1,\n limit = 10,\n name,\n sortBy,\n excludeRelationByUserId,\n }: {\n page?: number;\n limit?: number;\n name?: string;\n sortBy?: string;\n /**\n * Given a user ID, it will only return enterprises which are not related to the provided user.\n */\n excludeRelationByUserId?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/enterprises',\n query: {\n page: page,\n limit: limit,\n name: name,\n sortBy: sortBy,\n excludeRelationByUserId: excludeRelationByUserId,\n },\n });\n }\n\n /**\n * Add or remove users to a specific enterprise\n * @returns string\n * @throws ApiError\n */\n public static addOrRemoveUsersToEnterprise({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: AddRemoveRelationsDto;\n }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/enterprises/{id}/users',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a specific enterprise\n * @returns Enterprise\n * @throws ApiError\n */\n public static findOne({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/enterprises/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Update a specific enterprise\n * @returns Enterprise\n * @throws ApiError\n */\n public static update({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: UpdateEnterpriseDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/enterprises/{id}',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific enterprise\n * @returns any\n * @throws ApiError\n */\n public static delete({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/enterprises/{id}',\n path: {\n id: id,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateLocationDto } from '../models/CreateLocationDto';\nimport type { LocationResponseDto } from '../models/LocationResponseDto';\nimport type { PaginatedLocationsDto } from '../models/PaginatedLocationsDto';\nimport type { UpdateLocationDto } from '../models/UpdateLocationDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class LocationsService {\n /**\n * Create new location\n * @returns LocationResponseDto\n * @throws ApiError\n */\n public static create({\n xEnterpriseId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n requestBody: CreateLocationDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/locations',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of locations\n * @returns PaginatedLocationsDto\n * @throws ApiError\n */\n public static findAll({\n xEnterpriseId,\n enterpriseId,\n page = 1,\n limit = 10,\n name,\n sortBy,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n enterpriseId: string;\n page?: number;\n limit?: number;\n name?: string;\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/locations',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n page: page,\n limit: limit,\n enterpriseId: enterpriseId,\n name: name,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific location\n * @returns LocationResponseDto\n * @throws ApiError\n */\n public static findOne({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/locations/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Update a specific location\n * @returns LocationResponseDto\n * @throws ApiError\n */\n public static update({\n xEnterpriseId,\n id,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n requestBody: UpdateLocationDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/locations/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific location\n * @returns any\n * @throws ApiError\n */\n public static delete({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/locations/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { PermissionDto } from '../models/PermissionDto';\nimport type { PermissionsCategoriesDto } from '../models/PermissionsCategoriesDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class PermissionsService {\n /**\n * Get list of permission categories\n * @returns PermissionsCategoriesDto\n * @throws ApiError\n */\n public static findAllPermissionsCategories({\n feCategory,\n }: {\n /**\n * If true, it will return only frontegg defined categories\n */\n feCategory?: boolean;\n }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/permissions/categories',\n query: {\n feCategory: feCategory,\n },\n });\n }\n\n /**\n * Get list of all permissions\n * @returns PermissionDto\n * @throws ApiError\n */\n public static findAll(): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/permissions',\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { ActiveIngredient } from '../models/ActiveIngredient';\nimport type { AllDataResponseDto } from '../models/AllDataResponseDto';\nimport type { ApplicationMethod } from '../models/ApplicationMethod';\nimport type { BeneficialEffect } from '../models/BeneficialEffect';\nimport type { EffectCategory } from '../models/EffectCategory';\nimport type { Lifestage } from '../models/Lifestage';\nimport type { Product } from '../models/Product';\nimport type { SyncResponseDto } from '../models/SyncResponseDto';\nimport type { Tradename } from '../models/Tradename';\nimport type { TTContent } from '../models/TTContent';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ProtectService {\n /**\n * Sync Portal DB with Side Effect DB\n * @returns SyncResponseDto\n * @throws ApiError\n */\n public static create(): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/protect/sync',\n });\n }\n\n /**\n * Retrieve all Active Ingredients for current locale\n * @returns ActiveIngredient\n * @throws ApiError\n */\n public static getActiveIngredients({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/active-ingredients/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all Application Methods for current locale\n * @returns ApplicationMethod\n * @throws ApiError\n */\n public static getApplicationMethods({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/application-methods/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all content for current locale\n * @returns TTContent\n * @throws ApiError\n */\n public static getTranslatedContent({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/content/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all Effect Categories for current locale\n * @returns EffectCategory\n * @throws ApiError\n */\n public static getEffectCategories({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/effect-categories/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all Lifestages for current locale\n * @returns Lifestage\n * @throws ApiError\n */\n public static getLifestages({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/lifestages/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all Products for current locale\n * @returns Product\n * @throws ApiError\n */\n public static getProducts({ langId }: { langId: string }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/products/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n\n /**\n * Retrieve all Beneficial Effects\n * @returns BeneficialEffect\n * @throws ApiError\n */\n public static getBeneficialEffects(): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/beneficial-effects',\n });\n }\n\n /**\n * Retrieve all Tradenames\n * @returns Tradename\n * @throws ApiError\n */\n public static getTradenames(): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/tradenames',\n });\n }\n\n /**\n * Retrieve all data\n * @returns AllDataResponseDto\n * @throws ApiError\n */\n public static getAllData({ langId }: { langId: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/protect/all/{langId}',\n path: {\n langId: langId,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { AlertsReportDto } from '../models/AlertsReportDto';\nimport type { AnalysisReportDto } from '../models/AnalysisReportDto';\nimport type { DownloadLinkBodyDto } from '../models/DownloadLinkBodyDto';\nimport type { DownloadLinkResponseDto } from '../models/DownloadLinkResponseDto';\nimport type { OrdersReportResponseDto } from '../models/OrdersReportResponseDto';\nimport type { PaginatedInvoiceDto } from '../models/PaginatedInvoiceDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ReportsService {\n /**\n * Get an alerts report for last 14 days\n * @returns AlertsReportDto\n * @throws ApiError\n */\n public static getAlertsReport({\n xEnterpriseId,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/reports/alerts',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Get an observations analysis report\n * @returns AnalysisReportDto\n * @throws ApiError\n */\n public static getAnalysisReport({\n xEnterpriseId,\n startDate,\n endDate,\n locationId,\n departmentId,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n startDate: string;\n endDate: string;\n locationId: string;\n departmentId: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/reports/analysis',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n startDate: startDate,\n endDate: endDate,\n locationId: locationId,\n departmentId: departmentId,\n },\n });\n }\n\n /**\n * Get orders of a specific enterprise\n * @returns OrdersReportResponseDto\n * @throws ApiError\n */\n public static getOrders({\n xEnterpriseId,\n startDate,\n endDate,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n startDate: string;\n endDate: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/reports/orders',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n startDate: startDate,\n endDate: endDate,\n },\n });\n }\n\n /**\n * Get a paginated list of invoices of a specific enterprise\n * @returns PaginatedInvoiceDto\n * @throws ApiError\n */\n public static getInvoices({\n xEnterpriseId,\n page = 1,\n limit = 10,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n page?: number;\n limit?: number;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/reports/invoices',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n page: page,\n limit: limit,\n },\n });\n }\n\n /**\n * Get a temporary link to download invoice\n * @returns DownloadLinkResponseDto\n * @throws ApiError\n */\n public static getDownloadLink({\n xEnterpriseId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n requestBody: DownloadLinkBodyDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/reports/invoices/download-link',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { RoleDto } from '../models/RoleDto';\nimport type { RolesPermissionsAttachmentBodyDto } from '../models/RolesPermissionsAttachmentBodyDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class RolesService {\n /**\n * Get list of all roles\n * @returns RoleDto\n * @throws ApiError\n */\n public static findAll(): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/roles',\n });\n }\n\n /**\n * Sets permissions to roles completely rewriting existing ones\n * @returns any\n * @throws ApiError\n */\n public static attachPermissionsToRoles({\n requestBody,\n }: {\n requestBody: RolesPermissionsAttachmentBodyDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PUT',\n url: '/api/v1/roles/attach-permissions',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * @returns any\n * @throws ApiError\n */\n public static copyRolesAndPermissions(): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/roles/copy',\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateScoutableDto } from '../models/CreateScoutableDto';\nimport type { PaginatedScoutablesDto } from '../models/PaginatedScoutablesDto';\nimport type { Scoutable } from '../models/Scoutable';\nimport type { UpdateScoutableDto } from '../models/UpdateScoutableDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ScoutablesService {\n /**\n * Create new scoutable\n * @returns Scoutable\n * @throws ApiError\n */\n public static create({ requestBody }: { requestBody: CreateScoutableDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/scoutables',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of scoutables\n * @returns PaginatedScoutablesDto\n * @throws ApiError\n */\n public static findAll({\n page = 1,\n limit = 10,\n name,\n latinName,\n category,\n sortBy,\n }: {\n page?: number;\n limit?: number;\n name?: string;\n latinName?: string;\n category?: 'pest' | 'beneficial' | 'disease' | 'pollination';\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scoutables',\n query: {\n page: page,\n limit: limit,\n name: name,\n latinName: latinName,\n category: category,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific scoutable\n * @returns Scoutable\n * @throws ApiError\n */\n public static findOne({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scoutables/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Update a specific scoutable\n * @returns Scoutable\n * @throws ApiError\n */\n public static update({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: UpdateScoutableDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/scoutables/{id}',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific scoutable\n * @returns any\n * @throws ApiError\n */\n public static delete({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/scoutables/{id}',\n path: {\n id: id,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateScoutPreferencesDto } from '../models/CreateScoutPreferencesDto';\nimport type { PaginatedScoutPreferencesDto } from '../models/PaginatedScoutPreferencesDto';\nimport type { ScoutPreferences } from '../models/ScoutPreferences';\nimport type { UpdateScoutPreferencesDto } from '../models/UpdateScoutPreferencesDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ScoutPreferencesService {\n /**\n * Create new scout preferences\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static create({\n xEnterpriseId,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n requestBody: CreateScoutPreferencesDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/scout-preferences',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get all scout preferences of all departments of an enterprise\n * @returns PaginatedScoutPreferencesDto\n * @throws ApiError\n */\n public static findAll({\n xEnterpriseId,\n page = 1,\n limit = 10,\n name,\n locationId,\n sortBy,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n page?: number;\n limit?: number;\n name?: string;\n locationId?: string;\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scout-preferences',\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n query: {\n page: page,\n limit: limit,\n name: name,\n locationId: locationId,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific scout preferences\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static findOne({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scout-preferences/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n\n /**\n * Update a specific scout preferences\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static update({\n xEnterpriseId,\n id,\n requestBody,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n requestBody: UpdateScoutPreferencesDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/scout-preferences/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific scout preferences\n * @returns any\n * @throws ApiError\n */\n public static delete({\n xEnterpriseId,\n id,\n }: {\n /**\n * Used for checking if user has access to enterprise\n */\n xEnterpriseId: string;\n id: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/scout-preferences/{id}',\n path: {\n id: id,\n },\n headers: {\n 'X-Enterprise-Id': xEnterpriseId,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateScoutPreferencesTemplateDto } from '../models/CreateScoutPreferencesTemplateDto';\nimport type { PaginatedScoutPreferencesTemplatesDto } from '../models/PaginatedScoutPreferencesTemplatesDto';\nimport type { ScoutPreferences } from '../models/ScoutPreferences';\nimport type { UpdateScoutPreferencesTemplateDto } from '../models/UpdateScoutPreferencesTemplateDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class ScoutPreferencesTemplatesService {\n /**\n * Create new scout preferences template\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static create({\n requestBody,\n }: {\n requestBody: CreateScoutPreferencesTemplateDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/scout-preferences-templates',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of scout preferences templates\n * @returns PaginatedScoutPreferencesTemplatesDto\n * @throws ApiError\n */\n public static findAll({\n page = 1,\n limit = 10,\n name,\n sortBy,\n }: {\n page?: number;\n limit?: number;\n name?: string;\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scout-preferences-templates',\n query: {\n page: page,\n limit: limit,\n name: name,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Get a specific scout preferences template\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static findOne({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/scout-preferences-templates/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Update a specific scout preferences template\n * @returns ScoutPreferences\n * @throws ApiError\n */\n public static update({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: UpdateScoutPreferencesTemplateDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/scout-preferences-templates/{id}',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete a specific scout preferences template\n * @returns any\n * @throws ApiError\n */\n public static delete({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/scout-preferences-templates/{id}',\n path: {\n id: id,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { CreateTeamMemberDto } from '../models/CreateTeamMemberDto';\nimport type { PaginatedTeamMemberDto } from '../models/PaginatedTeamMemberDto';\nimport type { TeamMemberDto } from '../models/TeamMemberDto';\nimport type { UpdateTeamMemberDto } from '../models/UpdateTeamMemberDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class TeamMembersService {\n /**\n * Create a new team member\n * @returns TeamMemberDto\n * @throws ApiError\n */\n public static create({ requestBody }: { requestBody: CreateTeamMemberDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/team-members',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of team members\n * @returns PaginatedTeamMemberDto\n * @throws ApiError\n */\n public static findAll({\n page = 1,\n limit = 10,\n name,\n email,\n sortBy,\n }: {\n page?: number;\n limit?: number;\n name?: string;\n email?: string;\n /**\n * name.asc,street.desc\n */\n sortBy?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/team-members',\n query: {\n page: page,\n limit: limit,\n name: name,\n email: email,\n sortBy: sortBy,\n },\n });\n }\n\n /**\n * Find one team member by ID\n * @returns TeamMemberDto\n * @throws ApiError\n */\n public static findOne({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/team-members/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Update specific team member\n * @returns TeamMemberDto\n * @throws ApiError\n */\n public static update({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: UpdateTeamMemberDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/team-members/{id}',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Re-sends invitation email to team member. This deactivates previous email\n * @returns any\n * @throws ApiError\n */\n public static resendInvitation({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/team-members/{id}/resend-invitation',\n path: {\n id: id,\n },\n });\n }\n}\n","/* istanbul ignore file */\n/* tslint:disable */\n/* eslint-disable */\nimport type { AddRemoveRelationsDto } from '../models/AddRemoveRelationsDto';\nimport type { ChangePasswordBodyDto } from '../models/ChangePasswordBodyDto';\nimport type { CreateUserDto } from '../models/CreateUserDto';\nimport type { PaginatedUserDto } from '../models/PaginatedUserDto';\nimport type { ResetPasswordBodyDto } from '../models/ResetPasswordBodyDto';\nimport type { UnlockAccessToEnterpriseDto } from '../models/UnlockAccessToEnterpriseDto';\nimport type { UpdateUserDto } from '../models/UpdateUserDto';\nimport type { UserDto } from '../models/UserDto';\n\nimport type { CancelablePromise } from '../core/CancelablePromise';\nimport { OpenAPI } from '../core/OpenAPI';\nimport { request as __request } from '../core/request';\n\nexport class UsersService {\n /**\n * Create new user\n * @returns UserDto\n * @throws ApiError\n */\n public static create({ requestBody }: { requestBody: CreateUserDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get a paginated list of users\n * @returns PaginatedUserDto\n * @throws ApiError\n */\n public static findAll({\n page = 1,\n limit = 10,\n name,\n email,\n sortBy,\n excludeRelationByEnterpriseId,\n }: {\n page?: number;\n limit?: number;\n name?: string;\n email?: string;\n /**\n * name.asc,street.desc\n */\n sortBy?: string;\n /**\n * Given a enterprise ID, it will only return users which are not related to the provided enterprise.\n */\n excludeRelationByEnterpriseId?: string;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/users',\n query: {\n page: page,\n limit: limit,\n name: name,\n email: email,\n sortBy: sortBy,\n excludeRelationByEnterpriseId: excludeRelationByEnterpriseId,\n },\n });\n }\n\n /**\n * Update the current logged in user profile.\n * @returns UserDto\n * @throws ApiError\n */\n public static updateMe({ requestBody }: { requestBody: UpdateUserDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/users',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Get the current logged in user profile.\n * @returns UserDto\n * @throws ApiError\n */\n public static me(): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/users/me',\n });\n }\n\n /**\n * Find one user by ID or by Frontegg ID\n * @returns UserDto\n * @throws ApiError\n */\n public static findOne({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'GET',\n url: '/api/v1/users/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Update specific user\n * @returns UserDto\n * @throws ApiError\n */\n public static update({ id, requestBody }: { id: string; requestBody: UpdateUserDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/users/{id}',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Delete specific user\n * @returns any\n * @throws ApiError\n */\n public static remove({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'DELETE',\n url: '/api/v1/users/{id}',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Add or remove enterprises to a specific user\n * @returns string\n * @throws ApiError\n */\n public static addOrRemoveEnterprisesToUser({\n id,\n requestBody,\n }: {\n id: string;\n requestBody: AddRemoveRelationsDto;\n }): CancelablePromise> {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users/{id}/enterprises',\n path: {\n id: id,\n },\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Unlocks access to enterprise\n * @returns any\n * @throws ApiError\n */\n public static unlockAccessToEnterprise({\n requestBody,\n }: {\n requestBody: UnlockAccessToEnterpriseDto;\n }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users/unlock-access',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Sets the user to 'verified'. This overrides user email validation.\n * @returns any\n * @throws ApiError\n */\n public static verifyUser({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'PATCH',\n url: '/api/v1/users/{id}/verify',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Re-sends invitation email to user. This deactivates previous email.\n * @returns any\n * @throws ApiError\n */\n public static resendInvitation({ id }: { id: string }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users/{id}/resend-invitation',\n path: {\n id: id,\n },\n });\n }\n\n /**\n * Sends a reset password email to the user\n * @returns any\n * @throws ApiError\n */\n public static resetPassword({ requestBody }: { requestBody: ResetPasswordBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users/reset-password',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n\n /**\n * Changes the password for a logged-in user\n * @returns any\n * @throws ApiError\n */\n public static changePassword({ requestBody }: { requestBody: ChangePasswordBodyDto }): CancelablePromise {\n return __request(OpenAPI, {\n method: 'POST',\n url: '/api/v1/users/change-password',\n body: requestBody,\n mediaType: 'application/json',\n });\n }\n}\n","import {\n QueryClient,\n useMutation,\n UseMutationOptions,\n useQuery,\n useQueryClient,\n UseQueryResult,\n} from '@tanstack/react-query';\n\nimport { PromiseFunction, PureReturnType, SimpleQueryOptions } from './types';\n\nexport const queryFactoryV2 = <\n ServiceFn extends PromiseFunction,\n BuilderOptions,\n DataSelectorReturn,\n ServiceFnParameters extends Parameters[0],\n>(\n fn: ServiceFn,\n builderOptions: BuilderOptions & {\n queryName: string;\n queryOptions?: SimpleQueryOptions;\n dataSelector?: (data?: PureReturnType) => DataSelectorReturn;\n enabledFn?: (arg?: ServiceFnParameters) => boolean;\n },\n) => {\n const { queryName, queryOptions, enabledFn, dataSelector } = builderOptions || {};\n\n const query = (\n args?: ServiceFnParameters,\n options?: SimpleQueryOptions,\n ): BuilderOptions extends { dataSelector: any }\n ? [DataSelectorReturn | undefined, UseQueryResult, unknown>]\n : [PureReturnType | undefined, UseQueryResult, unknown>] => {\n let enabled = true;\n\n if (options?.enabled != null) {\n enabled = options.enabled;\n } else if (enabledFn != null) {\n enabled = enabledFn(args);\n }\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const innerQuery = useQuery, unknown, Awaited, any>({\n enabled,\n queryFn: () => fn(args || {}),\n queryKey: [queryName, args].filter(Boolean),\n select: dataSelector,\n ...queryOptions,\n ...options,\n });\n\n return [innerQuery.data, innerQuery] as any;\n };\n\n query.queryName = queryName;\n\n return query;\n};\n\ntype RefetchQueryReturn = Parameters[] | void;\n\nexport const mutationFactoryV2 =\n (\n fn: ServiceFn,\n builderOptions?: {\n refetchQueries?: (\n data: PureReturnType,\n args: Parameters[0],\n client: QueryClient,\n ) => RefetchQueryReturn | Promise;\n },\n ) =>\n (mutationOptions?: UseMutationOptions, unknown, Parameters[0], unknown>) => {\n const client = useQueryClient();\n\n const onSuccess = mutationOptions?.onSuccess\n ? mutationOptions.onSuccess\n : async (data: any, args: any) => {\n const promises = (await builderOptions?.refetchQueries?.(data, args, client))?.map((refetchAble) => {\n const [queryKey, refetchOptions] = refetchAble;\n\n return client.refetchQueries({ queryKey, ...refetchOptions });\n });\n\n if (promises) {\n await Promise.all(promises);\n }\n };\n\n const mutation = useMutation, unknown, Parameters[0], unknown>({\n mutationFn: fn,\n onSuccess,\n ...mutationOptions,\n });\n\n return [mutation.mutateAsync, mutation] as const;\n };\n","import { ConsultantNotesService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useConsultantNotes = queryFactoryV2(ConsultantNotesService.findAll, {\n queryName: 'ConsultantNotesService.findAll',\n});\n\nexport const useConsultantNote = queryFactoryV2(ConsultantNotesService.findOne, {\n queryName: 'ConsultantNotesService.findOne',\n});\n\nexport const useCreateConsultantNote = mutationFactoryV2(ConsultantNotesService.create, {\n refetchQueries: () => [[[useConsultantNotes.queryName]]],\n});\n\nexport const useUpdateConsultantNote = mutationFactoryV2(ConsultantNotesService.update, {\n refetchQueries: (_, { id }) => [[[useConsultantNotes.queryName]], [[useConsultantNote.queryName, { id }]]],\n});\n\nexport const useDeleteConsultantNote = mutationFactoryV2(ConsultantNotesService.delete, {\n refetchQueries: () => [[[useConsultantNotes.queryName]]],\n});\n\nexport const useAttachments = queryFactoryV2(ConsultantNotesService.findAll1, {\n queryName: 'ConsultantNotesService.attachments',\n});\n\nexport const useUploadAttachments = mutationFactoryV2(ConsultantNotesService.uploadMany, {\n refetchQueries: (_, { consultantNoteId }) => [[[useAttachments.queryName, { consultantNoteId }]]],\n});\n\nexport const useSendConsultantNotesNotification = mutationFactoryV2(ConsultantNotesService.sendNotification);\n\nexport const useCreateFileDownloadLink = mutationFactoryV2(ConsultantNotesService.getDownloadLink);\n\nexport const useRemoveAttachments = mutationFactoryV2(ConsultantNotesService.deleteMany, {\n refetchQueries: (_, { consultantNoteId }) => [[[useAttachments.queryName, { consultantNoteId }]]],\n});\n","import { AuthenticationService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useAuthExchangeCode = queryFactoryV2(AuthenticationService.exchangeCode, {\n queryName: `AuthenticationService.exchangeCode`,\n});\n\nexport const useSignin = mutationFactoryV2(AuthenticationService.signIn);\n\nexport const useSigninSSO = mutationFactoryV2(AuthenticationService.signInSso);\n\nexport const useRefreshToken = mutationFactoryV2(AuthenticationService.refresh);\n","import { DepartmentsService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useDepartmentsQuery = queryFactoryV2(DepartmentsService.findAll, {\n queryName: 'DepartmentsService.findAll',\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useDepartmentDetailsQuery = queryFactoryV2(DepartmentsService.findOne, {\n queryName: 'DepartmentsService.findOne',\n});\n\nexport const useCreateDepartmentMutation = mutationFactoryV2(DepartmentsService.create, {\n refetchQueries: () => [[[useDepartmentsQuery.queryName]]],\n});\n\nexport const useUpdateDepartmentMutation = mutationFactoryV2(DepartmentsService.update, {\n refetchQueries: (_, { id }) => [\n [[useDepartmentsQuery.queryName]],\n [[useDepartmentDetailsQuery.queryName, { id }], { exact: true }],\n ],\n});\n\nexport const useDeleteDepartmentMutation = mutationFactoryV2(DepartmentsService.delete, {\n refetchQueries: () => [[[useDepartmentsQuery.queryName]]],\n});\n","import { AddRemoveRelationsDto, CancelablePromise, EnterprisesService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n// eslint-disable-next-line import/no-cycle\nimport { useTeamMembers, useUserDetail, useUsers } from '..';\n\nexport const useEnterprises = queryFactoryV2(EnterprisesService.findAll, {\n queryName: `EnterprisesService.findAll`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useEnterpriseDetail = queryFactoryV2(EnterprisesService.findOne, {\n queryName: `EnterprisesService.findOne`,\n});\n\nexport const useCreateEnterprise = mutationFactoryV2(EnterprisesService.create, {\n refetchQueries: () => [[[useEnterprises.queryName]]],\n});\n\nexport const useUpdateEnterprise = mutationFactoryV2(EnterprisesService.update, {\n refetchQueries: (_, { id }) => [[[useEnterprises.queryName]], [[useEnterpriseDetail.queryName, { id }]]],\n});\n\nexport const useDeleteEnterprise = mutationFactoryV2(EnterprisesService.delete, {\n refetchQueries: () => [[[useEnterprises.queryName]]],\n});\n\nconst customAddOrRemoveUsersToEnterprise = ({\n id,\n requestBody,\n}: {\n userId?: string;\n id: string;\n requestBody: AddRemoveRelationsDto;\n}): CancelablePromise> => EnterprisesService.addOrRemoveUsersToEnterprise({ id, requestBody });\n\nexport const useAddOrRemoveUsersToEnterprise = mutationFactoryV2(customAddOrRemoveUsersToEnterprise, {\n refetchQueries: (_, { userId, id }) => [\n [[useEnterprises.queryName]],\n [[useEnterpriseDetail.queryName, { id }], { exact: true }],\n [[useUserDetail.queryName, { id: userId }], { exact: true }],\n [[useUsers.queryName]],\n [[useTeamMembers.queryName]],\n ],\n});\n\nexport const useErpCustomers = queryFactoryV2(EnterprisesService.findErpEnterprises, {\n queryName: `EnterprisesService.findErpEnterprises`,\n});\n\nexport const useErpCustomer = queryFactoryV2(EnterprisesService.findErpEnterprise, {\n queryName: `EnterprisesService.findErpEnterprise`,\n});\n\n// export const useUserEnterprises = queryFactoryV2(UserEnterprisesService.paginatedUserEnterprieses, {\n// queryName: `UserEnterprisesService.paginatedUserEnterprieses`,\n// queryOptions: {\n// keepPreviousData: true,\n// },\n// });\n//\n// export const useUserEnterpriseDetail = queryFactoryV2(UserEnterprisesService.findOneUserEnterprise, {\n// queryName: `UserEnterprisesService.findOneUserEnterprise`,\n// });\n","import { LocationsService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useLocations = queryFactoryV2(LocationsService.findAll, {\n queryName: 'LocationsService.findAll',\n});\n\nexport const useCreateLocation = mutationFactoryV2(LocationsService.create, {\n refetchQueries: () => [[[useLocations.queryName]]],\n});\n\nexport const useLocationDetailsQuery = queryFactoryV2(LocationsService.findOne, {\n queryName: 'LocationsService.findOne',\n});\n\nexport const useUpdateLocation = mutationFactoryV2(LocationsService.update, {\n refetchQueries: (_, { id }) => [\n [[useLocations.queryName]],\n [[useLocationDetailsQuery.queryName, { id }], { exact: true }],\n ],\n});\n\nexport const useDeleteLocation = mutationFactoryV2(LocationsService.delete, {\n refetchQueries: () => [[[useLocations.queryName]]],\n});\n","import { RolesService } from '../../spec/services/RolesService';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useRoles = queryFactoryV2(RolesService.findAll, {\n queryName: `RolesService.findAll`,\n});\n\nexport const useApplyPermissionsToRoles = mutationFactoryV2(RolesService.attachPermissionsToRoles, {\n refetchQueries: () => [[[useRoles.queryName]], [['UsersService.me']]],\n});\n","import { PermissionsService } from '../../spec';\nimport { queryFactoryV2 } from '../../utils/query-factory';\n\nexport const usePermissionsCategories = queryFactoryV2(PermissionsService.findAllPermissionsCategories, {\n queryName: `PermissionsService.findAllPermissionsCategories`,\n});\n\nexport const usePermissions = queryFactoryV2(PermissionsService.findAll, {\n queryName: `PermissionsService.findAll`,\n});\n","import { ProtectService } from '../../spec';\nimport { queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useBeneficialEffects = queryFactoryV2(ProtectService.getBeneficialEffects, {\n queryName: `ProtectService.getBeneficialEffects`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\nexport const useLifestages = queryFactoryV2(ProtectService.getLifestages, {\n queryName: `ProtectService.getLifestages`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\nexport const useTTContent = queryFactoryV2(ProtectService.getTranslatedContent, {\n queryName: `ProtectService.getTranslatedContent`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useEffectCategories = queryFactoryV2(ProtectService.getEffectCategories, {\n queryName: `ProtectService.getEffectCategories`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useApplicationMethods = queryFactoryV2(ProtectService.getApplicationMethods, {\n queryName: `ProtectService.getApplicationMethods`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useTradenames = queryFactoryV2(ProtectService.getTradenames, {\n queryName: `ProtectService.getTradenames`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useProducts = queryFactoryV2(ProtectService.getProducts, {\n queryName: `ProtectService.getProducts`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useActiveIngredients = queryFactoryV2(ProtectService.getActiveIngredients, {\n queryName: `ProtectService.getActiveIngredients`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n","import { ReportsService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useOrders = queryFactoryV2(ReportsService.getOrders, {\n queryName: `ReportsService.getOrders`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useErpInvoices = queryFactoryV2(ReportsService.getInvoices, {\n queryName: `ReportsService.getInvoices`,\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useErpInvoicesDownloadLink = mutationFactoryV2(ReportsService.getDownloadLink);\n","import { ScoutPreferencesService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useAllEnterpriseScoutPreferencesQuery = queryFactoryV2(ScoutPreferencesService.findAll, {\n queryName: 'ScoutPreferencesService.findAll',\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useScoutPreferencesQuery = queryFactoryV2(ScoutPreferencesService.findOne, {\n queryName: 'ScoutPreferencesService.findOne',\n});\n\nexport const useCreateScoutPreferencesMutation = mutationFactoryV2(ScoutPreferencesService.create);\n\nexport const useUpdateScoutPreferencesMutation = mutationFactoryV2(ScoutPreferencesService.update, {\n refetchQueries: (_, { id, xEnterpriseId }) => [[[useScoutPreferencesQuery.queryName, { id, xEnterpriseId }]]],\n});\n\nexport const useDeleteScoutPreferencesMutation = mutationFactoryV2(ScoutPreferencesService.delete);\n","import { ScoutPreferencesTemplatesService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useScoutPreferencesTemplatesQuery = queryFactoryV2(ScoutPreferencesTemplatesService.findAll, {\n queryName: 'ScoutPreferencesTemplatesService.findAll',\n queryOptions: {\n keepPreviousData: true,\n },\n});\n\nexport const useScoutPreferencesTemplateQuery = queryFactoryV2(ScoutPreferencesTemplatesService.findOne, {\n queryName: 'ScoutPreferencesTemplatesService.findOne',\n});\n\nexport const useCreateScoutPreferencesTemplateMutation = mutationFactoryV2(ScoutPreferencesTemplatesService.create, {\n refetchQueries: () => [[[useScoutPreferencesTemplatesQuery.queryName]]],\n});\n\nexport const useUpdateScoutPreferencesTemplateMutation = mutationFactoryV2(ScoutPreferencesTemplatesService.update, {\n refetchQueries: (_, { id }) => [\n [[useScoutPreferencesTemplatesQuery.queryName]],\n [[useScoutPreferencesTemplateQuery.queryName, { id }]],\n ],\n});\n\nexport const useDeleteScoutPreferencesTemplateMutation = mutationFactoryV2(ScoutPreferencesTemplatesService.delete, {\n refetchQueries: () => [[[useScoutPreferencesTemplatesQuery.queryName]]],\n});\n","import { ScoutablesService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useScoutables = queryFactoryV2(ScoutablesService.findAll, {\n queryName: 'ScoutablesService.findAll',\n});\n\nexport const useCreateScoutable = mutationFactoryV2(ScoutablesService.create, {\n refetchQueries: () => [[[useScoutables.queryName]]],\n});\n\nexport const useScoutableDetails = queryFactoryV2(ScoutablesService.findOne, {\n queryName: 'ScoutablesService.findOne',\n});\n\nexport const useUpdateScoutable = mutationFactoryV2(ScoutablesService.update, {\n refetchQueries: (_, { id }) => [\n [[useScoutables.queryName]],\n [[useScoutableDetails.queryName, { id }], { exact: true }],\n ],\n});\n\nexport const useDeleteScoutable = mutationFactoryV2(ScoutablesService.delete, {\n refetchQueries: () => [[[useScoutables.queryName]]],\n});\n","import { TeamMembersService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n\nexport const useTeamMember = queryFactoryV2(TeamMembersService.findOne, {\n queryName: 'TeamMembersService.findOne',\n queryOptions: {\n staleTime: 0,\n },\n});\n\nexport const useTeamMembers = queryFactoryV2(TeamMembersService.findAll, {\n queryName: 'TeamMembersService.findAll',\n queryOptions: {\n staleTime: 0,\n },\n});\n\nexport const useCreateTeamMember = mutationFactoryV2(TeamMembersService.create, {\n refetchQueries: () => [[[useTeamMembers.queryName]]],\n});\n\nexport const useUpdateTeamMember = mutationFactoryV2(TeamMembersService.update, {\n refetchQueries: (_, { id }) => [[[useTeamMember.queryName, { id }]]],\n});\n\nexport const useTeamMemberResendInvitation = mutationFactoryV2(TeamMembersService.resendInvitation);\n","import { UsersService } from '../../spec';\nimport { mutationFactoryV2, queryFactoryV2 } from '../../utils/query-factory';\n// eslint-disable-next-line import/no-cycle\nimport { useEnterprises } from '..';\n\nexport const useUsers = queryFactoryV2(UsersService.findAll, {\n queryName: 'UsersService.findAll',\n queryOptions: {\n staleTime: 0,\n },\n});\n\nexport const useUserDetail = queryFactoryV2(UsersService.findOne, {\n queryName: 'UsersService.findOne',\n queryOptions: {\n staleTime: 0,\n },\n});\n\nexport const useCreateUser = mutationFactoryV2(UsersService.create, {\n refetchQueries: () => [[[useUsers.queryName]]],\n});\n\nexport const useResendInvitation = mutationFactoryV2(UsersService.resendInvitation);\n\nexport const useAddOrRemoveEnterprisesToUser = mutationFactoryV2(UsersService.addOrRemoveEnterprisesToUser, {\n refetchQueries: (_, { id }) => [\n [[useUsers.queryName]],\n [[useUserDetail.queryName, { id }], { exact: true }],\n [[useEnterprises.queryName]],\n ],\n});\n\nexport const useDeleteUser = mutationFactoryV2(UsersService.remove, {\n refetchQueries: () => [[[useUsers.queryName]]],\n});\n\nexport const useUpdateUser = mutationFactoryV2(UsersService.update, {\n refetchQueries: (_, { id }) => [[[useUsers.queryName]], [[useUserDetail.queryName, { id }], { exact: true }]],\n});\n\nexport const useUpdateMe = mutationFactoryV2(UsersService.updateMe, {\n refetchQueries: () => [[[useMe.queryName], { exact: true }]],\n});\n\nexport const useMe = queryFactoryV2(UsersService.me, { queryName: `UsersService.me` });\n\nexport const useSendResetPasswordEmailMutation = mutationFactoryV2(UsersService.resetPassword);\n"],"names":["subscribeTranslations","useTranslationsStore","state","intl","_ref","formatMessage","t","yup","mixed","required","_ref2","label","id","undefined","notType","_ref3","type","array","min","_ref4","string","email","_ref5","max","_ref6","date","_ref7","key","values","number","moreThan","_ref8","more","translatedLabel","lessThan","_ref9","less","_ref10","_ref11","globalYup","setupGlobals","dayjs","weekOfYear","isoWeek","isSameOrBefore","updateLocale","localeData","localizedFormat","weekday","weekYear","advancedFormat","customParseFormat","isLeapYear","o","c","proto","prototype","oldFormat","format","formatStr","str","replace","bind","this","InfoButton","styled","Button","withConfig","displayName","componentId","p","theme","colors","Trigger","LeftOutlined","TriggerContainer","FallbackLoader","_jsx","Center","children","Spin","sidebar","header","pages","onRoutes","notFoundRedirect","location","useLocation","domainRef","React","collapsed","setCollapsed","handleRoutes","routes","domain","subRoutes","map","element","Component","rest","_createElement","Route","path","current","renderRoutes","getDynamicLayoutRoutes","pathname","renderHeader","renderSidebar","_jsxs","AntLayout","style","height","display","gridTemplateRows","padding","className","minHeight","trigger","Styled","href","icon","QuestionOutlined","shape","target","onClick","v","collapsible","fallback","Routes","Navigate","to","createGlobalStyle","_templateObject","_taggedTemplateLiteral","props","white","basename","history","setState","action","listen","Router","navigationType","navigator","antdLocaleMap","en","de","fr","es","it","nl","pl","ru","dayjsLocaleMap","_authStore$User2","loading","setLoading","antLocale","setAntLocale","translationsStore","authStore","useAuthStore","weekNumberingSystem","useSettings","_authStore$User","_authStore$User$Cultu","_antdLocaleMap$target","_dayjsLocaleMap$targe","targetLocale","User","Culture","toLocaleLowerCase","antdLocale","call","dayjsLocale","default","Error","concat","weekStart","weekStartDay","yearStart","yearStartDay","e","language","ConfigProvider","locale","CollapseButton","Bar","_templateObject2","$collapsed","SwitchContainer","_templateObject3","translatorLanguage","TranslationsBar","_authStore$User$UserN","isCollapsed","setIsCollapsed","isTranslatorAccount","UserName","toLowerCase","ButtonIcon","ArrowUpOutlined","ArrowDownOutlined","_Fragment","Switch","checked","onChange","handleSwitchChange","setIntl","setIntlRaw","createIntl","messages","onError","fallbackIntl","translationStore","syncTranslations","showChildren","hasSynced","Alert","description","message","position","bottom","right","left","zIndex","banner","closable","showIcon","top","transform","tip","RawIntlProvider","value","useCurrentPath","paths","reduce","acc","Array","isArray","_","subPath","includes","consultantMenuPaths","_vanillaTranslationsS2","vanillaTranslationsStore","Icon","name","Link","ConsultantSidebarMenu","currentPath","Menu","defaultOpenKeys","items","mode","selectedKeys","flexDirection","DashboardSidebarMenu","setImpersonateUser","ImpersonateUser","impersonatedUser","_vanillaTranslationsS","LeftCircleOutlined","HomeOutlined","BarChartOutlined","AppstoreAddOutlined","AimOutlined","FormOutlined","SendOutlined","rotate","TeamOutlined","dashboardMenuPaths","item","SidebarLogoContainer","dx","fill","fontFamily","fontSize","fontWeight","opacity","x","y","Topbar","useIntl","UserOutlined","marginLeft","ga4ExecuteEvent","category","clicked_item","ProfileOutlined","SettingOutlined","LogoutOutlined","justifyContent","paddingLeft","MenuLogo","backgroundColor","color","borderBottom","width","triggerSubMenuAction","clarityScript","process","GA4Ids","host","Analytics","unitSystem","isImpersonated","window","ga4Id","find","_User$EnterpriseId","_User$Email","_User$Roles","_User$Roles2","username","enterpriseId","EnterpriseId","toString","_window$clarity","_window","_window$clarity2","_window2","clarity","ga4SetUserProperties","options","_window$gtag2","_window$gtag","_window$dataLayer","gtag","user_id","normalizeOptions","dataLayer","push","is_koppert_employee","Email","roles","Roles","join","is_consultant","user_name","impersonated","enterprise_id","koppert_user_id","UserId","domain_name","units","week_numbering","active_ui_language","event","timeoutId","setTimeout","_document$getElements","document","getElementsByTagName","addEventListener","clearTimeout","Helmet","src","async","DashboardLayout","navigate","useNavigate","AccessToken","HasDefaultEnterprise","token","_decoded$exp","decoded","decode","isAfter","exp","err","isTokenExpired","Outlet","config","HvaOpenAPI","KoppertOpenAPI","hideHeader","logout","cleanupUserData","removeEventListener","queries","mutations","queryClient","_e$response","_e$response2","Reflect","has","response","data","ErrorCode","Message","body","notification","startsWith","search","hash","CustomRouter","ThemeProvider","Translations","CustomQueryProvider","AntdConfigProvider","Layout","NatutecScoutTopbar","GlobalStyles","mount","custom","arguments","length","root","createRoot","render","App","onParentNavigate","nextPathname","require","createBrowserHistory","getElementById","QueryClient","defaultOptions","networkMode","retry","retryDelay","attemptIndex","Math","staleTime","cacheTime","refetchOnWindowFocus","suspense","QueryClientProvider","client","ReactQueryDevtools","initialIsOpen","CenterContainer","FormDevPresets","ref","presetName","hasBulk","form","useSchema","bulkAmmountRef","getAmmount","presets","handleFillForm","ammount","preset","setFields","Object","entries","from","getFieldInstance","border","Typography","Space","size","margin","Input","compact","InputNumber","n","FormWithSchemaContext","schema","defaultValues","setValues","errors","setSchemaContext","getFormItems","isDev","formName","submitMode","onSubmit","onBulk","Form","schemaShape","getDefaultFromShape","fieldErrors","setFieldErrors","schemaContext","proxy","trap","Proxy","apply","ctx","args","dynamicValues","field","getFieldValue","prev","setFieldsValue","handleFieldValues","getFieldsValue","submit","callback","fields","val","spec","contextValue","Provider","initialValues","layout","noValidate","onFinish","keys","formValues","validValues","validate","abortEarly","stripUnknown","context","console","error","inner","onValuesChange","_g","_extends","assign","i","source","hasOwnProperty","SvgArrowLeft","svgRef","title","titleId","xmlns","xmlnsXlink","viewBox","enableBackground","xmlSpace","d","ForwardRef","_path","SvgArrowRight","SvgBeneficial","SvgBiologicalAction","SvgBiologicalSprayAction","SvgCamera","focusable","SvgCenter","SvgChemicalAction","SvgChevronBack","SvgChevronNext","SvgCircle","_rect","_defs","SvgCircleArrowLeft","rx","filter","stroke","strokeWidth","shapeRendering","filterUnits","colorInterpolationFilters","floodOpacity","result","in","dy","stdDeviation","in2","operator","SvgCircleArrowRight","_g2","SvgCross","points","SvgCustomer","_circle","SvgDepartmentAvatar","r","cx","cy","SvgDisease","SvgDraw","SvgGlobe","_polygon","SvgHoriver","_path2","_path3","_path4","_path5","_path6","_path7","_path8","_path9","_path10","_path11","_path12","SvgIndoor","strokeLinecap","strokeLinejoin","SvgLeaf","SvgLink","SvgLocationAvatar","SvgNutrient","SvgOutdoor","SvgPest","SvgPollination","SvgTrash","SvgTriangle","arrowRight","beneficial","biologicalAction","biologicalSprayAction","camera","chemicalAction","customer","departmentAvatar","disease","horiver","locationAvatar","arrowLeft","nutrient","pest","pollination","center","trash","draw","globe","leaf","indoor","outdoor","circle","triangle","cross","circleArrowLeft","circleArrowRight","chevronBack","chevronNext","link","icons","obj","isNil","isBoolean","mappedRoutes","Map","forEach","route","page","slice","split","entry","newEntry","get","set","domainRoutes","index","router","getBreadcrumbsFromRoutes","breadcrumbs","params","Boolean","cur","idx","endsWith","parts","routeWithParams","newRoute","fromEntries","last","at","breadcrumbName","auto","store","devtools","persist","setUser","setConfig","isLoggedIn","OpenAPI","pick","version","onRehydrateStorage","vanillaAuthStore","createVanilla","create","ChartActionMode","initialState","startWeek","chartActionMode","DEFAULT","records","departmentEntries","immer","subscribeWithSelector","resetStore","setStartWeek","isRecordChecked","indexInStore","record","departmentEntry","selectedRecords","ScoutTemplRecId","isActionActionChecked","selectedActions","a","Action","onActionOrRecordChange","recordOrActions","draft","object","recordIndex","findIndex","splice","onModalSave","recordEntries","department","year","handleChartActionModeChange","setSettingsFromStorage","settings","vanillaCompareStore","useCompareStore","vanillaSettingsStore","f","setWeekNumberingSystem","setUnitSystem","intlCache","lastSynced","tokenExpiry","getAvailableLanguages","localeKey","Languages","lang","getToken","isBefore","token_type","access_token","expires_in","getAnonymousToken","newToken","add","toISOString","modifiedSince","url","URL","headers","Headers","append","res","fetch","ok","translationsBody","json","messagesMap","Resources","translations","translation","toDate","toUTCString","createIntlCache","partialize","keepQueryClient","localStorage","removeItem","info","method","Authorization","btoa","getSSOAuthorizationLink","random","Date","now","nonce","setItem","redirectUri","protocol","authorizationUrl","URLSearchParams","client_id","redirect_uri","response_type","scope","acr_values","ApiError","constructor","super","status","statusText","BASE","VERSION","WITH_CREDENTIALS","TOKEN","USERNAME","PASSWORD","HEADERS","isDefined","isString","isStringWithValue","isBlob","Blob","getUrl","query","qs","encodeURIComponent","String","getQueryString","resolve","resolver","getHeaders","password","defaultHeaders","Accept","credentials","getRequestBody","formData","FormData","getFormData","JSON","stringify","request","sendRequest","responseBody","contentType","text","getResponseBody","responseHeader","content","getResponseHeader","catchErrors","BillingPlanCreate","BillingPlanDetails","BillingProductCreate","BillingProductDetails","BillingSubscriptionCreate","BillingSubscriptionDetails","DocToCItem","DocToCItemCreate","DocToCItemSettings","DocTopic","DocTopicCreate","DocTopicInfo","DocTopicSettings","FmsConfiguration","FmsConfigurationCreate","FmsEnterpriseDetails","FmsEnterpriseIdentifiers","FmsProperty","FmsUserAction","KpAction","KpActionCreate","KpActionSettings","KpAlert","KpAlertCreate","KpAlertSettings","KpDepartment","KpDepartmentCreate","KpDepartmentDetails","KpDepartmentSettings","KpDxCustomer","KpDxCustomerCreate","KpObservation","KpObservationCreate","KpRecData","KpScoutDataImport","KpScoutReference","KpScoutReferenceCreate","KpScoutReferenceSettings","KpScoutTemplateRecord","KpScoutTemplateRecordCreate","KpScoutTemplateRecordSettings","KpScoutUserProperty","KpUserPropertyCreate","_BillingPlanCreate","Interval","AggregateUsage","BillingScheme","UsageType","_BillingPlanDetails","_BillingProductCreate","ProductType","_BillingProductDetails","_BillingSubscriptionCreate","Status","CollectionMethod","_BillingSubscriptionDetails","_DocToCItem","TopicType","_DocToCItemCreate","_DocToCItemSettings","_DocTopic","_DocTopicCreate","_DocTopicInfo","_DocTopicSettings","_FmsConfiguration","PlatformType","_FmsConfigurationCreate","UnitsSystem","_FmsEnterpriseDetails","EnterpriseKind","_FmsEnterpriseIdentifiers","_FmsProperty","DataType","_FmsUserAction","ChannelType","_KpAction","ActionKind","QuantityUnit","VolumeUnit","AreaUnit","DepartmentCoverage","CoverageUnit","ApplicationMethod","SprayUnit","_KpActionCreate","_KpActionSettings","_KpAlert","Stage","ScoutTemplRecObservationKind","AlertKind","_KpAlertCreate","_KpAlertSettings","_KpDepartment","DepartmentKind","_KpDepartmentCreate","_KpDepartmentDetails","_KpDepartmentSettings","_KpDxCustomer","DxType","_KpDxCustomerCreate","_KpObservation","observationType","_KpObservationCreate","_KpRecData","ObservationKind","_KpScoutDataImport","ImportStatus","_KpScoutReference","Category","_KpScoutReferenceCreate","_KpScoutReferenceSettings","_KpScoutTemplateRecord","_KpScoutTemplateRecordCreate","_KpScoutTemplateRecordSettings","_KpScoutUserProperty","Key","_KpUserPropertyCreate","ActionsService","sort","operatorName","pageSize","__request","start","end","pcellId","departmentId","actionId","actionKind","AlertsService","alertId","BioProductsService","productId","ChemProductsService","ConfigurationsService","license","CropTemplatesService","distributorId","templateId","CsIntegrationService","forward","refreshToken","userId","DepartmentsService","includeMarkedDeleted","EnterprisesService","dealerId","ids","check","propertyName","toDealerId","GeoCodeService","address","zipcode","city","country","LocationsService","ScoutAggregatedDataService","templateRecId","useDiffMethod","aggregate","csvformat","culture","trueCustomers","ScoutDataImportsService","dataImportId","ScoutTemplateRecordsDepartmentService","recordId","ScoutTemplateRecordsLocationService","locationId","ScoutTemplateRecordsService","cropTemplateId","ScoutTripCardsService","scoutTripId","cardId","ScoutTripObservationsService","filterUnique","observationId","ScoutTripsService","ScoutUsersService","SignUpInvitationsService","inviterUserId","invitationId","UserEnterpriseRelationsService","relationKind","relationId","UsersService","nameOrEmail","confirmation","code","mapping","VisitReportsService","week","CancelError","isCancelled","_Symbol$toStringTag","Symbol","toStringTag","CancelablePromise","executor","_isResolved","_isRejected","_isCancelled","_cancelHandlers","_promise","_resolve","_reject","Promise","reject","onCancel","cancelHandler","defineProperty","_this$_resolve","reason","_this$_reject","then","onFulfilled","onRejected","catch","finally","onFinally","cancel","_this$_reject2","warn","CREDENTIALS","ENCODE_PATH","AddRemoveRelationsDto","AlertsReportDataDto","CreateDepartmentDto","CreateEnterpriseDto","CreateObservationItemDto","CreateObservationPhotoDto","CreateTeamMemberDto","CreateUserDto","Department","Enterprise","Observation","ObservationItem","ObservationMethods","ObservationPhoto","ScoutableCategories","ScoutableDataDto","ScoutableIcons","ScoutableStages","SignUpBodyDto","TeamMemberDto","UpdateDepartmentDto","UpdateEnterpriseDto","UpdateObservationItemDto","UpdateObservationPhotoDto","UpdateUserDto","UserDto","UserMetadataDto","_AddRemoveRelationsDto","_AlertsReportDataDto","stage","_CreateDepartmentDto","_CreateEnterpriseDto","unitsSystem","_CreateObservationItemDto","_CreateObservationPhotoDto","_CreateTeamMemberDto","_CreateUserDto","_Department","_Enterprise","_Observation","_ObservationItem","_ObservationPhoto","_ScoutableDataDto","_SignUpBodyDto","_TeamMemberDto","_UpdateDepartmentDto","_UpdateEnterpriseDto","_UpdateObservationItemDto","_UpdateObservationPhotoDto","_UpdateUserDto","_User","_UserDto","_UserMetadataDto","accountCreationMethod","auth","useAuth","setAuth","accessToken","reset","currentEnterprise","currentEnterpriseId","initialize","enterprises","some","setEnterprise","enterprise","isSSO","setIsSSO","isSso","counter","stream","arrayBuffer","test","isFormData","k","additionalHeaders","Buffer","base64","mediaType","encoder","encodeURI","substring","group","_options$path","_options$mediaType","controller","AbortController","signal","abort","_result$body3","_result$body3$metadat","_result$body","_result$body$metadata","_result$body2","_result$body2$metadat","metadata","translationCode","handleTokenRevoked","handleTokenExpired","catchErrorCodes","_useAuth$getState$aut","getState","newTokens","AuthenticationService","refresh","requestBody","expiresIn","expires","emailVerified","_useAuth$getState$aut2","logOut","clearStorage","provider","ConsultantNotesService","xEnterpriseId","limit","sortBy","consultantNoteId","customerSearchQuery","customerKey","excludeRelationByUserId","PermissionsService","feCategory","ProtectService","langId","ReportsService","startDate","endDate","RolesService","ScoutablesService","latinName","ScoutPreferencesService","ScoutPreferencesTemplatesService","TeamMembersService","excludeRelationByEnterpriseId","_ref12","queryFactoryV2","fn","builderOptions","queryName","queryOptions","enabledFn","dataSelector","enabled","innerQuery","useQuery","queryFn","queryKey","select","mutationFactoryV2","mutationOptions","useQueryClient","onSuccess","_await$builderOptions","_builderOptions$refet","promises","refetchQueries","refetchAble","refetchOptions","all","mutation","useMutation","mutationFn","mutateAsync","useConsultantNotes","exchangeCode","signIn","signInSso","findAll","useConsultantNote","findOne","useAttachments","update","findAll1","useDepartmentsQuery","uploadMany","sendNotification","getDownloadLink","deleteMany","keepPreviousData","useDepartmentDetailsQuery","useEnterprises","exact","useEnterpriseDetail","useLocations","addOrRemoveUsersToEnterprise","useUserDetail","useUsers","useTeamMembers","findErpEnterprises","findErpEnterprise","useLocationDetailsQuery","useRoles","findAllPermissionsCategories","getBeneficialEffects","getLifestages","getTranslatedContent","getEffectCategories","getApplicationMethods","getTradenames","getProducts","getActiveIngredients","getOrders","getInvoices","useScoutPreferencesQuery","attachPermissionsToRoles","useScoutPreferencesTemplatesQuery","useScoutPreferencesTemplateQuery","useScoutables","useScoutableDetails","useTeamMember","resendInvitation","useMe","addOrRemoveEnterprisesToUser","remove","updateMe","me","resetPassword"],"sourceRoot":""}