@rivet-health/design-system 7.2.0 → 7.2.1

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.
@@ -6,17 +6,20 @@ export class CurrencyFieldComponent extends NumberFieldComponent {
6
6
  constructor() {
7
7
  super(...arguments);
8
8
  this.placeholder = '0.00';
9
+ this.minimumFractionDigits = 2;
9
10
  this.maximumFractionDigits = 2;
10
11
  }
11
12
  }
12
13
  CurrencyFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CurrencyFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
13
- CurrencyFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CurrencyFieldComponent, selector: "riv-currency-field", inputs: { placeholder: "placeholder", maximumFractionDigits: "maximumFractionDigits" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: i1.InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
+ CurrencyFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CurrencyFieldComponent, selector: "riv-currency-field", inputs: { placeholder: "placeholder", minimumFractionDigits: "minimumFractionDigits", maximumFractionDigits: "maximumFractionDigits" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: i1.InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CurrencyFieldComponent, decorators: [{
15
16
  type: Component,
16
17
  args: [{ selector: 'riv-currency-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"] }]
17
18
  }], propDecorators: { placeholder: [{
18
19
  type: Input
20
+ }], minimumFractionDigits: [{
21
+ type: Input
19
22
  }], maximumFractionDigits: [{
20
23
  type: Input
21
24
  }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvY3VycmVuY3ktZmllbGQvY3VycmVuY3ktZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvY3VycmVuY3ktZmllbGQvY3VycmVuY3ktZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQVE5RSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsb0JBQW9CO0lBTmhFOztRQVFXLGdCQUFXLEdBQVcsTUFBTSxDQUFDO1FBRzdCLDBCQUFxQixHQUFXLENBQUMsQ0FBQztLQUM1Qzs7bUhBTlksc0JBQXNCO3VHQUF0QixzQkFBc0IseUtDVG5DLGtzQkEyQkE7MkZEbEJhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs4QkFJdEMsV0FBVztzQkFEbkIsS0FBSztnQkFJRyxxQkFBcUI7c0JBRDdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnVtYmVyRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9udW1iZXItZmllbGQvbnVtYmVyLWZpZWxkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Jpdi1jdXJyZW5jeS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXJyZW5jeS1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N1cnJlbmN5LWZpZWxkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEN1cnJlbmN5RmllbGRDb21wb25lbnQgZXh0ZW5kcyBOdW1iZXJGaWVsZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnMC4wMCc7XG5cbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXIgPSAyO1xufVxuIiwiPHJpdi1pbnB1dC1sYWJlbFxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbaGVscF09XCJoZWxwXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgW2xhYmVsQWN0aW9uVGV4dF09XCJsYWJlbEFjdGlvblRleHRcIlxuICAobGFiZWxBY3Rpb24pPVwibGFiZWxBY3Rpb24uZW1pdCgkZXZlbnQpXCJcbj5cbiAgPHNwYW4gY2xhc3M9XCJwcmVmaXhcIj4kPC9zcGFuPlxuICA8aW5wdXRcbiAgICAjaW5wdXRcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICBbdmFsdWVdPVwidGV4dFwiXG4gICAgKGlucHV0KT1cInRleHQgPSBpbnB1dC52YWx1ZVwiXG4gICAgW2NsYXNzLndhcm5pbmddPVwic3RhdGUgPT09ICd3YXJuaW5nJ1wiXG4gICAgW2NsYXNzLmVycm9yXT1cInN0YXRlID09PSAnZXJyb3InXCJcbiAgICBbc3R5bGUudGV4dEFsaWduXT1cImFsaWduXCJcbiAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgIGF1dG9jb3JyZWN0PVwib2ZmXCJcbiAgICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXG4gICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAoYmx1cik9XCJibHVyKClcIlxuICAvPlxuPC9yaXYtaW5wdXQtbGFiZWw+XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvY3VycmVuY3ktZmllbGQvY3VycmVuY3ktZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvY3VycmVuY3ktZmllbGQvY3VycmVuY3ktZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQVE5RSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsb0JBQW9CO0lBTmhFOztRQVFXLGdCQUFXLEdBQVcsTUFBTSxDQUFDO1FBRzdCLDBCQUFxQixHQUFXLENBQUMsQ0FBQztRQUdsQywwQkFBcUIsR0FBVyxDQUFDLENBQUM7S0FDNUM7O21IQVRZLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHlOQ1RuQyxrc0JBMkJBOzJGRGxCYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU07OEJBSXRDLFdBQVc7c0JBRG5CLEtBQUs7Z0JBSUcscUJBQXFCO3NCQUQ3QixLQUFLO2dCQUlHLHFCQUFxQjtzQkFEN0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL251bWJlci1maWVsZC9udW1iZXItZmllbGQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncml2LWN1cnJlbmN5LWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1cnJlbmN5LWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VycmVuY3ktZmllbGQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ3VycmVuY3lGaWVsZENvbXBvbmVudCBleHRlbmRzIE51bWJlckZpZWxkQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcwLjAwJztcblxuICBASW5wdXQoKVxuICBvdmVycmlkZSBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlciA9IDI7XG5cbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXIgPSAyO1xufVxuIiwiPHJpdi1pbnB1dC1sYWJlbFxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbaGVscF09XCJoZWxwXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgW2xhYmVsQWN0aW9uVGV4dF09XCJsYWJlbEFjdGlvblRleHRcIlxuICAobGFiZWxBY3Rpb24pPVwibGFiZWxBY3Rpb24uZW1pdCgkZXZlbnQpXCJcbj5cbiAgPHNwYW4gY2xhc3M9XCJwcmVmaXhcIj4kPC9zcGFuPlxuICA8aW5wdXRcbiAgICAjaW5wdXRcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICBbdmFsdWVdPVwidGV4dFwiXG4gICAgKGlucHV0KT1cInRleHQgPSBpbnB1dC52YWx1ZVwiXG4gICAgW2NsYXNzLndhcm5pbmddPVwic3RhdGUgPT09ICd3YXJuaW5nJ1wiXG4gICAgW2NsYXNzLmVycm9yXT1cInN0YXRlID09PSAnZXJyb3InXCJcbiAgICBbc3R5bGUudGV4dEFsaWduXT1cImFsaWduXCJcbiAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgIGF1dG9jb3JyZWN0PVwib2ZmXCJcbiAgICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXG4gICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAoYmx1cik9XCJibHVyKClcIlxuICAvPlxuPC9yaXYtaW5wdXQtbGFiZWw+XG4iXX0=
@@ -10,6 +10,7 @@ export class NumberFieldComponent extends InputLabelComponent {
10
10
  this.placeholder = '';
11
11
  this.state = 'valid';
12
12
  this.maximumFractionDigits = 0;
13
+ this.minimumFractionDigits = 0;
13
14
  this.min = -Infinity;
14
15
  this.max = Infinity;
15
16
  this.align = 'left';
@@ -20,7 +21,7 @@ export class NumberFieldComponent extends InputLabelComponent {
20
21
  if (NumberFieldComponent.clean(v, this.maximumFractionDigits, this.min, this.max) ===
21
22
  NumberFieldComponent.clean(this._text, this.maximumFractionDigits, this.min, this.max))
22
23
  return;
23
- this._text = NumberFieldComponent.format(v, this.maximumFractionDigits, this.min, this.max);
24
+ this._text = NumberFieldComponent.format(v, this.minimumFractionDigits, this.maximumFractionDigits, this.min, this.max);
24
25
  }
25
26
  set text(t) {
26
27
  this._text = t;
@@ -30,11 +31,11 @@ export class NumberFieldComponent extends InputLabelComponent {
30
31
  return this._text;
31
32
  }
32
33
  blur() {
33
- this._text = NumberFieldComponent.format(this._text, this.maximumFractionDigits, this.min, this.max);
34
+ this._text = NumberFieldComponent.format(this._text, this.minimumFractionDigits, this.maximumFractionDigits, this.min, this.max);
34
35
  }
35
36
  }
36
37
  NumberFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NumberFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
37
- NumberFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NumberFieldComponent, selector: "riv-number-field", inputs: { disabled: "disabled", readonly: "readonly", placeholder: "placeholder", state: "state", maximumFractionDigits: "maximumFractionDigits", min: "min", max: "max", align: "align", value: "value" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: i1.InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
+ NumberFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NumberFieldComponent, selector: "riv-number-field", inputs: { disabled: "disabled", readonly: "readonly", placeholder: "placeholder", state: "state", maximumFractionDigits: "maximumFractionDigits", minimumFractionDigits: "minimumFractionDigits", min: "min", max: "max", align: "align", value: "value" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: i1.InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NumberFieldComponent, decorators: [{
39
40
  type: Component,
40
41
  args: [{ selector: 'riv-number-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"] }]
@@ -48,6 +49,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
48
49
  type: Input
49
50
  }], maximumFractionDigits: [{
50
51
  type: Input
52
+ }], minimumFractionDigits: [{
53
+ type: Input
51
54
  }], min: [{
52
55
  type: Input
53
56
  }], max: [{
@@ -84,12 +87,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
84
87
  return Math.max(min, Math.min(max, cleaned));
85
88
  }
86
89
  NumberFieldComponent.clean = clean;
87
- function format(v, maximumFractionDigits, min, max) {
90
+ function format(v, minimumFractionDigits, maximumFractionDigits, min, max) {
88
91
  const cleaned = clean(v, maximumFractionDigits, min, max);
89
92
  if (cleaned === null)
90
93
  return '';
91
- return new Intl.NumberFormat('en-US', { maximumFractionDigits }).format(cleaned);
94
+ return new Intl.NumberFormat('en-US', {
95
+ minimumFractionDigits,
96
+ maximumFractionDigits,
97
+ }).format(cleaned);
92
98
  }
93
99
  NumberFieldComponent.format = format;
94
100
  })(NumberFieldComponent || (NumberFieldComponent = {}));
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jpdi9zcmMvbGliL2lucHV0L251bWJlci1maWVsZC9udW1iZXItZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvbnVtYmVyLWZpZWxkL251bWJlci1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBUzNFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxtQkFBbUI7SUFON0Q7O1FBUUUsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBR3pCLFVBQUssR0FBNkIsT0FBTyxDQUFDO1FBRzFDLDBCQUFxQixHQUFXLENBQUMsQ0FBQztRQUdsQyxRQUFHLEdBQVcsQ0FBQyxRQUFRLENBQUM7UUFHeEIsUUFBRyxHQUFXLFFBQVEsQ0FBQztRQUd2QixVQUFLLEdBQW1DLE1BQU0sQ0FBQztRQTRCL0MsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUV0QyxVQUFLLEdBQVcsRUFBRSxDQUFDO0tBeUI5QjtJQXJEQyxJQUNJLEtBQUssQ0FBQyxDQUFnQjtRQUN4QixJQUNFLG9CQUFvQixDQUFDLEtBQUssQ0FDeEIsQ0FBQyxFQUNELElBQUksQ0FBQyxxQkFBcUIsRUFDMUIsSUFBSSxDQUFDLEdBQUcsRUFDUixJQUFJLENBQUMsR0FBRyxDQUNUO1lBQ0Qsb0JBQW9CLENBQUMsS0FBSyxDQUN4QixJQUFJ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QUFNLENBQ3BCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FDckQsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBL0JlLDBCQUFLLFFBK0JwQixDQUFBO0lBRUQsU0FBZ0IsTUFBTSxDQUNwQixDQUFnQixFQUNoQixxQkFBNkIsRUFDN0IsR0FBVyxFQUNYLEdBQVc7UUFFWCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxRCxJQUFJLE9BQU8sS0FBSyxJQUFJO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDaEMsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FDckUsT0FBTyxDQUNSLENBQUM7SUFDSixDQUFDO0lBWGUsMkJBQU0sU0FXckIsQ0FBQTtBQUNILENBQUMsRUFqRGdCLG9CQUFvQixLQUFwQixvQkFBb0IsUUFpRHBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0TGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC1sYWJlbC9pbnB1dC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC1maWVsZC90ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Jpdi1udW1iZXItZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbnVtYmVyLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbnVtYmVyLWZpZWxkLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE51bWJlckZpZWxkQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRMYWJlbENvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgc3RhdGU6IFRleHRGaWVsZENvbXBvbmVudC5TdGF0ZSA9ICd2YWxpZCc7XG5cbiAgQElucHV0KClcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBudW1iZXIgPSAwO1xuXG4gIEBJbnB1dCgpXG4gIG1pbjogbnVtYmVyID0gLUluZmluaXR5O1xuXG4gIEBJbnB1dCgpXG4gIG1heDogbnVtYmVyID0gSW5maW5pdHk7XG5cbiAgQElucHV0KClcbiAgYWxpZ246IE51bWJlckZpZWxkQ29tcG9uZW50LkFsaWdubWVudCA9ICdsZWZ0JztcblxuICBASW5wdXQoKVxuICBzZXQgdmFsdWUodjogc3RyaW5nIHwgbnVsbCkge1xuICAgIGlmIChcbiAgICAgIE51bWJlckZpZWxkQ29tcG9uZW50LmNsZWFuKFxuICAgICAgICB2LFxuICAgICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgdGhpcy5taW4sXG4gICAgICAgIHRoaXMubWF4LFxuICAgICAgKSA9PT1cbiAgICAgIE51bWJlckZpZWxkQ29tcG9uZW50LmNsZWFuKFxuICAgICAgICB0aGlzLl90ZXh0LFxuICAgICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgdGhpcy5taW4sXG4gICAgICAgIHRoaXMubWF4LFxuICAgICAgKVxuICAgIClcbiAgICAgIHJldHVybjtcbiAgICB0aGlzLl90ZXh0ID0gTnVtYmVyRmllbGRDb21wb25lbnQuZm9ybWF0KFxuICAgICAgdixcbiAgICAgIHRoaXMubWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgdGhpcy5taW4sXG4gICAgICB0aGlzLm1heCxcbiAgICApO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBudWxsPigpO1xuXG4gIHByb3RlY3RlZCBfdGV4dDogc3RyaW5nID0gJyc7XG5cbiAgc2V0IHRleHQodDogc3RyaW5nKSB7XG4gICAgdGhpcy5fdGV4dCA9IHQ7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KFxuICAgICAgTnVtYmVyRmllbGRDb21wb25lbnQuY2xlYW4oXG4gICAgICAgIHQsXG4gICAgICAgIHRoaXMubWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICB0aGlzLm1pbixcbiAgICAgICAgdGhpcy5tYXgsXG4gICAgICApLFxuICAgICk7XG4gIH1cbiAgZ2V0IHRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdGV4dDtcbiAgfVxuXG4gIGJsdXIoKSB7XG4gICAgdGhpcy5fdGV4dCA9IE51bWJlckZpZWxkQ29tcG9uZW50LmZvcm1hdChcbiAgICAgIHRoaXMuX3RleHQsXG4gICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgIHRoaXMubWluLFxuICAgICAgdGhpcy5tYXgsXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE51bWJlckZpZWxkQ29tcG9uZW50IHtcbiAgZXhwb3J0IGNvbnN0IEFsaWdubWVudHMgPSBbJ2xlZnQnLCAnY2VudGVyJywgJ3JpZ2h0J10gYXMgY29uc3Q7XG4gIGV4cG9ydCB0eXBlIEFsaWdubWVudCA9ICh0eXBlb2YgQWxpZ25tZW50cylbbnVtYmVyXTtcblxuICBleHBvcnQgZnVuY3Rpb24gY2xlYW4oXG4gICAgdjogc3RyaW5nIHwgbnVsbCxcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcixcbiAgICBtaW46IG51bWJlcixcbiAgICBtYXg6IG51bWJlcixcbiAgKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgZnVuY3Rpb24gZGlnaXRzT25seShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL1xcRC9nLCAnJyk7XG4gICAgfVxuXG4gICAgaWYgKCF2KSByZXR1cm4gbnVsbDtcbiAgICBjb25zdCBkZWNpbWFsUG9pbnRJZHggPSB2LmluZGV4T2YoJy4nKTtcbiAgICBjb25zdCBzaWduSWR4ID0gdi5pbmRleE9mKCctJyk7XG4gICAgY29uc3QgY2xlYW5lZFN0cmluZzogc3RyaW5nID1cbiAgICAgIChzaWduSWR4ID4gLTEgPyAnLScgOiAnJykgK1xuICAgICAgKGRlY2ltYWxQb2ludElkeCA+IC0xXG4gICAgICAgID8gZGlnaXRzT25seSh2LnN1YnN0cmluZygwLCBkZWNpbWFsUG9pbnRJZHgpKSArXG4gICAgICAgICAgJy4nICtcbiAgICAgICAgICBkaWdpdHNPbmx5KHYuc3Vic3RyaW5nKGRlY2ltYWxQb2ludElkeCArIDEpKVxuICAgICAgICA6IGRpZ2l0c09ubHkodikpO1xuICAgIGlmIChcbiAgICAgIGNsZWFuZWRTdHJpbmcgPT09ICcuJyB8fFxuICAgICAgY2xlYW5lZFN0cmluZyA9PT0gJy0nIHx8XG4gICAgICBjbGVhbmVkU3RyaW5nID09PSAnLS4nXG4gICAgKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgY2xlYW5lZCA9IE51bWJlcihcbiAgICAgIE51bWJlcihjbGVhbmVkU3RyaW5nKS50b0ZpeGVkKG1heGltdW1GcmFjdGlvbkRpZ2l0cyksXG4gICAgKTtcbiAgICByZXR1cm4gTWF0aC5tYXgobWluLCBNYXRoLm1pbihtYXgsIGNsZWFuZWQpKTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBmb3JtYXQoXG4gICAgdjogc3RyaW5nIHwgbnVsbCxcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcixcbiAgICBtaW46IG51bWJlcixcbiAgICBtYXg6IG51bWJlcixcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGVhbmVkID0gY2xlYW4odiwgbWF4aW11bUZyYWN0aW9uRGlnaXRzLCBtaW4sIG1heCk7XG4gICAgaWYgKGNsZWFuZWQgPT09IG51bGwpIHJldHVybiAnJztcbiAgICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KCdlbi1VUycsIHsgbWF4aW11bUZyYWN0aW9uRGlnaXRzIH0pLmZvcm1hdChcbiAgICAgIGNsZWFuZWQsXG4gICAgKTtcbiAgfVxufVxuIiwiPHJpdi1pbnB1dC1sYWJlbFxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbaGVscF09XCJoZWxwXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgW2xhYmVsQWN0aW9uVGV4dF09XCJsYWJlbEFjdGlvblRleHRcIlxuICAobGFiZWxBY3Rpb24pPVwibGFiZWxBY3Rpb24uZW1pdCgkZXZlbnQpXCJcbj5cbiAgPGlucHV0XG4gICAgI2lucHV0XG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICB0eXBlPVwidGV4dFwiXG4gICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgW3ZhbHVlXT1cInRleHRcIlxuICAgIChpbnB1dCk9XCJ0ZXh0ID0gaW5wdXQudmFsdWVcIlxuICAgIFtjbGFzcy53YXJuaW5nXT1cInN0YXRlID09PSAnd2FybmluZydcIlxuICAgIFtjbGFzcy5lcnJvcl09XCJzdGF0ZSA9PT0gJ2Vycm9yJ1wiXG4gICAgW3N0eWxlLnRleHRBbGlnbl09XCJhbGlnblwiXG4gICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICBhdXRvY29ycmVjdD1cIm9mZlwiXG4gICAgYXV0b2NhcGl0YWxpemU9XCJvZmZcIlxuICAgIHNwZWxsY2hlY2s9XCJmYWxzZVwiXG4gICAgKGJsdXIpPVwiYmx1cigpXCJcbiAgLz5cbjwvcml2LWlucHV0LWxhYmVsPlxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jpdi9zcmMvbGliL2lucHV0L251bWJlci1maWVsZC9udW1iZXItZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaW5wdXQvbnVtYmVyLWZpZWxkL251bWJlci1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBUzNFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxtQkFBbUI7SUFON0Q7O1FBUUUsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBR3pCLFVBQUssR0FBNkIsT0FBTyxDQUFDO1FBRzFDLDBCQUFxQixHQUFXLENBQUMsQ0FBQztRQUdsQywwQkFBcUIsR0FBVyxDQUFDLENBQUM7UUFHbEMsUUFBRyxHQUFXLENBQUMsUUFBUSxDQUFDO1FBR3hCLFFBQUcsR0FBVyxRQUFRLENBQUM7UUFHdkIsVUFBSyxHQUFtQyxNQUFNLENBQUM7UUE2Qi9DLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFFdEMsVUFBSyxHQUFXLEVBQUUsQ0FBQztLQTBCOUI7SUF2REMsSUFDSSxLQUFLLENBQUMsQ0FBZ0I7UUFDeEIsSUFDRSxvQkFBb0IsQ0FBQyxLQUFLLENBQ3hCLENBQUMsRUFDRCxJQUFJLENBQUMscUJBQXFCLEVBQzFCLElBQUksQ0FBQyxHQUFHLEVBQ1IsSUFBSSxDQUFDLEdBQUcsQ0FDVDtZQUNE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R0FBRztZQUNyQixhQUFhLEtBQUssR0FBRztZQUNyQixhQUFhLEtBQUssSUFBSSxFQUN0QjtZQUNBLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQ3BCLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FDckQsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBL0JlLDBCQUFLLFFBK0JwQixDQUFBO0lBRUQsU0FBZ0IsTUFBTSxDQUNwQixDQUFnQixFQUNoQixxQkFBNkIsRUFDN0IscUJBQTZCLEVBQzdCLEdBQVcsRUFDWCxHQUFXO1FBRVgsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxxQkFBcUIsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDMUQsSUFBSSxPQUFPLEtBQUssSUFBSTtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRTtZQUNwQyxxQkFBcUI7WUFDckIscUJBQXFCO1NBQ3RCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQWJlLDJCQUFNLFNBYXJCLENBQUE7QUFDSCxDQUFDLEVBbkRnQixvQkFBb0IsS0FBcEIsb0JBQW9CLFFBbURwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnB1dExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5wdXQtbGFiZWwvaW5wdXQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL3RleHQtZmllbGQvdGV4dC1maWVsZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyaXYtbnVtYmVyLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1maWVsZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJGaWVsZENvbXBvbmVudCBleHRlbmRzIElucHV0TGFiZWxDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHN0YXRlOiBUZXh0RmllbGRDb21wb25lbnQuU3RhdGUgPSAndmFsaWQnO1xuXG4gIEBJbnB1dCgpXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0czogbnVtYmVyID0gMDtcblxuICBASW5wdXQoKVxuICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlciA9IDA7XG5cbiAgQElucHV0KClcbiAgbWluOiBudW1iZXIgPSAtSW5maW5pdHk7XG5cbiAgQElucHV0KClcbiAgbWF4OiBudW1iZXIgPSBJbmZpbml0eTtcblxuICBASW5wdXQoKVxuICBhbGlnbjogTnVtYmVyRmllbGRDb21wb25lbnQuQWxpZ25tZW50ID0gJ2xlZnQnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWx1ZSh2OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgaWYgKFxuICAgICAgTnVtYmVyRmllbGRDb21wb25lbnQuY2xlYW4oXG4gICAgICAgIHYsXG4gICAgICAgIHRoaXMubWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICB0aGlzLm1pbixcbiAgICAgICAgdGhpcy5tYXgsXG4gICAgICApID09PVxuICAgICAgTnVtYmVyRmllbGRDb21wb25lbnQuY2xlYW4oXG4gICAgICAgIHRoaXMuX3RleHQsXG4gICAgICAgIHRoaXMubWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICB0aGlzLm1pbixcbiAgICAgICAgdGhpcy5tYXgsXG4gICAgICApXG4gICAgKVxuICAgICAgcmV0dXJuO1xuICAgIHRoaXMuX3RleHQgPSBOdW1iZXJGaWVsZENvbXBvbmVudC5mb3JtYXQoXG4gICAgICB2LFxuICAgICAgdGhpcy5taW5pbXVtRnJhY3Rpb25EaWdpdHMsXG4gICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgIHRoaXMubWluLFxuICAgICAgdGhpcy5tYXgsXG4gICAgKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyIHwgbnVsbD4oKTtcblxuICBwcm90ZWN0ZWQgX3RleHQ6IHN0cmluZyA9ICcnO1xuXG4gIHNldCB0ZXh0KHQ6IHN0cmluZykge1xuICAgIHRoaXMuX3RleHQgPSB0O1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChcbiAgICAgIE51bWJlckZpZWxkQ29tcG9uZW50LmNsZWFuKFxuICAgICAgICB0LFxuICAgICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgdGhpcy5taW4sXG4gICAgICAgIHRoaXMubWF4LFxuICAgICAgKSxcbiAgICApO1xuICB9XG4gIGdldCB0ZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHQ7XG4gIH1cblxuICBibHVyKCkge1xuICAgIHRoaXMuX3RleHQgPSBOdW1iZXJGaWVsZENvbXBvbmVudC5mb3JtYXQoXG4gICAgICB0aGlzLl90ZXh0LFxuICAgICAgdGhpcy5taW5pbXVtRnJhY3Rpb25EaWdpdHMsXG4gICAgICB0aGlzLm1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgIHRoaXMubWluLFxuICAgICAgdGhpcy5tYXgsXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE51bWJlckZpZWxkQ29tcG9uZW50IHtcbiAgZXhwb3J0IGNvbnN0IEFsaWdubWVudHMgPSBbJ2xlZnQnLCAnY2VudGVyJywgJ3JpZ2h0J10gYXMgY29uc3Q7XG4gIGV4cG9ydCB0eXBlIEFsaWdubWVudCA9ICh0eXBlb2YgQWxpZ25tZW50cylbbnVtYmVyXTtcblxuICBleHBvcnQgZnVuY3Rpb24gY2xlYW4oXG4gICAgdjogc3RyaW5nIHwgbnVsbCxcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcixcbiAgICBtaW46IG51bWJlcixcbiAgICBtYXg6IG51bWJlcixcbiAgKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgZnVuY3Rpb24gZGlnaXRzT25seShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gc3RyLnJlcGxhY2UoL1xcRC9nLCAnJyk7XG4gICAgfVxuXG4gICAgaWYgKCF2KSByZXR1cm4gbnVsbDtcbiAgICBjb25zdCBkZWNpbWFsUG9pbnRJZHggPSB2LmluZGV4T2YoJy4nKTtcbiAgICBjb25zdCBzaWduSWR4ID0gdi5pbmRleE9mKCctJyk7XG4gICAgY29uc3QgY2xlYW5lZFN0cmluZzogc3RyaW5nID1cbiAgICAgIChzaWduSWR4ID4gLTEgPyAnLScgOiAnJykgK1xuICAgICAgKGRlY2ltYWxQb2ludElkeCA+IC0xXG4gICAgICAgID8gZGlnaXRzT25seSh2LnN1YnN0cmluZygwLCBkZWNpbWFsUG9pbnRJZHgpKSArXG4gICAgICAgICAgJy4nICtcbiAgICAgICAgICBkaWdpdHNPbmx5KHYuc3Vic3RyaW5nKGRlY2ltYWxQb2ludElkeCArIDEpKVxuICAgICAgICA6IGRpZ2l0c09ubHkodikpO1xuICAgIGlmIChcbiAgICAgIGNsZWFuZWRTdHJpbmcgPT09ICcuJyB8fFxuICAgICAgY2xlYW5lZFN0cmluZyA9PT0gJy0nIHx8XG4gICAgICBjbGVhbmVkU3RyaW5nID09PSAnLS4nXG4gICAgKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgY2xlYW5lZCA9IE51bWJlcihcbiAgICAgIE51bWJlcihjbGVhbmVkU3RyaW5nKS50b0ZpeGVkKG1heGltdW1GcmFjdGlvbkRpZ2l0cyksXG4gICAgKTtcbiAgICByZXR1cm4gTWF0aC5tYXgobWluLCBNYXRoLm1pbihtYXgsIGNsZWFuZWQpKTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBmb3JtYXQoXG4gICAgdjogc3RyaW5nIHwgbnVsbCxcbiAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcixcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IG51bWJlcixcbiAgICBtaW46IG51bWJlcixcbiAgICBtYXg6IG51bWJlcixcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGVhbmVkID0gY2xlYW4odiwgbWF4aW11bUZyYWN0aW9uRGlnaXRzLCBtaW4sIG1heCk7XG4gICAgaWYgKGNsZWFuZWQgPT09IG51bGwpIHJldHVybiAnJztcbiAgICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KCdlbi1VUycsIHtcbiAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICB9KS5mb3JtYXQoY2xlYW5lZCk7XG4gIH1cbn1cbiIsIjxyaXYtaW5wdXQtbGFiZWxcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2hlbHBdPVwiaGVscFwiXG4gIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gIFtsYWJlbEFjdGlvblRleHRdPVwibGFiZWxBY3Rpb25UZXh0XCJcbiAgKGxhYmVsQWN0aW9uKT1cImxhYmVsQWN0aW9uLmVtaXQoJGV2ZW50KVwiXG4+XG4gIDxpbnB1dFxuICAgICNpbnB1dFxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgdHlwZT1cInRleHRcIlxuICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgIFt2YWx1ZV09XCJ0ZXh0XCJcbiAgICAoaW5wdXQpPVwidGV4dCA9IGlucHV0LnZhbHVlXCJcbiAgICBbY2xhc3Mud2FybmluZ109XCJzdGF0ZSA9PT0gJ3dhcm5pbmcnXCJcbiAgICBbY2xhc3MuZXJyb3JdPVwic3RhdGUgPT09ICdlcnJvcidcIlxuICAgIFtzdHlsZS50ZXh0QWxpZ25dPVwiYWxpZ25cIlxuICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgYXV0b2NvcnJlY3Q9XCJvZmZcIlxuICAgIGF1dG9jYXBpdGFsaXplPVwib2ZmXCJcbiAgICBzcGVsbGNoZWNrPVwiZmFsc2VcIlxuICAgIChibHVyKT1cImJsdXIoKVwiXG4gIC8+XG48L3Jpdi1pbnB1dC1sYWJlbD5cbiJdfQ==
@@ -1453,6 +1453,7 @@ class NumberFieldComponent extends InputLabelComponent {
1453
1453
  this.placeholder = '';
1454
1454
  this.state = 'valid';
1455
1455
  this.maximumFractionDigits = 0;
1456
+ this.minimumFractionDigits = 0;
1456
1457
  this.min = -Infinity;
1457
1458
  this.max = Infinity;
1458
1459
  this.align = 'left';
@@ -1463,7 +1464,7 @@ class NumberFieldComponent extends InputLabelComponent {
1463
1464
  if (NumberFieldComponent.clean(v, this.maximumFractionDigits, this.min, this.max) ===
1464
1465
  NumberFieldComponent.clean(this._text, this.maximumFractionDigits, this.min, this.max))
1465
1466
  return;
1466
- this._text = NumberFieldComponent.format(v, this.maximumFractionDigits, this.min, this.max);
1467
+ this._text = NumberFieldComponent.format(v, this.minimumFractionDigits, this.maximumFractionDigits, this.min, this.max);
1467
1468
  }
1468
1469
  set text(t) {
1469
1470
  this._text = t;
@@ -1473,11 +1474,11 @@ class NumberFieldComponent extends InputLabelComponent {
1473
1474
  return this._text;
1474
1475
  }
1475
1476
  blur() {
1476
- this._text = NumberFieldComponent.format(this._text, this.maximumFractionDigits, this.min, this.max);
1477
+ this._text = NumberFieldComponent.format(this._text, this.minimumFractionDigits, this.maximumFractionDigits, this.min, this.max);
1477
1478
  }
1478
1479
  }
1479
1480
  NumberFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NumberFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1480
- NumberFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NumberFieldComponent, selector: "riv-number-field", inputs: { disabled: "disabled", readonly: "readonly", placeholder: "placeholder", state: "state", maximumFractionDigits: "maximumFractionDigits", min: "min", max: "max", align: "align", value: "value" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1481
+ NumberFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NumberFieldComponent, selector: "riv-number-field", inputs: { disabled: "disabled", readonly: "readonly", placeholder: "placeholder", state: "state", maximumFractionDigits: "maximumFractionDigits", minimumFractionDigits: "minimumFractionDigits", min: "min", max: "max", align: "align", value: "value" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1481
1482
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NumberFieldComponent, decorators: [{
1482
1483
  type: Component,
1483
1484
  args: [{ selector: 'riv-number-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: ["input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"] }]
@@ -1491,6 +1492,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1491
1492
  type: Input
1492
1493
  }], maximumFractionDigits: [{
1493
1494
  type: Input
1495
+ }], minimumFractionDigits: [{
1496
+ type: Input
1494
1497
  }], min: [{
1495
1498
  type: Input
1496
1499
  }], max: [{
@@ -1527,11 +1530,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1527
1530
  return Math.max(min, Math.min(max, cleaned));
1528
1531
  }
1529
1532
  NumberFieldComponent.clean = clean;
1530
- function format(v, maximumFractionDigits, min, max) {
1533
+ function format(v, minimumFractionDigits, maximumFractionDigits, min, max) {
1531
1534
  const cleaned = clean(v, maximumFractionDigits, min, max);
1532
1535
  if (cleaned === null)
1533
1536
  return '';
1534
- return new Intl.NumberFormat('en-US', { maximumFractionDigits }).format(cleaned);
1537
+ return new Intl.NumberFormat('en-US', {
1538
+ minimumFractionDigits,
1539
+ maximumFractionDigits,
1540
+ }).format(cleaned);
1535
1541
  }
1536
1542
  NumberFieldComponent.format = format;
1537
1543
  })(NumberFieldComponent || (NumberFieldComponent = {}));
@@ -1540,16 +1546,19 @@ class CurrencyFieldComponent extends NumberFieldComponent {
1540
1546
  constructor() {
1541
1547
  super(...arguments);
1542
1548
  this.placeholder = '0.00';
1549
+ this.minimumFractionDigits = 2;
1543
1550
  this.maximumFractionDigits = 2;
1544
1551
  }
1545
1552
  }
1546
1553
  CurrencyFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CurrencyFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1547
- CurrencyFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CurrencyFieldComponent, selector: "riv-currency-field", inputs: { placeholder: "placeholder", maximumFractionDigits: "maximumFractionDigits" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1554
+ CurrencyFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CurrencyFieldComponent, selector: "riv-currency-field", inputs: { placeholder: "placeholder", minimumFractionDigits: "minimumFractionDigits", maximumFractionDigits: "maximumFractionDigits" }, usesInheritance: true, ngImport: i0, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "riv-input-label", inputs: ["label", "help", "required", "labelActionText"], outputs: ["labelAction"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1548
1555
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CurrencyFieldComponent, decorators: [{
1549
1556
  type: Component,
1550
1557
  args: [{ selector: 'riv-currency-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "<riv-input-label\n [label]=\"label\"\n [help]=\"help\"\n [required]=\"required\"\n [labelActionText]=\"labelActionText\"\n (labelAction)=\"labelAction.emit($event)\"\n>\n <span class=\"prefix\">$</span>\n <input\n #input\n [placeholder]=\"placeholder\"\n type=\"text\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [value]=\"text\"\n (input)=\"text = input.value\"\n [class.warning]=\"state === 'warning'\"\n [class.error]=\"state === 'error'\"\n [style.textAlign]=\"align\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n spellcheck=\"false\"\n (blur)=\"blur()\"\n />\n</riv-input-label>\n", styles: [":host{position:relative}.prefix{position:absolute;font:var(--input-medium);padding:var(--size-small)}input{width:100%;border:var(--border-width) solid var(--border-light);border-radius:var(--border-radius-small);font:var(--input-medium);color:var(--type-light-high-contrast);padding:var(--size-small) var(--size-small) var(--size-small) var(--size-xlarge)}input::placeholder{color:var(--type-light-disabled)}input:disabled{color:var(--type-light-disabled);background-color:var(--surface-light-1)}input:read-only{background-color:var(--surface-light-1)}input:focus{outline:none;border:var(--border-width) solid var(--purp-60)}input.warning{border-color:var(--surface-dark-caution)}input.error{border-color:var(--surface-dark-danger)}\n"] }]
1551
1558
  }], propDecorators: { placeholder: [{
1552
1559
  type: Input
1560
+ }], minimumFractionDigits: [{
1561
+ type: Input
1553
1562
  }], maximumFractionDigits: [{
1554
1563
  type: Input
1555
1564
  }] } });