@softpak/components 18.6.14 → 18.6.16

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 (189) 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 +3 -3
  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 +31 -85
  51. package/spx-alert/spx-alert.component.d.ts +4 -4
  52. package/spx-inputs/spx-input-box.component.d.ts +4 -4
  53. package/spx-inputs/spx-input-time-modal.component.d.ts +1 -1
  54. package/tailwind.css +1 -1
  55. package/esm2022/placeholder.mjs +0 -2
  56. package/esm2022/public_api.mjs +0 -2
  57. package/esm2022/softpak-components.mjs +0 -5
  58. package/esm2022/spx-alert/public-api.mjs +0 -3
  59. package/esm2022/spx-alert/softpak-components-spx-alert.mjs +0 -5
  60. package/esm2022/spx-alert/spx-alert.component.mjs +0 -203
  61. package/esm2022/spx-alert/spx-alert.interface.mjs +0 -3
  62. package/esm2022/spx-app-configuration/public-api.mjs +0 -8
  63. package/esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs +0 -5
  64. package/esm2022/spx-app-configuration/spx-app-alert.interface.mjs +0 -2
  65. package/esm2022/spx-app-configuration/spx-app-bundle-set.interface.mjs +0 -2
  66. package/esm2022/spx-app-configuration/spx-app-channel-type.enum.mjs +0 -8
  67. package/esm2022/spx-app-configuration/spx-app-channel.interface.mjs +0 -2
  68. package/esm2022/spx-app-configuration/spx-app-config.interface.mjs +0 -2
  69. package/esm2022/spx-app-configuration/spx-app-id.enum.mjs +0 -8
  70. package/esm2022/spx-app-configuration/spx-app-lang.enum.mjs +0 -6
  71. package/esm2022/spx-app-configuration/spx-app-release-note.interface.mjs +0 -2
  72. package/esm2022/spx-app-expiry/public-api.mjs +0 -6
  73. package/esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs +0 -5
  74. package/esm2022/spx-app-expiry/spx-app-expiry.component.mjs +0 -107
  75. package/esm2022/spx-app-expiry/spx-app-expiry.interface.mjs +0 -2
  76. package/esm2022/spx-app-expiry/spx-check-expiry-final-warning.interface.mjs +0 -5
  77. package/esm2022/spx-app-expiry/spx-check-expiry-happened.interface.mjs +0 -5
  78. package/esm2022/spx-app-expiry/spx-check-expiry-warning.interface.mjs +0 -5
  79. package/esm2022/spx-app-update/public-api.mjs +0 -2
  80. package/esm2022/spx-app-update/softpak-components-spx-app-update.mjs +0 -5
  81. package/esm2022/spx-app-update/spx-app-update.component.mjs +0 -320
  82. package/esm2022/spx-button/public-api.mjs +0 -2
  83. package/esm2022/spx-button/softpak-components-spx-button.mjs +0 -5
  84. package/esm2022/spx-button/spx-button.component.mjs +0 -142
  85. package/esm2022/spx-capitalize/public-api.mjs +0 -2
  86. package/esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs +0 -5
  87. package/esm2022/spx-capitalize/spx-capitalize.pipe.mjs +0 -20
  88. package/esm2022/spx-card/public-api.mjs +0 -5
  89. package/esm2022/spx-card/softpak-components-spx-card.mjs +0 -5
  90. package/esm2022/spx-card/spx-card-grid.component.mjs +0 -46
  91. package/esm2022/spx-card/spx-card-item.component.mjs +0 -117
  92. package/esm2022/spx-card/spx-card-line.component.mjs +0 -124
  93. package/esm2022/spx-card/spx-card.component.mjs +0 -96
  94. package/esm2022/spx-change-details/public-api.mjs +0 -2
  95. package/esm2022/spx-change-details/softpak-components-spx-change-details.mjs +0 -5
  96. package/esm2022/spx-change-details/spx-change-details-value.interface.mjs +0 -2
  97. package/esm2022/spx-change-details/spx-change-details.component.mjs +0 -197
  98. package/esm2022/spx-channel-selection/public-api.mjs +0 -3
  99. package/esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs +0 -5
  100. package/esm2022/spx-channel-selection/src/spx-channel-indicator.component.mjs +0 -45
  101. package/esm2022/spx-channel-selection/src/spx-welcome.component.mjs +0 -132
  102. package/esm2022/spx-check-digit/public-api.mjs +0 -2
  103. package/esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs +0 -5
  104. package/esm2022/spx-check-digit/spx-check-digit.component.mjs +0 -91
  105. package/esm2022/spx-form-section/public-api.mjs +0 -2
  106. package/esm2022/spx-form-section/softpak-components-spx-form-section.mjs +0 -5
  107. package/esm2022/spx-form-section/spx-form-section.component.mjs +0 -42
  108. package/esm2022/spx-form-view/public-api.mjs +0 -7
  109. package/esm2022/spx-form-view/softpak-components-spx-form-view.mjs +0 -5
  110. package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +0 -117
  111. package/esm2022/spx-form-view/spx-form-button-type.enum.mjs +0 -6
  112. package/esm2022/spx-form-view/spx-form-button.interface.mjs +0 -2
  113. package/esm2022/spx-form-view/spx-form-field.interface.mjs +0 -2
  114. package/esm2022/spx-form-view/spx-form-section.interface.mjs +0 -2
  115. package/esm2022/spx-form-view/spx-form-view.component.mjs +0 -297
  116. package/esm2022/spx-form-view/spx-form.interface.mjs +0 -2
  117. package/esm2022/spx-helpers/calc-check-digit.function.mjs +0 -21
  118. package/esm2022/spx-helpers/input-alert.interface.mjs +0 -2
  119. package/esm2022/spx-helpers/public-api.mjs +0 -5
  120. package/esm2022/spx-helpers/softpak-components-spx-helpers.mjs +0 -5
  121. package/esm2022/spx-helpers/spx-severity.enum.mjs +0 -10
  122. package/esm2022/spx-helpers/value-pair-to-value.function.mjs +0 -7
  123. package/esm2022/spx-inputs/public-api.mjs +0 -6
  124. package/esm2022/spx-inputs/softpak-components-spx-inputs.mjs +0 -5
  125. package/esm2022/spx-inputs/spx-dropdown.component.mjs +0 -93
  126. package/esm2022/spx-inputs/spx-input-box.component.mjs +0 -303
  127. package/esm2022/spx-inputs/spx-input-date/spx-input-date.component.mjs +0 -194
  128. package/esm2022/spx-inputs/spx-input-float.component.mjs +0 -157
  129. package/esm2022/spx-inputs/spx-input-number.component.mjs +0 -87
  130. package/esm2022/spx-inputs/spx-input-radio.component.mjs +0 -129
  131. package/esm2022/spx-inputs/spx-input-text.component.mjs +0 -160
  132. package/esm2022/spx-inputs/spx-input-time-modal.component.mjs +0 -129
  133. package/esm2022/spx-inputs/spx-input-time.component.mjs +0 -163
  134. package/esm2022/spx-inputs/spx-input-type.enum.mjs +0 -17
  135. package/esm2022/spx-inputs/spx-input.component.mjs +0 -465
  136. package/esm2022/spx-inputs/spx-value-interface.mjs +0 -2
  137. package/esm2022/spx-navigation/public-api.mjs +0 -5
  138. package/esm2022/spx-navigation/softpak-components-spx-navigation.mjs +0 -5
  139. package/esm2022/spx-navigation/spx-home-tile.component.mjs +0 -71
  140. package/esm2022/spx-navigation/spx-home-tiles.component.mjs +0 -24
  141. package/esm2022/spx-navigation/spx-navigation-item.interface.mjs +0 -2
  142. package/esm2022/spx-navigation/spx-navigation.component.mjs +0 -47
  143. package/esm2022/spx-number-check/public-api.mjs +0 -2
  144. package/esm2022/spx-number-check/softpak-components-spx-number-check.mjs +0 -5
  145. package/esm2022/spx-number-check/spx-number-check.component.mjs +0 -265
  146. package/esm2022/spx-pagination/public-api.mjs +0 -2
  147. package/esm2022/spx-pagination/softpak-components-spx-pagination.mjs +0 -5
  148. package/esm2022/spx-pagination/spx-pagination.component.mjs +0 -44
  149. package/esm2022/spx-patch/patch-check.function.mjs +0 -9
  150. package/esm2022/spx-patch/public-api.mjs +0 -4
  151. package/esm2022/spx-patch/release-check.function.mjs +0 -14
  152. package/esm2022/spx-patch/softpak-components-spx-patch.mjs +0 -5
  153. package/esm2022/spx-patch/spx-patch.component.mjs +0 -54
  154. package/esm2022/spx-progress-bar/public-api.mjs +0 -2
  155. package/esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs +0 -5
  156. package/esm2022/spx-progress-bar/spx-progress-bar.component.mjs +0 -29
  157. package/esm2022/spx-spinner/public-api.mjs +0 -2
  158. package/esm2022/spx-spinner/softpak-components-spx-spinner.mjs +0 -5
  159. package/esm2022/spx-spinner/spx-spinner.component.mjs +0 -160
  160. package/esm2022/spx-stock-info/public-api.mjs +0 -3
  161. package/esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs +0 -5
  162. package/esm2022/spx-stock-info/spx-stock-info-value.interface.mjs +0 -2
  163. package/esm2022/spx-stock-info/spx-stock-info.component.mjs +0 -324
  164. package/esm2022/spx-storage/public-api.mjs +0 -3
  165. package/esm2022/spx-storage/softpak-components-spx-storage.mjs +0 -5
  166. package/esm2022/spx-storage/src/spx-storage-key.enum.mjs +0 -13
  167. package/esm2022/spx-storage/src/spx-storage.class.mjs +0 -45
  168. package/esm2022/spx-suggestion/public-api.mjs +0 -2
  169. package/esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs +0 -5
  170. package/esm2022/spx-suggestion/spx-suggestion.component.mjs +0 -61
  171. package/esm2022/spx-toaster/public-api.mjs +0 -4
  172. package/esm2022/spx-toaster/softpak-components-spx-toaster.mjs +0 -5
  173. package/esm2022/spx-toaster/src/spx-toaster-autoclose-speed.mjs +0 -23
  174. package/esm2022/spx-toaster/src/spx-toaster-message.interface.mjs +0 -3
  175. package/esm2022/spx-toaster/src/spx-toaster.component.mjs +0 -168
  176. package/esm2022/spx-update/public-api.mjs +0 -3
  177. package/esm2022/spx-update/softpak-components-spx-update.mjs +0 -5
  178. package/esm2022/spx-update/src/spx-update-info.component.mjs +0 -86
  179. package/esm2022/spx-update/src/spx-update-progress.component.mjs +0 -46
  180. package/esm2022/spx-validation/max.validator.mjs +0 -17
  181. package/esm2022/spx-validation/maxlength.validator.mjs +0 -20
  182. package/esm2022/spx-validation/min.validator.mjs +0 -17
  183. package/esm2022/spx-validation/minlength.validator.mjs +0 -20
  184. package/esm2022/spx-validation/pattern.validator.mjs +0 -12
  185. package/esm2022/spx-validation/public-api.mjs +0 -9
  186. package/esm2022/spx-validation/required.validator.mjs +0 -12
  187. package/esm2022/spx-validation/softpak-components-spx-validation.mjs +0 -5
  188. package/esm2022/spx-validation/spx-validate-control.component.mjs +0 -65
  189. package/esm2022/spx-validation/year-and-month.validator.mjs +0 -42
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzL3NvZnRwYWstY29tcG9uZW50cy1zcHgtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,10 +0,0 @@
1
- export var SpxSeverityEnum;
2
- (function (SpxSeverityEnum) {
3
- SpxSeverityEnum["error"] = "error";
4
- SpxSeverityEnum["info"] = "info";
5
- SpxSeverityEnum["success"] = "success";
6
- SpxSeverityEnum["unknown"] = "unknown";
7
- SpxSeverityEnum["warning"] = "warning";
8
- SpxSeverityEnum["primary"] = "primary";
9
- })(SpxSeverityEnum || (SpxSeverityEnum = {}));
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXNldmVyaXR5LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWhlbHBlcnMvc3B4LXNldmVyaXR5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFPWDtBQVBELFdBQVksZUFBZTtJQUN6QixrQ0FBZSxDQUFBO0lBQ2YsZ0NBQWEsQ0FBQTtJQUNiLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFQVyxlQUFlLEtBQWYsZUFBZSxRQU8xQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNweFNldmVyaXR5RW51bSB7XHJcbiAgZXJyb3IgPSAnZXJyb3InLFxyXG4gIGluZm8gPSAnaW5mbycsXHJcbiAgc3VjY2VzcyA9ICdzdWNjZXNzJyxcclxuICB1bmtub3duID0gJ3Vua25vd24nLFxyXG4gIHdhcm5pbmcgPSAnd2FybmluZycsXHJcbiAgcHJpbWFyeSA9ICdwcmltYXJ5JyxcclxufVxyXG4iXX0=
@@ -1,7 +0,0 @@
1
- export const valuePairToValue = (pair) => {
2
- if (pair === null || (typeof pair === 'object' && pair.value === undefined)) {
3
- return null;
4
- }
5
- return pair?.value || pair?.value === false || pair?.value === null || pair?.value === '' || pair?.value === 0 ? pair?.value : pair;
6
- };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtcGFpci10by12YWx1ZS5mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycy92YWx1ZS1wYWlyLXRvLXZhbHVlLmZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBUyxFQUFFLEVBQUU7SUFDMUMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssRUFBRSxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHZhbHVlUGFpclRvVmFsdWUgPSAocGFpcjogYW55KSA9PiB7XHJcbiAgICBpZiAocGFpciA9PT0gbnVsbCB8fCAodHlwZW9mIHBhaXIgPT09ICdvYmplY3QnICYmIHBhaXIudmFsdWUgPT09IHVuZGVmaW5lZCkpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiBwYWlyPy52YWx1ZSB8fCBwYWlyPy52YWx1ZSA9PT0gZmFsc2UgfHwgcGFpcj8udmFsdWUgPT09IG51bGwgfHwgcGFpcj8udmFsdWUgPT09ICcnIHx8IHBhaXI/LnZhbHVlID09PSAwID8gcGFpcj8udmFsdWUgOiBwYWlyO1xyXG59O1xyXG4iXX0=
@@ -1,6 +0,0 @@
1
- export * from './spx-value-interface';
2
- export * from './spx-input-box.component';
3
- export * from './spx-input-text.component';
4
- export * from './spx-input.component';
5
- export * from './spx-input-type.enum';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zcHgtaW5wdXQtYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3B4LWlucHV0LXRleHQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zcHgtaW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zcHgtaW5wdXQtdHlwZS5lbnVtJztcclxuIl19
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1pbnB1dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zb2Z0cGFrLWNvbXBvbmVudHMtc3B4LWlucHV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,93 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { SpxButtonComponent } from '@softpak/components/spx-button';
3
- import { fromEvent } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- export class SpxDropdownComponent {
6
- constructor() {
7
- this.focusPosition = 0;
8
- this.spxSuggestions = [];
9
- this.spxSelect = new EventEmitter();
10
- }
11
- ngOnInit() {
12
- this.listenToKeyUp();
13
- }
14
- ngOnChanges(changes) {
15
- this.focusPosition = 0;
16
- }
17
- ngOnDestroy() {
18
- this.subscriptionKeyUp?.unsubscribe();
19
- }
20
- handleSuggestionClick(valuePair) {
21
- this.select(valuePair);
22
- }
23
- listenToKeyUp() {
24
- this.subscriptionKeyUp = fromEvent(window, 'keyup').subscribe((event) => {
25
- if (event.key === 'ArrowUp' && this.focusPosition > 0) {
26
- this.focusPosition = this.focusPosition - 1;
27
- event.preventDefault();
28
- }
29
- if (event.key === 'ArrowDown' && this.focusPosition < this.spxSuggestions.length - 1) {
30
- this.focusPosition = this.focusPosition + 1;
31
- event.preventDefault();
32
- }
33
- if (event.key === 'Enter' && this.spxSuggestions.length > 0) {
34
- this.select(this.spxSuggestions.at(this.focusPosition));
35
- event.preventDefault();
36
- }
37
- });
38
- }
39
- select(valuePair) {
40
- this.focusPosition = 0;
41
- this.spxSelect.emit(valuePair);
42
- }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxDropdownComponent, isStandalone: true, selector: "spx-dropdown", inputs: { spxSuggestions: "spxSuggestions" }, outputs: { spxSelect: "spxSelect" }, usesOnChanges: true, ngImport: i0, template: `<div class="relative text-black">
45
- <div
46
- class="absolute bg-gray-100 left-0 right-0 z-20">
47
- @for (valuePair of this.spxSuggestions; track valuePair; let i = $index) {
48
- <button
49
- class="text-black block w-full p-2 border border-gray-200 rounded-lg shadow hover:bg-gray-200 flex items-center text-left"
50
- [class.bg-gray-100]="i === this.focusPosition"
51
- [class.bg-white]="i !== this.focusPosition"
52
- (click)="this.handleSuggestionClick(valuePair)"
53
- [attr.tabindex]="-1"
54
- [attr.type]="'button'">
55
- <div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
56
- <spx-button (spxClick)="this.handleSuggestionClick(valuePair)" [spxType]="'button'" [spxTabIndex]="-1">Select</spx-button>
57
- </button>
58
- }
59
- </div>
60
- </div>`, isInline: true, dependencies: [{ kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }] }); }
61
- }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxDropdownComponent, decorators: [{
63
- type: Component,
64
- args: [{
65
- selector: 'spx-dropdown',
66
- standalone: true,
67
- imports: [
68
- SpxButtonComponent
69
- ],
70
- template: `<div class="relative text-black">
71
- <div
72
- class="absolute bg-gray-100 left-0 right-0 z-20">
73
- @for (valuePair of this.spxSuggestions; track valuePair; let i = $index) {
74
- <button
75
- class="text-black block w-full p-2 border border-gray-200 rounded-lg shadow hover:bg-gray-200 flex items-center text-left"
76
- [class.bg-gray-100]="i === this.focusPosition"
77
- [class.bg-white]="i !== this.focusPosition"
78
- (click)="this.handleSuggestionClick(valuePair)"
79
- [attr.tabindex]="-1"
80
- [attr.type]="'button'">
81
- <div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
82
- <spx-button (spxClick)="this.handleSuggestionClick(valuePair)" [spxType]="'button'" [spxTabIndex]="-1">Select</spx-button>
83
- </button>
84
- }
85
- </div>
86
- </div>`,
87
- }]
88
- }], propDecorators: { spxSuggestions: [{
89
- type: Input
90
- }], spxSelect: [{
91
- type: Output
92
- }] } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1kcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXBILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQTBCL0MsTUFBTSxPQUFPLG9CQUFvQjtJQXhCakM7UUF5Qlksa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbkIsbUJBQWMsR0FBOEMsRUFBRSxDQUFDO1FBQzlELGNBQVMsR0FBb0MsSUFBSSxZQUFZLEVBQXFCLENBQUM7S0F3QzlGO0lBckNDLFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQscUJBQXFCLENBQUMsU0FBa0Q7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN0RSxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO2dCQUM1QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsQ0FBQztZQUNELElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hHLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1lBQ0QsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBRSxDQUFDLENBQUM7Z0JBQ3pELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sTUFBTSxDQUFDLFNBQWtEO1FBQy9ELElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7K0dBMUNVLG9CQUFvQjttR0FBcEIsb0JBQW9CLGdMQWxCckI7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnQkgsNERBbEJMLGtCQUFrQjs7NEZBb0JULG9CQUFvQjtrQkF4QmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1Asa0JBQWtCO3FCQUNyQjtvQkFDQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnQkg7aUJBQ1I7OEJBR1UsY0FBYztzQkFBdEIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNweFZhbHVlUGFpciB9IGZyb20gJy4vc3B4LXZhbHVlLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IFNweEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbic7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NweC1kcm9wZG93bicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBTcHhCdXR0b25Db21wb25lbnRcclxuXSxcclxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSB0ZXh0LWJsYWNrXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgYmctZ3JheS0xMDAgbGVmdC0wIHJpZ2h0LTAgei0yMFwiPlxyXG4gICAgICBAZm9yICh2YWx1ZVBhaXIgb2YgdGhpcy5zcHhTdWdnZXN0aW9uczsgdHJhY2sgdmFsdWVQYWlyOyBsZXQgaSA9ICRpbmRleCkge1xyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgIGNsYXNzPVwidGV4dC1ibGFjayBibG9jayB3LWZ1bGwgcC0yIGJvcmRlciBib3JkZXItZ3JheS0yMDAgcm91bmRlZC1sZyBzaGFkb3cgaG92ZXI6YmctZ3JheS0yMDAgZmxleCBpdGVtcy1jZW50ZXIgdGV4dC1sZWZ0XCJcclxuICAgICAgICAgIFtjbGFzcy5iZy1ncmF5LTEwMF09XCJpID09PSB0aGlzLmZvY3VzUG9zaXRpb25cIlxyXG4gICAgICAgICAgW2NsYXNzLmJnLXdoaXRlXT1cImkgIT09IHRoaXMuZm9jdXNQb3NpdGlvblwiXHJcbiAgICAgICAgICAoY2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiXHJcbiAgICAgICAgICBbYXR0ci50YWJpbmRleF09XCItMVwiXHJcbiAgICAgICAgICBbYXR0ci50eXBlXT1cIididXR0b24nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIHAtMSBmb250LWJvbGQgdGV4dC1sZ1wiPnt7dmFsdWVQYWlyPy5kZXNjcmlwdGlvbn19PC9kaXY+XHJcbiAgICAgICAgICA8c3B4LWJ1dHRvbiAoc3B4Q2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiIFtzcHhUeXBlXT1cIididXR0b24nXCIgW3NweFRhYkluZGV4XT1cIi0xXCI+U2VsZWN0PC9zcHgtYnV0dG9uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3B4RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwcm90ZWN0ZWQgZm9jdXNQb3NpdGlvbiA9IDA7XHJcbiAgQElucHV0KCkgc3B4U3VnZ2VzdGlvbnM6IFNweFZhbHVlUGFpcjxib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nPltdID0gW107XHJcbiAgQE91dHB1dCgpIHNweFNlbGVjdDogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XHJcbiAgc3Vic2NyaXB0aW9uS2V5VXA/OiBTdWJzY3JpcHRpb247XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5saXN0ZW5Ub0tleVVwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbktleVVwPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlUGFpcjogU3B4VmFsdWVQYWlyPHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4+KSB7XHJcbiAgICB0aGlzLnNlbGVjdCh2YWx1ZVBhaXIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsaXN0ZW5Ub0tleVVwKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcCA9IGZyb21FdmVudCh3aW5kb3csICdrZXl1cCcpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdBcnJvd1VwJyAmJiB0aGlzLmZvY3VzUG9zaXRpb24gPiAwKSB7XHJcbiAgICAgICAgdGhpcy5mb2N1c1Bvc2l0aW9uID0gdGhpcy5mb2N1c1Bvc2l0aW9uIC0gMTtcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICgoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkua2V5ID09PSAnQXJyb3dEb3duJyAmJiB0aGlzLmZvY3VzUG9zaXRpb24gPCB0aGlzLnNweFN1Z2dlc3Rpb25zLmxlbmd0aCAtIDEpIHtcclxuICAgICAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSB0aGlzLmZvY3VzUG9zaXRpb24gKyAxO1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdFbnRlcicgJiYgdGhpcy5zcHhTdWdnZXN0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3QodGhpcy5zcHhTdWdnZXN0aW9ucy5hdCh0aGlzLmZvY3VzUG9zaXRpb24pISk7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNlbGVjdCh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPik6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c1Bvc2l0aW9uID0gMDtcclxuICAgIHRoaXMuc3B4U2VsZWN0LmVtaXQodmFsdWVQYWlyKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,303 +0,0 @@
1
- import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
- import { SpxButtonComponent } from '@softpak/components/spx-button';
3
- import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
4
- import { faEdit, faQuestion, faSearch, faTimes } from '@fortawesome/free-solid-svg-icons';
5
- import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@fortawesome/angular-fontawesome";
8
- export class SpxInputBoxComponent {
9
- handleFocusIn(ev) {
10
- this.emitFocusIn();
11
- }
12
- handleFocusOut(ev) {
13
- const thisEl = this.elRef.nativeElement;
14
- const relatedElement = ev.relatedTarget;
15
- if (!relatedElement || !thisEl.contains(relatedElement)) {
16
- this.emitFocusOut();
17
- }
18
- }
19
- handleWindowClick(ev) {
20
- if (ev.composedPath().includes(this.elRef.nativeElement)) {
21
- this.emitFocusIn();
22
- }
23
- else {
24
- this.emitFocusOut();
25
- }
26
- }
27
- onClear() {
28
- this.spxClear.emit();
29
- }
30
- onSearch() {
31
- this.spxSearch.emit();
32
- }
33
- onEdit() {
34
- this.spxEdit.emit();
35
- }
36
- onHelp() {
37
- this.spxHelp.emit();
38
- }
39
- constructor(elRef) {
40
- this.elRef = elRef;
41
- this.faEdit = faEdit;
42
- this.faSearch = faSearch;
43
- this.faQuestion = faQuestion;
44
- this.faTimes = faTimes;
45
- this.spxSeverityEnum = SpxSeverityEnum;
46
- this.spxFocused = false;
47
- this.spxReadonly = false;
48
- this.spxShowClear = true;
49
- this.spxShowLabel = true;
50
- this.spxClear = new EventEmitter();
51
- this.spxSearch = new EventEmitter();
52
- this.spxFocus = new EventEmitter();
53
- this.spxFocusOut = new EventEmitter();
54
- this.spxEdit = new EventEmitter();
55
- this.spxHelp = new EventEmitter();
56
- }
57
- emitFocusIn() {
58
- if (!this.spxFocused) {
59
- this.spxFocus.emit();
60
- }
61
- }
62
- emitFocusOut() {
63
- if (this.spxFocused) {
64
- this.spxFocusOut.emit();
65
- }
66
- }
67
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputBoxComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SpxInputBoxComponent, isStandalone: true, selector: "spx-input-box", inputs: { spxCompact: "spxCompact", spxFocused: "spxFocused", spxLabel: "spxLabel", spxReadonly: "spxReadonly", spxRequired: "spxRequired", spxShowClear: "spxShowClear", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxShowLabel: "spxShowLabel", spxShowSearch: "spxShowSearch", spxAlert: "spxAlert", spxShowValidationMessages: "spxShowValidationMessages", spxValue: "spxValue" }, outputs: { spxClear: "spxClear", spxSearch: "spxSearch", spxFocus: "spxFocus", spxFocusOut: "spxFocusOut", spxEdit: "spxEdit", spxHelp: "spxHelp" }, host: { listeners: { "focusin": "handleFocusIn($event)", "focusout": "handleFocusOut($event)", "document:click": "handleWindowClick($event)" } }, ngImport: i0, template: `<div class="flex rounded w-full gap-3"
69
- [class.rounded-none]="this.spxShowValidationMessages"
70
- [class.rounded-t]="this.spxShowValidationMessages"
71
- [class.outline-none]="this.spxFocused && !this.spxReadonly"
72
- [class.ring-2]="this.spxFocused && !this.spxReadonly"
73
- [class.ring-offset-2]="this.spxFocused && !this.spxReadonly"
74
- [class.ring-blue-500]="this.spxFocused && !this.spxReadonly"
75
- [class.bg-white]="!this.spxReadonly"
76
- [class.bg-gray-300]="this.spxReadonly"
77
- [class.cursor-not-allowed]="this.spxReadonly">
78
- <div class="flex-auto p-3"
79
- [class.p-0]="this.spxCompact"
80
- [class.flex]="this.spxCompact"
81
- [class.items-center]="this.spxCompact">
82
- @if (this.spxShowLabel) {
83
- <div class="font-bold text-sm mb-1 text-gray-800"
84
- [class.mb-0]="this.spxCompact"
85
- [class.px-3]="this.spxCompact">
86
- {{this.spxLabel}} @if (spxRequired) {
87
- <span class="text-red-800">*</span>
88
- }
89
- </div>
90
- }
91
- <ng-content select="[controls]"></ng-content>
92
- </div>
93
- <div class="flex flex-none gap-1 p-1">
94
- @if (this.spxShowEdit) {
95
- <spx-button
96
- (spxClick)="onEdit()"
97
- [spxFullHeight]="true"
98
- [spxSize]="'xl'"
99
- [spxType]="'button'">
100
- <fa-icon [icon]="faEdit" class="block text-xl"></fa-icon>
101
- </spx-button>
102
- }
103
- @if (this.spxShowHelp) {
104
- <spx-button
105
- (spxClick)="onHelp()"
106
- [spxFullHeight]="true"
107
- [spxDisabled]="this.spxReadonly"
108
- [spxSize]="'xl'"
109
- [spxTabIndex]="-1"
110
- [spxType]="'button'">
111
- <fa-icon [icon]="faQuestion" class="block text-xl"></fa-icon>
112
- </spx-button>
113
- }
114
- @if (this.spxShowSearch) {
115
- <spx-button
116
- (spxClick)="onSearch()"
117
- [spxFullHeight]="true"
118
- [spxDisabled]="this.spxReadonly"
119
- [spxSize]="'xl'"
120
- [spxTabIndex]="-1"
121
- [spxType]="'button'">
122
- <fa-icon [icon]="faSearch" class="block text-xl"></fa-icon>
123
- </spx-button>
124
- }
125
- @if (this.spxShowClear) {
126
- <spx-button
127
- (spxClick)="onClear()"
128
- [spxDisabled]="this.spxReadonly || !this.spxValue?.value"
129
- [spxFullHeight]="true"
130
- [spxSize]="'xl'"
131
- [spxTabIndex]="-1"
132
- [spxType]="'button'">
133
- <fa-icon [icon]="faTimes" class="block text-xl"></fa-icon>
134
- </spx-button>
135
- }
136
- </div>
137
- </div>
138
- @if (this.spxShowValidationMessages) {
139
- <div class="bg-red-600 rounded-b text-white p-3">
140
- <ng-content select="[validation-messages]"></ng-content>
141
- </div>
142
- }
143
- @else if(this.spxAlert) {
144
- <div [class.bg-red-700]="this.spxAlert.severity === spxSeverityEnum.error"
145
- [class.bg-green-700]="this.spxAlert.severity === spxSeverityEnum.success"
146
- [class.bg-blue-700]="this.spxAlert.severity === spxSeverityEnum.info"
147
- [class.bg-gray-400]="this.spxAlert.severity === spxSeverityEnum.unknown"
148
- [class.bg-amber-700]="this.spxAlert.severity === spxSeverityEnum.warning"
149
- class="rounded-b text-white p-3">
150
- <div>
151
- {{spxAlert.text}}
152
- </div>
153
- </div>
154
- }
155
- `, isInline: true, dependencies: [{ kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { 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"] }] }); }
156
- }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpxInputBoxComponent, decorators: [{
158
- type: Component,
159
- args: [{
160
- selector: 'spx-input-box',
161
- standalone: true,
162
- imports: [
163
- SpxButtonComponent,
164
- FontAwesomeModule
165
- ],
166
- template: `<div class="flex rounded w-full gap-3"
167
- [class.rounded-none]="this.spxShowValidationMessages"
168
- [class.rounded-t]="this.spxShowValidationMessages"
169
- [class.outline-none]="this.spxFocused && !this.spxReadonly"
170
- [class.ring-2]="this.spxFocused && !this.spxReadonly"
171
- [class.ring-offset-2]="this.spxFocused && !this.spxReadonly"
172
- [class.ring-blue-500]="this.spxFocused && !this.spxReadonly"
173
- [class.bg-white]="!this.spxReadonly"
174
- [class.bg-gray-300]="this.spxReadonly"
175
- [class.cursor-not-allowed]="this.spxReadonly">
176
- <div class="flex-auto p-3"
177
- [class.p-0]="this.spxCompact"
178
- [class.flex]="this.spxCompact"
179
- [class.items-center]="this.spxCompact">
180
- @if (this.spxShowLabel) {
181
- <div class="font-bold text-sm mb-1 text-gray-800"
182
- [class.mb-0]="this.spxCompact"
183
- [class.px-3]="this.spxCompact">
184
- {{this.spxLabel}} @if (spxRequired) {
185
- <span class="text-red-800">*</span>
186
- }
187
- </div>
188
- }
189
- <ng-content select="[controls]"></ng-content>
190
- </div>
191
- <div class="flex flex-none gap-1 p-1">
192
- @if (this.spxShowEdit) {
193
- <spx-button
194
- (spxClick)="onEdit()"
195
- [spxFullHeight]="true"
196
- [spxSize]="'xl'"
197
- [spxType]="'button'">
198
- <fa-icon [icon]="faEdit" class="block text-xl"></fa-icon>
199
- </spx-button>
200
- }
201
- @if (this.spxShowHelp) {
202
- <spx-button
203
- (spxClick)="onHelp()"
204
- [spxFullHeight]="true"
205
- [spxDisabled]="this.spxReadonly"
206
- [spxSize]="'xl'"
207
- [spxTabIndex]="-1"
208
- [spxType]="'button'">
209
- <fa-icon [icon]="faQuestion" class="block text-xl"></fa-icon>
210
- </spx-button>
211
- }
212
- @if (this.spxShowSearch) {
213
- <spx-button
214
- (spxClick)="onSearch()"
215
- [spxFullHeight]="true"
216
- [spxDisabled]="this.spxReadonly"
217
- [spxSize]="'xl'"
218
- [spxTabIndex]="-1"
219
- [spxType]="'button'">
220
- <fa-icon [icon]="faSearch" class="block text-xl"></fa-icon>
221
- </spx-button>
222
- }
223
- @if (this.spxShowClear) {
224
- <spx-button
225
- (spxClick)="onClear()"
226
- [spxDisabled]="this.spxReadonly || !this.spxValue?.value"
227
- [spxFullHeight]="true"
228
- [spxSize]="'xl'"
229
- [spxTabIndex]="-1"
230
- [spxType]="'button'">
231
- <fa-icon [icon]="faTimes" class="block text-xl"></fa-icon>
232
- </spx-button>
233
- }
234
- </div>
235
- </div>
236
- @if (this.spxShowValidationMessages) {
237
- <div class="bg-red-600 rounded-b text-white p-3">
238
- <ng-content select="[validation-messages]"></ng-content>
239
- </div>
240
- }
241
- @else if(this.spxAlert) {
242
- <div [class.bg-red-700]="this.spxAlert.severity === spxSeverityEnum.error"
243
- [class.bg-green-700]="this.spxAlert.severity === spxSeverityEnum.success"
244
- [class.bg-blue-700]="this.spxAlert.severity === spxSeverityEnum.info"
245
- [class.bg-gray-400]="this.spxAlert.severity === spxSeverityEnum.unknown"
246
- [class.bg-amber-700]="this.spxAlert.severity === spxSeverityEnum.warning"
247
- class="rounded-b text-white p-3">
248
- <div>
249
- {{spxAlert.text}}
250
- </div>
251
- </div>
252
- }
253
- `,
254
- }]
255
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { spxCompact: [{
256
- type: Input
257
- }], spxFocused: [{
258
- type: Input
259
- }], spxLabel: [{
260
- type: Input
261
- }], spxReadonly: [{
262
- type: Input
263
- }], spxRequired: [{
264
- type: Input
265
- }], spxShowClear: [{
266
- type: Input
267
- }], spxShowEdit: [{
268
- type: Input
269
- }], spxShowHelp: [{
270
- type: Input
271
- }], spxShowLabel: [{
272
- type: Input
273
- }], spxShowSearch: [{
274
- type: Input
275
- }], spxAlert: [{
276
- type: Input
277
- }], spxShowValidationMessages: [{
278
- type: Input
279
- }], spxValue: [{
280
- type: Input
281
- }], spxClear: [{
282
- type: Output
283
- }], spxSearch: [{
284
- type: Output
285
- }], spxFocus: [{
286
- type: Output
287
- }], spxFocusOut: [{
288
- type: Output
289
- }], spxEdit: [{
290
- type: Output
291
- }], spxHelp: [{
292
- type: Output
293
- }], handleFocusIn: [{
294
- type: HostListener,
295
- args: ['focusin', ["$event"]]
296
- }], handleFocusOut: [{
297
- type: HostListener,
298
- args: ['focusout', ["$event"]]
299
- }], handleWindowClick: [{
300
- type: HostListener,
301
- args: ['document:click', ["$event"]]
302
- }] } });
303
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zcHgtaW5wdXQtYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFtR2xFLE1BQU0sT0FBTyxvQkFBb0I7SUF5Qk0sYUFBYSxDQUFDLEVBQVM7UUFDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDcUMsY0FBYyxDQUFDLEVBQWM7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBQzJDLGlCQUFpQixDQUFDLEVBQVM7UUFDckUsSUFBSSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUs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O3NCQUFqQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDOEIsYUFBYTtzQkFBakQsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBR0csY0FBYztzQkFBbkQsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBT1EsaUJBQWlCO3NCQUE1RCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcclxuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IGZhRWRpdCwgZmFRdWVzdGlvbiwgZmFTZWFyY2gsIGZhVGltZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xyXG5pbXBvcnQgeyBTcHhTZXZlcml0eUVudW0gfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzJztcclxuaW1wb3J0IHsgU3B4SW5wdXRBbGVydEkgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0LWJveCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXHJcbiAgICBGb250QXdlc29tZU1vZHVsZVxyXG5dLFxyXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImZsZXggcm91bmRlZCB3LWZ1bGwgZ2FwLTNcIlxyXG4gICAgICBbY2xhc3Mucm91bmRlZC1ub25lXT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXHJcbiAgICAgIFtjbGFzcy5yb3VuZGVkLXRdPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCJcclxuICAgICAgW2NsYXNzLm91dGxpbmUtbm9uZV09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICBbY2xhc3MucmluZy0yXT1cInRoaXMuc3B4Rm9jdXNlZCAmJiAhdGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5yaW5nLW9mZnNldC0yXT1cInRoaXMuc3B4Rm9jdXNlZCAmJiAhdGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5yaW5nLWJsdWUtNTAwXT1cInRoaXMuc3B4Rm9jdXNlZCAmJiAhdGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5iZy13aGl0ZV09XCIhdGhpcy5zcHhSZWFkb25seVwiXHJcbiAgICAgIFtjbGFzcy5iZy1ncmF5LTMwMF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcclxuICAgICAgW2NsYXNzLmN1cnNvci1ub3QtYWxsb3dlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWF1dG8gcC0zXCJcclxuICAgICAgICBbY2xhc3MucC0wXT1cInRoaXMuc3B4Q29tcGFjdFwiXHJcbiAgICAgICAgW2NsYXNzLmZsZXhdPVwidGhpcy5zcHhDb21wYWN0XCJcclxuICAgICAgICBbY2xhc3MuaXRlbXMtY2VudGVyXT1cInRoaXMuc3B4Q29tcGFjdFwiPlxyXG4gICAgICAgIEBpZiAodGhpcy5zcHhTaG93TGFiZWwpIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb250LWJvbGQgdGV4dC1zbSBtYi0xIHRleHQtZ3JheS04MDBcIlxyXG4gICAgICAgICAgICBbY2xhc3MubWItMF09XCJ0aGlzLnNweENvbXBhY3RcIlxyXG4gICAgICAgICAgICBbY2xhc3MucHgtM109XCJ0aGlzLnNweENvbXBhY3RcIj5cclxuICAgICAgICAgICAge3t0aGlzLnNweExhYmVsfX0gQGlmIChzcHhSZXF1aXJlZCkge1xyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcmVkLTgwMFwiPio8L3NwYW4+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NvbnRyb2xzXVwiPjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1ub25lIGdhcC0xIHAtMVwiPlxyXG4gICAgICBAaWYgKHRoaXMuc3B4U2hvd0VkaXQpIHtcclxuICAgICAgICA8c3B4LWJ1dHRvblxyXG4gICAgICAgICAgKHNweENsaWNrKT1cIm9uRWRpdCgpXCJcclxuICAgICAgICAgIFtzcHhGdWxsSGVpZ2h0XT1cInRydWVcIlxyXG4gICAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXHJcbiAgICAgICAgICBbc3B4VHlwZV09XCInYnV0dG9uJ1wiPlxyXG4gICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFFZGl0XCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvc3B4LWJ1dHRvbj5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4U2hvd0hlbHApIHtcclxuICAgICAgICA8c3B4LWJ1dHRvblxyXG4gICAgICAgICAgKHNweENsaWNrKT1cIm9uSGVscCgpXCJcclxuICAgICAgICAgIFtzcHhGdWxsSGVpZ2h0XT1cInRydWVcIlxyXG4gICAgICAgICAgW3NweERpc2FibGVkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXHJcbiAgICAgICAgICBbc3B4VGFiSW5kZXhdPVwiLTFcIlxyXG4gICAgICAgICAgW3NweFR5cGVdPVwiJ2J1dHRvbidcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhUXVlc3Rpb25cIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9zcHgtYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZiAodGhpcy5zcHhTaG93U2VhcmNoKSB7XHJcbiAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgIChzcHhDbGljayk9XCJvblNlYXJjaCgpXCJcclxuICAgICAgICAgIFtzcHhGdWxsSGVpZ2h0XT1cInRydWVcIlxyXG4gICAgICAgICAgW3NweERpc2FibGVkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxyXG4gICAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXHJcbiAgICAgICAgICBbc3B4VGFiSW5kZXhdPVwiLTFcIlxyXG4gICAgICAgICAgW3NweFR5cGVdPVwiJ2J1dHRvbidcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhU2VhcmNoXCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxyXG4gICAgICAgIDwvc3B4LWJ1dHRvbj5cclxuICAgICAgfVxyXG4gICAgICBAaWYgKHRoaXMuc3B4U2hvd0NsZWFyKSB7XHJcbiAgICAgICAgPHNweC1idXR0b25cclxuICAgICAgICAgIChzcHhDbGljayk9XCJvbkNsZWFyKClcIlxyXG4gICAgICAgICAgW3NweERpc2FibGVkXT1cInRoaXMuc3B4UmVhZG9ubHkgfHwgIXRoaXMuc3B4VmFsdWU/LnZhbHVlXCJcclxuICAgICAgICAgIFtzcHhGdWxsSGVpZ2h0XT1cInRydWVcIlxyXG4gICAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXHJcbiAgICAgICAgICBbc3B4VGFiSW5kZXhdPVwiLTFcIlxyXG4gICAgICAgICAgW3NweFR5cGVdPVwiJ2J1dHRvbidcIj5cclxuICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhVGltZXNcIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XHJcbiAgICAgICAgPC9zcHgtYnV0dG9uPlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgQGlmICh0aGlzLnNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXMpIHtcclxuICAgICAgPGRpdiBjbGFzcz1cImJnLXJlZC02MDAgcm91bmRlZC1iIHRleHQtd2hpdGUgcC0zXCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3ZhbGlkYXRpb24tbWVzc2FnZXNdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuICAgIEBlbHNlIGlmKHRoaXMuc3B4QWxlcnQpIHtcclxuICAgICAgPGRpdiAgW2NsYXNzLmJnLXJlZC03MDBdPVwidGhpcy5zcHhBbGVydC5zZXZlcml0eSA9PT0gc3B4U2V2ZXJpdHlFbnVtLmVycm9yXCJcclxuICAgICAgICAgICAgW2NsYXNzLmJnLWdyZWVuLTcwMF09XCJ0aGlzLnNweEFsZXJ0LnNldmVyaXR5ID09PSBzcHhTZXZlcml0eUVudW0uc3VjY2Vzc1wiXHJcbiAgICAgICAgICAgIFtjbGFzcy5iZy1ibHVlLTcwMF09XCJ0aGlzLnNweEFsZXJ0LnNldmVyaXR5ID09PSBzcHhTZXZlcml0eUVudW0uaW5mb1wiXHJcbiAgICAgICAgICAgIFtjbGFzcy5iZy1ncmF5LTQwMF09XCJ0aGlzLnNweEFsZXJ0LnNldmVyaXR5ID09PSBzcHhTZXZlcml0eUVudW0udW5rbm93blwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5iZy1hbWJlci03MDBdPVwidGhpcy5zcHhBbGVydC5zZXZlcml0eSA9PT0gc3B4U2V2ZXJpdHlFbnVtLndhcm5pbmdcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtYiB0ZXh0LXdoaXRlIHAtM1wiPlxyXG4gICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAge3tzcHhBbGVydC50ZXh0fX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuICAgIGAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dEJveENvbXBvbmVudCB7XHJcbiAgZmFFZGl0ID0gZmFFZGl0O1xyXG4gIGZhU2VhcmNoID0gZmFTZWFyY2g7XHJcbiAgZmFRdWVzdGlvbiA9IGZhUXVlc3Rpb247XHJcbiAgZmFUaW1lcyA9IGZhVGltZXM7XHJcbiAgc3B4U2V2ZXJpdHlFbnVtID0gU3B4U2V2ZXJpdHlFbnVtO1xyXG4gIEBJbnB1dCgpIHNweENvbXBhY3Q/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzcHhMYWJlbD86IHN0cmluZztcclxuICBASW5wdXQoKSBzcHhSZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNweFJlcXVpcmVkPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzcHhTaG93Q2xlYXIgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNweFNob3dFZGl0PzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzcHhTaG93SGVscD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3B4U2hvd0xhYmVsID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzcHhTaG93U2VhcmNoPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBzcHhBbGVydD86IFNweElucHV0QWxlcnRJO1xyXG4gIEBJbnB1dCgpIHNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXM/OiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBzcHhWYWx1ZT86IFNweFZhbHVlUGFpcjxhbnk+O1xyXG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4Rm9jdXNPdXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc3B4RWRpdDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFtcIiRldmVudFwiXSkgaGFuZGxlRm9jdXNJbihldjogRXZlbnQpIHtcclxuICAgIHRoaXMuZW1pdEZvY3VzSW4oKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnLCBbXCIkZXZlbnRcIl0pIGhhbmRsZUZvY3VzT3V0KGV2OiBGb2N1c0V2ZW50KSB7XHJcbiAgICBjb25zdCB0aGlzRWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCByZWxhdGVkRWxlbWVudCA9IGV2LnJlbGF0ZWRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBpZiAoIXJlbGF0ZWRFbGVtZW50IHx8ICF0aGlzRWwuY29udGFpbnMocmVsYXRlZEVsZW1lbnQpKSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzT3V0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgW1wiJGV2ZW50XCJdKSBoYW5kbGVXaW5kb3dDbGljayhldjogRXZlbnQpIHtcclxuICAgIGlmIChldi5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzSW4oKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZW1pdEZvY3VzT3V0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsZWFyKCkge1xyXG4gICAgdGhpcy5zcHhDbGVhci5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaCgpIHtcclxuICAgIHRoaXMuc3B4U2VhcmNoLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uRWRpdCgpIHtcclxuICAgIHRoaXMuc3B4RWRpdC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkhlbHAoKSB7XHJcbiAgICB0aGlzLnNweEhlbHAuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZikge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0Rm9jdXNJbigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5zcHhGb2N1c2VkKSB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXMuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0Rm9jdXNPdXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zcHhGb2N1c2VkKSB7XHJcbiAgICAgIHRoaXMuc3B4Rm9jdXNPdXQuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=