@softpak/components 0.3.2 → 0.3.3

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 (185) hide show
  1. package/fesm2022/softpak-components-spx-alert.mjs +3 -3
  2. package/fesm2022/softpak-components-spx-alert.mjs.map +1 -1
  3. package/fesm2022/softpak-components-spx-app-configuration.mjs.map +1 -1
  4. package/fesm2022/softpak-components-spx-app-expiry.mjs +3 -3
  5. package/fesm2022/softpak-components-spx-app-expiry.mjs.map +1 -1
  6. package/fesm2022/softpak-components-spx-app-update.mjs +13 -15
  7. package/fesm2022/softpak-components-spx-app-update.mjs.map +1 -1
  8. package/fesm2022/softpak-components-spx-button.mjs +3 -3
  9. package/fesm2022/softpak-components-spx-button.mjs.map +1 -1
  10. package/fesm2022/softpak-components-spx-capitalize.mjs +3 -3
  11. package/fesm2022/softpak-components-spx-capitalize.mjs.map +1 -1
  12. package/fesm2022/softpak-components-spx-card.mjs +12 -12
  13. package/fesm2022/softpak-components-spx-card.mjs.map +1 -1
  14. package/fesm2022/softpak-components-spx-change-details.mjs +3 -3
  15. package/fesm2022/softpak-components-spx-change-details.mjs.map +1 -1
  16. package/fesm2022/softpak-components-spx-channel-selection.mjs +6 -6
  17. package/fesm2022/softpak-components-spx-channel-selection.mjs.map +1 -1
  18. package/fesm2022/softpak-components-spx-check-digit.mjs +3 -3
  19. package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
  20. package/fesm2022/softpak-components-spx-form-section.mjs +3 -3
  21. package/fesm2022/softpak-components-spx-form-section.mjs.map +1 -1
  22. package/fesm2022/softpak-components-spx-form-view.mjs +6 -6
  23. package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
  24. package/fesm2022/softpak-components-spx-helpers.mjs.map +1 -1
  25. package/fesm2022/softpak-components-spx-inputs.mjs +30 -30
  26. package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
  27. package/fesm2022/softpak-components-spx-navigation.mjs +9 -9
  28. package/fesm2022/softpak-components-spx-navigation.mjs.map +1 -1
  29. package/fesm2022/softpak-components-spx-number-check.mjs +3 -3
  30. package/fesm2022/softpak-components-spx-number-check.mjs.map +1 -1
  31. package/fesm2022/softpak-components-spx-pagination.mjs +3 -3
  32. package/fesm2022/softpak-components-spx-pagination.mjs.map +1 -1
  33. package/fesm2022/softpak-components-spx-patch.mjs +3 -3
  34. package/fesm2022/softpak-components-spx-patch.mjs.map +1 -1
  35. package/fesm2022/softpak-components-spx-progress-bar.mjs +3 -3
  36. package/fesm2022/softpak-components-spx-progress-bar.mjs.map +1 -1
  37. package/fesm2022/softpak-components-spx-spinner.mjs +3 -3
  38. package/fesm2022/softpak-components-spx-spinner.mjs.map +1 -1
  39. package/fesm2022/softpak-components-spx-stock-info.mjs +3 -3
  40. package/fesm2022/softpak-components-spx-stock-info.mjs.map +1 -1
  41. package/fesm2022/softpak-components-spx-storage.mjs.map +1 -1
  42. package/fesm2022/softpak-components-spx-suggestion.mjs +3 -3
  43. package/fesm2022/softpak-components-spx-suggestion.mjs.map +1 -1
  44. package/fesm2022/softpak-components-spx-toaster.mjs +4 -4
  45. package/fesm2022/softpak-components-spx-toaster.mjs.map +1 -1
  46. package/fesm2022/softpak-components-spx-update.mjs +6 -6
  47. package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
  48. package/fesm2022/softpak-components-spx-validation.mjs +3 -3
  49. package/fesm2022/softpak-components-spx-validation.mjs.map +1 -1
  50. package/package.json +12 -66
  51. package/spx-app-update/spx-app-update.component.d.ts +3 -3
  52. package/esm2022/placeholder.mjs +0 -2
  53. package/esm2022/public_api.mjs +0 -2
  54. package/esm2022/softpak-components.mjs +0 -5
  55. package/esm2022/spx-alert/public-api.mjs +0 -3
  56. package/esm2022/spx-alert/softpak-components-spx-alert.mjs +0 -5
  57. package/esm2022/spx-alert/spx-alert.component.mjs +0 -193
  58. package/esm2022/spx-alert/spx-alert.interface.mjs +0 -3
  59. package/esm2022/spx-app-configuration/public-api.mjs +0 -8
  60. package/esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs +0 -5
  61. package/esm2022/spx-app-configuration/spx-app-alert.interface.mjs +0 -2
  62. package/esm2022/spx-app-configuration/spx-app-bundle-set.interface.mjs +0 -2
  63. package/esm2022/spx-app-configuration/spx-app-channel-type.enum.mjs +0 -8
  64. package/esm2022/spx-app-configuration/spx-app-channel.interface.mjs +0 -2
  65. package/esm2022/spx-app-configuration/spx-app-config.interface.mjs +0 -2
  66. package/esm2022/spx-app-configuration/spx-app-id.enum.mjs +0 -8
  67. package/esm2022/spx-app-configuration/spx-app-lang.enum.mjs +0 -6
  68. package/esm2022/spx-app-configuration/spx-app-release-note.interface.mjs +0 -2
  69. package/esm2022/spx-app-expiry/public-api.mjs +0 -6
  70. package/esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs +0 -5
  71. package/esm2022/spx-app-expiry/spx-app-expiry.component.mjs +0 -90
  72. package/esm2022/spx-app-expiry/spx-app-expiry.interface.mjs +0 -2
  73. package/esm2022/spx-app-expiry/spx-check-expiry-final-warning.interface.mjs +0 -5
  74. package/esm2022/spx-app-expiry/spx-check-expiry-happened.interface.mjs +0 -5
  75. package/esm2022/spx-app-expiry/spx-check-expiry-warning.interface.mjs +0 -5
  76. package/esm2022/spx-app-update/public-api.mjs +0 -2
  77. package/esm2022/spx-app-update/softpak-components-spx-app-update.mjs +0 -5
  78. package/esm2022/spx-app-update/spx-app-update.component.mjs +0 -316
  79. package/esm2022/spx-button/public-api.mjs +0 -2
  80. package/esm2022/spx-button/softpak-components-spx-button.mjs +0 -5
  81. package/esm2022/spx-button/spx-button.component.mjs +0 -142
  82. package/esm2022/spx-capitalize/public-api.mjs +0 -2
  83. package/esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs +0 -5
  84. package/esm2022/spx-capitalize/spx-capitalize.pipe.mjs +0 -20
  85. package/esm2022/spx-card/public-api.mjs +0 -5
  86. package/esm2022/spx-card/softpak-components-spx-card.mjs +0 -5
  87. package/esm2022/spx-card/spx-card-grid.component.mjs +0 -46
  88. package/esm2022/spx-card/spx-card-item.component.mjs +0 -111
  89. package/esm2022/spx-card/spx-card-line.component.mjs +0 -101
  90. package/esm2022/spx-card/spx-card.component.mjs +0 -93
  91. package/esm2022/spx-change-details/public-api.mjs +0 -2
  92. package/esm2022/spx-change-details/softpak-components-spx-change-details.mjs +0 -5
  93. package/esm2022/spx-change-details/spx-change-details-value.interface.mjs +0 -2
  94. package/esm2022/spx-change-details/spx-change-details.component.mjs +0 -199
  95. package/esm2022/spx-channel-selection/public-api.mjs +0 -3
  96. package/esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs +0 -5
  97. package/esm2022/spx-channel-selection/src/spx-channel-indicator.component.mjs +0 -45
  98. package/esm2022/spx-channel-selection/src/spx-welcome.component.mjs +0 -135
  99. package/esm2022/spx-check-digit/public-api.mjs +0 -2
  100. package/esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs +0 -5
  101. package/esm2022/spx-check-digit/spx-check-digit.component.mjs +0 -94
  102. package/esm2022/spx-form-section/public-api.mjs +0 -2
  103. package/esm2022/spx-form-section/softpak-components-spx-form-section.mjs +0 -5
  104. package/esm2022/spx-form-section/spx-form-section.component.mjs +0 -37
  105. package/esm2022/spx-form-view/public-api.mjs +0 -7
  106. package/esm2022/spx-form-view/softpak-components-spx-form-view.mjs +0 -5
  107. package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +0 -119
  108. package/esm2022/spx-form-view/spx-form-button-type.enum.mjs +0 -6
  109. package/esm2022/spx-form-view/spx-form-button.interface.mjs +0 -2
  110. package/esm2022/spx-form-view/spx-form-field.interface.mjs +0 -2
  111. package/esm2022/spx-form-view/spx-form-section.interface.mjs +0 -2
  112. package/esm2022/spx-form-view/spx-form-view.component.mjs +0 -289
  113. package/esm2022/spx-form-view/spx-form.interface.mjs +0 -2
  114. package/esm2022/spx-helpers/calc-check-digit.function.mjs +0 -21
  115. package/esm2022/spx-helpers/public-api.mjs +0 -4
  116. package/esm2022/spx-helpers/softpak-components-spx-helpers.mjs +0 -5
  117. package/esm2022/spx-helpers/spx-severity.enum.mjs +0 -9
  118. package/esm2022/spx-helpers/value-pair-to-value.function.mjs +0 -7
  119. package/esm2022/spx-inputs/public-api.mjs +0 -6
  120. package/esm2022/spx-inputs/softpak-components-spx-inputs.mjs +0 -5
  121. package/esm2022/spx-inputs/spx-dropdown.component.mjs +0 -94
  122. package/esm2022/spx-inputs/spx-input-box.component.mjs +0 -255
  123. package/esm2022/spx-inputs/spx-input-date.component.mjs +0 -294
  124. package/esm2022/spx-inputs/spx-input-float.component.mjs +0 -159
  125. package/esm2022/spx-inputs/spx-input-number.component.mjs +0 -87
  126. package/esm2022/spx-inputs/spx-input-radio.component.mjs +0 -129
  127. package/esm2022/spx-inputs/spx-input-text.component.mjs +0 -155
  128. package/esm2022/spx-inputs/spx-input-time-modal.component.mjs +0 -116
  129. package/esm2022/spx-inputs/spx-input-time.component.mjs +0 -166
  130. package/esm2022/spx-inputs/spx-input-type.enum.mjs +0 -17
  131. package/esm2022/spx-inputs/spx-input.component.mjs +0 -445
  132. package/esm2022/spx-inputs/spx-value-interface.mjs +0 -2
  133. package/esm2022/spx-navigation/public-api.mjs +0 -5
  134. package/esm2022/spx-navigation/softpak-components-spx-navigation.mjs +0 -5
  135. package/esm2022/spx-navigation/spx-home-tile.component.mjs +0 -68
  136. package/esm2022/spx-navigation/spx-home-tiles.component.mjs +0 -24
  137. package/esm2022/spx-navigation/spx-navigation-item.interface.mjs +0 -2
  138. package/esm2022/spx-navigation/spx-navigation.component.mjs +0 -51
  139. package/esm2022/spx-number-check/public-api.mjs +0 -2
  140. package/esm2022/spx-number-check/softpak-components-spx-number-check.mjs +0 -5
  141. package/esm2022/spx-number-check/spx-number-check.component.mjs +0 -259
  142. package/esm2022/spx-pagination/public-api.mjs +0 -2
  143. package/esm2022/spx-pagination/softpak-components-spx-pagination.mjs +0 -5
  144. package/esm2022/spx-pagination/spx-pagination.component.mjs +0 -44
  145. package/esm2022/spx-patch/patch-check.function.mjs +0 -9
  146. package/esm2022/spx-patch/public-api.mjs +0 -4
  147. package/esm2022/spx-patch/release-check.function.mjs +0 -14
  148. package/esm2022/spx-patch/softpak-components-spx-patch.mjs +0 -5
  149. package/esm2022/spx-patch/spx-patch.component.mjs +0 -48
  150. package/esm2022/spx-progress-bar/public-api.mjs +0 -2
  151. package/esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs +0 -5
  152. package/esm2022/spx-progress-bar/spx-progress-bar.component.mjs +0 -29
  153. package/esm2022/spx-spinner/public-api.mjs +0 -2
  154. package/esm2022/spx-spinner/softpak-components-spx-spinner.mjs +0 -5
  155. package/esm2022/spx-spinner/spx-spinner.component.mjs +0 -159
  156. package/esm2022/spx-stock-info/public-api.mjs +0 -3
  157. package/esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs +0 -5
  158. package/esm2022/spx-stock-info/spx-stock-info-value.interface.mjs +0 -2
  159. package/esm2022/spx-stock-info/spx-stock-info.component.mjs +0 -327
  160. package/esm2022/spx-storage/public-api.mjs +0 -3
  161. package/esm2022/spx-storage/softpak-components-spx-storage.mjs +0 -5
  162. package/esm2022/spx-storage/src/spx-storage-key.enum.mjs +0 -13
  163. package/esm2022/spx-storage/src/spx-storage.class.mjs +0 -45
  164. package/esm2022/spx-suggestion/public-api.mjs +0 -2
  165. package/esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs +0 -5
  166. package/esm2022/spx-suggestion/spx-suggestion.component.mjs +0 -69
  167. package/esm2022/spx-toaster/public-api.mjs +0 -4
  168. package/esm2022/spx-toaster/softpak-components-spx-toaster.mjs +0 -5
  169. package/esm2022/spx-toaster/src/spx-toaster-autoclose-speed.mjs +0 -23
  170. package/esm2022/spx-toaster/src/spx-toaster-message.interface.mjs +0 -3
  171. package/esm2022/spx-toaster/src/spx-toaster.component.mjs +0 -173
  172. package/esm2022/spx-update/public-api.mjs +0 -3
  173. package/esm2022/spx-update/softpak-components-spx-update.mjs +0 -5
  174. package/esm2022/spx-update/src/spx-update-info.component.mjs +0 -88
  175. package/esm2022/spx-update/src/spx-update-progress.component.mjs +0 -46
  176. package/esm2022/spx-validation/max.validator.mjs +0 -17
  177. package/esm2022/spx-validation/maxlength.validator.mjs +0 -20
  178. package/esm2022/spx-validation/min.validator.mjs +0 -17
  179. package/esm2022/spx-validation/minlength.validator.mjs +0 -20
  180. package/esm2022/spx-validation/pattern.validator.mjs +0 -12
  181. package/esm2022/spx-validation/public-api.mjs +0 -9
  182. package/esm2022/spx-validation/required.validator.mjs +0 -12
  183. package/esm2022/spx-validation/softpak-components-spx-validation.mjs +0 -5
  184. package/esm2022/spx-validation/spx-validate-control.component.mjs +0 -68
  185. package/esm2022/spx-validation/year-and-month.validator.mjs +0 -42
@@ -8,8 +8,8 @@ class SpxSuggestionComponent {
8
8
  this.spxSelected = false;
9
9
  this.spxTabbable = false;
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxSuggestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxSuggestionComponent, isStandalone: true, selector: "spx-suggestion", inputs: { spxDisabled: "spxDisabled", spxFocused: "spxFocused", spxSelected: "spxSelected", spxTabbable: "spxTabbable" }, ngImport: i0, template: `<button
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxSuggestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0", type: SpxSuggestionComponent, isStandalone: true, selector: "spx-suggestion", inputs: { spxDisabled: "spxDisabled", spxFocused: "spxFocused", spxSelected: "spxSelected", spxTabbable: "spxTabbable" }, ngImport: i0, template: `<button
13
13
  type="button"
14
14
  class="spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-left truncate outline-none"
15
15
  [class.bg-sky-100]="!this.spxSelected && !this.spxDisabled"
@@ -31,7 +31,7 @@ class SpxSuggestionComponent {
31
31
  <div class="text-ellipsis overflow-hidden whitespace-nowrap"><ng-content></ng-content></div>
32
32
  </button>`, isInline: true }); }
33
33
  }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxSuggestionComponent, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxSuggestionComponent, decorators: [{
35
35
  type: Component,
36
36
  args: [{
37
37
  selector: 'spx-suggestion',
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-suggestion.mjs","sources":["../../../../projects/softpak/components/spx-suggestion/spx-suggestion.component.ts","../../../../projects/softpak/components/spx-suggestion/softpak-components-spx-suggestion.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'spx-suggestion',\n standalone: true,\n template: `<button\n type=\"button\"\n class=\"spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-left truncate outline-none\"\n [class.bg-sky-100]=\"!this.spxSelected && !this.spxDisabled\"\n [class.focus:ring-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.hover:bg-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.active:bg-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.bg-gray-200]=\"this.spxDisabled && !this.spxSelected\"\n [class.bg-gray-400]=\"this.spxDisabled && this.spxSelected\"\n [class.cursor-not-allowed]=\"this.spxDisabled\"\n [class.opacity-60]=\"this.spxDisabled\"\n [class.bg-gradient-to-r]=\"this.spxSelected && !this.spxDisabled\"\n [class.from-teal-400]=\"this.spxSelected && !this.spxDisabled\"\n [class.to-teal-600]=\"this.spxSelected && !this.spxDisabled\"\n [class.font-bold]=\"this.spxSelected\"\n [attr.tabindex]=\"this.spxTabbable && !this.spxDisabled ? 0 : -1\"\n [class.ring-2]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\"\n [class.ring-offset-2]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\"\n [class.ring-blue-500]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\">\n <div class=\"text-ellipsis overflow-hidden whitespace-nowrap\"><ng-content></ng-content></div>\n </button>`,\n})\nexport class SpxSuggestionComponent {\n @Input() spxDisabled = false;\n @Input() spxFocused = false;\n @Input() spxSelected = false;\n @Input() spxTabbable = false;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MA2Ba,sBAAsB,CAAA;AAzBnC,IAAA,WAAA,GAAA;QA0BW,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QACpB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;QACpB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAC9B,KAAA;8GALY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAtBvB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;AAoBE,aAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAED,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAzBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;AAoBE,aAAA,CAAA;AACb,iBAAA,CAAA;8BAEU,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;;;AC/BR;;AAEG;;;;"}
1
+ {"version":3,"file":"softpak-components-spx-suggestion.mjs","sources":["../../../../projects/softpak/components/spx-suggestion/spx-suggestion.component.ts","../../../../projects/softpak/components/spx-suggestion/softpak-components-spx-suggestion.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'spx-suggestion',\n standalone: true,\n template: `<button\n type=\"button\"\n class=\"spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-left truncate outline-none\"\n [class.bg-sky-100]=\"!this.spxSelected && !this.spxDisabled\"\n [class.focus:ring-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.hover:bg-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.active:bg-sky-300]=\"!this.spxSelected && !this.spxDisabled\"\n [class.bg-gray-200]=\"this.spxDisabled && !this.spxSelected\"\n [class.bg-gray-400]=\"this.spxDisabled && this.spxSelected\"\n [class.cursor-not-allowed]=\"this.spxDisabled\"\n [class.opacity-60]=\"this.spxDisabled\"\n [class.bg-gradient-to-r]=\"this.spxSelected && !this.spxDisabled\"\n [class.from-teal-400]=\"this.spxSelected && !this.spxDisabled\"\n [class.to-teal-600]=\"this.spxSelected && !this.spxDisabled\"\n [class.font-bold]=\"this.spxSelected\"\n [attr.tabindex]=\"this.spxTabbable && !this.spxDisabled ? 0 : -1\"\n [class.ring-2]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\"\n [class.ring-offset-2]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\"\n [class.ring-blue-500]=\"this.spxFocused && this.spxTabbable && !this.spxDisabled\">\n <div class=\"text-ellipsis overflow-hidden whitespace-nowrap\"><ng-content></ng-content></div>\n </button>`,\n})\nexport class SpxSuggestionComponent {\n @Input() spxDisabled = false;\n @Input() spxFocused = false;\n @Input() spxSelected = false;\n @Input() spxTabbable = false;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MA2Ba,sBAAsB,CAAA;AAzBnC,IAAA,WAAA,GAAA;QA0BW,IAAW,CAAA,WAAA,GAAG,KAAK;QACnB,IAAU,CAAA,UAAA,GAAG,KAAK;QAClB,IAAW,CAAA,WAAA,GAAG,KAAK;QACnB,IAAW,CAAA,WAAA,GAAG,KAAK;AAC7B;8GALY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAtBvB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;AAoBE,aAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;2FAED,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAzBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;AAoBE,aAAA,CAAA;AACb,iBAAA;8BAEU,WAAW,EAAA,CAAA;sBAAnB;gBACQ,UAAU,EAAA,CAAA;sBAAlB;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACQ,WAAW,EAAA,CAAA;sBAAnB;;;AC/BH;;AAEG;;;;"}
@@ -74,8 +74,8 @@ class SpxToasterComponent {
74
74
  return autoCloseSpeed;
75
75
  }
76
76
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxToasterComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxToasterComponent, isStandalone: true, selector: "spx-toaster", inputs: { messages: "messages", spxAutoclose: "spxAutoclose" }, outputs: { spxClose: "spxClose" }, host: { properties: { "class.spx-toasts-displayer": "this.hostClass" } }, usesOnChanges: true, ngImport: i0, template: `
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxToasterComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0", type: SpxToasterComponent, isStandalone: true, selector: "spx-toaster", inputs: { messages: "messages", spxAutoclose: "spxAutoclose" }, outputs: { spxClose: "spxClose" }, host: { properties: { "class.spx-toasts-displayer": "this.hostClass" } }, usesOnChanges: true, ngImport: i0, template: `
79
79
  <div
80
80
  *ngIf="messages && messages.length > 0"
81
81
  class="flex flex-col gap-2 fixed bottom-16 left-0 right-0 mx-auto px-3 z-50">
@@ -122,9 +122,9 @@ class SpxToasterComponent {
122
122
  </div> -->
123
123
  </spx-alert>
124
124
 
125
- </div>`, isInline: true, styles: ["\n .progress-bar-container {\n width: 100%;\n height: 5px;\n background-color: #ccc;\n margin-top: 8px;\n border-radius: 2px;\n overflow: hidden;\n }\n\n .progress-bar {\n height: 100%;\n background-color: #76c7c0;\n animation-name: progress;\n animation-timing-function: ease-in-out;\n animation-fill-mode: forwards;\n animation-duration: 5000;\n }\n\n @keyframes progress {\n from {\n width: 0%;\n }\n to {\n width: 100%;\n }\n }\n "], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxAlertComponent, selector: "spx-alert", inputs: ["spxAutoclose", "spxCloseable", "spxHideTitle", "spxTitle", "spxMarginTop", "spxSeverity", "tick"], outputs: ["spxClose"] }] }); }
125
+ </div>`, isInline: true, styles: [".progress-bar-container{width:100%;height:5px;background-color:#ccc;margin-top:8px;border-radius:2px;overflow:hidden}.progress-bar{height:100%;background-color:#76c7c0;animation-name:progress;animation-timing-function:ease-in-out;animation-fill-mode:forwards;animation-duration:5000}@keyframes progress{0%{width:0%}to{width:100%}}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxAlertComponent, selector: "spx-alert", inputs: ["spxAutoclose", "spxCloseable", "spxHideTitle", "spxTitle", "spxMarginTop", "spxSeverity", "tick"], outputs: ["spxClose"] }] }); }
126
126
  }
127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxToasterComponent, decorators: [{
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxToasterComponent, decorators: [{
128
128
  type: Component,
129
129
  args: [{
130
130
  selector: 'spx-toaster',
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-toaster.mjs","sources":["../../../../projects/softpak/components/spx-toaster/src/spx-toaster-autoclose-speed.ts","../../../../projects/softpak/components/spx-toaster/src/spx-toaster.component.ts","../../../../projects/softpak/components/spx-toaster/src/spx-toaster-message.interface.ts","../../../../projects/softpak/components/spx-toaster/softpak-components-spx-toaster.ts"],"sourcesContent":["export enum SpxToasterSeverityEnum {\n ERROR = 'error',\n INFO = 'info',\n SUCCESS = 'success',\n WARNING = 'warning',\n}\n\nexport enum SpxToasterAutoCloseSpeedEnum {\n DEFAULT = -1,\n SLOW = -2,\n}\n\nexport function toasterAutocloseSpeed(autoCloseSpeed: SpxToasterAutoCloseSpeedEnum, messageText: string) {\n switch (autoCloseSpeed) {\n case SpxToasterAutoCloseSpeedEnum.DEFAULT:\n return Math.min(Math.max(messageText.length * 50, 2000), 7000);\n case SpxToasterAutoCloseSpeedEnum.SLOW:\n return Math.min(Math.max(messageText.length * 60, 3000), 10000);\n default:\n return autoCloseSpeed;\n }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2\n} from '@angular/core';\nimport { SpxToasterMessageI } from './spx-toaster-message.interface';\nimport { SpxAlertComponent } from '@softpak/components/spx-alert';\nimport { NgFor, NgIf } from '@angular/common';\nimport { SpxToasterAutoCloseSpeedEnum } from './spx-toaster-autoclose-speed';\n\n@Component({\n selector: 'spx-toaster',\n template: `\n <div \n *ngIf=\"messages && messages.length > 0\"\n class=\"flex flex-col gap-2 fixed bottom-16 left-0 right-0 mx-auto px-3 z-50\">\n <style>\n .progress-bar-container {\n width: 100%;\n height: 5px;\n background-color: #ccc;\n margin-top: 8px;\n border-radius: 2px;\n overflow: hidden;\n }\n\n .progress-bar {\n height: 100%;\n background-color: #76c7c0;\n animation-name: progress;\n animation-timing-function: ease-in-out;\n animation-fill-mode: forwards;\n animation-duration: 5000;\n }\n\n @keyframes progress {\n from {\n width: 0%;\n }\n to {\n width: 100%;\n }\n }\n </style>\n <spx-alert\n *ngFor=\"let message of messages\"\n [spxAutoclose]=\"message.autoClose\"\n [spxCloseable]=\"message.closeable\"\n [spxSeverity]=\"message.severity\"\n [spxTitle]=\"message.title\"\n (spxClose)=\"handleClose(message.id)\"\n (click)=\"handleClose(message.id)\"\n [id]=\"message.id\"\n >{{message.message}}\n <!-- <div *ngIf=\"message.autoClose\" class=\"progress-bar-container\">\n <div class=\"progress-bar\"></div>\n </div> -->\n </spx-alert>\n \n </div>`,\n standalone: true,\n imports: [\n NgIf,\n NgFor,\n SpxAlertComponent,\n\n ],\n})\nexport class SpxToasterComponent implements OnChanges {\n @HostBinding('class.spx-toasts-displayer') hostClass = true;\n @Input() messages!: SpxToasterMessageI[];\n @Output() spxClose: EventEmitter<number> = new EventEmitter<number>();\n @Input() spxAutoclose: number | undefined;\n count: number = 0;\n constructor(private renderer: Renderer2, private el: ElementRef) { \n\n }\n\n\n ngOnChanges() {\n this.messages = this.messages.map(m => ({ ...m, autoClose: this.calcToasterAutocloseSpeed(m.autoClose, m.message) }));\n if (this.messages.length > 0) {\n setTimeout(() => {\n this.messages = this.messages.map(message => {\n if (message.autoClose) {\n // console.log(message.autoClose);\n // this.showProgressBar(message.autoClose, message.id)\n // this.showProgressBar(600000, message.id)\n setTimeout(() => {\n this.handleClose(message.id)\n }, message.autoClose);\n }\n return message;\n });\n }, 0);\n }\n }\n \n\n showProgressBar(autoclose: number, id: number) {\n const alertElement = this.el.nativeElement.querySelector(`spx-alert[id=\"${id}\"]`);\n console.log(alertElement);\n if (alertElement) {\n \n } else {\n console.error(`spx-alert element with ID ${id} not found.`);\n }\n }\n \n\n public handleClose(id: number) {\n this.spxClose.emit(id);\n }\n\n private calcToasterAutocloseSpeed(autoCloseSpeed: SpxToasterAutoCloseSpeedEnum, messageText: string): number {\n switch (autoCloseSpeed) {\n case SpxToasterAutoCloseSpeedEnum.DEFAULT:\n return Math.min(Math.max(messageText.length * 50, 2000), 7000);\n case SpxToasterAutoCloseSpeedEnum.SLOW:\n return Math.min(Math.max(messageText.length * 60, 3000), 10000);\n default:\n return autoCloseSpeed;\n }\n }\n}\n","import { SpxSeverityEnum } from \"@softpak/components/spx-helpers\";\n\nexport class SpxToasterMessageI {\n autoClose?: any;\n title?: string;\n closeable?: boolean;\n id!: number;\n message!: string;\n severity!: SpxSeverityEnum;\n uniqueIdentifier?: string;\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-toaster.mjs","sources":["../../../../projects/softpak/components/spx-toaster/src/spx-toaster-autoclose-speed.ts","../../../../projects/softpak/components/spx-toaster/src/spx-toaster.component.ts","../../../../projects/softpak/components/spx-toaster/src/spx-toaster-message.interface.ts","../../../../projects/softpak/components/spx-toaster/softpak-components-spx-toaster.ts"],"sourcesContent":["export enum SpxToasterSeverityEnum {\n ERROR = 'error',\n INFO = 'info',\n SUCCESS = 'success',\n WARNING = 'warning',\n}\n\nexport enum SpxToasterAutoCloseSpeedEnum {\n DEFAULT = -1,\n SLOW = -2,\n}\n\nexport function toasterAutocloseSpeed(autoCloseSpeed: SpxToasterAutoCloseSpeedEnum, messageText: string) {\n switch (autoCloseSpeed) {\n case SpxToasterAutoCloseSpeedEnum.DEFAULT:\n return Math.min(Math.max(messageText.length * 50, 2000), 7000);\n case SpxToasterAutoCloseSpeedEnum.SLOW:\n return Math.min(Math.max(messageText.length * 60, 3000), 10000);\n default:\n return autoCloseSpeed;\n }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2\n} from '@angular/core';\nimport { SpxToasterMessageI } from './spx-toaster-message.interface';\nimport { SpxAlertComponent } from '@softpak/components/spx-alert';\nimport { NgFor, NgIf } from '@angular/common';\nimport { SpxToasterAutoCloseSpeedEnum } from './spx-toaster-autoclose-speed';\n\n@Component({\n selector: 'spx-toaster',\n template: `\n <div \n *ngIf=\"messages && messages.length > 0\"\n class=\"flex flex-col gap-2 fixed bottom-16 left-0 right-0 mx-auto px-3 z-50\">\n <style>\n .progress-bar-container {\n width: 100%;\n height: 5px;\n background-color: #ccc;\n margin-top: 8px;\n border-radius: 2px;\n overflow: hidden;\n }\n\n .progress-bar {\n height: 100%;\n background-color: #76c7c0;\n animation-name: progress;\n animation-timing-function: ease-in-out;\n animation-fill-mode: forwards;\n animation-duration: 5000;\n }\n\n @keyframes progress {\n from {\n width: 0%;\n }\n to {\n width: 100%;\n }\n }\n </style>\n <spx-alert\n *ngFor=\"let message of messages\"\n [spxAutoclose]=\"message.autoClose\"\n [spxCloseable]=\"message.closeable\"\n [spxSeverity]=\"message.severity\"\n [spxTitle]=\"message.title\"\n (spxClose)=\"handleClose(message.id)\"\n (click)=\"handleClose(message.id)\"\n [id]=\"message.id\"\n >{{message.message}}\n <!-- <div *ngIf=\"message.autoClose\" class=\"progress-bar-container\">\n <div class=\"progress-bar\"></div>\n </div> -->\n </spx-alert>\n \n </div>`,\n standalone: true,\n imports: [\n NgIf,\n NgFor,\n SpxAlertComponent,\n\n ],\n})\nexport class SpxToasterComponent implements OnChanges {\n @HostBinding('class.spx-toasts-displayer') hostClass = true;\n @Input() messages!: SpxToasterMessageI[];\n @Output() spxClose: EventEmitter<number> = new EventEmitter<number>();\n @Input() spxAutoclose: number | undefined;\n count: number = 0;\n constructor(private renderer: Renderer2, private el: ElementRef) { \n\n }\n\n\n ngOnChanges() {\n this.messages = this.messages.map(m => ({ ...m, autoClose: this.calcToasterAutocloseSpeed(m.autoClose, m.message) }));\n if (this.messages.length > 0) {\n setTimeout(() => {\n this.messages = this.messages.map(message => {\n if (message.autoClose) {\n // console.log(message.autoClose);\n // this.showProgressBar(message.autoClose, message.id)\n // this.showProgressBar(600000, message.id)\n setTimeout(() => {\n this.handleClose(message.id)\n }, message.autoClose);\n }\n return message;\n });\n }, 0);\n }\n }\n \n\n showProgressBar(autoclose: number, id: number) {\n const alertElement = this.el.nativeElement.querySelector(`spx-alert[id=\"${id}\"]`);\n console.log(alertElement);\n if (alertElement) {\n \n } else {\n console.error(`spx-alert element with ID ${id} not found.`);\n }\n }\n \n\n public handleClose(id: number) {\n this.spxClose.emit(id);\n }\n\n private calcToasterAutocloseSpeed(autoCloseSpeed: SpxToasterAutoCloseSpeedEnum, messageText: string): number {\n switch (autoCloseSpeed) {\n case SpxToasterAutoCloseSpeedEnum.DEFAULT:\n return Math.min(Math.max(messageText.length * 50, 2000), 7000);\n case SpxToasterAutoCloseSpeedEnum.SLOW:\n return Math.min(Math.max(messageText.length * 60, 3000), 10000);\n default:\n return autoCloseSpeed;\n }\n }\n}\n","import { SpxSeverityEnum } from \"@softpak/components/spx-helpers\";\n\nexport class SpxToasterMessageI {\n autoClose?: any;\n title?: string;\n closeable?: boolean;\n id!: number;\n message!: string;\n severity!: SpxSeverityEnum;\n uniqueIdentifier?: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -39,8 +39,8 @@ class SpxUpdateInfoComponent {
39
39
  value: appStoreVersion,
40
40
  });
41
41
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxUpdateInfoComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxUpdateInfoComponent, isStandalone: true, selector: "spx-update-info", inputs: { txtAppStoreVersion: "txtAppStoreVersion", txtChannel: "txtChannel", txtNextVersion: "txtNextVersion", txtVersion: "txtVersion" }, ngImport: i0, template: `<form [formGroup]="form" class="mt-3">
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxUpdateInfoComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0", type: SpxUpdateInfoComponent, isStandalone: true, selector: "spx-update-info", inputs: { txtAppStoreVersion: "txtAppStoreVersion", txtChannel: "txtChannel", txtNextVersion: "txtNextVersion", txtVersion: "txtVersion" }, ngImport: i0, template: `<form [formGroup]="form" class="mt-3">
44
44
  <div class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3">
45
45
  <spx-input [formControl]="ctrlVersionNumber" [spxLabel]="txtVersion | capitalize"
46
46
  [spxReadonly]="true"></spx-input>
@@ -53,7 +53,7 @@ class SpxUpdateInfoComponent {
53
53
  </div>
54
54
  </form>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.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", "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"] }] }); }
55
55
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxUpdateInfoComponent, decorators: [{
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxUpdateInfoComponent, decorators: [{
57
57
  type: Component,
58
58
  args: [{
59
59
  selector: 'spx-update-info',
@@ -108,11 +108,11 @@ class SpxUpdateProgressComponent {
108
108
  this.syncTruckInterval = undefined;
109
109
  }
110
110
  }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxUpdateProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxUpdateProgressComponent, isStandalone: true, selector: "spx-update-progress", inputs: { title: "title", percentage: "percentage" }, ngImport: i0, template: `<spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="title | capitalize">
111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxUpdateProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
112
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0", type: SpxUpdateProgressComponent, isStandalone: true, selector: "spx-update-progress", inputs: { title: "title", percentage: "percentage" }, ngImport: i0, template: `<spx-progress-bar [spxPercentage]="delayedPercentage" [spxTitle]="title | capitalize">
113
113
  </spx-progress-bar>`, isInline: true, dependencies: [{ kind: "component", type: SpxProgressBarComponent, selector: "spx-progress-bar", inputs: ["spxPercentage", "spxTitle"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }] }); }
114
114
  }
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxUpdateProgressComponent, decorators: [{
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxUpdateProgressComponent, decorators: [{
116
116
  type: Component,
117
117
  args: [{
118
118
  selector: 'spx-update-progress',
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-update.mjs","sources":["../../../../projects/softpak/components/spx-update/src/spx-update-info.component.ts","../../../../projects/softpak/components/spx-update/src/spx-update-progress.component.ts","../../../../projects/softpak/components/spx-update/softpak-components-spx-update.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxInputComponent } from '@softpak/components/spx-inputs';\n\nconst ctrlAppStoreVersion = 'appStoreVersion';\nconst ctrlChannel = 'channel';\nconst ctrlNextVersionNumber = 'nextVersionNumber';\nconst ctrlVersionNumber = 'versionNumber';\n\n@Component({\n selector: 'spx-update-info',\n template: `<form [formGroup]=\"form\" class=\"mt-3\">\n <div class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3\">\n <spx-input [formControl]=\"ctrlVersionNumber\" [spxLabel]=\"txtVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlNextVersionNumber\" [spxLabel]=\"txtNextVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlConfiguredChannel\" [spxLabel]=\"txtChannel | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlAppStoreVersion\" [spxLabel]=\"txtAppStoreVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n </div>\n </form>`,\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SpxCapitalizePipe,\n SpxInputComponent,\n ]\n})\nexport class SpxUpdateInfoComponent {\n form!: FormGroup;\n @Input() txtAppStoreVersion!: string;\n @Input() txtChannel!: string;\n @Input() txtNextVersion!: string;\n @Input() txtVersion!: string;\n \n get ctrlVersionNumber(): FormControl { return this.form.get(ctrlVersionNumber) as FormControl; }\n get ctrlNextVersionNumber(): FormControl { return this.form.get(ctrlNextVersionNumber) as FormControl; }\n get ctrlConfiguredChannel(): FormControl { return this.form.get(ctrlChannel) as FormControl; }\n get ctrlAppStoreVersion(): FormControl { return this.form.get(ctrlAppStoreVersion) as FormControl; }\n\n constructor(\n private readonly formBuilder: FormBuilder,\n ) {\n this.form = this.formBuilder.group({\n [ctrlAppStoreVersion]: [null, []],\n [ctrlChannel]: [null, []],\n [ctrlNextVersionNumber]: [null, []],\n [ctrlVersionNumber]: [null, []],\n });\n }\n\n update(appStoreVersion: string, channel: string, nextVersion: string, version: string) {\n this.ctrlVersionNumber.setValue({\n value: version,\n });\n this.ctrlNextVersionNumber.setValue({\n value: nextVersion,\n });\n this.ctrlConfiguredChannel.setValue({\n value: channel,\n });\n this.ctrlAppStoreVersion.setValue({\n value: appStoreVersion,\n });\n }\n}\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxProgressBarComponent } from '@softpak/components/spx-progress-bar';\n\n@Component({\n selector: 'spx-update-progress',\n template: `<spx-progress-bar [spxPercentage]=\"delayedPercentage\" [spxTitle]=\"title | capitalize\">\n </spx-progress-bar>`,\n standalone: true,\n imports: [\n SpxProgressBarComponent,\n SpxCapitalizePipe,\n ],\n})\nexport class SpxUpdateProgressComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() percentage!: number;\n delayedPercentage!: number;\n syncTruckInterval?: any;\n \n ngOnInit(): void {\n this.startLoaderSync();\n }\n\n ngOnDestroy(): void {\n this.stopLoaderSync();\n }\n\n private startLoaderSync() {\n if (this.syncTruckInterval === null) {\n this.syncTruckInterval = setInterval(() => {\n this.delayedPercentage = this.percentage;\n }, 200);\n }\n }\n\n private stopLoaderSync() {\n if (this.syncTruckInterval !== null) {\n clearInterval(this.syncTruckInterval);\n this.syncTruckInterval = undefined;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;AAMA,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAC9C,MAAM,WAAW,GAAG,SAAS,CAAC;AAC9B,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAClD,MAAM,iBAAiB,GAAG,eAAe,CAAC;MAyB7B,sBAAsB,CAAA;AAOjC,IAAA,IAAI,iBAAiB,GAAA,EAAkB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAgB,CAAC,EAAE;AAChG,IAAA,IAAI,qBAAqB,GAAA,EAAkB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAgB,CAAC,EAAE;AACxG,IAAA,IAAI,qBAAqB,GAAA,EAAkB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAgB,CAAC,EAAE;AAC9F,IAAA,IAAI,mBAAmB,GAAA,EAAkB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAgB,CAAC,EAAE;AAEpG,IAAA,WAAA,CACmB,WAAwB,EAAA;QAAxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;QAEzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACjC,YAAA,CAAC,mBAAmB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;AACjC,YAAA,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;AACzB,YAAA,CAAC,qBAAqB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;AACnC,YAAA,CAAC,iBAAiB,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;AAChC,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,MAAM,CAAC,eAAuB,EAAE,OAAe,EAAE,WAAmB,EAAE,OAAe,EAAA;AACnF,QAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;AAC9B,YAAA,KAAK,EAAE,OAAO;AACf,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;AAClC,YAAA,KAAK,EAAE,WAAW;AACnB,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;AAClC,YAAA,KAAK,EAAE,OAAO;AACf,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;AAChC,YAAA,KAAK,EAAE,eAAe;AACvB,SAAA,CAAC,CAAC;KACJ;8GApCU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EArBvB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;UAWF,EAGN,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,8BACZ,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,mBAAmB,EACnB,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,iBAAiB,mDACjB,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,SAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,aAAA,EAAA,aAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,2BAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,eAAA,EAAA,OAAA,EAAA,eAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,WAAA,EAAA,UAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGR,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAvBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;AAWF,SAAA,CAAA;AACR,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,iBAAiB;wBACjB,iBAAiB;AAClB,qBAAA;AACF,iBAAA,CAAA;gFAGU,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;;;MCzBK,0BAA0B,CAAA;IAMrC,QAAQ,GAAA;QACN,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,WAAW,GAAA;QACT,IAAI,CAAC,cAAc,EAAE,CAAC;KACvB;IAEO,eAAe,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;AACnC,YAAA,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,MAAK;AACxC,gBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;aAC1C,EAAE,GAAG,CAAC,CAAC;SACT;KACF;IAEO,cAAc,GAAA;AACpB,QAAA,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;AACnC,YAAA,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACtC,YAAA,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;SACpC;KACF;8GA3BU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAR3B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;sBACU,EAGlB,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,uBAAuB,+FACvB,iBAAiB,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGR,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAVtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,CAAA;AACU,qBAAA,CAAA;AACpB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE;wBACP,uBAAuB;wBACvB,iBAAiB;AAClB,qBAAA;AACF,iBAAA,CAAA;8BAEU,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;;;AChBR;;AAEG;;;;"}
1
+ {"version":3,"file":"softpak-components-spx-update.mjs","sources":["../../../../projects/softpak/components/spx-update/src/spx-update-info.component.ts","../../../../projects/softpak/components/spx-update/src/spx-update-progress.component.ts","../../../../projects/softpak/components/spx-update/softpak-components-spx-update.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxInputComponent } from '@softpak/components/spx-inputs';\n\nconst ctrlAppStoreVersion = 'appStoreVersion';\nconst ctrlChannel = 'channel';\nconst ctrlNextVersionNumber = 'nextVersionNumber';\nconst ctrlVersionNumber = 'versionNumber';\n\n@Component({\n selector: 'spx-update-info',\n template: `<form [formGroup]=\"form\" class=\"mt-3\">\n <div class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3\">\n <spx-input [formControl]=\"ctrlVersionNumber\" [spxLabel]=\"txtVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlNextVersionNumber\" [spxLabel]=\"txtNextVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlConfiguredChannel\" [spxLabel]=\"txtChannel | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n <spx-input [formControl]=\"ctrlAppStoreVersion\" [spxLabel]=\"txtAppStoreVersion | capitalize\"\n [spxReadonly]=\"true\"></spx-input>\n </div>\n </form>`,\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SpxCapitalizePipe,\n SpxInputComponent,\n ]\n})\nexport class SpxUpdateInfoComponent {\n form!: FormGroup;\n @Input() txtAppStoreVersion!: string;\n @Input() txtChannel!: string;\n @Input() txtNextVersion!: string;\n @Input() txtVersion!: string;\n \n get ctrlVersionNumber(): FormControl { return this.form.get(ctrlVersionNumber) as FormControl; }\n get ctrlNextVersionNumber(): FormControl { return this.form.get(ctrlNextVersionNumber) as FormControl; }\n get ctrlConfiguredChannel(): FormControl { return this.form.get(ctrlChannel) as FormControl; }\n get ctrlAppStoreVersion(): FormControl { return this.form.get(ctrlAppStoreVersion) as FormControl; }\n\n constructor(\n private readonly formBuilder: FormBuilder,\n ) {\n this.form = this.formBuilder.group({\n [ctrlAppStoreVersion]: [null, []],\n [ctrlChannel]: [null, []],\n [ctrlNextVersionNumber]: [null, []],\n [ctrlVersionNumber]: [null, []],\n });\n }\n\n update(appStoreVersion: string, channel: string, nextVersion: string, version: string) {\n this.ctrlVersionNumber.setValue({\n value: version,\n });\n this.ctrlNextVersionNumber.setValue({\n value: nextVersion,\n });\n this.ctrlConfiguredChannel.setValue({\n value: channel,\n });\n this.ctrlAppStoreVersion.setValue({\n value: appStoreVersion,\n });\n }\n}\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxProgressBarComponent } from '@softpak/components/spx-progress-bar';\n\n@Component({\n selector: 'spx-update-progress',\n template: `<spx-progress-bar [spxPercentage]=\"delayedPercentage\" [spxTitle]=\"title | capitalize\">\n </spx-progress-bar>`,\n standalone: true,\n imports: [\n SpxProgressBarComponent,\n SpxCapitalizePipe,\n ],\n})\nexport class SpxUpdateProgressComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() percentage!: number;\n delayedPercentage!: number;\n syncTruckInterval?: any;\n \n ngOnInit(): void {\n this.startLoaderSync();\n }\n\n ngOnDestroy(): void {\n this.stopLoaderSync();\n }\n\n private startLoaderSync() {\n if (this.syncTruckInterval === null) {\n this.syncTruckInterval = setInterval(() => {\n this.delayedPercentage = this.percentage;\n }, 200);\n }\n }\n\n private stopLoaderSync() {\n if (this.syncTruckInterval !== null) {\n clearInterval(this.syncTruckInterval);\n this.syncTruckInterval = undefined;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -178,10 +178,10 @@ class SpxValidateControlComponent {
178
178
  get past() {
179
179
  return this.control.errors && this.control.errors['past'];
180
180
  }
181
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxValidateControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
182
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", 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 }] }); }
181
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxValidateControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
182
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.0", 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 }] }); }
183
183
  }
184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxValidateControlComponent, decorators: [{
184
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: SpxValidateControlComponent, decorators: [{
185
185
  type: Component,
186
186
  args: [{ selector: 'spx-validate-control', imports: [
187
187
  CommonModule,
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-validation.mjs","sources":["../../../../projects/softpak/components/spx-validation/required.validator.ts","../../../../projects/softpak/components/spx-validation/max.validator.ts","../../../../projects/softpak/components/spx-validation/maxlength.validator.ts","../../../../projects/softpak/components/spx-validation/min.validator.ts","../../../../projects/softpak/components/spx-validation/minlength.validator.ts","../../../../projects/softpak/components/spx-validation/pattern.validator.ts","../../../../projects/softpak/components/spx-validation/year-and-month.validator.ts","../../../../projects/softpak/components/spx-validation/spx-validate-control.component.ts","../../../../projects/softpak/components/spx-validation/spx-validate-control.component.html","../../../../projects/softpak/components/spx-validation/softpak-components-spx-validation.ts"],"sourcesContent":["import { AbstractControl, ValidationErrors } from '@angular/forms';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorRequired = () => (control: AbstractControl): ValidationErrors | null => {\n if (\n control &&\n valuePairToValue(control.value) === undefined ||\n valuePairToValue(control.value) === null ||\n valuePairToValue(control.value) === '' ||\n valuePairToValue(control.value) === 0\n ) {\n return { required: true };\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMax = (max: number) => (control: AbstractControl): { max: { max: number; actual: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n const value = parseInt(valuePairToValue(control.value).toString(), 10);\n if (!isNaN(value) && value > max) {\n return {\n max: {\n max,\n actual: value\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMaxLength = (maximumLength: number, sanitizer?: (input: string) => string) => (control: AbstractControl): { maxlength: { requiredLength: number; actualLength: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n let value = valuePairToValue(control.value);\n if (sanitizer) {\n value = sanitizer(value.toString());\n }\n if (value.toString().length > maximumLength) {\n return {\n maxlength: {\n requiredLength: maximumLength,\n actualLength: value.toString().length\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMin = (min: number) => (control: AbstractControl): { min: { min: number; actual: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n const value = parseInt(valuePairToValue(control.value).toString(), 10);\n\n if (!isNaN(value) && value < min) {\n return {\n min: {\n min,\n actual: value\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMinLength = (minimumLength: number, sanitizer?: (input: string) => string) => (control: AbstractControl): { minlength: { requiredLength: number; actualLength: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n let value = valuePairToValue(control.value);\n if (sanitizer) {\n value = sanitizer(value.toString());\n }\n if (value.toString().length < minimumLength) {\n return {\n minlength: {\n requiredLength: minimumLength,\n actualLength: value.toString().length\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl, ValidationErrors } from '@angular/forms';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\nimport { spxValidatorRequired } from './required.validator';\n\nexport const spxValidatorPattern = (matcher: RegExp) => (control: AbstractControl): ValidationErrors | null => {\n if (!spxValidatorRequired()(control)) {\n const matches = valuePairToValue(control.value).toString().match(matcher);\n if (matches === null || matches.length === 0) {\n return { pattern: true };\n }\n }\n return null;\n};\n","import { AbstractControl, ValidationErrors } from '@angular/forms';\n\nimport { DateTime } from 'luxon';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\nimport { spxValidatorRequired } from './required.validator';\n\nexport const spxValidatorYearAndMonth = (future?: boolean) => (control: AbstractControl): ValidationErrors | null => {\n if (!spxValidatorRequired()(control)) {\n const val = valuePairToValue(control.value);\n if (val.toUpperCase() !== 'ACEP') {\n const date = DateTime.fromISO(val);\n const year = date.year;\n const month = date.month;\n if (val.length < 6) {\n return {\n minlength: {\n requiredLength: 6,\n actualLength: val.length\n }\n };\n }\n if (month < 1 || month > 12) {\n return { month: true };\n }\n if (future) {\n if (year > 2050 || year < DateTime.now().year) {\n return { yearFuture: true };\n }\n if (DateTime.now().set({ year: year, month: DateTime.now().month - 1 }).startOf('month') < DateTime.now()) {\n return { past: true };\n }\n } else {\n if (year < 1971 || year > DateTime.now().year) {\n return { year: true };\n }\n if (DateTime.now().set({ year: year, month: DateTime.now().month - 1 }).startOf('month') > DateTime.now()) {\n return { future: true };\n }\n }\n }\n }\n return null;\n};\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { AbstractControl, FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'spx-validate-control',\n templateUrl: './spx-validate-control.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ],\n standalone: true,\n})\nexport class SpxValidateControlComponent {\n @Input() control!: AbstractControl;\n @Input() label: string | unknown;\n @Input() submitTried!: boolean;\n\n get maxLength() {\n return this.control.errors && this.control.errors['maxlength'];\n }\n\n get maxLengthRequiredLength() {\n return this.maxLength && this.control.errors && this.control.errors['maxlength']['requiredLength'];\n }\n\n get minLength() {\n return this.control.errors && this.control.errors['minlength'];\n }\n\n get minLengthRequiredLength() {\n return this.minLength && this.control.errors && this.control.errors['minlength']['requiredLength'];\n }\n\n get max() {\n return this.control.errors && this.control.errors['max'];\n }\n\n get maxRequiredMax() {\n return this.max && this.control.errors && this.control.errors['max']['max'];\n }\n\n get min() {\n return this.control.errors && this.control.errors['min'];\n }\n\n get minRequiredMin() {\n return this.min && this.control.errors && this.control.errors['min']['min'];\n }\n\n get pattern() {\n return this.control.errors && this.control.errors['pattern'];\n }\n\n get required() {\n return this.control.errors && this.control.errors['required'];\n }\n\n get year() {\n return this.control.errors && this.control.errors['year'];\n }\n\n get yearFuture() {\n return this.control.errors && this.control.errors['yearFuture'];\n }\n\n get month() {\n return this.control.errors && this.control.errors['month'];\n }\n\n get future() {\n return this.control.errors && this.control.errors['future'];\n }\n\n get past() {\n return this.control.errors && this.control.errors['past'];\n }\n}\n","<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>","/**\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-validation.mjs","sources":["../../../../projects/softpak/components/spx-validation/required.validator.ts","../../../../projects/softpak/components/spx-validation/max.validator.ts","../../../../projects/softpak/components/spx-validation/maxlength.validator.ts","../../../../projects/softpak/components/spx-validation/min.validator.ts","../../../../projects/softpak/components/spx-validation/minlength.validator.ts","../../../../projects/softpak/components/spx-validation/pattern.validator.ts","../../../../projects/softpak/components/spx-validation/year-and-month.validator.ts","../../../../projects/softpak/components/spx-validation/spx-validate-control.component.ts","../../../../projects/softpak/components/spx-validation/spx-validate-control.component.html","../../../../projects/softpak/components/spx-validation/softpak-components-spx-validation.ts"],"sourcesContent":["import { AbstractControl, ValidationErrors } from '@angular/forms';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorRequired = () => (control: AbstractControl): ValidationErrors | null => {\n if (\n control &&\n valuePairToValue(control.value) === undefined ||\n valuePairToValue(control.value) === null ||\n valuePairToValue(control.value) === '' ||\n valuePairToValue(control.value) === 0\n ) {\n return { required: true };\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMax = (max: number) => (control: AbstractControl): { max: { max: number; actual: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n const value = parseInt(valuePairToValue(control.value).toString(), 10);\n if (!isNaN(value) && value > max) {\n return {\n max: {\n max,\n actual: value\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMaxLength = (maximumLength: number, sanitizer?: (input: string) => string) => (control: AbstractControl): { maxlength: { requiredLength: number; actualLength: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n let value = valuePairToValue(control.value);\n if (sanitizer) {\n value = sanitizer(value.toString());\n }\n if (value.toString().length > maximumLength) {\n return {\n maxlength: {\n requiredLength: maximumLength,\n actualLength: value.toString().length\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMin = (min: number) => (control: AbstractControl): { min: { min: number; actual: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n const value = parseInt(valuePairToValue(control.value).toString(), 10);\n\n if (!isNaN(value) && value < min) {\n return {\n min: {\n min,\n actual: value\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl } from '@angular/forms';\nimport { spxValidatorRequired } from './required.validator';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\n\nexport const spxValidatorMinLength = (minimumLength: number, sanitizer?: (input: string) => string) => (control: AbstractControl): { minlength: { requiredLength: number; actualLength: number } } | null => {\n if (!spxValidatorRequired()(control)) {\n let value = valuePairToValue(control.value);\n if (sanitizer) {\n value = sanitizer(value.toString());\n }\n if (value.toString().length < minimumLength) {\n return {\n minlength: {\n requiredLength: minimumLength,\n actualLength: value.toString().length\n }\n };\n }\n }\n return null;\n};\n","import { AbstractControl, ValidationErrors } from '@angular/forms';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\nimport { spxValidatorRequired } from './required.validator';\n\nexport const spxValidatorPattern = (matcher: RegExp) => (control: AbstractControl): ValidationErrors | null => {\n if (!spxValidatorRequired()(control)) {\n const matches = valuePairToValue(control.value).toString().match(matcher);\n if (matches === null || matches.length === 0) {\n return { pattern: true };\n }\n }\n return null;\n};\n","import { AbstractControl, ValidationErrors } from '@angular/forms';\n\nimport { DateTime } from 'luxon';\nimport { valuePairToValue } from '@softpak/components/spx-helpers';\nimport { spxValidatorRequired } from './required.validator';\n\nexport const spxValidatorYearAndMonth = (future?: boolean) => (control: AbstractControl): ValidationErrors | null => {\n if (!spxValidatorRequired()(control)) {\n const val = valuePairToValue(control.value);\n if (val.toUpperCase() !== 'ACEP') {\n const date = DateTime.fromISO(val);\n const year = date.year;\n const month = date.month;\n if (val.length < 6) {\n return {\n minlength: {\n requiredLength: 6,\n actualLength: val.length\n }\n };\n }\n if (month < 1 || month > 12) {\n return { month: true };\n }\n if (future) {\n if (year > 2050 || year < DateTime.now().year) {\n return { yearFuture: true };\n }\n if (DateTime.now().set({ year: year, month: DateTime.now().month - 1 }).startOf('month') < DateTime.now()) {\n return { past: true };\n }\n } else {\n if (year < 1971 || year > DateTime.now().year) {\n return { year: true };\n }\n if (DateTime.now().set({ year: year, month: DateTime.now().month - 1 }).startOf('month') > DateTime.now()) {\n return { future: true };\n }\n }\n }\n }\n return null;\n};\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { AbstractControl, FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'spx-validate-control',\n templateUrl: './spx-validate-control.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ],\n standalone: true,\n})\nexport class SpxValidateControlComponent {\n @Input() control!: AbstractControl;\n @Input() label: string | unknown;\n @Input() submitTried!: boolean;\n\n get maxLength() {\n return this.control.errors && this.control.errors['maxlength'];\n }\n\n get maxLengthRequiredLength() {\n return this.maxLength && this.control.errors && this.control.errors['maxlength']['requiredLength'];\n }\n\n get minLength() {\n return this.control.errors && this.control.errors['minlength'];\n }\n\n get minLengthRequiredLength() {\n return this.minLength && this.control.errors && this.control.errors['minlength']['requiredLength'];\n }\n\n get max() {\n return this.control.errors && this.control.errors['max'];\n }\n\n get maxRequiredMax() {\n return this.max && this.control.errors && this.control.errors['max']['max'];\n }\n\n get min() {\n return this.control.errors && this.control.errors['min'];\n }\n\n get minRequiredMin() {\n return this.min && this.control.errors && this.control.errors['min']['min'];\n }\n\n get pattern() {\n return this.control.errors && this.control.errors['pattern'];\n }\n\n get required() {\n return this.control.errors && this.control.errors['required'];\n }\n\n get year() {\n return this.control.errors && this.control.errors['year'];\n }\n\n get yearFuture() {\n return this.control.errors && this.control.errors['yearFuture'];\n }\n\n get month() {\n return this.control.errors && this.control.errors['month'];\n }\n\n get future() {\n return this.control.errors && this.control.errors['future'];\n }\n\n get past() {\n return this.control.errors && this.control.errors['past'];\n }\n}\n","<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>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softpak/components",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "18.x.x || 19.x.x",
@@ -24,164 +24,110 @@
24
24
  },
25
25
  ".": {
26
26
  "types": "./index.d.ts",
27
- "esm2022": "./esm2022/softpak-components.mjs",
28
- "esm": "./esm2022/softpak-components.mjs",
29
27
  "default": "./fesm2022/softpak-components.mjs"
30
28
  },
31
29
  "./spx-alert": {
32
30
  "types": "./spx-alert/index.d.ts",
33
- "esm2022": "./esm2022/spx-alert/softpak-components-spx-alert.mjs",
34
- "esm": "./esm2022/spx-alert/softpak-components-spx-alert.mjs",
35
31
  "default": "./fesm2022/softpak-components-spx-alert.mjs"
36
32
  },
37
- "./spx-app-configuration": {
38
- "types": "./spx-app-configuration/index.d.ts",
39
- "esm2022": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
40
- "esm": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
41
- "default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
42
- },
43
33
  "./spx-app-expiry": {
44
34
  "types": "./spx-app-expiry/index.d.ts",
45
- "esm2022": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
46
- "esm": "./esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs",
47
35
  "default": "./fesm2022/softpak-components-spx-app-expiry.mjs"
48
36
  },
49
- "./spx-app-update": {
50
- "types": "./spx-app-update/index.d.ts",
51
- "esm2022": "./esm2022/spx-app-update/softpak-components-spx-app-update.mjs",
52
- "esm": "./esm2022/spx-app-update/softpak-components-spx-app-update.mjs",
53
- "default": "./fesm2022/softpak-components-spx-app-update.mjs"
37
+ "./spx-app-configuration": {
38
+ "types": "./spx-app-configuration/index.d.ts",
39
+ "default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
54
40
  },
55
41
  "./spx-button": {
56
42
  "types": "./spx-button/index.d.ts",
57
- "esm2022": "./esm2022/spx-button/softpak-components-spx-button.mjs",
58
- "esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
59
43
  "default": "./fesm2022/softpak-components-spx-button.mjs"
60
44
  },
61
- "./spx-card": {
62
- "types": "./spx-card/index.d.ts",
63
- "esm2022": "./esm2022/spx-card/softpak-components-spx-card.mjs",
64
- "esm": "./esm2022/spx-card/softpak-components-spx-card.mjs",
65
- "default": "./fesm2022/softpak-components-spx-card.mjs"
66
- },
67
45
  "./spx-capitalize": {
68
46
  "types": "./spx-capitalize/index.d.ts",
69
- "esm2022": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
70
- "esm": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
71
47
  "default": "./fesm2022/softpak-components-spx-capitalize.mjs"
72
48
  },
49
+ "./spx-app-update": {
50
+ "types": "./spx-app-update/index.d.ts",
51
+ "default": "./fesm2022/softpak-components-spx-app-update.mjs"
52
+ },
53
+ "./spx-card": {
54
+ "types": "./spx-card/index.d.ts",
55
+ "default": "./fesm2022/softpak-components-spx-card.mjs"
56
+ },
73
57
  "./spx-change-details": {
74
58
  "types": "./spx-change-details/index.d.ts",
75
- "esm2022": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
76
- "esm": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
77
59
  "default": "./fesm2022/softpak-components-spx-change-details.mjs"
78
60
  },
79
61
  "./spx-channel-selection": {
80
62
  "types": "./spx-channel-selection/index.d.ts",
81
- "esm2022": "./esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs",
82
- "esm": "./esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs",
83
63
  "default": "./fesm2022/softpak-components-spx-channel-selection.mjs"
84
64
  },
85
65
  "./spx-check-digit": {
86
66
  "types": "./spx-check-digit/index.d.ts",
87
- "esm2022": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
88
- "esm": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
89
67
  "default": "./fesm2022/softpak-components-spx-check-digit.mjs"
90
68
  },
91
69
  "./spx-form-section": {
92
70
  "types": "./spx-form-section/index.d.ts",
93
- "esm2022": "./esm2022/spx-form-section/softpak-components-spx-form-section.mjs",
94
- "esm": "./esm2022/spx-form-section/softpak-components-spx-form-section.mjs",
95
71
  "default": "./fesm2022/softpak-components-spx-form-section.mjs"
96
72
  },
97
73
  "./spx-form-view": {
98
74
  "types": "./spx-form-view/index.d.ts",
99
- "esm2022": "./esm2022/spx-form-view/softpak-components-spx-form-view.mjs",
100
- "esm": "./esm2022/spx-form-view/softpak-components-spx-form-view.mjs",
101
75
  "default": "./fesm2022/softpak-components-spx-form-view.mjs"
102
76
  },
103
77
  "./spx-helpers": {
104
78
  "types": "./spx-helpers/index.d.ts",
105
- "esm2022": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
106
- "esm": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
107
79
  "default": "./fesm2022/softpak-components-spx-helpers.mjs"
108
80
  },
109
81
  "./spx-inputs": {
110
82
  "types": "./spx-inputs/index.d.ts",
111
- "esm2022": "./esm2022/spx-inputs/softpak-components-spx-inputs.mjs",
112
- "esm": "./esm2022/spx-inputs/softpak-components-spx-inputs.mjs",
113
83
  "default": "./fesm2022/softpak-components-spx-inputs.mjs"
114
84
  },
115
85
  "./spx-navigation": {
116
86
  "types": "./spx-navigation/index.d.ts",
117
- "esm2022": "./esm2022/spx-navigation/softpak-components-spx-navigation.mjs",
118
- "esm": "./esm2022/spx-navigation/softpak-components-spx-navigation.mjs",
119
87
  "default": "./fesm2022/softpak-components-spx-navigation.mjs"
120
88
  },
121
89
  "./spx-number-check": {
122
90
  "types": "./spx-number-check/index.d.ts",
123
- "esm2022": "./esm2022/spx-number-check/softpak-components-spx-number-check.mjs",
124
- "esm": "./esm2022/spx-number-check/softpak-components-spx-number-check.mjs",
125
91
  "default": "./fesm2022/softpak-components-spx-number-check.mjs"
126
92
  },
127
93
  "./spx-pagination": {
128
94
  "types": "./spx-pagination/index.d.ts",
129
- "esm2022": "./esm2022/spx-pagination/softpak-components-spx-pagination.mjs",
130
- "esm": "./esm2022/spx-pagination/softpak-components-spx-pagination.mjs",
131
95
  "default": "./fesm2022/softpak-components-spx-pagination.mjs"
132
96
  },
133
97
  "./spx-patch": {
134
98
  "types": "./spx-patch/index.d.ts",
135
- "esm2022": "./esm2022/spx-patch/softpak-components-spx-patch.mjs",
136
- "esm": "./esm2022/spx-patch/softpak-components-spx-patch.mjs",
137
99
  "default": "./fesm2022/softpak-components-spx-patch.mjs"
138
100
  },
139
101
  "./spx-progress-bar": {
140
102
  "types": "./spx-progress-bar/index.d.ts",
141
- "esm2022": "./esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs",
142
- "esm": "./esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs",
143
103
  "default": "./fesm2022/softpak-components-spx-progress-bar.mjs"
144
104
  },
145
105
  "./spx-spinner": {
146
106
  "types": "./spx-spinner/index.d.ts",
147
- "esm2022": "./esm2022/spx-spinner/softpak-components-spx-spinner.mjs",
148
- "esm": "./esm2022/spx-spinner/softpak-components-spx-spinner.mjs",
149
107
  "default": "./fesm2022/softpak-components-spx-spinner.mjs"
150
108
  },
151
109
  "./spx-stock-info": {
152
110
  "types": "./spx-stock-info/index.d.ts",
153
- "esm2022": "./esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs",
154
- "esm": "./esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs",
155
111
  "default": "./fesm2022/softpak-components-spx-stock-info.mjs"
156
112
  },
157
113
  "./spx-storage": {
158
114
  "types": "./spx-storage/index.d.ts",
159
- "esm2022": "./esm2022/spx-storage/softpak-components-spx-storage.mjs",
160
- "esm": "./esm2022/spx-storage/softpak-components-spx-storage.mjs",
161
115
  "default": "./fesm2022/softpak-components-spx-storage.mjs"
162
116
  },
163
117
  "./spx-suggestion": {
164
118
  "types": "./spx-suggestion/index.d.ts",
165
- "esm2022": "./esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs",
166
- "esm": "./esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs",
167
119
  "default": "./fesm2022/softpak-components-spx-suggestion.mjs"
168
120
  },
169
121
  "./spx-toaster": {
170
122
  "types": "./spx-toaster/index.d.ts",
171
- "esm2022": "./esm2022/spx-toaster/softpak-components-spx-toaster.mjs",
172
- "esm": "./esm2022/spx-toaster/softpak-components-spx-toaster.mjs",
173
123
  "default": "./fesm2022/softpak-components-spx-toaster.mjs"
174
124
  },
175
125
  "./spx-update": {
176
126
  "types": "./spx-update/index.d.ts",
177
- "esm2022": "./esm2022/spx-update/softpak-components-spx-update.mjs",
178
- "esm": "./esm2022/spx-update/softpak-components-spx-update.mjs",
179
127
  "default": "./fesm2022/softpak-components-spx-update.mjs"
180
128
  },
181
129
  "./spx-validation": {
182
130
  "types": "./spx-validation/index.d.ts",
183
- "esm2022": "./esm2022/spx-validation/softpak-components-spx-validation.mjs",
184
- "esm": "./esm2022/spx-validation/softpak-components-spx-validation.mjs",
185
131
  "default": "./fesm2022/softpak-components-spx-validation.mjs"
186
132
  }
187
133
  }
@@ -1,16 +1,16 @@
1
1
  import { ApplicationRef, ChangeDetectorRef } from '@angular/core';
2
2
  import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
3
- import { Router } from '@angular/router';
4
3
  import { TranslateService } from '@ngx-translate/core';
5
4
  import { Deploy } from 'cordova-plugin-ionic/dist/ngx';
5
+ import { NavController } from '@ionic/angular';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class SpxAppUpdateComponent {
8
8
  private readonly deploy;
9
- private readonly router;
10
9
  private readonly changeDetector;
11
10
  private readonly applicationRef;
12
11
  private readonly translateService;
13
12
  private readonly formBuilder;
13
+ private readonly navController;
14
14
  spxHomeUrl: string;
15
15
  spxIsSignedIn: boolean;
16
16
  textCheckingForUpdates: string;
@@ -30,7 +30,7 @@ export declare class SpxAppUpdateComponent {
30
30
  percentage: number;
31
31
  syncTruckInterval: any | null;
32
32
  updateStatus: string;
33
- constructor(deploy: Deploy, router: Router, changeDetector: ChangeDetectorRef, applicationRef: ApplicationRef, translateService: TranslateService, formBuilder: FormBuilder);
33
+ constructor(deploy: Deploy, changeDetector: ChangeDetectorRef, applicationRef: ApplicationRef, translateService: TranslateService, formBuilder: FormBuilder, navController: NavController);
34
34
  get ctrlVersionNumber(): FormControl;
35
35
  get ctrlNextVersionNumber(): FormControl;
36
36
  get ctrlConfiguredChannel(): FormControl;
@@ -1,2 +0,0 @@
1
- export const softpakNgComponent = 'Softpak NG Components';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Vob2xkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3JjL3BsYWNlaG9sZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHNvZnRwYWtOZ0NvbXBvbmVudCA9ICdTb2Z0cGFrIE5HIENvbXBvbmVudHMnOyJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './placeholder';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGxhY2Vob2xkZXInOyJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NyYy9zb2Z0cGFrLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
@@ -1,3 +0,0 @@
1
- export * from './spx-alert.component';
2
- export * from './spx-alert.interface';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtYWxlcnQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NweC1hbGVydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcHgtYWxlcnQuaW50ZXJmYWNlJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1hbGVydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtYWxlcnQvc29mdHBhay1jb21wb25lbnRzLXNweC1hbGVydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19