@hestia-earth/ui-components 0.0.10 → 0.0.13

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 (39) hide show
  1. package/bundles/hestia-earth-ui-components.umd.js +474 -250
  2. package/bundles/hestia-earth-ui-components.umd.js.map +1 -1
  3. package/common/common.module.d.ts +11 -12
  4. package/common/index.d.ts +0 -1
  5. package/common/keys.pipe.d.ts +1 -1
  6. package/common/utils.d.ts +2 -2
  7. package/cycles/cycles-emissions-logs/cycles-emissions-logs.component.d.ts +0 -1
  8. package/cycles/cycles-practices/cycles-practices.component.d.ts +39 -0
  9. package/cycles/cycles-practices-logs/cycles-practices-logs.component.d.ts +20 -0
  10. package/cycles/cycles.module.d.ts +9 -7
  11. package/cycles/index.d.ts +2 -0
  12. package/esm2015/common/common.module.js +1 -5
  13. package/esm2015/common/index.js +1 -2
  14. package/esm2015/common/keys.pipe.js +3 -3
  15. package/esm2015/common/social-tags/social-tags.component.js +2 -3
  16. package/esm2015/common/utils.js +2 -2
  17. package/esm2015/cycles/cycles-emissions/cycles-emissions.component.js +2 -2
  18. package/esm2015/cycles/cycles-emissions-logs/cycles-emissions-logs.component.js +1 -2
  19. package/esm2015/cycles/cycles-practices/cycles-practices.component.js +119 -0
  20. package/esm2015/cycles/cycles-practices-logs/cycles-practices-logs.component.js +46 -0
  21. package/esm2015/cycles/cycles.module.js +9 -1
  22. package/esm2015/cycles/index.js +3 -1
  23. package/esm2015/engine/aggregation-engine.service.js +2 -2
  24. package/esm2015/engine/engine.service.js +2 -2
  25. package/esm2015/files/files-error-summary.model.js +55 -0
  26. package/esm2015/files/files-error.model.js +2 -2
  27. package/esm2015/files/files-form.model.js +6 -6
  28. package/esm2015/files/index.js +2 -1
  29. package/esm2015/node/node-csv-select-headers/node-csv-select-headers.component.js +6 -5
  30. package/esm2015/search/search.model.js +4 -4
  31. package/fesm2015/hestia-earth-ui-components.js +363 -202
  32. package/fesm2015/hestia-earth-ui-components.js.map +1 -1
  33. package/files/files-error-summary.model.d.ts +27 -0
  34. package/files/files-error.model.d.ts +1 -1
  35. package/files/files-form.model.d.ts +1 -1
  36. package/files/index.d.ts +1 -0
  37. package/package.json +1 -1
  38. package/common/blank-node-diffs/blank-node-diffs.component.d.ts +0 -18
  39. package/esm2015/common/blank-node-diffs/blank-node-diffs.component.js +0 -33
@@ -0,0 +1,27 @@
1
+ import { JSON as HestiaJson, SchemaType } from '@hestia-earth/schema';
2
+ import { IValidationError, IValidationErrorWithIndex, validationErrorLevel } from './files-error.model';
3
+ interface ISummaryError {
4
+ node: HestiaJson<SchemaType>;
5
+ error: IValidationError;
6
+ term?: any;
7
+ }
8
+ export interface ISummary {
9
+ level: validationErrorLevel;
10
+ path: string;
11
+ message: string;
12
+ formattedMessage: string;
13
+ count: number;
14
+ showErrors: boolean;
15
+ errors: ISummaryError[];
16
+ terms?: string;
17
+ }
18
+ /**
19
+ * Build the summary objects.
20
+ *
21
+ * @param nodes The list of nodes.
22
+ * @param errors The list of errors per node.
23
+ * @param summaryData The previously computed summary objects.
24
+ * @returns
25
+ */
26
+ export declare const buildSummary: (nodes?: HestiaJson<SchemaType>[], errors?: (IValidationError[] | IValidationErrorWithIndex)[], summaryData?: ISummary[]) => import("rxjs").Observable<ISummary[]>;
27
+ export {};
@@ -19,7 +19,7 @@ export interface IValidationErrorWithIndex {
19
19
  index: number;
20
20
  changed?: boolean;
21
21
  }
22
- export declare const parseDataPath: (dataPath: string) => {
22
+ export declare const parseDataPath: (dataPath?: string) => {
23
23
  path: string;
24
24
  label: string;
25
25
  }[];
@@ -58,7 +58,7 @@ export interface INodeProperty {
58
58
  changed?: boolean;
59
59
  }
60
60
  export declare const keyToDataPath: (key: string) => string;
61
- export declare const dataPathToKey: (dataPath: string, trimArray?: boolean) => string;
61
+ export declare const dataPathToKey: (dataPath?: string, trimArray?: boolean) => string;
62
62
  export declare const parentKey: (key: string) => string;
63
63
  /**
64
64
  * Sort properties having errors, type, id, ...properties (simple), and finally the groups
package/files/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './files-error-summary.model';
1
2
  export * from './files-error.model';
2
3
  export * from './files-form.model';
3
4
  export * from './files.module';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hestia-earth/ui-components",
3
- "version": "0.0.10",
3
+ "version": "0.0.13",
4
4
  "description": "Hestia reusable components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,18 +0,0 @@
1
- import { OnInit } from '@angular/core';
2
- import { Term } from '@hestia-earth/schema';
3
- import * as i0 from "@angular/core";
4
- interface IValue {
5
- term: Term;
6
- original?: number;
7
- recalculated?: number;
8
- }
9
- export declare class BlankNodeDiffsComponent implements OnInit {
10
- originalValues: any[];
11
- recalculatedValues: any[];
12
- propertyValue: (value: string | number | (string | number)[], isAverage?: boolean) => number;
13
- values: IValue[];
14
- ngOnInit(): void;
15
- static ɵfac: i0.ɵɵFactoryDeclaration<BlankNodeDiffsComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<BlankNodeDiffsComponent, "he-blank-node-diffs", never, { "originalValues": "originalValues"; "recalculatedValues": "recalculatedValues"; }, {}, never, never>;
17
- }
18
- export {};
@@ -1,33 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { propertyValue, formatDiffValues } from '../utils';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../blank-node-value-delta/blank-node-value-delta.component";
5
- import * as i2 from "../bind-once.directive";
6
- import * as i3 from "@angular/common";
7
- import * as i4 from "@angular/router";
8
- export class BlankNodeDiffsComponent {
9
- constructor() {
10
- this.originalValues = [];
11
- this.recalculatedValues = [];
12
- this.propertyValue = propertyValue;
13
- this.values = [];
14
- }
15
- ngOnInit() {
16
- this.values = formatDiffValues(this.originalValues, this.recalculatedValues);
17
- }
18
- }
19
- BlankNodeDiffsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BlankNodeDiffsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
- BlankNodeDiffsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: BlankNodeDiffsComponent, selector: "he-blank-node-diffs", inputs: { originalValues: "originalValues", recalculatedValues: "recalculatedValues" }, ngImport: i0, template: "<div class=\"table-container data-table-container mb-1\">\n <table class=\"table is-narrow data-table has-children-3\" *bindOnce=\"values\">\n <thead>\n <tr>\n <th class=\"width-auto\"></th>\n <th>Original</th>\n <th>Recalculated</th>\n <th>Difference</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let value of values\"\n [class.has-background-light]=\"!!value.original && value.original !== value.recalculated\"\n >\n <td class=\"width-auto\" [attr.title]=\"value.term.name\">\n <ng-container *ngTemplateOutlet=\"termLink; context: {$implicit: value.term}\"></ng-container>\n </td>\n <td>\n <span>{{value.original === undefined ? '-' : value.original}}</span>\n </td>\n <td>\n <span>{{value.recalculated === undefined ? '-' : value.recalculated}}</span>\n </td>\n <td class=\"is-nowrap\">\n <he-blank-node-value-delta\n [value]=\"value.recalculated\"\n [originalValue]=\"value.original\"\n ></he-blank-node-value-delta>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n\n<ng-template #termLink let-term>\n <a [routerLink]=\"['/', 'term', term['@id']]\" target=\"_blank\">\n <span class=\"is-nowrap has-text-ellipsis\">{{term.name}}</span>\n </a>\n</ng-template>\n", styles: ["table.data-table th:first-child,table.data-table td:first-child{width:auto}\n"], components: [{ type: i1.BlankNodeValueDeltaComponent, selector: "he-blank-node-value-delta", inputs: ["value", "originalValue", "displayType"] }], directives: [{ type: i2.BindOnceDirective, selector: "[bindOnce]", inputs: ["bindOnce"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }] });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BlankNodeDiffsComponent, decorators: [{
22
- type: Component,
23
- args: [{
24
- selector: 'he-blank-node-diffs',
25
- templateUrl: './blank-node-diffs.component.html',
26
- styleUrls: ['./blank-node-diffs.component.scss']
27
- }]
28
- }], propDecorators: { originalValues: [{
29
- type: Input
30
- }], recalculatedValues: [{
31
- type: Input
32
- }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxhbmstbm9kZS1kaWZmcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtZGlmZnMvYmxhbmstbm9kZS1kaWZmcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtZGlmZnMvYmxhbmstbm9kZS1kaWZmcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUd6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7Ozs7QUFhM0QsTUFBTSxPQUFPLHVCQUF1QjtJQUxwQztRQU9TLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBRTNCLHVCQUFrQixHQUFVLEVBQUUsQ0FBQztRQUUvQixrQkFBYSxHQUFHLGFBQWEsQ0FBQztRQUM5QixXQUFNLEdBQWEsRUFBRSxDQUFDO0tBSzlCO0lBSEMsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMvRSxDQUFDOztxSEFYVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixtSkNoQnBDLHkxQ0F1Q0E7NEZEdkJhLHVCQUF1QjtrQkFMbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixXQUFXLEVBQUUsbUNBQW1DO29CQUNoRCxTQUFTLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQztpQkFDakQ7OEJBR1EsY0FBYztzQkFEcEIsS0FBSztnQkFHQyxrQkFBa0I7c0JBRHhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRlcm0gfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5cbmltcG9ydCB7IHByb3BlcnR5VmFsdWUsIGZvcm1hdERpZmZWYWx1ZXMgfSBmcm9tICcuLi91dGlscyc7XG5cbmludGVyZmFjZSBJVmFsdWUge1xuICB0ZXJtOiBUZXJtO1xuICBvcmlnaW5hbD86IG51bWJlcjtcbiAgcmVjYWxjdWxhdGVkPzogbnVtYmVyO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1ibGFuay1ub2RlLWRpZmZzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JsYW5rLW5vZGUtZGlmZnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ibGFuay1ub2RlLWRpZmZzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmxhbmtOb2RlRGlmZnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgb3JpZ2luYWxWYWx1ZXM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWNhbGN1bGF0ZWRWYWx1ZXM6IGFueVtdID0gW107XG5cbiAgcHVibGljIHByb3BlcnR5VmFsdWUgPSBwcm9wZXJ0eVZhbHVlO1xuICBwdWJsaWMgdmFsdWVzOiBJVmFsdWVbXSA9IFtdO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudmFsdWVzID0gZm9ybWF0RGlmZlZhbHVlcyh0aGlzLm9yaWdpbmFsVmFsdWVzLCB0aGlzLnJlY2FsY3VsYXRlZFZhbHVlcyk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWJsZS1jb250YWluZXIgZGF0YS10YWJsZS1jb250YWluZXIgbWItMVwiPlxuICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBpcy1uYXJyb3cgZGF0YS10YWJsZSBoYXMtY2hpbGRyZW4tM1wiICpiaW5kT25jZT1cInZhbHVlc1wiPlxuICAgIDx0aGVhZD5cbiAgICAgIDx0cj5cbiAgICAgICAgPHRoIGNsYXNzPVwid2lkdGgtYXV0b1wiPjwvdGg+XG4gICAgICAgIDx0aD5PcmlnaW5hbDwvdGg+XG4gICAgICAgIDx0aD5SZWNhbGN1bGF0ZWQ8L3RoPlxuICAgICAgICA8dGg+RGlmZmVyZW5jZTwvdGg+XG4gICAgICA8L3RyPlxuICAgIDwvdGhlYWQ+XG4gICAgPHRib2R5PlxuICAgICAgPHRyICpuZ0Zvcj1cImxldCB2YWx1ZSBvZiB2YWx1ZXNcIlxuICAgICAgICBbY2xhc3MuaGFzLWJhY2tncm91bmQtbGlnaHRdPVwiISF2YWx1ZS5vcmlnaW5hbCAmJiB2YWx1ZS5vcmlnaW5hbCAhPT0gdmFsdWUucmVjYWxjdWxhdGVkXCJcbiAgICAgID5cbiAgICAgICAgPHRkIGNsYXNzPVwid2lkdGgtYXV0b1wiIFthdHRyLnRpdGxlXT1cInZhbHVlLnRlcm0ubmFtZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZXJtTGluazsgY29udGV4dDogeyRpbXBsaWNpdDogdmFsdWUudGVybX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkPlxuICAgICAgICAgIDxzcGFuPnt7dmFsdWUub3JpZ2luYWwgPT09IHVuZGVmaW5lZCA/ICctJyA6IHZhbHVlLm9yaWdpbmFsfX08L3NwYW4+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICA8c3Bhbj57e3ZhbHVlLnJlY2FsY3VsYXRlZCA9PT0gdW5kZWZpbmVkID8gJy0nIDogdmFsdWUucmVjYWxjdWxhdGVkfX08L3NwYW4+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiPlxuICAgICAgICAgIDxoZS1ibGFuay1ub2RlLXZhbHVlLWRlbHRhXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWUucmVjYWxjdWxhdGVkXCJcbiAgICAgICAgICAgIFtvcmlnaW5hbFZhbHVlXT1cInZhbHVlLm9yaWdpbmFsXCJcbiAgICAgICAgICA+PC9oZS1ibGFuay1ub2RlLXZhbHVlLWRlbHRhPlxuICAgICAgICA8L3RkPlxuICAgICAgPC90cj5cbiAgICA8L3Rib2R5PlxuICA8L3RhYmxlPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGVybUxpbmsgbGV0LXRlcm0+XG4gIDxhIFtyb3V0ZXJMaW5rXT1cIlsnLycsICd0ZXJtJywgdGVybVsnQGlkJ11dXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj57e3Rlcm0ubmFtZX19PC9zcGFuPlxuICA8L2E+XG48L25nLXRlbXBsYXRlPlxuIl19