{ "version": 3, "sources": ["src/app/dashboard/integrations/insights/insights.mock.ts", "src/app/shared/services/api.service.ts", "src/app/dashboard/integrations/insights/iot-insight.service.ts"], "sourcesContent": ["/**\n * Copyright (c) 2020-2023 by Bosch.IO GmbH\n *\n * http://www.bosch.io\n * All rights reserved,\n * also regarding any disposal, exploitation, reproduction,\n * editing, distribution, as well as in the event of\n * applications for industrial property rights.\n *\n * This software is the confidential and proprietary information\n * of Bosch.IO GmbH. You shall not disclose\n * such Confidential Information and shall use it only in\n * accordance with the terms of the license agreement you\n * entered into with Bosch.IO.\n */\nexport const mockIotThingsApiResponse = {\n items: [\n {\n thingId: 'prj5520:project_1165057175',\n policyId: 'prj5520:project_1165057175',\n attributes: {\n type: 'project',\n },\n features: {\n general: {\n definition: ['insights:general:1'],\n properties: {\n 'name': 'X_Test_Hz_AUDI_1788',\n 'description':\n 'Test AUDI diesel, based on ...For DEMO and TESTING only!!',\n 'Customer Brand': 'AUDI',\n 'ECU used for': 'Diesel Engine',\n 'ECU used in': 'PC - Passenger Car',\n 'ECU Generation': 'MD1-C',\n 'pidcVersId': '1165057178',\n 'versionName': '1788',\n 'customerId': '154',\n 'createdAt': '2018-01-24 16:28:16 864',\n 'modifiedAt': '2023-04-25 11:18:05 363',\n },\n },\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {\n html: [\n {\n type: 'paragraph',\n children: [\n {\n text: 'sdfdsfdf',\n },\n ],\n },\n ],\n },\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {\n hyperlinkList: [\n {\n label: 'iCDM project',\n url: 'icdm:pidvid,1165057178',\n },\n ],\n },\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n status: 'visible',\n showHistoryFrom: '',\n },\n },\n },\n },\n {\n thingId: 'prj5520:project_1234',\n policyId: 'prj5520:project_1234',\n attributes: {\n type: 'project',\n },\n features: {\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n general: {\n definition: ['insights:general:1'],\n properties: {\n description: '',\n name: 'testprojectohneicdm',\n },\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n status: 'visible',\n showHistoryFrom: '1900-01-01T11:00:00.000Z',\n },\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n dynamic_hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n },\n },\n {\n thingId: 'prj5520:project_38251442017',\n policyId: 'prj5520:project_38251442017',\n attributes: {\n type: 'project',\n },\n features: {\n general: {\n definition: ['insights:general:1'],\n properties: {\n 'name': 'Test_Demo_Project_Andre',\n 'description': 'for testing and demo purpose only 1',\n 'Customer Brand': 'X_Testcustomer',\n 'ECU used for': 'Gasoline Engine',\n 'ECU used in': 'PC - Passenger Car',\n 'ECU Generation': 'MG1-C',\n 'pidcVersId': '38251442019',\n 'versionName': 'Version 1',\n 'customerId': '2332',\n 'createdAt': '2022-03-16 08:32:22 934',\n 'modifiedAt': '2023-04-14 13:05:11 438',\n },\n },\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {\n hyperlinkList: [\n {\n label: 'iCDM project',\n url: 'icdm:pidvid,38251442019',\n },\n ],\n },\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n status: 'visible',\n showHistoryFrom: '',\n },\n },\n },\n },\n {\n thingId: 'prj5520:project_773936067',\n policyId: 'prj5520:project_773936067',\n attributes: {\n type: 'project',\n },\n features: {\n general: {\n definition: ['insights:general:1'],\n properties: {\n 'name': 'Demo_Project_Andre',\n 'description': 'For testing and demo purpose only',\n 'Customer Brand': 'X_Testcustomer',\n 'ECU used for': 'Diesel Engine',\n 'ECU used in': 'PC - Passenger Car',\n 'ECU Generation': 'EDC17',\n 'pidcVersId': '773936070',\n 'versionName': '1',\n 'customerId': '2332',\n 'createdAt': '2015-08-13 06:45:40 817',\n 'modifiedAt': '2023-03-14 14:40:05 570',\n },\n },\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {\n hyperlinkList: [\n {\n label: 'iCDM project',\n url: 'icdm:pidvid,773936070',\n },\n ],\n },\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n showHistoryFrom: '',\n status: 'visible',\n },\n },\n },\n },\n {\n thingId: 'prj5520:project_773936070',\n policyId: 'prj5520:project_773936070',\n attributes: {\n type: 'project',\n },\n features: {\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n general: {\n definition: ['insights:general:1'],\n properties: {\n name: 'Demo_Project_Andre',\n description: 'For testing and demo purpose only',\n Customer_Brand: 'X_Testcustomer',\n ECU_used_for: 'Diesel Engine',\n ECU_used_in: 'PC - Passenger Car',\n ECU_Generation: 'EDC17',\n pidcVersId: '773936070',\n versionName: '1',\n customerId: '2332',\n createdAt: '2015-08-13 06:45:40 817',\n modifiedAt: '2023-03-14 14:40:05 570',\n },\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n status: 'visible',\n showHistoryFrom: '1900-01-01T11:00:00.000Z',\n },\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {\n hyperlinkList: [\n {\n label: 'iCDM_project',\n url: 'icdm:pidvid,773936070',\n },\n ],\n },\n },\n dynamic_hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n },\n },\n {\n thingId: 'prj5520:project_810327617',\n policyId: 'prj5520:project_810327617',\n attributes: {\n type: 'project',\n },\n features: {\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n general: {\n definition: ['insights:general:1'],\n properties: {\n name: 'PIDC Demonstrator (Diesel)',\n description: 'PIDC Demonstrator (Diesel)',\n Customer_Brand: 'X_Testcustomer',\n ECU_used_for: 'Diesel Engine',\n ECU_used_in: 'PC - Passenger Car',\n ECU_Generation: 'MD1-C',\n pidcVersId: '810327617',\n versionName: 'Version 2',\n customerId: '2332',\n createdAt: '2017-05-16 10:05:20 379',\n modifiedAt: '2023-02-13 17:00:08 665',\n },\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n showHistoryFrom: '1900-01-01T11:00:00.000Z',\n status: 'visible',\n },\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {\n hyperlinkList: [\n {\n label: 'iCDM_project',\n url: 'icdm:pidvid,810327617',\n },\n ],\n },\n },\n dynamic_hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n },\n },\n {\n thingId: 'prj5520:project_EAXLE',\n policyId: 'prj5520:project_EAXLE',\n attributes: {\n type: 'project',\n },\n features: {\n images: {\n definition: ['insights:images:1'],\n properties: {},\n },\n general: {\n definition: ['insights:general:1'],\n properties: {\n description: '',\n name: 'eAxle',\n },\n },\n dynamic_attributes: {\n definition: ['insights:details:1'],\n properties: {},\n },\n hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n notes: {\n definition: ['insights:rich_text:1'],\n properties: {},\n },\n attachments: {\n definition: ['insights:attachments:1'],\n properties: {},\n },\n settings: {\n definition: ['insights:details:1'],\n properties: {\n showHistoryFrom: '',\n status: 'visible',\n },\n },\n dynamic_hyperlinks: {\n definition: ['insights:hyperlinks:1'],\n properties: {},\n },\n },\n },\n ],\n};\n\nexport const mockUniversalFilterApiResponse = [\n {\n name: 'X_Test_Audi_1788',\n values: ['prj5520:project_1165057175'],\n },\n {\n name: 'TEST_DEMO_PJ_ANDRE',\n values: ['prj5520:project_1165057175', 'prj5520:project_38251442017'],\n },\n];\n", "/**\n * Copyright (c) 2020-2023 by Bosch.IO GmbH\n *\n * http://www.bosch.io\n * All rights reserved,\n * also regarding any disposal, exploitation, reproduction,\n * editing, distribution, as well as in the event of\n * applications for industrial property rights.\n *\n * This software is the confidential and proprietary information\n * of Bosch.IO GmbH. You shall not disclose\n * such Confidential Information and shall use it only in\n * accordance with the terms of the license agreement you\n * entered into with Bosch.IO.\n */\nimport { HttpBackend, HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { first, firstValueFrom, Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApiService {\n constructor(\n private httpBackend: HttpBackend,\n private httpClient: HttpClient\n ) {}\n\n ping(\n url: string,\n intervalDuration: number,\n numberOfTimes: number,\n successMatcherFn: Function,\n attachCookie: boolean\n ): Promise {\n return new Promise((resolve, reject) => {\n let remainingPings = numberOfTimes;\n if (intervalDuration > numberOfTimes) {\n reject('interval duration is greater than timeout after');\n }\n const intervalId = setInterval(async () => {\n try {\n remainingPings -= 1;\n console.log('remaining duration', remainingPings);\n if (remainingPings < 0) {\n clearInterval(intervalId);\n resolve(false as T);\n }\n\n const res = await firstValueFrom(this.get({ url, attachCookie }));\n if (successMatcherFn(res)) {\n clearInterval(intervalId);\n resolve(res);\n }\n } catch (err) {}\n }, intervalDuration);\n });\n }\n\n get({\n url,\n attachCookie = false,\n }: {\n url: string;\n attachCookie?: boolean;\n }): Observable {\n const http = this.getHTTP(attachCookie);\n return http.get(url, { withCredentials: !!attachCookie }).pipe(first());\n }\n put({\n url,\n attachCookie = false,\n body,\n }: {\n url: string;\n attachCookie?: boolean;\n body: U;\n }): Observable {\n const http = this.getHTTP(attachCookie);\n return http.put(url, body);\n }\n\n private getHTTP(requireCookieAttachment: boolean = false) {\n return requireCookieAttachment\n ? new HttpClient(this.httpBackend)\n : this.httpClient;\n }\n}\n", "/**\n * Copyright (c) 2020-2023 by Bosch.IO GmbH\n *\n * http://www.bosch.io\n * All rights reserved,\n * also regarding any disposal, exploitation, reproduction,\n * editing, distribution, as well as in the event of\n * applications for industrial property rights.\n *\n * This software is the confidential and proprietary information\n * of Bosch.IO GmbH. You shall not disclose\n * such Confidential Information and shall use it only in\n * accordance with the terms of the license agreement you\n * entered into with Bosch.IO.\n */\nimport { Injectable } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n BehaviorSubject,\n distinctUntilChanged,\n filter,\n firstValueFrom,\n map,\n withLatestFrom,\n} from 'rxjs';\nimport { env } from '../../../../environments/environment';\nimport { ToastMessageService } from '../../../components/toast/toast-message.service';\nimport { SetInsightProjectsFetcherQuery } from '../../../shared/data/actions/subscription.actions';\nimport {\n SetAvailableInsightProjects,\n SetAvailableInsightProjectsLoaded,\n SetGlobalFilterSelectedProjects,\n SetGlobalFilterSelectedProjectsLoaded,\n} from '../../../shared/data/actions/user.actions';\nimport { AppState } from '../../../shared/data/state/app.state.model';\nimport { BrowserStorageKey } from '../../../shared/models';\nimport { ApiService } from '../../../shared/services/api.service';\nimport { BrowserStorageService } from '../../../shared/services/browser-storage.service';\nimport { UserSubscriptionService } from '../../../shared/services/user-subscriptions.service';\nimport { deepEqual } from '../../../shared/util';\nimport {\n QuickFilterInterface,\n QuickFilterProjectInfo,\n} from '../universal-filter/universal-filter.modal';\nimport { mockIotThingsApiResponse } from './insights.mock';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IotInsightService {\n actionTypeIsInsight$ = new BehaviorSubject(false);\n selectedProjects$ = this.store\n .select((state) => state.user.globalFilterSelectedProjectsLoaded)\n .pipe(\n filter((loaded) => !!loaded),\n withLatestFrom(this.store),\n map(([_, state]) => state.user.globalFilterSelectedProjects),\n distinctUntilChanged((prev, current) => deepEqual(prev, current))\n );\n\n readonly insightsMainQueryParamName = 'initialPath';\n selectedQuickFilter$ = new BehaviorSubject(null);\n constructor(\n private apiService: ApiService,\n private store: Store,\n private toastMessageService: ToastMessageService,\n private translateService: TranslateService,\n private userSubscriptionService: UserSubscriptionService,\n private router: Router,\n private activatedRoute: ActivatedRoute,\n private browserStorageService: BrowserStorageService\n ) {}\n\n init() {\n const selectedFilter = JSON.parse(\n this.browserStorageService.getItem(BrowserStorageKey.selectedFilter)!\n ) as QuickFilterInterface;\n this.selectedQuickFilter$.next(selectedFilter);\n this.selectedProjects$.subscribe((projects) => {\n if (projects?.length) {\n this.browserStorageService.setItem(\n BrowserStorageKey.selectedFilterItems,\n JSON.stringify(projects)\n );\n } else {\n this.removeFilterItemsFromStorage();\n }\n });\n\n this.selectedQuickFilter$.subscribe((value) => {\n if (!!value) {\n this.browserStorageService.setItem(\n BrowserStorageKey.selectedFilter,\n JSON.stringify(value)\n );\n return;\n }\n this.browserStorageService.removeItem(BrowserStorageKey.selectedFilter);\n });\n }\n removeFilterItemsFromStorage() {\n this.browserStorageService.removeItem(\n BrowserStorageKey.selectedFilterItems\n );\n }\n\n async fetchAvailableProjects(projectName: string) {\n const previousProjectFetcherQuery = await firstValueFrom(\n this.store.select(\n (state) => state.subscription.insightProjectsFetcherQuery\n )\n );\n const query = 'eq(attributes/type,\"project\")';\n const filterQuery = `${projectName}/2/search/things?filter=${query}&namespaces=${projectName}&option=size(${200})`;\n if (previousProjectFetcherQuery === filterQuery) {\n console.log(\n 'Filter Query Same as previous - thus no api will be called: ',\n filterQuery\n );\n return firstValueFrom(\n this.store.select((state) => state.user.availableInsightProjects)\n );\n }\n\n this.store.dispatch(new SetInsightProjectsFetcherQuery(filterQuery));\n this.store.dispatch(new SetAvailableInsightProjectsLoaded(false));\n const projects = await this.callApi(filterQuery);\n this.store.dispatch(new SetAvailableInsightProjects(projects || []));\n this.store.dispatch(new SetAvailableInsightProjectsLoaded(true));\n console.log('Filter Query Updated', filterQuery, { projects });\n return projects;\n }\n\n private async callApi(filterQuery: string) {\n const iotThingsApi = 'https://bosch-iot-insights.com/iot-things-api';\n return firstValueFrom(\n this.apiService.get({\n url: `${iotThingsApi}/${filterQuery}`,\n attachCookie: true,\n })\n ).catch((_) => {\n if (env.environment === 'local') {\n return mockIotThingsApiResponse;\n }\n\n const message = this.translateService.instant(\n 'error.messages.iotThingsApiCallFailed'\n );\n this.toastMessageService.showError(message);\n return null;\n });\n }\n\n async getIframeConfig() {\n const activePage = await firstValueFrom(\n this.userSubscriptionService.activePage$\n );\n\n const paramPrefix = `?${this.insightsMainQueryParamName}=`;\n const [insightMainDomain, pathAfterParamPrefix] = (\n activePage.action.uri as string\n ).split(paramPrefix);\n\n const path = pathAfterParamPrefix.split('?')[0];\n const prefixPath = path.substring(0, path.lastIndexOf('/'));\n const prefixForInternalUrl = `${env.BASE_HREF}${\n this.router.url.split('?')[0]\n }${paramPrefix}${prefixPath}/`;\n const toSend = {\n insightMainDomain,\n prefixForInternalUrl,\n };\n\n const initialPath =\n this.activatedRoute.snapshot.queryParams[this.insightsMainQueryParamName];\n if (!initialPath) {\n return {\n ...toSend,\n decodedNavigatedPath: `${paramPrefix}${pathAfterParamPrefix}`,\n };\n }\n\n const decodedNavigatedPath = decodeURIComponent(initialPath);\n\n return {\n ...toSend,\n decodedNavigatedPath: `${paramPrefix}${decodedNavigatedPath}`,\n };\n }\n\n async getCurrentSelectedProjects() {\n // sequence for check is as follows\n // in-memory -> browser storage -> from url\n let selectedProjects = await firstValueFrom(\n this.store.select((state) => state.user.globalFilterSelectedProjects)\n );\n if (selectedProjects?.length) {\n return selectedProjects;\n }\n\n selectedProjects =\n JSON.parse(\n this.browserStorageService.getItem(\n BrowserStorageKey.selectedFilterItems\n )!\n ) || [];\n\n if (selectedProjects?.length) {\n return selectedProjects;\n }\n\n const { decodedNavigatedPath } = await this.getIframeConfig();\n const urlSearchParams = new URLSearchParams(decodedNavigatedPath);\n selectedProjects = this.getProjectListFromSearchParam(urlSearchParams);\n return selectedProjects;\n }\n\n getProjectListFromSearchParam(\n searchParams: URLSearchParams\n ): Array {\n const params = this.getParamsArray(searchParams);\n return params\n .filter((p) => p[0] === 'project')\n .map((item) => ({ id: item[1] })) as Array;\n }\n\n async dispatchSelectedProjects(projects: Array) {\n this.store.dispatch(new SetGlobalFilterSelectedProjectsLoaded(false));\n this.store.dispatch(new SetGlobalFilterSelectedProjects(projects.slice()));\n this.store.dispatch(new SetGlobalFilterSelectedProjectsLoaded(true));\n }\n\n private getParamsArray(\n searchParams: URLSearchParams\n ): Array<[string, string]> {\n return Array.from(searchParams).map(([key, value]) => [key, value]);\n }\n}\n"], "mappings": "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", "names": ["mockIotThingsApiResponse", "items", "thingId", "policyId", "attributes", "type", "features", "general", "definition", "properties", "images", "notes", "html", "children", "text", "attachments", "dynamic_attributes", "hyperlinks", "hyperlinkList", "label", "url", "settings", "status", "showHistoryFrom", "description", "name", "dynamic_hyperlinks", "Customer_Brand", "ECU_used_for", "ECU_used_in", "ECU_Generation", "pidcVersId", "versionName", "customerId", "createdAt", "modifiedAt", "mockUniversalFilterApiResponse", "values", "ApiService", "constructor", "httpBackend", "httpClient", "ping", "url", "intervalDuration", "numberOfTimes", "successMatcherFn", "attachCookie", "Promise", "resolve", "reject", "remainingPings", "intervalId", "setInterval", "console", "log", "clearInterval", "res", "firstValueFrom", "get", "err", "http", "getHTTP", "withCredentials", "pipe", "first", "put", "body", "requireCookieAttachment", "HttpClient", "\u0275\u0275inject", "HttpBackend", "factory", "\u0275fac", "providedIn", "IotInsightService", "constructor", "apiService", "store", "toastMessageService", "translateService", "userSubscriptionService", "router", "activatedRoute", "browserStorageService", "actionTypeIsInsight$", "BehaviorSubject", "selectedProjects$", "select", "state", "user", "globalFilterSelectedProjectsLoaded", "pipe", "filter", "loaded", "withLatestFrom", "map", "_", "globalFilterSelectedProjects", "distinctUntilChanged", "prev", "current", "deepEqual", "insightsMainQueryParamName", "selectedQuickFilter$", "init", "selectedFilter", "JSON", "parse", "getItem", "BrowserStorageKey", "next", "subscribe", "projects", "length", "setItem", "selectedFilterItems", "stringify", "removeFilterItemsFromStorage", "value", "removeItem", "fetchAvailableProjects", "projectName", "previousProjectFetcherQuery", "firstValueFrom", "subscription", "insightProjectsFetcherQuery", "query", "filterQuery", "console", "log", "availableInsightProjects", "dispatch", "SetInsightProjectsFetcherQuery", "SetAvailableInsightProjectsLoaded", "callApi", "SetAvailableInsightProjects", "iotThingsApi", "get", "url", "attachCookie", "catch", "env", "environment", "mockIotThingsApiResponse", "message", "instant", "showError", "getIframeConfig", "activePage", "activePage$", "paramPrefix", "insightMainDomain", "pathAfterParamPrefix", "action", "uri", "split", "path", "prefixPath", "substring", "lastIndexOf", "prefixForInternalUrl", "BASE_HREF", "toSend", "initialPath", "snapshot", "queryParams", "decodedNavigatedPath", "decodeURIComponent", "getCurrentSelectedProjects", "selectedProjects", "urlSearchParams", "URLSearchParams", "getProjectListFromSearchParam", "searchParams", "params", "getParamsArray", "p", "item", "id", "dispatchSelectedProjects", "SetGlobalFilterSelectedProjectsLoaded", "SetGlobalFilterSelectedProjects", "slice", "Array", "from", "key", "\u0275\u0275inject", "ApiService", "Store", "ToastMessageService", "TranslateService", "UserSubscriptionService", "Router", "ActivatedRoute", "BrowserStorageService", "factory", "\u0275fac", "providedIn"] }