@provoly/dashboard 0.14.9 → 0.14.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/components/admin-layout/admin-layout.component.d.ts +5 -3
- package/assets/svgs/map.svg +1 -1
- package/components/metadata-editor/metadata-editor.component.d.ts +1 -3
- package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +1 -1
- package/esm2022/admin/components/admin-layout/admin-layout.component.mjs +10 -7
- package/esm2022/admin/components/admin-user/admin-user-select/admin-user-select.component.mjs +1 -1
- package/esm2022/admin/i18n/en.translations.mjs +2 -2
- package/esm2022/admin/i18n/fr.translations.mjs +4 -4
- package/esm2022/components/metadata-editor/metadata-editor.component.mjs +8 -29
- package/esm2022/lib/core/components/about/about.component.mjs +29 -0
- package/esm2022/lib/core/components/about/pry-about.module.mjs +21 -0
- package/esm2022/lib/core/components/icon/icon.component.mjs +5 -1
- package/esm2022/lib/core/i18n/en.translations.mjs +12 -2
- package/esm2022/lib/core/i18n/fr.translations.mjs +12 -2
- package/esm2022/lib/core/i18n/i18n.pipe.mjs +4 -3
- package/esm2022/lib/core/i18n/i18n.service.mjs +5 -5
- package/esm2022/lib/core/model/widget-map-manifest.interface.mjs +1 -1
- package/esm2022/lib/core/public-api.mjs +3 -1
- package/esm2022/lib/core/store/class/class.effects.mjs +1 -1
- package/esm2022/lib/core/store/config/config.actions.mjs +5 -2
- package/esm2022/lib/core/store/config/config.effects.mjs +4 -1
- package/esm2022/lib/core/store/config/config.reducer.mjs +9 -2
- package/esm2022/lib/core/store/config/config.selectors.mjs +6 -4
- package/esm2022/lib/core/store/config/config.service.mjs +36 -2
- package/esm2022/lib/core/store/config/versions.interface.mjs +2 -0
- package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +1 -16
- package/esm2022/lib/dashboard/components/manifests/manifests.component.mjs +3 -1
- package/esm2022/lib/dashboard/components/widgets/base-widget.component.mjs +3 -2
- package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -2
- package/esm2022/lib/dashboard/store/dashboard.effects.mjs +12 -4
- package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +7 -1
- package/esm2022/lib/dashboard/store/manifest.service.mjs +2 -3
- package/esm2022/notification/store/notification.effects.mjs +3 -3
- package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +23 -18
- package/esm2022/presentation/components/presentation.component.mjs +18 -18
- package/esm2022/presentation/style/css.component.mjs +2 -2
- package/esm2022/restitution/components/restitution-list/restitution-list.component.mjs +3 -3
- package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +6 -3
- package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.mjs +6 -3
- package/esm2022/supervision/components/supervision-integration-errors/supervision-integration-errors.component.mjs +2 -2
- package/esm2022/supervision/components/supervision-layout/supervision-layout.component.mjs +2 -2
- package/esm2022/supervision/components/supervision.component.mjs +2 -2
- package/esm2022/supervision/store/supervision.actions.mjs +1 -1
- package/esm2022/supervision/store/supervision.reducer.mjs +3 -2
- package/esm2022/supervision/store/supervision.selectors.mjs +2 -2
- package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +18 -11
- package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +20 -6
- package/esm2022/widgets/widget-aggregated-chart/i18n/fr.translations.mjs +1 -2
- package/esm2022/widgets/widget-map/component/widget-map-layer.service.mjs +2 -2
- package/fesm2022/provoly-dashboard-admin.mjs +14 -11
- package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +7 -28
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-notification.mjs +2 -2
- package/fesm2022/provoly-dashboard-notification.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-presentation.mjs +41 -37
- package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-restitution.mjs +7 -4
- package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-supervision.mjs +11 -8
- package/fesm2022/provoly-dashboard-supervision.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +17 -10
- package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +19 -6
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
- package/fesm2022/provoly-dashboard.mjs +165 -54
- package/fesm2022/provoly-dashboard.mjs.map +1 -1
- package/lib/core/components/about/about.component.d.ts +12 -0
- package/lib/core/components/about/pry-about.module.d.ts +10 -0
- package/lib/core/i18n/en.translations.d.ts +10 -0
- package/lib/core/i18n/fr.translations.d.ts +10 -0
- package/lib/core/i18n/i18n.service.d.ts +2 -2
- package/lib/core/model/widget-map-manifest.interface.d.ts +2 -0
- package/lib/core/public-api.d.ts +2 -0
- package/lib/core/store/config/config.actions.d.ts +12 -0
- package/lib/core/store/config/config.effects.d.ts +6 -0
- package/lib/core/store/config/config.reducer.d.ts +2 -0
- package/lib/core/store/config/config.selectors.d.ts +1 -0
- package/lib/core/store/config/config.service.d.ts +2 -0
- package/lib/core/store/config/versions.interface.d.ts +10 -0
- package/lib/dashboard/store/dashboard.actions.d.ts +4 -4
- package/lib/dashboard/store/manifest.service.d.ts +1 -1
- package/package.json +25 -25
- package/presentation/components/add-edit-presentation/add-edit-presentation.component.d.ts +4 -3
- package/presentation/components/presentation.component.d.ts +2 -2
- package/presentation/style/_o-pry-new-presentation.scss +7 -0
- package/restitution/components/restitution-list-item/restitution-list-item.component.d.ts +3 -2
- package/styles/layout/_o-base-layout.scss +8 -1
- package/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.d.ts +1 -1
- package/supervision/store/supervision.actions.d.ts +2 -2
- package/supervision/store/supervision.reducer.d.ts +1 -1
- package/supervision/store/supervision.selectors.d.ts +1 -1
- package/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.d.ts +7 -0
- package/widgets/widget-aggregated-chart/i18n/fr.translations.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provoly-dashboard-supervision.mjs","sources":["../../../../projects/provoly/dashboard/supervision/store/supervision.actions.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.reducer.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.selectors.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-business-data/supervision-business-data.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-business-data/supervision-business-data.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-flow/supervision-flow.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-flow/supervision-flow.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-infrastructures/supervision-infrastructures.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-infrastructures/supervision-infrastructures.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-menu/supervision-menu.component.ts","../../../../projects/provoly/dashboard/lib/core/components/base-menu/base-menu.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-title/supervision-title.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-title/supervision-title.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-layout/supervision-layout.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-layout/supervision-layout.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision.component.html","../../../../projects/provoly/dashboard/supervision/i18n/en.translations.ts","../../../../projects/provoly/dashboard/supervision/i18n/fr.translations.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.service.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.effects.ts","../../../../projects/provoly/dashboard/supervision/supervision-routing.module.ts","../../../../projects/provoly/dashboard/supervision/supervision.module.ts","../../../../projects/provoly/dashboard/supervision/provoly-dashboard-supervision.ts"],"sourcesContent":["import { createAction, props } from '@ngrx/store';\nimport { BaseToolboxAction } from '@provoly/dashboard';\nimport { Infrastructure, InputFlow, IntegrationError } from './supervision-api.model';\n\nexport const SupervisionActions = {\n highLightMenu: createAction('[Supervision] selecting highLight', props<{ menu: string }>()),\n routeTo: createAction('[Supervision] route to', props<{ path: string; params?: { [p: string]: string } }>()),\n toggleMenu: createAction('[Supervision] Toggle menu'),\n resetActions: createAction('[Supervision] reset toolbox main and sub actions'),\n mainActions: createAction('[Supervision] set toolbox main actions', props<{ actions: BaseToolboxAction[] }>()),\n subActions: createAction('[Supervision] set toolbox sub actions', props<{ actions: BaseToolboxAction[] }>()),\n loadInfras: createAction('[Supervision/Infra] Load Infras'),\n loadInfrasSuccess: createAction('[Supervision/Infra Api] Load Infras Success', props<{ infras: Infrastructure[] }>()),\n loadInfrasFailure: createAction('[Supervision/Infra Api] Load Infras Failure', props<{ error: any }>()),\n scaleInfra: createAction('[Supervision/Infra] Scale infra', props<{ name: string; scale: number; up: boolean }>()),\n scaleInfraSuccess: createAction(\n '[Supervision/Infra Api] Scale infra success',\n props<{ name: string; time: string; up: boolean }>()\n ),\n scaleInfraFailure: createAction('[Supervision/Infra Api] Scale infra failure', props<{ error: any }>()),\n loadFlows: createAction('[Supervision/Flow] Load Flows'),\n loadFlowsSuccess: createAction('[Supervision/Flow Api] Load Flows Success', props<{ flows: InputFlow[] }>()),\n loadFlowsFailure: createAction('[Supervision/Flow Api] Load Flows Failure', props<{ error: any }>()),\n loadIntegrationErrors: createAction('[Supervision/Errors] Load Integration Errors'),\n loadIntegrationErrorsSuccess: createAction(\n '[Supervision/Errors Api] Load Integration Errors Success',\n props<{ integrationErrors: IntegrationError[] }>()\n ),\n loadIntegrationErrorsFailure: createAction(\n '[Supervision/Errors Api] Load Integration Errors Failure',\n props<{ error: any }>()\n ),\n toggleErrorDetails: createAction(\n '[Supervision/Errors] Toggle Side Panel With Error Details Of Chosen Class',\n props<{ error: IntegrationError | null; errorDetailsOpen: boolean }>()\n ),\n toggleClassSelection: createAction(\n '[Supervision/Errors] Select/Unselect Class for submission (Reload/Acknowledge)',\n props<{ selectedClass: string }>()\n ),\n reloadErrors: createAction('[Supervision/Errors] Reload Integration Errors'),\n reloadErrorsSuccess: createAction('[Supervision/Errors Api] Reload Integration Errors Success'),\n reloadErrorsFailure: createAction(\n '[Supervision/Errors Api] Reload Integration Errors failure',\n props<{ error: any }>()\n ),\n acknowledgeErrors: createAction('[Supervision/Errors] Acknowledge Integration Errors'),\n acknowledgeErrorsSuccess: createAction('[Supervision/Errors Api] Acknowledge Integration Errors Success'),\n acknowledgeErrorsFailure: createAction(\n '[Supervision/Errors Api] Acknowledge Integration Errors Failure',\n props<{ error: any }>()\n ),\n setRefreshInterval: createAction(\n '[Supervision/Errors] Change the interval of time for refreshing errors (in milliseconds)',\n props<{ interval: number }>()\n ),\n startAutoRefresh: createAction('[Supervision/Errors] Start auto refreshing errors'),\n stopAutoRefresh: createAction('[Supervision/Errors] Stop auto refreshing errors')\n};\n","import { createReducer, on } from '@ngrx/store';\nimport { BaseMenuItem, BaseToolboxAction, BusinessData } from '@provoly/dashboard';\nimport { Infrastructure, InputFlow, IntegrationError, LastInfrastructureScale } from './supervision-api.model';\nimport { SupervisionActions } from './supervision.actions';\n\nexport const supervisionFeatureKey = '@pry/supervision';\n\nexport interface SupervisionState {\n highlightedMenu: string;\n menus: BaseMenuItem[];\n menuOpen: boolean;\n actions: BaseToolboxAction[];\n subActions: BaseToolboxAction[];\n infrastructures: Infrastructure[];\n lastInfraScale: LastInfrastructureScale | undefined;\n inputFlows: InputFlow[];\n businessDatas: BusinessData[];\n integrationErrors: IntegrationError[];\n currentIntegrationError?: IntegrationError | null;\n errorDetailsOpen: boolean;\n selectedClasses: string[];\n refreshInterval: number;\n loading: boolean;\n}\n\nexport const initialSupervisionState: SupervisionState = {\n highlightedMenu: 'infrastructures',\n menus: [{ menu: 'integration-errors', module: 'supervision', page: 'integration_errors' }],\n menuOpen: true,\n actions: [],\n subActions: [],\n infrastructures: [],\n lastInfraScale: undefined,\n inputFlows: [],\n businessDatas: [],\n integrationErrors: [],\n errorDetailsOpen: false,\n selectedClasses: [],\n refreshInterval: 30000,\n loading: false\n};\n\nexport const supervisionReducer = createReducer(\n initialSupervisionState,\n on(SupervisionActions.highLightMenu, (state, action) => ({\n ...state,\n highlightedMenu: action.menu\n })),\n on(SupervisionActions.toggleMenu, (state) => ({\n ...state,\n menuOpen: !state.menuOpen\n })),\n on(SupervisionActions.resetActions, (state) => ({\n ...state,\n actions: [],\n subActions: []\n })),\n on(SupervisionActions.mainActions, (state, action) => ({\n ...state,\n actions: [...action.actions]\n })),\n on(SupervisionActions.subActions, (state, action) => ({\n ...state,\n subActions: [...action.actions]\n })),\n on(SupervisionActions.loadInfras, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadInfrasSuccess, (state, action) => ({\n ...state,\n infrastructures: [...action.infras],\n loading: false\n })),\n on(SupervisionActions.loadInfrasFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.scaleInfra, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.scaleInfraSuccess, (state, action) => ({\n ...state,\n lastInfraScale: { name: action.name, time: action.time, up: action.up }\n })),\n on(SupervisionActions.scaleInfraFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.loadFlows, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadFlowsSuccess, (state, action) => ({\n ...state,\n inputFlows: [...action.flows],\n loading: false\n })),\n on(SupervisionActions.loadFlowsFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.loadIntegrationErrors, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadIntegrationErrorsSuccess, (state, action) => ({\n ...state,\n integrationErrors: [...action.integrationErrors],\n loading: false\n })),\n on(SupervisionActions.loadIntegrationErrorsFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.toggleErrorDetails, (state, action) => ({\n ...state,\n currentIntegrationError: action.error,\n errorDetailsOpen: action.errorDetailsOpen\n })),\n on(SupervisionActions.toggleClassSelection, (state, action) => {\n let updatedClasses;\n if (state.selectedClasses.includes(action.selectedClass)) {\n updatedClasses = state.selectedClasses.filter((oclass) => oclass !== action.selectedClass);\n } else {\n updatedClasses = [...state.selectedClasses, action.selectedClass];\n }\n return { ...state, selectedClasses: updatedClasses };\n }),\n on(SupervisionActions.reloadErrors, (state, action) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.reloadErrorsSuccess, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.reloadErrorsFailure, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.acknowledgeErrors, (state, action) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.acknowledgeErrorsSuccess, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.acknowledgeErrorsFailure, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.setRefreshInterval, (state, action) => ({\n ...state,\n refreshInterval: action.interval\n }))\n);\n","import { createFeatureSelector, createSelector } from '@ngrx/store';\nimport * as fromSupervision from './supervision.reducer';\n\nconst feature = createFeatureSelector<fromSupervision.SupervisionState>(fromSupervision.supervisionFeatureKey);\n\nconst highlightedMenu = createSelector(feature, (state) => state.highlightedMenu);\nconst menuOpen = createSelector(feature, (state) => state.menuOpen);\nconst actions = createSelector(feature, (state) => state.actions);\nconst subActions = createSelector(feature, (state) => state.subActions);\nconst menus = createSelector(feature, (state) => state.menus);\nconst infrastructures = createSelector(feature, (state) => state.infrastructures);\nconst lastInfraScale = createSelector(feature, (state) => state.lastInfraScale);\nconst inputFlows = createSelector(feature, (state) => state.inputFlows);\nconst integrationErrors = createSelector(feature, (state) => state.integrationErrors);\nconst currentIntegrationError = createSelector(feature, (state) => state.currentIntegrationError);\nconst errorDetailsOpen = createSelector(feature, (state) => state.errorDetailsOpen);\nconst selectedClasses = createSelector(feature, (state) => state.selectedClasses);\nconst refreshInterval = createSelector(feature, (state) => state.refreshInterval);\nconst loading = createSelector(feature, (state) => state.loading);\n\nexport const SupervisionSelectors = {\n feature,\n highlightedMenu,\n menuOpen,\n menus,\n actions,\n subActions,\n infrastructures,\n lastInfraScale,\n inputFlows,\n integrationErrors,\n currentIntegrationError,\n errorDetailsOpen,\n selectedClasses,\n refreshInterval,\n loading\n};\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { BusinessData, ClassActions, ClassSelectors } from '@provoly/dashboard';\nimport { Observable } from 'rxjs';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-business-data',\n templateUrl: './supervision-business-data.component.html'\n})\nexport class SupervisionBusinessDataComponent {\n datas$: Observable<BusinessData[]>;\n loading$: Observable<boolean>;\n\n sortActive? = 'name';\n sortDirection? = 'asc';\n\n constructor(private store: Store<any>) {\n this.store.dispatch(ClassActions.loadBusinessData());\n this.datas$ = this.store.select(ClassSelectors.classDatas);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: ClassActions.loadBusinessData(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.businessData.title' | i18n }}</h1>\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.businessData.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th>\n <pry-icon iconSvg=\"detail\"></pry-icon>\n </th>\n <th prySortHeader=\"name\">{{ '@pry.supervision.businessData.name' | i18n }}</th>\n <th prySortHeader=\"count\">{{ '@pry.supervision.businessData.count' | i18n }}</th>\n <th prySortHeader=\"date\">{{ '@pry.supervision.businessData.date' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let data of datas$ | async | prySortData: sortActive : sortDirection\">\n <td>\n <ng-container *ngIf=\"data.icon; else noImg\">\n <img [height]=\"25\" [width]=\"25\" [src]=\"data.icon | getSecuredImage | async\" [alt]=\"data.title\" />\n </ng-container>\n <ng-template #noImg>\n <img\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"data.id | translateId: { type: 'class', output: 'icon' } | async\"\n [alt]=\"data.title\"\n />\n </ng-template>\n </td>\n <td>{{ data.name }}</td>\n <td>{{ data.count }}</td>\n <td>\n {{ !data.date ? '' : (data.date | date: ('@pry.format.datetime' | i18n)) }}\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { InputFlow } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-flow',\n templateUrl: './supervision-flow.component.html'\n})\nexport class SupervisionFlowComponent {\n flows$: Observable<InputFlow[]>;\n loading$: Observable<boolean>;\n\n sortActive? = 'name';\n sortDirection? = 'asc';\n\n constructor(private store: Store<any>) {\n this.store.dispatch(SupervisionActions.loadFlows());\n this.flows$ = this.store.select(SupervisionSelectors.inputFlows);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.loadFlows(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.inputFlow.title' | i18n }}</h1>\n\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.inputFlow.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th prySortHeader=\"name\">{{ '@pry.supervision.inputFlow.name' | i18n }}</th>\n <th prySortHeader=\"format\">{{ '@pry.supervision.inputFlow.format' | i18n }}</th>\n <th>{{ '@pry.supervision.inputFlow.state' | i18n }}</th>\n <th prySortHeader=\"nbIntegrationOk\">{{ '@pry.supervision.inputFlow.oks' | i18n }}</th>\n <th prySortHeader=\"nbIntegrationKo\">{{ '@pry.supervision.inputFlow.kos' | i18n }}</th>\n <th prySortHeader=\"dateIntegration\">{{ '@pry.supervision.inputFlow.date' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let flow of flows$ | async | prySortData: sortActive : sortDirection\">\n <td>\n <div class=\"u-display-flex -align-center\">\n {{ flow.name }}\n <a *ngIf=\"flow.accessLink\" [href]=\"flow.accessLink\" target=\"_blank\" class=\"a-btn a-btn--icon-only\">\n <pry-icon iconSvg=\"launch\" [height]=\"15\" [width]=\"15\"></pry-icon>\n <span class=\"u-sr-only\">{{ '@pry.action.opensInNewTab' | i18n }}</span>\n </a>\n </div>\n </td>\n <td>{{ flow.format }}</td>\n <td>\n <span class=\"a-badge\" [ngClass]=\"{ '-status-ok': flow.status, '-status-inactive': !flow.status }\">\n {{ (flow.status ? '@pry.supervision.inputFlow.active' : '@pry.supervision.inputFlow.inactive') | i18n }}\n </span>\n </td>\n <td>{{ flow.nbIntegrationOk }}</td>\n <td>{{ flow.nbIntegrationKo }}</td>\n <td>{{ flow.dateIntegration | date: ('@pry.format.datetime' | i18n) }}</td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { Infrastructure, LastInfrastructureScale } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-infrastructures',\n templateUrl: './supervision-infrastructures.component.html'\n})\nexport class SupervisionInfrastructuresComponent {\n infras$: Observable<Infrastructure[]>;\n loading$: Observable<boolean>;\n lastInfraScale$: Observable<LastInfrastructureScale | undefined>;\n classFromStatus: { [key: string]: string } = {\n GREEN: '-ok',\n YELLOW: '-warning',\n RED: '-error'\n };\n\n constructor(private store: Store<any>) {\n this.store.dispatch(SupervisionActions.loadInfras());\n this.infras$ = this.store.select(SupervisionSelectors.infrastructures);\n this.lastInfraScale$ = this.store.select(SupervisionSelectors.lastInfraScale);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.loadInfras(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n\n onScaleUp(infra: string, replicas: number): void {\n this.store.dispatch(\n SupervisionActions.scaleInfra({\n name: infra,\n scale: replicas + 1,\n up: true\n })\n );\n }\n\n onScaleDown(infra: string, replicas: number): void {\n this.store.dispatch(\n SupervisionActions.scaleInfra({\n name: infra,\n scale: replicas - 1,\n up: false\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.infrastructures.title' | i18n }}</h1>\n\n <ul class=\"o-cards-list\">\n <li *ngFor=\"let infra of infras$ | async\" class=\"o-cards-list__item\">\n <div class=\"o-card o-card--infra\">\n <div class=\"o-card__header\">\n <div class=\"o-card__header__logo\"></div>\n <div class=\"o-card__header__title\">\n <h4 class=\"a-h4\">{{ infra.name }}</h4>\n <p class=\"a-p\">{{ infra.title }}</p>\n </div>\n <div *ngIf=\"infra.status\" class=\"o-card__header__status\" [ngClass]=\"classFromStatus[infra.status]\"></div>\n </div>\n\n <div class=\"o-card__content\">\n <p class=\"a-p\">\n {{ infra.available }}\n {{ '@pry.supervision.infrastructures.available' + (infra.available > 1 ? 's' : '') | i18n }}\n </p>\n\n <ng-container *ngIf=\"lastInfraScale$ | async as lastInfraScale\">\n <span *ngIf=\"lastInfraScale.name === infra.name\" class=\"o-card__content__info\">\n {{ '@pry.supervision.infrastructures.scaleReplica' + (lastInfraScale.up ? 'Up' : 'Down') | i18n }}\n {{ lastInfraScale.time | date: 'HH:mm' }}\n </span>\n </ng-container>\n </div>\n\n <div class=\"o-card__footer\">\n <div class=\"o-card__footer__message\">\n <pry-icon iconSvg=\"grid_view\" [height]=\"20\" [width]=\"20\"></pry-icon>\n <span>\n {{ infra.replicas }}\n {{ '@pry.supervision.infrastructures.replica' + (infra.replicas > 1 ? 's' : '') | i18n }}\n </span>\n </div>\n\n <ng-container *pryAccess=\"{ module: 'supervision', page: 'infrastructures', action: 'scale' }\">\n <div *ngIf=\"infra.hotScale\" class=\"m-minus-plus\">\n <ng-container *ngIf=\"infra.replicas !== infra.available; else scaleTemplate\">\n <button\n class=\"m-minus-plus__btn -minus\"\n disabled\n title=\"{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n <button\n class=\"m-minus-plus__btn -plus\"\n disabled\n title=\"{{ '@pry.supervision.infrastructures.addInstance' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.addInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n </ng-container>\n\n <ng-template #scaleTemplate>\n <button\n class=\"m-minus-plus__btn -minus scale-down\"\n [disabled]=\"infra.replicas === infra.minReplicas\"\n title=\"{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}\"\n (click)=\"infra.replicas !== infra.minReplicas && onScaleDown(infra.name, infra.replicas)\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n <button\n class=\"m-minus-plus__btn -plus scale-up\"\n [disabled]=\"infra.replicas === infra.maxReplicas\"\n title=\"{{ '@pry.supervision.infrastructures.addInstance' | i18n }}\"\n (click)=\"infra.replicas !== infra.maxReplicas && onScaleUp(infra.name, infra.replicas)\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.addInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n </li>\n </ul>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { IntegrationError } from '../../../store/supervision-api.model';\nimport { SupervisionActions } from '../../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-integration-errors-select',\n templateUrl: './supervision-integration-errors-select.component.html'\n})\nexport class SupervisionIntegrationErrorsSelectComponent {\n currentIntegrationError$: Observable<IntegrationError | null | undefined>;\n\n constructor(private store: Store<any>) {\n this.currentIntegrationError$ = this.store.select(SupervisionSelectors.currentIntegrationError);\n }\n\n closePanel() {\n this.store.dispatch(SupervisionActions.loadIntegrationErrors());\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: null, errorDetailsOpen: false }));\n }\n}\n","<div\n *ngIf=\"currentIntegrationError$ | async as e\"\n [id]=\"'panel-env-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\"\n [attr.aria-labelledby]=\"'button-env-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n <h3 [id]=\"'tab-title-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\" class=\"a-h3\">\n {{ '@pry.supervision.importErrors.details.title' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.supervision.importErrors.details.\">\n <pry-tab [templateRef]=\"errorDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n <ng-template #errorDetails>\n <div *ngFor=\"let error of e.errors\">\n <p class=\"a-p\">\n {{ '@pry.supervision.importErrors.details.errorLabel' | i18n }} :\n <strong>{{ error.label }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.supervision.importErrors.details.errorCount' | i18n }}:\n <strong>{{ error.count }}</strong>\n </p>\n </div>\n </ng-template>\n</div>\n","import { Component, OnDestroy, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ClassActions } from '@provoly/dashboard';\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { IntegrationError } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-integration-errors',\n templateUrl: './supervision-integration-errors.component.html'\n})\nexport class SupervisionIntegrationErrorsComponent implements OnDestroy {\n private subscription: Subscription = new Subscription();\n integrationErrors$: Observable<IntegrationError[]>;\n currentIntegrationError = new BehaviorSubject<IntegrationError | undefined>(undefined);\n selectedClasses!: string[];\n loading$: Observable<boolean>;\n refreshInterval$: Observable<number>;\n possibleIntervals = [1, 5, 10, 15, 20, 25, 30];\n sortActive? = 'name';\n sortDirection? = 'asc';\n @ViewChild('detailPanel', { static: true, read: ViewContainerRef }) detailPanel!: ViewContainerRef;\n\n constructor(private store: Store<any>) {\n this.store.dispatch(ClassActions.load());\n this.store.dispatch(SupervisionActions.loadIntegrationErrors());\n this.integrationErrors$ = this.store.select(SupervisionSelectors.integrationErrors);\n this.subscription.add(\n this.store.select(SupervisionSelectors.selectedClasses).subscribe((selectedClasses: string[]) => {\n this.selectedClasses = selectedClasses;\n })\n );\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.refreshInterval$ = this.store\n .select(SupervisionSelectors.refreshInterval)\n .pipe(map((interval) => interval / 1000));\n this.store.dispatch(SupervisionActions.startAutoRefresh());\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.reloadErrors(),\n icon: 'reset',\n label: 'reloadErrors',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n },\n {\n action: SupervisionActions.acknowledgeErrors(),\n icon: 'check',\n label: 'acknowledgeErrors',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n },\n {\n action: SupervisionActions.loadIntegrationErrors(),\n label: 'refresh',\n icon: 'synchro',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n }\n ]\n })\n );\n }\n\n selectCurrentError(e: IntegrationError) {\n if (this.currentIntegrationError.value?.oClass === e.oClass) this.currentIntegrationError.next(undefined);\n else this.currentIntegrationError.next(e);\n }\n\n getTotalErrorCount(e: IntegrationError): number {\n return e.errors.reduce((previousValue, currentValue) => previousValue + currentValue.count, 0);\n }\n\n toggleErrorDetails(e: IntegrationError): void {\n this.selectCurrentError(e);\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: e, errorDetailsOpen: true }));\n }\n\n onCheckChange(selectedClass: string): void {\n this.store.dispatch(SupervisionActions.toggleClassSelection({ selectedClass }));\n }\n\n isClassSelected(c: string): boolean {\n return !!this.selectedClasses.find((oclass) => oclass === c);\n }\n\n setRefreshInterval($event: number): void {\n this.store.dispatch(SupervisionActions.stopAutoRefresh());\n this.store.dispatch(SupervisionActions.setRefreshInterval({ interval: +$event * 1000 }));\n }\n\n stopPropagation(event: Event): void {\n event.stopPropagation();\n }\n\n ngOnDestroy(): void {\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: null, errorDetailsOpen: false }));\n this.subscription.unsubscribe();\n this.store.dispatch(SupervisionActions.mainActions({ actions: [] }));\n this.store.dispatch(SupervisionActions.stopAutoRefresh());\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.importErrors.title' | i18n }}</h1>\n\n <div class=\"m-form-label-field m-form-label-field--inline\">\n <label class=\"a-label\" for=\"interval_time\">Rafraichir chaque</label>\n <pry-select\n [ngModel]=\"refreshInterval$ | async\"\n (ngModelChange)=\"setRefreshInterval($event)\"\n [items]=\"possibleIntervals\"\n id=\"interval_time\"\n class=\"a-pry-select\"\n ></pry-select>\n <label class=\"a-label\">secondes</label>\n </div>\n\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.importErrors.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th></th>\n <th prySortHeader=\"name\">{{ '@pry.supervision.importErrors.name' | i18n }}</th>\n <th prySortHeader=\"count\">{{ '@pry.supervision.importErrors.totalErrorCount' | i18n }}</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"let e of integrationErrors$ | async | prySortData: sortActive : sortDirection\"\n (click)=\"toggleErrorDetails(e)\"\n [class.is-selected]=\"(currentIntegrationError | async)?.oClass === e.oClass\"\n >\n <td class=\"view-details\" (click)=\"stopPropagation($event)\">\n <button\n [id]=\"'button-attr-' + (e.oClass | translateId: { type: 'class', output: 'name' } | async)\"\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.action.viewDetails' | i18n }}\"\n [attr.aria-expanded]=\"(currentIntegrationError | async)?.oClass === e.oClass\"\n aria-haspopup\n [attr.aria-controls]=\"'panel-attr-' + (e.oClass | translateId: { type: 'class', output: 'name' } | async)\"\n >\n <span class=\"u-visually-hidden\">{{ e.name }}, {{ '@pry.action.viewDetails' | i18n }}</span>\n <pry-icon iconSvg=\"eye\" [width]=\"15\" [height]=\"15\"></pry-icon>\n </button>\n </td>\n <td>\n {{ e.oClass | translateId: { type: 'class', output: 'name' } | async }}\n </td>\n <td>\n {{ getTotalErrorCount(e) }}\n </td>\n <td (click)=\"stopPropagation($event)\">\n <pry-checkbox\n id=\"selectClass\"\n [ngModel]=\"isClassSelected(e.oClass)\"\n (ngModelChange)=\"onCheckChange(e.oClass)\"\n ></pry-checkbox>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { BaseMenuComponent } from '@provoly/dashboard';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-menu',\n templateUrl: '../../../lib/core/components/base-menu/base-menu.component.html'\n})\nexport class SupervisionMenuComponent extends BaseMenuComponent {\n constructor(\n store: Store<any>,\n private router: Router,\n private route: ActivatedRoute\n ) {\n super(store);\n this.baseMenuTranslation = '@pry.supervision.menus.';\n }\n\n override init() {\n this.menus$ = this.store.select(SupervisionSelectors.menus);\n this.highlightedMenu$ = this.store.select(SupervisionSelectors.highlightedMenu);\n }\n\n override select(menu: string): void {\n const path = this.router.createUrlTree([menu], { relativeTo: this.route });\n this.store.dispatch(SupervisionActions.routeTo({ path: path.toString() }));\n }\n}\n","<nav class=\"m-nav-links\">\n <ng-container *ngFor=\"let sub of subMenu$ | async\">\n <ul class=\"m-nav-links__list\">\n <ng-container *ngFor=\"let menu of sub.subMenus\">\n <li\n *pryAccess=\"{ module: menu.module, page: menu.page, subMenu: menu.subMenu }\"\n class=\"m-nav-links__list__item\"\n >\n <a [routerLink]=\"menu.menu\" class=\"a-btn a-btn--secondary -width-full\" [routerLinkActive]=\"'is-active'\">\n {{ baseMenuTranslation + menu.menu | i18n }}\n </a>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n <ng-container *ngIf=\"menus$ | async as menus\">\n <ng-container *ngIf=\"menus.length > 0\">\n <ul class=\"m-nav-links__list\">\n <ng-container *ngFor=\"let menu of menus\">\n <ng-container *ngIf=\"menu.module === 'supervision'\">\n <li *pryAccess=\"{ module: menu.module, page: menu.page }\" class=\"m-nav-links__list__item\">\n <a [routerLink]=\"menu.menu\" class=\"a-btn a-btn--secondary -width-full\" [routerLinkActive]=\"'is-active'\">\n {{ baseMenuTranslation + menu.menu | i18n }}\n </a>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </ng-container>\n </ng-container>\n</nav>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-title',\n templateUrl: './supervision-title.component.html'\n})\nexport class SupervisionTitleComponent {\n menuOpen$: Observable<boolean>;\n\n constructor(private store: Store<any>) {\n this.menuOpen$ = this.store.select(SupervisionSelectors.menuOpen);\n }\n\n onToggleMenu($event: any) {\n this.store.dispatch(SupervisionActions.toggleMenu());\n\n // Toggle button aria-pressed\n $event.target.setAttribute(\n 'aria-pressed',\n $event.target.getAttribute('aria-pressed') === 'true' ? 'false' : 'true'\n );\n }\n}\n","<h2 class=\"a-h3\">{{ '@pry.supervision.title' | i18n }}</h2>\n<button type=\"button\" class=\"a-btn a-btn--toggle\" (click)=\"onToggleMenu($event)\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.titleIndication' | i18n }}</span>\n</button>\n","import { AfterViewInit, Component, ComponentRef, OnDestroy, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { BaseLayoutComponent, BaseToolboxAction } from '@provoly/dashboard';\nimport { Observable } from 'rxjs';\nimport { SupervisionIntegrationErrorsSelectComponent } from '../../../supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-layout',\n templateUrl: './supervision-layout.component.html'\n})\nexport class SupervisionLayoutComponent extends BaseLayoutComponent implements AfterViewInit, OnDestroy {\n baseToolboxTranslation: string;\n actions$: Observable<BaseToolboxAction[]>;\n subActions$: Observable<BaseToolboxAction[]>;\n panelOpen$: Observable<boolean>;\n @ViewChild('supervisionPanel', { static: true, read: ViewContainerRef }) supervisionPanel!: ViewContainerRef;\n componentRef?: ComponentRef<any>;\n\n constructor(store: Store<any>, router: Router) {\n super(store, router);\n this.baseToolboxTranslation = '@pry.supervision.';\n this.actions$ = this.store.select(SupervisionSelectors.actions);\n this.subActions$ = this.store.select(SupervisionSelectors.subActions);\n this.panelOpen$ = this.store.select(SupervisionSelectors.errorDetailsOpen);\n }\n\n override init(): void {\n this.menus$ = this.store.select(SupervisionSelectors.menus);\n this.menuOpen$ = this.store.select(SupervisionSelectors.menuOpen);\n }\n\n override highlightMenu(menu: string): void {\n this.store.dispatch(SupervisionActions.highLightMenu({ menu }));\n }\n\n ngAfterViewInit(): void {\n if (this.componentRef) {\n this.supervisionPanel.clear();\n }\n this.componentRef = this.supervisionPanel.createComponent(SupervisionIntegrationErrorsSelectComponent);\n }\n\n override ngOnDestroy() {\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: null, errorDetailsOpen: false }));\n }\n}\n","<div class=\"o-base-layout\" [ngClass]=\"{ 'is-menu-open': menuOpen$ | async }\">\n <pry-supervision-title class=\"o-base-layout__title\"></pry-supervision-title>\n <pry-supervision-menu *ngIf=\"menuOpen$ | async\" class=\"o-base-layout__menu\"></pry-supervision-menu>\n <pry-base-toolbox\n class=\"o-base-layout__toolbox\"\n [baseToolboxTranslation]=\"baseToolboxTranslation\"\n [actions$]=\"actions$\"\n [subActions$]=\"subActions$\"\n ></pry-base-toolbox>\n\n <div class=\"o-base-layout__contentwrapper\">\n <div class=\"o-base-layout__content\">\n <router-outlet></router-outlet>\n </div>\n <div class=\"o-base-layout__panel\" [class.is-open]=\"panelOpen$ | async\">\n <div class=\"o-base-layout__panel__content\">\n <ng-template #supervisionPanel></ng-template>\n </div>\n </div>\n </div>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { SupervisionActions } from '../store/supervision.actions';\nimport { SupervisionState } from '../store/supervision.reducer';\n\n@Component({\n selector: 'pry-supervision',\n templateUrl: './supervision.component.html'\n})\nexport class PrySupervisionComponent {\n constructor(private store: Store<SupervisionState>) {\n this.store.dispatch(SupervisionActions.resetActions());\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: null, errorDetailsOpen: false }));\n }\n}\n","<h1 class=\"a-h1\">{{ '@pry.supervision.title' | i18n }}</h1>\n","export const enTranslations = {\n '@pry': {\n supervision: {\n title: 'Supervision',\n titleIndication: 'Close supervision menu ',\n refresh: 'Refresh',\n reloadErrors: 'Reload errors',\n acknowledgeErrors: 'Acknowledge errors',\n menus: {\n infrastructures: 'Infrastructures',\n 'input-flows': 'Incoming flows',\n 'business-datas': 'Business data',\n 'integration-errors': 'Data import errors'\n },\n infrastructures: {\n scaleMsg: 'Your request is taken into account',\n title: \"Infrastructure's modules \",\n available: ' instance available',\n availables: ' instances available',\n scaleReplicaUp: 'New instance created at ',\n scaleReplicaDown: 'Instance deleted at ',\n replica: ' instance',\n replicas: ' instances',\n addInstance: 'Add an instance',\n removeInstance: 'Remove an instance'\n },\n inputFlow: {\n title: 'Input flows',\n name: 'Name',\n format: 'Format',\n state: 'State',\n oks: 'Added Elements ',\n kos: 'Errors',\n date: 'Date',\n active: 'Active',\n inactive: 'Inactive'\n },\n businessData: {\n title: 'Business Datas',\n name: 'Names',\n count: 'Item number',\n date: 'Date'\n },\n importErrors: {\n title: 'Data import errors',\n name: 'Class name',\n totalErrorCount: 'Errors total',\n details: {\n details: 'Details',\n title: 'Error details',\n errorLabel: 'Error name',\n errorCount: 'Error count'\n }\n }\n }\n }\n};\n","export const frTranslations = {\n '@pry': {\n supervision: {\n title: 'Supervision',\n titleIndication: 'Fermer le menu supervision',\n refresh: 'Rafraîchir',\n reloadErrors: \"Relancer l'intégration\",\n acknowledgeErrors: 'Acquitter les classes en erreur',\n menus: {\n infrastructures: 'Infrastructures',\n 'input-flows': 'Flux en entrée',\n 'business-datas': 'Données métier',\n 'integration-errors': \"Erreurs d'intégration de données\"\n },\n infrastructures: {\n scaleMsg: 'Votre demande est prise en compte',\n title: \"Modules de l'infrastructure\",\n available: ' instance disponible',\n availables: ' instances disponibles',\n scaleReplicaUp: 'Nouvelle instance créé à ',\n scaleReplicaDown: 'Instance supprimée à ',\n replica: ' instance demandée',\n replicas: ' instances demandées',\n addInstance: 'Ajouter une instance',\n removeInstance: 'Supprimer une instance'\n },\n inputFlow: {\n title: 'Flux en Entrée',\n name: 'Nom',\n format: 'Format',\n state: 'Etat',\n oks: 'Eléments intégrés',\n kos: \"Nombre d'erreurs\",\n date: 'Date',\n active: 'Actif',\n inactive: 'Inactif'\n },\n businessData: {\n title: 'Données métier',\n name: 'Ontologies',\n count: \"Nombre d'items\",\n date: 'Date'\n },\n importErrors: {\n title: \"Erreurs d'intégration de données\",\n name: 'Nom de la classe',\n totalErrorCount: \"Nombre d'erreur total\",\n details: {\n details: 'Détails',\n title: 'Détail des erreurs',\n errorLabel: \"Nom d'erreur\",\n errorCount: \"Nombre d'erreurs\"\n }\n }\n }\n }\n};\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ConfigSelectors } from '@provoly/dashboard';\nimport { mergeMap, Observable } from 'rxjs';\nimport { Infrastructure, InputFlow, IntegrationError } from '../store/supervision-api.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SupervisionService {\n constructor(\n private httpClient: HttpClient,\n private store: Store<any>\n ) {}\n\n getInfrastructures(): Observable<Infrastructure[]> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(mergeMap((url) => this.httpClient.get<Infrastructure[]>(encodeURI(`${url}/status`))));\n }\n\n scaleInfra(infra: string, replicas: number): Observable<string> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<string>(encodeURI(`${url}/replicas/${infra}?scale=${replicas}`), {}))\n );\n }\n\n getInputFlows(): Observable<InputFlow[]> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(\n mergeMap((url) => this.httpClient.get<InputFlow[]>(encodeURI(`${url}/supervision/nifi/monitoringInputFlow`)))\n );\n }\n\n getDateIso(): string {\n return new Date().toISOString();\n }\n\n getIntegrationErrors(): Observable<IntegrationError[]> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(mergeMap((url) => this.httpClient.get<IntegrationError[]>(encodeURI(`${url}/integrations/errors`))));\n }\n\n reloadErrors(classes: string[]): Observable<void> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<void>(encodeURI(`${url}/integrations/errors/replay/class`), classes))\n );\n }\n\n acknowledgeErrors(classes: string[]): Observable<void> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<void>(encodeURI(`${url}/integrations/errors/acknowledge`), classes))\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\nimport { Store } from '@ngrx/store';\nimport { PryI18nService, PrySnackbarService } from '@provoly/dashboard';\nimport { interval, switchMap, takeUntil } from 'rxjs';\nimport { catchError, map, mergeMap, withLatestFrom } from 'rxjs/operators';\nimport { SupervisionActions } from './supervision.actions';\nimport { SupervisionState } from './supervision.reducer';\nimport { SupervisionSelectors } from './supervision.selectors';\nimport { SupervisionService } from './supervision.service';\n\n@Injectable()\nexport class SupervisionEffects {\n routeTo$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.routeTo),\n mergeMap((action) => {\n this.router.navigate([action.path], { queryParams: action.params });\n return action.path === this.router.url ? [] : [SupervisionActions.resetActions()];\n })\n )\n );\n\n loadInfras$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadInfras),\n mergeMap((action) =>\n this.service.getInfrastructures().pipe(\n map((infras) => SupervisionActions.loadInfrasSuccess({ infras })),\n catchError((error) => [SupervisionActions.loadInfrasFailure({ error: error })])\n )\n )\n )\n );\n\n scaleInfra$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.scaleInfra),\n mergeMap((action) =>\n this.service.scaleInfra(action.name, action.scale).pipe(\n map(() =>\n SupervisionActions.scaleInfraSuccess({ name: action.name, time: this.service.getDateIso(), up: action.up })\n ),\n catchError((error) => [SupervisionActions.scaleInfraFailure({ error: error })])\n )\n )\n )\n );\n\n scaleInfraSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.scaleInfraSuccess),\n map((action) => {\n this.snackbar.open({\n message: this.translateService.instant('@pry.supervision.infrastructures.scaleMsg'),\n type: 'info'\n });\n return SupervisionActions.loadInfras();\n })\n )\n );\n\n loadFlows$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadFlows),\n mergeMap((action) =>\n this.service.getInputFlows().pipe(\n map((flows) => SupervisionActions.loadFlowsSuccess({ flows })),\n catchError((error) => [SupervisionActions.loadFlowsFailure({ error: error })])\n )\n )\n )\n );\n\n loadIntegrationErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadIntegrationErrors),\n mergeMap((action) =>\n this.service.getIntegrationErrors().pipe(\n map((integrationErrors) =>\n SupervisionActions.loadIntegrationErrorsSuccess({ integrationErrors: integrationErrors })\n ),\n catchError((error) => [SupervisionActions.loadIntegrationErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n reloadErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.reloadErrors),\n withLatestFrom(this.store.select(SupervisionSelectors.selectedClasses)),\n mergeMap(([action, classes]) =>\n this.service.reloadErrors(classes).pipe(\n map(() => SupervisionActions.reloadErrorsSuccess()),\n catchError((error) => [SupervisionActions.reloadErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n reloadErrorsSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.reloadErrorsSuccess),\n map((action) => {\n this.snackbar.open({\n message: 'Errors have been reloaded',\n type: 'info'\n });\n return SupervisionActions.loadIntegrationErrors();\n })\n )\n );\n\n acknowledgeErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.acknowledgeErrors),\n withLatestFrom(this.store.select(SupervisionSelectors.selectedClasses)),\n mergeMap(([action, classes]) =>\n this.service.acknowledgeErrors(classes).pipe(\n map(() => SupervisionActions.acknowledgeErrorsSuccess()),\n catchError((error) => [SupervisionActions.acknowledgeErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n acknowledgeErrorsSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.acknowledgeErrorsSuccess),\n map((action) => {\n this.snackbar.open({\n message: 'Errors have been acknowledged',\n type: 'info'\n });\n return SupervisionActions.loadIntegrationErrors();\n })\n )\n );\n\n errorAutoRefresh$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.startAutoRefresh, SupervisionActions.setRefreshInterval),\n withLatestFrom(this.store.select(SupervisionSelectors.refreshInterval)),\n switchMap(([action, refreshInterval]) =>\n interval(refreshInterval).pipe(takeUntil(this.actions$.pipe(ofType(SupervisionActions.stopAutoRefresh))))\n ),\n map((_) => SupervisionActions.loadIntegrationErrors())\n )\n );\n\n constructor(\n private actions$: Actions,\n private service: SupervisionService,\n private router: Router,\n private snackbar: PrySnackbarService,\n private translateService: PryI18nService,\n private store: Store<SupervisionState>\n ) {}\n}\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { PRY_ACCESS_GUARD } from '@provoly/dashboard';\nimport { SupervisionBusinessDataComponent } from './components/supervision-business-data/supervision-business-data.component';\nimport { SupervisionFlowComponent } from './components/supervision-flow/supervision-flow.component';\nimport { SupervisionInfrastructuresComponent } from './components/supervision-infrastructures/supervision-infrastructures.component';\nimport { SupervisionIntegrationErrorsComponent } from './components/supervision-integration-errors/supervision-integration-errors.component';\nimport { SupervisionLayoutComponent } from './components/supervision-layout/supervision-layout.component';\nimport { PrySupervisionComponent } from './components/supervision.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: SupervisionLayoutComponent,\n data: {\n access: {\n module: 'supervision'\n }\n },\n canActivate: [PRY_ACCESS_GUARD],\n children: [\n {\n path: 'infrastructures',\n component: SupervisionInfrastructuresComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'infrastructures'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'input-flows',\n component: SupervisionFlowComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'input_flows'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'business-datas',\n component: SupervisionBusinessDataComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'business_datas'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'integration-errors',\n component: SupervisionIntegrationErrorsComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'integration_errors'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: '',\n component: PrySupervisionComponent\n },\n {\n path: '**',\n redirectTo: '',\n pathMatch: 'full'\n }\n ]\n },\n {\n path: '**',\n redirectTo: '',\n pathMatch: 'full'\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class SupervisionRoutingModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule } from '@ngrx/store';\nimport {\n PryCoreModule,\n PryI18nModule,\n PryI18nService,\n PryIconModule,\n PrySelectModule,\n PrySnackbarModule,\n PrySortModule,\n PryToggleModule\n} from '@provoly/dashboard';\nimport { PryCheckboxModule } from '@provoly/dashboard/components/checkbox';\nimport { SupervisionBusinessDataComponent } from './components/supervision-business-data/supervision-business-data.component';\nimport { SupervisionFlowComponent } from './components/supervision-flow/supervision-flow.component';\nimport { SupervisionInfrastructuresComponent } from './components/supervision-infrastructures/supervision-infrastructures.component';\nimport { SupervisionIntegrationErrorsSelectComponent } from './components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component';\nimport { SupervisionIntegrationErrorsComponent } from './components/supervision-integration-errors/supervision-integration-errors.component';\nimport { SupervisionLayoutComponent } from './components/supervision-layout/supervision-layout.component';\nimport { SupervisionMenuComponent } from './components/supervision-menu/supervision-menu.component';\nimport { SupervisionTitleComponent } from './components/supervision-title/supervision-title.component';\nimport { PrySupervisionComponent } from './components/supervision.component';\nimport { enTranslations } from './i18n/en.translations';\nimport { frTranslations } from './i18n/fr.translations';\nimport { SupervisionEffects } from './store/supervision.effects';\nimport { supervisionFeatureKey, supervisionReducer } from './store/supervision.reducer';\nimport { SupervisionRoutingModule } from './supervision-routing.module';\n\n@NgModule({\n declarations: [\n PrySupervisionComponent,\n SupervisionLayoutComponent,\n SupervisionMenuComponent,\n SupervisionInfrastructuresComponent,\n SupervisionTitleComponent,\n SupervisionBusinessDataComponent,\n SupervisionFlowComponent,\n SupervisionIntegrationErrorsComponent,\n SupervisionIntegrationErrorsSelectComponent\n ],\n imports: [\n CommonModule,\n PryCoreModule,\n SupervisionRoutingModule,\n StoreModule.forFeature(supervisionFeatureKey, supervisionReducer),\n EffectsModule.forFeature([SupervisionEffects]),\n PryIconModule,\n PrySortModule,\n PrySnackbarModule,\n PryToggleModule,\n FormsModule,\n PrySelectModule,\n PryCheckboxModule,\n PryI18nModule\n ]\n})\nexport class PrySupervisionModule {\n constructor(private pryTranslateService: PryI18nService) {\n this.pryTranslateService.addLangObject('fr', 'supervision', frTranslations);\n this.pryTranslateService.addLangObject('en', 'supervision', enTranslations);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["fromSupervision.supervisionFeatureKey","i2","i3","i4","i5.SupervisionMenuComponent","i6.SupervisionTitleComponent","i1","mergeMap","i2.SupervisionService","i5"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provoly-dashboard-supervision.mjs","sources":["../../../../projects/provoly/dashboard/supervision/store/supervision.actions.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.reducer.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.selectors.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-business-data/supervision-business-data.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-business-data/supervision-business-data.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-flow/supervision-flow.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-flow/supervision-flow.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-infrastructures/supervision-infrastructures.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-infrastructures/supervision-infrastructures.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-integration-errors/supervision-integration-errors.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-menu/supervision-menu.component.ts","../../../../projects/provoly/dashboard/lib/core/components/base-menu/base-menu.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-title/supervision-title.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-title/supervision-title.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision-layout/supervision-layout.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision-layout/supervision-layout.component.html","../../../../projects/provoly/dashboard/supervision/components/supervision.component.ts","../../../../projects/provoly/dashboard/supervision/components/supervision.component.html","../../../../projects/provoly/dashboard/supervision/i18n/en.translations.ts","../../../../projects/provoly/dashboard/supervision/i18n/fr.translations.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.service.ts","../../../../projects/provoly/dashboard/supervision/store/supervision.effects.ts","../../../../projects/provoly/dashboard/supervision/supervision-routing.module.ts","../../../../projects/provoly/dashboard/supervision/supervision.module.ts","../../../../projects/provoly/dashboard/supervision/provoly-dashboard-supervision.ts"],"sourcesContent":["import { createAction, props } from '@ngrx/store';\nimport { BaseToolboxAction } from '@provoly/dashboard';\nimport { Infrastructure, InputFlow, IntegrationError } from './supervision-api.model';\n\nexport const SupervisionActions = {\n highLightMenu: createAction('[Supervision] selecting highLight', props<{ menu: string }>()),\n routeTo: createAction('[Supervision] route to', props<{ path: string; params?: { [p: string]: string } }>()),\n toggleMenu: createAction('[Supervision] Toggle menu'),\n resetActions: createAction('[Supervision] reset toolbox main and sub actions'),\n mainActions: createAction('[Supervision] set toolbox main actions', props<{ actions: BaseToolboxAction[] }>()),\n subActions: createAction('[Supervision] set toolbox sub actions', props<{ actions: BaseToolboxAction[] }>()),\n loadInfras: createAction('[Supervision/Infra] Load Infras'),\n loadInfrasSuccess: createAction('[Supervision/Infra Api] Load Infras Success', props<{ infras: Infrastructure[] }>()),\n loadInfrasFailure: createAction('[Supervision/Infra Api] Load Infras Failure', props<{ error: any }>()),\n scaleInfra: createAction('[Supervision/Infra] Scale infra', props<{ name: string; scale: number; up: boolean }>()),\n scaleInfraSuccess: createAction(\n '[Supervision/Infra Api] Scale infra success',\n props<{ name: string; time: string; up: boolean }>()\n ),\n scaleInfraFailure: createAction('[Supervision/Infra Api] Scale infra failure', props<{ error: any }>()),\n loadFlows: createAction('[Supervision/Flow] Load Flows'),\n loadFlowsSuccess: createAction('[Supervision/Flow Api] Load Flows Success', props<{ flows: InputFlow[] }>()),\n loadFlowsFailure: createAction('[Supervision/Flow Api] Load Flows Failure', props<{ error: any }>()),\n loadIntegrationErrors: createAction('[Supervision/Errors] Load Integration Errors'),\n loadIntegrationErrorsSuccess: createAction(\n '[Supervision/Errors Api] Load Integration Errors Success',\n props<{ integrationErrors: IntegrationError[] }>()\n ),\n loadIntegrationErrorsFailure: createAction(\n '[Supervision/Errors Api] Load Integration Errors Failure',\n props<{ error: any }>()\n ),\n toggleErrorDetails: createAction(\n '[Supervision/Errors] Toggle Side Panel With Error Details Of Chosen Class',\n props<{ error?: IntegrationError; errorDetailsOpen: boolean }>()\n ),\n toggleClassSelection: createAction(\n '[Supervision/Errors] Select/Unselect Class for submission (Reload/Acknowledge)',\n props<{ selectedClass: string }>()\n ),\n reloadErrors: createAction('[Supervision/Errors] Reload Integration Errors'),\n reloadErrorsSuccess: createAction('[Supervision/Errors Api] Reload Integration Errors Success'),\n reloadErrorsFailure: createAction(\n '[Supervision/Errors Api] Reload Integration Errors failure',\n props<{ error: any }>()\n ),\n acknowledgeErrors: createAction('[Supervision/Errors] Acknowledge Integration Errors'),\n acknowledgeErrorsSuccess: createAction('[Supervision/Errors Api] Acknowledge Integration Errors Success'),\n acknowledgeErrorsFailure: createAction(\n '[Supervision/Errors Api] Acknowledge Integration Errors Failure',\n props<{ error: any }>()\n ),\n setRefreshInterval: createAction(\n '[Supervision/Errors] Change the interval of time for refreshing errors (in milliseconds)',\n props<{ interval: number }>()\n ),\n startAutoRefresh: createAction('[Supervision/Errors] Start auto refreshing errors'),\n stopAutoRefresh: createAction('[Supervision/Errors] Stop auto refreshing errors')\n};\n","import { createReducer, on } from '@ngrx/store';\nimport { BaseMenuItem, BaseToolboxAction, BusinessData } from '@provoly/dashboard';\nimport { Infrastructure, InputFlow, IntegrationError, LastInfrastructureScale } from './supervision-api.model';\nimport { SupervisionActions } from './supervision.actions';\n\nexport const supervisionFeatureKey = '@pry/supervision';\n\nexport interface SupervisionState {\n highlightedMenu: string;\n menus: BaseMenuItem[];\n menuOpen: boolean;\n actions: BaseToolboxAction[];\n subActions: BaseToolboxAction[];\n infrastructures: Infrastructure[];\n lastInfraScale: LastInfrastructureScale | undefined;\n inputFlows: InputFlow[];\n businessDatas: BusinessData[];\n integrationErrors: IntegrationError[];\n currentIntegrationError?: IntegrationError;\n errorDetailsOpen: boolean;\n selectedClasses: string[];\n refreshInterval: number;\n loading: boolean;\n}\n\nexport const initialSupervisionState: SupervisionState = {\n highlightedMenu: 'infrastructures',\n menus: [{ menu: 'integration-errors', module: 'supervision', page: 'integration_errors' }],\n menuOpen: true,\n actions: [],\n subActions: [],\n infrastructures: [],\n lastInfraScale: undefined,\n inputFlows: [],\n businessDatas: [],\n integrationErrors: [],\n errorDetailsOpen: false,\n selectedClasses: [],\n refreshInterval: 30000,\n loading: false,\n currentIntegrationError: undefined\n};\n\nexport const supervisionReducer = createReducer(\n initialSupervisionState,\n on(SupervisionActions.highLightMenu, (state, action) => ({\n ...state,\n highlightedMenu: action.menu\n })),\n on(SupervisionActions.toggleMenu, (state) => ({\n ...state,\n menuOpen: !state.menuOpen\n })),\n on(SupervisionActions.resetActions, (state) => ({\n ...state,\n actions: [],\n subActions: []\n })),\n on(SupervisionActions.mainActions, (state, action) => ({\n ...state,\n actions: [...action.actions]\n })),\n on(SupervisionActions.subActions, (state, action) => ({\n ...state,\n subActions: [...action.actions]\n })),\n on(SupervisionActions.loadInfras, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadInfrasSuccess, (state, action) => ({\n ...state,\n infrastructures: [...action.infras],\n loading: false\n })),\n on(SupervisionActions.loadInfrasFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.scaleInfra, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.scaleInfraSuccess, (state, action) => ({\n ...state,\n lastInfraScale: { name: action.name, time: action.time, up: action.up }\n })),\n on(SupervisionActions.scaleInfraFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.loadFlows, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadFlowsSuccess, (state, action) => ({\n ...state,\n inputFlows: [...action.flows],\n loading: false\n })),\n on(SupervisionActions.loadFlowsFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.loadIntegrationErrors, (state) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.loadIntegrationErrorsSuccess, (state, action) => ({\n ...state,\n integrationErrors: [...action.integrationErrors],\n loading: false\n })),\n on(SupervisionActions.loadIntegrationErrorsFailure, (state) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.toggleErrorDetails, (state, action) => ({\n ...state,\n currentIntegrationError: action.error,\n errorDetailsOpen: action.errorDetailsOpen\n })),\n on(SupervisionActions.toggleClassSelection, (state, action) => {\n let updatedClasses;\n if (state.selectedClasses.includes(action.selectedClass)) {\n updatedClasses = state.selectedClasses.filter((oclass) => oclass !== action.selectedClass);\n } else {\n updatedClasses = [...state.selectedClasses, action.selectedClass];\n }\n return { ...state, selectedClasses: updatedClasses };\n }),\n on(SupervisionActions.reloadErrors, (state, action) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.reloadErrorsSuccess, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.reloadErrorsFailure, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.acknowledgeErrors, (state, action) => ({\n ...state,\n loading: true\n })),\n on(SupervisionActions.acknowledgeErrorsSuccess, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.acknowledgeErrorsFailure, (state, action) => ({\n ...state,\n loading: false\n })),\n on(SupervisionActions.setRefreshInterval, (state, action) => ({\n ...state,\n refreshInterval: action.interval\n }))\n);\n","import { createFeatureSelector, createSelector } from '@ngrx/store';\nimport * as fromSupervision from './supervision.reducer';\n\nconst feature = createFeatureSelector<fromSupervision.SupervisionState>(fromSupervision.supervisionFeatureKey);\n\nconst highlightedMenu = createSelector(feature, (state) => state.highlightedMenu);\nconst menuOpen = createSelector(feature, (state) => state.menuOpen);\nconst actions = createSelector(feature, (state) => state.actions);\nconst subActions = createSelector(feature, (state) => state.subActions);\nconst menus = createSelector(feature, (state) => state.menus);\nconst infrastructures = createSelector(feature, (state) => state.infrastructures);\nconst lastInfraScale = createSelector(feature, (state) => state.lastInfraScale);\nconst inputFlows = createSelector(feature, (state) => state.inputFlows);\nconst integrationErrors = createSelector(feature, (state) => state.integrationErrors ?? []);\nconst currentIntegrationError = createSelector(feature, (state) => state.currentIntegrationError);\nconst errorDetailsOpen = createSelector(feature, (state) => state.errorDetailsOpen);\nconst selectedClasses = createSelector(feature, (state) => state.selectedClasses);\nconst refreshInterval = createSelector(feature, (state) => state.refreshInterval);\nconst loading = createSelector(feature, (state) => state.loading);\n\nexport const SupervisionSelectors = {\n feature,\n highlightedMenu,\n menuOpen,\n menus,\n actions,\n subActions,\n infrastructures,\n lastInfraScale,\n inputFlows,\n integrationErrors,\n currentIntegrationError,\n errorDetailsOpen,\n selectedClasses,\n refreshInterval,\n loading\n};\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { BusinessData, ClassActions, ClassSelectors } from '@provoly/dashboard';\nimport { Observable } from 'rxjs';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-business-data',\n templateUrl: './supervision-business-data.component.html'\n})\nexport class SupervisionBusinessDataComponent {\n datas$: Observable<BusinessData[]>;\n loading$: Observable<boolean>;\n\n sortActive? = 'name';\n sortDirection? = 'asc';\n\n constructor(private store: Store<any>) {\n this.store.dispatch(ClassActions.loadBusinessData());\n this.datas$ = this.store.select(ClassSelectors.classDatas);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: ClassActions.loadBusinessData(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.businessData.title' | i18n }}</h1>\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.businessData.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th>\n <pry-icon iconSvg=\"detail\"></pry-icon>\n </th>\n <th prySortHeader=\"name\">{{ '@pry.supervision.businessData.name' | i18n }}</th>\n <th prySortHeader=\"count\">{{ '@pry.supervision.businessData.count' | i18n }}</th>\n <th prySortHeader=\"date\">{{ '@pry.supervision.businessData.date' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let data of datas$ | async | prySortData: sortActive : sortDirection\">\n <td>\n <ng-container *ngIf=\"data.icon; else noImg\">\n <img [height]=\"25\" [width]=\"25\" [src]=\"data.icon | getSecuredImage | async\" [alt]=\"data.title\" />\n </ng-container>\n <ng-template #noImg>\n <img\n [height]=\"25\"\n [width]=\"25\"\n [src]=\"data.id | translateId: { type: 'class', output: 'icon' } | async\"\n [alt]=\"data.title\"\n />\n </ng-template>\n </td>\n <td>{{ data.name }}</td>\n <td>{{ data.count }}</td>\n <td>\n {{ !data.date ? '' : (data.date | date: ('@pry.format.datetime' | i18n)) }}\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { InputFlow } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-flow',\n templateUrl: './supervision-flow.component.html'\n})\nexport class SupervisionFlowComponent {\n flows$: Observable<InputFlow[]>;\n loading$: Observable<boolean>;\n\n sortActive? = 'name';\n sortDirection? = 'asc';\n\n constructor(private store: Store<any>) {\n this.store.dispatch(SupervisionActions.loadFlows());\n this.flows$ = this.store.select(SupervisionSelectors.inputFlows);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.loadFlows(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.inputFlow.title' | i18n }}</h1>\n\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.inputFlow.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th prySortHeader=\"name\">{{ '@pry.supervision.inputFlow.name' | i18n }}</th>\n <th prySortHeader=\"format\">{{ '@pry.supervision.inputFlow.format' | i18n }}</th>\n <th>{{ '@pry.supervision.inputFlow.state' | i18n }}</th>\n <th prySortHeader=\"nbIntegrationOk\">{{ '@pry.supervision.inputFlow.oks' | i18n }}</th>\n <th prySortHeader=\"nbIntegrationKo\">{{ '@pry.supervision.inputFlow.kos' | i18n }}</th>\n <th prySortHeader=\"dateIntegration\">{{ '@pry.supervision.inputFlow.date' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let flow of flows$ | async | prySortData: sortActive : sortDirection\">\n <td>\n <div class=\"u-display-flex -align-center\">\n {{ flow.name }}\n <a *ngIf=\"flow.accessLink\" [href]=\"flow.accessLink\" target=\"_blank\" class=\"a-btn a-btn--icon-only\">\n <pry-icon iconSvg=\"launch\" [height]=\"15\" [width]=\"15\"></pry-icon>\n <span class=\"u-sr-only\">{{ '@pry.action.opensInNewTab' | i18n }}</span>\n </a>\n </div>\n </td>\n <td>{{ flow.format }}</td>\n <td>\n <span class=\"a-badge\" [ngClass]=\"{ '-status-ok': flow.status, '-status-inactive': !flow.status }\">\n {{ (flow.status ? '@pry.supervision.inputFlow.active' : '@pry.supervision.inputFlow.inactive') | i18n }}\n </span>\n </td>\n <td>{{ flow.nbIntegrationOk }}</td>\n <td>{{ flow.nbIntegrationKo }}</td>\n <td>{{ flow.dateIntegration | date: ('@pry.format.datetime' | i18n) }}</td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { Infrastructure, LastInfrastructureScale } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-infrastructures',\n templateUrl: './supervision-infrastructures.component.html'\n})\nexport class SupervisionInfrastructuresComponent {\n infras$: Observable<Infrastructure[]>;\n loading$: Observable<boolean>;\n lastInfraScale$: Observable<LastInfrastructureScale | undefined>;\n classFromStatus: { [key: string]: string } = {\n GREEN: '-ok',\n YELLOW: '-warning',\n RED: '-error'\n };\n\n constructor(private store: Store<any>) {\n this.store.dispatch(SupervisionActions.loadInfras());\n this.infras$ = this.store.select(SupervisionSelectors.infrastructures);\n this.lastInfraScale$ = this.store.select(SupervisionSelectors.lastInfraScale);\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.loadInfras(),\n label: 'refresh',\n icon: 'synchro'\n }\n ]\n })\n );\n }\n\n onScaleUp(infra: string, replicas: number): void {\n this.store.dispatch(\n SupervisionActions.scaleInfra({\n name: infra,\n scale: replicas + 1,\n up: true\n })\n );\n }\n\n onScaleDown(infra: string, replicas: number): void {\n this.store.dispatch(\n SupervisionActions.scaleInfra({\n name: infra,\n scale: replicas - 1,\n up: false\n })\n );\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.infrastructures.title' | i18n }}</h1>\n\n <ul class=\"o-cards-list\">\n <li *ngFor=\"let infra of infras$ | async\" class=\"o-cards-list__item\">\n <div class=\"o-card o-card--infra\">\n <div class=\"o-card__header\">\n <div class=\"o-card__header__logo\"></div>\n <div class=\"o-card__header__title\">\n <h4 class=\"a-h4\">{{ infra.name }}</h4>\n <p class=\"a-p\">{{ infra.title }}</p>\n </div>\n <div *ngIf=\"infra.status\" class=\"o-card__header__status\" [ngClass]=\"classFromStatus[infra.status]\"></div>\n </div>\n\n <div class=\"o-card__content\">\n <p class=\"a-p\">\n {{ infra.available }}\n {{ '@pry.supervision.infrastructures.available' + (infra.available > 1 ? 's' : '') | i18n }}\n </p>\n\n <ng-container *ngIf=\"lastInfraScale$ | async as lastInfraScale\">\n <span *ngIf=\"lastInfraScale.name === infra.name\" class=\"o-card__content__info\">\n {{ '@pry.supervision.infrastructures.scaleReplica' + (lastInfraScale.up ? 'Up' : 'Down') | i18n }}\n {{ lastInfraScale.time | date: 'HH:mm' }}\n </span>\n </ng-container>\n </div>\n\n <div class=\"o-card__footer\">\n <div class=\"o-card__footer__message\">\n <pry-icon iconSvg=\"grid_view\" [height]=\"20\" [width]=\"20\"></pry-icon>\n <span>\n {{ infra.replicas }}\n {{ '@pry.supervision.infrastructures.replica' + (infra.replicas > 1 ? 's' : '') | i18n }}\n </span>\n </div>\n\n <ng-container *pryAccess=\"{ module: 'supervision', page: 'infrastructures', action: 'scale' }\">\n <div *ngIf=\"infra.hotScale\" class=\"m-minus-plus\">\n <ng-container *ngIf=\"infra.replicas !== infra.available; else scaleTemplate\">\n <button\n class=\"m-minus-plus__btn -minus\"\n disabled\n title=\"{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n <button\n class=\"m-minus-plus__btn -plus\"\n disabled\n title=\"{{ '@pry.supervision.infrastructures.addInstance' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.addInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n </ng-container>\n\n <ng-template #scaleTemplate>\n <button\n class=\"m-minus-plus__btn -minus scale-down\"\n [disabled]=\"infra.replicas === infra.minReplicas\"\n title=\"{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}\"\n (click)=\"infra.replicas !== infra.minReplicas && onScaleDown(infra.name, infra.replicas)\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.removeInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n <button\n class=\"m-minus-plus__btn -plus scale-up\"\n [disabled]=\"infra.replicas === infra.maxReplicas\"\n title=\"{{ '@pry.supervision.infrastructures.addInstance' | i18n }}\"\n (click)=\"infra.replicas !== infra.maxReplicas && onScaleUp(infra.name, infra.replicas)\"\n >\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.infrastructures.addInstance' | i18n }}</span>\n <span class=\"m-minus-plus__btn__sign\" aria-hidden=\"true\"></span>\n </button>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n </li>\n </ul>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable, startWith } from 'rxjs';\nimport { IntegrationError } from '../../../store/supervision-api.model';\nimport { SupervisionActions } from '../../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-integration-errors-select',\n templateUrl: './supervision-integration-errors-select.component.html'\n})\nexport class SupervisionIntegrationErrorsSelectComponent {\n currentIntegrationError$: Observable<IntegrationError | undefined>;\n\n constructor(private store: Store<any>) {\n this.currentIntegrationError$ = this.store\n .select(SupervisionSelectors.currentIntegrationError)\n .pipe(startWith(null as unknown as IntegrationError));\n }\n\n closePanel() {\n this.store.dispatch(SupervisionActions.loadIntegrationErrors());\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: undefined, errorDetailsOpen: false }));\n }\n}\n","<div\n *ngIf=\"currentIntegrationError$ | async as e\"\n [id]=\"'panel-env-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\"\n [attr.aria-labelledby]=\"'button-env-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\"\n class=\"o-panel\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n <h3 [id]=\"'tab-title-' + (e.oClass | translateId : { type: 'class', output: 'name' } | async)\" class=\"a-h3\">\n {{ '@pry.supervision.importErrors.details.title' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.supervision.importErrors.details.\">\n <pry-tab [templateRef]=\"errorDetails\" name=\"details\"></pry-tab>\n </pry-tab-group>\n <ng-template #errorDetails>\n <div *ngFor=\"let error of e.errors\">\n <p class=\"a-p\">\n {{ '@pry.supervision.importErrors.details.errorLabel' | i18n }} :\n <strong>{{ error.label }}</strong>\n </p>\n <p class=\"a-p\">\n {{ '@pry.supervision.importErrors.details.errorCount' | i18n }}:\n <strong>{{ error.count }}</strong>\n </p>\n </div>\n </ng-template>\n</div>\n","import { Component, OnDestroy, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ClassActions } from '@provoly/dashboard';\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { IntegrationError } from '../../store/supervision-api.model';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-integration-errors',\n templateUrl: './supervision-integration-errors.component.html'\n})\nexport class SupervisionIntegrationErrorsComponent implements OnDestroy {\n private subscription: Subscription = new Subscription();\n integrationErrors$: Observable<IntegrationError[]>;\n currentIntegrationError = new BehaviorSubject<IntegrationError | undefined>(undefined);\n selectedClasses!: string[];\n loading$: Observable<boolean>;\n refreshInterval$: Observable<number>;\n possibleIntervals = [1, 5, 10, 15, 20, 25, 30];\n sortActive? = 'name';\n sortDirection? = 'asc';\n @ViewChild('detailPanel', { static: true, read: ViewContainerRef }) detailPanel!: ViewContainerRef;\n\n constructor(private store: Store<any>) {\n this.store.dispatch(ClassActions.load());\n this.store.dispatch(SupervisionActions.loadIntegrationErrors());\n this.integrationErrors$ = this.store.select(SupervisionSelectors.integrationErrors);\n this.subscription.add(\n this.store.select(SupervisionSelectors.selectedClasses).subscribe((selectedClasses: string[]) => {\n this.selectedClasses = selectedClasses;\n })\n );\n this.loading$ = this.store.select(SupervisionSelectors.loading);\n this.refreshInterval$ = this.store\n .select(SupervisionSelectors.refreshInterval)\n .pipe(map((interval) => interval / 1000));\n this.store.dispatch(SupervisionActions.startAutoRefresh());\n this.store.dispatch(\n SupervisionActions.mainActions({\n actions: [\n {\n action: SupervisionActions.reloadErrors(),\n icon: 'reset',\n label: 'reloadErrors',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n },\n {\n action: SupervisionActions.acknowledgeErrors(),\n icon: 'check',\n label: 'acknowledgeErrors',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n },\n {\n action: SupervisionActions.loadIntegrationErrors(),\n label: 'refresh',\n icon: 'synchro',\n moduleAccess: 'supervision',\n pageAccess: 'errors'\n }\n ]\n })\n );\n }\n\n selectCurrentError(e: IntegrationError) {\n if (this.currentIntegrationError.value?.oClass === e.oClass) this.currentIntegrationError.next(undefined);\n else this.currentIntegrationError.next(e);\n }\n\n getTotalErrorCount(e: IntegrationError): number {\n return e.errors.reduce((previousValue, currentValue) => previousValue + currentValue.count, 0);\n }\n\n toggleErrorDetails(e: IntegrationError): void {\n this.selectCurrentError(e);\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: e, errorDetailsOpen: true }));\n }\n\n onCheckChange(selectedClass: string): void {\n this.store.dispatch(SupervisionActions.toggleClassSelection({ selectedClass }));\n }\n\n isClassSelected(c: string): boolean {\n return !!this.selectedClasses.find((oclass) => oclass === c);\n }\n\n setRefreshInterval($event: number): void {\n this.store.dispatch(SupervisionActions.stopAutoRefresh());\n this.store.dispatch(SupervisionActions.setRefreshInterval({ interval: +$event * 1000 }));\n }\n\n stopPropagation(event: Event): void {\n event.stopPropagation();\n }\n\n ngOnDestroy(): void {\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: undefined, errorDetailsOpen: false }));\n this.subscription.unsubscribe();\n this.store.dispatch(SupervisionActions.mainActions({ actions: [] }));\n this.store.dispatch(SupervisionActions.stopAutoRefresh());\n }\n}\n","<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.supervision.importErrors.title' | i18n }}</h1>\n\n <div class=\"m-form-label-field m-form-label-field--inline\">\n <label class=\"a-label\" for=\"interval_time\">Rafraichir chaque</label>\n <pry-select\n [ngModel]=\"refreshInterval$ | async\"\n (ngModelChange)=\"setRefreshInterval($event)\"\n [items]=\"possibleIntervals\"\n id=\"interval_time\"\n class=\"a-pry-select\"\n ></pry-select>\n <label class=\"a-label\">secondes</label>\n </div>\n\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.supervision.importErrors.title' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th></th>\n <th prySortHeader=\"name\">{{ '@pry.supervision.importErrors.name' | i18n }}</th>\n <th prySortHeader=\"count\">{{ '@pry.supervision.importErrors.totalErrorCount' | i18n }}</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"let e of integrationErrors$ | async | prySortData: sortActive : sortDirection\"\n (click)=\"toggleErrorDetails(e)\"\n [class.is-selected]=\"(currentIntegrationError | async)?.oClass === e.oClass\"\n >\n <td class=\"view-details\" (click)=\"stopPropagation($event)\">\n <button\n [id]=\"'button-attr-' + (e.oClass | translateId: { type: 'class', output: 'name' } | async)\"\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.action.viewDetails' | i18n }}\"\n [attr.aria-expanded]=\"(currentIntegrationError | async)?.oClass === e.oClass\"\n aria-haspopup\n [attr.aria-controls]=\"'panel-attr-' + (e.oClass | translateId: { type: 'class', output: 'name' } | async)\"\n >\n <span class=\"u-visually-hidden\">{{ e.name }}, {{ '@pry.action.viewDetails' | i18n }}</span>\n <pry-icon iconSvg=\"eye\" [width]=\"15\" [height]=\"15\"></pry-icon>\n </button>\n </td>\n <td>\n {{ e.oClass | translateId: { type: 'class', output: 'name' } | async }}\n </td>\n <td>\n {{ getTotalErrorCount(e) }}\n </td>\n <td (click)=\"stopPropagation($event)\">\n <pry-checkbox\n id=\"selectClass\"\n [ngModel]=\"isClassSelected(e.oClass)\"\n (ngModelChange)=\"onCheckChange(e.oClass)\"\n ></pry-checkbox>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { BaseMenuComponent } from '@provoly/dashboard';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-menu',\n templateUrl: '../../../lib/core/components/base-menu/base-menu.component.html'\n})\nexport class SupervisionMenuComponent extends BaseMenuComponent {\n constructor(\n store: Store<any>,\n private router: Router,\n private route: ActivatedRoute\n ) {\n super(store);\n this.baseMenuTranslation = '@pry.supervision.menus.';\n }\n\n override init() {\n this.menus$ = this.store.select(SupervisionSelectors.menus);\n this.highlightedMenu$ = this.store.select(SupervisionSelectors.highlightedMenu);\n }\n\n override select(menu: string): void {\n const path = this.router.createUrlTree([menu], { relativeTo: this.route });\n this.store.dispatch(SupervisionActions.routeTo({ path: path.toString() }));\n }\n}\n","<nav class=\"m-nav-links\">\n <ng-container *ngFor=\"let sub of subMenu$ | async\">\n <ul class=\"m-nav-links__list\">\n <ng-container *ngFor=\"let menu of sub.subMenus\">\n <li\n *pryAccess=\"{ module: menu.module, page: menu.page, subMenu: menu.subMenu }\"\n class=\"m-nav-links__list__item\"\n >\n <a [routerLink]=\"menu.menu\" class=\"a-btn a-btn--secondary -width-full\" [routerLinkActive]=\"'is-active'\">\n {{ baseMenuTranslation + menu.menu | i18n }}\n </a>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n <ng-container *ngIf=\"menus$ | async as menus\">\n <ng-container *ngIf=\"menus.length > 0\">\n <ul class=\"m-nav-links__list\">\n <ng-container *ngFor=\"let menu of menus\">\n <ng-container *ngIf=\"menu.module === 'supervision'\">\n <li *pryAccess=\"{ module: menu.module, page: menu.page }\" class=\"m-nav-links__list__item\">\n <a [routerLink]=\"menu.menu\" class=\"a-btn a-btn--secondary -width-full\" [routerLinkActive]=\"'is-active'\">\n {{ baseMenuTranslation + menu.menu | i18n }}\n </a>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </ng-container>\n </ng-container>\n</nav>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { Observable } from 'rxjs';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-title',\n templateUrl: './supervision-title.component.html'\n})\nexport class SupervisionTitleComponent {\n menuOpen$: Observable<boolean>;\n\n constructor(private store: Store<any>) {\n this.menuOpen$ = this.store.select(SupervisionSelectors.menuOpen);\n }\n\n onToggleMenu($event: any) {\n this.store.dispatch(SupervisionActions.toggleMenu());\n\n // Toggle button aria-pressed\n $event.target.setAttribute(\n 'aria-pressed',\n $event.target.getAttribute('aria-pressed') === 'true' ? 'false' : 'true'\n );\n }\n}\n","<h2 class=\"a-h3\">{{ '@pry.supervision.title' | i18n }}</h2>\n<button type=\"button\" class=\"a-btn a-btn--toggle\" (click)=\"onToggleMenu($event)\" aria-pressed=\"false\">\n <span class=\"u-visually-hidden\">{{ '@pry.supervision.titleIndication' | i18n }}</span>\n</button>\n","import { AfterViewInit, Component, ComponentRef, OnDestroy, ViewChild, ViewContainerRef } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngrx/store';\nimport { BaseLayoutComponent, BaseToolboxAction } from '@provoly/dashboard';\nimport { Observable } from 'rxjs';\nimport { SupervisionIntegrationErrorsSelectComponent } from '../../../supervision/components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component';\nimport { SupervisionActions } from '../../store/supervision.actions';\nimport { SupervisionSelectors } from '../../store/supervision.selectors';\n\n@Component({\n selector: 'pry-supervision-layout',\n templateUrl: './supervision-layout.component.html'\n})\nexport class SupervisionLayoutComponent extends BaseLayoutComponent implements AfterViewInit, OnDestroy {\n baseToolboxTranslation: string;\n actions$: Observable<BaseToolboxAction[]>;\n subActions$: Observable<BaseToolboxAction[]>;\n panelOpen$: Observable<boolean>;\n @ViewChild('supervisionPanel', { static: true, read: ViewContainerRef }) supervisionPanel!: ViewContainerRef;\n componentRef?: ComponentRef<any>;\n\n constructor(store: Store<any>, router: Router) {\n super(store, router);\n this.baseToolboxTranslation = '@pry.supervision.';\n this.actions$ = this.store.select(SupervisionSelectors.actions);\n this.subActions$ = this.store.select(SupervisionSelectors.subActions);\n this.panelOpen$ = this.store.select(SupervisionSelectors.errorDetailsOpen);\n }\n\n override init(): void {\n this.menus$ = this.store.select(SupervisionSelectors.menus);\n this.menuOpen$ = this.store.select(SupervisionSelectors.menuOpen);\n }\n\n override highlightMenu(menu: string): void {\n this.store.dispatch(SupervisionActions.highLightMenu({ menu }));\n }\n\n ngAfterViewInit(): void {\n if (this.componentRef) {\n this.supervisionPanel.clear();\n }\n this.componentRef = this.supervisionPanel.createComponent(SupervisionIntegrationErrorsSelectComponent);\n }\n\n override ngOnDestroy() {\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: undefined, errorDetailsOpen: false }));\n }\n}\n","<div class=\"o-base-layout\" [ngClass]=\"{ 'is-menu-open': menuOpen$ | async }\">\n <pry-supervision-title class=\"o-base-layout__title\"></pry-supervision-title>\n <pry-supervision-menu *ngIf=\"menuOpen$ | async\" class=\"o-base-layout__menu\"></pry-supervision-menu>\n <pry-base-toolbox\n class=\"o-base-layout__toolbox\"\n [baseToolboxTranslation]=\"baseToolboxTranslation\"\n [actions$]=\"actions$\"\n [subActions$]=\"subActions$\"\n ></pry-base-toolbox>\n\n <div class=\"o-base-layout__contentwrapper\">\n <div class=\"o-base-layout__content\">\n <router-outlet></router-outlet>\n </div>\n <div class=\"o-base-layout__panel\" [class.is-open]=\"panelOpen$ | async\">\n <div class=\"o-base-layout__panel__content\">\n <ng-template #supervisionPanel></ng-template>\n </div>\n </div>\n </div>\n</div>\n","import { Component } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { SupervisionActions } from '../store/supervision.actions';\nimport { SupervisionState } from '../store/supervision.reducer';\n\n@Component({\n selector: 'pry-supervision',\n templateUrl: './supervision.component.html'\n})\nexport class PrySupervisionComponent {\n constructor(private store: Store<SupervisionState>) {\n this.store.dispatch(SupervisionActions.resetActions());\n this.store.dispatch(SupervisionActions.toggleErrorDetails({ error: undefined, errorDetailsOpen: false }));\n }\n}\n","<h1 class=\"a-h1\">{{ '@pry.supervision.title' | i18n }}</h1>\n","export const enTranslations = {\n '@pry': {\n supervision: {\n title: 'Supervision',\n titleIndication: 'Close supervision menu ',\n refresh: 'Refresh',\n reloadErrors: 'Reload errors',\n acknowledgeErrors: 'Acknowledge errors',\n menus: {\n infrastructures: 'Infrastructures',\n 'input-flows': 'Incoming flows',\n 'business-datas': 'Business data',\n 'integration-errors': 'Data import errors'\n },\n infrastructures: {\n scaleMsg: 'Your request is taken into account',\n title: \"Infrastructure's modules \",\n available: ' instance available',\n availables: ' instances available',\n scaleReplicaUp: 'New instance created at ',\n scaleReplicaDown: 'Instance deleted at ',\n replica: ' instance',\n replicas: ' instances',\n addInstance: 'Add an instance',\n removeInstance: 'Remove an instance'\n },\n inputFlow: {\n title: 'Input flows',\n name: 'Name',\n format: 'Format',\n state: 'State',\n oks: 'Added Elements ',\n kos: 'Errors',\n date: 'Date',\n active: 'Active',\n inactive: 'Inactive'\n },\n businessData: {\n title: 'Business Datas',\n name: 'Names',\n count: 'Item number',\n date: 'Date'\n },\n importErrors: {\n title: 'Data import errors',\n name: 'Class name',\n totalErrorCount: 'Errors total',\n details: {\n details: 'Details',\n title: 'Error details',\n errorLabel: 'Error name',\n errorCount: 'Error count'\n }\n }\n }\n }\n};\n","export const frTranslations = {\n '@pry': {\n supervision: {\n title: 'Supervision',\n titleIndication: 'Fermer le menu supervision',\n refresh: 'Rafraîchir',\n reloadErrors: \"Relancer l'intégration\",\n acknowledgeErrors: 'Acquitter les classes en erreur',\n menus: {\n infrastructures: 'Infrastructures',\n 'input-flows': 'Flux en entrée',\n 'business-datas': 'Données métier',\n 'integration-errors': \"Erreurs d'intégration de données\"\n },\n infrastructures: {\n scaleMsg: 'Votre demande est prise en compte',\n title: \"Modules de l'infrastructure\",\n available: ' instance disponible',\n availables: ' instances disponibles',\n scaleReplicaUp: 'Nouvelle instance créé à ',\n scaleReplicaDown: 'Instance supprimée à ',\n replica: ' instance demandée',\n replicas: ' instances demandées',\n addInstance: 'Ajouter une instance',\n removeInstance: 'Supprimer une instance'\n },\n inputFlow: {\n title: 'Flux en Entrée',\n name: 'Nom',\n format: 'Format',\n state: 'Etat',\n oks: 'Eléments intégrés',\n kos: \"Nombre d'erreurs\",\n date: 'Date',\n active: 'Actif',\n inactive: 'Inactif'\n },\n businessData: {\n title: 'Données métier',\n name: 'Ontologies',\n count: \"Nombre d'items\",\n date: 'Date'\n },\n importErrors: {\n title: \"Erreurs d'intégration de données\",\n name: 'Nom de la classe',\n totalErrorCount: \"Nombre d'erreur total\",\n details: {\n details: 'Détails',\n title: 'Détail des erreurs',\n errorLabel: \"Nom d'erreur\",\n errorCount: \"Nombre d'erreurs\"\n }\n }\n }\n }\n};\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { ConfigSelectors } from '@provoly/dashboard';\nimport { mergeMap, Observable } from 'rxjs';\nimport { Infrastructure, InputFlow, IntegrationError } from '../store/supervision-api.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SupervisionService {\n constructor(\n private httpClient: HttpClient,\n private store: Store<any>\n ) {}\n\n getInfrastructures(): Observable<Infrastructure[]> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(mergeMap((url) => this.httpClient.get<Infrastructure[]>(encodeURI(`${url}/status`))));\n }\n\n scaleInfra(infra: string, replicas: number): Observable<string> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<string>(encodeURI(`${url}/replicas/${infra}?scale=${replicas}`), {}))\n );\n }\n\n getInputFlows(): Observable<InputFlow[]> {\n return this.store\n .select(ConfigSelectors.monitorUrl)\n .pipe(\n mergeMap((url) => this.httpClient.get<InputFlow[]>(encodeURI(`${url}/supervision/nifi/monitoringInputFlow`)))\n );\n }\n\n getDateIso(): string {\n return new Date().toISOString();\n }\n\n getIntegrationErrors(): Observable<IntegrationError[]> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(mergeMap((url) => this.httpClient.get<IntegrationError[]>(encodeURI(`${url}/integrations/errors`))));\n }\n\n reloadErrors(classes: string[]): Observable<void> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<void>(encodeURI(`${url}/integrations/errors/replay/class`), classes))\n );\n }\n\n acknowledgeErrors(classes: string[]): Observable<void> {\n return this.store\n .select(ConfigSelectors.replayUrl)\n .pipe(\n mergeMap((url) => this.httpClient.post<void>(encodeURI(`${url}/integrations/errors/acknowledge`), classes))\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\nimport { Store } from '@ngrx/store';\nimport { PryI18nService, PrySnackbarService } from '@provoly/dashboard';\nimport { interval, switchMap, takeUntil } from 'rxjs';\nimport { catchError, map, mergeMap, withLatestFrom } from 'rxjs/operators';\nimport { SupervisionActions } from './supervision.actions';\nimport { SupervisionState } from './supervision.reducer';\nimport { SupervisionSelectors } from './supervision.selectors';\nimport { SupervisionService } from './supervision.service';\n\n@Injectable()\nexport class SupervisionEffects {\n routeTo$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.routeTo),\n mergeMap((action) => {\n this.router.navigate([action.path], { queryParams: action.params });\n return action.path === this.router.url ? [] : [SupervisionActions.resetActions()];\n })\n )\n );\n\n loadInfras$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadInfras),\n mergeMap((action) =>\n this.service.getInfrastructures().pipe(\n map((infras) => SupervisionActions.loadInfrasSuccess({ infras })),\n catchError((error) => [SupervisionActions.loadInfrasFailure({ error: error })])\n )\n )\n )\n );\n\n scaleInfra$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.scaleInfra),\n mergeMap((action) =>\n this.service.scaleInfra(action.name, action.scale).pipe(\n map(() =>\n SupervisionActions.scaleInfraSuccess({ name: action.name, time: this.service.getDateIso(), up: action.up })\n ),\n catchError((error) => [SupervisionActions.scaleInfraFailure({ error: error })])\n )\n )\n )\n );\n\n scaleInfraSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.scaleInfraSuccess),\n map((action) => {\n this.snackbar.open({\n message: this.translateService.instant('@pry.supervision.infrastructures.scaleMsg'),\n type: 'info'\n });\n return SupervisionActions.loadInfras();\n })\n )\n );\n\n loadFlows$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadFlows),\n mergeMap((action) =>\n this.service.getInputFlows().pipe(\n map((flows) => SupervisionActions.loadFlowsSuccess({ flows })),\n catchError((error) => [SupervisionActions.loadFlowsFailure({ error: error })])\n )\n )\n )\n );\n\n loadIntegrationErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.loadIntegrationErrors),\n mergeMap((action) =>\n this.service.getIntegrationErrors().pipe(\n map((integrationErrors) =>\n SupervisionActions.loadIntegrationErrorsSuccess({ integrationErrors: integrationErrors })\n ),\n catchError((error) => [SupervisionActions.loadIntegrationErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n reloadErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.reloadErrors),\n withLatestFrom(this.store.select(SupervisionSelectors.selectedClasses)),\n mergeMap(([action, classes]) =>\n this.service.reloadErrors(classes).pipe(\n map(() => SupervisionActions.reloadErrorsSuccess()),\n catchError((error) => [SupervisionActions.reloadErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n reloadErrorsSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.reloadErrorsSuccess),\n map((action) => {\n this.snackbar.open({\n message: 'Errors have been reloaded',\n type: 'info'\n });\n return SupervisionActions.loadIntegrationErrors();\n })\n )\n );\n\n acknowledgeErrors$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.acknowledgeErrors),\n withLatestFrom(this.store.select(SupervisionSelectors.selectedClasses)),\n mergeMap(([action, classes]) =>\n this.service.acknowledgeErrors(classes).pipe(\n map(() => SupervisionActions.acknowledgeErrorsSuccess()),\n catchError((error) => [SupervisionActions.acknowledgeErrorsFailure({ error: error })])\n )\n )\n )\n );\n\n acknowledgeErrorsSuccess$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.acknowledgeErrorsSuccess),\n map((action) => {\n this.snackbar.open({\n message: 'Errors have been acknowledged',\n type: 'info'\n });\n return SupervisionActions.loadIntegrationErrors();\n })\n )\n );\n\n errorAutoRefresh$ = createEffect(() =>\n this.actions$.pipe(\n ofType(SupervisionActions.startAutoRefresh, SupervisionActions.setRefreshInterval),\n withLatestFrom(this.store.select(SupervisionSelectors.refreshInterval)),\n switchMap(([action, refreshInterval]) =>\n interval(refreshInterval).pipe(takeUntil(this.actions$.pipe(ofType(SupervisionActions.stopAutoRefresh))))\n ),\n map((_) => SupervisionActions.loadIntegrationErrors())\n )\n );\n\n constructor(\n private actions$: Actions,\n private service: SupervisionService,\n private router: Router,\n private snackbar: PrySnackbarService,\n private translateService: PryI18nService,\n private store: Store<SupervisionState>\n ) {}\n}\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { PRY_ACCESS_GUARD } from '@provoly/dashboard';\nimport { SupervisionBusinessDataComponent } from './components/supervision-business-data/supervision-business-data.component';\nimport { SupervisionFlowComponent } from './components/supervision-flow/supervision-flow.component';\nimport { SupervisionInfrastructuresComponent } from './components/supervision-infrastructures/supervision-infrastructures.component';\nimport { SupervisionIntegrationErrorsComponent } from './components/supervision-integration-errors/supervision-integration-errors.component';\nimport { SupervisionLayoutComponent } from './components/supervision-layout/supervision-layout.component';\nimport { PrySupervisionComponent } from './components/supervision.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: SupervisionLayoutComponent,\n data: {\n access: {\n module: 'supervision'\n }\n },\n canActivate: [PRY_ACCESS_GUARD],\n children: [\n {\n path: 'infrastructures',\n component: SupervisionInfrastructuresComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'infrastructures'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'input-flows',\n component: SupervisionFlowComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'input_flows'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'business-datas',\n component: SupervisionBusinessDataComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'business_datas'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: 'integration-errors',\n component: SupervisionIntegrationErrorsComponent,\n data: {\n access: {\n module: 'supervision',\n page: 'integration_errors'\n }\n },\n canActivate: [PRY_ACCESS_GUARD]\n },\n {\n path: '',\n component: PrySupervisionComponent\n },\n {\n path: '**',\n redirectTo: '',\n pathMatch: 'full'\n }\n ]\n },\n {\n path: '**',\n redirectTo: '',\n pathMatch: 'full'\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class SupervisionRoutingModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule } from '@ngrx/store';\nimport {\n PryCoreModule,\n PryI18nModule,\n PryI18nService,\n PryIconModule,\n PrySelectModule,\n PrySnackbarModule,\n PrySortModule,\n PryToggleModule\n} from '@provoly/dashboard';\nimport { PryCheckboxModule } from '@provoly/dashboard/components/checkbox';\nimport { SupervisionBusinessDataComponent } from './components/supervision-business-data/supervision-business-data.component';\nimport { SupervisionFlowComponent } from './components/supervision-flow/supervision-flow.component';\nimport { SupervisionInfrastructuresComponent } from './components/supervision-infrastructures/supervision-infrastructures.component';\nimport { SupervisionIntegrationErrorsSelectComponent } from './components/supervision-integration-errors/supervision-integration-errors-select/supervision-integration-errors-select.component';\nimport { SupervisionIntegrationErrorsComponent } from './components/supervision-integration-errors/supervision-integration-errors.component';\nimport { SupervisionLayoutComponent } from './components/supervision-layout/supervision-layout.component';\nimport { SupervisionMenuComponent } from './components/supervision-menu/supervision-menu.component';\nimport { SupervisionTitleComponent } from './components/supervision-title/supervision-title.component';\nimport { PrySupervisionComponent } from './components/supervision.component';\nimport { enTranslations } from './i18n/en.translations';\nimport { frTranslations } from './i18n/fr.translations';\nimport { SupervisionEffects } from './store/supervision.effects';\nimport { supervisionFeatureKey, supervisionReducer } from './store/supervision.reducer';\nimport { SupervisionRoutingModule } from './supervision-routing.module';\n\n@NgModule({\n declarations: [\n PrySupervisionComponent,\n SupervisionLayoutComponent,\n SupervisionMenuComponent,\n SupervisionInfrastructuresComponent,\n SupervisionTitleComponent,\n SupervisionBusinessDataComponent,\n SupervisionFlowComponent,\n SupervisionIntegrationErrorsComponent,\n SupervisionIntegrationErrorsSelectComponent\n ],\n imports: [\n CommonModule,\n PryCoreModule,\n SupervisionRoutingModule,\n StoreModule.forFeature(supervisionFeatureKey, supervisionReducer),\n EffectsModule.forFeature([SupervisionEffects]),\n PryIconModule,\n PrySortModule,\n PrySnackbarModule,\n PryToggleModule,\n FormsModule,\n PrySelectModule,\n PryCheckboxModule,\n PryI18nModule\n ]\n})\nexport class PrySupervisionModule {\n constructor(private pryTranslateService: PryI18nService) {\n this.pryTranslateService.addLangObject('fr', 'supervision', frTranslations);\n this.pryTranslateService.addLangObject('en', 'supervision', enTranslations);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["fromSupervision.supervisionFeatureKey","i2","i3","i4","i5.SupervisionMenuComponent","i6.SupervisionTitleComponent","i1","mergeMap","i2.SupervisionService","i5"],"mappings":"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"}
|
|
@@ -15,16 +15,23 @@ class AttributeTooltipComponent extends BaseTooltipComponent {
|
|
|
15
15
|
this.context = this.context ?? { attributes: [] };
|
|
16
16
|
}
|
|
17
17
|
getValue(attribute) {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
if (!this.data.item.properties) {
|
|
19
|
+
// This is for Provoly-like items
|
|
20
|
+
switch (attribute) {
|
|
21
|
+
case 'id':
|
|
22
|
+
return of(this.data.item[attribute]);
|
|
23
|
+
case 'oClass':
|
|
24
|
+
return this.translateIdPipe.transform(this.data.item[attribute], {
|
|
25
|
+
type: 'class',
|
|
26
|
+
output: 'name'
|
|
27
|
+
});
|
|
28
|
+
default:
|
|
29
|
+
return of((this.data.item.attributes[attribute]?.value ?? ''));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
// This is for other items, like WMSFeatures
|
|
34
|
+
return of(this.data.item.properties.find((prop) => prop.key === attribute).value);
|
|
28
35
|
}
|
|
29
36
|
}
|
|
30
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: AttributeTooltipComponent, deps: [{ token: i1.TranslateIdPipe }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provoly-dashboard-tooltips-attribute.mjs","sources":["../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.component.ts","../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.component.html","../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.module.ts","../../../../projects/provoly/dashboard/tooltips/attribute/provoly-dashboard-tooltips-attribute.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { BaseTooltipComponent, TranslateIdPipe } from '@provoly/dashboard';\nimport { Observable, of } from 'rxjs';\n\n@Component({\n selector: 'pry-attribute-tooltip',\n templateUrl: './attribute-tooltip.component.html'\n})\nexport class AttributeTooltipComponent extends BaseTooltipComponent {\n constructor(private translateIdPipe: TranslateIdPipe) {\n super();\n this.context = this.context ?? { attributes: [] };\n }\n\n getValue(attribute: string): Observable<string> {\n switch (attribute) {\n
|
|
1
|
+
{"version":3,"file":"provoly-dashboard-tooltips-attribute.mjs","sources":["../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.component.ts","../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.component.html","../../../../projects/provoly/dashboard/tooltips/attribute/attribute-tooltip.module.ts","../../../../projects/provoly/dashboard/tooltips/attribute/provoly-dashboard-tooltips-attribute.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { BaseTooltipComponent, TranslateIdPipe } from '@provoly/dashboard';\nimport { Observable, of } from 'rxjs';\n\n@Component({\n selector: 'pry-attribute-tooltip',\n templateUrl: './attribute-tooltip.component.html'\n})\nexport class AttributeTooltipComponent extends BaseTooltipComponent {\n constructor(private translateIdPipe: TranslateIdPipe) {\n super();\n this.context = this.context ?? { attributes: [] };\n }\n\n getValue(attribute: string): Observable<string> {\n if (!this.data.item.properties) {\n // This is for Provoly-like items\n switch (attribute) {\n case 'id':\n return of(this.data.item[attribute]);\n case 'oClass':\n return this.translateIdPipe.transform(this.data.item[attribute], {\n type: 'class',\n output: 'name'\n }) as Observable<string>;\n default:\n return of((this.data.item.attributes[attribute]?.value ?? '') as string);\n }\n } else {\n // This is for other items, like WMSFeatures\n return of(this.data.item.properties.find((prop: { key: string; value: string }) => prop.key === attribute).value);\n }\n }\n}\n","<div class=\"m-tooltip__item__content\">\n <h3 class=\"a-h3 -attribute\">\n <img\n [src]=\"data.item | translateItemToSymbol | async\"\n [alt]=\"data.item.oClass | translateId : { type: 'class', output: 'name' } | async\"\n width=\"32\"\n aria-hidden=\"true\"\n />\n <span>{{ data.item.oClass | translateId : { type: 'class', output: 'name' } | async }}</span>\n </h3>\n <ng-container *ngFor=\"let attribute of context.attributes\">\n <p>\n <span>{{ attribute }}:</span> {{ getValue(attribute) | async }}\n </p>\n </ng-container>\n</div>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { BaseTooltipComponent, BaseTooltipModule, PryCoreModule } from '@provoly/dashboard';\nimport { AttributeTooltipComponent } from './attribute-tooltip.component';\n\n@NgModule({\n declarations: [AttributeTooltipComponent],\n imports: [CommonModule, FormsModule, OverlayModule, PryCoreModule],\n exports: [AttributeTooltipComponent]\n})\nexport class PryAttributeTooltipModule extends BaseTooltipModule {\n override getComponent() {\n return AttributeTooltipComponent as Type<BaseTooltipComponent>;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;AAQM,MAAO,yBAA0B,SAAQ,oBAAoB,CAAA;AACjE,IAAA,WAAA,CAAoB,eAAgC,EAAA;AAClD,QAAA,KAAK,EAAE,CAAC;QADU,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAElD,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;KACnD;AAED,IAAA,QAAQ,CAAC,SAAiB,EAAA;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;;AAE9B,YAAA,QAAQ,SAAS;AACf,gBAAA,KAAK,IAAI;oBACP,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AACvC,gBAAA,KAAK,QAAQ;AACX,oBAAA,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AAC/D,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,MAAM,EAAE,MAAM;AACf,qBAAA,CAAuB,CAAC;AAC3B,gBAAA;AACE,oBAAA,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,EAAE,EAAY,CAAC;AAC5E,aAAA;AACF,SAAA;AAAM,aAAA;;YAEL,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAoC,KAAK,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;AACnH,SAAA;KACF;8GAxBU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,oFCRtC,ykBAgBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,IAAA,EAAA,uBAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDRa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;+BACE,uBAAuB,EAAA,QAAA,EAAA,ykBAAA,EAAA,CAAA;;;AEO7B,MAAO,yBAA0B,SAAQ,iBAAiB,CAAA;IACrD,YAAY,GAAA;AACnB,QAAA,OAAO,yBAAuD,CAAC;KAChE;8GAHU,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAzB,yBAAyB,EAAA,YAAA,EAAA,CAJrB,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAC9B,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAA,EAAA,OAAA,EAAA,CACvD,yBAAyB,CAAA,EAAA,CAAA,CAAA,EAAA;AAExB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,YAH1B,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGtD,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC;oBAClE,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACrC,iBAAA,CAAA;;;ACXD;;AAEG;;;;"}
|