{ "version": 3, "sources": ["../../TsUtils/type-guards.utils.ts", "../../TsUtils/utils.ts", "js-services/language/language.service.ts", "js-services/api/contract/contract.service.ts", "js-services/api/crm-contact/crm-contact.service.ts", "js-services/api/engineer/engineer.service.ts", "js-services/api/job-area/job-area.service.ts", "js-services/api/job-blob-configuration/job-blob-configuration.service.ts", "js-services/api/job-category/job-category.service.ts", "js-services/api/job-issue/job-issue.service.ts", "js-services/api/job/job.service.ts", "js-services/api/job-status/job-status.service.ts", "js-services/api/job-type/job-type.service.ts", "js-services/api/mpro-def/mpro-def.service.ts", "js-services/api/invoice-line-type/invoice-line-type.service.ts", "js-services/api/part-status/part-status.service.ts", "js-services/api/sla/sla.service.ts", "js-services/api/product/product.service.ts", "js-services/api/vendor/vendor.service.ts", "js-services/api/timesheet-type/timesheet-type.service.ts", "js-services/api/job-note-type/job-note-type.service.ts", "js-services/api/ax-part/ax-part.service.ts", "js-services/api/customer/customer.service.ts", "js-services/api/site/site.service.ts", "js-services/api/location/location.service.ts", "js-services/api/sub-location/sub-location.service.ts", "js-services/api/team/team.service.ts", "js-services/api/media/media.service.ts", "js-services/api/doc-store/doc-store.service.ts", "js-services/api/expense-type/expense-type.service.ts", "js-services/api/user-setting-profile/user-setting-profile.service.ts", "js-services/api/qx-form/qx-form.service.ts", "js-services/api/ax-asset/ax-asset.service.ts", "js-services/api/ax-asset-status/ax-asset-status-service.ts", "js-services/api/qx-audit/qx-audit.service.ts", "js-services/api/qx-question-type/qx-question-type.service.ts", "js-services/api/task-category/task-category.service.ts", "js-services/api/web-reports/web-reports.service.ts", "js-services/api/web-user/web-user.service.ts", "js-services/api/permission-asset-group/permission-asset-group.service.ts", "js-services/api/permission-crm-contact-group/permission-crm-contact-group.service.ts", "js-services/api/permission-job-group/permission-job-group.service.ts", "js-services/api/permission-system-group/permission-system-group.service.ts", "js-services/api/web-user-permission/web-user-permission.service.ts", "js-services/api/permission-group/permission-group.service.ts", "js-services/api/api.service.ts", "js-services/guid/guid.service.ts", "js-services/navigation/navigation.service.ts", "js-services/user/user-permission/user-permission.service.ts", "js-services/user/user.service.ts", "js-services/services.ts", "main.ts"], "sourcesContent": ["\nexport function isObject(val: any): val is object {\n return val.constructor === Object\n}\n", "import { isObject } from './type-guards.utils';\n\n/**\n * helper function to flatten nested objects to single level object\n * @param oldObject\n */\nexport function flatten(oldObject: object): T {\n const newObject = {};\n\n flattenHelper(oldObject, newObject, '');\n\n return (newObject as T);\n}\n\n/**\n * helper for flatten function\n * @param currentObject\n * @param newObject\n * @param previousKeyName\n */\nfunction flattenHelper(currentObject: object, newObject: { [key: string]: any }, previousKeyName: string) {\n for (const key in currentObject) {\n if (!currentObject.hasOwnProperty(key)) continue;\n const value: object | string = (currentObject as any)[key];\n\n if (!isObject(value)) {\n if (previousKeyName == null || previousKeyName === '') {\n newObject[key] = value;\n } else {\n if (key == null || key === '') {\n newObject[previousKeyName] = value;\n } else {\n newObject[`${previousKeyName}.${key}`] = value;\n }\n }\n }\n else {\n if (previousKeyName == null || previousKeyName === '') {\n flattenHelper(value, newObject, key);\n } else {\n flattenHelper(value, newObject, `${previousKeyName}.${key}`);\n }\n }\n }\n}\n", "import { I18nStrings, LanguageString, LanguageStrings } from '@crimsontide/core/client/language/interfaces';\nimport { flatten } from '../../../../TsUtils/utils';\n\nexport const LanguageService = (() => {\n const languageStrings: LanguageStrings = {};\n const setLanguageNestedStrings = (strings: I18nStrings, merge: boolean = true): void => {\n return setFlatLanguageStrings(flatten(strings), merge);\n };\n\n const setLanguageStrings = (strings: LanguageString[], merge: boolean = true): void => {\n return setFlatLanguageStrings(\n strings.reduce(\n (s, o) => {\n s[o.resourceName] = o.resourceValue;\n\n return s;\n },\n {} as LanguageStrings,\n ),\n merge,\n );\n };\n\n const setFlatLanguageStrings = (strings: LanguageStrings, merge: boolean = true): void => {\n if (merge) {\n Object.assign(languageStrings, strings);\n }\n else {\n for (const key in languageStrings) {\n if (languageStrings.hasOwnProperty(key)) {\n delete languageStrings[ key ];\n }\n }\n Object.assign(languageStrings, strings);\n }\n };\n\n const translate = (key: string, param?: { [key: string]: string | number | boolean}): string => {\n let translation = languageStrings[key];\n\n if (param && typeof param === 'object') {\n const paramKeys = Object.keys(param);\n\n paramKeys.forEach((p) => {\n translation = translation.replace(`{{${p}}}`, param[ p ].toString());\n });\n }\n\n return translation || key;\n };\n\n return {\n setLanguageNestedStrings,\n setLanguageStrings,\n setFlatLanguageStrings,\n translate,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { Contract } from '@crimsontide/core/client/interfaces'\n\nexport const ContractService = (() => {\n let dotNetObj: DotNetObject;\n let cachedContracts: Contract[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getAll = async (useCache: boolean = true): Promise => {\n if (useCache && cachedContracts != null)\n return cachedContracts;\n\n if (dotNetObj) {\n cachedContracts = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedContracts;\n } else {\n throw 'Contract DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getByCustomerIds = async (customerIds: string[]): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetByCustomerIdsAsync', customerIds);\n } else {\n throw 'Contract DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getAll,\n getByCustomerIds,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { CrmContact } from '@crimsontide/core/client/interfaces';\n\nexport const CrmContactService = (() => {\n let dotNetObj: DotNetObject;\n let cachedCrmContacts: CrmContact[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getCrmContacts = async (useCache: boolean = true): Promise => {\n if (useCache && cachedCrmContacts != null)\n return cachedCrmContacts;\n\n if (dotNetObj) {\n cachedCrmContacts = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedCrmContacts;\n } else {\n throw 'Crm Contact DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getCrmContacts,\n };\n})();\n", "import { Engineer } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedEngineers: Engineer[];\n\nexport const EngineerService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getEngineers = async (engineerId?: string, includeParkUser: boolean = false, useCache: boolean = true): Promise => {\n if (useCache && engineerId == null && cachedEngineers != null) {\n return await filterEngineers(cachedEngineers, includeParkUser);\n }\n\n cachedEngineers = await fetch('/api/Engineer/get?' + new URLSearchParams({\n engineerId: engineerId?.toString() ?? '',\n }),\n {\n method: 'GET',\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(engineers => engineers.json());\n\n return await filterEngineers(cachedEngineers, includeParkUser);\n };\n\n const filterEngineers = async (engineers: Engineer[], includeParkUser: boolean) : Promise => {\n if (includeParkUser) {\n return engineers;\n } else {\n return engineers.filter(engineer => engineer.engineerId != '00000000-0000-0000-0000-000000000000');\n }\n }\n\n return {\n setDotNetReference,\n getEngineers,\n };\n})();\n", "import { JobArea } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const JobAreaService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobAreas: JobArea[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobAreas = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobAreas != null)\n return cachedJobAreas;\n\n if (dotNetObj) {\n cachedJobAreas = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedJobAreas;\n } else {\n throw 'Job Area DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobAreas,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\n\nexport const JobBlobConfigurationService = (() => {\n let dotNetObj: DotNetObject;\n let cachedSchedulerTemplateConfiguration: string;\n let cachedTooltipTemplateConfiguration: string;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getSchedulerTemplateConfiguration = async (useCache: boolean = true): Promise => {\n if (useCache && cachedSchedulerTemplateConfiguration != null)\n return cachedSchedulerTemplateConfiguration;\n\n if (dotNetObj) {\n cachedSchedulerTemplateConfiguration = await dotNetObj.invokeMethodAsync('GetSchedulerTemplateConfigurationAsync');\n return cachedSchedulerTemplateConfiguration;\n } else {\n throw 'Job Blob Configuration DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getTooltipTemplateConfiguration = async (useCache: boolean = true): Promise => {\n if (useCache && cachedTooltipTemplateConfiguration != null)\n return cachedTooltipTemplateConfiguration;\n\n if (dotNetObj) {\n cachedTooltipTemplateConfiguration = await dotNetObj.invokeMethodAsync('GetTooltipTemplateConfigurationAsync');\n return cachedTooltipTemplateConfiguration;\n } else {\n throw 'Job Blob Configuration DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getSchedulerTemplateConfiguration,\n getTooltipTemplateConfiguration,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { JobCategory } from '@crimsontide/core/client/interfaces';\n\nexport const JobCategoryService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobCategories: JobCategory[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobCategoriesByJobAreaIds = async (jobAreaIds: string[]): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetByJobAreaIdsAsync', jobAreaIds);\n } else {\n throw 'Job Category DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getJobCategories = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobCategories != null)\n return cachedJobCategories;\n\n if (dotNetObj) {\n cachedJobCategories = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedJobCategories;\n } else {\n throw 'Job Category DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobCategoriesByJobAreaIds,\n getJobCategories,\n };\n})();\n", "import { JobIssue } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const JobIssueService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobIssues: JobIssue[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobIssuesByJobCategoryIds = async (jobCategoryIds: string[]): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetByJobCategoryIdsAsync', jobCategoryIds);\n } else {\n throw 'Job Issue DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getJobIssues = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobIssues != null)\n return cachedJobIssues;\n\n if (dotNetObj) {\n cachedJobIssues = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedJobIssues;\n } else {\n throw 'Job Issue DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobIssuesByJobCategoryIds,\n getJobIssues,\n };\n})();\n", "import {\n Job,\n JobAssignees\n} from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\nimport { JobPatch } from '../../../../build/mpro-job-components/types/interfaces/advanced-editor.interface';\nimport { AutoGenerateJobDataResponseModel, AutoGenerateCloneJobDataResponseModel } from '@crimsontide/core/client/response-models';\n\nlet dotNetObj: DotNetObject;\n\nexport const JobService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobs = async (\n startDate: Date,\n endDate: Date,\n batchNumber: number = 0,\n includeRecurring: Boolean = false,\n newWebsiteUrl: string\n ): Promise => {\n return await fetch(newWebsiteUrl + 'api/Job/get?' + new URLSearchParams({\n startDate: startDate.toISOString(),\n endDate: endDate.toISOString(),\n batchNumber: batchNumber.toString(),\n includeRecurring: includeRecurring.toString(),\n }),\n {\n method: 'GET',\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(jobs => jobs.json());\n };\n\n const getRecurringJobs = async (\n startDate: Date,\n endDate: Date,\n batchNumber: number = 0,\n newWebsiteUrl: string\n ): Promise => {\n return await fetch(newWebsiteUrl + 'api/Job/getRecurring?' + new URLSearchParams({\n startDate: startDate.toISOString(),\n endDate: endDate.toISOString(),\n batchNumber: batchNumber.toString(),\n }),\n {\n method: 'GET',\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(jobs => jobs.json());\n };\n\n const getAssigneesForJob = async (): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('GetAssigneesForJobAsync');\n };\n\n const deleteJob = async (jobId: string): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('DeleteByIdAsync', jobId);\n };\n\n const removeRecurringJobInstance = async (parentJobId: string, startDate: Date): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('RemoveRecurringJobInstanceAsync', parentJobId, startDate);\n };\n\n const createRecurringJobOccurrence = async (addOperation: JobPatch, updateOperation: JobPatch): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('CreateRecurringJobOccurrenceAsync', addOperation, updateOperation);\n };\n\n const getJobByIdWithChildEntities = async (jobId: string): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('GetJobByIdWithChildEntitiesAsync', jobId);\n };\n\n const autoGenerateNewJobData = async (): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('AutoGenerateNewJobDataAsync');\n };\n\n const autoGenerateCloneJobData = async (jobId: string): Promise => {\n validateDotNetObjectReference()\n return await dotNetObj.invokeMethodAsync('AutoGenerateCloneJobDataAsync', jobId);\n };\n\n const validateDotNetObjectReference = () => {\n if (!dotNetObj) {\n throw 'Job DotNet Object Reference has not yet been implemented';\n }\n }\n\n return {\n setDotNetReference,\n getJobs,\n getRecurringJobs,\n getAssigneesForJob,\n deleteJob,\n removeRecurringJobInstance,\n createRecurringJobOccurrence,\n getJobByIdWithChildEntities,\n autoGenerateNewJobData,\n autoGenerateCloneJobData\n };\n})();\n", "import { JobStatus } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const JobStatusService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobStatuses: JobStatus[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobStatuses = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobStatuses != null)\n return cachedJobStatuses;\n\n if (dotNetObj) {\n cachedJobStatuses = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedJobStatuses;\n } else {\n throw 'Job Status DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobStatuses,\n };\n})();\n", "import { JobType } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const JobTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobTypes: JobType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobTypes != null)\n return cachedJobTypes;\n\n if (dotNetObj) {\n cachedJobTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedJobTypes;\n } else {\n throw 'Job Type DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobTypes,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { MproDef } from '@crimsontide/core/client/interfaces';\n\nexport const MproDefService = (() => {\n let dotNetObj: DotNetObject;\n let cachedMproDefs: MproDef[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getMproDefs = async (useCache: boolean = true): Promise => {\n if (useCache && cachedMproDefs != null)\n return cachedMproDefs;\n\n if (dotNetObj) {\n cachedMproDefs = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedMproDefs;\n } else {\n throw 'Mpro Def DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getMproDefs,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { InvoiceLineType } from '@crimsontide/core/client/interfaces';\n\nexport const InvoiceLineTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedInvoiceLineTypes: InvoiceLineType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getInvoiceLineTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedInvoiceLineTypes != null)\n return cachedInvoiceLineTypes;\n\n if (dotNetObj) {\n cachedInvoiceLineTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedInvoiceLineTypes;\n } else {\n throw 'Invoice Line Type DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getInvoiceLineTypes,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { PartStatus } from '@crimsontide/core/client/interfaces';\n\nexport const PartStatusService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPartStatuses: PartStatus[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPartStatuses = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPartStatuses != null)\n return cachedPartStatuses;\n\n if (dotNetObj) {\n cachedPartStatuses = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedPartStatuses;\n } else {\n throw 'Part Status DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPartStatuses,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { SLA } from '@crimsontide/core/client/interfaces'\n\nexport const SlaService = (() => {\n let dotNetObj: DotNetObject;\n let cachedSlas: SLA[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getAll = async (useCache: boolean = true): Promise => {\n if (useCache && cachedSlas != null)\n return cachedSlas;\n\n if (dotNetObj) {\n cachedSlas = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedSlas;\n } else {\n throw 'SLA DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getByContractIds = async (contractIds: string[]): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetByContractIdsAsync', contractIds);\n } else {\n throw 'SLA DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getAll,\n getByContractIds,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { Product } from '@crimsontide/core/client/interfaces';\n\nexport const ProductService = (() => {\n let dotNetObj: DotNetObject;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getProducts = async (\n customerId: string, \n siteId: string, \n jobInvoiceLineId: string, \n quoteLineId: string, \n invoiceLineId: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetAsync', customerId, siteId, jobInvoiceLineId, quoteLineId, invoiceLineId);\n } else {\n throw 'Product DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getProducts,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { Vendor } from '@crimsontide/core/client/interfaces';\nimport { VendorProduct } from '@crimsontide/core/client/interfaces';\n\nexport const VendorService = (() => {\n let dotNetObj: DotNetObject;\n let cachedVendors: Vendor[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getVendors = async (useCache: boolean = true): Promise => {\n if (useCache && cachedVendors != null)\n return cachedVendors;\n\n if (dotNetObj) {\n cachedVendors = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedVendors;\n } else {\n throw 'Vendor DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getVendorProducts = async (\n customerId: string,\n siteId: string,\n productId: string\n ): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync\n (\n 'GetVendorProductsAsync',\n customerId,\n siteId,\n productId\n );\n } else {\n throw 'Vendor DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getVendors,\n getVendorProducts,\n };\n})();\n", "import { TimesheetType } from \"@crimsontide/core/client/interfaces\";\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const TimesheetTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedTimesheetTypes: TimesheetType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getTimesheetTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedTimesheetTypes != null)\n return cachedTimesheetTypes;\n\n if (dotNetObj) {\n cachedTimesheetTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedTimesheetTypes;\n } else {\n throw 'Timesheet Type DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getTimesheetTypes,\n };\n})();\n", "import { JobNoteType } from \"@crimsontide/core/client/interfaces\";\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const JobNoteTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedJobNoteTypes: JobNoteType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobNoteTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedJobNoteTypes != null)\n return cachedJobNoteTypes;\n\n if (dotNetObj) {\n cachedJobNoteTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedJobNoteTypes;\n } else {\n throw 'Job Note Type DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobNoteTypes,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { AxPart } from '@crimsontide/core/client/interfaces';\n\nexport const AxPartService = (() => {\n let dotNetObj: DotNetObject;\n let cachedAxParts: AxPart[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getAxParts = async (useCache: boolean = true): Promise => {\n if (useCache && cachedAxParts != null)\n return cachedAxParts;\n\n if (dotNetObj) {\n cachedAxParts = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedAxParts;\n } else {\n throw 'AxPart DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getAxParts,\n };\n})();\n", "import { Customer } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedCustomers: Customer[];\n\nexport const CustomerService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getCustomers = async (customerId?: string, useCache: boolean = true): Promise => {\n if (useCache && customerId == null && cachedCustomers != null)\n return cachedCustomers;\n\n return await fetch('/api/Customer/get?' + new URLSearchParams({\n customerId: customerId?.toString() ?? '',\n }),\n {\n method: 'GET',\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(customers => customers.json());\n };\n\n return {\n setDotNetReference,\n getCustomers,\n };\n})();\n", "import { Site } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\n\nexport const SiteService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getSites = async (customerIds: string[], siteId?: string): Promise => {\n return await fetch('/api/Site/getCascading',\n {\n method: 'POST',\n body: JSON.stringify({\n customerIds: customerIds,\n siteId: siteId,\n }),\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(sites => sites.json());\n };\n\n return {\n setDotNetReference,\n getSites,\n };\n})();\n", "import { Location } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\n\nexport const LocationService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getLocations = async (siteIds: string[], locationId?: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetCascadingAsync', siteIds, locationId);\n } else {\n throw 'Location DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getLocations,\n };\n})();\n", "import { SubLocation } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\n\nexport const SubLocationService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getSubLocations = async (locationIds: string[], subLocationId?: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetCascadingAsync', locationIds, subLocationId);\n } else {\n throw 'SubLocation DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getSubLocations,\n };\n})();\n", "import { Team } from '@crimsontide/core/client/interfaces'\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedTeams: Team[];\n\nexport const TeamService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getTeams = async (teamId?: string, useCache: boolean = true): Promise => {\n if (useCache && teamId == null && cachedTeams != null)\n return cachedTeams;\n\n return await fetch('/api/Team/get?' + new URLSearchParams({\n teamId: teamId?.toString() ?? '',\n }),\n {\n method: 'GET',\n credentials: 'same-origin',\n headers: {\n 'Content-Type': 'application/json',\n 'X-CSRF': '1',\n }\n }\n ).then(teams => teams.json());\n };\n\n return {\n setDotNetReference,\n getTeams,\n };\n})();\n", "import { Media } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const MediaService = (() => {\n let dotNetObj: DotNetObject;\n let cachedMedias: Media[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getMedia = async (useCache: boolean = true): Promise => {\n if (useCache && cachedMedias != null)\n return cachedMedias;\n\n if (dotNetObj) {\n cachedMedias = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedMedias;\n } else {\n throw 'Media DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getMedia,\n };\n})();\n", "import { JobResourceCategory } from \"@crimsontide/core/client/interfaces\";\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const DocStoreService = (() => {\n let dotNetObj: DotNetObject;\n let cachedDocStoreCategories: JobResourceCategory[];\n let tempDocStoreCategories: JobResourceCategory[] = [];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getDocStoreCategories = async (useCache: boolean = true): Promise => {\n if (useCache && cachedDocStoreCategories != null)\n return cachedDocStoreCategories;\n\n if (dotNetObj) {\n cachedDocStoreCategories = await dotNetObj.invokeMethodAsync('GetDocStoreCategoriesAsync');\n return cachedDocStoreCategories;\n } else {\n throw 'DocStore DotNet Object Reference has not yet been implemented';\n }\n };\n const getTempDocStoreCategories = (): JobResourceCategory[] => {\n return tempDocStoreCategories;\n };\n const addNewTempDocStoreCategory = (newCategory: JobResourceCategory): void => {\n tempDocStoreCategories.push(newCategory)\n };\n\n const clearTempDocStoreCategory = (): void => {\n tempDocStoreCategories = [];\n };\n\n const uploadResource = async (resourceId: string, file: Blob): Promise => {\n if (dotNetObj) {\n const mimeType: string = file.type;\n\n const fileAsArrayBuffer: ArrayBuffer = await file.arrayBuffer();\n const fileContents: Uint8Array = new Uint8Array(fileAsArrayBuffer);\n\n return await dotNetObj.invokeMethodAsync('UploadResourceAsync', resourceId, fileContents, mimeType);\n } else {\n throw 'DocStore DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getDocStoreCategories,\n uploadResource,\n getTempDocStoreCategories,\n addNewTempDocStoreCategory,\n clearTempDocStoreCategory\n };\n})();\n", "import { ExpenseType } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const ExpenseTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedExpenseTypes: ExpenseType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getExpenseTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedExpenseTypes != null)\n return cachedExpenseTypes;\n\n if (dotNetObj) {\n cachedExpenseTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedExpenseTypes;\n } else {\n throw 'Expense Type DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getExpenseTypes,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\n\nexport const UserSettingProfileService = (() => {\n let dotNetObj: DotNetObject;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const insert = async (subFolderPath: string, fileName: string, fileContents: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('InsertAsync', subFolderPath, fileName, fileContents);\n } else {\n throw 'UserProfileSetting DotNet Object Reference has not yet been implemented';\n }\n };\n\n const get = async (subFolderPath: string, fileName: string): Promise => {\n if (dotNetObj) {\n const fileContents: string = await dotNetObj.invokeMethodAsync('GetFileContentsAsync', subFolderPath, fileName);\n\n return JSON.parse(fileContents);\n } else {\n throw 'UserProfileSetting DotNet Object Reference has not yet been implemented';\n }\n };\n\n const update = async (subFolderPath: string, fileName: string, fileContents: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('UpdateAsync', subFolderPath, fileName, fileContents);\n } else {\n throw 'UserProfileSetting DotNet Object Reference has not yet been implemented';\n }\n };\n\n const deleteItem = async (subFolderPath: string, fileName: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('DeleteAsync', subFolderPath, fileName);\n } else {\n throw 'UserProfileSetting DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n insert,\n get,\n update,\n deleteItem,\n };\n})();\n", "import { QxForm } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedQxForms: QxForm[];\n\nexport const QxFormService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getQxForms = async (useCache: boolean = true): Promise => {\n if (useCache && cachedQxForms != null)\n return cachedQxForms;\n\n if (dotNetObj) {\n cachedQxForms = await dotNetObj.invokeMethodAsync('GetQxFormByWebUserAsync');\n return cachedQxForms;\n } else {\n throw 'QxForm DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getQxFormsByCustomerSite = async (siteId: string, customerId?: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetQxFormByCustomerSiteWebUserAsync', customerId, siteId);\n } else {\n throw 'QxForm DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getQxForms,\n getQxFormsByCustomerSite,\n };\n})();\n", "import { AxAsset } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedAssets: AxAsset[];\n\nexport const AxAssetService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getAxAssets = async (useCache: boolean = true): Promise => {\n if (useCache && cachedAssets != null)\n return cachedAssets;\n\n if (dotNetObj) {\n cachedAssets = await dotNetObj.invokeMethodAsync('GetAxAssetByWebUserAsync');\n return cachedAssets;\n } else {\n throw 'AxAsset DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getAxAssetsByCustomerSite = async (siteId: string, customerId?: string): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetAxAssetByCustomerSiteWebUserAsync', customerId, siteId);\n } else {\n throw 'AxAsset DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getAxAssets,\n getAxAssetsByCustomerSite,\n };\n})();\n", "import { AxAssetStatus } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\nlet cachedAssetStatuses: AxAssetStatus[];\n\nexport const AxAssetStatusService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getAxAssetStatuses = async (useCache: boolean = true): Promise => {\n if (useCache && cachedAssetStatuses != null)\n return cachedAssetStatuses;\n\n if (dotNetObj) {\n cachedAssetStatuses = await dotNetObj.invokeMethodAsync('GetAxAssetStatusesAsync');\n return cachedAssetStatuses;\n } else {\n throw 'AxAsset Status DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getAxAssetStatuses,\n };\n})();\n", "\uFEFFimport { AdHocAudit, AssetAudit, JobAudit, QxAudit } from '@crimsontide/core/client/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nlet dotNetObj: DotNetObject;\n\nexport const QxAuditService = (() => {\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getQxAudits = async (startDate?: Date, endDate?: Date): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetAsync', startDate, endDate);\n } else {\n throw 'QxAudit DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getJobAudits = async (startDate?: Date, endDate?: Date): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetJobAuditsAsync', startDate, endDate);\n } else {\n throw 'QxAudit DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getAssetAudits = async (startDate?: Date, endDate?: Date): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetAssetAuditsAsync', startDate, endDate);\n } else {\n throw 'QxAudit DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getAdHocAudits = async (startDate?: Date, endDate?: Date): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetAdHocAuditsAsync', startDate, endDate);\n } else {\n throw 'QxAudit DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getQxAudits,\n getJobAudits,\n getAssetAudits,\n getAdHocAudits,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { QxQuestionType } from '@crimsontide/core/client/interfaces';\n\nexport const QxQuestionTypeService = (() => {\n let dotNetObj: DotNetObject;\n let cachedQxQuestionTypes: QxQuestionType[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getQxQuestionTypes = async (useCache: boolean = true): Promise => {\n if (useCache && cachedQxQuestionTypes != null)\n return cachedQxQuestionTypes;\n\n if (dotNetObj) {\n cachedQxQuestionTypes = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedQxQuestionTypes;\n } else {\n throw 'QxQuestionType DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getQxQuestionTypes,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { TaskCategory } from '@crimsontide/core/client/interfaces';\n\nexport const TaskCategoryService = (() => {\n let dotNetObj: DotNetObject;\n let cachedTaskCategories: TaskCategory[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getTaskCategories = async (useCache: boolean = true): Promise => {\n if (useCache && cachedTaskCategories != null)\n return cachedTaskCategories;\n\n if (dotNetObj) {\n cachedTaskCategories = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedTaskCategories;\n } else {\n throw 'Task Category DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getTaskCategories,\n };\n})();\n", "\uFEFFimport DotNetObject = DotNet.DotNetObject;\nimport { WebReport } from '@crimsontide/core/client/interfaces';\n\nexport const WebReportService = (() => {\n let dotNetObj: DotNetObject;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getJobCompletionReports = async (): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetJobCompletionWebReportsAsync');\n } else {\n throw 'WebReport DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getJobCompletionReports,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { WebUser } from '@crimsontide/core/client/interfaces';\n\nexport const WebUserService = (() => {\n let dotNetObj: DotNetObject;\n let cachedWebUsers: WebUser[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getWebsiteWebUsers = async (useCache: boolean = true): Promise => {\n if (useCache && cachedWebUsers != null)\n return cachedWebUsers;\n\n if (dotNetObj) {\n cachedWebUsers = await dotNetObj.invokeMethodAsync('GetWebsiteWebUsersAsync');\n return cachedWebUsers;\n } else {\n throw 'Web User DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getWebsiteWebUsers,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { PermissionAssetGroup } from '@crimsontide/core/client/interfaces';\n\nexport const PermissionAssetGroupService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPermissionAssetGroups: PermissionAssetGroup[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPermissionAssetGroups = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPermissionAssetGroups != null)\n return cachedPermissionAssetGroups;\n\n if (dotNetObj) {\n cachedPermissionAssetGroups = await dotNetObj.invokeMethodAsync('GetPermissionAssetGroupsAsync');\n return cachedPermissionAssetGroups;\n } else {\n throw 'PermissionAssetGroupService DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPermissionAssetGroups,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { PermissionCrmContactGroup } from '@crimsontide/core/client/interfaces';\n\nexport const PermissionCrmContactGroupService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPermissionCrmContactGroups: PermissionCrmContactGroup[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPermissionCrmContactGroups = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPermissionCrmContactGroups != null)\n return cachedPermissionCrmContactGroups;\n\n if (dotNetObj) {\n cachedPermissionCrmContactGroups = await dotNetObj.invokeMethodAsync('GetPermissionCrmContactGroupsAsync');\n return cachedPermissionCrmContactGroups;\n } else {\n throw 'PermissionCrmContactGroupService DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPermissionCrmContactGroups,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { PermissionJobGroup } from '@crimsontide/core/client/interfaces';\n\nexport const PermissionJobGroupService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPermissionJobGroups: PermissionJobGroup[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPermissionJobGroups = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPermissionJobGroups != null)\n return cachedPermissionJobGroups;\n\n if (dotNetObj) {\n cachedPermissionJobGroups = await dotNetObj.invokeMethodAsync('GetPermissionJobGroupsAsync');\n return cachedPermissionJobGroups;\n } else {\n throw 'PermissionJobGroupService DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPermissionJobGroups,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { PermissionSystemGroup } from '@crimsontide/core/client/interfaces';\n\nexport const PermissionSystemGroupService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPermissionSystemGroups: PermissionSystemGroup[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPermissionSystemGroups = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPermissionSystemGroups != null)\n return cachedPermissionSystemGroups;\n\n if (dotNetObj) {\n cachedPermissionSystemGroups = await dotNetObj.invokeMethodAsync('GetPermissionSystemGroupsAsync');\n return cachedPermissionSystemGroups;\n } else {\n throw 'PermissionSystemGroupService DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPermissionSystemGroups,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport { WebUserPermission, EditWebUserPermission } from '@crimsontide/core/client/interfaces';\n\nexport const WebUserPermissionService = (() => {\n let dotNetObj: DotNetObject;\n let cachedWebUserPermissions: WebUserPermission[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getByCurrentWebUser = async (): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetByCurrentWebUserAsync');\n } else {\n throw 'WebUserPermissionService DotNet Object Reference has not yet been implemented';\n }\n };\n\n const getWebUserPermissions = async (useCache: boolean = true): Promise => {\n if (useCache && cachedWebUserPermissions != null)\n return cachedWebUserPermissions;\n\n if (dotNetObj) {\n cachedWebUserPermissions = await dotNetObj.invokeMethodAsync('GetAllAsync');\n return cachedWebUserPermissions;\n } else {\n throw 'WebUserPermissionService DotNet Object Reference has not yet been implemented';\n }\n };\n\n const editWebUserPermission = async (editWebUserPermission: EditWebUserPermission): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('EditAsync', editWebUserPermission);\n } else {\n throw 'WebUserPermissionService DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getByCurrentWebUser,\n getWebUserPermissions,\n editWebUserPermission,\n };\n})();\n", "import DotNetObject = DotNet.DotNetObject;\nimport {\n PermissionGroup,\n PermissionGroupGetResponseModel,\n PermissionGroupResponseModel\n} from '@crimsontide/core/client/interfaces';\n\nexport const PermissionGroupService = (() => {\n let dotNetObj: DotNetObject;\n let cachedPermissionGroups: PermissionGroupGetResponseModel[];\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const getPermissionGroups = async (useCache: boolean = true): Promise => {\n if (useCache && cachedPermissionGroups != null)\n return cachedPermissionGroups;\n\n if (dotNetObj) {\n cachedPermissionGroups = await dotNetObj.invokeMethodAsync('GetAsync');\n return cachedPermissionGroups;\n } else {\n throw 'Permission Group DotNet Object Reference has not yet been implemented';\n }\n };\n\n\n const createAsync = async (newPermissionGroup: PermissionGroup): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('CreateAsync', newPermissionGroup);\n } else {\n throw 'Permission Group DotNet Object Reference has not yet been implemented';\n }\n };\n\n const updateAsync = async (updatedPermissionGroup: PermissionGroup): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('UpdateAsync', updatedPermissionGroup);\n } else {\n throw 'Permission Group DotNet Object Reference has not yet been implemented';\n }\n };\n\n const deleteAsync = async (permissionGroupToDelete: PermissionGroup): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('DeleteAsync', permissionGroupToDelete);\n } else {\n throw 'Permission Group DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n getPermissionGroups,\n createAsync,\n updateAsync,\n deleteAsync\n };\n})();\n", "import { ContractService } from './contract/contract.service';\nimport { CrmContactService } from './crm-contact/crm-contact.service';\nimport { EngineerService } from './engineer/engineer.service';\nimport { JobAreaService } from './job-area/job-area.service';\nimport { JobBlobConfigurationService } from './job-blob-configuration/job-blob-configuration.service';\nimport { JobCategoryService } from './job-category/job-category.service';\nimport { JobIssueService } from './job-issue/job-issue.service';\nimport { JobService } from './job/job.service';\nimport { JobStatusService } from './job-status/job-status.service';\nimport { JobTypeService } from './job-type/job-type.service';\nimport { MproDefService } from './mpro-def/mpro-def.service';\nimport { InvoiceLineTypeService } from './invoice-line-type/invoice-line-type.service';\nimport { PartStatusService } from './part-status/part-status.service';\nimport { SlaService } from './sla/sla.service';\nimport { ProductService } from './product/product.service';\nimport { VendorService } from './vendor/vendor.service';\nimport { TimesheetTypeService } from './timesheet-type/timesheet-type.service';\nimport { JobNoteTypeService } from './job-note-type/job-note-type.service';\nimport { AxPartService } from './ax-part/ax-part.service';\nimport { CustomerService } from './customer/customer.service';\nimport { SiteService } from './site/site.service';\nimport { LocationService } from './location/location.service';\nimport { SubLocationService } from './sub-location/sub-location.service';\nimport { TeamService } from './team/team.service';\nimport { MediaService } from './media/media.service';\nimport { DocStoreService } from './doc-store/doc-store.service';\nimport { ExpenseTypeService } from './expense-type/expense-type.service';\nimport { UserSettingProfileService } from './user-setting-profile/user-setting-profile.service';\nimport { QxFormService } from './qx-form/qx-form.service';\nimport { AxAssetService } from './ax-asset/ax-asset.service';\nimport { AxAssetStatusService } from './ax-asset-status/ax-asset-status-service';\nimport { QxAuditService } from './qx-audit/qx-audit.service';\nimport { QxQuestionTypeService } from './qx-question-type/qx-question-type.service';\nimport { TaskCategoryService } from './task-category/task-category.service';\nimport { WebReportService } from './web-reports/web-reports.service';\nimport { WebUserService } from './web-user/web-user.service';\nimport { PermissionAssetGroupService } from './permission-asset-group/permission-asset-group.service';\nimport { PermissionCrmContactGroupService } from './permission-crm-contact-group/permission-crm-contact-group.service';\nimport { PermissionJobGroupService } from './permission-job-group/permission-job-group.service';\nimport { PermissionSystemGroupService } from './permission-system-group/permission-system-group.service';\nimport { WebUserPermissionService } from './web-user-permission/web-user-permission.service';\nimport { PermissionGroupService } from './permission-group/permission-group.service';\n\nexport const ApiService = {\n AxAssetService,\n AxAssetStatusService,\n ContractService,\n CrmContactService,\n JobIssueService,\n JobCategoryService,\n JobAreaService,\n JobBlobConfigurationService,\n JobStatusService,\n JobTypeService,\n EngineerService,\n JobService,\n MproDefService,\n InvoiceLineTypeService,\n PartStatusService,\n QxFormService,\n QxQuestionTypeService,\n SlaService,\n TaskCategoryService,\n ProductService,\n VendorService,\n TimesheetTypeService,\n JobNoteTypeService,\n AxPartService,\n CustomerService,\n SiteService,\n LocationService,\n SubLocationService,\n TeamService,\n MediaService,\n DocStoreService,\n ExpenseTypeService,\n QxAuditService,\n UserSettingProfileService,\n WebReportService,\n WebUserService,\n PermissionAssetGroupService,\n PermissionCrmContactGroupService,\n PermissionJobGroupService,\n PermissionSystemGroupService,\n WebUserPermissionService,\n PermissionGroupService\n};\n", "import DotNetObject = DotNet.DotNetObject;\n\nexport const GuidService = (() => {\n let dotNetObj: DotNetObject;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const generateGuid = async (): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GenerateGuid');\n } else {\n throw 'Guid DotNet Object Reference has not yet been implemented';\n }\n };\n\n return {\n setDotNetReference,\n generateGuid,\n };\n})();", "\uFEFFexport const NavigationService = (() => {\n\n const initNavMenuDropdown = (): void => {\n let navMenuDropdown = document.querySelector('.nav-menu-dropdown');\n\n if (navMenuDropdown != null) {\n navMenuDropdown.addEventListener('click', function (event) {\n event.stopPropagation();\n navMenuDropdown?.classList.toggle('is-active');\n });\n }\n }\n\n const initNavBarTitle = (title: string): void => {\n let navMenuTitle = document.querySelector('.nav-menu-title');\n\n if (navMenuTitle != null) {\n navMenuTitle.textContent = title;\n }\n }\n\n const openLogOutAlert = async (url: string) => {\n const languageService = (window as any).Mpro.LanguageService;\n \n const alert = await (window as any).Mpro.AlertController.create({\n alertTitle: languageService.translate('page.shared.logout.alert.titleLabel'),\n alertMessage: languageService.translate('page.shared.logout.alert.messageLabel'),\n buttons: [\n {\n text: languageService.translate('page.shared.logout.alert.button.confirmBtn'),\n href: url,\n handler: () => \n { \n const keysToRemove = [\"nav-menu-cache\", \"config-nav-menu-cache\"];\n\n keysToRemove.forEach(key =>\n localStorage.removeItem(key));\n },\n },\n {\n text: languageService.translate('page.shared.logout.alert.button.rejectBtn'),\n }\n ],\n });\n \n return alert.present();\n }\n \n return {\n initNavMenuDropdown,\n initNavBarTitle,\n openLogOutAlert,\n };\n})();", "import { UserClaim, UserIdentityClaim } from '@crimsontide/core/client/user-permissions/interfaces';\nimport DotNetObject = DotNet.DotNetObject;\n\nexport const UserPermissionService = (() => {\n let dotNetObj: DotNetObject;\n\n const setDotNetReference = (obj: DotNetObject): void => {\n dotNetObj = obj;\n };\n\n const ready = async (): Promise => {\n return new Promise((resolve) => {\n const timer = setInterval(() => {\n if (dotNetObj) {\n clearTimeout(timer);\n resolve();\n }\n }, 10);\n });\n }\n\n const getUserClaims = async (): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetUserClaims', true);\n } else {\n throw 'AuthenticationService DotNet Object Reference has not yet been implemented';\n }\n }\n\n const getUserClaimValues = async (): Promise => {\n if (dotNetObj) {\n return await dotNetObj.invokeMethodAsync('GetUserClaimValues', true);\n } else {\n throw 'AuthenticationService DotNet Object Reference has not yet been implemented';\n }\n }\n\n return {\n ready,\n setDotNetReference,\n getUserClaims: getUserClaims,\n getUserClaimValues: getUserClaimValues,\n };\n})();\n", "import { UserPermissionService } from './user-permission/user-permission.service';\n\nexport const UserService = (() => {\n return {\n UserPermissionService,\n }\n})();\n", "import { LanguageService } from './language/language.service';\nimport { ApiService } from './api/api.service';\nimport { GuidService } from './guid/guid.service';\nimport { NavigationService } from './navigation/navigation.service';\nimport { UserService } from './user/user.service';\n\nexport default {\n LanguageService: LanguageService,\n ApiService: ApiService,\n GuidService: GuidService,\n NavigationService: NavigationService,\n UserService: UserService,\n};\n", "import Services from './js-services/services';\n\n// no typings available from MSoft for this ... for some reason\n// https://github.com/dotnet/aspnetcore/issues/10124\n(window as any).Blazor.registerCustomEventType('roottemplatechange', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n },\n});\n\n(window as any).Blazor.registerCustomEventType('jobadded', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n }\n});\n\n(window as any).Blazor.registerCustomEventType('jobupdated', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n }\n});\n\n(window as any).Blazor.registerCustomEventType('jobdeleted', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n }\n});\n\n(window as any).Blazor.registerCustomEventType('childjobadded', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n }\n});\n\n(window as any).Blazor.registerCustomEventType('recurringjobexceptionadded', {\n createEventArgs: function (event: UIEvent) {\n return {\n detail: event.detail\n };\n }\n});\n\nconst token: string = 'Mpro';\nconst Mpro = (globalThis as any)[token] = (globalThis as any)[token] || {};\n\n// assign instance of the services to the window\nObject.assign(Mpro, Services);\n"], "mappings": "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", "names": [] }