@softpak/components 18.0.0 → 18.2.0-beta.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.
Files changed (67) hide show
  1. package/esm2022/spx-alert/spx-alert.component.mjs +53 -43
  2. package/esm2022/spx-app-expiry/spx-app-expiry.component.mjs +57 -40
  3. package/esm2022/spx-app-update/spx-app-update.component.mjs +61 -55
  4. package/esm2022/spx-card/spx-card-item.component.mjs +37 -31
  5. package/esm2022/spx-card/spx-card-line.component.mjs +63 -40
  6. package/esm2022/spx-card/spx-card.component.mjs +52 -49
  7. package/esm2022/spx-change-details/spx-change-details.component.mjs +3 -5
  8. package/esm2022/spx-channel-selection/src/spx-welcome.component.mjs +3 -6
  9. package/esm2022/spx-check-digit/spx-check-digit.component.mjs +4 -7
  10. package/esm2022/spx-form-section/spx-form-section.component.mjs +19 -14
  11. package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +3 -5
  12. package/esm2022/spx-form-view/spx-form-view.component.mjs +140 -132
  13. package/esm2022/spx-inputs/spx-dropdown.component.mjs +35 -36
  14. package/esm2022/spx-inputs/spx-input-box.component.mjs +143 -125
  15. package/esm2022/spx-inputs/spx-input-date.component.mjs +86 -83
  16. package/esm2022/spx-inputs/spx-input-float.component.mjs +2 -5
  17. package/esm2022/spx-inputs/spx-input-radio.component.mjs +25 -25
  18. package/esm2022/spx-inputs/spx-input-text.component.mjs +65 -61
  19. package/esm2022/spx-inputs/spx-input-time-modal.component.mjs +73 -60
  20. package/esm2022/spx-inputs/spx-input-time.component.mjs +2 -5
  21. package/esm2022/spx-inputs/spx-input.component.mjs +223 -213
  22. package/esm2022/spx-navigation/spx-home-tile.component.mjs +40 -37
  23. package/esm2022/spx-navigation/spx-navigation.component.mjs +6 -10
  24. package/esm2022/spx-number-check/spx-number-check.component.mjs +47 -41
  25. package/esm2022/spx-patch/spx-patch.component.mjs +27 -21
  26. package/esm2022/spx-spinner/spx-spinner.component.mjs +143 -142
  27. package/esm2022/spx-stock-info/spx-stock-info.component.mjs +6 -9
  28. package/esm2022/spx-toaster/src/spx-toaster.component.mjs +91 -96
  29. package/esm2022/spx-update/src/spx-update-info.component.mjs +3 -5
  30. package/esm2022/spx-validation/spx-validate-control.component.mjs +4 -7
  31. package/fesm2022/softpak-components-spx-alert.mjs +52 -42
  32. package/fesm2022/softpak-components-spx-alert.mjs.map +1 -1
  33. package/fesm2022/softpak-components-spx-app-expiry.mjs +56 -39
  34. package/fesm2022/softpak-components-spx-app-expiry.mjs.map +1 -1
  35. package/fesm2022/softpak-components-spx-app-update.mjs +60 -54
  36. package/fesm2022/softpak-components-spx-app-update.mjs.map +1 -1
  37. package/fesm2022/softpak-components-spx-card.mjs +148 -115
  38. package/fesm2022/softpak-components-spx-card.mjs.map +1 -1
  39. package/fesm2022/softpak-components-spx-change-details.mjs +2 -4
  40. package/fesm2022/softpak-components-spx-change-details.mjs.map +1 -1
  41. package/fesm2022/softpak-components-spx-channel-selection.mjs +2 -5
  42. package/fesm2022/softpak-components-spx-channel-selection.mjs.map +1 -1
  43. package/fesm2022/softpak-components-spx-check-digit.mjs +3 -6
  44. package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
  45. package/fesm2022/softpak-components-spx-form-section.mjs +18 -13
  46. package/fesm2022/softpak-components-spx-form-section.mjs.map +1 -1
  47. package/fesm2022/softpak-components-spx-form-view.mjs +141 -134
  48. package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
  49. package/fesm2022/softpak-components-spx-inputs.mjs +645 -595
  50. package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
  51. package/fesm2022/softpak-components-spx-navigation.mjs +44 -44
  52. package/fesm2022/softpak-components-spx-navigation.mjs.map +1 -1
  53. package/fesm2022/softpak-components-spx-number-check.mjs +46 -40
  54. package/fesm2022/softpak-components-spx-number-check.mjs.map +1 -1
  55. package/fesm2022/softpak-components-spx-patch.mjs +26 -20
  56. package/fesm2022/softpak-components-spx-patch.mjs.map +1 -1
  57. package/fesm2022/softpak-components-spx-spinner.mjs +142 -141
  58. package/fesm2022/softpak-components-spx-spinner.mjs.map +1 -1
  59. package/fesm2022/softpak-components-spx-stock-info.mjs +5 -8
  60. package/fesm2022/softpak-components-spx-stock-info.mjs.map +1 -1
  61. package/fesm2022/softpak-components-spx-toaster.mjs +90 -95
  62. package/fesm2022/softpak-components-spx-toaster.mjs.map +1 -1
  63. package/fesm2022/softpak-components-spx-update.mjs +2 -4
  64. package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
  65. package/fesm2022/softpak-components-spx-validation.mjs +3 -6
  66. package/fesm2022/softpak-components-spx-validation.mjs.map +1 -1
  67. package/package.json +31 -31
@@ -1,8 +1,6 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { Component, Input } from '@angular/core';
3
2
  import { FormsModule } from '@angular/forms';
4
3
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
4
  export class SpxValidateControlComponent {
7
5
  get maxLength() {
8
6
  return this.control.errors && this.control.errors['maxlength'];
@@ -50,14 +48,13 @@ export class SpxValidateControlComponent {
50
48
  return this.control.errors && this.control.errors['past'];
51
49
  }
52
50
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxValidateControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxValidateControlComponent, isStandalone: true, selector: "spx-validate-control", inputs: { control: "control", label: "label", submitTried: "submitTried" }, ngImport: i0, template: "<ng-container *ngIf=\"control && control.errors && (control.touched || submitTried)\">\n <div *ngIf=\"maxLength\">'{{ label }}' is too long, the maximum length is {{ maxLengthRequiredLength }}.</div>\n <div *ngIf=\"minLength\">'{{ label }}' is too short, the minimum length is {{ minLengthRequiredLength }}.</div>\n <div *ngIf=\"max\">The value of '{{ label }}' is too high, the maximum is {{ maxRequiredMax }}.</div>\n <div *ngIf=\"min\">The value of '{{ label }}' is too low, the minimum is {{ minRequiredMin }}.</div>\n <div *ngIf=\"pattern\">The pattern of '{{ label }}' not valid.</div>\n <div *ngIf=\"required\">'{{ label }}' is required.</div>\n <div *ngIf=\"year\">Please choose a year between 1991 and the current year.</div>\n <div *ngIf=\"yearFuture\">Please choose a year between the current year and 2050.</div>\n <div *ngIf=\"month\">Please choose a valid month (a value between 01 and 12).</div>\n <div *ngIf=\"future\">The selected date may not be in the future.</div>\n <div *ngIf=\"past\">The selected date may not be in the past.</div>\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }] }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxValidateControlComponent, isStandalone: true, selector: "spx-validate-control", inputs: { control: "control", label: "label", submitTried: "submitTried" }, ngImport: i0, template: "@if (control && control.errors && (control.touched || submitTried)) {\n @if (maxLength) {\n <div>'{{ label }}' is too long, the maximum length is {{ maxLengthRequiredLength }}.</div>\n }\n @if (minLength) {\n <div>'{{ label }}' is too short, the minimum length is {{ minLengthRequiredLength }}.</div>\n }\n @if (max) {\n <div>The value of '{{ label }}' is too high, the maximum is {{ maxRequiredMax }}.</div>\n }\n @if (min) {\n <div>The value of '{{ label }}' is too low, the minimum is {{ minRequiredMin }}.</div>\n }\n @if (pattern) {\n <div>The pattern of '{{ label }}' not valid.</div>\n }\n @if (required) {\n <div>'{{ label }}' is required.</div>\n }\n @if (year) {\n <div>Please choose a year between 1991 and the current year.</div>\n }\n @if (yearFuture) {\n <div>Please choose a year between the current year and 2050.</div>\n }\n @if (month) {\n <div>Please choose a valid month (a value between 01 and 12).</div>\n }\n @if (future) {\n <div>The selected date may not be in the future.</div>\n }\n @if (past) {\n <div>The selected date may not be in the past.</div>\n }\n}", dependencies: [{ kind: "ngmodule", type: FormsModule }] }); }
54
52
  }
55
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxValidateControlComponent, decorators: [{
56
54
  type: Component,
57
55
  args: [{ selector: 'spx-validate-control', imports: [
58
- CommonModule,
59
- FormsModule,
60
- ], standalone: true, template: "<ng-container *ngIf=\"control && control.errors && (control.touched || submitTried)\">\n <div *ngIf=\"maxLength\">'{{ label }}' is too long, the maximum length is {{ maxLengthRequiredLength }}.</div>\n <div *ngIf=\"minLength\">'{{ label }}' is too short, the minimum length is {{ minLengthRequiredLength }}.</div>\n <div *ngIf=\"max\">The value of '{{ label }}' is too high, the maximum is {{ maxRequiredMax }}.</div>\n <div *ngIf=\"min\">The value of '{{ label }}' is too low, the minimum is {{ minRequiredMin }}.</div>\n <div *ngIf=\"pattern\">The pattern of '{{ label }}' not valid.</div>\n <div *ngIf=\"required\">'{{ label }}' is required.</div>\n <div *ngIf=\"year\">Please choose a year between 1991 and the current year.</div>\n <div *ngIf=\"yearFuture\">Please choose a year between the current year and 2050.</div>\n <div *ngIf=\"month\">Please choose a valid month (a value between 01 and 12).</div>\n <div *ngIf=\"future\">The selected date may not be in the future.</div>\n <div *ngIf=\"past\">The selected date may not be in the past.</div>\n</ng-container>" }]
56
+ FormsModule
57
+ ], standalone: true, template: "@if (control && control.errors && (control.touched || submitTried)) {\n @if (maxLength) {\n <div>'{{ label }}' is too long, the maximum length is {{ maxLengthRequiredLength }}.</div>\n }\n @if (minLength) {\n <div>'{{ label }}' is too short, the minimum length is {{ minLengthRequiredLength }}.</div>\n }\n @if (max) {\n <div>The value of '{{ label }}' is too high, the maximum is {{ maxRequiredMax }}.</div>\n }\n @if (min) {\n <div>The value of '{{ label }}' is too low, the minimum is {{ minRequiredMin }}.</div>\n }\n @if (pattern) {\n <div>The pattern of '{{ label }}' not valid.</div>\n }\n @if (required) {\n <div>'{{ label }}' is required.</div>\n }\n @if (year) {\n <div>Please choose a year between 1991 and the current year.</div>\n }\n @if (yearFuture) {\n <div>Please choose a year between the current year and 2050.</div>\n }\n @if (month) {\n <div>Please choose a valid month (a value between 01 and 12).</div>\n }\n @if (future) {\n <div>The selected date may not be in the future.</div>\n }\n @if (past) {\n <div>The selected date may not be in the past.</div>\n }\n}" }]
61
58
  }], propDecorators: { control: [{
62
59
  type: Input
63
60
  }], label: [{
@@ -65,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
65
62
  }], submitTried: [{
66
63
  type: Input
67
64
  }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXZhbGlkYXRlLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uL3NweC12YWxpZGF0ZS1jb250cm9sLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtdmFsaWRhdGlvbi9zcHgtdmFsaWRhdGUtY29udHJvbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFtQixXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBVzlELE1BQU0sT0FBTywyQkFBMkI7SUFLdEMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsSUFBSSx1QkFBdUI7UUFDekIsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7K0dBL0RVLDJCQUEyQjttR0FBM0IsMkJBQTJCLDRKQ2J4Qyw0akNBWWUsMkNESlgsWUFBWSxrSUFDWixXQUFXOzs0RkFJRiwyQkFBMkI7a0JBVHZDLFNBQVM7K0JBQ0Usc0JBQXNCLFdBRXZCO3dCQUNQLFlBQVk7d0JBQ1osV0FBVztxQkFDWixjQUNXLElBQUk7OEJBR1AsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC12YWxpZGF0ZS1jb250cm9sJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NweC12YWxpZGF0ZS1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU3B4VmFsaWRhdGVDb250cm9sQ29tcG9uZW50IHtcbiAgQElucHV0KCkgY29udHJvbCE6IEFic3RyYWN0Q29udHJvbDtcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyB8IHVua25vd247XG4gIEBJbnB1dCgpIHN1Ym1pdFRyaWVkITogYm9vbGVhbjtcblxuICBnZXQgbWF4TGVuZ3RoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21heGxlbmd0aCddO1xuICB9XG5cbiAgZ2V0IG1heExlbmd0aFJlcXVpcmVkTGVuZ3RoKCkge1xuICAgIHJldHVybiB0aGlzLm1heExlbmd0aCAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21heGxlbmd0aCddWydyZXF1aXJlZExlbmd0aCddO1xuICB9XG5cbiAgZ2V0IG1pbkxlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtaW5sZW5ndGgnXTtcbiAgfVxuXG4gIGdldCBtaW5MZW5ndGhSZXF1aXJlZExlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5taW5MZW5ndGggJiYgdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtaW5sZW5ndGgnXVsncmVxdWlyZWRMZW5ndGgnXTtcbiAgfVxuXG4gIGdldCBtYXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1snbWF4J107XG4gIH1cblxuICBnZXQgbWF4UmVxdWlyZWRNYXgoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4ICYmIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1snbWF4J11bJ21heCddO1xuICB9XG5cbiAgZ2V0IG1pbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtaW4nXTtcbiAgfVxuXG4gIGdldCBtaW5SZXF1aXJlZE1pbigpIHtcbiAgICByZXR1cm4gdGhpcy5taW4gJiYgdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtaW4nXVsnbWluJ107XG4gIH1cblxuICBnZXQgcGF0dGVybigpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydwYXR0ZXJuJ107XG4gIH1cblxuICBnZXQgcmVxdWlyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1sncmVxdWlyZWQnXTtcbiAgfVxuXG4gIGdldCB5ZWFyKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ3llYXInXTtcbiAgfVxuXG4gIGdldCB5ZWFyRnV0dXJlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ3llYXJGdXR1cmUnXTtcbiAgfVxuXG4gIGdldCBtb250aCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtb250aCddO1xuICB9XG5cbiAgZ2V0IGZ1dHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydmdXR1cmUnXTtcbiAgfVxuXG4gIGdldCBwYXN0KCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ3Bhc3QnXTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2wgJiYgY29udHJvbC5lcnJvcnMgJiYgKGNvbnRyb2wudG91Y2hlZCB8fCBzdWJtaXRUcmllZClcIj5cbiAgPGRpdiAqbmdJZj1cIm1heExlbmd0aFwiPid7eyBsYWJlbCB9fScgaXMgdG9vIGxvbmcsIHRoZSBtYXhpbXVtIGxlbmd0aCBpcyB7eyBtYXhMZW5ndGhSZXF1aXJlZExlbmd0aCB9fS48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIm1pbkxlbmd0aFwiPid7eyBsYWJlbCB9fScgaXMgdG9vIHNob3J0LCB0aGUgbWluaW11bSBsZW5ndGggaXMge3sgbWluTGVuZ3RoUmVxdWlyZWRMZW5ndGggfX0uPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJtYXhcIj5UaGUgdmFsdWUgb2YgJ3t7IGxhYmVsIH19JyBpcyB0b28gaGlnaCwgdGhlIG1heGltdW0gaXMge3sgbWF4UmVxdWlyZWRNYXggfX0uPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJtaW5cIj5UaGUgdmFsdWUgb2YgJ3t7IGxhYmVsIH19JyBpcyB0b28gbG93LCB0aGUgbWluaW11bSBpcyB7eyBtaW5SZXF1aXJlZE1pbiB9fS48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInBhdHRlcm5cIj5UaGUgcGF0dGVybiBvZiAne3sgbGFiZWwgfX0nIG5vdCB2YWxpZC48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInJlcXVpcmVkXCI+J3t7IGxhYmVsIH19JyBpcyByZXF1aXJlZC48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cInllYXJcIj5QbGVhc2UgY2hvb3NlIGEgeWVhciBiZXR3ZWVuIDE5OTEgYW5kIHRoZSBjdXJyZW50IHllYXIuPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJ5ZWFyRnV0dXJlXCI+UGxlYXNlIGNob29zZSBhIHllYXIgYmV0d2VlbiB0aGUgY3VycmVudCB5ZWFyIGFuZCAyMDUwLjwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibW9udGhcIj5QbGVhc2UgY2hvb3NlIGEgdmFsaWQgbW9udGggKGEgdmFsdWUgYmV0d2VlbiAwMSBhbmQgMTIpLjwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiZnV0dXJlXCI+VGhlIHNlbGVjdGVkIGRhdGUgbWF5IG5vdCBiZSBpbiB0aGUgZnV0dXJlLjwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwicGFzdFwiPlRoZSBzZWxlY3RlZCBkYXRlIG1heSBub3QgYmUgaW4gdGhlIHBhc3QuPC9kaXY+XG48L25nLWNvbnRhaW5lcj4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXZhbGlkYXRlLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uL3NweC12YWxpZGF0ZS1jb250cm9sLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtdmFsaWRhdGlvbi9zcHgtdmFsaWRhdGUtY29udHJvbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQW1CLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVU5RCxNQUFNLE9BQU8sMkJBQTJCO0lBS3RDLElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUFJLHVCQUF1QjtRQUN6QixPQUFPLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RCxDQUFDOytHQS9EVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiw0SkNaeEMscW5DQWtDQywyQ0QxQkcsV0FBVzs7NEZBSUYsMkJBQTJCO2tCQVJ2QyxTQUFTOytCQUNFLHNCQUFzQixXQUV2Qjt3QkFDUCxXQUFXO3FCQUNkLGNBQ2EsSUFBSTs4QkFHUCxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC12YWxpZGF0ZS1jb250cm9sJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NweC12YWxpZGF0ZS1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlXG5dLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQge1xuICBASW5wdXQoKSBjb250cm9sITogQWJzdHJhY3RDb250cm9sO1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nIHwgdW5rbm93bjtcbiAgQElucHV0KCkgc3VibWl0VHJpZWQhOiBib29sZWFuO1xuXG4gIGdldCBtYXhMZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1snbWF4bGVuZ3RoJ107XG4gIH1cblxuICBnZXQgbWF4TGVuZ3RoUmVxdWlyZWRMZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4TGVuZ3RoICYmIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1snbWF4bGVuZ3RoJ11bJ3JlcXVpcmVkTGVuZ3RoJ107XG4gIH1cblxuICBnZXQgbWluTGVuZ3RoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21pbmxlbmd0aCddO1xuICB9XG5cbiAgZ2V0IG1pbkxlbmd0aFJlcXVpcmVkTGVuZ3RoKCkge1xuICAgIHJldHVybiB0aGlzLm1pbkxlbmd0aCAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21pbmxlbmd0aCddWydyZXF1aXJlZExlbmd0aCddO1xuICB9XG5cbiAgZ2V0IG1heCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtYXgnXTtcbiAgfVxuXG4gIGdldCBtYXhSZXF1aXJlZE1heCgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXggJiYgdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydtYXgnXVsnbWF4J107XG4gIH1cblxuICBnZXQgbWluKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21pbiddO1xuICB9XG5cbiAgZ2V0IG1pblJlcXVpcmVkTWluKCkge1xuICAgIHJldHVybiB0aGlzLm1pbiAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21pbiddWydtaW4nXTtcbiAgfVxuXG4gIGdldCBwYXR0ZXJuKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ3BhdHRlcm4nXTtcbiAgfVxuXG4gIGdldCByZXF1aXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wuZXJyb3JzWydyZXF1aXJlZCddO1xuICB9XG5cbiAgZ2V0IHllYXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1sneWVhciddO1xuICB9XG5cbiAgZ2V0IHllYXJGdXR1cmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1sneWVhckZ1dHVyZSddO1xuICB9XG5cbiAgZ2V0IG1vbnRoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ21vbnRoJ107XG4gIH1cblxuICBnZXQgZnV0dXJlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wuZXJyb3JzICYmIHRoaXMuY29udHJvbC5lcnJvcnNbJ2Z1dHVyZSddO1xuICB9XG5cbiAgZ2V0IHBhc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLmVycm9yc1sncGFzdCddO1xuICB9XG59XG4iLCJAaWYgKGNvbnRyb2wgJiYgY29udHJvbC5lcnJvcnMgJiYgKGNvbnRyb2wudG91Y2hlZCB8fCBzdWJtaXRUcmllZCkpIHtcbiAgQGlmIChtYXhMZW5ndGgpIHtcbiAgICA8ZGl2Pid7eyBsYWJlbCB9fScgaXMgdG9vIGxvbmcsIHRoZSBtYXhpbXVtIGxlbmd0aCBpcyB7eyBtYXhMZW5ndGhSZXF1aXJlZExlbmd0aCB9fS48L2Rpdj5cbiAgfVxuICBAaWYgKG1pbkxlbmd0aCkge1xuICAgIDxkaXY+J3t7IGxhYmVsIH19JyBpcyB0b28gc2hvcnQsIHRoZSBtaW5pbXVtIGxlbmd0aCBpcyB7eyBtaW5MZW5ndGhSZXF1aXJlZExlbmd0aCB9fS48L2Rpdj5cbiAgfVxuICBAaWYgKG1heCkge1xuICAgIDxkaXY+VGhlIHZhbHVlIG9mICd7eyBsYWJlbCB9fScgaXMgdG9vIGhpZ2gsIHRoZSBtYXhpbXVtIGlzIHt7IG1heFJlcXVpcmVkTWF4IH19LjwvZGl2PlxuICB9XG4gIEBpZiAobWluKSB7XG4gICAgPGRpdj5UaGUgdmFsdWUgb2YgJ3t7IGxhYmVsIH19JyBpcyB0b28gbG93LCB0aGUgbWluaW11bSBpcyB7eyBtaW5SZXF1aXJlZE1pbiB9fS48L2Rpdj5cbiAgfVxuICBAaWYgKHBhdHRlcm4pIHtcbiAgICA8ZGl2PlRoZSBwYXR0ZXJuIG9mICd7eyBsYWJlbCB9fScgbm90IHZhbGlkLjwvZGl2PlxuICB9XG4gIEBpZiAocmVxdWlyZWQpIHtcbiAgICA8ZGl2Pid7eyBsYWJlbCB9fScgaXMgcmVxdWlyZWQuPC9kaXY+XG4gIH1cbiAgQGlmICh5ZWFyKSB7XG4gICAgPGRpdj5QbGVhc2UgY2hvb3NlIGEgeWVhciBiZXR3ZWVuIDE5OTEgYW5kIHRoZSBjdXJyZW50IHllYXIuPC9kaXY+XG4gIH1cbiAgQGlmICh5ZWFyRnV0dXJlKSB7XG4gICAgPGRpdj5QbGVhc2UgY2hvb3NlIGEgeWVhciBiZXR3ZWVuIHRoZSBjdXJyZW50IHllYXIgYW5kIDIwNTAuPC9kaXY+XG4gIH1cbiAgQGlmIChtb250aCkge1xuICAgIDxkaXY+UGxlYXNlIGNob29zZSBhIHZhbGlkIG1vbnRoIChhIHZhbHVlIGJldHdlZW4gMDEgYW5kIDEyKS48L2Rpdj5cbiAgfVxuICBAaWYgKGZ1dHVyZSkge1xuICAgIDxkaXY+VGhlIHNlbGVjdGVkIGRhdGUgbWF5IG5vdCBiZSBpbiB0aGUgZnV0dXJlLjwvZGl2PlxuICB9XG4gIEBpZiAocGFzdCkge1xuICAgIDxkaXY+VGhlIHNlbGVjdGVkIGRhdGUgbWF5IG5vdCBiZSBpbiB0aGUgcGFzdC48L2Rpdj5cbiAgfVxufSJdfQ==
@@ -1,8 +1,6 @@
1
- import * as i1 from '@angular/common';
2
- import { CommonModule, NgIf } from '@angular/common';
3
1
  import * as i0 from '@angular/core';
4
2
  import { EventEmitter, Component, Output, Input } from '@angular/core';
5
- import * as i2 from '@fortawesome/angular-fontawesome';
3
+ import * as i1 from '@fortawesome/angular-fontawesome';
6
4
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
7
5
  import { faCheck, faCircleInfo, faTriangleExclamation, faTimes } from '@fortawesome/free-solid-svg-icons';
8
6
  import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
@@ -60,7 +58,7 @@ class SpxAlertComponent {
60
58
  }
61
59
  }
62
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxAlertComponent, isStandalone: true, selector: "spx-alert", inputs: { spxAutoclose: "spxAutoclose", spxCloseable: "spxCloseable", spxHideTitle: "spxHideTitle", spxTitle: "spxTitle", spxMarginTop: "spxMarginTop", spxSeverity: "spxSeverity", tick: "tick" }, outputs: { spxClose: "spxClose" }, ngImport: i0, template: `
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxAlertComponent, isStandalone: true, selector: "spx-alert", inputs: { spxAutoclose: "spxAutoclose", spxCloseable: "spxCloseable", spxHideTitle: "spxHideTitle", spxTitle: "spxTitle", spxMarginTop: "spxMarginTop", spxSeverity: "spxSeverity", tick: "tick" }, outputs: { spxClose: "spxClose" }, ngImport: i0, template: `
64
62
  <div class="flex items-center gap-3 border-t-4 rounded px-4 py-3 shadow-md"
65
63
  [class.cursor-pointer]="this.spxCloseable"
66
64
  [class.bg-red-100]="this.isSeverityError"
@@ -88,29 +86,36 @@ class SpxAlertComponent {
88
86
  [class.hover:bg-amber-200]="this.spxCloseable && this.isSeverityWarning"
89
87
  [class.over:border-amber-600]="this.spxCloseable && this.isSeverityWarning"
90
88
  (click)="onClose()">
89
+ @if (this.isSeverityInfo) {
91
90
  <fa-icon
92
- *ngIf="this.isSeverityInfo"
93
- [icon]="faCircleInfo" class="block text-xl text-cyan-600"></fa-icon>
94
- <fa-icon
95
- *ngIf="this.isSeverityError"
96
- [icon]="faTriangleExclamation" class="block text-xl text-red-600"></fa-icon>
91
+ [icon]="faCircleInfo" class="block text-xl text-cyan-600"></fa-icon>
92
+ }
93
+ @if (this.isSeverityError) {
97
94
  <fa-icon
98
- *ngIf="this.isSeveritySuccess"
99
- [icon]="faCheck" class="block text-xl text-lime-600"></fa-icon>
95
+ [icon]="faTriangleExclamation" class="block text-xl text-red-600"></fa-icon>
96
+ }
97
+ @if (this.isSeveritySuccess) {
100
98
  <fa-icon
101
- *ngIf="this.isSeverityWarning"
102
- [icon]="faTriangleExclamation" class="block text-xl text-amber-600"></fa-icon>
103
- <div class="grow">
104
- <p *ngIf="this.spxTitle && !this.spxHideTitle" class="font-bold">{{this.spxTitle}}</p>
105
- <p class="text-sm">
106
- <ng-content></ng-content>
107
- </p>
108
- </div>
99
+ [icon]="faCheck" class="block text-xl text-lime-600"></fa-icon>
100
+ }
101
+ @if (this.isSeverityWarning) {
109
102
  <fa-icon
110
- *ngIf="this.spxCloseable"
111
- [icon]="faTimes" class="block text-xl"></fa-icon>
103
+ [icon]="faTriangleExclamation" class="block text-xl text-amber-600"></fa-icon>
104
+ }
105
+ <div class="grow">
106
+ @if (this.spxTitle && !this.spxHideTitle) {
107
+ <p class="font-bold">{{this.spxTitle}}</p>
108
+ }
109
+ <p class="text-sm">
110
+ <ng-content></ng-content>
111
+ </p>
112
112
  </div>
113
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] }); }
113
+ @if (this.spxCloseable) {
114
+ <fa-icon
115
+ [icon]="faTimes" class="block text-xl"></fa-icon>
116
+ }
117
+ </div>
118
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] }); }
114
119
  }
115
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAlertComponent, decorators: [{
116
121
  type: Component,
@@ -118,9 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
118
123
  selector: 'spx-alert',
119
124
  standalone: true,
120
125
  imports: [
121
- CommonModule,
122
- FontAwesomeModule,
123
- NgIf,
126
+ FontAwesomeModule
124
127
  ],
125
128
  template: `
126
129
  <div class="flex items-center gap-3 border-t-4 rounded px-4 py-3 shadow-md"
@@ -150,28 +153,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
150
153
  [class.hover:bg-amber-200]="this.spxCloseable && this.isSeverityWarning"
151
154
  [class.over:border-amber-600]="this.spxCloseable && this.isSeverityWarning"
152
155
  (click)="onClose()">
156
+ @if (this.isSeverityInfo) {
153
157
  <fa-icon
154
- *ngIf="this.isSeverityInfo"
155
- [icon]="faCircleInfo" class="block text-xl text-cyan-600"></fa-icon>
156
- <fa-icon
157
- *ngIf="this.isSeverityError"
158
- [icon]="faTriangleExclamation" class="block text-xl text-red-600"></fa-icon>
158
+ [icon]="faCircleInfo" class="block text-xl text-cyan-600"></fa-icon>
159
+ }
160
+ @if (this.isSeverityError) {
159
161
  <fa-icon
160
- *ngIf="this.isSeveritySuccess"
161
- [icon]="faCheck" class="block text-xl text-lime-600"></fa-icon>
162
+ [icon]="faTriangleExclamation" class="block text-xl text-red-600"></fa-icon>
163
+ }
164
+ @if (this.isSeveritySuccess) {
162
165
  <fa-icon
163
- *ngIf="this.isSeverityWarning"
164
- [icon]="faTriangleExclamation" class="block text-xl text-amber-600"></fa-icon>
165
- <div class="grow">
166
- <p *ngIf="this.spxTitle && !this.spxHideTitle" class="font-bold">{{this.spxTitle}}</p>
167
- <p class="text-sm">
168
- <ng-content></ng-content>
169
- </p>
170
- </div>
166
+ [icon]="faCheck" class="block text-xl text-lime-600"></fa-icon>
167
+ }
168
+ @if (this.isSeverityWarning) {
171
169
  <fa-icon
172
- *ngIf="this.spxCloseable"
173
- [icon]="faTimes" class="block text-xl"></fa-icon>
170
+ [icon]="faTriangleExclamation" class="block text-xl text-amber-600"></fa-icon>
171
+ }
172
+ <div class="grow">
173
+ @if (this.spxTitle && !this.spxHideTitle) {
174
+ <p class="font-bold">{{this.spxTitle}}</p>
175
+ }
176
+ <p class="text-sm">
177
+ <ng-content></ng-content>
178
+ </p>
174
179
  </div>
180
+ @if (this.spxCloseable) {
181
+ <fa-icon
182
+ [icon]="faTimes" class="block text-xl"></fa-icon>
183
+ }
184
+ </div>
175
185
  `,
176
186
  }]
177
187
  }], propDecorators: { spxClose: [{
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-alert.mjs","sources":["../../../../projects/softpak/components/spx-alert/spx-alert.component.ts","../../../../projects/softpak/components/spx-alert/spx-alert.interface.ts","../../../../projects/softpak/components/spx-alert/softpak-components-spx-alert.ts"],"sourcesContent":["import { CommonModule, NgIf } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { faCheck, faCircleInfo, faTimes, faTriangleExclamation } from '@fortawesome/free-solid-svg-icons';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\n\n@Component({\n selector: 'spx-alert',\n standalone: true,\n imports: [\n CommonModule,\n FontAwesomeModule,\n NgIf,\n ],\n template: `\n <div class=\"flex items-center gap-3 border-t-4 rounded px-4 py-3 shadow-md\"\n [class.cursor-pointer]=\"this.spxCloseable\"\n [class.bg-red-100]=\"this.isSeverityError\"\n [class.border-red-500]=\"this.isSeverityError\"\n [class.text-red-900]=\"this.isSeverityError\"\n [class.bg-cyan-100]=\"this.isSeverityInfo\"\n [class.border-cyan-500]=\"this.isSeverityInfo\"\n [class.text-cyan-900]=\"this.isSeverityInfo\"\n [class.bg-lime-100]=\"this.isSeveritySuccess\"\n [class.border-lime-500]=\"this.isSeveritySuccess\"\n [class.text-lime-900]=\"this.isSeveritySuccess\"\n [class.bg-amber-100]=\"this.isSeverityWarning\"\n [class.border-amber-500]=\"this.isSeverityWarning\"\n [class.text-amber-900]=\"this.isSeverityWarning\"\n [class.focus:ring-red-600]=\"this.spxCloseable && this.isSeverityError\"\n [class.hover:bg-red-200]=\"this.spxCloseable && this.isSeverityError\"\n [class.over:border-red-600]=\"this.spxCloseable && this.isSeverityError\"\n [class.focus:ring-cyan-600]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.hover:bg-cyan-200]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.over:border-cyan-600]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.focus:ring-lime-600]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.hover:bg-lime-200]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.over:border-lime-600]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.focus:ring-amber-600]=\"this.spxCloseable && this.isSeverityWarning\"\n [class.hover:bg-amber-200]=\"this.spxCloseable && this.isSeverityWarning\"\n [class.over:border-amber-600]=\"this.spxCloseable && this.isSeverityWarning\"\n (click)=\"onClose()\">\n <fa-icon\n *ngIf=\"this.isSeverityInfo\"\n [icon]=\"faCircleInfo\" class=\"block text-xl text-cyan-600\"></fa-icon>\n <fa-icon\n *ngIf=\"this.isSeverityError\"\n [icon]=\"faTriangleExclamation\" class=\"block text-xl text-red-600\"></fa-icon>\n <fa-icon\n *ngIf=\"this.isSeveritySuccess\"\n [icon]=\"faCheck\" class=\"block text-xl text-lime-600\"></fa-icon>\n <fa-icon\n *ngIf=\"this.isSeverityWarning\"\n [icon]=\"faTriangleExclamation\" class=\"block text-xl text-amber-600\"></fa-icon>\n <div class=\"grow\">\n <p *ngIf=\"this.spxTitle && !this.spxHideTitle\" class=\"font-bold\">{{this.spxTitle}}</p>\n <p class=\"text-sm\">\n <ng-content></ng-content>\n </p>\n </div>\n <fa-icon\n *ngIf=\"this.spxCloseable\"\n [icon]=\"faTimes\" class=\"block text-xl\"></fa-icon>\n </div>\n `,\n})\nexport class SpxAlertComponent {\n _autoCloseTimeout: any;\n @Output() spxClose: EventEmitter<void> = new EventEmitter<void>();\n @Input() spxAutoclose?: number;\n @Input() spxCloseable? = false;\n @Input() spxHideTitle = false;\n @Input() spxTitle?: string;\n @Input() spxMarginTop = false;\n @Input() spxSeverity?: SpxSeverityEnum;\n @Input() tick = {};\n\n get isSeverityError() { return this.spxSeverity === SpxSeverityEnum.error; }\n get isSeverityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }\n get isSeveritySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }\n get isSeverityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }\n faCheck = faCheck;\n faCircleInfo = faCircleInfo;\n faTriangleExclamation = faTriangleExclamation;\n faTimes = faTimes;\n\n componentDidLoad() {\n if (this.spxAutoclose) {\n this.prepareAutoClose();\n }\n if (!this.spxTitle) {\n this._assignDefaultTitle();\n }\n }\n\n private prepareAutoClose(): void {\n this._autoCloseTimeout = setTimeout(() => {\n this.onClose();\n this._autoCloseTimeout = null;\n this.tick = {};\n }, this.spxAutoclose);\n }\n\n private _assignDefaultTitle(): void {\n switch (this.spxSeverity) {\n case SpxSeverityEnum.error:\n this.spxTitle = 'Error';\n break;\n case SpxSeverityEnum.info:\n this.spxTitle = 'Info';\n break;\n case SpxSeverityEnum.success:\n this.spxTitle = 'Notification';\n break;\n case SpxSeverityEnum.warning:\n this.spxTitle = 'Warning';\n break;\n }\n }\n\n onClose() {\n if (this.spxCloseable) {\n this.spxClose.emit();\n }\n }\n}\n","import { SpxSeverityEnum } from \"@softpak/components/spx-helpers\";\n\nexport class SpxAlertI {\n closeable?: boolean;\n id?: number;\n message?: string;\n severity?: SpxSeverityEnum;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"softpak-components-spx-alert.mjs","sources":["../../../../projects/softpak/components/spx-alert/spx-alert.component.ts","../../../../projects/softpak/components/spx-alert/spx-alert.interface.ts","../../../../projects/softpak/components/spx-alert/softpak-components-spx-alert.ts"],"sourcesContent":["\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { faCheck, faCircleInfo, faTimes, faTriangleExclamation } from '@fortawesome/free-solid-svg-icons';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\n\n@Component({\n selector: 'spx-alert',\n standalone: true,\n imports: [\n FontAwesomeModule\n],\n template: `\n <div class=\"flex items-center gap-3 border-t-4 rounded px-4 py-3 shadow-md\"\n [class.cursor-pointer]=\"this.spxCloseable\"\n [class.bg-red-100]=\"this.isSeverityError\"\n [class.border-red-500]=\"this.isSeverityError\"\n [class.text-red-900]=\"this.isSeverityError\"\n [class.bg-cyan-100]=\"this.isSeverityInfo\"\n [class.border-cyan-500]=\"this.isSeverityInfo\"\n [class.text-cyan-900]=\"this.isSeverityInfo\"\n [class.bg-lime-100]=\"this.isSeveritySuccess\"\n [class.border-lime-500]=\"this.isSeveritySuccess\"\n [class.text-lime-900]=\"this.isSeveritySuccess\"\n [class.bg-amber-100]=\"this.isSeverityWarning\"\n [class.border-amber-500]=\"this.isSeverityWarning\"\n [class.text-amber-900]=\"this.isSeverityWarning\"\n [class.focus:ring-red-600]=\"this.spxCloseable && this.isSeverityError\"\n [class.hover:bg-red-200]=\"this.spxCloseable && this.isSeverityError\"\n [class.over:border-red-600]=\"this.spxCloseable && this.isSeverityError\"\n [class.focus:ring-cyan-600]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.hover:bg-cyan-200]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.over:border-cyan-600]=\"this.spxCloseable && this.isSeverityInfo\"\n [class.focus:ring-lime-600]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.hover:bg-lime-200]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.over:border-lime-600]=\"this.spxCloseable && this.isSeveritySuccess\"\n [class.focus:ring-amber-600]=\"this.spxCloseable && this.isSeverityWarning\"\n [class.hover:bg-amber-200]=\"this.spxCloseable && this.isSeverityWarning\"\n [class.over:border-amber-600]=\"this.spxCloseable && this.isSeverityWarning\"\n (click)=\"onClose()\">\n @if (this.isSeverityInfo) {\n <fa-icon\n [icon]=\"faCircleInfo\" class=\"block text-xl text-cyan-600\"></fa-icon>\n }\n @if (this.isSeverityError) {\n <fa-icon\n [icon]=\"faTriangleExclamation\" class=\"block text-xl text-red-600\"></fa-icon>\n }\n @if (this.isSeveritySuccess) {\n <fa-icon\n [icon]=\"faCheck\" class=\"block text-xl text-lime-600\"></fa-icon>\n }\n @if (this.isSeverityWarning) {\n <fa-icon\n [icon]=\"faTriangleExclamation\" class=\"block text-xl text-amber-600\"></fa-icon>\n }\n <div class=\"grow\">\n @if (this.spxTitle && !this.spxHideTitle) {\n <p class=\"font-bold\">{{this.spxTitle}}</p>\n }\n <p class=\"text-sm\">\n <ng-content></ng-content>\n </p>\n </div>\n @if (this.spxCloseable) {\n <fa-icon\n [icon]=\"faTimes\" class=\"block text-xl\"></fa-icon>\n }\n </div>\n `,\n})\nexport class SpxAlertComponent {\n _autoCloseTimeout: any;\n @Output() spxClose: EventEmitter<void> = new EventEmitter<void>();\n @Input() spxAutoclose?: number;\n @Input() spxCloseable? = false;\n @Input() spxHideTitle = false;\n @Input() spxTitle?: string;\n @Input() spxMarginTop = false;\n @Input() spxSeverity?: SpxSeverityEnum;\n @Input() tick = {};\n\n get isSeverityError() { return this.spxSeverity === SpxSeverityEnum.error; }\n get isSeverityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }\n get isSeveritySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }\n get isSeverityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }\n faCheck = faCheck;\n faCircleInfo = faCircleInfo;\n faTriangleExclamation = faTriangleExclamation;\n faTimes = faTimes;\n\n componentDidLoad() {\n if (this.spxAutoclose) {\n this.prepareAutoClose();\n }\n if (!this.spxTitle) {\n this._assignDefaultTitle();\n }\n }\n\n private prepareAutoClose(): void {\n this._autoCloseTimeout = setTimeout(() => {\n this.onClose();\n this._autoCloseTimeout = null;\n this.tick = {};\n }, this.spxAutoclose);\n }\n\n private _assignDefaultTitle(): void {\n switch (this.spxSeverity) {\n case SpxSeverityEnum.error:\n this.spxTitle = 'Error';\n break;\n case SpxSeverityEnum.info:\n this.spxTitle = 'Info';\n break;\n case SpxSeverityEnum.success:\n this.spxTitle = 'Notification';\n break;\n case SpxSeverityEnum.warning:\n this.spxTitle = 'Warning';\n break;\n }\n }\n\n onClose() {\n if (this.spxCloseable) {\n this.spxClose.emit();\n }\n }\n}\n","import { SpxSeverityEnum } from \"@softpak/components/spx-helpers\";\n\nexport class SpxAlertI {\n closeable?: boolean;\n id?: number;\n message?: string;\n severity?: SpxSeverityEnum;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { NgIf } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
2
  import { Component, Input } from '@angular/core';
4
3
  import { DateTime } from 'luxon';
@@ -29,53 +28,71 @@ class SpxAppExpiryComponent {
29
28
  }
30
29
  }
31
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAppExpiryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxAppExpiryComponent, isStandalone: true, selector: "spx-app-expiry", inputs: { txtContactHelpdeskOrSoftpak: "txtContactHelpdeskOrSoftpak", txtExpired: "txtExpired", txtLastReminder: "txtLastReminder", txtPleaseOpenTheAppStore: "txtPleaseOpenTheAppStore", txtPleaseUpdate: "txtPleaseUpdate", txtThisVersionWillExpireSoon: "txtThisVersionWillExpireSoon", txtUpdateAvailable: "txtUpdateAvailable", txtUpdateTheAppToTheLatestVersion: "txtUpdateTheAppToTheLatestVersion", spxExpiry: "spxExpiry", spxVersion: "spxVersion" }, usesOnChanges: true, ngImport: i0, template: `
33
- <div class="m-3" *ngIf="warning || finalWarning || expired">
34
- <div
35
- class="p-3 font-bold text-white rounded-t text-xl"
36
- [class.bg-lime-600]="warning"
37
- [class.bg-red-600]="expired"
38
- [class.bg-amber-600]="finalWarning">
39
- <ng-container *ngIf="warning">{{ txtUpdateAvailable }}</ng-container>
40
- <ng-container *ngIf="finalWarning">{{ txtLastReminder }}</ng-container>
41
- <ng-container *ngIf="expired">{{ txtExpired }}</ng-container>
42
- </div>
43
- <div
44
- class="bg-amber-50 p-3 text-black rounded-b mb-3">
45
- <div>{{ txtPleaseOpenTheAppStore }}.</div>
46
- <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>
47
- <div>{{ txtContactHelpdeskOrSoftpak }}.</div>
48
- <div *ngIf="finalWarning">{{ txtThisVersionWillExpireSoon }}.</div>
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxAppExpiryComponent, isStandalone: true, selector: "spx-app-expiry", inputs: { txtContactHelpdeskOrSoftpak: "txtContactHelpdeskOrSoftpak", txtExpired: "txtExpired", txtLastReminder: "txtLastReminder", txtPleaseOpenTheAppStore: "txtPleaseOpenTheAppStore", txtPleaseUpdate: "txtPleaseUpdate", txtThisVersionWillExpireSoon: "txtThisVersionWillExpireSoon", txtUpdateAvailable: "txtUpdateAvailable", txtUpdateTheAppToTheLatestVersion: "txtUpdateTheAppToTheLatestVersion", spxExpiry: "spxExpiry", spxVersion: "spxVersion" }, usesOnChanges: true, ngImport: i0, template: `
32
+ @if (warning || finalWarning || expired) {
33
+ <div class="m-3">
34
+ <div
35
+ class="p-3 font-bold text-white rounded-t text-xl"
36
+ [class.bg-lime-600]="warning"
37
+ [class.bg-red-600]="expired"
38
+ [class.bg-amber-600]="finalWarning">
39
+ @if (warning) {
40
+ {{ txtUpdateAvailable }}
41
+ }
42
+ @if (finalWarning) {
43
+ {{ txtLastReminder }}
44
+ }
45
+ @if (expired) {
46
+ {{ txtExpired }}
47
+ }
48
+ </div>
49
+ <div
50
+ class="bg-amber-50 p-3 text-black rounded-b mb-3">
51
+ <div>{{ txtPleaseOpenTheAppStore }}.</div>
52
+ <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>
53
+ <div>{{ txtContactHelpdeskOrSoftpak }}.</div>
54
+ @if (finalWarning) {
55
+ <div>{{ txtThisVersionWillExpireSoon }}.</div>
56
+ }
57
+ </div>
49
58
  </div>
50
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
59
+ }`, isInline: true }); }
51
60
  }
52
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAppExpiryComponent, decorators: [{
53
62
  type: Component,
54
63
  args: [{
55
64
  selector: 'spx-app-expiry',
56
65
  standalone: true,
57
- imports: [
58
- NgIf,
59
- ],
66
+ imports: [],
60
67
  template: `
61
- <div class="m-3" *ngIf="warning || finalWarning || expired">
62
- <div
63
- class="p-3 font-bold text-white rounded-t text-xl"
64
- [class.bg-lime-600]="warning"
65
- [class.bg-red-600]="expired"
66
- [class.bg-amber-600]="finalWarning">
67
- <ng-container *ngIf="warning">{{ txtUpdateAvailable }}</ng-container>
68
- <ng-container *ngIf="finalWarning">{{ txtLastReminder }}</ng-container>
69
- <ng-container *ngIf="expired">{{ txtExpired }}</ng-container>
70
- </div>
71
- <div
72
- class="bg-amber-50 p-3 text-black rounded-b mb-3">
73
- <div>{{ txtPleaseOpenTheAppStore }}.</div>
74
- <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>
75
- <div>{{ txtContactHelpdeskOrSoftpak }}.</div>
76
- <div *ngIf="finalWarning">{{ txtThisVersionWillExpireSoon }}.</div>
68
+ @if (warning || finalWarning || expired) {
69
+ <div class="m-3">
70
+ <div
71
+ class="p-3 font-bold text-white rounded-t text-xl"
72
+ [class.bg-lime-600]="warning"
73
+ [class.bg-red-600]="expired"
74
+ [class.bg-amber-600]="finalWarning">
75
+ @if (warning) {
76
+ {{ txtUpdateAvailable }}
77
+ }
78
+ @if (finalWarning) {
79
+ {{ txtLastReminder }}
80
+ }
81
+ @if (expired) {
82
+ {{ txtExpired }}
83
+ }
84
+ </div>
85
+ <div
86
+ class="bg-amber-50 p-3 text-black rounded-b mb-3">
87
+ <div>{{ txtPleaseOpenTheAppStore }}.</div>
88
+ <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>
89
+ <div>{{ txtContactHelpdeskOrSoftpak }}.</div>
90
+ @if (finalWarning) {
91
+ <div>{{ txtThisVersionWillExpireSoon }}.</div>
92
+ }
93
+ </div>
77
94
  </div>
78
- </div>`,
95
+ }`,
79
96
  }]
80
97
  }], propDecorators: { txtContactHelpdeskOrSoftpak: [{
81
98
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-app-expiry.mjs","sources":["../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-warning.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-final-warning.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-happened.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-app-expiry.component.ts","../../../../projects/softpak/components/spx-app-expiry/softpak-components-spx-app-expiry.ts"],"sourcesContent":["import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryWarning = (appStoreVersion: string, spxAppExpiry?: SpxAppExpiryI): boolean => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.warning;\n}","import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryFinalWarning = (appStoreVersion: string, spxAppExpiry?: SpxAppExpiryI) => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.finalWarning;\n}","import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryHappened = (appStoreVersion: string, spxAppExpiry: SpxAppExpiryI): boolean => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.expiry;\n}","import { NgIf } from '@angular/common';\nimport { Component, Input, OnChanges } from '@angular/core';\nimport { SpxAppExpiryI } from './spx-app-expiry.interface';\nimport { spxCheckExpiryWarning } from './spx-check-expiry-warning.interface';\nimport { spxCheckExpiryFinalWarning } from './spx-check-expiry-final-warning.interface';\nimport { spxCheckExpiryHappened } from './spx-check-expiry-happened.interface';\n\n@Component({\n selector: 'spx-app-expiry',\n standalone: true,\n imports: [\n NgIf,\n ],\n template: `\n <div class=\"m-3\" *ngIf=\"warning || finalWarning || expired\">\n <div\n class=\"p-3 font-bold text-white rounded-t text-xl\"\n [class.bg-lime-600]=\"warning\"\n [class.bg-red-600]=\"expired\"\n [class.bg-amber-600]=\"finalWarning\">\n <ng-container *ngIf=\"warning\">{{ txtUpdateAvailable }}</ng-container>\n <ng-container *ngIf=\"finalWarning\">{{ txtLastReminder }}</ng-container>\n <ng-container *ngIf=\"expired\">{{ txtExpired }}</ng-container>\n </div>\n <div\n class=\"bg-amber-50 p-3 text-black rounded-b mb-3\">\n <div>{{ txtPleaseOpenTheAppStore }}.</div>\n <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>\n <div>{{ txtContactHelpdeskOrSoftpak }}.</div>\n <div *ngIf=\"finalWarning\">{{ txtThisVersionWillExpireSoon }}.</div>\n </div>\n </div>`,\n})\nexport class SpxAppExpiryComponent implements OnChanges {\n @Input() txtContactHelpdeskOrSoftpak!: string;\n @Input() txtExpired!: string;\n @Input() txtLastReminder!: string;\n @Input() txtPleaseOpenTheAppStore!: string;\n @Input() txtPleaseUpdate!: string;\n @Input() txtThisVersionWillExpireSoon!: string;\n @Input() txtUpdateAvailable!: string;\n @Input() txtUpdateTheAppToTheLatestVersion!: string;\n @Input() spxExpiry!: SpxAppExpiryI;\n @Input() spxVersion!: string;\n warning = false;\n finalWarning = false;\n expired = false;\n ngOnChanges(): void {\n if (this.spxExpiry && this.spxVersion) {\n this.expired = spxCheckExpiryHappened(this.spxVersion, this.spxExpiry);\n this.finalWarning = spxCheckExpiryFinalWarning(this.spxVersion, this.spxExpiry) && !this.expired;\n this.warning = spxCheckExpiryWarning(this.spxVersion, this.spxExpiry) && !this.finalWarning && !this.expired;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAGa,qBAAqB,GAAG,CAAC,eAAuB,EAAE,YAA4B,KAAa;AACtG,IAAA,OAAO,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,KAAK,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;AAC/J;;MCFa,0BAA0B,GAAG,CAAC,eAAuB,EAAE,YAA4B,KAAI;AAClG,IAAA,OAAO,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,KAAK,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,IAAK,QAAQ,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,YAAY,CAAC;AACrK;;MCFa,sBAAsB,GAAG,CAAC,eAAuB,EAAE,YAA2B,KAAa;AACtG,IAAA,OAAO,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,KAAK,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC;AAC9J;;MC4Ba,qBAAqB,CAAA;AA1BlC,IAAA,WAAA,GAAA;QAqCE,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAChB,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AAQjB,KAAA;IAPC,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;AACrC,YAAA,IAAI,CAAC,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,YAAY,GAAG,0BAA0B,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACjG,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;SAC9G;KACF;+GApBU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EApBtB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,UAAA,EAAA,YAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,iCAAA,EAAA,mCAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;AAkBH,QAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EApBL,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAsBK,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBA1BjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE;wBACP,IAAI;AACL,qBAAA;AACD,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;AAkBH,QAAA,CAAA;AACR,iBAAA,CAAA;8BAEU,2BAA2B,EAAA,CAAA;sBAAnC,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,wBAAwB,EAAA,CAAA;sBAAhC,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,4BAA4B,EAAA,CAAA;sBAApC,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,iCAAiC,EAAA,CAAA;sBAAzC,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;;;AC3CR;;AAEG;;;;"}
1
+ {"version":3,"file":"softpak-components-spx-app-expiry.mjs","sources":["../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-warning.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-final-warning.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-check-expiry-happened.interface.ts","../../../../projects/softpak/components/spx-app-expiry/spx-app-expiry.component.ts","../../../../projects/softpak/components/spx-app-expiry/softpak-components-spx-app-expiry.ts"],"sourcesContent":["import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryWarning = (appStoreVersion: string, spxAppExpiry?: SpxAppExpiryI): boolean => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.warning;\n}","import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryFinalWarning = (appStoreVersion: string, spxAppExpiry?: SpxAppExpiryI) => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.finalWarning;\n}","import { DateTime } from \"luxon\";\nimport { SpxAppExpiryI } from \"./spx-app-expiry.interface\";\n\nexport const spxCheckExpiryHappened = (appStoreVersion: string, spxAppExpiry: SpxAppExpiryI): boolean => {\n return spxAppExpiry !== undefined && appStoreVersion.substring(0,3) !== spxAppExpiry.requiredVersion.substring(0,3) && DateTime.now() > spxAppExpiry.expiry;\n}","\nimport { Component, Input, OnChanges } from '@angular/core';\nimport { SpxAppExpiryI } from './spx-app-expiry.interface';\nimport { spxCheckExpiryWarning } from './spx-check-expiry-warning.interface';\nimport { spxCheckExpiryFinalWarning } from './spx-check-expiry-final-warning.interface';\nimport { spxCheckExpiryHappened } from './spx-check-expiry-happened.interface';\n\n@Component({\n selector: 'spx-app-expiry',\n standalone: true,\n imports: [],\n template: `\n @if (warning || finalWarning || expired) {\n <div class=\"m-3\">\n <div\n class=\"p-3 font-bold text-white rounded-t text-xl\"\n [class.bg-lime-600]=\"warning\"\n [class.bg-red-600]=\"expired\"\n [class.bg-amber-600]=\"finalWarning\">\n @if (warning) {\n {{ txtUpdateAvailable }}\n }\n @if (finalWarning) {\n {{ txtLastReminder }}\n }\n @if (expired) {\n {{ txtExpired }}\n }\n </div>\n <div\n class=\"bg-amber-50 p-3 text-black rounded-b mb-3\">\n <div>{{ txtPleaseOpenTheAppStore }}.</div>\n <div>{{ txtUpdateTheAppToTheLatestVersion }}.</div>\n <div>{{ txtContactHelpdeskOrSoftpak }}.</div>\n @if (finalWarning) {\n <div>{{ txtThisVersionWillExpireSoon }}.</div>\n }\n </div>\n </div>\n }`,\n})\nexport class SpxAppExpiryComponent implements OnChanges {\n @Input() txtContactHelpdeskOrSoftpak!: string;\n @Input() txtExpired!: string;\n @Input() txtLastReminder!: string;\n @Input() txtPleaseOpenTheAppStore!: string;\n @Input() txtPleaseUpdate!: string;\n @Input() txtThisVersionWillExpireSoon!: string;\n @Input() txtUpdateAvailable!: string;\n @Input() txtUpdateTheAppToTheLatestVersion!: string;\n @Input() spxExpiry!: SpxAppExpiryI;\n @Input() spxVersion!: string;\n warning = false;\n finalWarning = false;\n expired = false;\n ngOnChanges(): void {\n if (this.spxExpiry && this.spxVersion) {\n this.expired = spxCheckExpiryHappened(this.spxVersion, this.spxExpiry);\n this.finalWarning = spxCheckExpiryFinalWarning(this.spxVersion, this.spxExpiry) && !this.expired;\n this.warning = spxCheckExpiryWarning(this.spxVersion, this.spxExpiry) && !this.finalWarning && !this.expired;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { NgIf } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
2
  import { Component, Input } from '@angular/core';
4
3
  import * as i3 from '@angular/forms';
@@ -214,32 +213,36 @@ class SpxAppUpdateComponent {
214
213
  }
215
214
  }
216
215
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAppUpdateComponent, deps: [{ token: i1.Deploy }, { token: i0.ChangeDetectorRef }, { token: i0.ApplicationRef }, { token: i2.TranslateService }, { token: i3.FormBuilder }, { token: i4.NavController }], target: i0.ɵɵFactoryTarget.Component }); }
217
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxAppUpdateComponent, isStandalone: true, selector: "spx-app-update", inputs: { spxHomeUrl: "spxHomeUrl", spxIsSignedIn: "spxIsSignedIn", textCheckingForUpdates: "textCheckingForUpdates", textDownloadingUpdate: "textDownloadingUpdate", textErrorWhileUpdatingApp: "textErrorWhileUpdatingApp", textFinishedUpdating: "textFinishedUpdating", textNoUpdatesAvailable: "textNoUpdatesAvailable", textUnexpectedError: "textUnexpectedError", txtAppStoreVersion: "txtAppStoreVersion", txtChannel: "txtChannel", txtNextVersion: "txtNextVersion", txtUpdate: "txtUpdate", txtVersion: "txtVersion", spxAppId: "spxAppId" }, ngImport: i0, template: `<ion-header>
218
- <ion-toolbar>
219
- <ion-title>
220
- {{ txtUpdate | translate | capitalize }}
221
- </ion-title>
222
- </ion-toolbar>
223
- </ion-header>
224
-
225
- <ion-content class="ion-content--upd" [fullscreen]="true">
226
- <div class="ion-padding">
227
- <spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="updateStatus | capitalize">
228
- </spx-progress-bar>
229
- <form [formGroup]="form" class="mt-3">
230
- <div *ngIf="ctrlAppStoreVersion.value && ctrlAppStoreVersion.value.value" class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3">
231
- <spx-input [formControl]="ctrlAppStoreVersion" [spxLabel]="txtAppStoreVersion | translate | capitalize"
232
- [spxReadonly]="true"></spx-input>
233
- <spx-input [formControl]="ctrlConfiguredChannel" [spxLabel]="txtChannel | translate | capitalize"
234
- [spxReadonly]="true"></spx-input>
235
- <spx-input [formControl]="ctrlVersionNumber" [spxLabel]="txtVersion | translate | capitalize"
236
- [spxReadonly]="true"></spx-input>
237
- <spx-input *ngIf="ctrlNextVersionNumber.value && ctrlNextVersionNumber.value.value" [formControl]="ctrlNextVersionNumber" [spxLabel]="txtNextVersion | translate | capitalize"
238
- [spxReadonly]="true"></spx-input>
239
- </div>
240
- </form>
241
- </div>
242
- </ion-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxProgressBarComponent, selector: "spx-progress-bar", inputs: ["spxPercentage", "spxTitle"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxAppUpdateComponent, isStandalone: true, selector: "spx-app-update", inputs: { spxHomeUrl: "spxHomeUrl", spxIsSignedIn: "spxIsSignedIn", textCheckingForUpdates: "textCheckingForUpdates", textDownloadingUpdate: "textDownloadingUpdate", textErrorWhileUpdatingApp: "textErrorWhileUpdatingApp", textFinishedUpdating: "textFinishedUpdating", textNoUpdatesAvailable: "textNoUpdatesAvailable", textUnexpectedError: "textUnexpectedError", txtAppStoreVersion: "txtAppStoreVersion", txtChannel: "txtChannel", txtNextVersion: "txtNextVersion", txtUpdate: "txtUpdate", txtVersion: "txtVersion", spxAppId: "spxAppId" }, ngImport: i0, template: `<ion-header>
217
+ <ion-toolbar>
218
+ <ion-title>
219
+ {{ txtUpdate | translate | capitalize }}
220
+ </ion-title>
221
+ </ion-toolbar>
222
+ </ion-header>
223
+
224
+ <ion-content class="ion-content--upd" [fullscreen]="true">
225
+ <div class="ion-padding">
226
+ <spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="updateStatus | capitalize">
227
+ </spx-progress-bar>
228
+ <form [formGroup]="form" class="mt-3">
229
+ @if (ctrlAppStoreVersion.value && ctrlAppStoreVersion.value.value) {
230
+ <div class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3">
231
+ <spx-input [formControl]="ctrlAppStoreVersion" [spxLabel]="txtAppStoreVersion | translate | capitalize"
232
+ [spxReadonly]="true"></spx-input>
233
+ <spx-input [formControl]="ctrlConfiguredChannel" [spxLabel]="txtChannel | translate | capitalize"
234
+ [spxReadonly]="true"></spx-input>
235
+ <spx-input [formControl]="ctrlVersionNumber" [spxLabel]="txtVersion | translate | capitalize"
236
+ [spxReadonly]="true"></spx-input>
237
+ @if (ctrlNextVersionNumber.value && ctrlNextVersionNumber.value.value) {
238
+ <spx-input [formControl]="ctrlNextVersionNumber" [spxLabel]="txtNextVersion | translate | capitalize"
239
+ [spxReadonly]="true"></spx-input>
240
+ }
241
+ </div>
242
+ }
243
+ </form>
244
+ </div>
245
+ </ion-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxInputComponent, selector: "spx-input", inputs: ["spxLabel", "spxMax", "spxMin", "spxName", "spxReadonly", "spxAutocomplete", "spxAutofocus", "spxInputMode", "spxPattern", "spxRequired", "spxSelectMonth", "spxSelectDay", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxCompact", "spxShowClear", "spxShowSearch", "spxShowValidationMessages", "spxStep", "spxSuggestions", "spxType", "spxValidators", "value", "spxCapitalize", "spxFocused"], outputs: ["spxBlur", "spxClear", "spxChange", "spxFocus", "spxEdit", "spxHelp", "spxSearch"] }, { kind: "component", type: SpxProgressBarComponent, selector: "spx-progress-bar", inputs: ["spxPercentage", "spxTitle"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
243
246
  }
244
247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxAppUpdateComponent, decorators: [{
245
248
  type: Component,
@@ -249,39 +252,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
249
252
  imports: [
250
253
  FormsModule,
251
254
  IonicModule,
252
- NgIf,
253
255
  ReactiveFormsModule,
254
256
  SpxCapitalizePipe,
255
257
  SpxInputComponent,
256
258
  SpxProgressBarComponent,
257
- TranslateModule,
259
+ TranslateModule
258
260
  ],
259
261
  template: `<ion-header>
260
- <ion-toolbar>
261
- <ion-title>
262
- {{ txtUpdate | translate | capitalize }}
263
- </ion-title>
264
- </ion-toolbar>
265
- </ion-header>
266
-
267
- <ion-content class="ion-content--upd" [fullscreen]="true">
268
- <div class="ion-padding">
269
- <spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="updateStatus | capitalize">
270
- </spx-progress-bar>
271
- <form [formGroup]="form" class="mt-3">
272
- <div *ngIf="ctrlAppStoreVersion.value && ctrlAppStoreVersion.value.value" class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3">
273
- <spx-input [formControl]="ctrlAppStoreVersion" [spxLabel]="txtAppStoreVersion | translate | capitalize"
274
- [spxReadonly]="true"></spx-input>
275
- <spx-input [formControl]="ctrlConfiguredChannel" [spxLabel]="txtChannel | translate | capitalize"
276
- [spxReadonly]="true"></spx-input>
277
- <spx-input [formControl]="ctrlVersionNumber" [spxLabel]="txtVersion | translate | capitalize"
278
- [spxReadonly]="true"></spx-input>
279
- <spx-input *ngIf="ctrlNextVersionNumber.value && ctrlNextVersionNumber.value.value" [formControl]="ctrlNextVersionNumber" [spxLabel]="txtNextVersion | translate | capitalize"
280
- [spxReadonly]="true"></spx-input>
281
- </div>
282
- </form>
283
- </div>
284
- </ion-content>`,
262
+ <ion-toolbar>
263
+ <ion-title>
264
+ {{ txtUpdate | translate | capitalize }}
265
+ </ion-title>
266
+ </ion-toolbar>
267
+ </ion-header>
268
+
269
+ <ion-content class="ion-content--upd" [fullscreen]="true">
270
+ <div class="ion-padding">
271
+ <spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="updateStatus | capitalize">
272
+ </spx-progress-bar>
273
+ <form [formGroup]="form" class="mt-3">
274
+ @if (ctrlAppStoreVersion.value && ctrlAppStoreVersion.value.value) {
275
+ <div class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3">
276
+ <spx-input [formControl]="ctrlAppStoreVersion" [spxLabel]="txtAppStoreVersion | translate | capitalize"
277
+ [spxReadonly]="true"></spx-input>
278
+ <spx-input [formControl]="ctrlConfiguredChannel" [spxLabel]="txtChannel | translate | capitalize"
279
+ [spxReadonly]="true"></spx-input>
280
+ <spx-input [formControl]="ctrlVersionNumber" [spxLabel]="txtVersion | translate | capitalize"
281
+ [spxReadonly]="true"></spx-input>
282
+ @if (ctrlNextVersionNumber.value && ctrlNextVersionNumber.value.value) {
283
+ <spx-input [formControl]="ctrlNextVersionNumber" [spxLabel]="txtNextVersion | translate | capitalize"
284
+ [spxReadonly]="true"></spx-input>
285
+ }
286
+ </div>
287
+ }
288
+ </form>
289
+ </div>
290
+ </ion-content>`,
285
291
  }]
286
292
  }], ctorParameters: () => [{ type: i1.Deploy }, { type: i0.ChangeDetectorRef }, { type: i0.ApplicationRef }, { type: i2.TranslateService }, { type: i3.FormBuilder }, { type: i4.NavController }], propDecorators: { spxHomeUrl: [{
287
293
  type: Input