@softpak/components 0.3.4 → 0.3.6

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 (187) hide show
  1. package/esm2022/placeholder.mjs +2 -0
  2. package/esm2022/public_api.mjs +2 -0
  3. package/esm2022/softpak-components.mjs +5 -0
  4. package/esm2022/spx-alert/public-api.mjs +3 -0
  5. package/esm2022/spx-alert/softpak-components-spx-alert.mjs +5 -0
  6. package/esm2022/spx-alert/spx-alert.component.mjs +193 -0
  7. package/esm2022/spx-alert/spx-alert.interface.mjs +3 -0
  8. package/esm2022/spx-app-configuration/public-api.mjs +8 -0
  9. package/esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs +5 -0
  10. package/esm2022/spx-app-configuration/spx-app-alert.interface.mjs +2 -0
  11. package/esm2022/spx-app-configuration/spx-app-bundle-set.interface.mjs +2 -0
  12. package/esm2022/spx-app-configuration/spx-app-channel-type.enum.mjs +8 -0
  13. package/esm2022/spx-app-configuration/spx-app-channel.interface.mjs +2 -0
  14. package/esm2022/spx-app-configuration/spx-app-config.interface.mjs +2 -0
  15. package/esm2022/spx-app-configuration/spx-app-id.enum.mjs +8 -0
  16. package/esm2022/spx-app-configuration/spx-app-lang.enum.mjs +6 -0
  17. package/esm2022/spx-app-configuration/spx-app-release-note.interface.mjs +2 -0
  18. package/esm2022/spx-app-expiry/public-api.mjs +6 -0
  19. package/esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs +5 -0
  20. package/esm2022/spx-app-expiry/spx-app-expiry.component.mjs +90 -0
  21. package/esm2022/spx-app-expiry/spx-app-expiry.interface.mjs +2 -0
  22. package/esm2022/spx-app-expiry/spx-check-expiry-final-warning.interface.mjs +5 -0
  23. package/esm2022/spx-app-expiry/spx-check-expiry-happened.interface.mjs +5 -0
  24. package/esm2022/spx-app-expiry/spx-check-expiry-warning.interface.mjs +5 -0
  25. package/esm2022/spx-app-update/public-api.mjs +2 -0
  26. package/esm2022/spx-app-update/softpak-components-spx-app-update.mjs +5 -0
  27. package/esm2022/spx-app-update/spx-app-update.component.mjs +314 -0
  28. package/esm2022/spx-button/public-api.mjs +2 -0
  29. package/esm2022/spx-button/softpak-components-spx-button.mjs +5 -0
  30. package/esm2022/spx-button/spx-button.component.mjs +142 -0
  31. package/esm2022/spx-capitalize/public-api.mjs +2 -0
  32. package/esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs +5 -0
  33. package/esm2022/spx-capitalize/spx-capitalize.pipe.mjs +20 -0
  34. package/esm2022/spx-card/public-api.mjs +5 -0
  35. package/esm2022/spx-card/softpak-components-spx-card.mjs +5 -0
  36. package/esm2022/spx-card/spx-card-grid.component.mjs +46 -0
  37. package/esm2022/spx-card/spx-card-item.component.mjs +111 -0
  38. package/esm2022/spx-card/spx-card-line.component.mjs +101 -0
  39. package/esm2022/spx-card/spx-card.component.mjs +93 -0
  40. package/esm2022/spx-change-details/public-api.mjs +2 -0
  41. package/esm2022/spx-change-details/softpak-components-spx-change-details.mjs +5 -0
  42. package/esm2022/spx-change-details/spx-change-details-value.interface.mjs +2 -0
  43. package/esm2022/spx-change-details/spx-change-details.component.mjs +199 -0
  44. package/esm2022/spx-channel-selection/public-api.mjs +3 -0
  45. package/esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs +5 -0
  46. package/esm2022/spx-channel-selection/src/spx-channel-indicator.component.mjs +45 -0
  47. package/esm2022/spx-channel-selection/src/spx-welcome.component.mjs +135 -0
  48. package/esm2022/spx-check-digit/public-api.mjs +2 -0
  49. package/esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs +5 -0
  50. package/esm2022/spx-check-digit/spx-check-digit.component.mjs +94 -0
  51. package/esm2022/spx-form-section/public-api.mjs +2 -0
  52. package/esm2022/spx-form-section/softpak-components-spx-form-section.mjs +5 -0
  53. package/esm2022/spx-form-section/spx-form-section.component.mjs +37 -0
  54. package/esm2022/spx-form-view/public-api.mjs +7 -0
  55. package/esm2022/spx-form-view/softpak-components-spx-form-view.mjs +5 -0
  56. package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +119 -0
  57. package/esm2022/spx-form-view/spx-form-button-type.enum.mjs +6 -0
  58. package/esm2022/spx-form-view/spx-form-button.interface.mjs +2 -0
  59. package/esm2022/spx-form-view/spx-form-field.interface.mjs +2 -0
  60. package/esm2022/spx-form-view/spx-form-section.interface.mjs +2 -0
  61. package/esm2022/spx-form-view/spx-form-view.component.mjs +289 -0
  62. package/esm2022/spx-form-view/spx-form.interface.mjs +2 -0
  63. package/esm2022/spx-helpers/calc-check-digit.function.mjs +21 -0
  64. package/esm2022/spx-helpers/public-api.mjs +4 -0
  65. package/esm2022/spx-helpers/softpak-components-spx-helpers.mjs +5 -0
  66. package/esm2022/spx-helpers/spx-severity.enum.mjs +9 -0
  67. package/esm2022/spx-helpers/value-pair-to-value.function.mjs +7 -0
  68. package/esm2022/spx-inputs/public-api.mjs +6 -0
  69. package/esm2022/spx-inputs/softpak-components-spx-inputs.mjs +5 -0
  70. package/esm2022/spx-inputs/spx-dropdown.component.mjs +94 -0
  71. package/esm2022/spx-inputs/spx-input-box.component.mjs +255 -0
  72. package/esm2022/spx-inputs/spx-input-date.component.mjs +294 -0
  73. package/esm2022/spx-inputs/spx-input-float.component.mjs +159 -0
  74. package/esm2022/spx-inputs/spx-input-number.component.mjs +87 -0
  75. package/esm2022/spx-inputs/spx-input-radio.component.mjs +129 -0
  76. package/esm2022/spx-inputs/spx-input-text.component.mjs +156 -0
  77. package/esm2022/spx-inputs/spx-input-time-modal.component.mjs +116 -0
  78. package/esm2022/spx-inputs/spx-input-time.component.mjs +166 -0
  79. package/esm2022/spx-inputs/spx-input-type.enum.mjs +17 -0
  80. package/esm2022/spx-inputs/spx-input.component.mjs +449 -0
  81. package/esm2022/spx-inputs/spx-value-interface.mjs +2 -0
  82. package/esm2022/spx-navigation/public-api.mjs +5 -0
  83. package/esm2022/spx-navigation/softpak-components-spx-navigation.mjs +5 -0
  84. package/esm2022/spx-navigation/spx-home-tile.component.mjs +68 -0
  85. package/esm2022/spx-navigation/spx-home-tiles.component.mjs +24 -0
  86. package/esm2022/spx-navigation/spx-navigation-item.interface.mjs +2 -0
  87. package/esm2022/spx-navigation/spx-navigation.component.mjs +51 -0
  88. package/esm2022/spx-number-check/public-api.mjs +2 -0
  89. package/esm2022/spx-number-check/softpak-components-spx-number-check.mjs +5 -0
  90. package/esm2022/spx-number-check/spx-number-check.component.mjs +259 -0
  91. package/esm2022/spx-pagination/public-api.mjs +2 -0
  92. package/esm2022/spx-pagination/softpak-components-spx-pagination.mjs +5 -0
  93. package/esm2022/spx-pagination/spx-pagination.component.mjs +44 -0
  94. package/esm2022/spx-patch/patch-check.function.mjs +9 -0
  95. package/esm2022/spx-patch/public-api.mjs +4 -0
  96. package/esm2022/spx-patch/release-check.function.mjs +14 -0
  97. package/esm2022/spx-patch/softpak-components-spx-patch.mjs +5 -0
  98. package/esm2022/spx-patch/spx-patch.component.mjs +48 -0
  99. package/esm2022/spx-progress-bar/public-api.mjs +2 -0
  100. package/esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs +5 -0
  101. package/esm2022/spx-progress-bar/spx-progress-bar.component.mjs +29 -0
  102. package/esm2022/spx-spinner/public-api.mjs +2 -0
  103. package/esm2022/spx-spinner/softpak-components-spx-spinner.mjs +5 -0
  104. package/esm2022/spx-spinner/spx-spinner.component.mjs +159 -0
  105. package/esm2022/spx-stock-info/public-api.mjs +3 -0
  106. package/esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs +5 -0
  107. package/esm2022/spx-stock-info/spx-stock-info-value.interface.mjs +2 -0
  108. package/esm2022/spx-stock-info/spx-stock-info.component.mjs +327 -0
  109. package/esm2022/spx-storage/public-api.mjs +3 -0
  110. package/esm2022/spx-storage/softpak-components-spx-storage.mjs +5 -0
  111. package/esm2022/spx-storage/src/spx-storage-key.enum.mjs +13 -0
  112. package/esm2022/spx-storage/src/spx-storage.class.mjs +45 -0
  113. package/esm2022/spx-suggestion/public-api.mjs +2 -0
  114. package/esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs +5 -0
  115. package/esm2022/spx-suggestion/spx-suggestion.component.mjs +69 -0
  116. package/esm2022/spx-toaster/public-api.mjs +4 -0
  117. package/esm2022/spx-toaster/softpak-components-spx-toaster.mjs +5 -0
  118. package/esm2022/spx-toaster/src/spx-toaster-autoclose-speed.mjs +23 -0
  119. package/esm2022/spx-toaster/src/spx-toaster-message.interface.mjs +3 -0
  120. package/esm2022/spx-toaster/src/spx-toaster.component.mjs +173 -0
  121. package/esm2022/spx-update/public-api.mjs +3 -0
  122. package/esm2022/spx-update/softpak-components-spx-update.mjs +5 -0
  123. package/esm2022/spx-update/src/spx-update-info.component.mjs +88 -0
  124. package/esm2022/spx-update/src/spx-update-progress.component.mjs +46 -0
  125. package/esm2022/spx-validation/max.validator.mjs +17 -0
  126. package/esm2022/spx-validation/maxlength.validator.mjs +20 -0
  127. package/esm2022/spx-validation/min.validator.mjs +17 -0
  128. package/esm2022/spx-validation/minlength.validator.mjs +20 -0
  129. package/esm2022/spx-validation/pattern.validator.mjs +12 -0
  130. package/esm2022/spx-validation/public-api.mjs +9 -0
  131. package/esm2022/spx-validation/required.validator.mjs +12 -0
  132. package/esm2022/spx-validation/softpak-components-spx-validation.mjs +5 -0
  133. package/esm2022/spx-validation/spx-validate-control.component.mjs +68 -0
  134. package/esm2022/spx-validation/year-and-month.validator.mjs +42 -0
  135. package/fesm2022/softpak-components-spx-alert.mjs +3 -3
  136. package/fesm2022/softpak-components-spx-alert.mjs.map +1 -1
  137. package/fesm2022/softpak-components-spx-app-configuration.mjs.map +1 -1
  138. package/fesm2022/softpak-components-spx-app-expiry.mjs +3 -3
  139. package/fesm2022/softpak-components-spx-app-expiry.mjs.map +1 -1
  140. package/fesm2022/softpak-components-spx-app-update.mjs +4 -4
  141. package/fesm2022/softpak-components-spx-app-update.mjs.map +1 -1
  142. package/fesm2022/softpak-components-spx-button.mjs +3 -3
  143. package/fesm2022/softpak-components-spx-button.mjs.map +1 -1
  144. package/fesm2022/softpak-components-spx-capitalize.mjs +3 -3
  145. package/fesm2022/softpak-components-spx-capitalize.mjs.map +1 -1
  146. package/fesm2022/softpak-components-spx-card.mjs +16 -16
  147. package/fesm2022/softpak-components-spx-card.mjs.map +1 -1
  148. package/fesm2022/softpak-components-spx-change-details.mjs +3 -3
  149. package/fesm2022/softpak-components-spx-change-details.mjs.map +1 -1
  150. package/fesm2022/softpak-components-spx-channel-selection.mjs +6 -6
  151. package/fesm2022/softpak-components-spx-channel-selection.mjs.map +1 -1
  152. package/fesm2022/softpak-components-spx-check-digit.mjs +3 -3
  153. package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
  154. package/fesm2022/softpak-components-spx-form-section.mjs +3 -3
  155. package/fesm2022/softpak-components-spx-form-section.mjs.map +1 -1
  156. package/fesm2022/softpak-components-spx-form-view.mjs +7 -7
  157. package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
  158. package/fesm2022/softpak-components-spx-helpers.mjs.map +1 -1
  159. package/fesm2022/softpak-components-spx-inputs.mjs +39 -33
  160. package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
  161. package/fesm2022/softpak-components-spx-navigation.mjs +9 -9
  162. package/fesm2022/softpak-components-spx-navigation.mjs.map +1 -1
  163. package/fesm2022/softpak-components-spx-number-check.mjs +3 -3
  164. package/fesm2022/softpak-components-spx-number-check.mjs.map +1 -1
  165. package/fesm2022/softpak-components-spx-pagination.mjs +3 -3
  166. package/fesm2022/softpak-components-spx-pagination.mjs.map +1 -1
  167. package/fesm2022/softpak-components-spx-patch.mjs +3 -3
  168. package/fesm2022/softpak-components-spx-patch.mjs.map +1 -1
  169. package/fesm2022/softpak-components-spx-progress-bar.mjs +3 -3
  170. package/fesm2022/softpak-components-spx-progress-bar.mjs.map +1 -1
  171. package/fesm2022/softpak-components-spx-spinner.mjs +3 -3
  172. package/fesm2022/softpak-components-spx-spinner.mjs.map +1 -1
  173. package/fesm2022/softpak-components-spx-stock-info.mjs +3 -3
  174. package/fesm2022/softpak-components-spx-stock-info.mjs.map +1 -1
  175. package/fesm2022/softpak-components-spx-storage.mjs.map +1 -1
  176. package/fesm2022/softpak-components-spx-suggestion.mjs +3 -3
  177. package/fesm2022/softpak-components-spx-suggestion.mjs.map +1 -1
  178. package/fesm2022/softpak-components-spx-toaster.mjs +4 -4
  179. package/fesm2022/softpak-components-spx-toaster.mjs.map +1 -1
  180. package/fesm2022/softpak-components-spx-update.mjs +7 -7
  181. package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
  182. package/fesm2022/softpak-components-spx-validation.mjs +3 -3
  183. package/fesm2022/softpak-components-spx-validation.mjs.map +1 -1
  184. package/package.json +59 -5
  185. package/spx-inputs/spx-input-text.component.d.ts +2 -1
  186. package/spx-inputs/spx-input.component.d.ts +2 -1
  187. package/tailwind.css +1 -1
@@ -0,0 +1,111 @@
1
+ import { NgIf } from '@angular/common';
2
+ import { Component, HostBinding, Input } from '@angular/core';
3
+ import { FaIconComponent } from '@fortawesome/angular-fontawesome';
4
+ import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
5
+ import * as i0 from "@angular/core";
6
+ export class SpxCardItemComponent {
7
+ constructor() {
8
+ this.hFull = true;
9
+ this.iconOnly = false;
10
+ }
11
+ get spxSeverityError() { return this.spxSeverity === SpxSeverityEnum.error; }
12
+ get spxSeverityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }
13
+ get spxSeveritySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }
14
+ get spxSeverityUnknown() { return this.spxSeverity === SpxSeverityEnum.unknown; }
15
+ get spxSeverityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }
16
+ get spxIconSeverityError() { return this.spxIconSeverity === SpxSeverityEnum.error; }
17
+ get spxIconSeverityInfo() { return this.spxIconSeverity === SpxSeverityEnum.info; }
18
+ get spxIconSeveritySuccess() { return this.spxIconSeverity === SpxSeverityEnum.success; }
19
+ get spxIconSeverityUnknown() { return this.spxIconSeverity === SpxSeverityEnum.unknown; }
20
+ get spxIconSeverityWarning() { return this.spxIconSeverity === SpxSeverityEnum.warning; }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxCardItemComponent, isStandalone: true, selector: "spx-card-item", inputs: { icon: "icon", iconOnly: "iconOnly", spxLabel: "spxLabel", spxValue: "spxValue", spxSeverity: "spxSeverity", spxIconSeverity: "spxIconSeverity" }, host: { properties: { "class.h-full": "this.hFull" } }, ngImport: i0, template: `
23
+ <div class='py-2 px-3 rounded h-full'
24
+ [class.bg-slate-100]="!spxSeverity"
25
+ [class.dark:bg-slate-600]="!spxSeverity"
26
+ [class.text-black]="spxSeverityWarning"
27
+ [class.text-white]="spxSeverityError || spxSeverityInfo || spxSeveritySuccess || spxSeverityUnknown"
28
+ [class.bg-red-700]="spxSeverityError"
29
+ [class.bg-green-700]="spxSeveritySuccess"
30
+ [class.bg-blue-700]="spxSeverityInfo"
31
+ [class.bg-gray-700]="spxSeverityUnknown"
32
+ [class.bg-amber-700]="spxSeverityWarning">
33
+ <div class="font-small leading-normal">{{ spxLabel }}</div>
34
+ <div class="flex gap-4 text-lg leading-normal py-1">
35
+ <div *ngIf="icon" class="font-bold text-center leading-normal w-10 max-w-10 min-w-10" [class.grow]="iconOnly">
36
+ <div
37
+ class="px-3 py-1 text-white rounded"
38
+ [class.bg-black]="!spxIconSeverity"
39
+ [class.bg-red-700]="spxIconSeverityError"
40
+ [class.bg-green-700]="spxIconSeveritySuccess"
41
+ [class.bg-blue-700]="spxIconSeverityInfo"
42
+ [class.bg-gray-700]="spxIconSeverityUnknown"
43
+ [class.bg-amber-700]="spxIconSeverityWarning">
44
+ <fa-icon [icon]="icon"></fa-icon>
45
+ </div>
46
+ </div>
47
+ <div class="grow font-bold">
48
+ <ng-container *ngIf="!iconOnly"><ng-content></ng-content><div [innerHTML]="spxValue"></div></ng-container>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ `, isInline: true, dependencies: [{ kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardItemComponent, decorators: [{
55
+ type: Component,
56
+ args: [{
57
+ selector: 'spx-card-item',
58
+ standalone: true,
59
+ imports: [
60
+ FaIconComponent,
61
+ NgIf,
62
+ ],
63
+ template: `
64
+ <div class='py-2 px-3 rounded h-full'
65
+ [class.bg-slate-100]="!spxSeverity"
66
+ [class.dark:bg-slate-600]="!spxSeverity"
67
+ [class.text-black]="spxSeverityWarning"
68
+ [class.text-white]="spxSeverityError || spxSeverityInfo || spxSeveritySuccess || spxSeverityUnknown"
69
+ [class.bg-red-700]="spxSeverityError"
70
+ [class.bg-green-700]="spxSeveritySuccess"
71
+ [class.bg-blue-700]="spxSeverityInfo"
72
+ [class.bg-gray-700]="spxSeverityUnknown"
73
+ [class.bg-amber-700]="spxSeverityWarning">
74
+ <div class="font-small leading-normal">{{ spxLabel }}</div>
75
+ <div class="flex gap-4 text-lg leading-normal py-1">
76
+ <div *ngIf="icon" class="font-bold text-center leading-normal w-10 max-w-10 min-w-10" [class.grow]="iconOnly">
77
+ <div
78
+ class="px-3 py-1 text-white rounded"
79
+ [class.bg-black]="!spxIconSeverity"
80
+ [class.bg-red-700]="spxIconSeverityError"
81
+ [class.bg-green-700]="spxIconSeveritySuccess"
82
+ [class.bg-blue-700]="spxIconSeverityInfo"
83
+ [class.bg-gray-700]="spxIconSeverityUnknown"
84
+ [class.bg-amber-700]="spxIconSeverityWarning">
85
+ <fa-icon [icon]="icon"></fa-icon>
86
+ </div>
87
+ </div>
88
+ <div class="grow font-bold">
89
+ <ng-container *ngIf="!iconOnly"><ng-content></ng-content><div [innerHTML]="spxValue"></div></ng-container>
90
+ </div>
91
+ </div>
92
+ </div>
93
+ `,
94
+ }]
95
+ }], propDecorators: { hFull: [{
96
+ type: HostBinding,
97
+ args: ['class.h-full']
98
+ }], icon: [{
99
+ type: Input
100
+ }], iconOnly: [{
101
+ type: Input
102
+ }], spxLabel: [{
103
+ type: Input
104
+ }], spxValue: [{
105
+ type: Input
106
+ }], spxSeverity: [{
107
+ type: Input
108
+ }], spxIconSeverity: [{
109
+ type: Input
110
+ }] } });
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWNhcmQtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWNhcmQvc3B4LWNhcmQtaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQXlDbEUsTUFBTSxPQUFPLG9CQUFvQjtJQXZDakM7UUF3QytCLFVBQUssR0FBRyxJQUFJLENBQUM7UUFFakMsYUFBUSxHQUFHLEtBQUssQ0FBQztLQWUzQjtJQVZDLElBQUksZ0JBQWdCLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRSxJQUFJLGtCQUFrQixLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNqRixJQUFJLGtCQUFrQixLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNqRixJQUFJLGtCQUFrQixLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNqRixJQUFJLG9CQUFvQixLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNyRixJQUFJLG1CQUFtQixLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNuRixJQUFJLHNCQUFzQixLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN6RixJQUFJLHNCQUFzQixLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN6RixJQUFJLHNCQUFzQixLQUFLLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzsrR0FqQjlFLG9CQUFvQjttR0FBcEIsb0JBQW9CLDZSQWhDckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVCw0REFqQ0MsZUFBZSw0TUFDZixJQUFJOzs0RkFrQ0ssb0JBQW9CO2tCQXZDaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxlQUFlO3dCQUNmLElBQUk7cUJBQ0w7b0JBQ0QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4QlQ7aUJBQ0Y7OEJBRThCLEtBQUs7c0JBQWpDLFdBQVc7dUJBQUMsY0FBYztnQkFDbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZhSWNvbkNvbXBvbmVudCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcbmltcG9ydCB7IEljb25Qcm9wIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUvdHlwZXMnO1xuaW1wb3J0IHsgU3B4U2V2ZXJpdHlFbnVtIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1jYXJkLWl0ZW0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRmFJY29uQ29tcG9uZW50LFxuICAgIE5nSWYsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz0ncHktMiBweC0zIHJvdW5kZWQgaC1mdWxsJ1xuICAgICAgW2NsYXNzLmJnLXNsYXRlLTEwMF09XCIhc3B4U2V2ZXJpdHlcIlxuICAgICAgW2NsYXNzLmRhcms6Ymctc2xhdGUtNjAwXT1cIiFzcHhTZXZlcml0eVwiXG4gICAgICBbY2xhc3MudGV4dC1ibGFja109XCJzcHhTZXZlcml0eVdhcm5pbmdcIlxuICAgICAgW2NsYXNzLnRleHQtd2hpdGVdPVwic3B4U2V2ZXJpdHlFcnJvciB8fCBzcHhTZXZlcml0eUluZm8gfHwgc3B4U2V2ZXJpdHlTdWNjZXNzIHx8IHNweFNldmVyaXR5VW5rbm93blwiXG4gICAgICBbY2xhc3MuYmctcmVkLTcwMF09XCJzcHhTZXZlcml0eUVycm9yXCJcbiAgICAgIFtjbGFzcy5iZy1ncmVlbi03MDBdPVwic3B4U2V2ZXJpdHlTdWNjZXNzXCJcbiAgICAgIFtjbGFzcy5iZy1ibHVlLTcwMF09XCJzcHhTZXZlcml0eUluZm9cIlxuICAgICAgW2NsYXNzLmJnLWdyYXktNzAwXT1cInNweFNldmVyaXR5VW5rbm93blwiXG4gICAgICBbY2xhc3MuYmctYW1iZXItNzAwXT1cInNweFNldmVyaXR5V2FybmluZ1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImZvbnQtc21hbGwgbGVhZGluZy1ub3JtYWxcIj57eyBzcHhMYWJlbCB9fTwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTQgdGV4dC1sZyBsZWFkaW5nLW5vcm1hbCBweS0xXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpY29uXCIgY2xhc3M9XCJmb250LWJvbGQgdGV4dC1jZW50ZXIgbGVhZGluZy1ub3JtYWwgdy0xMCBtYXgtdy0xMCBtaW4tdy0xMFwiIFtjbGFzcy5ncm93XT1cImljb25Pbmx5XCI+XG4gICAgICAgICAgPGRpdiBcbiAgICAgICAgICAgIGNsYXNzPVwicHgtMyBweS0xIHRleHQtd2hpdGUgcm91bmRlZFwiXG4gICAgICAgICAgICBbY2xhc3MuYmctYmxhY2tdPVwiIXNweEljb25TZXZlcml0eVwiXG4gICAgICAgICAgICBbY2xhc3MuYmctcmVkLTcwMF09XCJzcHhJY29uU2V2ZXJpdHlFcnJvclwiXG4gICAgICAgICAgICBbY2xhc3MuYmctZ3JlZW4tNzAwXT1cInNweEljb25TZXZlcml0eVN1Y2Nlc3NcIlxuICAgICAgICAgICAgW2NsYXNzLmJnLWJsdWUtNzAwXT1cInNweEljb25TZXZlcml0eUluZm9cIlxuICAgICAgICAgICAgW2NsYXNzLmJnLWdyYXktNzAwXT1cInNweEljb25TZXZlcml0eVVua25vd25cIlxuICAgICAgICAgICAgW2NsYXNzLmJnLWFtYmVyLTcwMF09XCJzcHhJY29uU2V2ZXJpdHlXYXJuaW5nXCI+XG4gICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJpY29uXCI+PC9mYS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdyb3cgZm9udC1ib2xkXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpY29uT25seVwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48ZGl2IFtpbm5lckhUTUxdPVwic3B4VmFsdWVcIj48L2Rpdj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4Q2FyZEl0ZW1Db21wb25lbnQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmgtZnVsbCcpIGhGdWxsID0gdHJ1ZTtcbiAgQElucHV0KCkgaWNvbj86IEljb25Qcm9wO1xuICBASW5wdXQoKSBpY29uT25seSA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhMYWJlbCE6IHN0cmluZztcbiAgQElucHV0KCkgc3B4VmFsdWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFNldmVyaXR5PzogU3B4U2V2ZXJpdHlFbnVtO1xuICBASW5wdXQoKSBzcHhJY29uU2V2ZXJpdHk/OiBTcHhTZXZlcml0eUVudW07XG4gIGdldCBzcHhTZXZlcml0eUVycm9yKCkgeyByZXR1cm4gdGhpcy5zcHhTZXZlcml0eSA9PT0gU3B4U2V2ZXJpdHlFbnVtLmVycm9yOyB9XG4gIGdldCBzcHhTZXZlcml0eUluZm8oKSB7IHJldHVybiB0aGlzLnNweFNldmVyaXR5ID09PSBTcHhTZXZlcml0eUVudW0uaW5mbzsgfVxuICBnZXQgc3B4U2V2ZXJpdHlTdWNjZXNzKCkgeyByZXR1cm4gdGhpcy5zcHhTZXZlcml0eSA9PT0gU3B4U2V2ZXJpdHlFbnVtLnN1Y2Nlc3M7IH1cbiAgZ2V0IHNweFNldmVyaXR5VW5rbm93bigpIHsgcmV0dXJuIHRoaXMuc3B4U2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS51bmtub3duOyB9XG4gIGdldCBzcHhTZXZlcml0eVdhcm5pbmcoKSB7IHJldHVybiB0aGlzLnNweFNldmVyaXR5ID09PSBTcHhTZXZlcml0eUVudW0ud2FybmluZzsgfVxuICBnZXQgc3B4SWNvblNldmVyaXR5RXJyb3IoKSB7IHJldHVybiB0aGlzLnNweEljb25TZXZlcml0eSA9PT0gU3B4U2V2ZXJpdHlFbnVtLmVycm9yOyB9XG4gIGdldCBzcHhJY29uU2V2ZXJpdHlJbmZvKCkgeyByZXR1cm4gdGhpcy5zcHhJY29uU2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS5pbmZvOyB9XG4gIGdldCBzcHhJY29uU2V2ZXJpdHlTdWNjZXNzKCkgeyByZXR1cm4gdGhpcy5zcHhJY29uU2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS5zdWNjZXNzOyB9XG4gIGdldCBzcHhJY29uU2V2ZXJpdHlVbmtub3duKCkgeyByZXR1cm4gdGhpcy5zcHhJY29uU2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS51bmtub3duOyB9XG4gIGdldCBzcHhJY29uU2V2ZXJpdHlXYXJuaW5nKCkgeyByZXR1cm4gdGhpcy5zcHhJY29uU2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS53YXJuaW5nOyB9XG59XG4iXX0=
@@ -0,0 +1,101 @@
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@fortawesome/angular-fontawesome";
6
+ export class SpxCardLineComponent {
7
+ get numericValue() {
8
+ return this.value;
9
+ }
10
+ constructor() {
11
+ this.showPositiveOrNegative = false;
12
+ this.newOrderScreen = false;
13
+ }
14
+ displayValue(val) {
15
+ return val || val === 0 ? val : '—';
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardLineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxCardLineComponent, isStandalone: true, selector: "spx-card-line", inputs: { icon: "icon", showPositiveOrNegative: "showPositiveOrNegative", text: "text", value: "value", secondValue: "secondValue", showProgress: "showProgress", unit: "unit", newOrderScreen: "newOrderScreen" }, ngImport: i0, template: `
19
+ <div class="items-center" [class.flex]="!newOrderScreen">
20
+ <div class="block w-24 text-gray-600 dark:text-gray-200 text-xs mb-1" [class.pt-1]="!newOrderScreen" [innerHTML]="text"></div>
21
+ <div class="flex">
22
+ <fa-icon *ngIf="icon" [icon]="icon" class="text-lg mr-3 w-6 text-center"></fa-icon>
23
+ <div *ngIf="showPositiveOrNegative && numericValue < 0" class="rounded-full w-4 h-4 mr-2 bg-sky-600">&nbsp;</div>
24
+ <span *ngIf="!showProgress" class="block font-medium grow whitespace-pre-line leading-5">
25
+ <span [innerHTML]="displayValue(value)"></span>
26
+ <ng-content></ng-content>
27
+ <span *ngIf="unit"> {{ unit }}</span>
28
+ <ng-container *ngIf="!unit && secondValue !== null && secondValue !== undefined"> / {{ displayValue(secondValue) }}</ng-container>
29
+ </span>
30
+ </div>
31
+ <div *ngIf="showProgress" class="block font-medium grow whitespace-pre-line text-gray-600 dark:text-gray-200">
32
+ <div class="flex">
33
+ <div class="flex grow gap-2">
34
+ <div class="bg-gray-200 my-0.5 h-5 w-full rounded">
35
+ <div class="bg-teal-600 h-5 rounded" [style.width]="((+value) / (secondValue ? +secondValue : 0)) * 100 + '%'"></div>
36
+ </div>
37
+ </div>
38
+ <div class="flex text-left pl-3 gap-2">
39
+ <div class="block w-16 text-right">{{ value }} / {{ secondValue }}</div>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ `, 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"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
45
+ }
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardLineComponent, decorators: [{
47
+ type: Component,
48
+ args: [{
49
+ selector: 'spx-card-line',
50
+ standalone: true,
51
+ imports: [
52
+ FontAwesomeModule,
53
+ NgClass,
54
+ NgIf,
55
+ ],
56
+ template: `
57
+ <div class="items-center" [class.flex]="!newOrderScreen">
58
+ <div class="block w-24 text-gray-600 dark:text-gray-200 text-xs mb-1" [class.pt-1]="!newOrderScreen" [innerHTML]="text"></div>
59
+ <div class="flex">
60
+ <fa-icon *ngIf="icon" [icon]="icon" class="text-lg mr-3 w-6 text-center"></fa-icon>
61
+ <div *ngIf="showPositiveOrNegative && numericValue < 0" class="rounded-full w-4 h-4 mr-2 bg-sky-600">&nbsp;</div>
62
+ <span *ngIf="!showProgress" class="block font-medium grow whitespace-pre-line leading-5">
63
+ <span [innerHTML]="displayValue(value)"></span>
64
+ <ng-content></ng-content>
65
+ <span *ngIf="unit"> {{ unit }}</span>
66
+ <ng-container *ngIf="!unit && secondValue !== null && secondValue !== undefined"> / {{ displayValue(secondValue) }}</ng-container>
67
+ </span>
68
+ </div>
69
+ <div *ngIf="showProgress" class="block font-medium grow whitespace-pre-line text-gray-600 dark:text-gray-200">
70
+ <div class="flex">
71
+ <div class="flex grow gap-2">
72
+ <div class="bg-gray-200 my-0.5 h-5 w-full rounded">
73
+ <div class="bg-teal-600 h-5 rounded" [style.width]="((+value) / (secondValue ? +secondValue : 0)) * 100 + '%'"></div>
74
+ </div>
75
+ </div>
76
+ <div class="flex text-left pl-3 gap-2">
77
+ <div class="block w-16 text-right">{{ value }} / {{ secondValue }}</div>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ </div>
82
+ `,
83
+ }]
84
+ }], ctorParameters: () => [], propDecorators: { icon: [{
85
+ type: Input
86
+ }], showPositiveOrNegative: [{
87
+ type: Input
88
+ }], text: [{
89
+ type: Input
90
+ }], value: [{
91
+ type: Input
92
+ }], secondValue: [{
93
+ type: Input
94
+ }], showProgress: [{
95
+ type: Input
96
+ }], unit: [{
97
+ type: Input
98
+ }], newOrderScreen: [{
99
+ type: Input
100
+ }] } });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWNhcmQtbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWNhcmQvc3B4LWNhcmQtbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBdUNyRSxNQUFNLE9BQU8sb0JBQW9CO0lBVS9CLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQ7UUFaUywyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFNL0IsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFNaEIsQ0FBQztJQUVWLFlBQVksQ0FBQyxHQUE4QjtRQUNoRCxPQUFPLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUN0QyxDQUFDOytHQWxCVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiw2UkE1QnJCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQTBCWCwyREE5QkcsaUJBQWlCLDZQQUVqQixJQUFJOzs0RkE4Qkssb0JBQW9CO2tCQXBDaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLE9BQU87d0JBQ1AsSUFBSTtxQkFDTDtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBMEJYO2lCQUNBO3dEQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgSWNvblByb3AgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZS90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1jYXJkLWxpbmUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRm9udEF3ZXNvbWVNb2R1bGUsXG4gICAgTmdDbGFzcyxcbiAgICBOZ0lmLFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuPGRpdiBjbGFzcz1cIml0ZW1zLWNlbnRlclwiIFtjbGFzcy5mbGV4XT1cIiFuZXdPcmRlclNjcmVlblwiPlxuICA8ZGl2IGNsYXNzPVwiYmxvY2sgdy0yNCB0ZXh0LWdyYXktNjAwIGRhcms6dGV4dC1ncmF5LTIwMCB0ZXh0LXhzIG1iLTFcIiBbY2xhc3MucHQtMV09XCIhbmV3T3JkZXJTY3JlZW5cIiBbaW5uZXJIVE1MXT1cInRleHRcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICA8ZmEtaWNvbiAqbmdJZj1cImljb25cIiBbaWNvbl09XCJpY29uXCIgY2xhc3M9XCJ0ZXh0LWxnIG1yLTMgdy02IHRleHQtY2VudGVyXCI+PC9mYS1pY29uPlxuICAgIDxkaXYgKm5nSWY9XCJzaG93UG9zaXRpdmVPck5lZ2F0aXZlICYmIG51bWVyaWNWYWx1ZSA8IDBcIiBjbGFzcz1cInJvdW5kZWQtZnVsbCB3LTQgaC00IG1yLTIgYmctc2t5LTYwMFwiPiZuYnNwOzwvZGl2PlxuICAgIDxzcGFuICpuZ0lmPVwiIXNob3dQcm9ncmVzc1wiIGNsYXNzPVwiYmxvY2sgZm9udC1tZWRpdW0gZ3JvdyB3aGl0ZXNwYWNlLXByZS1saW5lIGxlYWRpbmctNVwiPlxuICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJkaXNwbGF5VmFsdWUodmFsdWUpXCI+PC9zcGFuPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPHNwYW4gKm5nSWY9XCJ1bml0XCI+IHt7IHVuaXQgfX08L3NwYW4+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXVuaXQgJiYgc2Vjb25kVmFsdWUgIT09IG51bGwgJiYgc2Vjb25kVmFsdWUgIT09IHVuZGVmaW5lZFwiPiAvIHt7IGRpc3BsYXlWYWx1ZShzZWNvbmRWYWx1ZSkgfX08L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd1Byb2dyZXNzXCIgY2xhc3M9XCJibG9jayBmb250LW1lZGl1bSBncm93IHdoaXRlc3BhY2UtcHJlLWxpbmUgdGV4dC1ncmF5LTYwMCBkYXJrOnRleHQtZ3JheS0yMDBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ3JvdyBnYXAtMlwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmctZ3JheS0yMDAgbXktMC41IGgtNSB3LWZ1bGwgcm91bmRlZFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJiZy10ZWFsLTYwMCBoLTUgcm91bmRlZFwiIFtzdHlsZS53aWR0aF09XCIoKCt2YWx1ZSkgLyAoc2Vjb25kVmFsdWUgPyArc2Vjb25kVmFsdWUgOiAwKSkgKiAxMDAgKyAnJSdcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHRleHQtbGVmdCBwbC0zIGdhcC0yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJibG9jayB3LTE2IHRleHQtcmlnaHRcIj57eyB2YWx1ZSB9fSAvIHt7IHNlY29uZFZhbHVlIH19PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweENhcmRMaW5lQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaWNvbj86IEljb25Qcm9wO1xuICBASW5wdXQoKSBzaG93UG9zaXRpdmVPck5lZ2F0aXZlID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZyB8IHVua25vd247XG4gIEBJbnB1dCgpIHZhbHVlITogc3RyaW5nIHwgbnVtYmVyO1xuICBASW5wdXQoKSBzZWNvbmRWYWx1ZT86IHN0cmluZyB8IG51bWJlcjtcbiAgQElucHV0KCkgc2hvd1Byb2dyZXNzPzogYm9vbGVhbjtcbiAgQElucHV0KCkgdW5pdD86IHN0cmluZztcbiAgQElucHV0KCkgbmV3T3JkZXJTY3JlZW4gPSBmYWxzZTtcblxuICBnZXQgbnVtZXJpY1ZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlIGFzIG51bWJlcjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIGRpc3BsYXlWYWx1ZSh2YWw6IHN0cmluZyB8IG51bWJlciB8IHVua25vd24pOiBzdHJpbmcgfCBudW1iZXIgfCB1bmtub3duIHtcbiAgICByZXR1cm4gdmFsIHx8IHZhbCA9PT0gMCA/IHZhbCA6ICfigJQnO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,93 @@
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class SpxCardComponent {
5
+ constructor() {
6
+ this.clickable = true;
7
+ this.hasContent = true;
8
+ this.onDetailPage = false;
9
+ this.tableView = false;
10
+ this.clicked = new EventEmitter();
11
+ }
12
+ displayValue(val) {
13
+ return val || (val === 0) ? val : '—';
14
+ }
15
+ onClick() {
16
+ this.clicked.emit();
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxCardComponent, isStandalone: true, selector: "spx-card", inputs: { clickable: "clickable", hasContent: "hasContent", onDetailPage: "onDetailPage", text: "text", unit: "unit", tableView: "tableView" }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
20
+ <button type="button"
21
+ class="block w-full text-left rounded font-body items-stretch"
22
+ [class.flex]="tableView"
23
+ [class.cursor-pointer]="clickable"
24
+ [class.cursor-not-allowed]="!clickable"
25
+ [class.focus:ring-2]="clickable"
26
+ [class.focus:ring-offset-2]="clickable"
27
+ [class.focus:ring-blue-500]="clickable"
28
+ (click)="onClick()"
29
+ [tabIndex]="clickable ? 0 : -1">
30
+ <div class="text-gray-900 opacity-90" [class.w-96]="tableView">
31
+ <ng-content select="[card-header]"></ng-content>
32
+ </div>
33
+ <ng-content select="[card-content-top]"></ng-content>
34
+ <div *ngIf="hasContent" class="bg-white dark:bg-gray-600 p-3">
35
+ <ng-content select="[card-content]"></ng-content>
36
+ </div>
37
+ <ng-content select="[card-content-bottom]"></ng-content>
38
+ <div class="bg-gray-50 dark:bg-gray-700 p-3 grow" [class.rounded-b-lg]="!onDetailPage && !tableView" [class.rounded-r-lg]="!onDetailPage && tableView">
39
+ <ng-content select="[card-lines]"></ng-content>
40
+ </div>
41
+ </button>
42
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxCardComponent, decorators: [{
45
+ type: Component,
46
+ args: [{
47
+ selector: 'spx-card',
48
+ standalone: true,
49
+ imports: [
50
+ NgClass,
51
+ NgIf,
52
+ ],
53
+ template: `
54
+ <button type="button"
55
+ class="block w-full text-left rounded font-body items-stretch"
56
+ [class.flex]="tableView"
57
+ [class.cursor-pointer]="clickable"
58
+ [class.cursor-not-allowed]="!clickable"
59
+ [class.focus:ring-2]="clickable"
60
+ [class.focus:ring-offset-2]="clickable"
61
+ [class.focus:ring-blue-500]="clickable"
62
+ (click)="onClick()"
63
+ [tabIndex]="clickable ? 0 : -1">
64
+ <div class="text-gray-900 opacity-90" [class.w-96]="tableView">
65
+ <ng-content select="[card-header]"></ng-content>
66
+ </div>
67
+ <ng-content select="[card-content-top]"></ng-content>
68
+ <div *ngIf="hasContent" class="bg-white dark:bg-gray-600 p-3">
69
+ <ng-content select="[card-content]"></ng-content>
70
+ </div>
71
+ <ng-content select="[card-content-bottom]"></ng-content>
72
+ <div class="bg-gray-50 dark:bg-gray-700 p-3 grow" [class.rounded-b-lg]="!onDetailPage && !tableView" [class.rounded-r-lg]="!onDetailPage && tableView">
73
+ <ng-content select="[card-lines]"></ng-content>
74
+ </div>
75
+ </button>
76
+ `,
77
+ }]
78
+ }], ctorParameters: () => [], propDecorators: { clickable: [{
79
+ type: Input
80
+ }], hasContent: [{
81
+ type: Input
82
+ }], onDetailPage: [{
83
+ type: Input
84
+ }], text: [{
85
+ type: Input
86
+ }], unit: [{
87
+ type: Input
88
+ }], tableView: [{
89
+ type: Input
90
+ }], clicked: [{
91
+ type: Output
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1jYXJkL3NweC1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBa0N2RSxNQUFNLE9BQU8sZ0JBQWdCO0lBUzNCO1FBUlMsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBR3JCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDakIsWUFBTyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWpELENBQUM7SUFFakIsWUFBWSxDQUFDLEdBQW9CO1FBQy9CLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUN4QyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQzsrR0FqQlUsZ0JBQWdCO21HQUFoQixnQkFBZ0IscVBBekJqQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F1QlgsNERBekJHLElBQUk7OzRGQTJCSyxnQkFBZ0I7a0JBaEM1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLE9BQU87d0JBQ1AsSUFBSTtxQkFDTDtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBdUJYO2lCQUNBO3dEQUVVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtY2FyZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICAgIE5nSWYsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gIGNsYXNzPVwiYmxvY2sgdy1mdWxsIHRleHQtbGVmdCByb3VuZGVkIGZvbnQtYm9keSBpdGVtcy1zdHJldGNoXCJcbiAgW2NsYXNzLmZsZXhdPVwidGFibGVWaWV3XCJcbiAgW2NsYXNzLmN1cnNvci1wb2ludGVyXT1cImNsaWNrYWJsZVwiXG4gIFtjbGFzcy5jdXJzb3Itbm90LWFsbG93ZWRdPVwiIWNsaWNrYWJsZVwiXG4gIFtjbGFzcy5mb2N1czpyaW5nLTJdPVwiY2xpY2thYmxlXCJcbiAgW2NsYXNzLmZvY3VzOnJpbmctb2Zmc2V0LTJdPVwiY2xpY2thYmxlXCJcbiAgW2NsYXNzLmZvY3VzOnJpbmctYmx1ZS01MDBdPVwiY2xpY2thYmxlXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gIFt0YWJJbmRleF09XCJjbGlja2FibGUgPyAwIDogLTFcIj5cbiAgPGRpdiBjbGFzcz1cInRleHQtZ3JheS05MDAgb3BhY2l0eS05MFwiIFtjbGFzcy53LTk2XT1cInRhYmxlVmlld1wiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjYXJkLWhlYWRlcl1cIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbY2FyZC1jb250ZW50LXRvcF1cIj48L25nLWNvbnRlbnQ+XG4gIDxkaXYgKm5nSWY9XCJoYXNDb250ZW50XCIgY2xhc3M9XCJiZy13aGl0ZSBkYXJrOmJnLWdyYXktNjAwIHAtM1wiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjYXJkLWNvbnRlbnRdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NhcmQtY29udGVudC1ib3R0b21dXCI+PC9uZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiYmctZ3JheS01MCBkYXJrOmJnLWdyYXktNzAwIHAtMyBncm93XCIgW2NsYXNzLnJvdW5kZWQtYi1sZ109XCIhb25EZXRhaWxQYWdlICYmICF0YWJsZVZpZXdcIiBbY2xhc3Mucm91bmRlZC1yLWxnXT1cIiFvbkRldGFpbFBhZ2UgJiYgdGFibGVWaWV3XCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NhcmQtbGluZXNdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvYnV0dG9uPlxuYCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4Q2FyZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNsaWNrYWJsZSA9IHRydWU7XG4gIEBJbnB1dCgpIGhhc0NvbnRlbnQgPSB0cnVlO1xuICBASW5wdXQoKSBvbkRldGFpbFBhZ2UgPSBmYWxzZTtcbiAgQElucHV0KCkgdGV4dCE6IHN0cmluZztcbiAgQElucHV0KCkgdW5pdD86IHN0cmluZztcbiAgQElucHV0KCkgdGFibGVWaWV3ID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBjbGlja2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBkaXNwbGF5VmFsdWUodmFsOiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgIHJldHVybiB2YWwgfHwgKHZhbCA9PT0gMCkgPyB2YWwgOiAn4oCUJztcbiAgfVxuXG4gIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5jbGlja2VkLmVtaXQoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './spx-change-details.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbmdlLWRldGFpbHMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcHgtY2hhbmdlLWRldGFpbHMuY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1jaGFuZ2UtZGV0YWlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbmdlLWRldGFpbHMvc29mdHBhay1jb21wb25lbnRzLXNweC1jaGFuZ2UtZGV0YWlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWNoYW5nZS1kZXRhaWxzLXZhbHVlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbmdlLWRldGFpbHMvc3B4LWNoYW5nZS1kZXRhaWxzLXZhbHVlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSBcIkBzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0c1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNweENoYW5nZURldGFpbHNWYWx1ZUkge1xuICAgIGNhdGVnb3J5PzogU3B4VmFsdWVQYWlyPHN0cmluZz47XG4gICAgY29udGFpbmVyVHlwZTogU3B4VmFsdWVQYWlyPHN0cmluZz47XG4gICAgbGljZW5zZVBsYXRlOiBTcHhWYWx1ZVBhaXI8c3RyaW5nPjtcbiAgICB0b25zVGVzdGVkOiBTcHhWYWx1ZVBhaXI8c3RyaW5nPjtcbn1cbiJdfQ==
@@ -0,0 +1,199 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
3
+ import { spxValidatorRequired, SpxValidateControlComponent } from '@softpak/components/spx-validation';
4
+ import { CommonModule } from '@angular/common';
5
+ import { SpxInputComponent, SpxInputTypeEnum } from '@softpak/components/spx-inputs';
6
+ import { SpxFormButtonTypeEnum, SpxFormViewComponent } from '@softpak/components/spx-form-view';
7
+ import { SpxButtonComponent } from '@softpak/components/spx-button';
8
+ import { SpxSeverityEnum, valuePairToValue } from '@softpak/components/spx-helpers';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/forms";
11
+ export const sectionChangeDetails = 'changeDetails';
12
+ export const ctrlContainerNumber = 'containerNumber';
13
+ export const ctrlContainerSeqNr = 'containerSeqNr';
14
+ export const ctrlContainerType = 'containerType';
15
+ export const ctrlCustomer = 'customer';
16
+ export const ctrlTonsTested = 'tonsTested';
17
+ export const ctrlLicensePlate = 'licensePlate';
18
+ export const ctrlCategory = 'category';
19
+ export const ctrlUseCategories = 'useCategories';
20
+ export class SpxChangeDetailsComponent {
21
+ get ctrlCategory() { return this.formGroup.get(ctrlCategory); }
22
+ get ctrlCustomer() { return this.formGroup.get(ctrlCustomer); }
23
+ get ctrlContainerType() { return this.formGroup.get(ctrlContainerType); }
24
+ get ctrlLicensePlate() { return this.formGroup.get(ctrlLicensePlate); }
25
+ get ctrlTonsTested() { return this.formGroup?.get(ctrlTonsTested); }
26
+ get ctrlUseCategories() { return this.formGroup?.get(ctrlUseCategories); }
27
+ constructor(formBuilder) {
28
+ this.formBuilder = formBuilder;
29
+ this.suggestions = {};
30
+ this.spxBlurCategory = new EventEmitter();
31
+ this.spxBlurContainerType = new EventEmitter();
32
+ this.spxSearchCategory = new EventEmitter();
33
+ this.spxSearchContainerType = new EventEmitter();
34
+ this.spxSearchTonsTested = new EventEmitter();
35
+ this.submit = new EventEmitter();
36
+ this.form = {
37
+ buttons: [
38
+ {
39
+ severity: SpxSeverityEnum.success,
40
+ type: SpxFormButtonTypeEnum.submit,
41
+ label: () => this.textSave,
42
+ }
43
+ ],
44
+ sections: [
45
+ {
46
+ key: sectionChangeDetails,
47
+ showTitle: () => false,
48
+ fields: [
49
+ {
50
+ key: ctrlContainerSeqNr,
51
+ type: () => SpxInputTypeEnum.hidden,
52
+ validators: () => [spxValidatorRequired()],
53
+ },
54
+ {
55
+ key: ctrlContainerNumber,
56
+ type: () => SpxInputTypeEnum.text,
57
+ label: () => this.textContainerNumber,
58
+ readonly: () => true,
59
+ validators: () => [spxValidatorRequired()],
60
+ },
61
+ {
62
+ key: ctrlCustomer,
63
+ type: () => SpxInputTypeEnum.text,
64
+ capitalize: () => true,
65
+ readonly: () => true,
66
+ label: () => this.textCustomer,
67
+ validators: () => [spxValidatorRequired()],
68
+ },
69
+ {
70
+ key: ctrlContainerType,
71
+ type: () => SpxInputTypeEnum.autocomplete,
72
+ label: () => this.textContainerType,
73
+ capitalize: () => true,
74
+ validators: () => [spxValidatorRequired()],
75
+ },
76
+ {
77
+ key: ctrlTonsTested,
78
+ type: () => SpxInputTypeEnum.radio,
79
+ label: () => this.textTonsTested,
80
+ show: () => this.suggestions?.[ctrlTonsTested] && this.suggestions?.[ctrlTonsTested].length && this.suggestions?.[ctrlTonsTested].length > 0,
81
+ validators: () => this.suggestions?.[ctrlTonsTested] && this.suggestions?.[ctrlTonsTested].length && this.suggestions?.[ctrlTonsTested].length > 0 ? [spxValidatorRequired()] : [],
82
+ },
83
+ {
84
+ key: ctrlLicensePlate,
85
+ type: () => SpxInputTypeEnum.text,
86
+ label: () => this.textLicensePlate,
87
+ capitalize: () => true,
88
+ },
89
+ {
90
+ key: ctrlUseCategories,
91
+ type: () => SpxInputTypeEnum.hidden,
92
+ capitalize: () => true,
93
+ },
94
+ {
95
+ key: ctrlCategory,
96
+ type: () => SpxInputTypeEnum.autocomplete,
97
+ label: () => this.textCategory,
98
+ capitalize: () => true,
99
+ show: () => valuePairToValue(this.ctrlUseCategories?.value),
100
+ validators: () => valuePairToValue(this.ctrlUseCategories?.value) ? [spxValidatorRequired()] : [],
101
+ }
102
+ ]
103
+ }
104
+ ]
105
+ };
106
+ }
107
+ createForm() {
108
+ return SpxFormViewComponent.createForm(this.formBuilder, this.form.sections);
109
+ }
110
+ ngOnInit() {
111
+ this.listenToContainerType();
112
+ }
113
+ ngOnDestroy() {
114
+ if (this.subContainerType) {
115
+ this.subContainerType.unsubscribe();
116
+ }
117
+ }
118
+ getRawValidators(formControl) {
119
+ return formControl._rawValidators;
120
+ }
121
+ onBlur(data) {
122
+ if (data.field.key === ctrlCategory) {
123
+ this.spxBlurCategory.emit(data.valuePair);
124
+ }
125
+ if (data.field.key === ctrlContainerType) {
126
+ this.spxBlurContainerType.emit(data.valuePair);
127
+ }
128
+ }
129
+ onSearch(data) {
130
+ if (data.field.key === ctrlCategory) {
131
+ this.spxSearchCategory.emit(data.valuePair);
132
+ }
133
+ if (data.field.key === ctrlContainerType) {
134
+ this.spxSearchContainerType.emit(data.valuePair);
135
+ }
136
+ if (data.field.key === ctrlTonsTested) {
137
+ this.spxSearchTonsTested.emit(data.valuePair);
138
+ }
139
+ }
140
+ onSubmit() {
141
+ this.submit.emit({
142
+ category: valuePairToValue(this.ctrlUseCategories.value) ? this.ctrlCategory.value : null,
143
+ containerType: this.ctrlContainerType.value,
144
+ licensePlate: this.ctrlLicensePlate.value,
145
+ tonsTested: this.ctrlTonsTested.value,
146
+ });
147
+ }
148
+ listenToContainerType() {
149
+ this.subContainerType = this.ctrlContainerType.valueChanges.subscribe(valuePair => {
150
+ this.ctrlTonsTested.setValue({ value: null });
151
+ this.spxSearchTonsTested.emit(valuePair);
152
+ });
153
+ }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxChangeDetailsComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
155
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpxChangeDetailsComponent, isStandalone: true, selector: "spx-change-details", inputs: { formGroup: "formGroup", suggestions: "suggestions", textCategory: "textCategory", textContainerNumber: "textContainerNumber", textContainerType: "textContainerType", textCustomer: "textCustomer", textLicensePlate: "textLicensePlate", textSave: "textSave", textTonsTested: "textTonsTested" }, outputs: { spxBlurCategory: "spxBlurCategory", spxBlurContainerType: "spxBlurContainerType", spxSearchCategory: "spxSearchCategory", spxSearchContainerType: "spxSearchContainerType", spxSearchTonsTested: "spxSearchTonsTested", submit: "submit" }, ngImport: i0, template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxForm]=\"form\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n</form>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: SpxFormViewComponent, selector: "spx-form-view", inputs: ["spxFormGroup", "spxForm", "spxSuggestions"], outputs: ["spxBlur", "spxClick", "spxSearch"] }] }); }
156
+ }
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxChangeDetailsComponent, decorators: [{
158
+ type: Component,
159
+ args: [{ selector: 'spx-change-details', standalone: true, imports: [
160
+ CommonModule,
161
+ FormsModule,
162
+ ReactiveFormsModule,
163
+ SpxButtonComponent,
164
+ SpxFormViewComponent,
165
+ SpxInputComponent,
166
+ SpxValidateControlComponent,
167
+ ], template: "<form [formGroup]=\"formGroup\" class=\"max-w-lg mx-auto flex flex-col gap-3\" (ngSubmit)=\"onSubmit()\">\n <spx-form-view\n [spxFormGroup]=\"formGroup\"\n [spxForm]=\"form\"\n [spxSuggestions]=\"suggestions\"\n (spxBlur)=\"onBlur($event)\"\n (spxSearch)=\"onSearch($event)\">\n </spx-form-view>\n</form>" }]
168
+ }], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { formGroup: [{
169
+ type: Input
170
+ }], suggestions: [{
171
+ type: Input
172
+ }], textCategory: [{
173
+ type: Input
174
+ }], textContainerNumber: [{
175
+ type: Input
176
+ }], textContainerType: [{
177
+ type: Input
178
+ }], textCustomer: [{
179
+ type: Input
180
+ }], textLicensePlate: [{
181
+ type: Input
182
+ }], textSave: [{
183
+ type: Input
184
+ }], textTonsTested: [{
185
+ type: Input
186
+ }], spxBlurCategory: [{
187
+ type: Output
188
+ }], spxBlurContainerType: [{
189
+ type: Output
190
+ }], spxSearchCategory: [{
191
+ type: Output
192
+ }], spxSearchContainerType: [{
193
+ type: Output
194
+ }], spxSearchTonsTested: [{
195
+ type: Output
196
+ }], submit: [{
197
+ type: Output
198
+ }] } });
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWNoYW5nZS1kZXRhaWxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbmdlLWRldGFpbHMvc3B4LWNoYW5nZS1kZXRhaWxzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbmdlLWRldGFpbHMvc3B4LWNoYW5nZS1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUF1QyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFnQixNQUFNLGdDQUFnQyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxxQkFBcUIsRUFBMkIsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6SCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7OztBQUdwRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxlQUFlLENBQUM7QUFDcEQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsaUJBQWlCLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUM7QUFDbkQsTUFBTSxDQUFDLE1BQU0saUJB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QXpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFDRyxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNweFZhbGlkYXRvclJlcXVpcmVkLCBTcHhWYWxpZGF0ZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC12YWxpZGF0aW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTcHhJbnB1dENvbXBvbmVudCwgU3B4SW5wdXRUeXBlRW51bSwgU3B4VmFsdWVQYWlyIH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzJztcbmltcG9ydCB7IFNweEZvcm1CdXR0b25UeXBlRW51bSwgU3B4Rm9ybUZpZWxkSSwgU3B4Rm9ybUksIFNweEZvcm1WaWV3Q29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtZm9ybS12aWV3JztcbmltcG9ydCB7IFNweEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbic7XG5pbXBvcnQgeyBTcHhTZXZlcml0eUVudW0sIHZhbHVlUGFpclRvVmFsdWUgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzJztcbmltcG9ydCB7IFNweENoYW5nZURldGFpbHNWYWx1ZUkgfSBmcm9tICcuL3NweC1jaGFuZ2UtZGV0YWlscy12YWx1ZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3Qgc2VjdGlvbkNoYW5nZURldGFpbHMgPSAnY2hhbmdlRGV0YWlscyc7XG5leHBvcnQgY29uc3QgY3RybENvbnRhaW5lck51bWJlciA9ICdjb250YWluZXJOdW1iZXInO1xuZXhwb3J0IGNvbnN0IGN0cmxDb250YWluZXJTZXFOciA9ICdjb250YWluZXJTZXFOcic7XG5leHBvcnQgY29uc3QgY3RybENvbnRhaW5lclR5cGUgPSAnY29udGFpbmVyVHlwZSc7XG5leHBvcnQgY29uc3QgY3RybEN1c3RvbWVyID0gJ2N1c3RvbWVyJztcbmV4cG9ydCBjb25zdCBjdHJsVG9uc1Rlc3RlZCA9ICd0b25zVGVzdGVkJztcbmV4cG9ydCBjb25zdCBjdHJsTGljZW5zZVBsYXRlID0gJ2xpY2Vuc2VQbGF0ZSc7XG5leHBvcnQgY29uc3QgY3RybENhdGVnb3J5ID0gJ2NhdGVnb3J5JztcbmV4cG9ydCBjb25zdCBjdHJsVXNlQ2F0ZWdvcmllcyA9ICd1c2VDYXRlZ29yaWVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWNoYW5nZS1kZXRhaWxzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NweC1jaGFuZ2UtZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgU3B4Rm9ybVZpZXdDb21wb25lbnQsXG4gICAgU3B4SW5wdXRDb21wb25lbnQsXG4gICAgU3B4VmFsaWRhdGVDb250cm9sQ29tcG9uZW50LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNweENoYW5nZURldGFpbHNDb21wb25lbnQge1xuICBASW5wdXQoKSBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHN1Z2dlc3Rpb25zOiBhbnkgPSB7fTtcbiAgQElucHV0KCkgdGV4dENhdGVnb3J5ITogc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0Q29udGFpbmVyTnVtYmVyITogc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0Q29udGFpbmVyVHlwZSE6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dEN1c3RvbWVyITogc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0TGljZW5zZVBsYXRlITogc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0U2F2ZSE6IHN0cmluZztcbiAgQElucHV0KCkgdGV4dFRvbnNUZXN0ZWQhOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBzcHhCbHVyQ2F0ZWdvcnk6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4Qmx1ckNvbnRhaW5lclR5cGU6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoQ2F0ZWdvcnk6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoQ29udGFpbmVyVHlwZTogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPHN0cmluZz4+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2hUb25zVGVzdGVkOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPHN0cmluZz4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8c3RyaW5nPj4oKTtcbiAgQE91dHB1dCgpIHN1Ym1pdDogRXZlbnRFbWl0dGVyPFNweENoYW5nZURldGFpbHNWYWx1ZUk+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhDaGFuZ2VEZXRhaWxzVmFsdWVJPigpO1xuXG4gIGZvcm06IFNweEZvcm1JID0ge1xuICAgIGJ1dHRvbnM6IFtcbiAgICAgIHtcbiAgICAgICAgc2V2ZXJpdHk6IFNweFNldmVyaXR5RW51bS5zdWNjZXNzLFxuICAgICAgICB0eXBlOiBTcHhGb3JtQnV0dG9uVHlwZUVudW0uc3VibWl0LFxuICAgICAgICBsYWJlbDogKCkgPT4gdGhpcy50ZXh0U2F2ZSxcbiAgICAgIH1cbiAgICBdLFxuICAgIHNlY3Rpb25zOiBbXG4gICAgICB7XG4gICAgICAgIGtleTogc2VjdGlvbkNoYW5nZURldGFpbHMsXG4gICAgICAgIHNob3dUaXRsZTogKCkgPT4gZmFsc2UsXG4gICAgICAgIGZpZWxkczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogY3RybENvbnRhaW5lclNlcU5yLFxuICAgICAgICAgICAgdHlwZTogKCkgPT4gU3B4SW5wdXRUeXBlRW51bS5oaWRkZW4sXG4gICAgICAgICAgICB2YWxpZGF0b3JzOiAoKSA9PiBbc3B4VmFsaWRhdG9yUmVxdWlyZWQoKV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBrZXk6IGN0cmxDb250YWluZXJOdW1iZXIsXG4gICAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgICBsYWJlbDogKCkgPT4gdGhpcy50ZXh0Q29udGFpbmVyTnVtYmVyLFxuICAgICAgICAgICAgcmVhZG9ubHk6ICgpID0+IHRydWUsXG4gICAgICAgICAgICB2YWxpZGF0b3JzOiAoKSA9PiBbc3B4VmFsaWRhdG9yUmVxdWlyZWQoKV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBrZXk6IGN0cmxDdXN0b21lcixcbiAgICAgICAgICAgIHR5cGU6ICgpID0+IFNweElucHV0VHlwZUVudW0udGV4dCxcbiAgICAgICAgICAgIGNhcGl0YWxpemU6ICgpID0+IHRydWUsXG4gICAgICAgICAgICByZWFkb25seTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHRDdXN0b21lcixcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6ICgpID0+IFtzcHhWYWxpZGF0b3JSZXF1aXJlZCgpXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogY3RybENvbnRhaW5lclR5cGUsXG4gICAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLmF1dG9jb21wbGV0ZSxcbiAgICAgICAgICAgIGxhYmVsOiAoKSA9PiB0aGlzLnRleHRDb250YWluZXJUeXBlLFxuICAgICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6ICgpID0+IFtzcHhWYWxpZGF0b3JSZXF1aXJlZCgpXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogY3RybFRvbnNUZXN0ZWQsXG4gICAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnJhZGlvLFxuICAgICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudGV4dFRvbnNUZXN0ZWQsXG4gICAgICAgICAgICBzaG93OiAoKSA9PiB0aGlzLnN1Z2dlc3Rpb25zPy5bY3RybFRvbnNUZXN0ZWRdICYmIHRoaXMuc3VnZ2VzdGlvbnM/LltjdHJsVG9uc1Rlc3RlZF0ubGVuZ3RoICYmIHRoaXMuc3VnZ2VzdGlvbnM/LltjdHJsVG9uc1Rlc3RlZF0ubGVuZ3RoID4gMCxcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6ICgpID0+IHRoaXMuc3VnZ2VzdGlvbnM/LltjdHJsVG9uc1Rlc3RlZF0gJiYgdGhpcy5zdWdnZXN0aW9ucz8uW2N0cmxUb25zVGVzdGVkXS5sZW5ndGggJiYgdGhpcy5zdWdnZXN0aW9ucz8uW2N0cmxUb25zVGVzdGVkXS5sZW5ndGggPiAwID8gW3NweFZhbGlkYXRvclJlcXVpcmVkKCldIDogW10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBrZXk6IGN0cmxMaWNlbnNlUGxhdGUsXG4gICAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLnRleHQsXG4gICAgICAgICAgICBsYWJlbDogKCkgPT4gdGhpcy50ZXh0TGljZW5zZVBsYXRlLFxuICAgICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGtleTogY3RybFVzZUNhdGVnb3JpZXMsXG4gICAgICAgICAgICB0eXBlOiAoKSA9PiBTcHhJbnB1dFR5cGVFbnVtLmhpZGRlbixcbiAgICAgICAgICAgIGNhcGl0YWxpemU6ICgpID0+IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBrZXk6IGN0cmxDYXRlZ29yeSxcbiAgICAgICAgICAgIHR5cGU6ICgpID0+IFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlLFxuICAgICAgICAgICAgbGFiZWw6ICgpID0+IHRoaXMudGV4dENhdGVnb3J5LFxuICAgICAgICAgICAgY2FwaXRhbGl6ZTogKCkgPT4gdHJ1ZSxcbiAgICAgICAgICAgIHNob3c6ICgpID0+IHZhbHVlUGFpclRvVmFsdWUodGhpcy5jdHJsVXNlQ2F0ZWdvcmllcz8udmFsdWUpLFxuICAgICAgICAgICAgdmFsaWRhdG9yczogKCkgPT4gdmFsdWVQYWlyVG9WYWx1ZSh0aGlzLmN0cmxVc2VDYXRlZ29yaWVzPy52YWx1ZSkgPyBbc3B4VmFsaWRhdG9yUmVxdWlyZWQoKV0gOiBbXSxcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICBdXG4gIH07XG5cbiAgZ2V0IGN0cmxDYXRlZ29yeSgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybENhdGVnb3J5KSBhcyBGb3JtQ29udHJvbDsgfVxuICBnZXQgY3RybEN1c3RvbWVyKCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldChjdHJsQ3VzdG9tZXIpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsQ29udGFpbmVyVHlwZSgpOiBGb3JtQ29udHJvbCB7IHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoY3RybENvbnRhaW5lclR5cGUpIGFzIEZvcm1Db250cm9sOyB9XG4gIGdldCBjdHJsTGljZW5zZVBsYXRlKCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwLmdldChjdHJsTGljZW5zZVBsYXRlKSBhcyBGb3JtQ29udHJvbDsgfVxuICBnZXQgY3RybFRvbnNUZXN0ZWQoKTogRm9ybUNvbnRyb2wgeyByZXR1cm4gdGhpcy5mb3JtR3JvdXA/LmdldChjdHJsVG9uc1Rlc3RlZCkgYXMgRm9ybUNvbnRyb2w7IH1cbiAgZ2V0IGN0cmxVc2VDYXRlZ29yaWVzKCk6IEZvcm1Db250cm9sIHsgcmV0dXJuIHRoaXMuZm9ybUdyb3VwPy5nZXQoY3RybFVzZUNhdGVnb3JpZXMpIGFzIEZvcm1Db250cm9sOyB9XG5cbiAgcHJpdmF0ZSBzdWJDb250YWluZXJUeXBlPzogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcikge1xuICB9XG5cbiAgY3JlYXRlRm9ybSgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiBTcHhGb3JtVmlld0NvbXBvbmVudC5jcmVhdGVGb3JtKHRoaXMuZm9ybUJ1aWxkZXIsIHRoaXMuZm9ybS5zZWN0aW9ucyk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvQ29udGFpbmVyVHlwZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3ViQ29udGFpbmVyVHlwZSkge1xuICAgICAgdGhpcy5zdWJDb250YWluZXJUeXBlLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmF3VmFsaWRhdG9ycyhmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpIHtcbiAgICByZXR1cm4gKGZvcm1Db250cm9sIGFzIGFueSkuX3Jhd1ZhbGlkYXRvcnM7XG4gIH1cblxuICBvbkJsdXIoZGF0YTogeyBmaWVsZDogU3B4Rm9ybUZpZWxkSSwgdmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55PiB9KSB7XG4gICAgaWYgKGRhdGEuZmllbGQua2V5ID09PSBjdHJsQ2F0ZWdvcnkpIHtcbiAgICAgIHRoaXMuc3B4Qmx1ckNhdGVnb3J5LmVtaXQoZGF0YS52YWx1ZVBhaXIpO1xuICAgIH1cbiAgICBpZiAoZGF0YS5maWVsZC5rZXkgPT09IGN0cmxDb250YWluZXJUeXBlKSB7XG4gICAgICB0aGlzLnNweEJsdXJDb250YWluZXJUeXBlLmVtaXQoZGF0YS52YWx1ZVBhaXIpO1xuICAgIH1cbiAgfVxuXG4gIG9uU2VhcmNoKGRhdGE6IHsgZmllbGQ6IFNweEZvcm1GaWVsZEksIHZhbHVlUGFpcjogU3B4VmFsdWVQYWlyPGFueT4gfSkge1xuICAgIGlmIChkYXRhLmZpZWxkLmtleSA9PT0gY3RybENhdGVnb3J5KSB7XG4gICAgICB0aGlzLnNweFNlYXJjaENhdGVnb3J5LmVtaXQoZGF0YS52YWx1ZVBhaXIpO1xuICAgIH1cbiAgICBpZiAoZGF0YS5maWVsZC5rZXkgPT09IGN0cmxDb250YWluZXJUeXBlKSB7XG4gICAgICB0aGlzLnNweFNlYXJjaENvbnRhaW5lclR5cGUuZW1pdChkYXRhLnZhbHVlUGFpcik7XG4gICAgfVxuICAgIGlmIChkYXRhLmZpZWxkLmtleSA9PT0gY3RybFRvbnNUZXN0ZWQpIHtcbiAgICAgIHRoaXMuc3B4U2VhcmNoVG9uc1Rlc3RlZC5lbWl0KGRhdGEudmFsdWVQYWlyKTtcbiAgICB9XG4gIH1cblxuICBvblN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Ym1pdC5lbWl0KHtcbiAgICAgIGNhdGVnb3J5OiB2YWx1ZVBhaXJUb1ZhbHVlKHRoaXMuY3RybFVzZUNhdGVnb3JpZXMudmFsdWUpID8gdGhpcy5jdHJsQ2F0ZWdvcnkudmFsdWUgOiBudWxsLFxuICAgICAgY29udGFpbmVyVHlwZTogdGhpcy5jdHJsQ29udGFpbmVyVHlwZS52YWx1ZSxcbiAgICAgIGxpY2Vuc2VQbGF0ZTogdGhpcy5jdHJsTGljZW5zZVBsYXRlLnZhbHVlLFxuICAgICAgdG9uc1Rlc3RlZDogdGhpcy5jdHJsVG9uc1Rlc3RlZC52YWx1ZSxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0NvbnRhaW5lclR5cGUoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJDb250YWluZXJUeXBlID0gdGhpcy5jdHJsQ29udGFpbmVyVHlwZS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlUGFpciA9PiB7XG4gICAgICB0aGlzLmN0cmxUb25zVGVzdGVkLnNldFZhbHVlKHsgdmFsdWU6IG51bGwgfSk7XG4gICAgICB0aGlzLnNweFNlYXJjaFRvbnNUZXN0ZWQuZW1pdCh2YWx1ZVBhaXIpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIGNsYXNzPVwibWF4LXctbGcgbXgtYXV0byBmbGV4IGZsZXgtY29sIGdhcC0zXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cbiAgPHNweC1mb3JtLXZpZXdcbiAgICBbc3B4Rm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgW3NweEZvcm1dPVwiZm9ybVwiXG4gICAgW3NweFN1Z2dlc3Rpb25zXT1cInN1Z2dlc3Rpb25zXCJcbiAgICAoc3B4Qmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gICAgKHNweFNlYXJjaCk9XCJvblNlYXJjaCgkZXZlbnQpXCI+XG4gIDwvc3B4LWZvcm0tdmlldz5cbjwvZm9ybT4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './src/spx-channel-indicator.component';
2
+ export * from './src/spx-welcome.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbm5lbC1zZWxlY3Rpb24vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9zcHgtY2hhbm5lbC1pbmRpY2F0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3NweC13ZWxjb21lLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1jaGFubmVsLXNlbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtY2hhbm5lbC1zZWxlY3Rpb24vc29mdHBhay1jb21wb25lbnRzLXNweC1jaGFubmVsLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19