@hestia-earth/ui-components 0.43.10 → 0.43.12

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hestia-earth/ui-components",
3
- "version": "0.43.10",
3
+ "version": "0.43.12",
4
4
  "description": "HESTIA reusable components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -57,7 +57,7 @@ declare const urlConfig: (baseUrl?: string) => IUrlConfig;
57
57
  * primary entry point). They are kept structurally compatible on purpose.
58
58
  */
59
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' | 'defaultSource' | 'source' | 'group' | 'message' | 'distance' | 'siteType' | 'products' | 'units' | 'duplicatedIndexes' | 'invalidCoordinates' | 'ids' | 'limit' | 'delta';
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
61
  type validationErrorKeyword = 'required' | 'type' | 'if' | 'then' | 'not';
62
62
  interface ICustomValidationRules {
63
63
  const?: any;
@@ -10,6 +10,8 @@ import * as rxjs from 'rxjs';
10
10
  import { Observable, ReplaySubject } from 'rxjs';
11
11
  import { PlacementArray } from '@ng-bootstrap/ng-bootstrap';
12
12
  import * as node_modules_chart_js_dist_types_basic from 'node_modules/chart.js/dist/types/basic';
13
+ import * as chartjs_plugin_annotation from 'chartjs-plugin-annotation';
14
+ import { AnnotationOptions } from 'chartjs-plugin-annotation';
13
15
  import * as node_modules_chart_js_dist_types_utils from 'node_modules/chart.js/dist/types/utils';
14
16
  import { Selection } from 'd3-selection';
15
17
  import { HttpClient, HttpHeaders } from '@angular/common/http';
@@ -34,7 +36,6 @@ import * as _angular_cdk_overlay from '@angular/cdk/overlay';
34
36
  import { ConnectedPosition } from '@angular/cdk/overlay';
35
37
  import { ResizeEvent } from 'angular-resizable-element';
36
38
  import { IFormula } from '@hestia-earth/aggregation-engine';
37
- import * as chartjs_plugin_annotation from 'chartjs-plugin-annotation';
38
39
  export * from '@hestia-earth/ui-components/katex';
39
40
 
40
41
  declare class HeAuthService {
@@ -661,42 +662,46 @@ declare class DistributionChartComponent {
661
662
  */
662
663
  protected readonly maxPercentile: _angular_core.InputSignal<number>;
663
664
  protected readonly config: _angular_core.InputSignal<Partial<ChartConfiguration<keyof chart_js.ChartTypeRegistry, (number | [number, number] | chart_js.Point | chart_js.BubbleDataPoint)[], unknown>>>;
665
+ /**
666
+ * Parametric mode: the mean of the distribution. Set `mu` and `sd` to plot the normal curve
667
+ * instead of binning `distribution` into a histogram — used where only the parameters are known
668
+ * and there are no samples to bin.
669
+ */
670
+ protected readonly mu: _angular_core.InputSignal<number>;
671
+ /**
672
+ * Parametric mode: the standard deviation of the distribution. See `mu`.
673
+ */
674
+ protected readonly sd: _angular_core.InputSignal<number>;
675
+ /**
676
+ * Parametric mode: lower bound of the confidence interval to shade.
677
+ */
678
+ protected readonly intervalMin: _angular_core.InputSignal<number>;
679
+ /**
680
+ * Parametric mode: upper bound of the confidence interval to shade.
681
+ */
682
+ protected readonly intervalMax: _angular_core.InputSignal<number>;
683
+ /**
684
+ * Parametric mode: floor for the drawn range, for a quantity that cannot go below it — pass `0`
685
+ * for a physical amount. Left unset the curve is drawn symmetrically about `mu`.
686
+ */
687
+ protected readonly minX: _angular_core.InputSignal<number>;
688
+ /**
689
+ * `sd` must be strictly positive: a zero or negative deviation makes the PDF a division by zero.
690
+ */
691
+ private readonly parametric;
692
+ private readonly curve;
664
693
  private readonly maxPercentileValue;
665
694
  private readonly groupedData;
666
695
  private readonly singlePoint;
667
696
  private readonly defaultConfig;
668
- protected readonly dataConfig: _angular_core.Signal<{
669
- datasets: ({
670
- label: string;
671
- data: any[];
672
- backgroundColor: string;
673
- borderColor: string;
674
- borderWidth: number;
675
- type: "bar";
676
- fill?: undefined;
677
- pointRadius?: undefined;
678
- } | {
679
- label: string;
680
- data: any[];
681
- backgroundColor: string;
682
- borderColor: string;
683
- borderWidth: number;
684
- fill: false;
685
- pointRadius: number;
686
- type: "line";
687
- } | {
688
- label: string;
689
- data: number[];
690
- fill: false;
691
- borderColor: string;
692
- backgroundColor: string;
693
- pointRadius: number;
694
- showLine: false;
695
- type: "line";
696
- tension: number;
697
- })[];
698
- labels: any[];
699
- }>;
697
+ /**
698
+ * The x axis is `linear` here, not the category axis the histogram uses: the curve is `{x, y}`
699
+ * points, and the annotations position the interval and the marker at real x values.
700
+ */
701
+ private readonly parametricConfig;
702
+ private readonly histogramData;
703
+ private readonly parametricData;
704
+ protected readonly dataConfig: _angular_core.Signal<ChartData<"line" | "bar", (number | [number, number] | chart_js.Point)[], unknown>>;
700
705
  protected readonly configuration: _angular_core.Signal<Readonly<{
701
706
  type: "line";
702
707
  options: {
@@ -725,7 +730,7 @@ declare class DistributionChartComponent {
725
730
  };
726
731
  };
727
732
  };
728
- }> & {
733
+ }> & (({
729
734
  options: {
730
735
  scales: {
731
736
  x: {
@@ -758,9 +763,47 @@ declare class DistributionChartComponent {
758
763
  };
759
764
  };
760
765
  };
761
- } & Partial<ChartConfiguration<keyof chart_js.ChartTypeRegistry, (number | [number, number] | chart_js.Point | chart_js.BubbleDataPoint)[], unknown>>>;
766
+ } | {
767
+ options: {
768
+ plugins: {
769
+ annotation: {
770
+ annotations: Record<string, AnnotationOptions>;
771
+ };
772
+ };
773
+ scales: {
774
+ x: {
775
+ type: "linear";
776
+ display: true;
777
+ ticks: {
778
+ font: {
779
+ family: string;
780
+ size: number;
781
+ weight: number;
782
+ };
783
+ color: string;
784
+ callback: (this: chart_js.Scale, value: string | number) => string;
785
+ };
786
+ title: {
787
+ display: true;
788
+ text: string;
789
+ };
790
+ };
791
+ y: {
792
+ ticks: {
793
+ display: false;
794
+ };
795
+ grid: {
796
+ display: false;
797
+ };
798
+ title: {
799
+ display: false;
800
+ };
801
+ };
802
+ };
803
+ };
804
+ }) & Partial<ChartConfiguration<keyof chart_js.ChartTypeRegistry, (number | [number, number] | chart_js.Point | chart_js.BubbleDataPoint)[], unknown>>)>;
762
805
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DistributionChartComponent, never>;
763
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DistributionChartComponent, "he-distribution-chart", ["distributionChart"], { "distribution": { "alias": "distribution"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "nbBins": { "alias": "nbBins"; "required": false; "isSignal": true; }; "maxPercentile": { "alias": "maxPercentile"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
806
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DistributionChartComponent, "he-distribution-chart", ["distributionChart"], { "distribution": { "alias": "distribution"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "nbBins": { "alias": "nbBins"; "required": false; "isSignal": true; }; "maxPercentile": { "alias": "maxPercentile"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "mu": { "alias": "mu"; "required": false; "isSignal": true; }; "sd": { "alias": "sd"; "required": false; "isSignal": true; }; "intervalMin": { "alias": "intervalMin"; "required": false; "isSignal": true; }; "intervalMax": { "alias": "intervalMax"; "required": false; "isSignal": true; }; "minX": { "alias": "minX"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
764
807
  }
765
808
 
766
809
  declare class LineChartComponent {
@@ -3086,7 +3129,7 @@ declare const formatCustomErrorMessage: typeof formatter$1.formatCustomErrorMess
3086
3129
  declare const formatError: typeof formatter$1.formatError;
3087
3130
 
3088
3131
  type validationErrorLevel = 'error' | 'warning';
3089
- type validationErrorParam = 'missingProperty' | 'type' | 'term' | 'termType' | 'termIds' | 'model' | 'product' | 'range' | 'node' | 'allowedValues' | 'allowedValue' | 'additionalProperty' | 'expected' | 'default' | 'current' | 'percentage' | 'keys' | 'threshold' | 'outliers' | 'country' | 'min' | 'max' | 'defaultSource' | 'source' | 'group' | 'message' | 'distance' | 'siteType' | 'products' | 'units' | 'duplicatedIndexes' | 'invalidCoordinates' | 'ids' | 'limit' | 'delta';
3132
+ 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';
3090
3133
  type validationErrorKeyword = 'required' | 'type' | 'if' | 'then' | 'not';
3091
3134
  interface ICustomValidationRules {
3092
3135
  const?: any;
@@ -3683,6 +3726,11 @@ interface IFormulaVariable {
3683
3726
  * constant or a quantity that is deliberately not stored - those are not "missing".
3684
3727
  */
3685
3728
  missing?: boolean;
3729
+ /**
3730
+ * Why the symbol stayed symbolic, when there is more to say than "missing" - e.g. the values it
3731
+ * reads from were counted rather than listed one by one. Shown in place of the missing flag.
3732
+ */
3733
+ note?: string;
3686
3734
  }
3687
3735
  /**
3688
3736
  * A formula ready to display: the KaTeX source to render, and the variables shown beneath it.
@@ -3713,6 +3761,30 @@ interface IFormulaTextPart {
3713
3761
  */
3714
3762
  declare const toTextParts: (value?: string) => IFormulaTextPart[];
3715
3763
 
3764
+ /**
3765
+ * A titled block that can be folded away, with room for a control beside its heading.
3766
+ *
3767
+ * Presentation only: it holds no opinion on what it contains, so several of them stacked read as
3768
+ * one document a reader can collapse section by section.
3769
+ */
3770
+ declare class CollapsibleBlockComponent {
3771
+ /**
3772
+ * The label above the content.
3773
+ */
3774
+ readonly heading: _angular_core.InputSignal<string>;
3775
+ /**
3776
+ * Whether the block can be folded away. Turn it off and it renders as a plain titled block.
3777
+ */
3778
+ readonly collapsible: _angular_core.InputSignal<boolean>;
3779
+ /**
3780
+ * Whether the content is shown. Two-way, so the caller can fold a block from outside.
3781
+ */
3782
+ readonly open: _angular_core.ModelSignal<boolean>;
3783
+ protected toggle(): void;
3784
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CollapsibleBlockComponent, never>;
3785
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CollapsibleBlockComponent, "he-collapsible-block", never, { "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, never, ["[blockActions]", "*"], true, never>;
3786
+ }
3787
+
3716
3788
  /**
3717
3789
  * Displays a set of formulas with the variables documented under them, and a switch between the
3718
3790
  * symbolic and the substituted view.
@@ -3749,10 +3821,19 @@ declare class FormulaBlockComponent {
3749
3821
  * several blocks: they share one state, so repeating the switch only repeats the same control.
3750
3822
  */
3751
3823
  readonly showToggle: _angular_core.InputSignal<boolean>;
3824
+ /**
3825
+ * Whether the block can be folded away, so a reader can put aside the part they are not reading.
3826
+ */
3827
+ readonly collapsible: _angular_core.InputSignal<boolean>;
3828
+ /**
3829
+ * Whether the block is unfolded. Two-way, so the caller can fold it from outside.
3830
+ */
3831
+ readonly open: _angular_core.ModelSignal<boolean>;
3752
3832
  /**
3753
3833
  * Whether the substituted view is shown. Two-way, so the caller can render accordingly.
3754
3834
  */
3755
3835
  readonly substituted: _angular_core.ModelSignal<boolean>;
3836
+ protected readonly blockHeading: _angular_core.Signal<string>;
3756
3837
  protected readonly toggleId: string;
3757
3838
  /**
3758
3839
  * The formulas with their documentation text split into plain runs and inline math, and the
@@ -3767,13 +3848,14 @@ declare class FormulaBlockComponent {
3767
3848
  symbol: string;
3768
3849
  description?: string;
3769
3850
  missing?: boolean;
3851
+ note?: string;
3770
3852
  }[];
3771
3853
  rendered: string;
3772
3854
  context?: string;
3773
3855
  }[]>;
3774
3856
  protected toggle(): void;
3775
3857
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormulaBlockComponent, never>;
3776
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormulaBlockComponent, "he-formula-block", never, { "formulas": { "alias": "formulas"; "required": false; "isSignal": true; }; "hasSubstitutions": { "alias": "hasSubstitutions"; "required": false; "isSignal": true; }; "emptyTitle": { "alias": "emptyTitle"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "note": { "alias": "note"; "required": false; "isSignal": true; }; "showToggle": { "alias": "showToggle"; "required": false; "isSignal": true; }; "substituted": { "alias": "substituted"; "required": false; "isSignal": true; }; }, { "substituted": "substitutedChange"; }, never, never, true, never>;
3858
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormulaBlockComponent, "he-formula-block", never, { "formulas": { "alias": "formulas"; "required": false; "isSignal": true; }; "hasSubstitutions": { "alias": "hasSubstitutions"; "required": false; "isSignal": true; }; "emptyTitle": { "alias": "emptyTitle"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "note": { "alias": "note"; "required": false; "isSignal": true; }; "showToggle": { "alias": "showToggle"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "substituted": { "alias": "substituted"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "substituted": "substitutedChange"; }, never, never, true, never>;
3777
3859
  }
3778
3860
 
3779
3861
  declare const GUIDE_ENABLED: InjectionToken<boolean>;
@@ -5082,6 +5164,20 @@ declare class NodeAggregatedInfoComponent {
5082
5164
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<NodeAggregatedInfoComponent, "he-node-aggregated-info", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "showSource": { "alias": "showSource"; "required": false; "isSignal": true; }; "showSites": { "alias": "showSites"; "required": false; "isSignal": true; }; "triggers": { "alias": "triggers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5083
5165
  }
5084
5166
 
5167
+ /**
5168
+ * What a rule computes: the aggregated value, or one of the weights the values are combined by.
5169
+ */
5170
+ type IFormulaGroup = 'value' | 'weights';
5171
+ /**
5172
+ * One column of the contributors table, named by the symbol the formula reads it with, so the
5173
+ * table and the formula above it use the same names.
5174
+ */
5175
+ interface IContributorColumn {
5176
+ symbol: string;
5177
+ description?: string;
5178
+ column: string;
5179
+ }
5180
+
5085
5181
  declare class NodeAggregatedFormulasComponent {
5086
5182
  /**
5087
5183
  * The `termType` of the aggregation's primary product, which selects the product-specific page.
@@ -5110,6 +5206,12 @@ declare class NodeAggregatedFormulasComponent {
5110
5206
  * is not part of how its values were produced.
5111
5207
  */
5112
5208
  readonly worldAggregation: _angular_core.InputSignal<boolean>;
5209
+ /**
5210
+ * Whether the Cycle is one of the sub-aggregations an aggregation is combined from, in which case
5211
+ * the sub-system weighting is one of the stages that produced its values. Defaults to showing the
5212
+ * stage, so a caller that cannot tell keeps the rule documented.
5213
+ */
5214
+ readonly subAggregation: _angular_core.InputSignal<boolean>;
5113
5215
  protected readonly substituted: _angular_core.ModelSignal<boolean>;
5114
5216
  /**
5115
5217
  * The pages whose formulas are shown: the general rules, then the product-specific ones.
@@ -5129,16 +5231,32 @@ declare class NodeAggregatedFormulasComponent {
5129
5231
  private applies;
5130
5232
  protected readonly hasSubstitutions: _angular_core.Signal<boolean>;
5131
5233
  /**
5132
- * Each page with its formulas, rendered symbolically or with values substituted, and the
5133
- * variables documented under each. A variable with nothing to substitute is flagged, so the
5134
- * reader can tell a value that was not recorded from one that is genuinely absent.
5234
+ * The rules that produced this value, grouped by what each one computes.
5135
5235
  */
5136
5236
  protected readonly sections: _angular_core.Signal<{
5137
- formulas: IFormula[];
5237
+ id: IFormulaGroup;
5138
5238
  heading: string;
5139
- applies: string;
5140
- page: string;
5239
+ formulas: IFormula[];
5141
5240
  }[]>;
5241
+ /**
5242
+ * The values this one was combined from, as the aggregation recorded them: one row per Cycle or
5243
+ * sub-aggregation, under the symbols the formulas above read them with. Absent where the
5244
+ * contributors were too many to record, which is every aggregation built straight from source
5245
+ * Cycles - their number is shown instead.
5246
+ */
5247
+ protected readonly contributors: _angular_core.Signal<{
5248
+ rows: {
5249
+ node: {
5250
+ '@type': NodeType;
5251
+ '@id': string;
5252
+ };
5253
+ id: string;
5254
+ label: string;
5255
+ values: (string | undefined)[];
5256
+ }[];
5257
+ columns: IContributorColumn[];
5258
+ count?: number;
5259
+ }>;
5142
5260
  protected readonly renderedSections: _angular_core.Signal<{
5143
5261
  formulas: {
5144
5262
  rendered: string;
@@ -5148,14 +5266,14 @@ declare class NodeAggregatedFormulasComponent {
5148
5266
  symbol: string;
5149
5267
  description: string;
5150
5268
  missing: boolean;
5269
+ note: string;
5151
5270
  }[];
5152
5271
  }[];
5272
+ id: IFormulaGroup;
5153
5273
  heading: string;
5154
- applies: string;
5155
- page: string;
5156
5274
  }[]>;
5157
5275
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<NodeAggregatedFormulasComponent, never>;
5158
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<NodeAggregatedFormulasComponent, "he-node-aggregated-formulas", never, { "termType": { "alias": "termType"; "required": false; "isSignal": true; }; "termId": { "alias": "termId"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "values": { "alias": "values"; "required": false; "isSignal": true; }; "worldAggregation": { "alias": "worldAggregation"; "required": false; "isSignal": true; }; "substituted": { "alias": "substituted"; "required": false; "isSignal": true; }; }, { "substituted": "substitutedChange"; }, never, never, true, never>;
5276
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NodeAggregatedFormulasComponent, "he-node-aggregated-formulas", never, { "termType": { "alias": "termType"; "required": false; "isSignal": true; }; "termId": { "alias": "termId"; "required": false; "isSignal": true; }; "nodeKey": { "alias": "nodeKey"; "required": false; "isSignal": true; }; "values": { "alias": "values"; "required": false; "isSignal": true; }; "worldAggregation": { "alias": "worldAggregation"; "required": false; "isSignal": true; }; "subAggregation": { "alias": "subAggregation"; "required": false; "isSignal": true; }; "substituted": { "alias": "substituted"; "required": false; "isSignal": true; }; }, { "substituted": "substitutedChange"; }, never, never, true, never>;
5159
5277
  }
5160
5278
 
5161
5279
  interface IAggregationRow {
@@ -5214,6 +5332,15 @@ declare class NodeAggregationLogsComponent {
5214
5332
  private readonly jlogResource;
5215
5333
  private readonly jlog;
5216
5334
  private readonly scopedJlog;
5335
+ private readonly nodeValues;
5336
+ protected readonly subAggregation: _angular_core.Signal<boolean>;
5337
+ /**
5338
+ * The `.jlog` of every sub-aggregation this Cycle was combined from, for the country shares the
5339
+ * aggregation only records on them. Best effort: a reader without access to a sub-aggregation
5340
+ * gets nothing back, and those symbols stay symbolic - which is how they render today.
5341
+ */
5342
+ private readonly contributorsResource;
5343
+ private readonly sharedLookups;
5217
5344
  private readonly openGroups;
5218
5345
  /**
5219
5346
  * The aggregated data items, grouped by term exactly as the recalculation logs group them: several
@@ -5231,6 +5358,7 @@ declare class NodeAggregationLogsComponent {
5231
5358
  declare class NodeAggregatedQualityScoreComponent {
5232
5359
  private readonly searchService;
5233
5360
  private readonly nodeService;
5361
+ private readonly nodeLogsModelsService;
5234
5362
  protected get hidden(): boolean;
5235
5363
  protected readonly node: _angular_core.InputSignal<IImpactAssessmentJSONLD | ICycleJSONLD>;
5236
5364
  protected readonly country: _angular_core.InputSignal<Term | ITermJSONLD>;
@@ -5244,6 +5372,10 @@ declare class NodeAggregatedQualityScoreComponent {
5244
5372
  protected readonly countryName: _angular_core.Signal<string>;
5245
5373
  private readonly countryResource;
5246
5374
  private readonly countryId;
5375
+ private readonly jlogResource;
5376
+ private readonly jlogLogs;
5377
+ private readonly loadingJLog;
5378
+ private readonly useJLog;
5247
5379
  private readonly logsResource;
5248
5380
  protected readonly logs: _angular_core.Signal<any>;
5249
5381
  protected readonly validScores: _angular_core.Signal<{
@@ -5265,6 +5397,7 @@ declare class NodeAggregatedQualityScoreComponent {
5265
5397
  protected readonly isGlobal: _angular_core.Signal<any>;
5266
5398
  protected readonly schemaBaseUrl: _angular_core.Signal<string>;
5267
5399
  protected readonly schemaUrl: _angular_core.Signal<string>;
5400
+ protected readonly hasFaostatYield: _angular_core.Signal<boolean>;
5268
5401
  protected readonly hasProductionQuantity: _angular_core.Signal<boolean>;
5269
5402
  protected readonly regionProductionQuantity: _angular_core.Signal<number>;
5270
5403
  protected readonly countriesProductionQuantity: _angular_core.Signal<number>;
@@ -6136,6 +6269,7 @@ declare class SitesNodesComponent {
6136
6269
  source?: _hestia_earth_schema.Source;
6137
6270
  impactAssessment?: _hestia_earth_schema.ImpactAssessment;
6138
6271
  inputs?: _hestia_earth_schema.Input[];
6272
+ inputsCompleteness?: boolean;
6139
6273
  transport?: _hestia_earth_schema.Transport[];
6140
6274
  functionalArea?: number;
6141
6275
  schemaVersion?: string;
@@ -6209,5 +6343,5 @@ declare class TermsUnitsDescriptionComponent {
6209
6343
  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>;
6210
6344
  }
6211
6345
 
6212
- export { ARRAY_DELIMITER, ApplyPurePipe, BarChartComponent, BibliographiesSearchConfirmComponent, BlankNodeStateComponent, BlankNodeStateNoticeComponent, BlankNodeValueDeltaComponent, CapitalizePipe, ChartComponent, ChartConfigurationDirective, ChartExportButtonComponent, ChartTooltipComponent, ClickOutsideDirective, ClipboardComponent, 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, 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, findConfigModels, findMatchingModel, findModels, findNodeModel, findOrchestratorModel, findProperty, findPropertyById, flatFilterData, flatFilterNode, formatCustomErrorMessage, formatDate, formatError, formatPropertyError, formatter, getColor, getDatesBetween, gitBranch, gitHome, gitlabRawUrl, 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 };
6346
+ 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, 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, findConfigModels, findMatchingModel, findModels, findNodeModel, findOrchestratorModel, findProperty, findPropertyById, flatFilterData, flatFilterNode, formatCustomErrorMessage, formatDate, formatError, formatPropertyError, formatter, getColor, getDatesBetween, gitBranch, gitHome, gitlabRawUrl, 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 };
6213
6347
  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 };