@hestia-earth/ui-components 0.43.16 → 0.43.18
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/fesm2022/hestia-earth-ui-components-file-errors.mjs +3 -1409
- package/fesm2022/hestia-earth-ui-components-file-errors.mjs.map +1 -1
- package/fesm2022/hestia-earth-ui-components.mjs +165 -82
- package/fesm2022/hestia-earth-ui-components.mjs.map +1 -1
- package/package.json +2 -2
- package/types/hestia-earth-ui-components-file-errors.d.ts +1 -178
- package/types/hestia-earth-ui-components.d.ts +52 -20
- package/file-errors/README.md +0 -114
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hestia-earth/ui-components",
|
|
3
|
-
"version": "0.43.
|
|
3
|
+
"version": "0.43.18",
|
|
4
4
|
"description": "HESTIA reusable components",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"@angular/core": "^21.0.0",
|
|
19
19
|
"@angular/google-maps": "^21.0.0",
|
|
20
20
|
"@hestia-earth/api": "*",
|
|
21
|
-
"@hestia-earth/data-validation": "
|
|
21
|
+
"@hestia-earth/data-validation": ">=0.41.3",
|
|
22
22
|
"@hestia-earth/engine-models": "*",
|
|
23
23
|
"@hestia-earth/glossary": "*",
|
|
24
24
|
"@hestia-earth/json-schema": "*",
|
|
@@ -1,178 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A renderer abstracts every presentation primitive used to build an error message.
|
|
5
|
-
*
|
|
6
|
-
* The error catalog is a single source of truth; swapping the renderer changes only how
|
|
7
|
-
* the messages are presented:
|
|
8
|
-
* - `htmlRenderer` reproduces the exact Bulma-classed HTML consumed by the Angular app.
|
|
9
|
-
* - `textRenderer` produces framework-agnostic plain text (with lightweight markdown for
|
|
10
|
-
* code spans, links and lists) suitable for any non-Angular consumer.
|
|
11
|
-
*/
|
|
12
|
-
interface IErrorRenderer {
|
|
13
|
-
code: (text: string | number | boolean) => string;
|
|
14
|
-
link: (href: string, text: string, newTab?: boolean) => string;
|
|
15
|
-
list: (values: Array<string | string[]>, style?: 'disc' | 'decimal') => string;
|
|
16
|
-
paragraph: (text: string) => string;
|
|
17
|
-
bold: (text: string) => string;
|
|
18
|
-
subscript: (text: string) => string;
|
|
19
|
-
underline: (text: string) => string;
|
|
20
|
-
/** Inline line break, e.g. `<br/>` or `\n`. */
|
|
21
|
-
lineBreak: string;
|
|
22
|
-
/** Separator used when joining inline code spans (`joinValues`). */
|
|
23
|
-
inlineSeparator: string;
|
|
24
|
-
/** Wraps the leading sentence of a default (non-catalog) message. */
|
|
25
|
-
capitalizeFirst: (text: string) => string;
|
|
26
|
-
/** Wraps the whole formatted message; receives a non-empty string. */
|
|
27
|
-
wrapMessage: (text: string) => string;
|
|
28
|
-
}
|
|
29
|
-
declare const htmlRenderer: IErrorRenderer;
|
|
30
|
-
declare const textRenderer: IErrorRenderer;
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Provides the base URLs used to build links inside error messages.
|
|
34
|
-
*
|
|
35
|
-
* Functions (rather than plain strings) keep the lookups lazy: the Angular app reads them
|
|
36
|
-
* from `window.location` at call time, while a non-Angular consumer can pass static values.
|
|
37
|
-
*/
|
|
38
|
-
interface IUrlConfig {
|
|
39
|
-
baseUrl: () => string;
|
|
40
|
-
glossaryBaseUrl: () => string;
|
|
41
|
-
schemaBaseUrl: () => string;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Static, browser-free default configuration pointing at the public HESTIA platform.
|
|
45
|
-
*/
|
|
46
|
-
declare const defaultUrlConfig: IUrlConfig;
|
|
47
|
-
/**
|
|
48
|
-
* Builds a configuration from a single base URL.
|
|
49
|
-
*/
|
|
50
|
-
declare const urlConfig: (baseUrl?: string) => IUrlConfig;
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Framework-agnostic validation types.
|
|
54
|
-
*
|
|
55
|
-
* These mirror the canonical definitions in `../schema/schema-validation.model` but are
|
|
56
|
-
* duplicated here so this entry point stays self-contained (no import from the Angular
|
|
57
|
-
* primary entry point). They are kept structurally compatible on purpose.
|
|
58
|
-
*/
|
|
59
|
-
type validationErrorLevel = 'error' | 'warning';
|
|
60
|
-
type validationErrorParam = 'missingProperty' | 'type' | 'term' | 'termType' | 'termIds' | 'model' | 'product' | 'range' | 'node' | 'allowedValues' | 'allowedValue' | 'additionalProperty' | 'expected' | 'default' | 'current' | 'percentage' | 'keys' | 'threshold' | 'outliers' | 'country' | 'min' | 'max' | 'mu' | 'sd' | 'defaultSource' | 'source' | 'group' | 'message' | 'distance' | 'siteType' | 'products' | 'units' | 'duplicatedIndexes' | 'invalidCoordinates' | 'ids' | 'limit' | 'delta';
|
|
61
|
-
type validationErrorKeyword = 'required' | 'type' | 'if' | 'then' | 'not';
|
|
62
|
-
interface ICustomValidationRules {
|
|
63
|
-
const?: any;
|
|
64
|
-
required?: string[];
|
|
65
|
-
enum?: string[];
|
|
66
|
-
contains?: ICustomValidationRules;
|
|
67
|
-
properties?: {
|
|
68
|
-
[property: string]: ICustomValidationRules;
|
|
69
|
-
};
|
|
70
|
-
not?: ICustomValidationRules;
|
|
71
|
-
items?: ICustomValidationRules;
|
|
72
|
-
allOf?: ICustomValidationRules[];
|
|
73
|
-
anyOf?: ICustomValidationRules[];
|
|
74
|
-
oneOf?: ICustomValidationRules[];
|
|
75
|
-
}
|
|
76
|
-
interface IValidationError {
|
|
77
|
-
index?: number;
|
|
78
|
-
nodeIndex?: number;
|
|
79
|
-
level?: validationErrorLevel;
|
|
80
|
-
dataPath?: string;
|
|
81
|
-
schemaPath?: string;
|
|
82
|
-
keyword?: validationErrorKeyword;
|
|
83
|
-
message: string;
|
|
84
|
-
params?: {
|
|
85
|
-
[key in validationErrorParam]?: any;
|
|
86
|
-
};
|
|
87
|
-
schema?: ICustomValidationRules;
|
|
88
|
-
}
|
|
89
|
-
interface IValidationErrorWithIndex {
|
|
90
|
-
error: IValidationError[];
|
|
91
|
-
index: number;
|
|
92
|
-
changed?: boolean;
|
|
93
|
-
}
|
|
94
|
-
interface IDataPath {
|
|
95
|
-
path: string;
|
|
96
|
-
/**
|
|
97
|
-
* Human readable version of the path.
|
|
98
|
-
*/
|
|
99
|
-
label: string;
|
|
100
|
-
nodeType?: NodeType;
|
|
101
|
-
schemaType?: SchemaType;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Structured, framework-agnostic representation of a formatted validation error.
|
|
105
|
-
*/
|
|
106
|
-
interface IFormattedError {
|
|
107
|
-
level: validationErrorLevel;
|
|
108
|
-
/**
|
|
109
|
-
* The rendered message. Plain text (or lightweight markdown) by default, HTML when
|
|
110
|
-
* formatted with the html renderer.
|
|
111
|
-
*/
|
|
112
|
-
message: string;
|
|
113
|
-
/**
|
|
114
|
-
* Human readable location of the error within the document (derived from the dataPath).
|
|
115
|
-
*/
|
|
116
|
-
location?: string;
|
|
117
|
-
dataPath?: string;
|
|
118
|
-
keyword?: validationErrorKeyword;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
declare enum Repository {
|
|
122
|
-
glossary = "hestia-glossary",
|
|
123
|
-
models = "hestia-engine-models",
|
|
124
|
-
aggregation = "hestia-aggregation-engine",
|
|
125
|
-
community = "hestia-community-edition",
|
|
126
|
-
schema = "hestia-schema",
|
|
127
|
-
frontend = "hestia-front-end"
|
|
128
|
-
}
|
|
129
|
-
declare enum Template {
|
|
130
|
-
bug = "bug",
|
|
131
|
-
feature = "feature"
|
|
132
|
-
}
|
|
133
|
-
interface IIssueParams {
|
|
134
|
-
title?: string;
|
|
135
|
-
description?: string;
|
|
136
|
-
}
|
|
137
|
-
declare const reportIssueUrl: (repository: Repository, template?: Template, issueParams?: IIssueParams) => string;
|
|
138
|
-
|
|
139
|
-
declare const guidePageId: (nodeType: SchemaType, errorMessage: string) => string;
|
|
140
|
-
declare const isMigrationError: ({ params }: IValidationError) => boolean;
|
|
141
|
-
interface ICreateErrorFormatterOptions {
|
|
142
|
-
renderer: IErrorRenderer;
|
|
143
|
-
urls: IUrlConfig;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Builds the error formatting functions for a given presentation (`renderer`) and link
|
|
147
|
-
* configuration (`urls`). The error catalog below is the single source of truth; the
|
|
148
|
-
* renderer alone decides whether the output is HTML, plain text, etc.
|
|
149
|
-
*/
|
|
150
|
-
declare const createErrorFormatter: ({ renderer: r, urls }: ICreateErrorFormatterOptions) => {
|
|
151
|
-
parseDataPath: (dataPath?: string) => IDataPath[];
|
|
152
|
-
dataPathLabel: (dataPath?: string) => string;
|
|
153
|
-
migrationErrorMessage: ({ params }: IValidationError) => string;
|
|
154
|
-
formatCustomErrorMessage: (message?: string, error?: IValidationError, allErrors?: IValidationError[]) => string;
|
|
155
|
-
formatError: (error?: IValidationError, allErrors?: IValidationError[]) => IValidationError;
|
|
156
|
-
formatErrors: (errors?: IValidationError[]) => IFormattedError[];
|
|
157
|
-
locationLabel: (dataPath?: string) => string;
|
|
158
|
-
};
|
|
159
|
-
declare const errorHasError: (error?: IValidationError) => boolean;
|
|
160
|
-
declare const errorHasWarning: (error?: IValidationError) => boolean;
|
|
161
|
-
declare const isMissingPropertyError: ({ params }: IValidationError) => boolean;
|
|
162
|
-
declare const isMissingOneOfError: ({ keyword, schemaPath }: IValidationError) => boolean;
|
|
163
|
-
declare const filterError: (error: IValidationError) => boolean;
|
|
164
|
-
declare const missingNodeErrors: (errors: IValidationError[]) => IValidationError[];
|
|
165
|
-
|
|
166
|
-
interface IFormatErrorsOptions {
|
|
167
|
-
/** Presentation renderer. Defaults to `textRenderer` (plain text / lightweight markdown). */
|
|
168
|
-
renderer?: IErrorRenderer;
|
|
169
|
-
/** Base URLs used to build links. Defaults to the public HESTIA platform. */
|
|
170
|
-
urls?: IUrlConfig;
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* Formats a list of validation errors into structured, framework-agnostic objects.
|
|
174
|
-
*/
|
|
175
|
-
declare const formatErrors: (errors?: IValidationError[], options?: IFormatErrorsOptions) => IFormattedError[];
|
|
176
|
-
|
|
177
|
-
export { Repository, Template, createErrorFormatter, defaultUrlConfig, errorHasError, errorHasWarning, filterError, formatErrors, guidePageId, htmlRenderer, isMigrationError, isMissingOneOfError, isMissingPropertyError, missingNodeErrors, reportIssueUrl, textRenderer, urlConfig };
|
|
178
|
-
export type { ICreateErrorFormatterOptions, ICustomValidationRules, IDataPath, IErrorRenderer, IFormatErrorsOptions, IFormattedError, IUrlConfig, IValidationError, IValidationErrorWithIndex, validationErrorKeyword, validationErrorLevel, validationErrorParam };
|
|
1
|
+
export * from '@hestia-earth/data-validation/file-errors';
|
|
@@ -26,11 +26,11 @@ export * from '@hestia-earth/ui-components/svg-icons';
|
|
|
26
26
|
import { AnimationEvent } from '@angular/animations';
|
|
27
27
|
import { IsActiveMatchOptions } from '@angular/router';
|
|
28
28
|
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
29
|
-
import * as
|
|
30
|
-
import { IValidationErrorWithIndex } from '@hestia-earth/ui-components/file-errors';
|
|
31
|
-
export { IValidationErrorWithIndex, errorHasError, errorHasWarning, filterError, guidePageId, isMigrationError, isMissingOneOfError, isMissingPropertyError, missingNodeErrors } from '@hestia-earth/ui-components/file-errors';
|
|
29
|
+
import * as _hestia_earth_data_validation_file_errors from '@hestia-earth/data-validation/file-errors';
|
|
32
30
|
import { definition, definitions, IDefinition, IDefinitionObject } from '@hestia-earth/json-schema';
|
|
33
31
|
import { ErrorKeys, IJSONConversionParams, IConvertCSVOptions } from '@hestia-earth/schema-convert';
|
|
32
|
+
import { IValidationErrorWithIndex } from '@hestia-earth/ui-components/file-errors';
|
|
33
|
+
export { IValidationErrorWithIndex, errorHasError, errorHasWarning, filterError, guidePageId, isMigrationError, isMissingOneOfError, isMissingPropertyError, missingNodeErrors } from '@hestia-earth/ui-components/file-errors';
|
|
34
34
|
import * as _angular_platform_browser from '@angular/platform-browser';
|
|
35
35
|
import * as _angular_cdk_overlay from '@angular/cdk/overlay';
|
|
36
36
|
import { ConnectedPosition } from '@angular/cdk/overlay';
|
|
@@ -1229,6 +1229,12 @@ declare const methodTierOrder: (methodTier: EmissionMethodTier) => number;
|
|
|
1229
1229
|
declare const grouppedValueKeys: string[];
|
|
1230
1230
|
declare const groupNodesByTerm: <T extends ICycleJSONLD | IImpactAssessmentJSONLD | ISiteJSONLD | Animal | Transformation, R>(nodes: T[], key: blankNodesKey, includeNode?: (_node: any) => boolean, hideZeroValues?: boolean, hideIdenticalValues?: boolean) => IGroupedNodes<R>;
|
|
1231
1231
|
declare const countGroupVisibleNodes: <T>(blankNodes: IGroupedKeys<T>[]) => number;
|
|
1232
|
+
/**
|
|
1233
|
+
* The rule `groupNodesByTerm` applies to blank nodes, for the tables comparing a plain key instead:
|
|
1234
|
+
* a value missing on one node is never identical, so a key only some of them carry stays visible -
|
|
1235
|
+
* comparing two versions of a node, a key appearing or disappearing is itself the change to see.
|
|
1236
|
+
*/
|
|
1237
|
+
declare const isIdenticalNodeValue: <T>(nodes: T[], value: (node: T) => any) => boolean;
|
|
1232
1238
|
declare const valueLink: (value: any) => string;
|
|
1233
1239
|
declare const valueValue: (value: any) => any;
|
|
1234
1240
|
declare const valueToString: (value: any) => any;
|
|
@@ -2382,6 +2388,7 @@ declare enum View$4 {
|
|
|
2382
2388
|
declare class CyclesCompletenessComponent {
|
|
2383
2389
|
private readonly modalService;
|
|
2384
2390
|
private readonly nodeStoreService;
|
|
2391
|
+
protected readonly componentId: _angular_core.Signal<string>;
|
|
2385
2392
|
protected readonly dataState: _angular_core.InputSignal<DataState>;
|
|
2386
2393
|
protected readonly schemaBaseUrl: string;
|
|
2387
2394
|
protected readonly defaultLabel: (node?: any) => any;
|
|
@@ -2467,6 +2474,9 @@ declare class CyclesCompletenessComponent {
|
|
|
2467
2474
|
}>;
|
|
2468
2475
|
protected readonly hasData: _angular_core.Signal<number>;
|
|
2469
2476
|
protected readonly isOriginal: _angular_core.Signal<boolean>;
|
|
2477
|
+
readonly hideIdenticalValues: _angular_core.InputSignal<boolean>;
|
|
2478
|
+
protected readonly hideIdenticalSelected: _angular_core.WritableSignal<boolean>;
|
|
2479
|
+
protected readonly hideIdentical: _angular_core.Signal<boolean>;
|
|
2470
2480
|
protected readonly completenessKeys: _angular_core.Signal<string[]>;
|
|
2471
2481
|
constructor();
|
|
2472
2482
|
protected selectIndex({ target: { value } }: {
|
|
@@ -2476,7 +2486,7 @@ declare class CyclesCompletenessComponent {
|
|
|
2476
2486
|
}): void;
|
|
2477
2487
|
protected showDownload(): void;
|
|
2478
2488
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CyclesCompletenessComponent, never>;
|
|
2479
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesCompletenessComponent, "he-cycles-completeness", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2489
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesCompletenessComponent, "he-cycles-completeness", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "hideIdenticalValues": { "alias": "hideIdenticalValues"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2480
2490
|
}
|
|
2481
2491
|
|
|
2482
2492
|
declare class CyclesEmissionsChartComponent {
|
|
@@ -2512,6 +2522,7 @@ declare enum View$3 {
|
|
|
2512
2522
|
declare class CyclesMetadataComponent {
|
|
2513
2523
|
private readonly modalService;
|
|
2514
2524
|
private readonly nodeStoreService;
|
|
2525
|
+
protected readonly componentId: _angular_core.Signal<string>;
|
|
2515
2526
|
protected readonly dataState: _angular_core.InputSignal<DataState>;
|
|
2516
2527
|
protected readonly schemaBaseUrl: string;
|
|
2517
2528
|
protected readonly defaultLabel: (node?: any) => any;
|
|
@@ -2547,6 +2558,9 @@ declare class CyclesMetadataComponent {
|
|
|
2547
2558
|
protected readonly selectedRecalculatedValues: _angular_core.Signal<{
|
|
2548
2559
|
[k: string]: string | number | boolean | string[] | _hestia_earth_schema.ISiteJSONLD | number[] | Date | _hestia_earth_schema.Product[] | _hestia_earth_schema.Input[] | _hestia_earth_schema.Animal[] | _hestia_earth_schema.Emission[] | _hestia_earth_schema.Practice[] | _hestia_earth_schema.Transformation[] | _hestia_earth_schema.ISourceJSONLD | _hestia_earth_schema.ISourceJSONLD[] | (string | _hestia_earth_schema.IContext)[] | _hestia_earth_schema.Completeness | ICycleJSONLD[] | _hestia_earth_schema.ISiteJSONLD[] | null[][];
|
|
2549
2560
|
}>;
|
|
2561
|
+
readonly hideIdenticalValues: _angular_core.InputSignal<boolean>;
|
|
2562
|
+
protected readonly hideIdenticalSelected: _angular_core.WritableSignal<boolean>;
|
|
2563
|
+
protected readonly hideIdentical: _angular_core.Signal<boolean>;
|
|
2550
2564
|
protected readonly keys: _angular_core.Signal<(keyof ICycleJSONLD)[]>;
|
|
2551
2565
|
protected selectIndex({ target: { value } }: {
|
|
2552
2566
|
target: {
|
|
@@ -2555,7 +2569,7 @@ declare class CyclesMetadataComponent {
|
|
|
2555
2569
|
}): void;
|
|
2556
2570
|
protected showDownload(): void;
|
|
2557
2571
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CyclesMetadataComponent, never>;
|
|
2558
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesMetadataComponent, "he-cycles-metadata", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2572
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesMetadataComponent, "he-cycles-metadata", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "hideIdenticalValues": { "alias": "hideIdenticalValues"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2559
2573
|
}
|
|
2560
2574
|
|
|
2561
2575
|
declare enum View$2 {
|
|
@@ -2780,12 +2794,15 @@ declare class CyclesNodesComponent {
|
|
|
2780
2794
|
}>;
|
|
2781
2795
|
protected readonly dataKeys: _angular_core.Signal<string[]>;
|
|
2782
2796
|
protected readonly hasData: _angular_core.Signal<boolean>;
|
|
2797
|
+
protected readonly hasVisibleData: _angular_core.Signal<boolean>;
|
|
2783
2798
|
protected readonly filterTermTypes: _angular_core.Signal<TermTermType[]>;
|
|
2784
2799
|
protected readonly filterTerm: _angular_core.WritableSignal<string>;
|
|
2785
2800
|
protected readonly csvFilename: _angular_core.Signal<string>;
|
|
2786
2801
|
protected readonly showHideZeroValues: _angular_core.Signal<boolean>;
|
|
2787
2802
|
protected readonly hideZeroValues: _angular_core.WritableSignal<boolean>;
|
|
2788
|
-
|
|
2803
|
+
readonly hideIdenticalValues: _angular_core.InputSignal<boolean>;
|
|
2804
|
+
protected readonly hideIdenticalSelected: _angular_core.WritableSignal<boolean>;
|
|
2805
|
+
protected readonly hideIdentical: _angular_core.Signal<boolean>;
|
|
2789
2806
|
constructor();
|
|
2790
2807
|
private groupNodesByKey;
|
|
2791
2808
|
private groupEmissions;
|
|
@@ -2797,7 +2814,7 @@ declare class CyclesNodesComponent {
|
|
|
2797
2814
|
protected cycleNode(cycle: ICycleJSONLD | groupedNode): _hestia_earth_schema.Term | ICycleJSONLD | groupedNode;
|
|
2798
2815
|
protected showDownload(): void;
|
|
2799
2816
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CyclesNodesComponent, never>;
|
|
2800
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesNodesComponent, "he-cycles-nodes", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKeys": { "alias": "nodeKeys"; "required": true; "isSignal": true; }; "nodeKeyGroup": { "alias": "nodeKeyGroup"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2817
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CyclesNodesComponent, "he-cycles-nodes", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKeys": { "alias": "nodeKeys"; "required": true; "isSignal": true; }; "nodeKeyGroup": { "alias": "nodeKeyGroup"; "required": false; "isSignal": true; }; "hideIdenticalValues": { "alias": "hideIdenticalValues"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2801
2818
|
}
|
|
2802
2819
|
|
|
2803
2820
|
declare class CyclesNodesTimelineComponent {
|
|
@@ -3111,12 +3128,12 @@ declare class EngineRequirementsFormComponent {
|
|
|
3111
3128
|
}
|
|
3112
3129
|
|
|
3113
3130
|
declare const formatter$1: {
|
|
3114
|
-
parseDataPath: (dataPath?: string) =>
|
|
3131
|
+
parseDataPath: (dataPath?: string) => _hestia_earth_data_validation_file_errors.IDataPath[];
|
|
3115
3132
|
dataPathLabel: (dataPath?: string) => string;
|
|
3116
|
-
migrationErrorMessage: ({ params }:
|
|
3117
|
-
formatCustomErrorMessage: (message?: string, error?:
|
|
3118
|
-
formatError: (error?:
|
|
3119
|
-
formatErrors: (errors?:
|
|
3133
|
+
migrationErrorMessage: ({ params }: _hestia_earth_data_validation_file_errors.IValidationError) => string;
|
|
3134
|
+
formatCustomErrorMessage: (message?: string, error?: _hestia_earth_data_validation_file_errors.IValidationError, allErrors?: _hestia_earth_data_validation_file_errors.IValidationError[]) => string;
|
|
3135
|
+
formatError: (error?: _hestia_earth_data_validation_file_errors.IValidationError, allErrors?: _hestia_earth_data_validation_file_errors.IValidationError[]) => _hestia_earth_data_validation_file_errors.IValidationError;
|
|
3136
|
+
formatErrors: (errors?: _hestia_earth_data_validation_file_errors.IValidationError[]) => _hestia_earth_data_validation_file_errors.IFormattedError[];
|
|
3120
3137
|
locationLabel: (dataPath?: string) => string;
|
|
3121
3138
|
};
|
|
3122
3139
|
declare const parseDataPath: typeof formatter$1.parseDataPath;
|
|
@@ -3233,6 +3250,13 @@ declare const formatPropertyError: (errors: any, property: INodeProperty) => str
|
|
|
3233
3250
|
declare const formatter: (key: string) => (value: any) => any;
|
|
3234
3251
|
declare const hasError: (value: any) => any;
|
|
3235
3252
|
declare const hasWarning: (value: any) => any;
|
|
3253
|
+
/**
|
|
3254
|
+
* The label on the node header: a node routinely carries several errors or warnings, and a single
|
|
3255
|
+
* label for both counts reads as exactly one. A `missingOneOf` error is shown as a warning while
|
|
3256
|
+
* being recorded as an `error`, so the badge can be up with nothing counted under its own level —
|
|
3257
|
+
* hence the floor of one.
|
|
3258
|
+
*/
|
|
3259
|
+
declare const errorsLabel: (label: string, errors: IValidationError[], matches: (error: IValidationError) => unknown) => string;
|
|
3236
3260
|
declare const nodeAvailableProperties: (node: JSON<SchemaType>, { fullKey, schema, schemaType }: Partial<INodeProperty>) => any;
|
|
3237
3261
|
declare const isAddPropertyEnabled: (node: JSON<SchemaType>, schemaType: SchemaType, schema: definition, fullKey?: string) => boolean;
|
|
3238
3262
|
declare const propertyId: () => string;
|
|
@@ -3371,7 +3395,7 @@ declare class FilesFormComponent {
|
|
|
3371
3395
|
fullKey: string;
|
|
3372
3396
|
key: string;
|
|
3373
3397
|
value: {};
|
|
3374
|
-
error:
|
|
3398
|
+
error: _hestia_earth_data_validation_file_errors.IValidationError;
|
|
3375
3399
|
errorGuidePageId: string;
|
|
3376
3400
|
hasError: boolean;
|
|
3377
3401
|
hasWarning: boolean;
|
|
@@ -3391,6 +3415,8 @@ declare class FilesFormComponent {
|
|
|
3391
3415
|
protected readonly unmatchedErrors: _angular_core.Signal<INodeProperty[]>;
|
|
3392
3416
|
protected readonly hasError: _angular_core.Signal<any>;
|
|
3393
3417
|
protected readonly hasWarning: _angular_core.Signal<any>;
|
|
3418
|
+
protected readonly errorLabel: _angular_core.Signal<string>;
|
|
3419
|
+
protected readonly warningLabel: _angular_core.Signal<string>;
|
|
3394
3420
|
protected readonly canOpen: _angular_core.Signal<boolean>;
|
|
3395
3421
|
protected trackByProperty(_index: number, { id, fullKey }: INodeProperty): string;
|
|
3396
3422
|
protected resolveError(property: INodeProperty): void;
|
|
@@ -3445,7 +3471,7 @@ declare class FilesFormEditableComponent {
|
|
|
3445
3471
|
fullKey: string;
|
|
3446
3472
|
key: string;
|
|
3447
3473
|
value: {};
|
|
3448
|
-
error:
|
|
3474
|
+
error: _hestia_earth_data_validation_file_errors.IValidationError;
|
|
3449
3475
|
errorGuidePageId: string;
|
|
3450
3476
|
hasError: boolean;
|
|
3451
3477
|
hasWarning: boolean;
|
|
@@ -3634,7 +3660,7 @@ interface ISummary {
|
|
|
3634
3660
|
* @param summaryData The previously computed summary objects.
|
|
3635
3661
|
* @returns
|
|
3636
3662
|
*/
|
|
3637
|
-
declare const buildSummary: (nodes?: JSON<SchemaType>[], errors?: IValidationErrorWithIndex[], summaryData?: ISummary[]) =>
|
|
3663
|
+
declare const buildSummary: (nodes?: JSON<SchemaType>[], errors?: IValidationErrorWithIndex[], summaryData?: ISummary[]) => Observable<ISummary[]>;
|
|
3638
3664
|
|
|
3639
3665
|
declare class FilesErrorSummaryItemComponent {
|
|
3640
3666
|
readonly summary: _angular_core.InputSignal<ISummary>;
|
|
@@ -4474,8 +4500,11 @@ declare class ImpactAssessmentsProductsComponent {
|
|
|
4474
4500
|
}>;
|
|
4475
4501
|
protected readonly dataKeys: _angular_core.Signal<string[]>;
|
|
4476
4502
|
protected readonly hasData: _angular_core.Signal<number | boolean>;
|
|
4503
|
+
protected readonly hasVisibleData: _angular_core.Signal<boolean>;
|
|
4477
4504
|
protected readonly noDataMessage: _angular_core.Signal<"We cannot calculate these data, most likely because we are missing the quantity produced or because we are missing data to allocate environmental impact data between co-products." | "Calculations in progress.">;
|
|
4478
|
-
|
|
4505
|
+
readonly hideIdenticalValues: _angular_core.InputSignal<boolean>;
|
|
4506
|
+
protected readonly hideIdenticalSelected: _angular_core.WritableSignal<boolean>;
|
|
4507
|
+
protected readonly hideIdentical: _angular_core.Signal<boolean>;
|
|
4479
4508
|
protected readonly methodModels: _angular_core.Signal<Term[]>;
|
|
4480
4509
|
private readonly _selectedMethodModel;
|
|
4481
4510
|
protected groupIndicators(): IGroupedKeys<Indicator>[];
|
|
@@ -4492,7 +4521,7 @@ declare class ImpactAssessmentsProductsComponent {
|
|
|
4492
4521
|
}): void;
|
|
4493
4522
|
protected showDownload(): void;
|
|
4494
4523
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ImpactAssessmentsProductsComponent, never>;
|
|
4495
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ImpactAssessmentsProductsComponent, "he-impact-assessments-products", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "filterTermTypes": { "alias": "filterTermTypes"; "required": false; "isSignal": true; }; "enableFilterMethodModel": { "alias": "enableFilterMethodModel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4524
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ImpactAssessmentsProductsComponent, "he-impact-assessments-products", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "filterTermTypes": { "alias": "filterTermTypes"; "required": false; "isSignal": true; }; "enableFilterMethodModel": { "alias": "enableFilterMethodModel"; "required": false; "isSignal": true; }; "hideIdenticalValues": { "alias": "hideIdenticalValues"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4496
4525
|
}
|
|
4497
4526
|
|
|
4498
4527
|
interface ILog$1 {
|
|
@@ -6316,10 +6345,13 @@ declare class SitesNodesComponent {
|
|
|
6316
6345
|
protected readonly showSwitchToRecalculated: _angular_core.Signal<boolean>;
|
|
6317
6346
|
protected readonly showAreaTooBig: _angular_core.Signal<boolean>;
|
|
6318
6347
|
protected readonly hasData: _angular_core.Signal<boolean>;
|
|
6348
|
+
protected readonly hasVisibleData: _angular_core.Signal<boolean>;
|
|
6319
6349
|
protected readonly filterTermTypes: _angular_core.Signal<TermTermType[]>;
|
|
6320
6350
|
protected readonly filterTerm: _angular_core.WritableSignal<string>;
|
|
6321
6351
|
protected readonly hideZeroValues: _angular_core.WritableSignal<boolean>;
|
|
6322
|
-
|
|
6352
|
+
readonly hideIdenticalValues: _angular_core.InputSignal<boolean>;
|
|
6353
|
+
protected readonly hideIdenticalSelected: _angular_core.WritableSignal<boolean>;
|
|
6354
|
+
protected readonly hideIdentical: _angular_core.Signal<boolean>;
|
|
6323
6355
|
protected readonly csvFilename: _angular_core.Signal<string>;
|
|
6324
6356
|
protected readonly data: _angular_core.Signal<IGroupedKeys<any>[]>;
|
|
6325
6357
|
constructor();
|
|
@@ -6330,7 +6362,7 @@ declare class SitesNodesComponent {
|
|
|
6330
6362
|
}): void;
|
|
6331
6363
|
protected showDownload(): void;
|
|
6332
6364
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SitesNodesComponent, never>;
|
|
6333
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SitesNodesComponent, "he-sites-nodes", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "enableChart": { "alias": "enableChart"; "required": false; "isSignal": true; }; "nodeKeyGroup": { "alias": "nodeKeyGroup"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
6365
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SitesNodesComponent, "he-sites-nodes", never, { "dataState": { "alias": "dataState"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "enableChart": { "alias": "enableChart"; "required": false; "isSignal": true; }; "nodeKeyGroup": { "alias": "nodeKeyGroup"; "required": false; "isSignal": true; }; "hideIdenticalValues": { "alias": "hideIdenticalValues"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
6334
6366
|
}
|
|
6335
6367
|
|
|
6336
6368
|
declare const termProperties: (term: Term | ITermJSONLD) => string[];
|
|
@@ -6374,5 +6406,5 @@ declare class TermsUnitsDescriptionComponent {
|
|
|
6374
6406
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TermsUnitsDescriptionComponent, "he-terms-units-description", never, { "term": { "alias": "term"; "required": true; "isSignal": true; }; "iconTemplate": { "alias": "iconTemplate"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
6375
6407
|
}
|
|
6376
6408
|
|
|
6377
|
-
export { ARRAY_DELIMITER, ApplyPurePipe, BarChartComponent, BibliographiesSearchConfirmComponent, BlankNodeStateComponent, BlankNodeStateNoticeComponent, BlankNodeValueDeltaComponent, CapitalizePipe, ChartComponent, ChartConfigurationDirective, ChartExportButtonComponent, ChartTooltipComponent, ClickOutsideDirective, ClipboardComponent, CollapsibleBlockComponent, CollapsibleBoxComponent, CollapsibleBoxStyle, ColorPalette, CompoundDirective, CompoundPipe, ContributionChartComponent, ControlValueAccessor, CycleNodesKeyGroup, CyclesCompletenessComponent, CyclesEmissionsCategoryService, CyclesEmissionsChartComponent, CyclesFunctionalUnitMeasureComponent, CyclesMetadataComponent, CyclesNodesComponent, CyclesNodesTimelineComponent, CyclesResultComponent, DataTableComponent, DefaultPipe, DeltaColour, DistributionChartComponent, DrawerContainerComponent, DurationPipe, EllipsisPipe, EngineModelsLinkComponent, EngineModelsLookupInfoComponent, EngineModelsStageComponent, EngineModelsStageDeepComponent, EngineModelsStageDeepService, EngineModelsVersionInfoComponent, EngineModelsVersionLinkComponent, EngineOrchestratorEditComponent, EngineRequirementsFormComponent, FileSizePipe, FileUploadErrorKeys, FilesDragDropDirective, FilesDropZoneComponent, FilesErrorSummaryComponent, FilesFormComponent, FilesFormEditableComponent, FilesUploadErrorsComponent, FilterAccordionComponent, FormulaBlockComponent, GUIDE_ENABLED, GetPipe, GlossaryMigrationFormat, GuideOverlayComponent, HE_API_BASE_URL, HE_CALCULATIONS_BASE_URL, HE_MAP_LOADED, HeAuthService, HeCommonService, HeEngineService, HeGlossaryService, HeMendeleyService, HeNodeCsvService, HeNodeService, HeNodeStoreService, HeSchemaService, HeSearchService, HeToastService, HorizontalBarChartComponent, HorizontalButtonsGroupComponent, ImpactAssessmentsGraphComponent, ImpactAssessmentsIndicatorBreakdownChartComponent, ImpactAssessmentsIndicatorsChartComponent, ImpactAssessmentsProductsComponent, IsArrayPipe, IsObjectPipe, IssueConfirmComponent, KeyToLabelPipe, Level, LineChartComponent, LinkKeyValueComponent, LogStatus, LongPressDirective, MAX_RESULTS, MapsDrawingComponent, MapsDrawingConfirmComponent, MaxPipe, MeanPipe, MedianPipe, MendeleySearchResult, MinPipe, MobileShellComponent, NavigationMenuComponent, NoExtPipe, NodeAggregatedComponent, NodeAggregatedFormulasComponent, NodeAggregatedInfoComponent, NodeAggregatedQualityScoreComponent, NodeAggregationLogsComponent, NodeCsvExportConfirmComponent, NodeCsvPreviewComponent, NodeCsvSelectHeadersComponent, NodeIconComponent, NodeJLogModelsComponent, NodeJsonldComponent, NodeJsonldSchemaComponent, NodeKeyState, NodeLinkComponent, NodeLogsFileComponent, NodeLogsModelsComponent, NodeLogsTimeComponent, NodeMissingLookupFactorsComponent, NodeQualityScore, NodeRecommendationsComponent, NodeSelectComponent, NodeValueDetailsComponent, PipelineStagesProgressComponent, PluralizePipe, PopoverComponent, PopoverConfirmComponent, PrecisionPipe, RelatedNodeResult, RemoveMarkdownPipe, RepeatPipe, Repository, ResizedDirective, ResizedEvent, ResponsiveService, SchemaInfoComponent, SchemaVersionLinkComponent, SearchExtendComponent, ShelfDialogComponent, ShellComponent, SiteNodesKeyGroup, SitesManagementChartComponent, SitesMapsComponent, SitesNodesComponent, SkeletonTextComponent, SocialTagsComponent, SortByPipe, SortSelectComponent, SumPipe, TagsInputDirective, Template, TermsPropertyContentComponent, TermsSubClassOfContentComponent, TermsUnitsDescriptionComponent, ThousandSuffixesPipe, ThousandsPipe, TimesPipe, ToastComponent, UncapitalizePipe, addPolygonToFeature, afterBarDrawPlugin, allCountriesQuery, allGroups, allOptions, availableProperties, axisHoverPlugin, backgroundHoverPlugin, backgroundModelParams, baseApiUrl, baseUrl, bottom, buildSummary, bytesSize, calculateCycleDuration, calculateCycleDurationEnabled, calculateCycleStartDate, calculateCycleStartDateEnabled, capitalize, changelogUrl, clustererImage, code, colorToRgba, compoundToHtml, computeKeys, computeTerms, contactUsEmail, contactUsLink, convertToSvg, coordinatesToPoint, copyObject, countGroupVisibleNodes, countriesQuery, createMarker, cropsQuery, d3ellipse, d3wrap, dataPathLabel, dataPathToKey, dataVersionHeader, dataVersionHeaderKey, defaultFeature, defaultLabel, defaultSuggestionType, defaultTicksFont, definitionToSchemaType, distinctUntilChangedDeep, downloadFile, downloadPng, downloadSvg, ellipsis, engineGitBaseUrl, engineGitUrl, errorText, evaluateSuccess, exportAsSVG, exportFormats, externalLink, externalNodeLink, fillColor, fillStyle, filterBlankNode, filterParams, findBackgroundModel, findConfigModels, findMatchingModel, findModels, findNodeModel, findOrchestratorModel, findProperty, findPropertyById, findTermModels, flatFilterData, flatFilterNode, formatCustomErrorMessage, formatDate, formatError, formatPropertyError, formatter, getColor, getDatesBetween, gitBranch, gitHome, glossaryBaseUrl, glossaryLink, groupBlankNodesByTermIdentity, groupChanged, groupDataByCategory, groupJLogByField, groupJLogByTerm, groupLogsByTerm, groupNodesByTerm, groupdLogsByKey, grouppedKeys, grouppedValueKeys, groupsLogsByFields, guideModelUrl, guideNamespace, handleAPIError, handleGuideEvent, hasError, hasValidationError, hasWarning, hexToRgba, ignoreKeys, increaseScaleLimits, initialFilterState, injectResizeEvent$, inputGroupsTermTypes, isAddPropertyEnabled, isChrome, isDateBetween, isEqual, isExternal, isKeyClosedVisible, isKeyHidden, isMaxStage, isMethodModelAllowed, isNonNodeModelKey, isSchemaIri, isScrolledBelow, isState, isTermTypeAllowed, isValidKey, jLogModelCount, keyToDataPath, levels, listColor, listColorContinuous, listColorWithAlpha, loadMapApi, locationQuery, logToCsv, logValueArray, logsKey, lollipopChartPlugin, lookupUrl, mapFilterData, mapsUrl, markerIcon, markerPie, matchAggregatedQuery, matchAggregatedValidatedQuery, matchBoolPrefixQuery, matchCountry, matchExactQuery, matchGlobalRegion, matchId, matchNameNormalized, matchNestedKey, matchPhrasePrefixQuery, matchPhraseQuery, matchPrimaryProductQuery, matchQuery, matchRegex, matchRegion, matchTermType, matchType, maxAreaSize, measurementValue, mergeDataWithHeaders, methodTierOrder, migrationErrorMessage, migrationsUrl, modelCount, modelKeyParams, modelParams, models, multiMatchQuery, nestedProperty, nestingEnabled, nestingTypeEnabled, noValue, nodeAvailableProperties, nodeById, nodeColours, nodeDataState, nodeDataStates, nodeDataVersion, nodeId, nodeIdWithoutDataVersion, nodeIds, nodeLink, nodeLinkEnabled, nodeLinkTypeEnabled, nodeLogsUrl, nodeQualityScoreColor, nodeQualityScoreLevel, nodeQualityScoreMaxDefault, nodeQualityScoreOrder, nodeRequestId, nodeSecondaryColours, nodeToAggregationFilename, nodeType, nodeTypeDataState, nodeTypeIcon, nodeTypeIconSchema, nodeUrl, nodeUrlParams, nodeVersion, nodeVersionKey, nodesByState, nodesByType, numberGte, optionsFromGroup, parentKey, parentProperty, parseColor, parseData, parseDataPath, parseLines, parseMessage, parseNewValue, pluralize, pointToCoordinates, polygonBounds, polygonToCoordinates, polygonToMap, polygonsFromFeature, populateWithTrackIdsFilterData, postGuideEvent, primaryProduct, productsQuery, propertyError, propertyId, recursiveProperties, refToSchemaType, refreshPropertyKeys, regionsQuery, registerChart, repeat, reportIssueLink, reportIssueUrl, safeJSONParse, safeJSONStringify, schemaBaseUrl, schemaDataBaseUrl, schemaLink, schemaRequiredProperties, schemaTypeToDefaultValue, scrollToEl, scrollTop, searchFilterData, searchableTypes, siblingProperty, simplifyContributions, singleProperty, siteTooBig, siteTypeToColor, siteTypeToIcon, sortProperties, sortedDates, strokeColor, strokeStyle, subValueKeys, suggestMatchQuery, suggestQuery, sumValues, takeAfterViewInit, termLocation, termLocationName, termProperties, termTypeLabel, toSnakeCase, toTextParts, toThousands, typeToNewProperty, typeaheadFocus, uncapitalize, uniqueDatesBetween, updateProperties, valueLink, valueToString, valueTypeToDefault, valueValue, waitFor, wildcardQuery };
|
|
6409
|
+
export { ARRAY_DELIMITER, ApplyPurePipe, BarChartComponent, BibliographiesSearchConfirmComponent, BlankNodeStateComponent, BlankNodeStateNoticeComponent, BlankNodeValueDeltaComponent, CapitalizePipe, ChartComponent, ChartConfigurationDirective, ChartExportButtonComponent, ChartTooltipComponent, ClickOutsideDirective, ClipboardComponent, CollapsibleBlockComponent, CollapsibleBoxComponent, CollapsibleBoxStyle, ColorPalette, CompoundDirective, CompoundPipe, ContributionChartComponent, ControlValueAccessor, CycleNodesKeyGroup, CyclesCompletenessComponent, CyclesEmissionsCategoryService, CyclesEmissionsChartComponent, CyclesFunctionalUnitMeasureComponent, CyclesMetadataComponent, CyclesNodesComponent, CyclesNodesTimelineComponent, CyclesResultComponent, DataTableComponent, DefaultPipe, DeltaColour, DistributionChartComponent, DrawerContainerComponent, DurationPipe, EllipsisPipe, EngineModelsLinkComponent, EngineModelsLookupInfoComponent, EngineModelsStageComponent, EngineModelsStageDeepComponent, EngineModelsStageDeepService, EngineModelsVersionInfoComponent, EngineModelsVersionLinkComponent, EngineOrchestratorEditComponent, EngineRequirementsFormComponent, FileSizePipe, FileUploadErrorKeys, FilesDragDropDirective, FilesDropZoneComponent, FilesErrorSummaryComponent, FilesFormComponent, FilesFormEditableComponent, FilesUploadErrorsComponent, FilterAccordionComponent, FormulaBlockComponent, GUIDE_ENABLED, GetPipe, GlossaryMigrationFormat, GuideOverlayComponent, HE_API_BASE_URL, HE_CALCULATIONS_BASE_URL, HE_MAP_LOADED, HeAuthService, HeCommonService, HeEngineService, HeGlossaryService, HeMendeleyService, HeNodeCsvService, HeNodeService, HeNodeStoreService, HeSchemaService, HeSearchService, HeToastService, HorizontalBarChartComponent, HorizontalButtonsGroupComponent, ImpactAssessmentsGraphComponent, ImpactAssessmentsIndicatorBreakdownChartComponent, ImpactAssessmentsIndicatorsChartComponent, ImpactAssessmentsProductsComponent, IsArrayPipe, IsObjectPipe, IssueConfirmComponent, KeyToLabelPipe, Level, LineChartComponent, LinkKeyValueComponent, LogStatus, LongPressDirective, MAX_RESULTS, MapsDrawingComponent, MapsDrawingConfirmComponent, MaxPipe, MeanPipe, MedianPipe, MendeleySearchResult, MinPipe, MobileShellComponent, NavigationMenuComponent, NoExtPipe, NodeAggregatedComponent, NodeAggregatedFormulasComponent, NodeAggregatedInfoComponent, NodeAggregatedQualityScoreComponent, NodeAggregationLogsComponent, NodeCsvExportConfirmComponent, NodeCsvPreviewComponent, NodeCsvSelectHeadersComponent, NodeIconComponent, NodeJLogModelsComponent, NodeJsonldComponent, NodeJsonldSchemaComponent, NodeKeyState, NodeLinkComponent, NodeLogsFileComponent, NodeLogsModelsComponent, NodeLogsTimeComponent, NodeMissingLookupFactorsComponent, NodeQualityScore, NodeRecommendationsComponent, NodeSelectComponent, NodeValueDetailsComponent, PipelineStagesProgressComponent, PluralizePipe, PopoverComponent, PopoverConfirmComponent, PrecisionPipe, RelatedNodeResult, RemoveMarkdownPipe, RepeatPipe, Repository, ResizedDirective, ResizedEvent, ResponsiveService, SchemaInfoComponent, SchemaVersionLinkComponent, SearchExtendComponent, ShelfDialogComponent, ShellComponent, SiteNodesKeyGroup, SitesManagementChartComponent, SitesMapsComponent, SitesNodesComponent, SkeletonTextComponent, SocialTagsComponent, SortByPipe, SortSelectComponent, SumPipe, TagsInputDirective, Template, TermsPropertyContentComponent, TermsSubClassOfContentComponent, TermsUnitsDescriptionComponent, ThousandSuffixesPipe, ThousandsPipe, TimesPipe, ToastComponent, UncapitalizePipe, addPolygonToFeature, afterBarDrawPlugin, allCountriesQuery, allGroups, allOptions, availableProperties, axisHoverPlugin, backgroundHoverPlugin, backgroundModelParams, baseApiUrl, baseUrl, bottom, buildSummary, bytesSize, calculateCycleDuration, calculateCycleDurationEnabled, calculateCycleStartDate, calculateCycleStartDateEnabled, capitalize, changelogUrl, clustererImage, code, colorToRgba, compoundToHtml, computeKeys, computeTerms, contactUsEmail, contactUsLink, convertToSvg, coordinatesToPoint, copyObject, countGroupVisibleNodes, countriesQuery, createMarker, cropsQuery, d3ellipse, d3wrap, dataPathLabel, dataPathToKey, dataVersionHeader, dataVersionHeaderKey, defaultFeature, defaultLabel, defaultSuggestionType, defaultTicksFont, definitionToSchemaType, distinctUntilChangedDeep, downloadFile, downloadPng, downloadSvg, ellipsis, engineGitBaseUrl, engineGitUrl, errorText, errorsLabel, evaluateSuccess, exportAsSVG, exportFormats, externalLink, externalNodeLink, fillColor, fillStyle, filterBlankNode, filterParams, findBackgroundModel, findConfigModels, findMatchingModel, findModels, findNodeModel, findOrchestratorModel, findProperty, findPropertyById, findTermModels, flatFilterData, flatFilterNode, formatCustomErrorMessage, formatDate, formatError, formatPropertyError, formatter, getColor, getDatesBetween, gitBranch, gitHome, glossaryBaseUrl, glossaryLink, groupBlankNodesByTermIdentity, groupChanged, groupDataByCategory, groupJLogByField, groupJLogByTerm, groupLogsByTerm, groupNodesByTerm, groupdLogsByKey, grouppedKeys, grouppedValueKeys, groupsLogsByFields, guideModelUrl, guideNamespace, handleAPIError, handleGuideEvent, hasError, hasValidationError, hasWarning, hexToRgba, ignoreKeys, increaseScaleLimits, initialFilterState, injectResizeEvent$, inputGroupsTermTypes, isAddPropertyEnabled, isChrome, isDateBetween, isEqual, isExternal, isIdenticalNodeValue, isKeyClosedVisible, isKeyHidden, isMaxStage, isMethodModelAllowed, isNonNodeModelKey, isSchemaIri, isScrolledBelow, isState, isTermTypeAllowed, isValidKey, jLogModelCount, keyToDataPath, levels, listColor, listColorContinuous, listColorWithAlpha, loadMapApi, locationQuery, logToCsv, logValueArray, logsKey, lollipopChartPlugin, lookupUrl, mapFilterData, mapsUrl, markerIcon, markerPie, matchAggregatedQuery, matchAggregatedValidatedQuery, matchBoolPrefixQuery, matchCountry, matchExactQuery, matchGlobalRegion, matchId, matchNameNormalized, matchNestedKey, matchPhrasePrefixQuery, matchPhraseQuery, matchPrimaryProductQuery, matchQuery, matchRegex, matchRegion, matchTermType, matchType, maxAreaSize, measurementValue, mergeDataWithHeaders, methodTierOrder, migrationErrorMessage, migrationsUrl, modelCount, modelKeyParams, modelParams, models, multiMatchQuery, nestedProperty, nestingEnabled, nestingTypeEnabled, noValue, nodeAvailableProperties, nodeById, nodeColours, nodeDataState, nodeDataStates, nodeDataVersion, nodeId, nodeIdWithoutDataVersion, nodeIds, nodeLink, nodeLinkEnabled, nodeLinkTypeEnabled, nodeLogsUrl, nodeQualityScoreColor, nodeQualityScoreLevel, nodeQualityScoreMaxDefault, nodeQualityScoreOrder, nodeRequestId, nodeSecondaryColours, nodeToAggregationFilename, nodeType, nodeTypeDataState, nodeTypeIcon, nodeTypeIconSchema, nodeUrl, nodeUrlParams, nodeVersion, nodeVersionKey, nodesByState, nodesByType, numberGte, optionsFromGroup, parentKey, parentProperty, parseColor, parseData, parseDataPath, parseLines, parseMessage, parseNewValue, pluralize, pointToCoordinates, polygonBounds, polygonToCoordinates, polygonToMap, polygonsFromFeature, populateWithTrackIdsFilterData, postGuideEvent, primaryProduct, productsQuery, propertyError, propertyId, recursiveProperties, refToSchemaType, refreshPropertyKeys, regionsQuery, registerChart, repeat, reportIssueLink, reportIssueUrl, safeJSONParse, safeJSONStringify, schemaBaseUrl, schemaDataBaseUrl, schemaLink, schemaRequiredProperties, schemaTypeToDefaultValue, scrollToEl, scrollTop, searchFilterData, searchableTypes, siblingProperty, simplifyContributions, singleProperty, siteTooBig, siteTypeToColor, siteTypeToIcon, sortProperties, sortedDates, strokeColor, strokeStyle, subValueKeys, suggestMatchQuery, suggestQuery, sumValues, takeAfterViewInit, termLocation, termLocationName, termProperties, termTypeLabel, toSnakeCase, toTextParts, toThousands, typeToNewProperty, typeaheadFocus, uncapitalize, uniqueDatesBetween, updateProperties, valueLink, valueToString, valueTypeToDefault, valueValue, waitFor, wildcardQuery };
|
|
6378
6410
|
export type { AfterBarDrawSettings, AxisHoverSettings, BarChartDataItem, ButtonGroupItem, ChartExportMetadata, ContributionChartDataItem, ContributionTooltipData, FilterData, FilterElement, FilterFn, FilterGroup, FilterOption, FilterState, HistogramChartDataItem, IBlankNodeIdentityGroup, IBlankNodeIdentityRow, IBlankNodeLog, IBlankNodeLogSubValue, ICalculationsModel, ICalculationsModelsParams, ICalculationsRequirementsParams, IChartExportFormat, ICloseMessage, IConfigModel, IContributionCategory, ICustomValidationRules, ICycleJSONLDExtended, IEmissionCategory, IErrorProperty, IFeature, IFeatureCollection, IFileUploadError, IFilesDropped, IFormulaTextPart, IFormulaVariable, IGeometryCollection, IGlossaryMigration, IGlossaryMigrations, IGroupedKeys, IGroupedNode, IGroupedNodes, IGroupedNodesValue, IGroupedNodesValues, IIdentityScalar, IIdentitySegment, IImpactAssessmentJSONLDExtended, IIssueParams, IJLogBlankNode, IJLogModelColumn, IJLogModelRun, IJLogTermGroup, IJSONData, IJSONNode, ILine, ILog, IMarker, IMessage, IMobileShellMenuButton, INavigationMenuLink, INewProperty, INodeContributions, INodeErrorLog, INodeHeaders, INodeLogs, INodeMissingLookupLog, INodeProperty, INodeRequestParams, INodeTermLog, INodeTermLogs, INonBlankNodeLog, IPolygonMap, IRelatedNode, IRenderedFormula, ISearchParams, ISearchResultExtended, ISearchResults, IShellMenuButton, ISiteJSONLDExtended, IStoredNode, ISummary, ISummaryError, IToast, IValidationError, LollipopPluginSettings, RgbColor, SelectValue, SortOption, SortSelectEvent, SortSelectOrder, blankNodesTypeValue, chartExportFn, chartTooltipContentFn, contributions, feature, horizontalTooltipData, modelKey, nodeContributionsSimplified, nodes, nonBlankNodesTypeValue, searchResult, searchableType, sortOrders, suggestionType, validationErrorKeyword, validationErrorLevel, validationErrorParam };
|
package/file-errors/README.md
DELETED
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
# `@hestia-earth/ui-components/file-errors`
|
|
2
|
-
|
|
3
|
-
Framework-agnostic formatting of HESTIA file validation errors. No Angular, no Bulma, no
|
|
4
|
-
`window` dependency — import it from any TypeScript package (browser, Node, SSR).
|
|
5
|
-
|
|
6
|
-
The error catalog is the single source of truth shared with the Angular UI; only the
|
|
7
|
-
presentation differs (a pluggable renderer).
|
|
8
|
-
|
|
9
|
-
## Install
|
|
10
|
-
|
|
11
|
-
```ts
|
|
12
|
-
import { formatErrors } from '@hestia-earth/ui-components/file-errors';
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## Basic usage — structured plain text
|
|
16
|
-
|
|
17
|
-
`formatErrors` takes the raw validation errors and returns one structured object per
|
|
18
|
-
visible error (errors that resolve to an empty message are dropped).
|
|
19
|
-
|
|
20
|
-
```ts
|
|
21
|
-
import { formatErrors } from '@hestia-earth/ui-components/file-errors';
|
|
22
|
-
|
|
23
|
-
const errors = [
|
|
24
|
-
{
|
|
25
|
-
dataPath: '.functionalUnit',
|
|
26
|
-
keyword: 'enum',
|
|
27
|
-
message: 'should be equal to one of the allowed values',
|
|
28
|
-
params: { allowedValues: ['1 ha', 'relative'] }
|
|
29
|
-
}
|
|
30
|
-
];
|
|
31
|
-
|
|
32
|
-
formatErrors(errors);
|
|
33
|
-
// [
|
|
34
|
-
// {
|
|
35
|
-
// level: 'error',
|
|
36
|
-
// message: 'Only the following values are permitted: `1 ha`, `relative`.',
|
|
37
|
-
// location: '`functionalUnit`',
|
|
38
|
-
// dataPath: '.functionalUnit',
|
|
39
|
-
// keyword: 'enum'
|
|
40
|
-
// }
|
|
41
|
-
// ]
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
Each item is an `IFormattedError`:
|
|
45
|
-
|
|
46
|
-
```ts
|
|
47
|
-
interface IFormattedError {
|
|
48
|
-
level: 'error' | 'warning';
|
|
49
|
-
message: string; // plain text; code spans as `backticks`, links as [text](url), lists as bullets
|
|
50
|
-
location?: string; // human-readable path, e.g. "Cycle › Practice"
|
|
51
|
-
dataPath?: string;
|
|
52
|
-
keyword?: string;
|
|
53
|
-
}
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
## Rendering as HTML (or anything else)
|
|
57
|
-
|
|
58
|
-
Pass a renderer. `htmlRenderer` produces the same Bulma-classed markup the platform UI uses;
|
|
59
|
-
`textRenderer` (the default) produces plain text / lightweight markdown. You can also supply
|
|
60
|
-
your own `IErrorRenderer`.
|
|
61
|
-
|
|
62
|
-
```ts
|
|
63
|
-
import { formatErrors, htmlRenderer } from '@hestia-earth/ui-components/file-errors';
|
|
64
|
-
|
|
65
|
-
formatErrors(errors, { renderer: htmlRenderer });
|
|
66
|
-
// message: '<p class="is-normal">Only the following values are permitted: <code>1 ha</code>, <code>relative</code>.</p>'
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Custom link URLs
|
|
70
|
-
|
|
71
|
-
Links default to `https://www.hestia.earth`. Override the base (or each URL) via `urls`:
|
|
72
|
-
|
|
73
|
-
```ts
|
|
74
|
-
import { formatErrors, urlConfig } from '@hestia-earth/ui-components/file-errors';
|
|
75
|
-
|
|
76
|
-
formatErrors(errors, { urls: urlConfig('https://www.hestia.earth') });
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
## Lower-level: build a reusable formatter
|
|
80
|
-
|
|
81
|
-
`formatErrors` builds a formatter on every call. To reuse one (e.g. format errors one at a
|
|
82
|
-
time, or reach the individual functions), use `createErrorFormatter`:
|
|
83
|
-
|
|
84
|
-
```ts
|
|
85
|
-
import { createErrorFormatter, textRenderer, defaultUrlConfig } from '@hestia-earth/ui-components/file-errors';
|
|
86
|
-
|
|
87
|
-
const { formatError, formatErrors, formatCustomErrorMessage, parseDataPath, dataPathLabel } = createErrorFormatter({
|
|
88
|
-
renderer: textRenderer,
|
|
89
|
-
urls: defaultUrlConfig
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
formatError(errors[0]); // single IValidationError -> { level, message, ...error }
|
|
93
|
-
formatCustomErrorMessage(errors[0].message, errors[0]); // just the message string
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
## Helpers
|
|
97
|
-
|
|
98
|
-
Pure, renderer-independent predicates are exported too:
|
|
99
|
-
|
|
100
|
-
```ts
|
|
101
|
-
import {
|
|
102
|
-
errorHasError,
|
|
103
|
-
errorHasWarning,
|
|
104
|
-
isMigrationError,
|
|
105
|
-
isMissingPropertyError,
|
|
106
|
-
isMissingOneOfError,
|
|
107
|
-
filterError,
|
|
108
|
-
missingNodeErrors,
|
|
109
|
-
guidePageId
|
|
110
|
-
} from '@hestia-earth/ui-components/file-errors';
|
|
111
|
-
|
|
112
|
-
const blocking = errors.filter(errorHasError);
|
|
113
|
-
const warnings = errors.filter(errorHasWarning);
|
|
114
|
-
```
|