@provoly/dashboard 1.0.0 → 1.1.1

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.
Files changed (73) hide show
  1. package/assets/svgs/analytic.svg +1 -0
  2. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +5 -4
  3. package/esm2022/import/components/import.component.mjs +22 -10
  4. package/esm2022/import/i18n/en.translations.mjs +3 -1
  5. package/esm2022/import/i18n/fr.translations.mjs +3 -1
  6. package/esm2022/lib/core/access/access.service.mjs +4 -1
  7. package/esm2022/lib/core/i18n/en.translations.mjs +2 -1
  8. package/esm2022/lib/core/i18n/fr.translations.mjs +2 -1
  9. package/esm2022/lib/core/model/public-api.mjs +2 -1
  10. package/esm2022/lib/core/model/widget-analytic-manifest.interface.mjs +2 -0
  11. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +5 -2
  12. package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +12 -1
  13. package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +4 -3
  14. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -2
  15. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +6 -4
  16. package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +17 -9
  17. package/esm2022/lib/dashboard/store/dashboard.selectors.mjs +8 -2
  18. package/esm2022/presentation/components/presentation.component.mjs +18 -9
  19. package/esm2022/widgets/widget-analytic/component/widget-analytic.component.mjs +108 -0
  20. package/esm2022/widgets/widget-analytic/i18n/en.translations.mjs +13 -0
  21. package/esm2022/widgets/widget-analytic/i18n/fr.translations.mjs +13 -0
  22. package/esm2022/widgets/widget-analytic/provoly-dashboard-widgets-widget-analytic.mjs +5 -0
  23. package/esm2022/widgets/widget-analytic/public-api.mjs +3 -0
  24. package/esm2022/widgets/widget-analytic/style/css.component.mjs +11 -0
  25. package/esm2022/widgets/widget-analytic/widget-analytic.module.mjs +70 -0
  26. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +14 -137
  27. package/esm2022/widgets/widget-map/interaction/interaction-manager.class.mjs +2 -34
  28. package/esm2022/widgets/widget-map/interaction/tooltip-manager.class.mjs +191 -0
  29. package/esm2022/widgets/widget-map/public-api.mjs +2 -1
  30. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +24 -5
  31. package/fesm2022/provoly-dashboard-admin.mjs +3 -2
  32. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  33. package/fesm2022/provoly-dashboard-import.mjs +25 -9
  34. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  35. package/fesm2022/provoly-dashboard-presentation.mjs +17 -8
  36. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  37. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs +211 -0
  38. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs.map +1 -0
  39. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +201 -169
  40. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  41. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +23 -4
  42. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  43. package/fesm2022/provoly-dashboard.mjs +52 -16
  44. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  45. package/import/components/import.component.d.ts +4 -2
  46. package/import/i18n/en.translations.d.ts +2 -0
  47. package/import/i18n/fr.translations.d.ts +2 -0
  48. package/lib/core/access/access.service.d.ts +3 -0
  49. package/lib/core/i18n/en.translations.d.ts +1 -0
  50. package/lib/core/i18n/fr.translations.d.ts +1 -0
  51. package/lib/core/model/public-api.d.ts +1 -0
  52. package/lib/core/model/widget-analytic-manifest.interface.d.ts +6 -0
  53. package/lib/core/store/data-source/data-source.effects.d.ts +4 -2
  54. package/lib/dashboard/store/dashboard.actions.d.ts +11 -1
  55. package/lib/dashboard/store/dashboard.effects.d.ts +2 -0
  56. package/lib/dashboard/store/dashboard.reducers.d.ts +3 -1
  57. package/lib/dashboard/store/dashboard.selectors.d.ts +1 -1
  58. package/package.json +54 -48
  59. package/presentation/components/presentation.component.d.ts +5 -3
  60. package/styles/components/_o-pry-admin-classes-customize.scss +1 -0
  61. package/widgets/widget-analytic/component/widget-analytic.component.d.ts +47 -0
  62. package/widgets/widget-analytic/i18n/en.translations.d.ts +12 -0
  63. package/widgets/widget-analytic/i18n/fr.translations.d.ts +12 -0
  64. package/widgets/widget-analytic/index.d.ts +5 -0
  65. package/widgets/widget-analytic/public-api.d.ts +2 -0
  66. package/widgets/widget-analytic/style/_o-widget-analytic.scss +43 -0
  67. package/widgets/widget-analytic/style/css.component.d.ts +5 -0
  68. package/widgets/widget-analytic/widget-analytic.module.d.ts +19 -0
  69. package/widgets/widget-map/component/widget-map.component.d.ts +9 -22
  70. package/widgets/widget-map/interaction/interaction-manager.class.d.ts +0 -5
  71. package/widgets/widget-map/interaction/tooltip-manager.class.d.ts +43 -0
  72. package/widgets/widget-map/public-api.d.ts +1 -0
  73. package/widgets/widget-tile/component/widget-tile.component.d.ts +4 -1
@@ -1,12 +1,14 @@
1
1
  import { OnDestroy } from '@angular/core';
2
2
  import { Store } from '@ngrx/store';
3
- import { Dataset, DataSourceService, SubscriptionnerDirective } from '@provoly/dashboard';
3
+ import { Dataset, DataSourceService, PryI18nService, PrySnackbarService, SubscriptionnerDirective } from '@provoly/dashboard';
4
4
  import { Observable } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
6
  type FileExtension = 'csv' | 'zip';
7
7
  export declare class PryImportComponent extends SubscriptionnerDirective implements OnDestroy {
8
8
  private store;
9
9
  private dsService;
10
+ private snackbar;
11
+ private i18nService;
10
12
  datasets$: Observable<Dataset[]>;
11
13
  file?: File;
12
14
  selectedDataset?: Dataset;
@@ -23,7 +25,7 @@ export declare class PryImportComponent extends SubscriptionnerDirective impleme
23
25
  productionDate: string;
24
26
  producer: string;
25
27
  additionalInformation: string;
26
- constructor(store: Store, dsService: DataSourceService);
28
+ constructor(store: Store, dsService: DataSourceService, snackbar: PrySnackbarService, i18nService: PryI18nService);
27
29
  ngOnDestroy(): void;
28
30
  uploadedChange($event: File): void;
29
31
  submit(): void;
@@ -8,6 +8,8 @@ export declare const enTranslations: {
8
8
  successTitle: string;
9
9
  uploadTitlezip: string;
10
10
  uploadTitlecsv: string;
11
+ warning: string;
12
+ tooLarge: string;
11
13
  selectFile: string;
12
14
  importedLines: string;
13
15
  consultDataset: string;
@@ -8,6 +8,8 @@ export declare const frTranslations: {
8
8
  successTitle: string;
9
9
  uploadTitlezip: string;
10
10
  uploadTitlecsv: string;
11
+ warning: string;
12
+ tooLarge: string;
11
13
  selectFile: string;
12
14
  importedLines: string;
13
15
  consultDataset: string;
@@ -1,13 +1,16 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
+ import { ManifestDescription } from '../model/manifest.interface';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare abstract class PryBaseAccess {
5
6
  abstract hasRole(...args: any[]): Observable<boolean>;
7
+ abstract canModifyPresentation(presentation: ManifestDescription): Observable<boolean>;
6
8
  }
7
9
  export declare const PRY_ACCESS_TOKEN: InjectionToken<PryBaseAccess>;
8
10
  export declare class PryDefaultAccessService extends PryBaseAccess {
9
11
  constructor();
10
12
  hasRole(...args: any[]): Observable<boolean>;
13
+ canModifyPresentation(presentation: ManifestDescription): Observable<boolean>;
11
14
  static ɵfac: i0.ɵɵFactoryDeclaration<PryDefaultAccessService, never>;
12
15
  static ɵprov: i0.ɵɵInjectableDeclaration<PryDefaultAccessService>;
13
16
  }
@@ -63,6 +63,7 @@ export declare const enTranslations: {
63
63
  };
64
64
  toolbox: {
65
65
  defaultSize: string;
66
+ analytic: string;
66
67
  manifest: {
67
68
  name: string;
68
69
  description: string;
@@ -63,6 +63,7 @@ export declare const frTranslations: {
63
63
  };
64
64
  toolbox: {
65
65
  defaultSize: string;
66
+ analytic: string;
66
67
  manifest: {
67
68
  name: string;
68
69
  description: string;
@@ -5,6 +5,7 @@ export * from './search-mono-class.model';
5
5
  export * from './search-multi-class.model';
6
6
  export * from './widget-map-manifest.interface';
7
7
  export * from './widget-aggregated-chart-manifest.interface';
8
+ export * from './widget-analytic-manifest.interface';
8
9
  export * from './widget-chart-manifest.interface';
9
10
  export * from './widget-graph-manifest.interface';
10
11
  export * from './widget-table-manifest.interface';
@@ -0,0 +1,6 @@
1
+ export interface AnalyticWidgetOptions {
2
+ primaryProp: string;
3
+ secondaryProp: string;
4
+ verticalProp: string;
5
+ valueProp: string;
6
+ }
@@ -59,9 +59,11 @@ export declare class DataSourceEffects {
59
59
  [p: string]: string;
60
60
  } | undefined;
61
61
  } & import("@ngrx/store/src/models").TypedAction<"[Dataset] Datadef is created call to admin">)> & import("@ngrx/effects").CreateEffectMetadata;
62
- unsetMissingGroupsOnDatasetSelection$: import("rxjs").Observable<{
62
+ unsetMissingGroupsOnDatasetSelection$: import("rxjs").Observable<({
63
63
  missingGroups?: import("@provoly/dashboard").MissingGroupsByEntity | undefined;
64
- } & import("@ngrx/store/src/models").TypedAction<"[Dataset] set missing groups">> & import("@ngrx/effects").CreateEffectMetadata;
64
+ } & import("@ngrx/store/src/models").TypedAction<"[Dataset] set missing groups">) | ({
65
+ id: string;
66
+ } & import("@ngrx/store/src/models").TypedAction<"[Dataset] Get Dataset Versions by Dataset Id">)> & import("@ngrx/effects").CreateEffectMetadata;
65
67
  deleteDataset$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Dataset] load datasets"> | import("@ngrx/store/src/models").TypedAction<"[Dataset] unselect Dataset"> | ({
66
68
  error: any;
67
69
  } & import("@ngrx/store/src/models").TypedAction<"[Dataset] failure effect Dataset">) | ({
@@ -425,20 +425,28 @@ export declare const DashboardActions: {
425
425
  } & import("@ngrx/store/src/models").TypedAction<"[Dashboard] (bus) update filter value">>;
426
426
  clearAllFilterValues: import("@ngrx/store").ActionCreator<"[Dashboard] (bus) clear all filter values", () => import("@ngrx/store/src/models").TypedAction<"[Dashboard] (bus) clear all filter values">>;
427
427
  dispatchFilters: import("@ngrx/store").ActionCreator<"[Dashboard] (bus) apply filters to presentation datasources", () => import("@ngrx/store/src/models").TypedAction<"[Dashboard] (bus) apply filters to presentation datasources">>;
428
- resetWmsFeatures: import("@ngrx/store").ActionCreator<"[Widget map] Reset Wms layer features", () => import("@ngrx/store/src/models").TypedAction<"[Widget map] Reset Wms layer features">>;
428
+ resetWmsFeatures: import("@ngrx/store").ActionCreator<"[Widget map] Reset Wms layer features", (props: {
429
+ componentId: string;
430
+ }) => {
431
+ componentId: string;
432
+ } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Reset Wms layer features">>;
429
433
  getWmsFeatures: import("@ngrx/store").ActionCreator<"[Widget map] Get Wms layer features", (props: {
430
434
  url: string;
431
435
  oClass: string;
432
436
  coordinates: number[];
437
+ componentId: string;
433
438
  }) => {
434
439
  url: string;
435
440
  oClass: string;
436
441
  coordinates: number[];
442
+ componentId: string;
437
443
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Get Wms layer features">>;
438
444
  addWmsFeatures: import("@ngrx/store").ActionCreator<"[Widget map] Set Wms layer features", (props: {
439
445
  features: any;
446
+ componentId: string;
440
447
  }) => {
441
448
  features: any;
449
+ componentId: string;
442
450
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Set Wms layer features">>;
443
451
  getWfsFeatures: import("@ngrx/store").ActionCreator<"[Widget map] Get wfs Features for point", (props: {
444
452
  url: string;
@@ -455,10 +463,12 @@ export declare const DashboardActions: {
455
463
  url: string;
456
464
  oClass: string;
457
465
  coordinates: number[];
466
+ componentId: string;
458
467
  }) => {
459
468
  url: string;
460
469
  oClass: string;
461
470
  coordinates: number[];
471
+ componentId: string;
462
472
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Get wfs Features for showing stack tooltips">>;
463
473
  updateDisplayOptions: import("@ngrx/store").ActionCreator<"[Dashboard/Display] (bus) Update displayed dashboard management features", (props: {
464
474
  mode: ViewMode;
@@ -220,9 +220,11 @@ export declare class DashboardEffects {
220
220
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Store Wms capability">> & import("@ngrx/effects").CreateEffectMetadata;
221
221
  getWmsFeatures: import("rxjs").Observable<{
222
222
  features: any;
223
+ componentId: string;
223
224
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Set Wms layer features">> & import("@ngrx/effects").CreateEffectMetadata;
224
225
  getWfsFeaturesForPointStack: import("rxjs").Observable<{
225
226
  features: any;
227
+ componentId: string;
226
228
  } & import("@ngrx/store/src/models").TypedAction<"[Widget map] Set Wms layer features">> & import("@ngrx/effects").CreateEffectMetadata;
227
229
  addManifestMetadata: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Dashboard] (bus) fetching available manifests">> & import("@ngrx/effects").CreateEffectMetadata;
228
230
  deleteManifestMetadata$: import("rxjs").Observable<import("@ngrx/store/src/models").TypedAction<"[Dashboard] (bus) fetching available manifests">> & import("@ngrx/effects").CreateEffectMetadata;
@@ -41,7 +41,9 @@ export interface DashboardState {
41
41
  params: DashboardCellParams;
42
42
  editionMode: boolean;
43
43
  };
44
- wmsFeatures: any[];
44
+ wmsFeatures: {
45
+ [componentId: string]: any[];
46
+ };
45
47
  display?: DisplayOptions;
46
48
  capabilities: {
47
49
  [url: string]: GetCapabilitiesResponse | null;
@@ -334,7 +334,7 @@ export declare const DashboardSelectors: {
334
334
  }, (s1: DashboardState) => {
335
335
  [datasourceId: string]: FilterContext[];
336
336
  }>;
337
- wmsFeatures: MemoizedSelector<object, any[], (s1: DashboardState) => any[]>;
337
+ wmsFeatures: (componentId: string) => MemoizedSelector<object, any[], (s1: DashboardState) => any[]>;
338
338
  displayOptions: MemoizedSelector<object, import("../../core/model/display-options.interface").DisplayOptions, (s1: DashboardState) => import("../../core/model/display-options.interface").DisplayOptions>;
339
339
  capabilities: MemoizedSelector<object, {
340
340
  [url: string]: import("@provoly/dashboard").GetCapabilitiesResponse | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@provoly/dashboard",
3
- "version": "1.0.0",
3
+ "version": "1.1.1",
4
4
  "type": "commonjs",
5
5
  "peerDependencies": {
6
6
  "@angular/cdk": "16.x || 17.x",
@@ -96,23 +96,17 @@
96
96
  "esm": "./esm2022/import/provoly-dashboard-import.mjs",
97
97
  "default": "./fesm2022/provoly-dashboard-import.mjs"
98
98
  },
99
- "./pipeline": {
100
- "types": "./pipeline/index.d.ts",
101
- "esm2022": "./esm2022/pipeline/provoly-dashboard-pipeline.mjs",
102
- "esm": "./esm2022/pipeline/provoly-dashboard-pipeline.mjs",
103
- "default": "./fesm2022/provoly-dashboard-pipeline.mjs"
104
- },
105
99
  "./notification": {
106
100
  "types": "./notification/index.d.ts",
107
101
  "esm2022": "./esm2022/notification/provoly-dashboard-notification.mjs",
108
102
  "esm": "./esm2022/notification/provoly-dashboard-notification.mjs",
109
103
  "default": "./fesm2022/provoly-dashboard-notification.mjs"
110
104
  },
111
- "./restitution": {
112
- "types": "./restitution/index.d.ts",
113
- "esm2022": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
114
- "esm": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
115
- "default": "./fesm2022/provoly-dashboard-restitution.mjs"
105
+ "./pipeline": {
106
+ "types": "./pipeline/index.d.ts",
107
+ "esm2022": "./esm2022/pipeline/provoly-dashboard-pipeline.mjs",
108
+ "esm": "./esm2022/pipeline/provoly-dashboard-pipeline.mjs",
109
+ "default": "./fesm2022/provoly-dashboard-pipeline.mjs"
116
110
  },
117
111
  "./presentation": {
118
112
  "types": "./presentation/index.d.ts",
@@ -120,6 +114,12 @@
120
114
  "esm": "./esm2022/presentation/provoly-dashboard-presentation.mjs",
121
115
  "default": "./fesm2022/provoly-dashboard-presentation.mjs"
122
116
  },
117
+ "./restitution": {
118
+ "types": "./restitution/index.d.ts",
119
+ "esm2022": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
120
+ "esm": "./esm2022/restitution/provoly-dashboard-restitution.mjs",
121
+ "default": "./fesm2022/provoly-dashboard-restitution.mjs"
122
+ },
123
123
  "./search": {
124
124
  "types": "./search/index.d.ts",
125
125
  "esm2022": "./esm2022/search/provoly-dashboard-search.mjs",
@@ -132,6 +132,36 @@
132
132
  "esm": "./esm2022/toolbox/provoly-dashboard-toolbox.mjs",
133
133
  "default": "./fesm2022/provoly-dashboard-toolbox.mjs"
134
134
  },
135
+ "./filters/autocomplete": {
136
+ "types": "./filters/autocomplete/index.d.ts",
137
+ "esm2022": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
138
+ "esm": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
139
+ "default": "./fesm2022/provoly-dashboard-filters-autocomplete.mjs"
140
+ },
141
+ "./filters/date": {
142
+ "types": "./filters/date/index.d.ts",
143
+ "esm2022": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
144
+ "esm": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
145
+ "default": "./fesm2022/provoly-dashboard-filters-date.mjs"
146
+ },
147
+ "./filters/list": {
148
+ "types": "./filters/list/index.d.ts",
149
+ "esm2022": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
150
+ "esm": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
151
+ "default": "./fesm2022/provoly-dashboard-filters-list.mjs"
152
+ },
153
+ "./filters/number": {
154
+ "types": "./filters/number/index.d.ts",
155
+ "esm2022": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
156
+ "esm": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
157
+ "default": "./fesm2022/provoly-dashboard-filters-number.mjs"
158
+ },
159
+ "./filters/text": {
160
+ "types": "./filters/text/index.d.ts",
161
+ "esm2022": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
162
+ "esm": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
163
+ "default": "./fesm2022/provoly-dashboard-filters-text.mjs"
164
+ },
135
165
  "./components/card": {
136
166
  "types": "./components/card/index.d.ts",
137
167
  "esm2022": "./esm2022/components/card/provoly-dashboard-components-card.mjs",
@@ -174,18 +204,18 @@
174
204
  "esm": "./esm2022/components/page-loader/provoly-dashboard-components-page-loader.mjs",
175
205
  "default": "./fesm2022/provoly-dashboard-components-page-loader.mjs"
176
206
  },
177
- "./components/sinceDate": {
178
- "types": "./components/sinceDate/index.d.ts",
179
- "esm2022": "./esm2022/components/sinceDate/provoly-dashboard-components-sinceDate.mjs",
180
- "esm": "./esm2022/components/sinceDate/provoly-dashboard-components-sinceDate.mjs",
181
- "default": "./fesm2022/provoly-dashboard-components-sinceDate.mjs"
182
- },
183
207
  "./components/scheme-picker": {
184
208
  "types": "./components/scheme-picker/index.d.ts",
185
209
  "esm2022": "./esm2022/components/scheme-picker/provoly-dashboard-components-scheme-picker.mjs",
186
210
  "esm": "./esm2022/components/scheme-picker/provoly-dashboard-components-scheme-picker.mjs",
187
211
  "default": "./fesm2022/provoly-dashboard-components-scheme-picker.mjs"
188
212
  },
213
+ "./components/sinceDate": {
214
+ "types": "./components/sinceDate/index.d.ts",
215
+ "esm2022": "./esm2022/components/sinceDate/provoly-dashboard-components-sinceDate.mjs",
216
+ "esm": "./esm2022/components/sinceDate/provoly-dashboard-components-sinceDate.mjs",
217
+ "default": "./fesm2022/provoly-dashboard-components-sinceDate.mjs"
218
+ },
189
219
  "./components/stepper": {
190
220
  "types": "./components/stepper/index.d.ts",
191
221
  "esm2022": "./esm2022/components/stepper/provoly-dashboard-components-stepper.mjs",
@@ -198,36 +228,6 @@
198
228
  "esm": "./esm2022/components/text-editor/provoly-dashboard-components-text-editor.mjs",
199
229
  "default": "./fesm2022/provoly-dashboard-components-text-editor.mjs"
200
230
  },
201
- "./filters/autocomplete": {
202
- "types": "./filters/autocomplete/index.d.ts",
203
- "esm2022": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
204
- "esm": "./esm2022/filters/autocomplete/provoly-dashboard-filters-autocomplete.mjs",
205
- "default": "./fesm2022/provoly-dashboard-filters-autocomplete.mjs"
206
- },
207
- "./filters/date": {
208
- "types": "./filters/date/index.d.ts",
209
- "esm2022": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
210
- "esm": "./esm2022/filters/date/provoly-dashboard-filters-date.mjs",
211
- "default": "./fesm2022/provoly-dashboard-filters-date.mjs"
212
- },
213
- "./filters/list": {
214
- "types": "./filters/list/index.d.ts",
215
- "esm2022": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
216
- "esm": "./esm2022/filters/list/provoly-dashboard-filters-list.mjs",
217
- "default": "./fesm2022/provoly-dashboard-filters-list.mjs"
218
- },
219
- "./filters/number": {
220
- "types": "./filters/number/index.d.ts",
221
- "esm2022": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
222
- "esm": "./esm2022/filters/number/provoly-dashboard-filters-number.mjs",
223
- "default": "./fesm2022/provoly-dashboard-filters-number.mjs"
224
- },
225
- "./filters/text": {
226
- "types": "./filters/text/index.d.ts",
227
- "esm2022": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
228
- "esm": "./esm2022/filters/text/provoly-dashboard-filters-text.mjs",
229
- "default": "./fesm2022/provoly-dashboard-filters-text.mjs"
230
- },
231
231
  "./pipeline-components/filter": {
232
232
  "types": "./pipeline-components/filter/index.d.ts",
233
233
  "esm2022": "./esm2022/pipeline-components/filter/provoly-dashboard-pipeline-components-filter.mjs",
@@ -276,6 +276,12 @@
276
276
  "esm": "./esm2022/widgets/widget-aggregated-chart/provoly-dashboard-widgets-widget-aggregated-chart.mjs",
277
277
  "default": "./fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs"
278
278
  },
279
+ "./widgets/widget-analytic": {
280
+ "types": "./widgets/widget-analytic/index.d.ts",
281
+ "esm2022": "./esm2022/widgets/widget-analytic/provoly-dashboard-widgets-widget-analytic.mjs",
282
+ "esm": "./esm2022/widgets/widget-analytic/provoly-dashboard-widgets-widget-analytic.mjs",
283
+ "default": "./fesm2022/provoly-dashboard-widgets-widget-analytic.mjs"
284
+ },
279
285
  "./widgets/widget-chart": {
280
286
  "types": "./widgets/widget-chart/index.d.ts",
281
287
  "esm2022": "./esm2022/widgets/widget-chart/provoly-dashboard-widgets-widget-chart.mjs",
@@ -2,7 +2,7 @@ import { Overlay, OverlayRef } from '@angular/cdk/overlay';
2
2
  import { ElementRef, NgZone, TemplateRef, ViewContainerRef } from '@angular/core';
3
3
  import { ActivatedRoute, Router } from '@angular/router';
4
4
  import { Store } from '@ngrx/store';
5
- import { DashboardManifest, ManifestDescription, PryTitleService, PryVisibilityType, SubscriptionnerDirective, ViewMode } from '@provoly/dashboard';
5
+ import { DashboardManifest, ManifestDescription, PryBaseAccess, PryTitleService, PryVisibilityType, SubscriptionnerDirective, ViewMode } from '@provoly/dashboard';
6
6
  import { BehaviorSubject, Observable } from 'rxjs';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class PryPresentationComponent extends SubscriptionnerDirective {
@@ -13,6 +13,7 @@ export declare class PryPresentationComponent extends SubscriptionnerDirective {
13
13
  protected titleService: PryTitleService;
14
14
  protected activatedRoute: ActivatedRoute;
15
15
  protected ngZone: NgZone;
16
+ private access;
16
17
  manifests$: Observable<ManifestDescription[]>;
17
18
  selectedPresentation$: BehaviorSubject<ManifestDescription | null>;
18
19
  presentation?: ManifestDescription;
@@ -47,7 +48,7 @@ export declare class PryPresentationComponent extends SubscriptionnerDirective {
47
48
  hideToolbox: boolean;
48
49
  inputSearch$: BehaviorSubject<string>;
49
50
  set search(query: string);
50
- constructor(store: Store<any>, overlay: Overlay, viewContainerRef: ViewContainerRef, router: Router, titleService: PryTitleService, activatedRoute: ActivatedRoute, ngZone: NgZone);
51
+ constructor(store: Store<any>, overlay: Overlay, viewContainerRef: ViewContainerRef, router: Router, titleService: PryTitleService, activatedRoute: ActivatedRoute, ngZone: NgZone, access: PryBaseAccess);
51
52
  closeRestitution(): void;
52
53
  fetch(presentation: ManifestDescription): void;
53
54
  creation(): void;
@@ -62,6 +63,7 @@ export declare class PryPresentationComponent extends SubscriptionnerDirective {
62
63
  updateAccessGroups($event: string[]): void;
63
64
  updateVisibility($event: PryVisibilityType): void;
64
65
  updateDisableButtonValue(): void;
65
- static ɵfac: i0.ɵɵFactoryDeclaration<PryPresentationComponent, never>;
66
+ canModify$(presentation: ManifestDescription): Observable<boolean>;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<PryPresentationComponent, [null, null, null, null, null, null, null, { optional: true; }]>;
66
68
  static ɵcmp: i0.ɵɵComponentDeclaration<PryPresentationComponent, "pry-presentation", never, { "editionStartUrl": { "alias": "editionStartUrl"; "required": false; }; "consultStartUrl": { "alias": "consultStartUrl"; "required": false; }; "meAsOwner": { "alias": "meAsOwner"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "listOfManifests": { "alias": "listOfManifests"; "required": false; }; "hideToolbox": { "alias": "hideToolbox"; "required": false; }; "search": { "alias": "search"; "required": false; }; }, {}, never, never, false, never>;
67
69
  }
@@ -138,6 +138,7 @@ pry-select {
138
138
  flex-direction: row;
139
139
  justify-content: space-between;
140
140
  align-items: center;
141
+ width: 100%;
141
142
 
142
143
  * {
143
144
  margin: 0;
@@ -0,0 +1,47 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { AnalyticWidgetOptions, Attribute, Class, DataWidgetComponent, ResultSet } from '@provoly/dashboard';
3
+ import { Observable } from 'rxjs';
4
+ import { Store } from '@ngrx/store';
5
+ import * as i0 from "@angular/core";
6
+ export declare class WidgetAnalyticComponent extends DataWidgetComponent {
7
+ optionsCopy: AnalyticWidgetOptions;
8
+ options$: Observable<AnalyticWidgetOptions>;
9
+ primaryProperty$: Observable<string[]>;
10
+ secondaryProperty$: Observable<string[]>;
11
+ verticalProperty$: Observable<string[]>;
12
+ totalProperty$: Observable<string[]>;
13
+ grandTotalProperty$: Observable<string[]>;
14
+ lines$: Observable<{
15
+ name: string;
16
+ value: {
17
+ [key: string]: {
18
+ [key: string]: any;
19
+ };
20
+ };
21
+ }[]>;
22
+ totals$: Observable<{
23
+ name: string;
24
+ value: {
25
+ [key: string]: {
26
+ [key: string]: any;
27
+ };
28
+ };
29
+ }[]>;
30
+ grandTotals$: Observable<{
31
+ name: any;
32
+ value: {
33
+ [p: string]: any;
34
+ };
35
+ }[]>;
36
+ height$: Observable<number>;
37
+ classes$: Observable<Class[]>;
38
+ availableProperties$: Observable<Attribute[]>;
39
+ change($event: string, prop: 'primaryProp' | 'secondaryProp' | 'valueProp' | 'verticalProp'): void;
40
+ constructor(store: Store<any>, el: ElementRef);
41
+ private matchAttributeValue;
42
+ private createValueMap;
43
+ getPropertyLabelsForLevel(rs: ResultSet, property: string, level?: number): string[];
44
+ emitManifest(): void;
45
+ static ɵfac: i0.ɵɵFactoryDeclaration<WidgetAnalyticComponent, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<WidgetAnalyticComponent, "pry-widget-analytic", never, {}, {}, never, never, false, never>;
47
+ }
@@ -0,0 +1,12 @@
1
+ export declare const enTranslations: {
2
+ '@pry': {
3
+ widget: {
4
+ analytic: {
5
+ primaryProp: string;
6
+ secondaryProp: string;
7
+ verticalProp: string;
8
+ valueProp: string;
9
+ };
10
+ };
11
+ };
12
+ };
@@ -0,0 +1,12 @@
1
+ export declare const frTranslations: {
2
+ '@pry': {
3
+ widget: {
4
+ analytic: {
5
+ primaryProp: string;
6
+ secondaryProp: string;
7
+ verticalProp: string;
8
+ valueProp: string;
9
+ };
10
+ };
11
+ };
12
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@provoly/dashboard/widgets/widget-analytic" />
5
+ export * from './public-api';
@@ -0,0 +1,2 @@
1
+ export * from './component/widget-analytic.component';
2
+ export * from './widget-analytic.module';
@@ -0,0 +1,43 @@
1
+ @use '../../../styles/abstracts' as *;
2
+
3
+ .o-widget__analytic {
4
+ &__table {
5
+ width: 100%;
6
+
7
+ table {
8
+ width: 100%;
9
+
10
+ th, td {
11
+ text-align: center;
12
+
13
+ &:first-child {
14
+ text-align: left;
15
+ }
16
+ }
17
+
18
+ .primary-header {
19
+ th:not(:first-child) {
20
+ background-color: #d7e7f7;
21
+ }
22
+ }
23
+
24
+ .secondary-header {
25
+ th:not(:first-child) {
26
+ background-color: #f3f8fc;
27
+ }
28
+ }
29
+
30
+ .partial-total {
31
+ th, td {
32
+ background-color: #F0F0F0;
33
+ }
34
+ }
35
+
36
+ .grand-total {
37
+ th, td {
38
+ background-color: #BDB9DA;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class PryWidgetAnalyticCssComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<PryWidgetAnalyticCssComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<PryWidgetAnalyticCssComponent, "pry-widget-analytic-css", never, {}, {}, never, never, false, never>;
5
+ }
@@ -0,0 +1,19 @@
1
+ import { Type } from '@angular/core';
2
+ import { BaseWidgetComponent, BaseWidgetModule, PryI18nService } from '@provoly/dashboard';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./component/widget-analytic.component";
5
+ import * as i2 from "./style/css.component";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "@angular/forms";
8
+ import * as i5 from "@angular/cdk/overlay";
9
+ import * as i6 from "@provoly/dashboard";
10
+ import * as i7 from "@provoly/dashboard/components/checkbox";
11
+ import * as i8 from "@provoly/dashboard/widgets/widget-map";
12
+ export declare class WidgetAnalyticModule extends BaseWidgetModule {
13
+ private pryTranslateService;
14
+ constructor(pryTranslateService: PryI18nService);
15
+ getComponent(): Type<BaseWidgetComponent>;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<WidgetAnalyticModule, never>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<WidgetAnalyticModule, [typeof i1.WidgetAnalyticComponent, typeof i2.PryWidgetAnalyticCssComponent], [typeof i3.CommonModule, typeof i4.FormsModule, typeof i5.OverlayModule, typeof i6.PryCoreModule, typeof i6.PryDashboardModule, typeof i6.PrySelectModule, typeof i6.PryIconModule, typeof i7.PryCheckboxModule, typeof i6.PryToggleModule, typeof i8.WidgetMapModule, typeof i6.PryI18nModule, typeof i3.AsyncPipe], [typeof i1.WidgetAnalyticComponent]>;
18
+ static ɵinj: i0.ɵɵInjectorDeclaration<WidgetAnalyticModule>;
19
+ }