@researchdatabox/sails-ng-common 0.0.1-beta.9604 → 0.0.1-beta.9700

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.
@@ -4,6 +4,7 @@ import { FormComponentDefinition } from '../form-component.model';
4
4
  import { FormConfigVisitorOutline } from '../visitor/base.outline';
5
5
  import { PublishDataLocationRefreshFieldComponentConfigOutline, PublishDataLocationRefreshFieldComponentDefinitionOutline, PublishDataLocationRefreshFormComponentDefinitionOutline } from './publish-data-location-refresh.outline';
6
6
  export declare class PublishDataLocationRefreshFieldComponentConfig extends FieldComponentConfig implements PublishDataLocationRefreshFieldComponentConfigOutline {
7
+ eventFieldId?: string;
7
8
  }
8
9
  /** Visitor-aware definition for the stateless refresh trigger component. */
9
10
  export declare class PublishDataLocationRefreshFieldComponentDefinition extends FieldComponentDefinition implements PublishDataLocationRefreshFieldComponentDefinitionOutline {
@@ -6,6 +6,7 @@ const form_component_model_1 = require("../form-component.model");
6
6
  const shared_outline_1 = require("../shared.outline");
7
7
  const publish_data_location_refresh_outline_1 = require("./publish-data-location-refresh.outline");
8
8
  class PublishDataLocationRefreshFieldComponentConfig extends field_component_model_1.FieldComponentConfig {
9
+ eventFieldId;
9
10
  }
10
11
  exports.PublishDataLocationRefreshFieldComponentConfig = PublishDataLocationRefreshFieldComponentConfig;
11
12
  /** Visitor-aware definition for the stateless refresh trigger component. */
@@ -48,4 +49,4 @@ exports.PublishDataLocationRefreshDefaults = {
48
49
  },
49
50
  },
50
51
  };
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXJlZnJlc2gubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9wdWJsaXNoLWRhdGEtbG9jYXRpb24tcmVmcmVzaC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxvRUFBMEY7QUFDMUYsa0VBQWtFO0FBQ2xFLHNEQUkyQjtBQUUzQixtR0FLaUQ7QUFFakQsTUFBYSw4Q0FDWCxTQUFRLDRDQUFvQjtDQUU1QjtBQUhGLHdHQUdFO0FBRUYsNEVBQTRFO0FBQzVFLE1BQWEsa0RBQ1gsU0FBUSxnREFBd0I7SUFHaEMsS0FBSyxHQUFHLCtFQUF1QyxDQUFDO0lBQ2hELE1BQU0sQ0FBeUQ7SUFFL0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUM1QyxNQUFNLE9BQU8sQ0FBQyx1REFBdUQsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5RSxDQUFDO0NBQ0Y7QUFWRCxnSEFVQztBQUVELE1BQWEsaURBQ1gsU0FBUSw4Q0FBdUI7SUFHL0IsU0FBUyxDQUE2RDtJQUN0RSxLQUFLLENBQVM7SUFDZCxNQUFNLENBQTBDO0lBRWhELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDNUMsTUFBTSxPQUFPLENBQUMsc0RBQXNELENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0UsQ0FBQztDQUNGO0FBWEQsOEdBV0M7QUFFWSxRQUFBLDZCQUE2QixHQUFHO0lBQzNDLEVBQUUsSUFBSSxFQUFFLHlDQUF3QixFQUFFLEdBQUcsRUFBRSw4Q0FBOEMsRUFBRTtJQUN2RjtRQUNFLElBQUksRUFBRSw2Q0FBNEI7UUFDbEMsR0FBRyxFQUFFLGtEQUFrRDtRQUN2RCxLQUFLLEVBQUUsK0VBQXVDO0tBQy9DO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsNENBQTJCO1FBQ2pDLEdBQUcsRUFBRSxpREFBaUQ7UUFDdEQsS0FBSyxFQUFFLCtFQUF1QztLQUMvQztDQUNPLENBQUM7QUFFWCw2RUFBNkU7QUFDN0UsMkVBQTJFO0FBQzlELFFBQUEsa0NBQWtDLEdBQUc7SUFDaEQsQ0FBQyw0Q0FBMkIsQ0FBQyxFQUFFO1FBQzdCLENBQUMsK0VBQXVDLENBQUMsRUFBRTtZQUN6QyxDQUFDLDZDQUE0QixDQUFDLEVBQUUsK0VBQXVDO1NBQ3hFO0tBQ0Y7Q0FDRixDQUFDIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXJlZnJlc2gubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9wdWJsaXNoLWRhdGEtbG9jYXRpb24tcmVmcmVzaC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxvRUFBMEY7QUFDMUYsa0VBQWtFO0FBQ2xFLHNEQUkyQjtBQUUzQixtR0FLaUQ7QUFFakQsTUFBYSw4Q0FDWCxTQUFRLDRDQUFvQjtJQUc1QixZQUFZLENBQVU7Q0FDdkI7QUFMRCx3R0FLQztBQUVELDRFQUE0RTtBQUM1RSxNQUFhLGtEQUNYLFNBQVEsZ0RBQXdCO0lBR2hDLEtBQUssR0FBRywrRUFBdUMsQ0FBQztJQUNoRCxNQUFNLENBQXlEO0lBRS9ELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDNUMsTUFBTSxPQUFPLENBQUMsdURBQXVELENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUUsQ0FBQztDQUNGO0FBVkQsZ0hBVUM7QUFFRCxNQUFhLGlEQUNYLFNBQVEsOENBQXVCO0lBRy9CLFNBQVMsQ0FBNkQ7SUFDdEUsS0FBSyxDQUFTO0lBQ2QsTUFBTSxDQUEwQztJQUVoRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQWlDO1FBQzVDLE1BQU0sT0FBTyxDQUFDLHNEQUFzRCxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdFLENBQUM7Q0FDRjtBQVhELDhHQVdDO0FBRVksUUFBQSw2QkFBNkIsR0FBRztJQUMzQyxFQUFFLElBQUksRUFBRSx5Q0FBd0IsRUFBRSxHQUFHLEVBQUUsOENBQThDLEVBQUU7SUFDdkY7UUFDRSxJQUFJLEVBQUUsNkNBQTRCO1FBQ2xDLEdBQUcsRUFBRSxrREFBa0Q7UUFDdkQsS0FBSyxFQUFFLCtFQUF1QztLQUMvQztJQUNEO1FBQ0UsSUFBSSxFQUFFLDRDQUEyQjtRQUNqQyxHQUFHLEVBQUUsaURBQWlEO1FBQ3RELEtBQUssRUFBRSwrRUFBdUM7S0FDL0M7Q0FDTyxDQUFDO0FBRVgsNkVBQTZFO0FBQzdFLDJFQUEyRTtBQUM5RCxRQUFBLGtDQUFrQyxHQUFHO0lBQ2hELENBQUMsNENBQTJCLENBQUMsRUFBRTtRQUM3QixDQUFDLCtFQUF1QyxDQUFDLEVBQUU7WUFDekMsQ0FBQyw2Q0FBNEIsQ0FBQyxFQUFFLCtFQUF1QztTQUN4RTtLQUNGO0NBQ0YsQ0FBQyJ9
@@ -5,6 +5,11 @@ import { FieldComponentConfigFrameKindType, FieldComponentConfigKindType, FieldC
5
5
  export declare const PublishDataLocationRefreshComponentName: "PublishDataLocationRefreshComponent";
6
6
  export type PublishDataLocationRefreshComponentNameType = typeof PublishDataLocationRefreshComponentName;
7
7
  export interface PublishDataLocationRefreshFieldComponentConfigFrame extends FieldComponentConfigFrame {
8
+ /**
9
+ * Optional explicit field id for emitted refresh events. When omitted, the
10
+ * component emits using its own resolved lineage path.
11
+ */
12
+ eventFieldId?: string;
8
13
  }
9
14
  export interface PublishDataLocationRefreshFieldComponentConfigOutline extends PublishDataLocationRefreshFieldComponentConfigFrame, FieldComponentConfigOutline {
10
15
  }
@@ -18,8 +18,12 @@ export declare class PublishDataLocationSelectorFieldComponentConfig extends Fie
18
18
  iscHeader: string;
19
19
  iscEnabled: boolean;
20
20
  notesEnabled: boolean;
21
- noLocationSelectedText: string;
22
- noLocationSelectedHelp: string;
21
+ metadataOnlyTitle: string;
22
+ metadataOnlyBody: string;
23
+ noLocationsAvailableTitle: string;
24
+ noLocationsAvailableBody: string;
25
+ selectionSummaryTemplate: string;
26
+ headerActions: never[];
23
27
  publicCheck: string;
24
28
  selectionCriteria: Record<string, string>[];
25
29
  dataTypes: DataLocationOption[];
@@ -19,8 +19,12 @@ class PublishDataLocationSelectorFieldComponentConfig extends field_component_mo
19
19
  iscHeader = "Information Security Classification";
20
20
  iscEnabled = false;
21
21
  notesEnabled = true;
22
- noLocationSelectedText = "Publish Metadata Only";
23
- noLocationSelectedHelp = "Publicise only metadata (or description)";
22
+ metadataOnlyTitle = "No data locations selected";
23
+ metadataOnlyBody = "Publicise only metadata (or description)";
24
+ noLocationsAvailableTitle = "No data locations available";
25
+ noLocationsAvailableBody = "";
26
+ selectionSummaryTemplate = "{{selected}} of {{total}} locations selected for publication";
27
+ headerActions = [];
24
28
  publicCheck = "public";
25
29
  selectionCriteria = [{ isc: "public", type: "attachment" }];
26
30
  dataTypes = [
@@ -97,4 +101,4 @@ exports.PublishDataLocationSelectorDefaults = {
97
101
  },
98
102
  },
99
103
  };
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy9jb21wb25lbnQvcHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUE4RTtBQUM5RSxrRUFBa0U7QUFFbEUsc0RBTTJCO0FBQzNCLG9FQUEwRjtBQUUxRixxR0FTa0Q7QUFHbEQsTUFBYSwrQ0FDWCxTQUFRLDRDQUFvQjtJQUc1QixPQUFPLEdBQXlDLEVBQUUsQ0FBQztJQUNuRCxtQkFBbUIsR0FBRyxNQUFNLENBQUM7SUFDN0IsY0FBYyxHQUFHLFlBQVksQ0FBQztJQUM5Qix5QkFBeUIsR0FBRyxRQUFRLENBQUM7SUFDckMsd0JBQXdCLEdBQUcsT0FBTyxDQUFDO0lBQ25DLG1CQUFtQixHQUFHLGNBQWMsQ0FBQztJQUNyQyxVQUFVLEdBQUcsTUFBTSxDQUFDO0lBQ3BCLGNBQWMsR0FBRyxVQUFVLENBQUM7SUFDNUIsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUN0QixTQUFTLEdBQUcscUNBQXFDLENBQUM7SUFDbEQsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLHNCQUFzQixHQUFHLHVCQUF1QixDQUFDO0lBQ2pELHNCQUFzQixHQUFHLDBDQUEwQyxDQUFDO0lBQ3BFLFdBQVcsR0FBRyxRQUFRLENBQUM7SUFDdkIsaUJBQWlCLEdBQTZCLENBQUMsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLFNBQVMsR0FBeUI7UUFDaEMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7UUFDOUIsRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtRQUNqRCxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtRQUNyQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtLQUM3QyxDQUFDO0lBQ0YsY0FBYyxHQUEyQjtRQUN2QyxHQUFHLEVBQUUsS0FBSztRQUNWLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsSUFBSSxFQUFFLFdBQVc7UUFDakIsVUFBVSxFQUFFLFlBQVk7S0FDekIsQ0FBQztDQUNIO0FBaENELDBHQWdDQztBQUVELE1BQWEsbURBQ1gsU0FBUSxnREFBd0I7SUFHaEMsS0FBSyxHQUFHLGlGQUF3QyxDQUFDO0lBQ2pELE1BQU0sQ0FBMEQ7SUFFaEUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUM1QyxNQUFNLE9BQU8sQ0FBQyx3REFBd0QsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRSxDQUFDO0NBQ0Y7QUFWRCxrSEFVQztBQUVELE1BQWEsMkNBQ1gsU0FBUSxvQ0FBbUQ7SUFHM0QsWUFBWSxDQUFvQztJQUVoRDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBVkQsa0dBVUM7QUFFRCxNQUFhLCtDQUNYLFNBQVEsd0NBQXVEO0lBRy9ELEtBQUssR0FBRyw2RUFBb0MsQ0FBQztJQUM3QyxNQUFNLENBQXNEO0lBRTVELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDNUMsTUFBTSxPQUFPLENBQUMsb0RBQW9ELENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0UsQ0FBQztDQUNGO0FBVkQsMEdBVUM7QUFFRCxNQUFhLGtEQUNYLFNBQVEsOENBQXVCO0lBR3hCLFNBQVMsQ0FBOEQ7SUFDdkUsS0FBSyxDQUEwRDtJQUMvRCxNQUFNLENBQTBDO0lBRXZELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDNUMsTUFBTSxPQUFPLENBQUMsdURBQXVELENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUUsQ0FBQztDQUNGO0FBWEQsZ0hBV0M7QUFFWSxRQUFBLDhCQUE4QixHQUFHO0lBQzVDLEVBQUUsSUFBSSxFQUFFLHlDQUF3QixFQUFFLEdBQUcsRUFBRSwrQ0FBK0MsRUFBRTtJQUN4RjtRQUNFLElBQUksRUFBRSw2Q0FBNEI7UUFDbEMsR0FBRyxFQUFFLG1EQUFtRDtRQUN4RCxLQUFLLEVBQUUsaUZBQXdDO0tBQ2hEO0lBQ0QsRUFBRSxJQUFJLEVBQUUscUNBQW9CLEVBQUUsR0FBRyxFQUFFLDJDQUEyQyxFQUFFO0lBQ2hGO1FBQ0UsSUFBSSxFQUFFLHlDQUF3QjtRQUM5QixHQUFHLEVBQUUsK0NBQStDO1FBQ3BELEtBQUssRUFBRSw2RUFBb0M7S0FDNUM7SUFDRDtRQUNFLElBQUksRUFBRSw0Q0FBMkI7UUFDakMsR0FBRyxFQUFFLGtEQUFrRDtRQUN2RCxLQUFLLEVBQUUsaUZBQXdDO0tBQ2hEO0NBQ08sQ0FBQztBQUVFLFFBQUEsbUNBQW1DLEdBQUc7SUFDakQsQ0FBQyw0Q0FBMkIsQ0FBQyxFQUFFO1FBQzdCLENBQUMsaUZBQXdDLENBQUMsRUFBRTtZQUMxQyxDQUFDLDZDQUE0QixDQUFDLEVBQUUsaUZBQXdDO1lBQ3hFLENBQUMseUNBQXdCLENBQUMsRUFBRSw2RUFBb0M7U0FDakU7S0FDRjtDQUNGLENBQUMifQ==
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy9jb21wb25lbnQvcHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUE4RTtBQUM5RSxrRUFBa0U7QUFFbEUsc0RBTTJCO0FBQzNCLG9FQUEwRjtBQUUxRixxR0FTa0Q7QUFHbEQsTUFBYSwrQ0FDWCxTQUFRLDRDQUFvQjtJQUU1QixPQUFPLEdBQXlDLEVBQUUsQ0FBQztJQUNuRCxtQkFBbUIsR0FBRyxNQUFNLENBQUM7SUFDN0IsY0FBYyxHQUFHLFlBQVksQ0FBQztJQUM5Qix5QkFBeUIsR0FBRyxRQUFRLENBQUM7SUFDckMsd0JBQXdCLEdBQUcsT0FBTyxDQUFDO0lBQ25DLG1CQUFtQixHQUFHLGNBQWMsQ0FBQztJQUNyQyxVQUFVLEdBQUcsTUFBTSxDQUFDO0lBQ3BCLGNBQWMsR0FBRyxVQUFVLENBQUM7SUFDNUIsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUN0QixTQUFTLEdBQUcscUNBQXFDLENBQUM7SUFDbEQsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLGlCQUFpQixHQUFHLDRCQUE0QixDQUFDO0lBQ2pELGdCQUFnQixHQUFHLDBDQUEwQyxDQUFDO0lBQzlELHlCQUF5QixHQUFHLDZCQUE2QixDQUFDO0lBQzFELHdCQUF3QixHQUFHLEVBQUUsQ0FBQztJQUM5Qix3QkFBd0IsR0FBRyw4REFBOEQsQ0FBQztJQUMxRixhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQ25CLFdBQVcsR0FBRyxRQUFRLENBQUM7SUFDdkIsaUJBQWlCLEdBQTZCLENBQUMsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLFNBQVMsR0FB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
@@ -2,7 +2,7 @@ import { FieldComponentConfigFrameKindType, FieldComponentConfigKindType, FieldC
2
2
  import { FieldComponentConfigFrame, FieldComponentConfigOutline, FieldComponentDefinitionFrame, FieldComponentDefinitionOutline } from "../field-component.outline";
3
3
  import { FieldModelConfigFrame, FieldModelConfigOutline, FieldModelDefinitionFrame, FieldModelDefinitionOutline } from "../field-model.outline";
4
4
  import { FormComponentDefinitionFrame, FormComponentDefinitionOutline } from "../form-component.outline";
5
- import { AvailableFieldLayoutDefinitionFrames, AvailableFieldLayoutDefinitionOutlines } from "../dictionary.outline";
5
+ import { AvailableFieldLayoutDefinitionFrames, AvailableFieldLayoutDefinitionOutlines, AvailableFormComponentDefinitionFrames, AvailableFormComponentDefinitionOutlines } from "../dictionary.outline";
6
6
  import { DataLocationAttachmentValue, DataLocationFileValue, DataLocationOption, DataLocationPhysicalValue, DataLocationUrlValue } from "./data-location.outline";
7
7
  export declare const PublishDataLocationSelectorComponentName: "PublishDataLocationSelectorComponent";
8
8
  export type PublishDataLocationSelectorComponentNameType = typeof PublishDataLocationSelectorComponentName;
@@ -27,14 +27,19 @@ export interface PublishDataLocationSelectorFieldComponentConfigFrame extends Fi
27
27
  iscHeader?: string;
28
28
  iscEnabled?: boolean;
29
29
  notesEnabled?: boolean;
30
- noLocationSelectedText?: string;
31
- noLocationSelectedHelp?: string;
30
+ metadataOnlyTitle?: string;
31
+ metadataOnlyBody?: string;
32
+ noLocationsAvailableTitle?: string;
33
+ noLocationsAvailableBody?: string;
34
+ selectionSummaryTemplate?: string;
35
+ headerActions?: AvailableFormComponentDefinitionFrames[];
32
36
  publicCheck?: string;
33
37
  selectionCriteria?: PublishDataLocationSelectionCriterion[];
34
38
  dataTypes?: DataLocationOption[];
35
39
  dataTypeLookup?: Record<string, string>;
36
40
  }
37
41
  export interface PublishDataLocationSelectorFieldComponentConfigOutline extends PublishDataLocationSelectorFieldComponentConfigFrame, FieldComponentConfigOutline {
42
+ headerActions?: AvailableFormComponentDefinitionOutlines[];
38
43
  }
39
44
  export interface PublishDataLocationSelectorFieldComponentDefinitionFrame extends FieldComponentDefinitionFrame {
40
45
  class: PublishDataLocationSelectorComponentNameType;
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PublishDataLocationSelectorModelName = exports.PublishDataLocationSelectorComponentName = void 0;
4
4
  exports.PublishDataLocationSelectorComponentName = "PublishDataLocationSelectorComponent";
5
5
  exports.PublishDataLocationSelectorModelName = "PublishDataLocationSelectorModel";
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm91dGxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9wdWJsaXNoLWRhdGEtbG9jYXRpb24tc2VsZWN0b3Iub3V0bGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFrQ2EsUUFBQSx3Q0FBd0MsR0FBRyxzQ0FBK0MsQ0FBQztBQUczRixRQUFBLG9DQUFvQyxHQUFHLGtDQUEyQyxDQUFDIn0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kYXRhLWxvY2F0aW9uLXNlbGVjdG9yLm91dGxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9wdWJsaXNoLWRhdGEtbG9jYXRpb24tc2VsZWN0b3Iub3V0bGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1Q2EsUUFBQSx3Q0FBd0MsR0FBRyxzQ0FBK0MsQ0FBQztBQUczRixRQUFBLG9DQUFvQyxHQUFHLGtDQUEyQyxDQUFDIn0=
@@ -8,6 +8,10 @@ export declare class SaveButtonFieldComponentConfig extends FieldComponentConfig
8
8
  forceSave?: boolean;
9
9
  labelSaving?: string;
10
10
  buttonCssClasses?: string;
11
+ enabledValidationGroups?: string[];
12
+ closeOnSave?: boolean;
13
+ redirectLocation?: string;
14
+ redirectDelaySeconds?: number;
11
15
  constructor();
12
16
  }
13
17
  export declare class SaveButtonFieldComponentDefinition extends FieldComponentDefinition implements SaveButtonFieldComponentDefinitionOutline {
@@ -11,6 +11,10 @@ class SaveButtonFieldComponentConfig extends field_component_model_1.FieldCompon
11
11
  forceSave;
12
12
  labelSaving;
13
13
  buttonCssClasses;
14
+ enabledValidationGroups;
15
+ closeOnSave;
16
+ redirectLocation;
17
+ redirectDelaySeconds;
14
18
  constructor() {
15
19
  super();
16
20
  }
@@ -52,4 +56,4 @@ exports.SaveButtonDefaults = {
52
56
  },
53
57
  },
54
58
  };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1idXR0b24ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9zYXZlLWJ1dHRvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvRUFBd0Y7QUFFeEYsa0VBQWlFO0FBRWpFLHNEQUkyQjtBQUMzQiwrREFJK0I7QUFHL0IsMkJBQTJCO0FBRTNCLE1BQWEsOEJBQStCLFNBQVEsNENBQW9CO0lBQ3BFLFVBQVUsQ0FBVTtJQUNwQixTQUFTLENBQVc7SUFDcEIsV0FBVyxDQUFVO0lBQ3JCLGdCQUFnQixDQUFVO0lBRTFCO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0NBQ0o7QUFURCx3RUFTQztBQUdELE1BQWEsa0NBQW1DLFNBQVEsZ0RBQXdCO0lBQzVFLEtBQUssR0FBRyw2Q0FBdUIsQ0FBQztJQUNoQyxNQUFNLENBQXlDO0lBRS9DO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUMxQyxNQUFNLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0o7QUFYRCxnRkFXQztBQUVELGdDQUFnQztBQUdoQyxNQUFhLGlDQUFrQyxTQUFRLDhDQUF1QjtJQUMxRSxTQUFTLENBQTZDO0lBQ3RELEtBQUssQ0FBUztJQUNkLE1BQU0sQ0FBMEM7SUFFaEQ7UUFDSSxLQUFLLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQWlDO1FBQzFDLE1BQU0sT0FBTyxDQUFDLHNDQUFzQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDSjtBQVpELDhFQVlDO0FBRVksUUFBQSxhQUFhLEdBQUc7SUFDekIsRUFBQyxJQUFJLEVBQUUseUNBQXdCLEVBQUUsR0FBRyxFQUFFLDhCQUE4QixFQUFDO0lBQ3JFLEVBQUMsSUFBSSxFQUFFLDZDQUE0QixFQUFFLEdBQUcsRUFBRSxrQ0FBa0MsRUFBRSxLQUFLLEVBQUUsNkNBQXVCLEVBQUM7SUFDN0csRUFBQyxJQUFJLEVBQUUsNENBQTJCLEVBQUUsR0FBRyxFQUFFLGlDQUFpQyxFQUFFLEtBQUssRUFBQyw2Q0FBdUIsRUFBQztDQUM3RyxDQUFDO0FBQ1csUUFBQSxrQkFBa0IsR0FBRztJQUM5QixDQUFDLDRDQUEyQixDQUFDLEVBQUU7UUFDM0IsQ0FBQyw2Q0FBdUIsQ0FBQyxFQUFFO1lBQ3ZCLENBQUMsNkNBQTRCLENBQUMsRUFBRSw2Q0FBdUI7U0FDMUQ7S0FDSjtDQUNKLENBQUMifQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1idXR0b24ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC9zYXZlLWJ1dHRvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvRUFBd0Y7QUFFeEYsa0VBQWlFO0FBRWpFLHNEQUkyQjtBQUMzQiwrREFJK0I7QUFHL0IsMkJBQTJCO0FBRTNCLE1BQWEsOEJBQStCLFNBQVEsNENBQW9CO0lBQ3BFLFVBQVUsQ0FBVTtJQUNwQixTQUFTLENBQVc7SUFDcEIsV0FBVyxDQUFVO0lBQ3JCLGdCQUFnQixDQUFVO0lBQzFCLHVCQUF1QixDQUFZO0lBQ25DLFdBQVcsQ0FBVztJQUN0QixnQkFBZ0IsQ0FBVTtJQUMxQixvQkFBb0IsQ0FBVTtJQUU5QjtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztDQUNKO0FBYkQsd0VBYUM7QUFHRCxNQUFhLGtDQUFtQyxTQUFRLGdEQUF3QjtJQUM1RSxLQUFLLEdBQUcsNkNBQXVCLENBQUM7SUFDaEMsTUFBTSxDQUF5QztJQUUvQztRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDMUMsTUFBTSxPQUFPLENBQUMsdUNBQXVDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNKO0FBWEQsZ0ZBV0M7QUFFRCxnQ0FBZ0M7QUFHaEMsTUFBYSxpQ0FBa0MsU0FBUSw4Q0FBdUI7SUFDMUUsU0FBUyxDQUE2QztJQUN0RCxLQUFLLENBQVM7SUFDZCxNQUFNLENBQTBDO0lBRWhEO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUMxQyxNQUFNLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0NBQ0o7QUFaRCw4RUFZQztBQUVZLFFBQUEsYUFBYSxHQUFHO0lBQ3pCLEVBQUMsSUFBSSxFQUFFLHlDQUF3QixFQUFFLEdBQUcsRUFBRSw4QkFBOEIsRUFBQztJQUNyRSxFQUFDLElBQUksRUFBRSw2Q0FBNEIsRUFBRSxHQUFHLEVBQUUsa0NBQWtDLEVBQUUsS0FBSyxFQUFFLDZDQUF1QixFQUFDO0lBQzdHLEVBQUMsSUFBSSxFQUFFLDRDQUEyQixFQUFFLEdBQUcsRUFBRSxpQ0FBaUMsRUFBRSxLQUFLLEVBQUMsNkNBQXVCLEVBQUM7Q0FDN0csQ0FBQztBQUNXLFFBQUEsa0JBQWtCLEdBQUc7SUFDOUIsQ0FBQyw0Q0FBMkIsQ0FBQyxFQUFFO1FBQzNCLENBQUMsNkNBQXVCLENBQUMsRUFBRTtZQUN2QixDQUFDLDZDQUE0QixDQUFDLEVBQUUsNkNBQXVCO1NBQzFEO0tBQ0o7Q0FDSixDQUFDIn0=
@@ -23,6 +23,23 @@ export interface SaveButtonFieldComponentConfigFrame extends FieldComponentConfi
23
23
  * Example: 'btn-success' or 'btn btn-success'.
24
24
  */
25
25
  buttonCssClasses?: string;
26
+ /**
27
+ * Validation groups to enable for this save request.
28
+ * Defaults to the form's current enabled validation groups.
29
+ */
30
+ enabledValidationGroups?: string[];
31
+ /**
32
+ * Whether to 'close' the form by redirecting on a successful save. Default false.
33
+ */
34
+ closeOnSave?: boolean;
35
+ /**
36
+ * The relative url to redirect to on a successful save if closeOnSave is true.
37
+ */
38
+ redirectLocation?: string;
39
+ /**
40
+ * The delay before redirecting on a successful save if closeOnSave is true.
41
+ */
42
+ redirectDelaySeconds?: number;
26
43
  }
27
44
  export interface SaveButtonFieldComponentConfigOutline extends SaveButtonFieldComponentConfigFrame, FieldComponentConfigOutline {
28
45
  }
@@ -1,4 +1,4 @@
1
- import { FormValidatorConfig, FormValidationGroups } from '../validation/form.model';
1
+ import { FormValidationGroups, FormValidatorTargetFieldConfig } from '../validation/form.model';
2
2
  import { AvailableFormComponentDefinitionFrames, AvailableFormComponentDefinitionOutlines } from './dictionary.outline';
3
3
  import { CanVisit } from './visitor/base.outline';
4
4
  import { KeyValueStringNested, KeyValueStringProperty } from './shared.outline';
@@ -65,7 +65,7 @@ export interface FormConfigFrame {
65
65
  /**
66
66
  * The validators that are configured at the form level, usually because they involve two or more fields.
67
67
  */
68
- validators?: FormValidatorConfig[];
68
+ validators?: FormValidatorTargetFieldConfig[];
69
69
  /**
70
70
  * The validation groups available in this form.
71
71
  * These are the only validation group names that can be used in the validator config.
@@ -104,6 +104,4 @@ export interface FormConfigFrame {
104
104
  }
105
105
  export interface FormConfigOutline extends FormConfigFrame, CanVisit {
106
106
  componentDefinitions: AvailableFormComponentDefinitionOutlines[];
107
- expressions?: FormExpressionsConfigOutline[];
108
- behaviours?: FormBehaviourConfigFrame[];
109
107
  }
@@ -37,6 +37,9 @@ export interface LineagePaths {
37
37
  /**
38
38
  * Allow providing a partial lineage paths object.
39
39
  * This is for adding to an existing lineage path.
40
+ *
41
+ * This does not include the calculated json pointer fields on purpose.
42
+ * Use LineagePathsOptional to include the json pointer fields.
40
43
  */
41
44
  export interface LineagePathsPartial {
42
45
  formConfig?: LineagePath;
@@ -44,6 +47,13 @@ export interface LineagePathsPartial {
44
47
  angularComponents?: LineagePath;
45
48
  layout?: LineagePath;
46
49
  }
50
+ /**
51
+ * Allow providing any of the lineage paths properties.
52
+ *
53
+ * This does include the calculated json pointer fields on purpose.
54
+ * Use LineagePathsPartial to include only the fields that are not calculated.
55
+ */
56
+ export type LineagePathsOptional = Partial<LineagePaths>;
47
57
  /**
48
58
  * Build the lineage paths from a base item, and add the entries in `more` as relative
49
59
  * parts at the end of each lineage path. Undefined inputs default to empty arrays.
@@ -76,3 +86,27 @@ export declare function getLastSegmentFromJSONPointer(pointer: string): string;
76
86
  * @return The string normalised to remove visual variants.
77
87
  */
78
88
  export declare function normaliseVisual(value: unknown): string;
89
+ /**
90
+ * Determine if every key present in both lineage paths match.
91
+ * @param a The first lineage paths object.
92
+ * @param b The second lineage paths object.
93
+ */
94
+ export declare function isMatchingLineagePaths(a: LineagePathsOptional, b: LineagePathsOptional): boolean;
95
+ /**
96
+ * Determine if two lineage paths or strings are equal.
97
+ * @param a The first lineage path or string.
98
+ * @param b The second lineage path or string.
99
+ */
100
+ export declare function isMatchingLineagePath(a: LineagePath | string, b: LineagePath | string): boolean;
101
+ /**
102
+ * Determine if every key (present in both lineage paths) of a lineage path starts with a base lineage path.
103
+ * @param base The prefix lineage paths object.
104
+ * @param check The lineage paths object that should start with the prefix.
105
+ */
106
+ export declare function isPrefixLineagePaths(base: LineagePathsOptional, check: LineagePathsOptional): boolean;
107
+ /**
108
+ * Determine if a check lineage path starts with a base lineage path.
109
+ * @param base The prefix.
110
+ * @param check The item that should start with prefix.
111
+ */
112
+ export declare function isPrefixLineagePath(base: LineagePath | string, check: LineagePath | string): boolean;
@@ -23,7 +23,12 @@ exports.getJSONPointerByArrayPaths = getJSONPointerByArrayPaths;
23
23
  exports.getObjectWithJsonPointer = getObjectWithJsonPointer;
24
24
  exports.getLastSegmentFromJSONPointer = getLastSegmentFromJSONPointer;
25
25
  exports.normaliseVisual = normaliseVisual;
26
+ exports.isMatchingLineagePaths = isMatchingLineagePaths;
27
+ exports.isMatchingLineagePath = isMatchingLineagePath;
28
+ exports.isPrefixLineagePaths = isPrefixLineagePaths;
29
+ exports.isPrefixLineagePath = isPrefixLineagePath;
26
30
  const json_pointer_1 = require("@jsonjoy.com/json-pointer");
31
+ const helpers_1 = require("../helpers");
27
32
  /**
28
33
  * Build the lineage paths from a base item, and add the entries in `more` as relative
29
34
  * parts at the end of each lineage path. Undefined inputs default to empty arrays.
@@ -108,4 +113,76 @@ function normaliseVisual(value) {
108
113
  // For Identifiers matching: Canonical form, no visual variants
109
114
  return str.normalize("NFKC");
110
115
  }
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtaW5nLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL25hbWVzL25hbWluZy1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwwRkFBMEY7QUFDMUYsRUFBRTtBQUNGLDZCQUE2QjtBQUM3QiwwQkFBMEI7QUFDMUIsRUFBRTtBQUNGLHVFQUF1RTtBQUN2RSx1RUFBdUU7QUFDdkUsb0VBQW9FO0FBQ3BFLHNDQUFzQztBQUN0QyxFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLGlFQUFpRTtBQUNqRSxnRUFBZ0U7QUFDaEUsK0NBQStDO0FBQy9DLEVBQUU7QUFDRiwwRUFBMEU7QUFDMUUsMEVBQTBFO0FBQzFFLDhEQUE4RDs7QUE2RDlELDhDQVVDO0FBU0QsZ0VBT0M7QUFTRCw0REFtQkM7QUFLRCxzRUFTQztBQVFELDBDQU1DO0FBN0lELDREQUFpRjtBQXNEakY7Ozs7R0FJRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLElBQW1CLEVBQUUsSUFBMEI7SUFDN0UsTUFBTSxZQUFZLEdBQWlCO1FBQy9CLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLGlCQUFpQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxpQkFBaUIsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzNGLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJ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
116
+ /**
117
+ * Determine if every key present in both lineage paths match.
118
+ * @param a The first lineage paths object.
119
+ * @param b The second lineage paths object.
120
+ */
121
+ function isMatchingLineagePaths(a, b) {
122
+ const aRecord = a ?? {};
123
+ const bRecord = b ?? {};
124
+ const keys = Array.from(new Set([...Object.keys(aRecord), ...Object.keys(bRecord)]));
125
+ return keys.every(key => {
126
+ if (key in aRecord && key in bRecord) {
127
+ const aValue = aRecord[key] ?? "";
128
+ const bValue = bRecord[key] ?? "";
129
+ return aValue === bValue || isMatchingLineagePath(aValue, bValue);
130
+ }
131
+ // A key in only a or b is allowed.
132
+ return true;
133
+ });
134
+ }
135
+ /**
136
+ * Determine if two lineage paths or strings are equal.
137
+ * @param a The first lineage path or string.
138
+ * @param b The second lineage path or string.
139
+ */
140
+ function isMatchingLineagePath(a, b) {
141
+ if (typeof a === "string" && typeof b === "string") {
142
+ return a === b;
143
+ }
144
+ if (!Array.isArray(a) || !Array.isArray(b)) {
145
+ return false;
146
+ }
147
+ if (a.length !== b.length) {
148
+ return false;
149
+ }
150
+ return a.every((aValue, aIndex) => aValue?.toString() === b[aIndex]?.toString());
151
+ }
152
+ /**
153
+ * Determine if every key (present in both lineage paths) of a lineage path starts with a base lineage path.
154
+ * @param base The prefix lineage paths object.
155
+ * @param check The lineage paths object that should start with the prefix.
156
+ */
157
+ function isPrefixLineagePaths(base, check) {
158
+ const aRecord = base ?? {};
159
+ const bRecord = check ?? {};
160
+ const keys = Array.from(new Set([...Object.keys(aRecord), ...Object.keys(bRecord)]));
161
+ return keys.every(key => {
162
+ if (key in aRecord && key in bRecord) {
163
+ const aValue = aRecord[key] ?? "";
164
+ const bValue = bRecord[key] ?? "";
165
+ return aValue === bValue || isPrefixLineagePath(aValue, bValue);
166
+ }
167
+ // A key in only base or check is allowed.
168
+ return true;
169
+ });
170
+ }
171
+ /**
172
+ * Determine if a check lineage path starts with a base lineage path.
173
+ * @param base The prefix.
174
+ * @param check The item that should start with prefix.
175
+ */
176
+ function isPrefixLineagePath(base, check) {
177
+ if (typeof base === "string" && typeof check === "string") {
178
+ return base === check || check.startsWith(base + '/');
179
+ }
180
+ if (!Array.isArray(base) || !Array.isArray(check)) {
181
+ return false;
182
+ }
183
+ if (base.length === 0 && check.length === 0) {
184
+ return true;
185
+ }
186
+ return (0, helpers_1.arrayStartsWithArray)(base.map(i => i?.toString()), check.map(i => i?.toString()));
187
+ }
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtaW5nLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL25hbWVzL25hbWluZy1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwwRkFBMEY7QUFDMUYsRUFBRTtBQUNGLDZCQUE2QjtBQUM3QiwwQkFBMEI7QUFDMUIsRUFBRTtBQUNGLHVFQUF1RTtBQUN2RSx1RUFBdUU7QUFDdkUsb0VBQW9FO0FBQ3BFLHNDQUFzQztBQUN0QyxFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLGlFQUFpRTtBQUNqRSxnRUFBZ0U7QUFDaEUsK0NBQStDO0FBQy9DLEVBQUU7QUFDRiwwRUFBMEU7QUFDMUUsMEVBQTBFO0FBQzFFLDhEQUE4RDs7QUF5RTlELDhDQVVDO0FBU0QsZ0VBT0M7QUFTRCw0REFtQkM7QUFLRCxzRUFTQztBQVFELDBDQU1DO0FBT0Qsd0RBYUM7QUFPRCxzREFXQztBQU9ELG9EQWFDO0FBT0Qsa0RBY0M7QUF4T0QsNERBQWlGO0FBQ2pGLHdDQUFnRDtBQWlFaEQ7Ozs7R0FJRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLElBQW1CLEVBQUUsSUFBMEI7SUFDN0UsTUFBTSxZQUFZLEdBQWlCO1FBQy9CLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLGlCQUFpQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxpQkFBaUIsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzNGLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQzdELENBQUM7SUFDRixZQUFZLENBQUMsNEJBQTRCLEdBQUcsMEJBQTBCLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDdkcsWUFBWSxDQUFDLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRixPQUFPLFlBQVksQ0FBQztBQUN4QixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFFSCxTQUFnQiwwQkFBMEIsQ0FBQyxLQUEwQjtJQUNuRSxJQUFJLENBQUM7UUFDSCxPQUFPLElBQUEsZ0NBQWlCLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDYixPQUFPLENBQUMsS0FBSyxDQUFDLGlEQUFpRCxLQUFLLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM5RSxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsR0FBUSxFQUFFLE9BQTBCO0lBQzNFLElBQUksQ0FBQztRQUNDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sSUFBQSxtQkFBSSxFQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixDQUFDO1FBQ0QsMEZBQTBGO1FBQzFGLE9BQU8sSUFBQSw0QkFBYSxFQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQUMsT0FBTyxDQUFVLEVBQUUsQ0FBQztRQUNsQixPQUFPLENBQUMsS0FBSyxDQUFDLDZDQUE2QyxHQUFHLGtCQUFrQixPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvRiw0RkFBNEY7UUFDNUYseUZBQXlGO1FBQ3pGLDJGQUEyRjtRQUMzRiwwRUFBMEU7UUFDMUUsTUFBTSxHQUFHLEdBQUcsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9DLElBQUksR0FBRyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQztJQUNaLENBQUM7QUFDTCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiw2QkFBNkIsQ0FBQyxPQUFlO0lBQ3pELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNiLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDM0IsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUNELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixlQUFlLENBQUMsS0FBYztJQUM1QyxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0lBRXBDLDRFQUE0RTtJQUM1RSwrREFBK0Q7SUFDL0QsT0FBTyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQUMsQ0FBdUIsRUFBRSxDQUF1QjtJQUNyRixNQUFNLE9BQU8sR0FBcUQsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxRSxNQUFNLE9BQU8sR0FBcUQsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxRSxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFTLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxHQUFHLElBQUksT0FBTyxJQUFJLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNyQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEMsT0FBTyxNQUFNLEtBQUssTUFBTSxJQUFJLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBQ0QsbUNBQW1DO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLHFCQUFxQixDQUFDLENBQXVCLEVBQUUsQ0FBdUI7SUFDcEYsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDbkQsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNELE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztBQUNuRixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLG9CQUFvQixDQUFDLElBQTBCLEVBQUUsS0FBMkI7SUFDMUYsTUFBTSxPQUFPLEdBQXFELElBQUksSUFBSSxFQUFFLENBQUM7SUFDN0UsTUFBTSxPQUFPLEdBQXFELEtBQUssSUFBSSxFQUFFLENBQUM7SUFDOUUsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBUyxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3RCLElBQUksR0FBRyxJQUFJLE9BQU8sSUFBSSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7WUFDckMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xDLE9BQU8sTUFBTSxLQUFLLE1BQU0sSUFBSSxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUNELDBDQUEwQztRQUMxQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxJQUEwQixFQUFFLEtBQTJCO0lBQ3pGLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzFELE9BQU8sSUFBSSxLQUFLLEtBQUssSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sSUFBQSw4QkFBb0IsRUFDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUM1QixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQzlCLENBQUM7QUFDSixDQUFDIn0=
@@ -1,4 +1,4 @@
1
- import { LineagePath, LineagePaths } from "../config/names/naming-helpers";
1
+ import { LineagePath, LineagePaths, LineagePathsPartial } from "../config/names/naming-helpers";
2
2
  /**
3
3
  * The parameters for a validator error.
4
4
  * The parameters are different for each validator.
@@ -26,15 +26,17 @@ export type FormValidatorErrors = {
26
26
  [key: string]: {
27
27
  message: string;
28
28
  params: FormValidatorErrorParams;
29
- };
29
+ } & FormValidatorTargetField;
30
30
  };
31
31
  /**
32
32
  * The map of validator config.
33
33
  * The config is different for each validator.
34
34
  */
35
35
  export type FormValidatorCreateConfig = {
36
+ class?: string;
37
+ message?: string;
36
38
  [key: string]: unknown;
37
- };
39
+ } & FormValidatorTargetField;
38
40
  /**
39
41
  * The interface that a form control must implement to be validated by a validator function.
40
42
  * Some form controls are a collection of controls, these must provide a way to access the controls they contain.
@@ -171,10 +173,24 @@ export interface FormValidatorConfig {
171
173
  */
172
174
  groups?: FormFieldValidationGroup;
173
175
  }
176
+ /**
177
+ * Allows specifying a field to 'own' any validation failures.
178
+ */
179
+ export interface FormValidatorTargetField {
180
+ /**
181
+ * Lineage paths to a target field that will 'own' any validation failures.
182
+ */
183
+ targetField?: LineagePathsPartial;
184
+ }
185
+ /**
186
+ * Form-level validator config that allows specifying a field to 'own' any validation failures.
187
+ */
188
+ export interface FormValidatorTargetFieldConfig extends FormValidatorConfig, FormValidatorTargetField {
189
+ }
174
190
  /**
175
191
  * One validator error.
176
192
  */
177
- export interface FormValidatorComponentErrors {
193
+ export interface FormValidatorComponentErrors extends FormValidatorTargetField {
178
194
  /**
179
195
  * The message id for the validator.
180
196
  */
@@ -28,4 +28,4 @@ exports.SimpleServerFormValidatorControl = SimpleServerFormValidatorControl;
28
28
  * - 'none': An empty array / no validators.
29
29
  */
30
30
  exports.formValidationGroupMembership = ["all", "none"];
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL2Zvcm0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXFDO0FBZ0VyQzs7OztHQUlHO0FBQ0gsTUFBYSxnQ0FBZ0M7SUFDekMsS0FBSyxDQUFVO0lBRWYsWUFBWSxLQUFjO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxHQUFHLENBQWlDLElBQU87UUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBQSxZQUFJLEVBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7UUFFOUMsaUJBQWlCO1FBQ2pCLHFLQUFxSztRQUVySyxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0NBQ0o7QUFmRCw0RUFlQztBQXNNRDs7Ozs7O0dBTUc7QUFDVSxRQUFBLDZCQUE2QixHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBVSxDQUFDIn0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL2Zvcm0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXFDO0FBa0VyQzs7OztHQUlHO0FBQ0gsTUFBYSxnQ0FBZ0M7SUFDekMsS0FBSyxDQUFVO0lBRWYsWUFBWSxLQUFjO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxHQUFHLENBQWlDLElBQU87UUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBQSxZQUFJLEVBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7UUFFOUMsaUJBQWlCO1FBQ2pCLHFLQUFxSztRQUVySyxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0NBQ0o7QUFmRCw0RUFlQztBQXNORDs7Ozs7O0dBTUc7QUFDVSxRQUFBLDZCQUE2QixHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBVSxDQUFDIn0=
@@ -1,4 +1,4 @@
1
- import { FormValidatorCreateConfig } from "./form.model";
1
+ import { FormValidatorCreateConfig, FormValidatorErrorParams, FormValidatorErrors } from "./form.model";
2
2
  /**
3
3
  * Extract the length property in case it's an array or a string.
4
4
  * Extract the size property in case it's a set.
@@ -12,3 +12,5 @@ export declare function formValidatorGetDefinitionNumber(config: FormValidatorCr
12
12
  export declare function formValidatorGetDefinitionBoolean(config: FormValidatorCreateConfig | null | undefined, key: string, defaultValue?: boolean | undefined): boolean;
13
13
  export declare function formValidatorGetDefinitionRegexp(config: FormValidatorCreateConfig | null | undefined, key: string, defaultValue?: RegExp | undefined): RegExp;
14
14
  export declare function formValidatorGetDefinitionArray(config: FormValidatorCreateConfig | null | undefined, key: string, defaultValue?: unknown[] | undefined): unknown[];
15
+ export declare function formValidatorGetDefinitionObject(config: FormValidatorCreateConfig | null | undefined, key: string, defaultValue?: Record<string, unknown> | undefined): Record<string, unknown>;
16
+ export declare function formValidatorBuildError(config: FormValidatorCreateConfig | null | undefined, params?: FormValidatorErrorParams): FormValidatorErrors;
@@ -7,6 +7,8 @@ exports.formValidatorGetDefinitionNumber = formValidatorGetDefinitionNumber;
7
7
  exports.formValidatorGetDefinitionBoolean = formValidatorGetDefinitionBoolean;
8
8
  exports.formValidatorGetDefinitionRegexp = formValidatorGetDefinitionRegexp;
9
9
  exports.formValidatorGetDefinitionArray = formValidatorGetDefinitionArray;
10
+ exports.formValidatorGetDefinitionObject = formValidatorGetDefinitionObject;
11
+ exports.formValidatorBuildError = formValidatorBuildError;
10
12
  const lodash_1 = require("lodash");
11
13
  const helpers_1 = require("../config/helpers");
12
14
  /**
@@ -42,7 +44,7 @@ function formValidatorGetDefinitionNumber(config, key, defaultValue = undefined)
42
44
  const value = formValidatorGetDefinitionItem(config, key, defaultValue);
43
45
  const valueString = value?.toString() ?? "";
44
46
  const valueNumber = parseFloat(valueString);
45
- if (isNaN(valueNumber)) {
47
+ if (!Number.isFinite(valueNumber)) {
46
48
  throw new Error(`Invalid numeric value '${value}' for key '${key}' in validator config.`);
47
49
  }
48
50
  return valueNumber;
@@ -65,4 +67,29 @@ function formValidatorGetDefinitionArray(config, key, defaultValue = undefined)
65
67
  }
66
68
  throw new Error(`Invalid array value '${value}' for key '${key}' in validator config.`);
67
69
  }
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSw4REFVQztBQUVELHdFQVVDO0FBRUQsNEVBT0M7QUFFRCw0RUFZQztBQUVELDhFQU9DO0FBRUQsNEVBVUM7QUFFRCwwRUFVQztBQXpGRCxtQ0FBbUM7QUFFbkMsK0NBQTRDO0FBRzVDOzs7OztHQUtHO0FBQ0gsU0FBZ0IseUJBQXlCLENBQUMsS0FBeUQ7SUFDakcsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7U0FBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0QsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQ3RCLENBQUM7U0FBTSxJQUFJLEtBQUssWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUNoQyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVELFNBQWdCLDhCQUE4QixDQUM1QyxNQUFvRCxFQUNwRCxHQUFXLEVBQ1gsZUFBd0IsU0FBUztJQUVqQyxNQUFNLEtBQUssR0FBRyxJQUFBLFlBQUksRUFBQyxNQUFNLElBQUksRUFBRSxFQUFFLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNwRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixHQUFHLHdCQUF3QixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQWdCLGdDQUFnQyxDQUM5QyxNQUFvRCxFQUNwRCxHQUFXLEVBQ1gsZUFBbUMsU0FBUztJQUU1QyxNQUFNLEtBQUssR0FBRyw4QkFBOEIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3hFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUNqQyxDQUFDO0FBRUQsU0FBZ0IsZ0NBQWdDLENBQzlDLE1BQW9ELEVBQ3BELEdBQVcsRUFDWCxlQUFtQyxTQUFTO0lBRTVDLE1BQU0sS0FBSyxHQUFHLDhCQUE4QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEUsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUM1QyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDNUMsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixLQUFLLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFDRCxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBRUQsU0FBZ0IsaUNBQWlDLENBQy9DLE1BQW9ELEVBQ3BELEdBQVcsRUFDWCxlQUFvQyxTQUFTO0lBRTdDLE1BQU0sS0FBSyxHQUFHLDhCQUE4QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEUsT0FBTyxJQUFBLG1CQUFTLEVBQUMsS0FBSyxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELFNBQWdCLGdDQUFnQyxDQUM5QyxNQUFvRCxFQUNwRCxHQUFXLEVBQ1gsZUFBbUMsU0FBUztJQUU1QyxNQUFNLEtBQUssR0FBRyw4QkFBOEIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3hFLElBQUksS0FBSyxZQUFZLE1BQU0sRUFBRSxDQUFDO1FBQzVCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFnQiwrQkFBK0IsQ0FDN0MsTUFBb0QsRUFDcEQsR0FBVyxFQUNYLGVBQXNDLFNBQVM7SUFFL0MsTUFBTSxLQUFLLEdBQUcsOEJBQThCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN4RSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN6QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixLQUFLLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDO0FBQzFGLENBQUMifQ==
70
+ function formValidatorGetDefinitionObject(config, key, defaultValue = undefined) {
71
+ const value = formValidatorGetDefinitionItem(config, key, defaultValue);
72
+ if ((0, helpers_1.guessType)(value) === "object") {
73
+ return value;
74
+ }
75
+ throw new Error(`Invalid object value '${value}' for key '${key}' in validator config.`);
76
+ }
77
+ function formValidatorBuildError(config, params) {
78
+ const optionNameKey = "class";
79
+ const optionNameValue = formValidatorGetDefinitionString(config, optionNameKey);
80
+ const optionMessageKey = "message";
81
+ const optionMessageValue = formValidatorGetDefinitionString(config, optionMessageKey);
82
+ const optionTargetFieldKey = "targetField";
83
+ const optionTargetFieldValue = formValidatorGetDefinitionObject(config, optionTargetFieldKey, {});
84
+ const result = {
85
+ [optionNameValue]: {
86
+ [optionMessageKey]: optionMessageValue,
87
+ params: { ...params },
88
+ }
89
+ };
90
+ if (Object.keys(optionTargetFieldValue).length > 0) {
91
+ result[optionNameValue][optionTargetFieldKey] = optionTargetFieldValue;
92
+ }
93
+ return result;
94
+ }
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSw4REFVQztBQUVELHdFQVVDO0FBRUQsNEVBT0M7QUFFRCw0RUFZQztBQUVELDhFQU9DO0FBRUQsNEVBVUM7QUFFRCwwRUFVQztBQUVELDRFQVVDO0FBRUQsMERBb0JDO0FBM0hELG1DQUFtQztBQUVuQywrQ0FBdUQ7QUFHdkQ7Ozs7O0dBS0c7QUFDSCxTQUFnQix5QkFBeUIsQ0FBQyxLQUF5RDtJQUNqRyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQzFDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztTQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM3RCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDdEIsQ0FBQztTQUFNLElBQUksS0FBSyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsU0FBZ0IsOEJBQThCLENBQzVDLE1BQW9ELEVBQ3BELEdBQVcsRUFDWCxlQUF3QixTQUFTO0lBRWpDLE1BQU0sS0FBSyxHQUFHLElBQUEsWUFBSSxFQUFDLE1BQU0sSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3BELElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsd0JBQXdCLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsU0FBZ0IsZ0NBQWdDLENBQzlDLE1B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
@@ -1,4 +1,4 @@
1
- import { FormValidationGroups, FormValidatorComponentErrors, FormValidatorConfig, FormValidatorDefinition, FormValidatorErrors, FormValidatorFns } from "./form.model";
1
+ import { FormValidationGroups, FormValidatorComponentErrors, FormValidatorConfig, FormValidatorDefinition, FormValidatorErrors, FormValidatorFns, FormValidatorTargetFieldConfig } from "./form.model";
2
2
  export declare class ValidatorsSupport {
3
3
  /**
4
4
  * Create validator definition mapping from the validator definitions.
@@ -10,7 +10,7 @@ export declare class ValidatorsSupport {
10
10
  * @param defMap The validator definition mapping.
11
11
  * @param config The form validator config blocks.
12
12
  */
13
- createFormValidatorInstancesFromMapping(defMap: Map<string, FormValidatorDefinition>, config: FormValidatorConfig[] | null | undefined): FormValidatorFns;
13
+ createFormValidatorInstancesFromMapping(defMap: Map<string, FormValidatorDefinition>, config: (FormValidatorConfig | FormValidatorTargetFieldConfig)[] | null | undefined): FormValidatorFns;
14
14
  /**
15
15
  * Get the form validator errors for a component's control.
16
16
  * @param errors The control's errors.
@@ -44,6 +44,9 @@ class ValidatorsSupport {
44
44
  class: validatorClass,
45
45
  message: message,
46
46
  };
47
+ if ('targetField' in validatorConfigItem && validatorConfigItem.targetField !== undefined) {
48
+ createConfig.targetField = validatorConfigItem.targetField;
49
+ }
47
50
  if ('create' in def) {
48
51
  result.syncDefs.push(def.create(createConfig));
49
52
  }
@@ -61,11 +64,19 @@ class ValidatorsSupport {
61
64
  * @param errors The control's errors.
62
65
  */
63
66
  getFormValidatorComponentErrors(errors) {
64
- return Object.entries(errors ?? {}).map(([key, item]) => ({
65
- class: key,
66
- message: item.message ?? null,
67
- params: { ...item.params },
68
- })) ?? [];
67
+ const result = [];
68
+ for (const [key, value] of Object.entries(errors ?? {})) {
69
+ const item = {
70
+ class: key,
71
+ message: value.message ?? null,
72
+ params: { ...value.params },
73
+ };
74
+ if (value.targetField !== undefined) {
75
+ item.targetField = value.targetField;
76
+ }
77
+ result.push(item);
78
+ }
79
+ return result;
69
80
  }
70
81
  checkValidationGroups(availableGroups, enabledGroupNames) {
71
82
  const availableGroupNames = Object.keys(availableGroups);
@@ -151,4 +162,4 @@ class ValidatorsSupport {
151
162
  }
152
163
  }
153
164
  exports.ValidatorsSupport = ValidatorsSupport;
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy1zdXBwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZhbGlkYXRpb24vdmFsaWRhdG9ycy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLGlFQUEyRTtBQUczRSxNQUFhLGlCQUFpQjtJQUM1Qjs7O09BR0c7SUFDSSxnQ0FBZ0MsQ0FDckMsVUFBd0Q7UUFFeEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7UUFDMUQsS0FBSyxNQUFNLGNBQWMsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxJQUFBLGdEQUE2QixFQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25ELE1BQU0sSUFBSSxLQUFLLENBQUMseUZBQXlGLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdJLENBQUM7WUFDRCxNQUFNLGNBQWMsR0FBRyxjQUFjLEVBQUUsS0FBSyxDQUFDO1lBQzdDLE1BQU0sT0FBTyxHQUFHLGNBQWMsRUFBRSxPQUFPLENBQUM7WUFDeEMsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sUUFBUSxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQ2hFLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLGNBQWMsNENBQTRDO3NCQUNwRywrRUFBK0UsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUcsQ0FBQztZQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJ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
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy1zdXBwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZhbGlkYXRpb24vdmFsaWRhdG9ycy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLGlFQUEyRTtBQUczRSxNQUFhLGlCQUFpQjtJQUM1Qjs7O09BR0c7SUFDSSxnQ0FBZ0MsQ0FDckMsVUFBd0Q7UUFFeEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7UUFDMUQsS0FBSyxNQUFNLGNBQWMsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxJQUFBLGdEQUE2QixFQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25ELE1BQU0sSUFBSSxLQUFLLENBQUMseUZBQXlGLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdJLENBQUM7WUFDRCxNQUFNLGNBQWMsR0FBRyxjQUFjLEVBQUUsS0FBSyxDQUFDO1lBQzdDLE1BQU0sT0FBTyxHQUFHLGNBQWMsRUFBRSxPQUFPLENBQUM7WUFDeEMsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sUUFBUSxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQ2hFLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLGNBQWMsNENBQTRDO3NCQUNwRywrRUFBK0UsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUcsQ0FBQztZQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHVDQUF1QyxDQUM1QyxNQUE0QyxFQUM1QyxNQUFtRjtRQUVuRixNQUFNLE1BQU0sR0FBcUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNqRSxLQUFLLE1BQU0sbUJBQW1CLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNqRCxNQUFNLGNBQWMsR0FBRyxtQkFBbUIsRUFBRSxLQUFLLENBQUM7WUFDbEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ1QsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsY0FBYyxLQUFLO3NCQUN0RSxrQ0FBa0MsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pGLENBQUM7WUFDRCxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsRUFBRSxPQUFPLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUM1RCxNQUFNLFlBQVksR0FBOEI7Z0JBQzlDLEdBQUcsbUJBQW1CLEVBQUUsTUFBTSxJQUFJLEVBQUU7Z0JBQ3BDLEtBQUssRUFBRSxjQUFjO2dCQUNyQixPQUFPLEVBQUUsT0FBTzthQUNqQixDQUFDO1lBRUYsSUFBSSxhQUFhLElBQUksbUJBQW1CLElBQUksbUJBQW1CLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUMxRixZQUFZLENBQUMsV0FBVyxHQUFHLG1CQUFtQixDQUFDLFdBQVcsQ0FBQztZQUM3RCxDQUFDO1lBRUQsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNqRCxDQUFDO2lCQUFNLElBQUksYUFBYSxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNoQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDdkQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0dBQWdHLElBQUksQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUosQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksK0JBQStCLENBQUMsTUFBa0M7UUFDdkUsTUFBTSxNQUFNLEdBQW1DLEVBQUUsQ0FBQztRQUNsRCxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUN4RCxNQUFNLElBQUksR0FBaUM7Z0JBQ3pDLEtBQUssRUFBRSxHQUFHO2dCQUNWLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxJQUFJLElBQUk7Z0JBQzlCLE1BQU0sRUFBRSxFQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBQzthQUMxQixDQUFDO1lBQ0YsSUFBSSxLQUFLLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7WUFDdkMsQ0FBQztZQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEIsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxlQUFxQyxFQUFFLGlCQUEyQjtRQUM3RixNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDekQsTUFBTSxhQUFhLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RixJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDeEYsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGtCQUFrQixDQUFDLGVBQXFDLEVBQUUsaUJBQTJCLEVBQUUsU0FBOEI7UUFDMUgsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxpRUFBaUU7WUFDakUsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbkMseUVBQXlFO1lBQ3pFLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUUvRCxrRUFBa0U7UUFDbEUsd0VBQXdFO1FBQ3hFLE1BQU0sUUFBUSxHQUFHLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXRELE1BQU0sUUFBUSxHQUFHLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXRELEtBQUssTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDdEUsTUFBTSxVQUFVLEdBQUcsV0FBVyxFQUFFLGlCQUFpQixJQUFJLE1BQU0sQ0FBQztZQUU1RCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLG9DQUFvQztnQkFDcEMsU0FBUztZQUNYLENBQUM7WUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDaEMsNkNBQTZDO2dCQUM3QyxTQUFTO1lBQ1gsQ0FBQztZQUVELElBQUksVUFBVSxLQUFLLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDekQsd0JBQXdCO2dCQUN4QixtRkFBbUY7Z0JBQ25GLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztZQUVELElBQUksVUFBVSxLQUFLLE1BQU0sSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELHdCQUF3QjtnQkFDeEIsMEVBQTBFO2dCQUMxRSxPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDO1FBQ0QsOERBQThEO1FBQzlELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksdUJBQXVCLENBQzVCLFVBQWlDLEVBQ2pDLFFBQW9FO1FBRXBFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxTQUFTLENBQUMsS0FBSyxLQUFLLG9CQUFvQixFQUFFLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3RCLFNBQVMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2dCQUN4QixDQUFDO2dCQUNELE1BQU0sSUFBSSxHQUFHLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQ2pFLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxTQUFTLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUMzQyxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzdELENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxpQkFBaUIsQ0FBQyxlQUFxQyxFQUFFLGFBQXVCLEVBQUUsVUFBaUM7UUFDeEgsT0FBTyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7Q0FDRjtBQXBMRCw4Q0FvTEMifQ==
@@ -26,10 +26,6 @@ exports.formValidatorsSharedDefinitions = [
26
26
  class: "min",
27
27
  message: "@validator-error-min",
28
28
  create: (config) => {
29
- const optionNameKey = "class";
30
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "min");
31
- const optionMessageKey = "message";
32
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-min");
33
29
  const optionMinKey = "min";
34
30
  const optionMinValue = (0, helpers_1.formValidatorGetDefinitionNumber)(config, optionMinKey);
35
31
  return (control) => {
@@ -46,15 +42,10 @@ exports.formValidatorsSharedDefinitions = [
46
42
  // Controls with NaN values after parsing should be treated as not having a
47
43
  // minimum, per the HTML forms spec: https://www.w3.org/TR/html5/forms.html#attr-input-min
48
44
  if (value === undefined || (!isNaN(value) && value < optionMinValue)) {
49
- return {
50
- [optionNameValue]: {
51
- [optionMessageKey]: optionMessageValue,
52
- params: {
53
- requiredThreshold: optionMinValue,
54
- actual: control.value,
55
- },
56
- },
57
- };
45
+ return (0, helpers_1.formValidatorBuildError)(config, {
46
+ requiredThreshold: optionMinValue,
47
+ actual: control.value,
48
+ });
58
49
  }
59
50
  return null;
60
51
  };
@@ -64,10 +55,6 @@ exports.formValidatorsSharedDefinitions = [
64
55
  class: "max",
65
56
  message: "@validator-error-max",
66
57
  create: (config) => {
67
- const optionNameKey = "class";
68
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "max");
69
- const optionMessageKey = "message";
70
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-max");
71
58
  const optionMaxKey = "max";
72
59
  const optionMaxValue = (0, helpers_1.formValidatorGetDefinitionNumber)(config, optionMaxKey);
73
60
  return (control) => {
@@ -84,15 +71,10 @@ exports.formValidatorsSharedDefinitions = [
84
71
  // Controls with NaN values after parsing should be treated as not having a
85
72
  // maximum, per the HTML forms spec: https://www.w3.org/TR/html5/forms.html#attr-input-max
86
73
  if (value === undefined || (!isNaN(value) && value > optionMaxValue)) {
87
- return {
88
- [optionNameValue]: {
89
- [optionMessageKey]: optionMessageValue,
90
- params: {
91
- requiredThreshold: optionMaxValue,
92
- actual: control.value,
93
- },
94
- },
95
- };
74
+ return (0, helpers_1.formValidatorBuildError)(config, {
75
+ requiredThreshold: optionMaxValue,
76
+ actual: control.value,
77
+ });
96
78
  }
97
79
  return null;
98
80
  };
@@ -102,10 +84,6 @@ exports.formValidatorsSharedDefinitions = [
102
84
  class: "minLength",
103
85
  message: "@validator-error-min-length",
104
86
  create: (config) => {
105
- const optionNameKey = "class";
106
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "minLength");
107
- const optionMessageKey = "message";
108
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-min-length");
109
87
  const optionMinLengthKey = "minLength";
110
88
  const optionMinLengthValue = (0, helpers_1.formValidatorGetDefinitionNumber)(config, optionMinLengthKey);
111
89
  return (control) => {
@@ -116,15 +94,10 @@ exports.formValidatorsSharedDefinitions = [
116
94
  return null;
117
95
  }
118
96
  return length < optionMinLengthValue
119
- ? {
120
- [optionNameValue]: {
121
- [optionMessageKey]: optionMessageValue,
122
- params: {
123
- requiredLength: optionMinLengthValue,
124
- actualLength: length,
125
- },
126
- },
127
- }
97
+ ? (0, helpers_1.formValidatorBuildError)(config, {
98
+ requiredLength: optionMinLengthValue,
99
+ actualLength: length,
100
+ })
128
101
  : null;
129
102
  };
130
103
  },
@@ -133,24 +106,15 @@ exports.formValidatorsSharedDefinitions = [
133
106
  class: "maxLength",
134
107
  message: "@validator-error-max-length",
135
108
  create: (config) => {
136
- const optionNameKey = "class";
137
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "maxLength");
138
- const optionMessageKey = "message";
139
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-max-length");
140
109
  const optionMaxLengthKey = "maxLength";
141
110
  const optionMaxLengthValue = (0, helpers_1.formValidatorGetDefinitionNumber)(config, optionMaxLengthKey);
142
111
  return (control) => {
143
112
  const length = (0, helpers_1.formValidatorLengthOrSize)(control.value);
144
113
  if (length !== null && length > optionMaxLengthValue) {
145
- return {
146
- [optionNameValue]: {
147
- [optionMessageKey]: optionMessageValue,
148
- params: {
149
- requiredLength: optionMaxLengthValue,
150
- actualLength: length,
151
- },
152
- },
153
- };
114
+ return (0, helpers_1.formValidatorBuildError)(config, {
115
+ requiredLength: optionMaxLengthValue,
116
+ actualLength: length,
117
+ });
154
118
  }
155
119
  return null;
156
120
  };
@@ -160,23 +124,14 @@ exports.formValidatorsSharedDefinitions = [
160
124
  class: "required",
161
125
  message: "@validator-error-required",
162
126
  create: (config) => {
163
- const optionNameKey = "class";
164
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "required");
165
- const optionMessageKey = "message";
166
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-required");
167
127
  const optionRequiredKey = "required";
168
128
  const optionRequiredValue = (0, helpers_1.formValidatorGetDefinitionBoolean)(config, optionRequiredKey, true);
169
129
  return (control) => {
170
130
  if (optionRequiredValue && (control.value == null || (0, helpers_1.formValidatorLengthOrSize)(control.value) === 0)) {
171
- return {
172
- [optionNameValue]: {
173
- [optionMessageKey]: optionMessageValue,
174
- params: {
175
- required: optionRequiredValue,
176
- actual: control.value,
177
- },
178
- },
179
- };
131
+ return (0, helpers_1.formValidatorBuildError)(config, {
132
+ required: optionRequiredValue,
133
+ actual: control.value,
134
+ });
180
135
  }
181
136
  return null;
182
137
  };
@@ -186,23 +141,14 @@ exports.formValidatorsSharedDefinitions = [
186
141
  class: "requiredTrue",
187
142
  message: "@validator-error-required-true",
188
143
  create: (config) => {
189
- const optionNameKey = "class";
190
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "requiredTrue")?.toString() ?? "";
191
- const optionMessageKey = "message";
192
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-required-true");
193
144
  const optionRequiredKey = "requiredTrue";
194
145
  const optionRequiredValue = (0, helpers_1.formValidatorGetDefinitionBoolean)(config, optionRequiredKey, true);
195
146
  return (control) => {
196
147
  if (optionRequiredValue && control.value !== true) {
197
- return {
198
- [optionNameValue]: {
199
- [optionMessageKey]: optionMessageValue,
200
- params: {
201
- required: optionRequiredValue,
202
- actual: control.value,
203
- },
204
- },
205
- };
148
+ return (0, helpers_1.formValidatorBuildError)(config, {
149
+ required: optionRequiredValue,
150
+ actual: control.value,
151
+ });
206
152
  }
207
153
  return null;
208
154
  };
@@ -212,10 +158,6 @@ exports.formValidatorsSharedDefinitions = [
212
158
  class: "email",
213
159
  message: "@validator-error-email",
214
160
  create: (config) => {
215
- const optionNameKey = "class";
216
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "email");
217
- const optionMessageKey = "message";
218
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-email");
219
161
  const optionDescriptionKey = "description";
220
162
  const optionDescriptionValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionDescriptionKey, "email must be in format (name)@(domain.tld)");
221
163
  const optionPatternKey = "pattern";
@@ -228,15 +170,10 @@ exports.formValidatorsSharedDefinitions = [
228
170
  const value = control.value?.toString() ?? "";
229
171
  const testOutcome = optionPatternValue.test(value);
230
172
  if (!testOutcome) {
231
- return {
232
- [optionNameValue]: {
233
- [optionMessageKey]: optionMessageValue,
234
- params: {
235
- requiredPattern: optionPatternValue,
236
- description: optionDescriptionValue, actual: control.value,
237
- },
238
- },
239
- };
173
+ return (0, helpers_1.formValidatorBuildError)(config, {
174
+ requiredPattern: optionPatternValue,
175
+ description: optionDescriptionValue, actual: control.value,
176
+ });
240
177
  }
241
178
  return null;
242
179
  };
@@ -246,10 +183,6 @@ exports.formValidatorsSharedDefinitions = [
246
183
  class: "pattern",
247
184
  message: "@validator-error-pattern",
248
185
  create: (config) => {
249
- const optionNameKey = "class";
250
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "pattern");
251
- const optionMessageKey = "message";
252
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-pattern");
253
186
  const optionDescriptionKey = "description";
254
187
  const optionDescriptionValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionDescriptionKey);
255
188
  const optionPatternKey = "pattern";
@@ -272,16 +205,11 @@ exports.formValidatorsSharedDefinitions = [
272
205
  const value = control.value?.toString();
273
206
  return regex.test(value)
274
207
  ? null
275
- : {
276
- [optionNameValue]: {
277
- [optionMessageKey]: optionMessageValue,
278
- params: {
279
- requiredPattern: regexStr,
280
- description: optionDescriptionValue,
281
- actual: value,
282
- },
283
- },
284
- };
208
+ : (0, helpers_1.formValidatorBuildError)(config, {
209
+ requiredPattern: regexStr,
210
+ description: optionDescriptionValue,
211
+ actual: value,
212
+ });
285
213
  };
286
214
  },
287
215
  },
@@ -289,10 +217,6 @@ exports.formValidatorsSharedDefinitions = [
289
217
  class: "different-values",
290
218
  message: "@validator-error-different-values",
291
219
  create: (config) => {
292
- const optionNameKey = "class";
293
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "different-values");
294
- const optionMessageKey = "message";
295
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-different-values");
296
220
  const optionControlNamesKey = "controlNames";
297
221
  const optionControlNamesValue = (0, helpers_1.formValidatorGetDefinitionArray)(config, optionControlNamesKey);
298
222
  return (control) => {
@@ -301,20 +225,15 @@ exports.formValidatorsSharedDefinitions = [
301
225
  ?.filter(i => i !== null && i !== undefined)
302
226
  ?.map(n => control?.get(n?.toString())) ?? [];
303
227
  const values = new Set(controls?.map(c => c?.value) ?? []);
304
- if (values.size !== controls.length) {
305
- return {
306
- [optionNameValue]: {
307
- [optionMessageKey]: optionMessageValue,
308
- params: {
309
- controlNames: optionControlNamesValue,
310
- controlCount: optionControlNamesValue?.length,
311
- valueCount: values.size,
312
- values: Array.from(values),
313
- },
314
- },
315
- };
316
- }
317
- return null;
228
+ const compare = values.size === controls.length;
229
+ return compare
230
+ ? null
231
+ : (0, helpers_1.formValidatorBuildError)(config, {
232
+ controlNames: optionControlNamesValue,
233
+ controlCount: optionControlNamesValue?.length,
234
+ valueCount: values.size,
235
+ values: Array.from(values),
236
+ });
318
237
  };
319
238
  },
320
239
  },
@@ -322,10 +241,6 @@ exports.formValidatorsSharedDefinitions = [
322
241
  class: "jsonata-expression",
323
242
  message: "@validator-error-jsonata-expression",
324
243
  createAsync: (config) => {
325
- const optionNameKey = "class";
326
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "jsonata-expression");
327
- const optionMessageKey = "message";
328
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-jsonata-expression");
329
244
  const optionDescriptionKey = "description";
330
245
  const optionDescriptionValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionDescriptionKey, "");
331
246
  const optionExpressionKey = "expression";
@@ -364,16 +279,11 @@ exports.formValidatorsSharedDefinitions = [
364
279
  }
365
280
  return success
366
281
  ? null
367
- : {
368
- [optionNameValue]: {
369
- [optionMessageKey]: optionMessageValue,
370
- params: {
371
- expression: expression,
372
- description: optionDescriptionValue,
373
- actual: value,
374
- },
375
- },
376
- };
282
+ : (0, helpers_1.formValidatorBuildError)(config, {
283
+ expression: expression,
284
+ description: optionDescriptionValue,
285
+ actual: control.value,
286
+ });
377
287
  };
378
288
  },
379
289
  },
@@ -382,10 +292,6 @@ exports.formValidatorsSharedDefinitions = [
382
292
  class: "orcid",
383
293
  message: "@validator-error-orcid",
384
294
  create: (config) => {
385
- const optionNameKey = "class";
386
- const optionNameValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionNameKey, "orcid");
387
- const optionMessageKey = "message";
388
- const optionMessageValue = (0, helpers_1.formValidatorGetDefinitionString)(config, optionMessageKey, "@validator-error-orcid");
389
295
  return (control) => {
390
296
  if (control.value == null || control.value === "") {
391
297
  return null; // don't validate empty values
@@ -393,25 +299,15 @@ exports.formValidatorsSharedDefinitions = [
393
299
  let value = control.value.toString();
394
300
  // Validate format: either xxxx-xxxx-xxxx-xxxx or xxxxxxxxxxxxxxxx, last digit can be X or x
395
301
  if (!/^(\d{4}-\d{4}-\d{4}-\d{3}[\dXx]|\d{15}[\dXx])$/.test(value)) {
396
- return {
397
- [optionNameValue]: {
398
- [optionMessageKey]: optionMessageValue,
399
- params: {
400
- actual: control.value,
401
- },
402
- },
403
- };
302
+ return (0, helpers_1.formValidatorBuildError)(config, {
303
+ actual: control.value,
304
+ });
404
305
  }
405
306
  value = value.replace(/-/g, '');
406
307
  if (value.length !== 16) {
407
- return {
408
- [optionNameValue]: {
409
- [optionMessageKey]: optionMessageValue,
410
- params: {
411
- actual: control.value,
412
- },
413
- },
414
- };
308
+ return (0, helpers_1.formValidatorBuildError)(config, {
309
+ actual: control.value,
310
+ });
415
311
  }
416
312
  const baseDigits = value.substring(0, 15);
417
313
  const checkDigit = value.substring(15);
@@ -424,18 +320,13 @@ exports.formValidatorsSharedDefinitions = [
424
320
  const result = (12 - remainder) % 11;
425
321
  const calculatedCheckDigit = result === 10 ? "X" : result.toString();
426
322
  if (checkDigit.toUpperCase() !== calculatedCheckDigit) {
427
- return {
428
- [optionNameValue]: {
429
- [optionMessageKey]: optionMessageValue,
430
- params: {
431
- actual: control.value,
432
- },
433
- },
434
- };
323
+ return (0, helpers_1.formValidatorBuildError)(config, {
324
+ actual: control.value,
325
+ });
435
326
  }
436
327
  return null;
437
328
  };
438
329
  },
439
330
  },
440
331
  ];
441
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdUNBUW1CO0FBSW5COzs7O0dBSUc7QUFDVSxRQUFBLDJCQUEyQixHQUFHLG9NQUFvTSxDQUFDO0FBRWhQOzs7Ozs7Ozs7Ozs7R0FZRztBQUNVLFFBQUEsK0JBQStCLEdBQThCO0lBQ3hFO1FBQ0UsS0FBSyxFQUFFLEtBQUs7UUFDWixPQUFPLEVBQUUsc0JBQXNCO1FBQy9CLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2pCLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQztZQUM5QixNQUFNLGVBQWUsR0FBRyxJQUFBLDBDQUFnQyxFQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdkYsTUFBTSxnQkFBZ0IsR0FBRyxTQUFTLENBQUM7WUFDbkMsTUFBTSxrQkFBa0IsR0FBRyxJQUFBLDBDQUFnQyxFQUFDLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO1lBQzlHLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQztZQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFBLDBDQUFnQyxFQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztZQUM5RSxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksY0FBYyxJQUFJLElBQUksRUFBRSxDQUFDO29CQUNwRCxPQUFPLElBQUksQ0FBQyxDQUFDLHlEQUF5RDtnQkFDeEUsQ0FBQztnQkFFRCxJQUFJLEtBQUssQ0FBQztnQkFDVixJQUFJLENBQUM7b0JBQ0gsS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDO2dCQUN4RCxDQUFDO2dC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
332
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92YWxpZGF0aW9uL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdUNBU21CO0FBSW5COzs7O0dBSUc7QUFDVSxRQUFBLDJCQUEyQixHQUFHLG9NQUFvTSxDQUFDO0FBRWhQOzs7Ozs7Ozs7Ozs7R0FZRztBQUNVLFFBQUEsK0JBQStCLEdBQThCO0lBQ3hFO1FBQ0UsS0FBSyxFQUFFLEtBQUs7UUFDWixPQUFPLEVBQUUsc0JBQXNCO1FBQy9CLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2pCLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQztZQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFBLDBDQUFnQyxFQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztZQUM5RSxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksY0FBYyxJQUFJLElBQUksRUFBRSxDQUFDO29CQUNwRCxPQUFPLElBQUksQ0FBQyxDQUFDLHlEQUF5RDtnQkFDeEUsQ0FBQztnQkFFRCxJQUFJLEtBQUssQ0FBQztnQkFDVixJQUFJLENBQUM7b0JBQ0gsS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDO2dCQUN4RCxDQUFDO2dCQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7b0JBQ2IsS0FBSyxHQUFHLFNBQVMsQ0FBQztnQkFDcEIsQ0FBQztnQkFFRCwyRUFBMkU7Z0JBQzNFLDBGQUEwRjtnQkFDMUYsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxHQUFHLGNBQWMsQ0FBQyxFQUFFLENBQUM7b0JBQ3JFLE9BQU8sSUFBQSxpQ0FBdUIsRUFBQyxN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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@researchdatabox/sails-ng-common",
3
- "version": "0.0.1-beta.9604",
3
+ "version": "0.0.1-beta.9700",
4
4
  "description": "Common models shared between Sails API endpoints and client-side Angular code",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",