geonetwork-ui 2.5.0-dev.77e75b46a → 2.5.0-dev.97ab0d3e8

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 (78) hide show
  1. package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +18 -16
  2. package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +12 -17
  3. package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
  4. package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +6 -7
  5. package/esm2022/libs/ui/dataviz/src/index.mjs +3 -3
  6. package/esm2022/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.mjs +51 -0
  7. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +133 -0
  8. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.data.source.mjs +24 -0
  9. package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.mjs +82 -0
  10. package/esm2022/libs/util/data-fetcher/src/index.mjs +3 -1
  11. package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +7 -3
  12. package/esm2022/libs/util/data-fetcher/src/lib/readers/wfs.mjs +20 -2
  13. package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +3 -3
  14. package/esm2022/translations/de.json +7 -0
  15. package/esm2022/translations/en.json +7 -0
  16. package/esm2022/translations/es.json +7 -0
  17. package/esm2022/translations/fr.json +7 -0
  18. package/esm2022/translations/it.json +7 -0
  19. package/esm2022/translations/nl.json +7 -0
  20. package/esm2022/translations/pt.json +7 -0
  21. package/fesm2022/geonetwork-ui.mjs +352 -111
  22. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  23. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +7 -9
  24. package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
  25. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -6
  26. package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
  27. package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -2
  28. package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
  29. package/libs/ui/dataviz/src/index.d.ts +2 -2
  30. package/libs/ui/dataviz/src/index.d.ts.map +1 -1
  31. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts +14 -0
  32. package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts.map +1 -0
  33. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +45 -0
  34. package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -0
  35. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts +12 -0
  36. package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts.map +1 -0
  37. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts +10 -0
  38. package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts.map +1 -0
  39. package/libs/util/data-fetcher/src/index.d.ts +3 -1
  40. package/libs/util/data-fetcher/src/index.d.ts.map +1 -1
  41. package/libs/util/data-fetcher/src/lib/model.d.ts +1 -1
  42. package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
  43. package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts.map +1 -1
  44. package/package.json +1 -1
  45. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +3 -3
  46. package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +17 -15
  47. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +4 -3
  48. package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +9 -18
  49. package/src/libs/feature/record/src/lib/data-view/data-view.component.html +1 -1
  50. package/src/libs/feature/record/src/lib/feature-record.module.ts +6 -4
  51. package/src/libs/ui/dataviz/src/index.ts +2 -2
  52. package/src/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.ts +52 -0
  53. package/src/libs/ui/dataviz/src/lib/{table/table.component.css → data-table/data-table.component.css} +4 -0
  54. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +67 -0
  55. package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +173 -0
  56. package/src/libs/ui/dataviz/src/lib/data-table/data-table.data.source.ts +33 -0
  57. package/src/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.ts +84 -0
  58. package/src/libs/util/data-fetcher/src/index.ts +3 -0
  59. package/src/libs/util/data-fetcher/src/lib/model.ts +6 -2
  60. package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +23 -1
  61. package/src/libs/util/data-fetcher/src/lib/utils.ts +2 -2
  62. package/translations/de.json +7 -0
  63. package/translations/en.json +7 -0
  64. package/translations/es.json +7 -0
  65. package/translations/fr.json +7 -0
  66. package/translations/it.json +7 -0
  67. package/translations/nl.json +7 -0
  68. package/translations/pt.json +7 -0
  69. package/translations/sk.json +7 -0
  70. package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +0 -61
  71. package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +0 -40
  72. package/libs/ui/dataviz/src/lib/table/table.component.d.ts +0 -29
  73. package/libs/ui/dataviz/src/lib/table/table.component.d.ts.map +0 -1
  74. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +0 -11
  75. package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +0 -1
  76. package/src/libs/ui/dataviz/src/lib/table/table.component.html +0 -40
  77. package/src/libs/ui/dataviz/src/lib/table/table.component.ts +0 -80
  78. package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +0 -40
@@ -1,24 +1,22 @@
1
1
  import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
2
- import { TableComponent, TableItemId, TableItemModel } from '../../../../../../libs/ui/dataviz/src';
3
- import type { Feature, FeatureCollection } from 'geojson';
2
+ import { DataTableComponent, TableItemId, TableItemModel } from '../../../../../../libs/ui/dataviz/src';
3
+ import type { Feature } from 'geojson';
4
4
  import { MapContext } from '@geospatial-sdk/core';
5
5
  import { MapContainerComponent } from '../../../../../../libs/ui/map/src';
6
+ import { BaseReader } from '../../../../../../libs/util/data-fetcher/src';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare class GeoTableViewComponent implements OnInit, OnDestroy {
8
9
  private changeRef;
9
- data: FeatureCollection;
10
- uiTable: TableComponent;
10
+ dataset: BaseReader;
11
+ uiTable: DataTableComponent;
11
12
  mapContainer: MapContainerComponent;
12
13
  tableData: TableItemModel[];
13
14
  mapContext: MapContext;
14
15
  selectionId: TableItemId;
15
16
  selection: Feature;
16
17
  private subscription;
17
- get features(): Feature<import("geojson").Geometry, {
18
- [name: string]: any;
19
- }>[];
20
18
  constructor(changeRef: ChangeDetectorRef);
21
- ngOnInit(): void;
19
+ ngOnInit(): Promise<void>;
22
20
  onTableSelect(tableEntry: TableItemModel): void;
23
21
  onMapFeatureSelect(features: Feature[]): void;
24
22
  private geojsonToTableData;
@@ -27,6 +25,6 @@ export declare class GeoTableViewComponent implements OnInit, OnDestroy {
27
25
  private getFeatureFromId;
28
26
  ngOnDestroy(): void;
29
27
  static ɵfac: i0.ɵɵFactoryDeclaration<GeoTableViewComponent, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<GeoTableViewComponent, "gn-ui-geo-table-view", never, { "data": { "alias": "data"; "required": false; }; }, {}, never, never, true, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<GeoTableViewComponent, "gn-ui-geo-table-view", never, { "dataset": { "alias": "dataset"; "required": false; }; }, {}, never, never, true, never>;
31
29
  }
32
30
  //# sourceMappingURL=geo-table-view.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"geo-table-view.component.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EAGjB,SAAS,EACT,MAAM,EAEP,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,cAAc,EACd,WAAW,EACX,cAAc,EACf,MAAM,uCAAuC,CAAA;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAEL,qBAAqB,EACtB,MAAM,mCAAmC,CAAA;;AAE1C,qBAQa,qBAAsB,YAAW,MAAM,EAAE,SAAS;IAejD,OAAO,CAAC,SAAS;IAdpB,IAAI,EAAE,iBAAiB,CAA8C;IAC1D,OAAO,EAAE,cAAc,CAAA;IAChB,YAAY,EAAE,qBAAqB,CAAA;IAE9D,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,EAAE,WAAW,CAAA;IACxB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,YAAY,CAAqB;IAEzC,IAAI,QAAQ;;SAEX;gBAEmB,SAAS,EAAE,iBAAiB;IAEhD,QAAQ,IAAI,IAAI;IAKhB,aAAa,CAAC,UAAU,EAAE,cAAc;IASxC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAW7C,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,gBAAgB;IAIxB,WAAW,IAAI,IAAI;yCAvFR,qBAAqB;2CAArB,qBAAqB;CA0FjC"}
1
+ {"version":3,"file":"geo-table-view.component.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EAGjB,SAAS,EACT,MAAM,EAEP,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,cAAc,EACf,MAAM,uCAAuC,CAAA;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAA;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAEL,qBAAqB,EACtB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;;AAEzE,qBAQa,qBAAsB,YAAW,MAAM,EAAE,SAAS;IAWjD,OAAO,CAAC,SAAS;IAVpB,OAAO,EAAE,UAAU,CAAA;IACR,OAAO,EAAE,kBAAkB,CAAA;IACpB,YAAY,EAAE,qBAAqB,CAAA;IAE9D,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,EAAE,WAAW,CAAA;IACxB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,YAAY,CAAqB;gBAErB,SAAS,EAAE,iBAAiB;IAE1C,QAAQ;IAId,aAAa,CAAC,UAAU,EAAE,cAAc;IASxC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAW7C,OAAO,CAAC,kBAAkB;YAOZ,cAAc;IAwB5B,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,gBAAgB;IAKxB,WAAW,IAAI,IAAI;yCAxFR,qBAAqB;2CAArB,qBAAqB;CA2FjC"}
@@ -1,7 +1,6 @@
1
1
  import { Observable } from 'rxjs';
2
- import { DataItem, FetchError } from '../../../../../../libs/util/data-fetcher/src';
2
+ import { BaseReader, FetchError } from '../../../../../../libs/util/data-fetcher/src';
3
3
  import { DataService } from '../service/data.service';
4
- import { TableItemModel } from '../../../../../../libs/ui/dataviz/src';
5
4
  import { DatasetOnlineResource } from '../../../../../../libs/common/domain/src/lib/model/record';
6
5
  import { TranslateService } from '@ngx-translate/core';
7
6
  import * as i0 from "@angular/core";
@@ -12,11 +11,9 @@ export declare class TableViewComponent {
12
11
  private currentLink$;
13
12
  loading: boolean;
14
13
  error: any;
15
- tableData$: Observable<TableItemModel[] | {
16
- id: string | number;
17
- }[]>;
14
+ tableData$: Observable<BaseReader>;
18
15
  constructor(dataService: DataService, translateService: TranslateService);
19
- fetchData(link: DatasetOnlineResource): Observable<DataItem[]>;
16
+ getDatasetReader(link: DatasetOnlineResource): Observable<BaseReader>;
20
17
  onTableSelect(event: any): void;
21
18
  handleError(error: FetchError | Error | string): void;
22
19
  static ɵfac: i0.ɵɵFactoryDeclaration<TableViewComponent, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"table-view.component.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,UAAU,EAAM,MAAM,MAAM,CAAA;AAStD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAkB,cAAc,EAAE,MAAM,uCAAuC,CAAA;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2DAA2D,CAAA;AACjG,OAAO,EAAmB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;;AAOvE,qBAca,kBAAkB;IAmC3B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,gBAAgB;IAnC1B,IAAa,IAAI,CAAC,KAAK,EAAE,qBAAqB,EAE7C;IACD,OAAO,CAAC,YAAY,CAAmD;IAEvE,OAAO,UAAQ;IACf,KAAK,MAAO;IAEZ,UAAU;;SAuBT;gBAGS,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB;IAG5C,SAAS,CAAC,IAAI,EAAE,qBAAqB,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;IAM9D,aAAa,CAAC,KAAK,KAAA;IAInB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM;yCAjDnC,kBAAkB;2CAAlB,kBAAkB;CAmE9B"}
1
+ {"version":3,"file":"table-view.component.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,UAAU,EAAM,MAAM,MAAM,CAAA;AAQtD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2DAA2D,CAAA;AACjG,OAAO,EAAmB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;;AAOvE,qBAca,kBAAkB;IA6B3B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,gBAAgB;IA7B1B,IAAa,IAAI,CAAC,KAAK,EAAE,qBAAqB,EAE7C;IACD,OAAO,CAAC,YAAY,CAAmD;IAEvE,OAAO,UAAQ;IACf,KAAK,MAAO;IAEZ,UAAU,yBAiBT;gBAGS,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB;IAG5C,gBAAgB,CAAC,IAAI,EAAE,qBAAqB,GAAG,UAAU,CAAC,UAAU,CAAC;IAIrE,aAAa,CAAC,KAAK,KAAA;IAInB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM;yCAzCnC,kBAAkB;2CAAlB,kBAAkB;CA2D9B"}
@@ -10,12 +10,12 @@ import * as i8 from "../../../../ui/elements/src/lib/ui-elements.module";
10
10
  import * as i9 from "@angular/material/tabs";
11
11
  import * as i10 from "../../../../ui/widgets/src/lib/ui-widgets.module";
12
12
  import * as i11 from "@ngx-translate/core";
13
- import * as i12 from "../../../../ui/dataviz/src/lib/table/table.component";
13
+ import * as i12 from "../../../../ui/dataviz/src/lib/data-table/data-table.component";
14
14
  import * as i13 from "@ng-icons/core";
15
15
  import * as i14 from "../../../../ui/inputs/src/lib/dropdown-selector/dropdown-selector.component";
16
16
  export declare class FeatureRecordModule {
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<FeatureRecordModule, never>;
18
- static ɵmod: i0.ɵɵNgModuleDeclaration<FeatureRecordModule, never, [typeof i1.CommonModule, typeof i2.StoreFeatureModule, typeof i3.EffectsFeatureModule, typeof i4.UiLayoutModule, typeof i5.FeatureMapModule, typeof i6.FeatureCatalogModule, typeof i7.UiInputsModule, typeof i8.UiElementsModule, typeof i9.MatTabsModule, typeof i10.UiWidgetsModule, typeof i11.TranslateModule, typeof i12.TableComponent, typeof i13.NgIconsModule, typeof i14.DropdownSelectorComponent], never>;
18
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FeatureRecordModule, never, [typeof i1.CommonModule, typeof i2.StoreFeatureModule, typeof i3.EffectsFeatureModule, typeof i4.UiLayoutModule, typeof i5.FeatureMapModule, typeof i6.FeatureCatalogModule, typeof i7.UiInputsModule, typeof i8.UiElementsModule, typeof i9.MatTabsModule, typeof i10.UiWidgetsModule, typeof i11.TranslateModule, typeof i12.DataTableComponent, typeof i13.NgIconsModule, typeof i14.DropdownSelectorComponent], never>;
19
19
  static ɵinj: i0.ɵɵInjectorDeclaration<FeatureRecordModule>;
20
20
  }
21
21
  //# sourceMappingURL=feature-record.module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feature-record.module.d.ts","sourceRoot":"","sources":["../../../../../src/libs/feature/record/src/lib/feature-record.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAsBA,qBAwBa,mBAAmB;yCAAnB,mBAAmB;0CAAnB,mBAAmB;0CAAnB,mBAAmB;CAAG"}
1
+ {"version":3,"file":"feature-record.module.d.ts","sourceRoot":"","sources":["../../../../../src/libs/feature/record/src/lib/feature-record.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAwBA,qBAwBa,mBAAmB;yCAAnB,mBAAmB;0CAAnB,mBAAmB;0CAAnB,mBAAmB;CAAG"}
@@ -1,6 +1,6 @@
1
1
  export * from './lib/ui-dataviz.module';
2
2
  export * from './lib/chart/chart.component';
3
- export * from './lib/table/table.component';
4
- export * from './lib/table/table.fixtures';
3
+ export * from './lib/data-table/data-table.component';
4
+ export * from './lib/data-table/data-table.fixtures';
5
5
  export * from './lib/figure/figure.component';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/libs/ui/dataviz/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/libs/ui/dataviz/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA;AACpD,cAAc,+BAA+B,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { MatPaginatorIntl } from '@angular/material/paginator';
2
+ import { TranslateService } from '@ngx-translate/core';
3
+ import { Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CustomMatPaginatorIntl extends MatPaginatorIntl {
6
+ private translate;
7
+ changes: Subject<void>;
8
+ constructor(translate: TranslateService);
9
+ setLabels(): void;
10
+ getRangeLabelIntl(page: number, pageSize: number, length: number): string;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<CustomMatPaginatorIntl, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<CustomMatPaginatorIntl>;
13
+ }
14
+ //# sourceMappingURL=custom.mat.paginator.intl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.mat.paginator.intl.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;;AAE9B,qBACa,sBAAuB,SAAQ,gBAAgB;IAG9C,OAAO,CAAC,SAAS;IAFpB,OAAO,gBAAsB;gBAElB,SAAS,EAAE,gBAAgB;IAS/C,SAAS;IAcT,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;yCA1B9D,sBAAsB;6CAAtB,sBAAsB;CA6ClC"}
@@ -0,0 +1,45 @@
1
+ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnInit } from '@angular/core';
2
+ import { MatSort } from '@angular/material/sort';
3
+ import { TranslateService } from '@ngx-translate/core';
4
+ import { DataTableDataSource } from './data-table.data.source';
5
+ import { BaseReader, FetchError } from '../../../../../../libs/util/data-fetcher/src';
6
+ import { MatPaginator } from '@angular/material/paginator';
7
+ import { BehaviorSubject } from 'rxjs';
8
+ import * as i0 from "@angular/core";
9
+ export type TableItemId = string | number;
10
+ type TableItemType = string | number | Date;
11
+ export interface TableItemModel {
12
+ id: TableItemId;
13
+ [key: string]: TableItemType;
14
+ }
15
+ export declare class DataTableComponent implements OnInit, AfterViewInit, OnChanges {
16
+ private eltRef;
17
+ private cdr;
18
+ private translateService;
19
+ set dataset(value: BaseReader);
20
+ activeId: TableItemId;
21
+ selected: EventEmitter<any>;
22
+ sort: MatSort;
23
+ paginator: MatPaginator;
24
+ dataset_: BaseReader;
25
+ properties$: BehaviorSubject<string[]>;
26
+ dataSource: DataTableDataSource;
27
+ headerHeight: number;
28
+ count: number;
29
+ loading$: BehaviorSubject<boolean>;
30
+ error: any;
31
+ constructor(eltRef: ElementRef, cdr: ChangeDetectorRef, translateService: TranslateService);
32
+ ngOnInit(): void;
33
+ ngAfterViewInit(): void;
34
+ ngOnChanges(): void;
35
+ setSort(sort: MatSort): void;
36
+ setPagination(): void;
37
+ readData(): Promise<void>;
38
+ scrollToItem(itemId: TableItemId): void;
39
+ getRowEltId(id: TableItemId): string;
40
+ handleError(error: FetchError | Error): void;
41
+ static ɵfac: i0.ɵɵFactoryDeclaration<DataTableComponent, never>;
42
+ static ɵcmp: i0.ɵɵComponentDeclaration<DataTableComponent, "gn-ui-data-table", never, { "dataset": { "alias": "dataset"; "required": false; }; "activeId": { "alias": "activeId"; "required": false; }; }, { "selected": "selected"; }, never, never, true, never>;
43
+ }
44
+ export {};
45
+ //# sourceMappingURL=data-table.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-table.component.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EAEb,iBAAiB,EAEjB,UAAU,EACV,YAAY,EAEZ,SAAS,EACT,MAAM,EAGP,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,OAAO,EAAiB,MAAM,wBAAwB,CAAA;AAE/D,OAAO,EAAmB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AACrF,OAAO,EACL,YAAY,EAGb,MAAM,6BAA6B,CAAA;AAGpC,OAAO,EAAE,eAAe,EAA0B,MAAM,MAAM,CAAA;;AAS9D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,CAAA;AACzC,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;AAE3C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,WAAW,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAC7B;AAED,qBAmBa,kBAAmB,YAAW,MAAM,EAAE,aAAa,EAAE,SAAS;IAyBvE,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,gBAAgB;IA1B1B,IAAa,OAAO,CAAC,KAAK,EAAE,UAAU,EAQrC;IACQ,QAAQ,EAAE,WAAW,CAAA;IACpB,QAAQ,oBAA0B;IAExB,IAAI,EAAE,OAAO,CAAA;IACR,SAAS,EAAE,YAAY,CAAA;IAEhD,QAAQ,EAAE,UAAU,CAAA;IACpB,WAAW,4BAAsC;IACjD,UAAU,EAAE,mBAAmB,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,2BAAsC;IAC9C,KAAK,MAAO;gBAGF,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,iBAAiB,EACtB,gBAAgB,EAAE,gBAAgB;IAG5C,QAAQ;IAIR,eAAe;IAOf,WAAW;IAIX,OAAO,CAAC,IAAI,EAAE,OAAO;IAUrB,aAAa;IAUP,QAAQ;IAmBd,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAOhC,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,MAAM;IAI3C,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK;yCA/F1B,kBAAkB;2CAAlB,kBAAkB;CA8G9B"}
@@ -0,0 +1,12 @@
1
+ import { DataSource } from '@angular/cdk/collections';
2
+ import { Observable } from 'rxjs';
3
+ import { DataItem } from '../../../../../../libs/util/data-fetcher/src';
4
+ import { TableItemModel } from './data-table.component';
5
+ export declare class DataTableDataSource implements DataSource<TableItemModel> {
6
+ private dataItems$;
7
+ connect(): Observable<TableItemModel[]>;
8
+ disconnect(): void;
9
+ showData(itemsPromise: Promise<DataItem[]>): Promise<void>;
10
+ clearData(): void;
11
+ }
12
+ //# sourceMappingURL=data-table.data.source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-table.data.source.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/ui/dataviz/src/lib/data-table/data-table.data.source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAA;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,qBAAa,mBAAoB,YAAW,UAAU,CAAC,cAAc,CAAC;IACpE,OAAO,CAAC,UAAU,CAAsC;IAExD,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;IAWvC,UAAU,IAAI,IAAI;IAIZ,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;IAKhD,SAAS;CAGV"}
@@ -0,0 +1,10 @@
1
+ import { DataItem, PropertyInfo } from '../../../../../../libs/util/data-fetcher/src';
2
+ export declare const tableItemsFixture: {
3
+ items: DataItem[];
4
+ properties: PropertyInfo[];
5
+ };
6
+ export declare const someHabTableItemFixture: {
7
+ items: DataItem[];
8
+ properties: PropertyInfo[];
9
+ };
10
+ //# sourceMappingURL=data-table.fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-table.fixtures.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAA;AAErF,eAAO,MAAM,iBAAiB;WA6BvB,QAAQ,EAAE;gBAKV,YAAY,EAAE;CACpB,CAAA;AAED,eAAO,MAAM,uBAAuB;WAsC7B,QAAQ,EAAE;gBAKV,YAAY,EAAE;CACpB,CAAA"}
@@ -1,5 +1,7 @@
1
1
  export * from './lib/data-fetcher';
2
- export { SupportedType, SupportedTypes, DataItem, FetchError, FieldAggregation, } from './lib/model';
2
+ export { SupportedType, SupportedTypes, DataItem, FetchError, FieldAggregation, PropertyInfo, } from './lib/model';
3
3
  export { getJsonDataItemsProxy } from './lib/utils';
4
4
  export { BaseReader } from './lib/readers/base';
5
+ export { BaseFileReader } from './lib/readers/base-file';
6
+ export { GeojsonReader } from './lib/readers/geojson';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/libs/util/data-fetcher/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,OAAO,EACL,aAAa,EACb,cAAc,EACd,QAAQ,EACR,UAAU,EACV,gBAAgB,GACjB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/libs/util/data-fetcher/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,OAAO,EACL,aAAa,EACb,cAAc,EACd,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,YAAY,GACb,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA"}
@@ -7,7 +7,7 @@ export declare class FetchError {
7
7
  message: string;
8
8
  stack: any;
9
9
  constructor(type: 'http' | 'network' | 'parse' | 'unsupportedType' | 'unknown', info: string, httpStatus?: number);
10
- static http(code: number): FetchError;
10
+ static http(code: number, body?: string): FetchError;
11
11
  static corsOrNetwork(message: string): FetchError;
12
12
  static parsingFailed(info: string): FetchError;
13
13
  static unsupportedType(mimeType: string): FetchError;
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/libs/util/data-fetcher/src/lib/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/libs/util/data-fetcher/src/lib/model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wfs.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/util/data-fetcher/src/lib/readers/wfs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAgB,MAAM,WAAW,CAAA;AAEvD,qBAAa,SAAU,SAAQ,UAAU;IACvC,QAAQ,EAAE,WAAW,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,UAAU,CAAA;gBAEP,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM;IAO1E,IAAI,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAExC;IAED,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,CAO/B;WAEY,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM;IA4C1E,SAAS,CAAC,OAAO;;;;IA4BjB,IAAI;IAIE,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;CAGlC"}
1
+ {"version":3,"file":"wfs.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/util/data-fetcher/src/lib/readers/wfs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAgB,MAAM,WAAW,CAAA;AAGvD,qBAAa,SAAU,SAAQ,UAAU;IACvC,QAAQ,EAAE,WAAW,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,UAAU,CAAA;gBAEP,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM;IAO1E,IAAI,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAiBxC;IAED,IAAI,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,CAO/B;WAEY,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM;IA4C1E,SAAS,CAAC,OAAO;;;;IAkCjB,IAAI;IAIE,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;CAGlC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "geonetwork-ui",
3
- "version": "2.5.0-dev.77e75b46a",
3
+ "version": "2.5.0-dev.97ab0d3e8",
4
4
  "engines": {
5
5
  "node": ">=20"
6
6
  },
@@ -1,11 +1,11 @@
1
1
  <div class="flex flex-row h-full overflow-auto">
2
- <gn-ui-table
2
+ <gn-ui-data-table
3
3
  #table
4
4
  class="w-1/2 overflow-auto"
5
- [data]="tableData"
5
+ [dataset]="dataset"
6
6
  [activeId]="selectionId"
7
7
  (selected)="onTableSelect($event)"
8
- ></gn-ui-table>
8
+ ></gn-ui-data-table>
9
9
  <gn-ui-map-container
10
10
  #mapContainer
11
11
  class="w-1/2 h-full"
@@ -8,7 +8,7 @@ import {
8
8
  ViewChild,
9
9
  } from '@angular/core'
10
10
  import {
11
- TableComponent,
11
+ DataTableComponent,
12
12
  TableItemId,
13
13
  TableItemModel,
14
14
  } from '../../../../../../libs/ui/dataviz/src'
@@ -19,18 +19,19 @@ import {
19
19
  FeatureDetailComponent,
20
20
  MapContainerComponent,
21
21
  } from '../../../../../../libs/ui/map/src'
22
+ import { BaseReader } from '../../../../../../libs/util/data-fetcher/src'
22
23
 
23
24
  @Component({
24
25
  selector: 'gn-ui-geo-table-view',
25
26
  templateUrl: './geo-table-view.component.html',
26
27
  styleUrls: ['./geo-table-view.component.css'],
27
28
  changeDetection: ChangeDetectionStrategy.OnPush,
28
- imports: [TableComponent, MapContainerComponent, FeatureDetailComponent],
29
+ imports: [MapContainerComponent, FeatureDetailComponent, DataTableComponent],
29
30
  standalone: true,
30
31
  })
31
32
  export class GeoTableViewComponent implements OnInit, OnDestroy {
32
- @Input() data: FeatureCollection = { type: 'FeatureCollection', features: [] }
33
- @ViewChild('table') uiTable: TableComponent
33
+ @Input() dataset: BaseReader
34
+ @ViewChild('table') uiTable: DataTableComponent
34
35
  @ViewChild('mapContainer') mapContainer: MapContainerComponent
35
36
 
36
37
  tableData: TableItemModel[]
@@ -39,21 +40,16 @@ export class GeoTableViewComponent implements OnInit, OnDestroy {
39
40
  selection: Feature
40
41
  private subscription = new Subscription()
41
42
 
42
- get features() {
43
- return this.data.features
44
- }
45
-
46
43
  constructor(private changeRef: ChangeDetectorRef) {}
47
44
 
48
- ngOnInit(): void {
49
- this.tableData = this.geojsonToTableData(this.data)
50
- this.mapContext = this.initMapContext()
45
+ async ngOnInit() {
46
+ this.mapContext = await this.initMapContext()
51
47
  }
52
48
 
53
49
  onTableSelect(tableEntry: TableItemModel) {
54
50
  const { id } = tableEntry
55
51
  this.selectionId = id
56
- this.selection = this.getFeatureFromId(id)
52
+ // this.selection = this.getFeatureFromId(id)
57
53
  if (this.selection) {
58
54
  this.animateToFeature(this.selection)
59
55
  }
@@ -77,7 +73,8 @@ export class GeoTableViewComponent implements OnInit, OnDestroy {
77
73
  }))
78
74
  }
79
75
 
80
- private initMapContext(): MapContext {
76
+ private async initMapContext(): Promise<MapContext> {
77
+ this.dataset.selectAll()
81
78
  return {
82
79
  layers: [
83
80
  {
@@ -86,7 +83,11 @@ export class GeoTableViewComponent implements OnInit, OnDestroy {
86
83
  },
87
84
  {
88
85
  type: 'geojson',
89
- data: this.data,
86
+ data: {
87
+ type: 'FeatureCollection',
88
+ // FIXME: we're not getting geojson here
89
+ features: await this.dataset.read(),
90
+ },
90
91
  },
91
92
  ],
92
93
  view: {
@@ -112,7 +113,8 @@ export class GeoTableViewComponent implements OnInit, OnDestroy {
112
113
  }
113
114
 
114
115
  private getFeatureFromId(id: TableItemId) {
115
- return this.features.find((feature) => feature.id === id)
116
+ // FIXME: restore this once we need it?
117
+ // return this.features.find((feature) => feature.id === id)
116
118
  }
117
119
 
118
120
  ngOnDestroy(): void {
@@ -1,10 +1,11 @@
1
1
  <div class="w-full h-full flex flex-col">
2
2
  <div class="relative h-full">
3
- <gn-ui-table
3
+ <gn-ui-data-table
4
+ *ngIf="tableData$ | async as dataset"
4
5
  class="overflow-auto grow"
5
- [data]="tableData$ | async"
6
+ [dataset]="dataset"
6
7
  (selected)="onTableSelect($event)"
7
- ></gn-ui-table>
8
+ ></gn-ui-data-table>
8
9
  <gn-ui-loading-mask
9
10
  *ngIf="loading"
10
11
  class="absolute inset-0"
@@ -3,14 +3,13 @@ import { BehaviorSubject, Observable, of } from 'rxjs'
3
3
  import {
4
4
  catchError,
5
5
  finalize,
6
- map,
7
6
  shareReplay,
8
7
  startWith,
9
8
  switchMap,
10
9
  } from 'rxjs/operators'
11
- import { DataItem, FetchError } from '../../../../../../libs/util/data-fetcher/src'
10
+ import { BaseReader, FetchError } from '../../../../../../libs/util/data-fetcher/src'
12
11
  import { DataService } from '../service/data.service'
13
- import { TableComponent, TableItemModel } from '../../../../../../libs/ui/dataviz/src'
12
+ import { DataTableComponent } from '../../../../../../libs/ui/dataviz/src'
14
13
  import { DatasetOnlineResource } from '../../../../../../libs/common/domain/src/lib/model/record'
15
14
  import { TranslateModule, TranslateService } from '@ngx-translate/core'
16
15
  import {
@@ -26,7 +25,7 @@ import { CommonModule } from '@angular/common'
26
25
  changeDetection: ChangeDetectionStrategy.OnPush,
27
26
  imports: [
28
27
  CommonModule,
29
- TableComponent,
28
+ DataTableComponent,
30
29
  LoadingMaskComponent,
31
30
  PopupAlertComponent,
32
31
  TranslateModule,
@@ -45,25 +44,19 @@ export class TableViewComponent {
45
44
  tableData$ = this.currentLink$.pipe(
46
45
  switchMap((link) => {
47
46
  this.error = null
48
- if (!link) return of([] as TableItemModel[])
47
+ if (!link) return of(undefined)
49
48
  this.loading = true
50
- return this.fetchData(link).pipe(
51
- map((items) =>
52
- items.map((item) => ({
53
- id: item.id,
54
- ...item.properties,
55
- }))
56
- ),
49
+ return this.getDatasetReader(link).pipe(
57
50
  catchError((error) => {
58
51
  this.handleError(error)
59
- return of([] as TableItemModel[])
52
+ return of(undefined)
60
53
  }),
61
54
  finalize(() => {
62
55
  this.loading = false
63
56
  })
64
57
  )
65
58
  }),
66
- startWith([] as TableItemModel[]),
59
+ startWith(undefined),
67
60
  shareReplay(1)
68
61
  )
69
62
 
@@ -72,10 +65,8 @@ export class TableViewComponent {
72
65
  private translateService: TranslateService
73
66
  ) {}
74
67
 
75
- fetchData(link: DatasetOnlineResource): Observable<DataItem[]> {
76
- return this.dataService
77
- .getDataset(link)
78
- .pipe(switchMap((dataset) => dataset.read()))
68
+ getDatasetReader(link: DatasetOnlineResource): Observable<BaseReader> {
69
+ return this.dataService.getDataset(link)
79
70
  }
80
71
 
81
72
  onTableSelect(event) {
@@ -8,7 +8,7 @@
8
8
  [choices]="choices"
9
9
  (selectValue)="selectLink($event)"
10
10
  ></gn-ui-dropdown-selector>
11
- <div class="relative h-[420px]">
11
+ <div class="relative h-[460px]">
12
12
  <gn-ui-table-view
13
13
  *ngIf="mode === 'table'"
14
14
  [link]="selectedLink$ | async"
@@ -4,7 +4,10 @@ import { StoreModule } from '@ngrx/store'
4
4
  import { EffectsModule } from '@ngrx/effects'
5
5
  import { UiLayoutModule } from '../../../../../libs/ui/layout/src'
6
6
  import { FeatureMapModule } from '../../../../../libs/feature/map/src'
7
- import { UiInputsModule } from '../../../../../libs/ui/inputs/src'
7
+ import {
8
+ DropdownSelectorComponent,
9
+ UiInputsModule,
10
+ } from '../../../../../libs/ui/inputs/src'
8
11
  import { UiElementsModule } from '../../../../../libs/ui/elements/src'
9
12
  import { MdViewFacade } from './state'
10
13
  import { MdViewEffects } from './state/mdview.effects'
@@ -16,9 +19,8 @@ import { MatTabsModule } from '@angular/material/tabs'
16
19
  import { UiWidgetsModule } from '../../../../../libs/ui/widgets/src'
17
20
  import { TranslateModule } from '@ngx-translate/core'
18
21
  import { FeatureCatalogModule } from '../../../../../libs/feature/catalog/src'
19
- import { TableComponent } from '../../../../../libs/ui/dataviz/src'
22
+ import { DataTableComponent } from '../../../../../libs/ui/dataviz/src'
20
23
  import { NgIconsModule, provideNgIconsConfig } from '@ng-icons/core'
21
- import { DropdownSelectorComponent } from '../../../../../libs/ui/inputs/src'
22
24
 
23
25
  @NgModule({
24
26
  imports: [
@@ -33,7 +35,7 @@ import { DropdownSelectorComponent } from '../../../../../libs/ui/inputs/src'
33
35
  MatTabsModule,
34
36
  UiWidgetsModule,
35
37
  TranslateModule,
36
- TableComponent,
38
+ DataTableComponent,
37
39
  NgIconsModule,
38
40
  DropdownSelectorComponent,
39
41
  ],
@@ -1,5 +1,5 @@
1
1
  export * from './lib/ui-dataviz.module'
2
2
  export * from './lib/chart/chart.component'
3
- export * from './lib/table/table.component'
4
- export * from './lib/table/table.fixtures'
3
+ export * from './lib/data-table/data-table.component'
4
+ export * from './lib/data-table/data-table.fixtures'
5
5
  export * from './lib/figure/figure.component'
@@ -0,0 +1,52 @@
1
+ import { Injectable } from '@angular/core'
2
+ import { MatPaginatorIntl } from '@angular/material/paginator'
3
+ import { TranslateService } from '@ngx-translate/core'
4
+ import { Subject } from 'rxjs'
5
+
6
+ @Injectable()
7
+ export class CustomMatPaginatorIntl extends MatPaginatorIntl {
8
+ override changes = new Subject<void>()
9
+
10
+ constructor(private translate: TranslateService) {
11
+ super()
12
+ this.setLabels()
13
+ this.translate.onLangChange.subscribe(() => {
14
+ this.setLabels()
15
+ this.changes.next()
16
+ })
17
+ }
18
+
19
+ setLabels() {
20
+ this.itemsPerPageLabel = this.translate.instant(
21
+ 'table.paginator.itemsPerPage'
22
+ )
23
+ this.nextPageLabel = this.translate.instant('table.paginator.nextPage')
24
+ this.previousPageLabel = this.translate.instant(
25
+ 'table.paginator.previousPage'
26
+ )
27
+ this.firstPageLabel = this.translate.instant('table.paginator.firstPage')
28
+ this.lastPageLabel = this.translate.instant('table.paginator.lastPage')
29
+ this.getRangeLabel = this.getRangeLabelIntl
30
+ this.changes.next()
31
+ }
32
+
33
+ getRangeLabelIntl(page: number, pageSize: number, length: number): string {
34
+ if (length === 0 || pageSize === 0) {
35
+ return this.translate.instant('table.paginator.rangeLabel', {
36
+ startIndex: 0,
37
+ endIndex: 0,
38
+ length,
39
+ })
40
+ }
41
+ const startIndex = page * pageSize
42
+ const endIndex =
43
+ startIndex < length
44
+ ? Math.min(startIndex + pageSize, length)
45
+ : startIndex + pageSize
46
+ return this.translate.instant('table.paginator.rangeLabel', {
47
+ startIndex: startIndex + 1,
48
+ endIndex,
49
+ length,
50
+ })
51
+ }
52
+ }
@@ -30,3 +30,7 @@ tr {
30
30
  .active .mat-mdc-cell {
31
31
  color: var(--color-primary);
32
32
  }
33
+
34
+ .mat-mdc-paginator {
35
+ background: none;
36
+ }