@dsivd/prestations-ng 15.0.0-beta1 → 15.0.0-beta2

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 (310) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/CONTRIBUTING.md +32 -1
  3. package/README.md +2 -0
  4. package/UPGRADING_V12.md +0 -15
  5. package/UPGRADING_V13.md +0 -15
  6. package/UPGRADING_V14.md +4 -17
  7. package/UPGRADING_V15.md +51 -0
  8. package/dsivd-prestations-ng-v15.0.0-beta2.tgz +0 -0
  9. package/esm2020/abstract-page-component.mjs +226 -0
  10. package/{esm2015/backend-response.js → esm2020/backend-response.mjs} +0 -0
  11. package/{esm2015/directives/currency-formatter.directive.js → esm2020/directives/currency-formatter.directive.mjs} +3 -3
  12. package/{esm2015/directives/formatter.module.js → esm2020/directives/formatter.module.mjs} +4 -4
  13. package/{esm2015/directives/iban-formatter.directive.js → esm2020/directives/iban-formatter.directive.mjs} +3 -3
  14. package/{esm2015/directives/ide-formatter.directive.js → esm2020/directives/ide-formatter.directive.mjs} +3 -3
  15. package/{esm2015/directives/ndc-formatter.directive.js → esm2020/directives/ndc-formatter.directive.mjs} +3 -3
  16. package/{esm2015/dsivd-prestations-ng.js → esm2020/dsivd-prestations-ng.mjs} +0 -0
  17. package/{esm2015/error-template.js → esm2020/error-template.mjs} +0 -0
  18. package/{esm2015/foehn-address/address.type.js → esm2020/foehn-address/address.type.mjs} +0 -0
  19. package/{esm2015/foehn-address/foehn-address.module.js → esm2020/foehn-address/foehn-address.module.mjs} +4 -4
  20. package/{esm2015/foehn-address/foehn-display-address.component.js → esm2020/foehn-address/foehn-display-address.component.mjs} +5 -9
  21. package/esm2020/foehn-address/foehn-input-address.component.mjs +366 -0
  22. package/esm2020/foehn-address/foehn-input-foreign-locality.component.mjs +66 -0
  23. package/{esm2015/foehn-address/foehn-input-foreign-street.component.js → esm2020/foehn-address/foehn-input-foreign-street.component.mjs} +6 -11
  24. package/esm2020/foehn-autocomplete/foehn-autocomplete.component.mjs +548 -0
  25. package/{esm2015/foehn-autocomplete/foehn-autocomplete.module.js → esm2020/foehn-autocomplete/foehn-autocomplete.module.mjs} +4 -4
  26. package/esm2020/foehn-boolean/foehn-boolean-checkbox.component.mjs +28 -0
  27. package/esm2020/foehn-boolean/foehn-boolean-radio.component.mjs +37 -0
  28. package/{esm2015/foehn-boolean/foehn-boolean.module.js → esm2020/foehn-boolean/foehn-boolean.module.mjs} +4 -4
  29. package/{esm2015/foehn-breadcrumb/breadcrumb-event.service.js → esm2020/foehn-breadcrumb/breadcrumb-event.service.mjs} +10 -10
  30. package/{esm2015/foehn-breadcrumb/breadcrumb.js → esm2020/foehn-breadcrumb/breadcrumb.mjs} +0 -0
  31. package/{esm2015/foehn-breadcrumb/foehn-breadcrumb.component.js → esm2020/foehn-breadcrumb/foehn-breadcrumb.component.mjs} +5 -9
  32. package/{esm2015/foehn-breadcrumb/foehn-breadcrumb.module.js → esm2020/foehn-breadcrumb/foehn-breadcrumb.module.mjs} +4 -4
  33. package/esm2020/foehn-checkables/foehn-checkable-group.component.mjs +283 -0
  34. package/{esm2015/foehn-checkables/foehn-checkables.module.js → esm2020/foehn-checkables/foehn-checkables.module.mjs} +4 -4
  35. package/esm2020/foehn-checkables/foehn-checkbox.component.mjs +36 -0
  36. package/esm2020/foehn-checkables/foehn-radio.component.mjs +63 -0
  37. package/esm2020/foehn-checkables/foehn-select.component.mjs +62 -0
  38. package/{esm2015/foehn-checkables/form-select-option-group.js → esm2020/foehn-checkables/form-select-option-group.mjs} +0 -0
  39. package/{esm2015/foehn-checkables/form-select-option.js → esm2020/foehn-checkables/form-select-option.mjs} +0 -0
  40. package/{esm2015/foehn-confirm-modal/foehn-confirm-modal-content.js → esm2020/foehn-confirm-modal/foehn-confirm-modal-content.mjs} +0 -0
  41. package/esm2020/foehn-confirm-modal/foehn-confirm-modal.component.mjs +39 -0
  42. package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.module.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.module.mjs} +4 -4
  43. package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.service.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.service.mjs} +3 -3
  44. package/{esm2015/foehn-date-picker/date-picker-navigation.helper.js → esm2020/foehn-date-picker/date-picker-navigation.helper.mjs} +7 -7
  45. package/{esm2015/foehn-date-picker/date-picker.helper.js → esm2020/foehn-date-picker/date-picker.helper.mjs} +4 -4
  46. package/{esm2015/foehn-date-picker/day-month.type.js → esm2020/foehn-date-picker/day-month.type.mjs} +0 -0
  47. package/{esm2015/foehn-date-picker/focused-day.type.js → esm2020/foehn-date-picker/focused-day.type.mjs} +0 -0
  48. package/{esm2015/foehn-date-picker/foehn-date-picker.component.js → esm2020/foehn-date-picker/foehn-date-picker.component.mjs} +22 -25
  49. package/{esm2015/foehn-date-picker/foehn-date-picker.module.js → esm2020/foehn-date-picker/foehn-date-picker.module.mjs} +4 -4
  50. package/{esm2015/foehn-date-picker/month-year.type.js → esm2020/foehn-date-picker/month-year.type.mjs} +0 -0
  51. package/esm2020/foehn-date-picker-button/foehn-date-picker-button.component.mjs +70 -0
  52. package/{esm2015/foehn-date-picker-button/foehn-date-picker-button.module.js → esm2020/foehn-date-picker-button/foehn-date-picker-button.module.mjs} +4 -4
  53. package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.mjs} +8 -11
  54. package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.module.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.module.mjs} +4 -4
  55. package/esm2020/foehn-decision-electronique/foehn-decision-electronique.component.mjs +36 -0
  56. package/{esm2015/foehn-decision-electronique/foehn-decision-electronique.module.js → esm2020/foehn-decision-electronique/foehn-decision-electronique.module.mjs} +4 -4
  57. package/esm2020/foehn-footer/foehn-footer.component.mjs +129 -0
  58. package/{esm2015/foehn-footer/foehn-footer.module.js → esm2020/foehn-footer/foehn-footer.module.mjs} +4 -4
  59. package/{esm2015/foehn-footer/footer-link.type.js → esm2020/foehn-footer/footer-link.type.mjs} +0 -0
  60. package/{esm2015/foehn-form/foehn-form.component.js → esm2020/foehn-form/foehn-form.component.mjs} +5 -8
  61. package/{esm2015/foehn-form/foehn-form.module.js → esm2020/foehn-form/foehn-form.module.mjs} +4 -4
  62. package/{esm2015/foehn-growl/foehn-growl.component.js → esm2020/foehn-growl/foehn-growl.component.mjs} +8 -12
  63. package/{esm2015/foehn-growl/foehn-growl.module.js → esm2020/foehn-growl/foehn-growl.module.mjs} +4 -4
  64. package/{esm2015/foehn-growl/growl-broker.service.js → esm2020/foehn-growl/growl-broker.service.mjs} +3 -3
  65. package/{esm2015/foehn-growl/growl-message.js → esm2020/foehn-growl/growl-message.mjs} +0 -0
  66. package/{esm2015/foehn-growl/growl-types.js → esm2020/foehn-growl/growl-types.mjs} +0 -0
  67. package/esm2020/foehn-header/foehn-header.component.mjs +69 -0
  68. package/{esm2015/foehn-header/foehn-header.module.js → esm2020/foehn-header/foehn-header.module.mjs} +4 -4
  69. package/{esm2015/foehn-header/foehn-skip-link.component.js → esm2020/foehn-header/foehn-skip-link.component.mjs} +5 -8
  70. package/{esm2015/foehn-help-modal/foehn-help-modal.component.js → esm2020/foehn-help-modal/foehn-help-modal.component.mjs} +5 -9
  71. package/{esm2015/foehn-help-modal/foehn-help-modal.module.js → esm2020/foehn-help-modal/foehn-help-modal.module.mjs} +4 -4
  72. package/{esm2015/foehn-help-modal/foehn-help-modal.type.js → esm2020/foehn-help-modal/foehn-help-modal.type.mjs} +0 -0
  73. package/{esm2015/foehn-icons/abstract-icon-component.js → esm2020/foehn-icons/abstract-icon-component.mjs} +4 -4
  74. package/{esm2015/foehn-icons/foehn-icon-calendar.component.js → esm2020/foehn-icons/foehn-icon-calendar.component.mjs} +5 -8
  75. package/{esm2015/foehn-icons/foehn-icon-check-square-o.component.js → esm2020/foehn-icons/foehn-icon-check-square-o.component.mjs} +5 -8
  76. package/{esm2015/foehn-icons/foehn-icon-check.component.js → esm2020/foehn-icons/foehn-icon-check.component.mjs} +5 -8
  77. package/{esm2015/foehn-icons/foehn-icon-chevron-down.component.js → esm2020/foehn-icons/foehn-icon-chevron-down.component.mjs} +5 -8
  78. package/{esm2015/foehn-icons/foehn-icon-chevron-left.component.js → esm2020/foehn-icons/foehn-icon-chevron-left.component.mjs} +5 -8
  79. package/{esm2015/foehn-icons/foehn-icon-chevron-right.component.js → esm2020/foehn-icons/foehn-icon-chevron-right.component.mjs} +5 -8
  80. package/{esm2015/foehn-icons/foehn-icon-chevron-up.component.js → esm2020/foehn-icons/foehn-icon-chevron-up.component.mjs} +5 -8
  81. package/{esm2015/foehn-icons/foehn-icon-clock.component.js → esm2020/foehn-icons/foehn-icon-clock.component.mjs} +5 -8
  82. package/{esm2015/foehn-icons/foehn-icon-comment-dots.component.js → esm2020/foehn-icons/foehn-icon-comment-dots.component.mjs} +5 -8
  83. package/{esm2015/foehn-icons/foehn-icon-edit.component.js → esm2020/foehn-icons/foehn-icon-edit.component.mjs} +5 -8
  84. package/{esm2015/foehn-icons/foehn-icon-external-link-alt.component.js → esm2020/foehn-icons/foehn-icon-external-link-alt.component.mjs} +5 -8
  85. package/{esm2015/foehn-icons/foehn-icon-file-pdf.component.js → esm2020/foehn-icons/foehn-icon-file-pdf.component.mjs} +5 -8
  86. package/{esm2015/foehn-icons/foehn-icon-info-circle.component.js → esm2020/foehn-icons/foehn-icon-info-circle.component.mjs} +5 -8
  87. package/{esm2015/foehn-icons/foehn-icon-lock.component.js → esm2020/foehn-icons/foehn-icon-lock.component.mjs} +5 -8
  88. package/{esm2015/foehn-icons/foehn-icon-map-marker.component.js → esm2020/foehn-icons/foehn-icon-map-marker.component.mjs} +5 -8
  89. package/{esm2015/foehn-icons/foehn-icon-minus-circle.component.js → esm2020/foehn-icons/foehn-icon-minus-circle.component.mjs} +5 -8
  90. package/{esm2015/foehn-icons/foehn-icon-plus-circle.component.js → esm2020/foehn-icons/foehn-icon-plus-circle.component.mjs} +5 -8
  91. package/{esm2015/foehn-icons/foehn-icon-plus-square.component.js → esm2020/foehn-icons/foehn-icon-plus-square.component.mjs} +5 -8
  92. package/{esm2015/foehn-icons/foehn-icon-search.component.js → esm2020/foehn-icons/foehn-icon-search.component.mjs} +5 -8
  93. package/{esm2015/foehn-icons/foehn-icon-times.component.js → esm2020/foehn-icons/foehn-icon-times.component.mjs} +5 -8
  94. package/{esm2015/foehn-icons/foehn-icon-trash-alt.component.js → esm2020/foehn-icons/foehn-icon-trash-alt.component.mjs} +5 -8
  95. package/{esm2015/foehn-icons/foehn-icon-unlock-alt.component.js → esm2020/foehn-icons/foehn-icon-unlock-alt.component.mjs} +5 -8
  96. package/{esm2015/foehn-icons/foehn-icons.module.js → esm2020/foehn-icons/foehn-icons.module.mjs} +4 -4
  97. package/esm2020/foehn-input/foehn-input-email.component.mjs +50 -0
  98. package/esm2020/foehn-input/foehn-input-hidden.component.mjs +53 -0
  99. package/{esm2015/foehn-input/foehn-input-number.component.js → esm2020/foehn-input/foehn-input-number.component.mjs} +10 -15
  100. package/esm2020/foehn-input/foehn-input-password.component.mjs +50 -0
  101. package/{esm2015/foehn-input/foehn-input-phone.component.js → esm2020/foehn-input/foehn-input-phone.component.mjs} +6 -11
  102. package/{esm2015/foehn-input/foehn-input-string.component.js → esm2020/foehn-input/foehn-input-string.component.mjs} +3 -3
  103. package/{esm2015/foehn-input/foehn-input-text.component.js → esm2020/foehn-input/foehn-input-text.component.mjs} +6 -11
  104. package/{esm2015/foehn-input/foehn-input-textarea.component.js → esm2020/foehn-input/foehn-input-textarea.component.mjs} +6 -11
  105. package/{esm2015/foehn-input/foehn-input.component.js → esm2020/foehn-input/foehn-input.component.mjs} +14 -14
  106. package/{esm2015/foehn-input/foehn-input.module.js → esm2020/foehn-input/foehn-input.module.mjs} +4 -4
  107. package/{esm2015/foehn-input/pattern.const.js → esm2020/foehn-input/pattern.const.mjs} +0 -0
  108. package/esm2020/foehn-input-date/foehn-input-date.component.mjs +90 -0
  109. package/esm2020/foehn-input-time/foehn-input-time.component.mjs +75 -0
  110. package/esm2020/foehn-list/foehn-list.component.mjs +130 -0
  111. package/{esm2015/foehn-list/foehn-list.module.js → esm2020/foehn-list/foehn-list.module.mjs} +4 -4
  112. package/{esm2015/foehn-list/page-change-event.js → esm2020/foehn-list/page-change-event.mjs} +0 -0
  113. package/esm2020/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +122 -0
  114. package/{esm2015/foehn-menu-prestation/abstract-menu-page.component.js → esm2020/foehn-menu-prestation/abstract-menu-page.component.mjs} +3 -3
  115. package/{esm2015/foehn-menu-prestation/abstract-page-from-menu.component.js → esm2020/foehn-menu-prestation/abstract-page-from-menu.component.mjs} +3 -3
  116. package/{esm2015/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.js → esm2020/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs} +5 -8
  117. package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.mjs} +0 -0
  118. package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item.mjs} +0 -0
  119. package/esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +71 -0
  120. package/esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +35 -0
  121. package/{esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.js → esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs} +5 -8
  122. package/{esm2015/foehn-menu-prestation/foehn-menu-prestation.module.js → esm2020/foehn-menu-prestation/foehn-menu-prestation.module.mjs} +4 -4
  123. package/{esm2015/foehn-misc/foehn-abbr.component.js → esm2020/foehn-misc/foehn-abbr.component.mjs} +5 -9
  124. package/{esm2015/foehn-misc/foehn-misc.module.js → esm2020/foehn-misc/foehn-misc.module.mjs} +4 -4
  125. package/esm2020/foehn-modal/foehn-modal.component.mjs +96 -0
  126. package/{esm2015/foehn-modal/foehn-modal.module.js → esm2020/foehn-modal/foehn-modal.module.mjs} +4 -4
  127. package/esm2020/foehn-nav13/foehn-input-nav13.component.mjs +94 -0
  128. package/{esm2015/foehn-nav13/foehn-input-nav13.module.js → esm2020/foehn-nav13/foehn-input-nav13.module.mjs} +4 -4
  129. package/esm2020/foehn-navigation/foehn-navigation.component.mjs +94 -0
  130. package/{esm2015/foehn-navigation/foehn-navigation.module.js → esm2020/foehn-navigation/foehn-navigation.module.mjs} +4 -4
  131. package/{esm2015/foehn-navigation/foehn-navigation.service.js → esm2020/foehn-navigation/foehn-navigation.service.mjs} +9 -9
  132. package/{esm2015/foehn-notfound/foehn-notfound.component.js → esm2020/foehn-notfound/foehn-notfound.component.mjs} +5 -8
  133. package/{esm2015/foehn-notfound/foehn-notfound.module.js → esm2020/foehn-notfound/foehn-notfound.module.mjs} +4 -4
  134. package/{esm2015/foehn-page/foehn-page-counter.component.js → esm2020/foehn-page/foehn-page-counter.component.mjs} +5 -8
  135. package/esm2020/foehn-page/foehn-page-modal.component.mjs +52 -0
  136. package/{esm2015/foehn-page/foehn-page-modal.service.js → esm2020/foehn-page/foehn-page-modal.service.mjs} +3 -3
  137. package/esm2020/foehn-page/foehn-page.component.mjs +212 -0
  138. package/{esm2015/foehn-page/foehn-page.module.js → esm2020/foehn-page/foehn-page.module.mjs} +4 -4
  139. package/{esm2015/foehn-page/foehn-page.service.js → esm2020/foehn-page/foehn-page.service.mjs} +3 -3
  140. package/{esm2015/foehn-recap-section/foehn-recap-section.component.js → esm2020/foehn-recap-section/foehn-recap-section.component.mjs} +5 -8
  141. package/{esm2015/foehn-recap-section/foehn-recap-section.module.js → esm2020/foehn-recap-section/foehn-recap-section.module.mjs} +4 -4
  142. package/{esm2015/foehn-recap-section/foehn-recap-section.type.js → esm2020/foehn-recap-section/foehn-recap-section.type.mjs} +0 -0
  143. package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs} +5 -9
  144. package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs} +4 -4
  145. package/{esm2015/foehn-table/foehn-table-column-configuration.js → esm2020/foehn-table/foehn-table-column-configuration.mjs} +0 -0
  146. package/{esm2015/foehn-table/foehn-table-page-change-event.js → esm2020/foehn-table/foehn-table-page-change-event.mjs} +0 -0
  147. package/esm2020/foehn-table/foehn-table.component.mjs +149 -0
  148. package/{esm2015/foehn-table/foehn-table.module.js → esm2020/foehn-table/foehn-table.module.mjs} +4 -4
  149. package/{esm2015/foehn-table/tableSort.js → esm2020/foehn-table/tableSort.mjs} +0 -0
  150. package/{esm2015/foehn-upload/abstract-foehn-uploader.component.js → esm2020/foehn-upload/abstract-foehn-uploader.component.mjs} +17 -17
  151. package/{esm2015/foehn-upload/document-reference.js → esm2020/foehn-upload/document-reference.mjs} +0 -0
  152. package/{esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.js → esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs} +3 -3
  153. package/{esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.js → esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.mjs} +0 -0
  154. package/esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +165 -0
  155. package/{esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.js → esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs} +4 -4
  156. package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +214 -0
  157. package/{esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.js → esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs} +4 -4
  158. package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.service.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.service.mjs} +3 -3
  159. package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.type.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.type.mjs} +0 -0
  160. package/{esm2015/foehn-upload/foehn-multi-upload/pending-upload.service.js → esm2020/foehn-upload/foehn-multi-upload/pending-upload.service.mjs} +3 -3
  161. package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +163 -0
  162. package/{esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.js → esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs} +4 -4
  163. package/{esm2015/foehn-upload/pending-upload.type.js → esm2020/foehn-upload/pending-upload.type.mjs} +0 -0
  164. package/esm2020/foehn-upload/uploader.helper.mjs +326 -0
  165. package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.component.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.component.mjs} +5 -8
  166. package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.module.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.module.mjs} +4 -4
  167. package/{esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.component.js → esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs} +5 -9
  168. package/{esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.module.js → esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs} +4 -4
  169. package/{esm2015/foehn-validation-alerts/foehn-validation-alerts.component.js → esm2020/foehn-validation-alerts/foehn-validation-alerts.component.mjs} +5 -8
  170. package/{esm2015/foehn-validation-alerts/foehn-validation-alerts.module.js → esm2020/foehn-validation-alerts/foehn-validation-alerts.module.mjs} +4 -4
  171. package/{esm2015/gesdem/gesdem-error-handler.service.js → esm2020/gesdem/gesdem-error-handler.service.mjs} +3 -3
  172. package/{esm2015/gesdem/gesdem-event.service.js → esm2020/gesdem/gesdem-event.service.mjs} +13 -13
  173. package/{esm2015/gesdem/gesdem-handler.service.js → esm2020/gesdem/gesdem-handler.service.mjs} +13 -13
  174. package/{esm2015/gesdem/gesdem-loader.guard.js → esm2020/gesdem/gesdem-loader.guard.mjs} +3 -3
  175. package/{esm2015/gesdem/gesdem-statut-utils.js → esm2020/gesdem/gesdem-statut-utils.mjs} +0 -0
  176. package/{esm2015/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.js → esm2020/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs} +5 -10
  177. package/esm2020/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +128 -0
  178. package/{esm2015/gesdem-action-recovery/gesdem-action-recovery.module.js → esm2020/gesdem-action-recovery/gesdem-action-recovery.module.mjs} +4 -4
  179. package/{esm2015/gesdem-action-recovery/gesdem-action-recovery.service.js → esm2020/gesdem-action-recovery/gesdem-action-recovery.service.mjs} +3 -3
  180. package/{esm2015/gesdem-action-recovery/reprise-info.js → esm2020/gesdem-action-recovery/reprise-info.mjs} +0 -0
  181. package/esm2020/gesdem-confirmation/gesdem-confirmation.component.mjs +189 -0
  182. package/{esm2015/gesdem-confirmation/gesdem-confirmation.module.js → esm2020/gesdem-confirmation/gesdem-confirmation.module.mjs} +4 -4
  183. package/{esm2015/gesdem-error/gesdem-error.component.js → esm2020/gesdem-error/gesdem-error.component.mjs} +5 -9
  184. package/{esm2015/gesdem-error/gesdem-error.module.js → esm2020/gesdem-error/gesdem-error.module.mjs} +4 -4
  185. package/{esm2015/helpers/object.helper.js → esm2020/helpers/object.helper.mjs} +2 -2
  186. package/{esm2015/i18n-form.js → esm2020/i18n-form.mjs} +0 -0
  187. package/{esm2015/index.js → esm2020/index.mjs} +0 -0
  188. package/{esm2015/pipes/currency.pipe.js → esm2020/pipes/currency.pipe.mjs} +3 -3
  189. package/{esm2015/pipes/date.pipe.js → esm2020/pipes/date.pipe.mjs} +3 -3
  190. package/{esm2015/pipes/formatIde.pipe.js → esm2020/pipes/formatIde.pipe.mjs} +3 -3
  191. package/{esm2015/pipes/pipes.module.js → esm2020/pipes/pipes.module.mjs} +4 -4
  192. package/{esm2015/prestations-ng-core.module.js → esm2020/prestations-ng-core.module.mjs} +4 -4
  193. package/{esm2015/sdk-appinfo/application-info.js → esm2020/sdk-appinfo/application-info.mjs} +0 -0
  194. package/esm2020/sdk-appinfo/application-info.service.mjs +102 -0
  195. package/{esm2015/sdk-currency/currency.helper.js → esm2020/sdk-currency/currency.helper.mjs} +3 -3
  196. package/esm2020/sdk-date/date.helper.mjs +91 -0
  197. package/{esm2015/sdk-dictionary/default-dictionary.js → esm2020/sdk-dictionary/default-dictionary.mjs} +0 -0
  198. package/{esm2015/sdk-dictionary/sdk-dictionary.module.js → esm2020/sdk-dictionary/sdk-dictionary.module.mjs} +4 -4
  199. package/{esm2015/sdk-dictionary/sdk-dictionary.pipe.js → esm2020/sdk-dictionary/sdk-dictionary.pipe.mjs} +5 -5
  200. package/{esm2015/sdk-dictionary/sdk-dictionary.service.js → esm2020/sdk-dictionary/sdk-dictionary.service.mjs} +3 -3
  201. package/{esm2015/sdk-epayment/model/EPaymentParameters.js → esm2020/sdk-epayment/model/EPaymentParameters.mjs} +0 -0
  202. package/{esm2015/sdk-epayment/sdk-epayment.component.js → esm2020/sdk-epayment/sdk-epayment.component.mjs} +5 -10
  203. package/{esm2015/sdk-epayment/sdk-epayment.module.js → esm2020/sdk-epayment/sdk-epayment.module.mjs} +4 -4
  204. package/{esm2015/sdk-epayment/sdk-epayment.service.js → esm2020/sdk-epayment/sdk-epayment.service.mjs} +3 -3
  205. package/{esm2015/sdk-recaptcha/grecaptcha/grecaptcha.component.js → esm2020/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs} +5 -9
  206. package/{esm2015/sdk-recaptcha/recaptcha.service.js → esm2020/sdk-recaptcha/recaptcha.service.mjs} +3 -3
  207. package/esm2020/sdk-recaptcha/sdk-recaptcha.component.mjs +68 -0
  208. package/{esm2015/sdk-recaptcha/sdk-recaptcha.module.js → esm2020/sdk-recaptcha/sdk-recaptcha.module.mjs} +4 -4
  209. package/{esm2015/sdk-redirect/iam-expired-interceptor.service.js → esm2020/sdk-redirect/iam-expired-interceptor.service.mjs} +3 -3
  210. package/{esm2015/sdk-redirect/redirect.component.js → esm2020/sdk-redirect/redirect.component.mjs} +5 -9
  211. package/{esm2015/sdk-redirect/sdk-redirect.module.js → esm2020/sdk-redirect/sdk-redirect.module.mjs} +4 -4
  212. package/{esm2015/sdk-session-info/session-info-data.js → esm2020/sdk-session-info/session-info-data.mjs} +0 -0
  213. package/{esm2015/sdk-session-info/session-info-with-application.service.js → esm2020/sdk-session-info/session-info-with-application.service.mjs} +3 -3
  214. package/esm2020/sdk-session-info/session-info.service.mjs +73 -0
  215. package/{esm2015/sdk-support-alert/support-alert-container.component.js → esm2020/sdk-support-alert/support-alert-container.component.mjs} +5 -9
  216. package/esm2020/sdk-support-alert/support-alert.component.mjs +34 -0
  217. package/{esm2015/sdk-support-alert/support-alert.model.js → esm2020/sdk-support-alert/support-alert.model.mjs} +0 -0
  218. package/{esm2015/sdk-support-alert/support-alert.module.js → esm2020/sdk-support-alert/support-alert.module.mjs} +4 -4
  219. package/esm2020/sdk-support-alert/support-alert.service.mjs +114 -0
  220. package/{esm2015/service-locator.js → esm2020/service-locator.mjs} +0 -0
  221. package/esm2020/supported-browser.mjs +2 -0
  222. package/{esm2015/validation/validation-handler.service.js → esm2020/validation/validation-handler.service.mjs} +7 -7
  223. package/fesm2015/{dsivd-prestations-ng.js → dsivd-prestations-ng.mjs} +949 -1247
  224. package/fesm2015/dsivd-prestations-ng.mjs.map +1 -0
  225. package/fesm2020/dsivd-prestations-ng.mjs +11481 -0
  226. package/fesm2020/dsivd-prestations-ng.mjs.map +1 -0
  227. package/foehn-breadcrumb/breadcrumb-event.service.d.ts +2 -2
  228. package/foehn-checkables/foehn-checkable-group.component.d.ts +3 -3
  229. package/foehn-confirm-modal/foehn-confirm-modal.component.d.ts +1 -1
  230. package/foehn-date-picker/date-picker-navigation.helper.d.ts +1 -1
  231. package/foehn-date-picker/date-picker.helper.d.ts +1 -1
  232. package/foehn-date-picker/foehn-date-picker.component.d.ts +3 -3
  233. package/foehn-date-picker-button/foehn-date-picker-button.component.d.ts +2 -2
  234. package/foehn-debug-summary/foehn-debug-summary.component.d.ts +1 -1
  235. package/foehn-growl/foehn-growl.component.d.ts +1 -1
  236. package/foehn-header/foehn-header.component.d.ts +2 -2
  237. package/foehn-input/foehn-input-number.component.d.ts +1 -1
  238. package/foehn-input/foehn-input.component.d.ts +3 -3
  239. package/foehn-list/foehn-list.component.d.ts +2 -2
  240. package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +1 -1
  241. package/foehn-modal/foehn-modal.component.d.ts +1 -1
  242. package/foehn-navigation/foehn-navigation.service.d.ts +1 -1
  243. package/foehn-table/foehn-table.component.d.ts +2 -2
  244. package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.d.ts +1 -1
  245. package/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.d.ts +2 -2
  246. package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +1 -1
  247. package/foehn-upload/uploader.helper.d.ts +7 -7
  248. package/gesdem/gesdem-event.service.d.ts +3 -3
  249. package/gesdem/gesdem-handler.service.d.ts +2 -2
  250. package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +2 -2
  251. package/gesdem-confirmation/gesdem-confirmation.component.d.ts +4 -4
  252. package/package.json +26 -13
  253. package/schematics/ng-add/index.js +6 -6
  254. package/schematics/ng-update/migrations/update-13_1_0/index.js +2 -2
  255. package/schematics/ng-update/migrations/update-13_2_0/index.js +3 -3
  256. package/schematics/ng-update/migrations/update-13_5_1/index.js +2 -2
  257. package/schematics/ng-update/migrations/update-14_5_0/index.js +2 -2
  258. package/schematics/update-karma-config/index.js +2 -2
  259. package/schematics/utility/migrate-to-karma-coverage.js +3 -3
  260. package/sdk-appinfo/application-info.service.d.ts +2 -2
  261. package/sdk-session-info/session-info.service.d.ts +9 -2
  262. package/sdk-support-alert/support-alert.service.d.ts +3 -2
  263. package/validation/validation-handler.service.d.ts +1 -1
  264. package/bundles/dsivd-prestations-ng.umd.js +0 -13375
  265. package/bundles/dsivd-prestations-ng.umd.js.map +0 -1
  266. package/dsivd-prestations-ng-v15.0.0-beta1.tgz +0 -0
  267. package/esm2015/abstract-page-component.js +0 -224
  268. package/esm2015/foehn-address/foehn-input-address.component.js +0 -365
  269. package/esm2015/foehn-address/foehn-input-foreign-locality.component.js +0 -71
  270. package/esm2015/foehn-autocomplete/foehn-autocomplete.component.js +0 -556
  271. package/esm2015/foehn-boolean/foehn-boolean-checkbox.component.js +0 -32
  272. package/esm2015/foehn-boolean/foehn-boolean-radio.component.js +0 -41
  273. package/esm2015/foehn-checkables/foehn-checkable-group.component.js +0 -294
  274. package/esm2015/foehn-checkables/foehn-checkbox.component.js +0 -40
  275. package/esm2015/foehn-checkables/foehn-radio.component.js +0 -67
  276. package/esm2015/foehn-checkables/foehn-select.component.js +0 -66
  277. package/esm2015/foehn-confirm-modal/foehn-confirm-modal.component.js +0 -42
  278. package/esm2015/foehn-date-picker-button/foehn-date-picker-button.component.js +0 -74
  279. package/esm2015/foehn-decision-electronique/foehn-decision-electronique.component.js +0 -40
  280. package/esm2015/foehn-footer/foehn-footer.component.js +0 -132
  281. package/esm2015/foehn-header/foehn-header.component.js +0 -73
  282. package/esm2015/foehn-input/foehn-input-email.component.js +0 -55
  283. package/esm2015/foehn-input/foehn-input-hidden.component.js +0 -57
  284. package/esm2015/foehn-input/foehn-input-password.component.js +0 -55
  285. package/esm2015/foehn-input-date/foehn-input-date.component.js +0 -94
  286. package/esm2015/foehn-input-time/foehn-input-time.component.js +0 -79
  287. package/esm2015/foehn-list/foehn-list.component.js +0 -136
  288. package/esm2015/foehn-menu-prestation/abstract-list-item-detail-page.component.js +0 -122
  289. package/esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.js +0 -75
  290. package/esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.js +0 -38
  291. package/esm2015/foehn-modal/foehn-modal.component.js +0 -100
  292. package/esm2015/foehn-nav13/foehn-input-nav13.component.js +0 -98
  293. package/esm2015/foehn-navigation/foehn-navigation.component.js +0 -98
  294. package/esm2015/foehn-page/foehn-page-modal.component.js +0 -55
  295. package/esm2015/foehn-page/foehn-page.component.js +0 -214
  296. package/esm2015/foehn-table/foehn-table.component.js +0 -153
  297. package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.js +0 -171
  298. package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.js +0 -220
  299. package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.js +0 -167
  300. package/esm2015/foehn-upload/uploader.helper.js +0 -322
  301. package/esm2015/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.js +0 -133
  302. package/esm2015/gesdem-confirmation/gesdem-confirmation.component.js +0 -194
  303. package/esm2015/sdk-appinfo/application-info.service.js +0 -111
  304. package/esm2015/sdk-date/date.helper.js +0 -90
  305. package/esm2015/sdk-recaptcha/sdk-recaptcha.component.js +0 -72
  306. package/esm2015/sdk-session-info/session-info.service.js +0 -44
  307. package/esm2015/sdk-support-alert/support-alert.component.js +0 -38
  308. package/esm2015/sdk-support-alert/support-alert.service.js +0 -113
  309. package/esm2015/supported-browser.js +0 -2
  310. package/fesm2015/dsivd-prestations-ng.js.map +0 -1
@@ -1,90 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { DatePipe, registerLocaleData } from '@angular/common';
3
- import localeFr from '@angular/common/locales/fr';
4
- import dayjs from 'dayjs';
5
- import isToday from 'dayjs/plugin/isToday';
6
- import * as i0 from "@angular/core";
7
- dayjs.extend(isToday);
8
- export class DateHelper {
9
- constructor() {
10
- this.locale = 'fr-CH';
11
- this.dateFormat = 'dd.MM.yyyy';
12
- this.dateTimeFormat = 'dd.MM.yyyy HH:mm:ss';
13
- registerLocaleData(localeFr, 'fr-CH');
14
- this.datePipe = new DatePipe(this.locale);
15
- }
16
- static isValidArray(value) {
17
- return (!!value &&
18
- value.length > 2 &&
19
- !!value[0] &&
20
- !!value[1] &&
21
- !!value[2]);
22
- }
23
- // eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
24
- mapToDateFromNumberArray(object, ...fieldsNames) {
25
- if (object) {
26
- fieldsNames.forEach(fieldPath => {
27
- object[fieldPath] = this.toDateFromNumberArray(object[fieldPath]);
28
- });
29
- }
30
- return object;
31
- }
32
- mapAllToDateFromNumberArray(
33
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
- objects, ...fieldsNames) {
35
- if (objects) {
36
- objects.forEach(object => {
37
- this.mapToDateFromNumberArray(object, ...fieldsNames);
38
- });
39
- }
40
- return objects;
41
- }
42
- toDateFromNumberArray(dateInArray) {
43
- if (dateInArray) {
44
- if (dateInArray.length === 3) {
45
- return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2]);
46
- }
47
- else if (dateInArray.length === 5) {
48
- // because when time is 00:00:00 the array does not contain the seconds.
49
- return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2], dateInArray[3], dateInArray[4]);
50
- }
51
- else if (dateInArray.length >= 6) {
52
- return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2], dateInArray[3], dateInArray[4], dateInArray[5]);
53
- }
54
- throw new Error(`Date in number[] format has wrong number of numbers : ${dateInArray.length}`);
55
- }
56
- return null;
57
- }
58
- arrayToDisplayDateDMY(d, showTime) {
59
- if (showTime) {
60
- return this.datePipe.transform(this.toDateFromNumberArray(d), this.dateTimeFormat);
61
- }
62
- else {
63
- return this.datePipe.transform(this.toDateFromNumberArray(d), this.dateFormat);
64
- }
65
- }
66
- toDayjsFromNumberArray(value) {
67
- if (DateHelper.isValidArray(value)) {
68
- const dateAsString = `${value[0]}-${value[1]}-${value[2]}`;
69
- return dayjs(dateAsString);
70
- }
71
- return null;
72
- }
73
- isValid(value) {
74
- return (DateHelper.isValidArray(value) &&
75
- this.toDayjsFromNumberArray(value).isValid());
76
- }
77
- isToday(value) {
78
- return (DateHelper.isValidArray(value) &&
79
- this.toDayjsFromNumberArray(value).isToday());
80
- }
81
- }
82
- DateHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DateHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
83
- DateHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DateHelper, providedIn: 'root' });
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DateHelper, decorators: [{
85
- type: Injectable,
86
- args: [{
87
- providedIn: 'root'
88
- }]
89
- }], ctorParameters: function () { return []; } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLWRhdGUvZGF0ZS5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0QsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFDbEQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sT0FBTyxNQUFNLHNCQUFzQixDQUFDOztBQUUzQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBS3RCLE1BQU0sT0FBTyxVQUFVO0lBTW5CO1FBTFEsV0FBTSxHQUFHLE9BQU8sQ0FBQztRQUNqQixlQUFVLEdBQUcsWUFBWSxDQUFDO1FBQzFCLG1CQUFjLEdBQUcscUJBQXFCLENBQUM7UUFJM0Msa0JBQWtCLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQWU7UUFDdkMsT0FBTyxDQUNILENBQUMsQ0FBQyxLQUFLO1lBQ1AsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ1YsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDVixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUNiLENBQUM7SUFDTixDQUFDO0lBRUQsZ0hBQWdIO0lBQ2hILHdCQUF3QixDQUFDLE1BQVcsRUFBRSxHQUFHLFdBQXFCO1FBQzFELElBQUksTUFBTSxF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QUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQy9DLENBQUM7SUFDTixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWU7UUFDbkIsT0FBTyxDQUNILFVBQVUsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FDL0MsQ0FBQztJQUNOLENBQUM7O3VHQXBIUSxVQUFVOzJHQUFWLFVBQVUsY0FGUCxNQUFNOzJGQUVULFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGF0ZVBpcGUsIHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCBsb2NhbGVGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0IGlzVG9kYXkgZnJvbSAnZGF5anMvcGx1Z2luL2lzVG9kYXknO1xuXG5kYXlqcy5leHRlbmQoaXNUb2RheSk7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZUhlbHBlciB7XG4gICAgcHJpdmF0ZSBsb2NhbGUgPSAnZnItQ0gnO1xuICAgIHByaXZhdGUgZGF0ZUZvcm1hdCA9ICdkZC5NTS55eXl5JztcbiAgICBwcml2YXRlIGRhdGVUaW1lRm9ybWF0ID0gJ2RkLk1NLnl5eXkgSEg6bW06c3MnO1xuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVGciwgJ2ZyLUNIJyk7XG4gICAgICAgIHRoaXMuZGF0ZVBpcGUgPSBuZXcgRGF0ZVBpcGUodGhpcy5sb2NhbGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGlzVmFsaWRBcnJheSh2YWx1ZTogbnVtYmVyW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdmFsdWUgJiZcbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCA+IDIgJiZcbiAgICAgICAgICAgICEhdmFsdWVbMF0gJiZcbiAgICAgICAgICAgICEhdmFsdWVbMV0gJiZcbiAgICAgICAgICAgICEhdmFsdWVbMl1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSxAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtbW9kdWxlLWJvdW5kYXJ5LXR5cGVzXG4gICAgbWFwVG9EYXRlRnJvbU51bWJlckFycmF5KG9iamVjdDogYW55LCAuLi5maWVsZHNOYW1lczogc3RyaW5nW10pOiBhbnkge1xuICAgICAgICBpZiAob2JqZWN0KSB7XG4gICAgICAgICAgICBmaWVsZHNOYW1lcy5mb3JFYWNoKGZpZWxkUGF0aCA9PiB7XG4gICAgICAgICAgICAgICAgb2JqZWN0W2ZpZWxkUGF0aF0gPSB0aGlzLnRvRGF0ZUZyb21OdW1iZXJBcnJheShcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0W2ZpZWxkUGF0aF1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9iamVjdDtcbiAgICB9XG5cbiAgICBtYXBBbGxUb0RhdGVGcm9tTnVtYmVyQXJyYXkoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIG9iamVjdHM6IGFueVtdLFxuICAgICAgICAuLi5maWVsZHNOYW1lczogc3RyaW5nW11cbiAgICApOiAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGFueVtdIHtcbiAgICAgICAgaWYgKG9iamVjdHMpIHtcbiAgICAgICAgICAgIG9iamVjdHMuZm9yRWFjaChvYmplY3QgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubWFwVG9EYXRlRnJvbU51bWJlckFycmF5KG9iamVjdCwgLi4uZmllbGRzTmFtZXMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9iamVjdHM7XG4gICAgfVxuXG4gICAgdG9EYXRlRnJvbU51bWJlckFycmF5KGRhdGVJbkFycmF5OiBudW1iZXJbXSk6IERhdGUge1xuICAgICAgICBpZiAoZGF0ZUluQXJyYXkpIHtcbiAgICAgICAgICAgIGlmIChkYXRlSW5BcnJheS5sZW5ndGggPT09IDMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IERhdGUoXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzBdLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVsxXSAtIDEsXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzJdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZGF0ZUluQXJyYXkubGVuZ3RoID09PSA1KSB7XG4gICAgICAgICAgICAgICAgLy8gYmVjYXVzZSB3aGVuIHRpbWUgaXMgMDA6MDA6MDAgdGhlIGFycmF5IGRvZXMgbm90IGNvbnRhaW4gdGhlIHNlY29uZHMuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVswXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbMV0gLSAxLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVsyXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbM10sXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzRdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZGF0ZUluQXJyYXkubGVuZ3RoID49IDYpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IERhdGUoXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzBdLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVsxXSAtIDEsXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzJdLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVszXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbNF0sXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzVdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICBgRGF0ZSBpbiBudW1iZXJbXSBmb3JtYXQgaGFzIHdyb25nIG51bWJlciBvZiBudW1iZXJzIDogJHtkYXRlSW5BcnJheS5sZW5ndGh9YFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBhcnJheVRvRGlzcGxheURhdGVETVkoZDogbnVtYmVyW10sIHNob3dUaW1lOiBib29sZWFuKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmIChzaG93VGltZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKFxuICAgICAgICAgICAgICAgIHRoaXMudG9EYXRlRnJvbU51bWJlckFycmF5KGQpLFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVRpbWVGb3JtYXRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oXG4gICAgICAgICAgICAgICAgdGhpcy50b0RhdGVGcm9tTnVtYmVyQXJyYXkoZCksXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9EYXlqc0Zyb21OdW1iZXJBcnJheSh2YWx1ZTogbnVtYmVyW10pOiBkYXlqcy5EYXlqcyB7XG4gICAgICAgIGlmIChEYXRlSGVscGVyLmlzVmFsaWRBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGVBc1N0cmluZyA9IGAke3ZhbHVlWzBdfS0ke3ZhbHVlWzFdfS0ke3ZhbHVlWzJdfWA7XG4gICAgICAgICAgICByZXR1cm4gZGF5anMoZGF0ZUFzU3RyaW5nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlzVmFsaWQodmFsdWU6IG51bWJlcltdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBEYXRlSGVscGVyLmlzVmFsaWRBcnJheSh2YWx1ZSkgJiZcbiAgICAgICAgICAgIHRoaXMudG9EYXlqc0Zyb21OdW1iZXJBcnJheSh2YWx1ZSkuaXNWYWxpZCgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgaXNUb2RheSh2YWx1ZTogbnVtYmVyW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIERhdGVIZWxwZXIuaXNWYWxpZEFycmF5KHZhbHVlKSAmJlxuICAgICAgICAgICAgdGhpcy50b0RheWpzRnJvbU51bWJlckFycmF5KHZhbHVlKS5pc1RvZGF5KClcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1,72 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import { GrecaptchaComponent } from './grecaptcha/grecaptcha.component';
3
- import { debounceTime } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./recaptcha.service";
6
- import * as i2 from "./grecaptcha/grecaptcha.component";
7
- import * as i3 from "@angular/common";
8
- export class SdkRecaptchaComponent {
9
- constructor(recaptchaService, cdr) {
10
- this.recaptchaService = recaptchaService;
11
- this.cdr = cdr;
12
- this.hasLoadingError = false;
13
- }
14
- ngOnInit() {
15
- this.recaptchaService.clearErrors();
16
- this.shouldDisplay = this.recaptchaService.getShouldDisplay();
17
- this.errors = this.recaptchaService.getErrors();
18
- this.publicKey = this.recaptchaService.getPublicKey();
19
- this.errorsSubscription = this.errors
20
- .pipe(debounceTime(500))
21
- .subscribe(errors => {
22
- // Hack because the captcha confuses Angular detection change.
23
- if (this.forceDetectChange) {
24
- this.forceDetectChange();
25
- }
26
- // In case of errors, reset the captcha for a better user
27
- // experience.
28
- if (errors.length && this.grecaptcha) {
29
- this.grecaptcha.reset();
30
- }
31
- });
32
- this.forceDetectChange = () => this.cdr.detectChanges();
33
- }
34
- ngOnDestroy() {
35
- if (this.errorsSubscription) {
36
- this.errorsSubscription.unsubscribe();
37
- }
38
- // Avoid cdr on destroyed components.
39
- this.forceDetectChange = null;
40
- }
41
- setIsLoaded(isLoaded) {
42
- this.isLoaded = isLoaded;
43
- // Angular doesn't detect the change properly
44
- if (this.forceDetectChange) {
45
- this.forceDetectChange();
46
- }
47
- }
48
- setScriptError(scriptError) {
49
- this.hasLoadingError = scriptError;
50
- // Angular doesn't detect the change properly
51
- if (this.forceDetectChange) {
52
- this.forceDetectChange();
53
- }
54
- }
55
- tokenOnSuccess(token) {
56
- this.recaptchaService.onSuccess(token);
57
- }
58
- }
59
- SdkRecaptchaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SdkRecaptchaComponent, deps: [{ token: i1.RecaptchaService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
60
- SdkRecaptchaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: SdkRecaptchaComponent, selector: "captcha", viewQueries: [{ propertyName: "grecaptcha", first: true, predicate: GrecaptchaComponent, descendants: true }], ngImport: i0, template: "<!-- Only display the content if the captcha should be displayed (user not connected for instance) -->\n<div id=\"foehn_recaptchaContainer\" *ngIf=\"shouldDisplay | async\">\n <!-- Manual error handling because errors can come from multiple sources -->\n <ng-container *ngIf=\"errors | async as err\">\n <div\n class=\"form-control-feedback text-danger\"\n *ngIf=\"err && err.length\"\n >\n <p *ngFor=\"let error of err\">{{ error.message }}</p>\n </div>\n </ng-container>\n\n <!-- While the captcha is being loaded -->\n <div class=\"alert alert-info\" *ngIf=\"!isLoaded && !hasLoadingError\">\n Chargement du captcha\n </div>\n\n <!-- In case google.com cannot be reached for instance -->\n <div class=\"alert alert-danger\" *ngIf=\"hasLoadingError\">\n <div class=\"mt-0 alert-heading h4\">\n Une erreur est survenue lors du chargement du captcha.\n </div>\n <p>\n Merci de v\u00E9rifier que votre navigateur peut acc\u00E9der \u00E0\n <a href=\"http://google.com\" target=\"_blank\">google.com</a>\n .\n </p>\n </div>\n\n <ng-container *ngIf=\"publicKey | async as key\">\n <!-- The captcha itself is in a different container not to confused Angular change detection -->\n <app-grecaptcha\n [siteKey]=\"key\"\n (loaded)=\"setIsLoaded($event)\"\n (scriptError)=\"setScriptError($event)\"\n (tokenOnSuccess)=\"tokenOnSuccess($event)\"\n ></app-grecaptcha>\n </ng-container>\n</div>\n", components: [{ type: i2.GrecaptchaComponent, selector: "app-grecaptcha", inputs: ["siteKey"], outputs: ["loaded", "scriptError", "tokenOnSuccess", "destroyed"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i3.AsyncPipe } });
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SdkRecaptchaComponent, decorators: [{
62
- type: Component,
63
- args: [{
64
- // eslint-disable-next-line @angular-eslint/component-selector
65
- selector: 'captcha',
66
- templateUrl: './sdk-recaptcha.component.html'
67
- }]
68
- }], ctorParameters: function () { return [{ type: i1.RecaptchaService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { grecaptcha: [{
69
- type: ViewChild,
70
- args: [GrecaptchaComponent]
71
- }] } });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXJlY2FwdGNoYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXJlY2FwdGNoYS9zZGstcmVjYXB0Y2hhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9zZGstcmVjYXB0Y2hhL3Nkay1yZWNhcHRjaGEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFHVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQU85QyxNQUFNLE9BQU8scUJBQXFCO0lBYTlCLFlBQ1ksZ0JBQWtDLEVBQ2xDLEdBQXNCO1FBRHRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFUbEMsb0JBQWUsR0FBRyxLQUFLLENBQUM7SUFVckIsQ0FBQztJQUVKLFFBQVE7UUFDSixJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM5RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNoRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUV0RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU07YUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN2QixTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEIsOERBQThEO1lBQzlELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUN4QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzthQUM1QjtZQUNELHlEQUF5RDtZQUN6RCxjQUFjO1lBQ2QsSUFBSSxNQUFNLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDM0I7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3pDO1FBRUQscUNBQXFDO1FBQ3JDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFDbEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFpQjtRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUV6Qiw2Q0FBNkM7UUFDN0MsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQW9CO1FBQy9CLElBQUksQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDO1FBRW5DLDZDQUE2QztRQUM3QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUM1QjtJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7O2tIQXRFUSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwyRkFDbkIsbUJBQW1CLGdEQ25CbEMsa2xEQXVDQTsyRkRyQmEscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNQLCtEQUErRDtvQkFDL0QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFdBQVcsRUFBRSxnQ0FBZ0M7aUJBQ2hEO3VJQUdHLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmVjYXB0Y2hhU2VydmljZSB9IGZyb20gJy4vcmVjYXB0Y2hhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JUZW1wbGF0ZSB9IGZyb20gJy4uL2Vycm9yLXRlbXBsYXRlJztcbmltcG9ydCB7IEdyZWNhcHRjaGFDb21wb25lbnQgfSBmcm9tICcuL2dyZWNhcHRjaGEvZ3JlY2FwdGNoYS5jb21wb25lbnQnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2NhcHRjaGEnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZGstcmVjYXB0Y2hhLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTZGtSZWNhcHRjaGFDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQFZpZXdDaGlsZChHcmVjYXB0Y2hhQ29tcG9uZW50KVxuICAgIGdyZWNhcHRjaGE6IEdyZWNhcHRjaGFDb21wb25lbnQ7XG5cbiAgICBzaG91bGREaXNwbGF5OiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGlzTG9hZGVkOiBib29sZWFuO1xuICAgIGhhc0xvYWRpbmdFcnJvciA9IGZhbHNlO1xuICAgIGVycm9yczogT2JzZXJ2YWJsZTxFcnJvclRlbXBsYXRlW10+O1xuICAgIHB1YmxpY0tleTogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gICAgcHJpdmF0ZSBlcnJvcnNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIGZvcmNlRGV0ZWN0Q2hhbmdlOiAoKSA9PiB2b2lkO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVjYXB0Y2hhU2VydmljZTogUmVjYXB0Y2hhU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVjYXB0Y2hhU2VydmljZS5jbGVhckVycm9ycygpO1xuICAgICAgICB0aGlzLnNob3VsZERpc3BsYXkgPSB0aGlzLnJlY2FwdGNoYVNlcnZpY2UuZ2V0U2hvdWxkRGlzcGxheSgpO1xuICAgICAgICB0aGlzLmVycm9ycyA9IHRoaXMucmVjYXB0Y2hhU2VydmljZS5nZXRFcnJvcnMoKTtcbiAgICAgICAgdGhpcy5wdWJsaWNLZXkgPSB0aGlzLnJlY2FwdGNoYVNlcnZpY2UuZ2V0UHVibGljS2V5KCk7XG5cbiAgICAgICAgdGhpcy5lcnJvcnNTdWJzY3JpcHRpb24gPSB0aGlzLmVycm9yc1xuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGVycm9ycyA9PiB7XG4gICAgICAgICAgICAgICAgLy8gSGFjayBiZWNhdXNlIHRoZSBjYXB0Y2hhIGNvbmZ1c2VzIEFuZ3VsYXIgZGV0ZWN0aW9uIGNoYW5nZS5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5mb3JjZURldGVjdENoYW5nZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcmNlRGV0ZWN0Q2hhbmdlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIEluIGNhc2Ugb2YgZXJyb3JzLCByZXNldCB0aGUgY2FwdGNoYSBmb3IgYSBiZXR0ZXIgdXNlclxuICAgICAgICAgICAgICAgIC8vIGV4cGVyaWVuY2UuXG4gICAgICAgICAgICAgICAgaWYgKGVycm9ycy5sZW5ndGggJiYgdGhpcy5ncmVjYXB0Y2hhKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ3JlY2FwdGNoYS5yZXNldCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZm9yY2VEZXRlY3RDaGFuZ2UgPSAoKSA9PiB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVycm9yc1N1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEF2b2lkIGNkciBvbiBkZXN0cm95ZWQgY29tcG9uZW50cy5cbiAgICAgICAgdGhpcy5mb3JjZURldGVjdENoYW5nZSA9IG51bGw7XG4gICAgfVxuXG4gICAgc2V0SXNMb2FkZWQoaXNMb2FkZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IGlzTG9hZGVkO1xuXG4gICAgICAgIC8vIEFuZ3VsYXIgZG9lc24ndCBkZXRlY3QgdGhlIGNoYW5nZSBwcm9wZXJseVxuICAgICAgICBpZiAodGhpcy5mb3JjZURldGVjdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5mb3JjZURldGVjdENoYW5nZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0U2NyaXB0RXJyb3Ioc2NyaXB0RXJyb3I6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNMb2FkaW5nRXJyb3IgPSBzY3JpcHRFcnJvcjtcblxuICAgICAgICAvLyBBbmd1bGFyIGRvZXNuJ3QgZGV0ZWN0IHRoZSBjaGFuZ2UgcHJvcGVybHlcbiAgICAgICAgaWYgKHRoaXMuZm9yY2VEZXRlY3RDaGFuZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuZm9yY2VEZXRlY3RDaGFuZ2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRva2VuT25TdWNjZXNzKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWNhcHRjaGFTZXJ2aWNlLm9uU3VjY2Vzcyh0b2tlbik7XG4gICAgfVxufVxuIiwiPCEtLSBPbmx5IGRpc3BsYXkgdGhlIGNvbnRlbnQgaWYgdGhlIGNhcHRjaGEgc2hvdWxkIGJlIGRpc3BsYXllZCAodXNlciBub3QgY29ubmVjdGVkIGZvciBpbnN0YW5jZSkgLS0+XG48ZGl2IGlkPVwiZm9laG5fcmVjYXB0Y2hhQ29udGFpbmVyXCIgKm5nSWY9XCJzaG91bGREaXNwbGF5IHwgYXN5bmNcIj5cbiAgICA8IS0tIE1hbnVhbCBlcnJvciBoYW5kbGluZyBiZWNhdXNlIGVycm9ycyBjYW4gY29tZSBmcm9tIG11bHRpcGxlIHNvdXJjZXMgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9ycyB8IGFzeW5jIGFzIGVyclwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbC1mZWVkYmFjayB0ZXh0LWRhbmdlclwiXG4gICAgICAgICAgICAqbmdJZj1cImVyciAmJiBlcnIubGVuZ3RoXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHAgKm5nRm9yPVwibGV0IGVycm9yIG9mIGVyclwiPnt7IGVycm9yLm1lc3NhZ2UgfX08L3A+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLSBXaGlsZSB0aGUgY2FwdGNoYSBpcyBiZWluZyBsb2FkZWQgLS0+XG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIiAqbmdJZj1cIiFpc0xvYWRlZCAmJiAhaGFzTG9hZGluZ0Vycm9yXCI+XG4gICAgICAgIENoYXJnZW1lbnQgZHUgY2FwdGNoYVxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBJbiBjYXNlIGdvb2dsZS5jb20gY2Fubm90IGJlIHJlYWNoZWQgZm9yIGluc3RhbmNlIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiAqbmdJZj1cImhhc0xvYWRpbmdFcnJvclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMCBhbGVydC1oZWFkaW5nIGg0XCI+XG4gICAgICAgICAgICBVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZSBsb3JzIGR1IGNoYXJnZW1lbnQgZHUgY2FwdGNoYS5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxwPlxuICAgICAgICAgICAgTWVyY2kgZGUgdsOpcmlmaWVyIHF1ZSB2b3RyZSBuYXZpZ2F0ZXVyIHBldXQgYWNjw6lkZXIgw6BcbiAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwOi8vZ29vZ2xlLmNvbVwiIHRhcmdldD1cIl9ibGFua1wiPmdvb2dsZS5jb208L2E+XG4gICAgICAgICAgICAuXG4gICAgICAgIDwvcD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwdWJsaWNLZXkgfCBhc3luYyBhcyBrZXlcIj5cbiAgICAgICAgPCEtLSBUaGUgY2FwdGNoYSBpdHNlbGYgaXMgaW4gYSBkaWZmZXJlbnQgY29udGFpbmVyIG5vdCB0byBjb25mdXNlZCBBbmd1bGFyIGNoYW5nZSBkZXRlY3Rpb24gLS0+XG4gICAgICAgIDxhcHAtZ3JlY2FwdGNoYVxuICAgICAgICAgICAgW3NpdGVLZXldPVwia2V5XCJcbiAgICAgICAgICAgIChsb2FkZWQpPVwic2V0SXNMb2FkZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAoc2NyaXB0RXJyb3IpPVwic2V0U2NyaXB0RXJyb3IoJGV2ZW50KVwiXG4gICAgICAgICAgICAodG9rZW5PblN1Y2Nlc3MpPVwidG9rZW5PblN1Y2Nlc3MoJGV2ZW50KVwiXG4gICAgICAgID48L2FwcC1ncmVjYXB0Y2hhPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -1,44 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { of } from 'rxjs';
3
- import { map, shareReplay } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common/http";
6
- export const SESSION_INFO_API_URL = 'api/sessionInfo/data';
7
- export class SessionInfo {
8
- constructor(http) {
9
- this.http = http;
10
- }
11
- get data() {
12
- if (this.neverConnected_) {
13
- return of(null);
14
- }
15
- else {
16
- if (!this.pulling_) {
17
- this.pulling_ = this.http
18
- .get(SESSION_INFO_API_URL)
19
- .pipe(map((r) => {
20
- if (r) {
21
- return (this.sessionData = r);
22
- }
23
- return null;
24
- }), shareReplay(1));
25
- }
26
- return this.pulling_;
27
- }
28
- }
29
- set neverConnected(neverConnected) {
30
- this.neverConnected_ = neverConnected;
31
- }
32
- get neverConnected() {
33
- return this.neverConnected_;
34
- }
35
- }
36
- SessionInfo.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SessionInfo, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
37
- SessionInfo.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SessionInfo, providedIn: 'root' });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SessionInfo, decorators: [{
39
- type: Injectable,
40
- args: [{
41
- providedIn: 'root'
42
- }]
43
- }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1pbmZvLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXNlc3Npb24taW5mby9zZXNzaW9uLWluZm8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRWxELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLHNCQUFzQixDQUFDO0FBSzNELE1BQU0sT0FBTyxXQUFXO0lBS3BCLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFBRyxDQUFDO0lBRXhDLElBQUksSUFBSTtRQUNKLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuQjthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUk7cUJBQ3BCLEdBQUcsQ0FBa0Isb0JBQW9CLENBQUM7cUJBQzFDLElBQUksQ0FDRCxHQUFHLENBQUMsQ0FBQyxDQUFrQixFQUFFLEVBQUU7b0JBQ3ZCLElBQUksQ0FBQyxFQUFFO3dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO3FCQUNqQztvQkFDRCxPQUFPLElBQUksQ0FBQztnQkFDaEIsQ0FBQyxDQUFDLEVBQ0YsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNqQixDQUFDO2FBQ1Q7WUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsY0FBdUI7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDOzt3R0FsQ1EsV0FBVzs0R0FBWCxXQUFXLGNBRlIsTUFBTTsyRkFFVCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2Vzc2lvbkluZm9EYXRhIH0gZnJvbSAnLi9zZXNzaW9uLWluZm8tZGF0YSc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgU0VTU0lPTl9JTkZPX0FQSV9VUkwgPSAnYXBpL3Nlc3Npb25JbmZvL2RhdGEnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNlc3Npb25JbmZvIHtcbiAgICBwcml2YXRlIHNlc3Npb25EYXRhOiBTZXNzaW9uSW5mb0RhdGE7XG4gICAgcHJpdmF0ZSBwdWxsaW5nXzogT2JzZXJ2YWJsZTxTZXNzaW9uSW5mb0RhdGE+O1xuICAgIHByaXZhdGUgbmV2ZXJDb25uZWN0ZWRfOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxuXG4gICAgZ2V0IGRhdGEoKTogT2JzZXJ2YWJsZTxTZXNzaW9uSW5mb0RhdGE+IHtcbiAgICAgICAgaWYgKHRoaXMubmV2ZXJDb25uZWN0ZWRfKSB7XG4gICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMucHVsbGluZ18pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnB1bGxpbmdfID0gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgICAgIC5nZXQ8U2Vzc2lvbkluZm9EYXRhPihTRVNTSU9OX0lORk9fQVBJX1VSTClcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoKHI6IFNlc3Npb25JbmZvRGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAodGhpcy5zZXNzaW9uRGF0YSA9IHIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1bGxpbmdfO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0IG5ldmVyQ29ubmVjdGVkKG5ldmVyQ29ubmVjdGVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMubmV2ZXJDb25uZWN0ZWRfID0gbmV2ZXJDb25uZWN0ZWQ7XG4gICAgfVxuXG4gICAgZ2V0IG5ldmVyQ29ubmVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uZXZlckNvbm5lY3RlZF87XG4gICAgfVxufVxuIl19
@@ -1,38 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { SupportAlertLevel } from './support-alert.model';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./support-alert.service";
5
- import * as i2 from "@angular/common";
6
- export class SupportAlertComponent {
7
- constructor(supportAlertService) {
8
- this.supportAlertService = supportAlertService;
9
- }
10
- hideAlert(alert) {
11
- this.supportAlertService.hideAlert(alert);
12
- }
13
- getAlertClass(alert) {
14
- switch (alert.level) {
15
- case SupportAlertLevel.INFO:
16
- return 'alert-info';
17
- case SupportAlertLevel.WARNING:
18
- return 'alert-warning';
19
- case SupportAlertLevel.IMPORTANT:
20
- return 'alert-danger';
21
- default:
22
- return 'alert-info';
23
- }
24
- }
25
- }
26
- SupportAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SupportAlertComponent, deps: [{ token: i1.SupportAlertService }], target: i0.ɵɵFactoryTarget.Component });
27
- SupportAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: SupportAlertComponent, selector: "sdk-support-alert", inputs: { alert: "alert" }, ngImport: i0, template: "<section\n [class]=\"'alert alert-dismissible fade show ' + getAlertClass(alert)\"\n role=\"alert\"\n *ngIf=\"!!alert\"\n>\n <h3\n class=\"alert-heading mt-0 h5\"\n *ngIf=\"alert.messageTitle && alert.messageTitle.length > 0\"\n [innerHtml]=\"alert.messageTitle\"\n ></h3>\n\n <div [innerHtml]=\"alert.messageBody\"></div>\n\n <button\n *ngIf=\"!alert.blocking\"\n type=\"button\"\n class=\"close\"\n aria-label=\"Cacher ce message\"\n title=\"Cacher ce message\"\n (click)=\"hideAlert(alert)\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n</section>\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SupportAlertComponent, decorators: [{
29
- type: Component,
30
- args: [{
31
- // eslint-disable-next-line @angular-eslint/component-selector
32
- selector: 'sdk-support-alert',
33
- templateUrl: './support-alert.component.html'
34
- }]
35
- }], ctorParameters: function () { return [{ type: i1.SupportAlertService }]; }, propDecorators: { alert: [{
36
- type: Input
37
- }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1hbGVydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXN1cHBvcnQtYWxlcnQvc3VwcG9ydC1hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXN1cHBvcnQtYWxlcnQvc3VwcG9ydC1hbGVydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQWdCLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7QUFReEUsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QixZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUFHLENBQUM7SUFFaEUsU0FBUyxDQUFDLEtBQW1CO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFtQjtRQUM3QixRQUFRLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDakIsS0FBSyxpQkFBaUIsQ0FBQyxJQUFJO2dCQUN2QixPQUFPLFlBQVksQ0FBQztZQUN4QixLQUFLLGlCQUFpQixDQUFDLE9BQU87Z0JBQzFCLE9BQU8sZUFBZSxDQUFDO1lBQzNCLEtBQUssaUJBQWlCLENBQUMsU0FBUztnQkFDNUIsT0FBTyxjQUFjLENBQUM7WUFDMUI7Z0JBQ0ksT0FBTyxZQUFZLENBQUM7U0FDM0I7SUFDTCxDQUFDOztrSEFyQlEscUJBQXFCO3NHQUFyQixxQkFBcUIscUZDVGxDLDJwQkF3QkE7MkZEZmEscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsV0FBVyxFQUFFLGdDQUFnQztpQkFDaEQ7MEdBR0csS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3VwcG9ydEFsZXJ0LCBTdXBwb3J0QWxlcnRMZXZlbCB9IGZyb20gJy4vc3VwcG9ydC1hbGVydC5tb2RlbCc7XG5pbXBvcnQgeyBTdXBwb3J0QWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi9zdXBwb3J0LWFsZXJ0LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnc2RrLXN1cHBvcnQtYWxlcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zdXBwb3J0LWFsZXJ0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTdXBwb3J0QWxlcnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpXG4gICAgYWxlcnQ6IFN1cHBvcnRBbGVydDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc3VwcG9ydEFsZXJ0U2VydmljZTogU3VwcG9ydEFsZXJ0U2VydmljZSkge31cblxuICAgIGhpZGVBbGVydChhbGVydDogU3VwcG9ydEFsZXJ0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3VwcG9ydEFsZXJ0U2VydmljZS5oaWRlQWxlcnQoYWxlcnQpO1xuICAgIH1cblxuICAgIGdldEFsZXJ0Q2xhc3MoYWxlcnQ6IFN1cHBvcnRBbGVydCk6IHN0cmluZyB7XG4gICAgICAgIHN3aXRjaCAoYWxlcnQubGV2ZWwpIHtcbiAgICAgICAgICAgIGNhc2UgU3VwcG9ydEFsZXJ0TGV2ZWwuSU5GTzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LWluZm8nO1xuICAgICAgICAgICAgY2FzZSBTdXBwb3J0QWxlcnRMZXZlbC5XQVJOSU5HOlxuICAgICAgICAgICAgICAgIHJldHVybiAnYWxlcnQtd2FybmluZyc7XG4gICAgICAgICAgICBjYXNlIFN1cHBvcnRBbGVydExldmVsLklNUE9SVEFOVDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LWRhbmdlcic7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiAnYWxlcnQtaW5mbyc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8c2VjdGlvblxuICAgIFtjbGFzc109XCInYWxlcnQgYWxlcnQtZGlzbWlzc2libGUgZmFkZSBzaG93ICcgKyBnZXRBbGVydENsYXNzKGFsZXJ0KVwiXG4gICAgcm9sZT1cImFsZXJ0XCJcbiAgICAqbmdJZj1cIiEhYWxlcnRcIlxuPlxuICAgIDxoM1xuICAgICAgICBjbGFzcz1cImFsZXJ0LWhlYWRpbmcgbXQtMCBoNVwiXG4gICAgICAgICpuZ0lmPVwiYWxlcnQubWVzc2FnZVRpdGxlICYmIGFsZXJ0Lm1lc3NhZ2VUaXRsZS5sZW5ndGggPiAwXCJcbiAgICAgICAgW2lubmVySHRtbF09XCJhbGVydC5tZXNzYWdlVGl0bGVcIlxuICAgID48L2gzPlxuXG4gICAgPGRpdiBbaW5uZXJIdG1sXT1cImFsZXJ0Lm1lc3NhZ2VCb2R5XCI+PC9kaXY+XG5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWFsZXJ0LmJsb2NraW5nXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiY2xvc2VcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiQ2FjaGVyIGNlIG1lc3NhZ2VcIlxuICAgICAgICB0aXRsZT1cIkNhY2hlciBjZSBtZXNzYWdlXCJcbiAgICAgICAgKGNsaWNrKT1cImhpZGVBbGVydChhbGVydClcIlxuICAgID5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -1,113 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject, combineLatest, interval, merge } from 'rxjs';
3
- import { filter, map, shareReplay, switchMap } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common/http";
6
- const ALERTS_REFRESH_SECONDS = 5 * 60;
7
- // Shared between prestations.
8
- const STORAGE_KEY = 'hidden-alerts';
9
- /**
10
- * @param ids alert ids to be dismissed
11
- */
12
- const persistDismissedAlertIds = (ids) => {
13
- try {
14
- localStorage.setItem(STORAGE_KEY, JSON.stringify(ids));
15
- }
16
- catch (e) {
17
- // Nothing in case the local storage fails.
18
- }
19
- };
20
- /**
21
- * @returns array
22
- */
23
- const getPersistedDismissedAlertIds = () => {
24
- try {
25
- const storageValue = localStorage.getItem(STORAGE_KEY);
26
- if (!storageValue) {
27
- return [];
28
- }
29
- return JSON.parse(storageValue);
30
- }
31
- catch (e) {
32
- // In case the storage fails, we don't want to impact the user.
33
- return [];
34
- }
35
- };
36
- export class SupportAlertService {
37
- constructor(http) {
38
- this.http = http;
39
- this.hiddenAlertIds = new BehaviorSubject(getPersistedDismissedAlertIds());
40
- this.refreshTrigger = new BehaviorSubject(true);
41
- this.refreshInterval = interval(ALERTS_REFRESH_SECONDS * 1000);
42
- this.supportAlertUrl = new BehaviorSubject('');
43
- // This ensures that we load the alerts when the page loads and at every configured interval.
44
- const refreshAlertsTriggerAndTimer = merge(this.refreshTrigger, this.refreshInterval);
45
- this.allAlerts = combineLatest([
46
- this.supportAlertUrl,
47
- refreshAlertsTriggerAndTimer
48
- ]).pipe(
49
- // Only if an url is defined
50
- filter(([url]) => !!url),
51
- // Load the alerts from the server.
52
- switchMap(([url]) => this.http.get(url)), map(supportAlerts => (!!supportAlerts ? supportAlerts : [])),
53
- // Ensures that observables that depend on this one don't re-trigger an http call.
54
- shareReplay(1));
55
- this.hasAlerts = this.allAlerts.pipe(map(alerts => !!alerts.length));
56
- this.hasAtLeastOneBlockingAlert = this.allAlerts.pipe(map(alerts => alerts.some(alert => alert.blocking)));
57
- this.displayableAlerts = combineLatest([
58
- this.allAlerts,
59
- this.hiddenAlertIds
60
- ]).pipe(
61
- // Filter the alerts that are hidden by the user, per Id.
62
- map(([alerts, hiddenAlertsId]) =>
63
- // Always display the blocking alerts, in case the alert is hidden but edited.
64
- alerts.filter(alert => alert.blocking || !hiddenAlertsId.includes(alert.id))));
65
- this.hasHiddenAlerts = combineLatest([
66
- this.allAlerts,
67
- this.displayableAlerts
68
- ]).pipe(map(([allAlerts, displayableAlerts]) => allAlerts.length !== displayableAlerts.length));
69
- // Persist the ids that are dismissed.
70
- this.hiddenAlertIdsSubscriptions = this.hiddenAlertIds.subscribe(persistDismissedAlertIds);
71
- }
72
- ngOnDestroy() {
73
- this.hiddenAlertIdsSubscriptions.unsubscribe();
74
- }
75
- setSupportAlertUrl(supportAlertUrl) {
76
- this.supportAlertUrl.next(supportAlertUrl);
77
- }
78
- hideAlert(alert) {
79
- if (!alert.blocking) {
80
- this.hiddenAlertIds.next([
81
- alert.id,
82
- ...this.hiddenAlertIds.getValue()
83
- ]);
84
- }
85
- }
86
- restoreAllAlerts() {
87
- this.hiddenAlertIds.next([]);
88
- }
89
- refreshAlerts() {
90
- this.refreshTrigger.next(true);
91
- }
92
- getDisplayableAlerts() {
93
- return this.displayableAlerts;
94
- }
95
- getHasAlerts() {
96
- return this.hasAlerts;
97
- }
98
- getHasHiddenAlerts() {
99
- return this.hasHiddenAlerts;
100
- }
101
- getHasAtLeastOneBlockingAlert() {
102
- return this.hasAtLeastOneBlockingAlert;
103
- }
104
- }
105
- SupportAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SupportAlertService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
106
- SupportAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SupportAlertService, providedIn: 'root' });
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: SupportAlertService, decorators: [{
108
- type: Injectable,
109
- args: [{
110
- providedIn: 'root'
111
- }]
112
- }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1hbGVydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL3Nkay1zdXBwb3J0LWFsZXJ0L3N1cHBvcnQtYWxlcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFDSCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFFBQVEsRUFDUixLQUFLLEVBR1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUVyRSxNQUFNLHNCQUFzQixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7QUFFdEMsOEJBQThCO0FBQzlCLE1BQU0sV0FBVyxHQUFHLGVBQWUsQ0FBQztBQUVwQzs7R0FFRztBQUNILE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxHQUFhLEVBQVEsRUFBRTtJQUNyRCxJQUFJO1FBQ0EsWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQzFEO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDUiwyQ0FBMkM7S0FDOUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sNkJBQTZCLEdBQUcsR0FBYSxFQUFFO0lBQ2pELElBQUk7UUFDQSxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDZixPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQ25DO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDUiwrREFBK0Q7UUFD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QUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsZUFBdUI7UUFDdEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFtQjtRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztnQkFDckIsS0FBSyxDQUFDLEVBQUU7Z0JBQ1IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTthQUNwQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxvQkFBb0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDbEMsQ0FBQztJQUVELFlBQVk7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVELGtCQUFrQjtRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsNkJBQTZCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLDBCQUEwQixDQUFDO0lBQzNDLENBQUM7O2dIQTlHUSxtQkFBbUI7b0hBQW5CLG1CQUFtQixjQUZoQixNQUFNOzJGQUVULG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1cHBvcnRBbGVydCB9IGZyb20gJy4vc3VwcG9ydC1hbGVydC5tb2RlbCc7XG5pbXBvcnQge1xuICAgIEJlaGF2aW9yU3ViamVjdCxcbiAgICBjb21iaW5lTGF0ZXN0LFxuICAgIGludGVydmFsLFxuICAgIG1lcmdlLFxuICAgIE9ic2VydmFibGUsXG4gICAgU3Vic2NyaXB0aW9uXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBBTEVSVFNfUkVGUkVTSF9TRUNPTkRTID0gNSAqIDYwO1xuXG4vLyBTaGFyZWQgYmV0d2VlbiBwcmVzdGF0aW9ucy5cbmNvbnN0IFNUT1JBR0VfS0VZID0gJ2hpZGRlbi1hbGVydHMnO1xuXG4vKipcbiAqIEBwYXJhbSBpZHMgYWxlcnQgaWRzIHRvIGJlIGRpc21pc3NlZFxuICovXG5jb25zdCBwZXJzaXN0RGlzbWlzc2VkQWxlcnRJZHMgPSAoaWRzOiBudW1iZXJbXSk6IHZvaWQgPT4ge1xuICAgIHRyeSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFNUT1JBR0VfS0VZLCBKU09OLnN0cmluZ2lmeShpZHMpKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIE5vdGhpbmcgaW4gY2FzZSB0aGUgbG9jYWwgc3RvcmFnZSBmYWlscy5cbiAgICB9XG59O1xuXG4vKipcbiAqIEByZXR1cm5zIGFycmF5XG4gKi9cbmNvbnN0IGdldFBlcnNpc3RlZERpc21pc3NlZEFsZXJ0SWRzID0gKCk6IG51bWJlcltdID0+IHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBzdG9yYWdlVmFsdWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShTVE9SQUdFX0tFWSk7XG4gICAgICAgIGlmICghc3RvcmFnZVZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShzdG9yYWdlVmFsdWUpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgc3RvcmFnZSBmYWlscywgd2UgZG9uJ3Qgd2FudCB0byBpbXBhY3QgdGhlIHVzZXIuXG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFN1cHBvcnRBbGVydFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxsQWxlcnRzOiBPYnNlcnZhYmxlPFN1cHBvcnRBbGVydFtdPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpc3BsYXlhYmxlQWxlcnRzOiBPYnNlcnZhYmxlPFN1cHBvcnRBbGVydFtdPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0FsZXJ0czogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0hpZGRlbkFsZXJ0czogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0F0TGVhc3RPbmVCbG9ja2luZ0FsZXJ0OiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGlkZGVuQWxlcnRJZHMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcltdPihcbiAgICAgICAgZ2V0UGVyc2lzdGVkRGlzbWlzc2VkQWxlcnRJZHMoKVxuICAgICk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWRkZW5BbGVydElkc1N1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZnJlc2hUcmlnZ2VyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZnJlc2hJbnRlcnZhbCA9IGludGVydmFsKEFMRVJUU19SRUZSRVNIX1NFQ09ORFMgKiAxMDAwKTtcblxuICAgIHByaXZhdGUgc3VwcG9ydEFsZXJ0VXJsID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xuICAgICAgICAvLyBUaGlzIGVuc3VyZXMgdGhhdCB3ZSBsb2FkIHRoZSBhbGVydHMgd2hlbiB0aGUgcGFnZSBsb2FkcyBhbmQgYXQgZXZlcnkgY29uZmlndXJlZCBpbnRlcnZhbC5cbiAgICAgICAgY29uc3QgcmVmcmVzaEFsZXJ0c1RyaWdnZXJBbmRUaW1lciA9IG1lcmdlKFxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoVHJpZ2dlcixcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaEludGVydmFsXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5hbGxBbGVydHMgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuc3VwcG9ydEFsZXJ0VXJsLFxuICAgICAgICAgICAgcmVmcmVzaEFsZXJ0c1RyaWdnZXJBbmRUaW1lclxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgLy8gT25seSBpZiBhbiB1cmwgaXMgZGVmaW5lZFxuICAgICAgICAgICAgZmlsdGVyKChbdXJsXSkgPT4gISF1cmwpLFxuICAgICAgICAgICAgLy8gTG9hZCB0aGUgYWxlcnRzIGZyb20gdGhlIHNlcnZlci5cbiAgICAgICAgICAgIHN3aXRjaE1hcCgoW3VybF0pID0+IHRoaXMuaHR0cC5nZXQ8U3VwcG9ydEFsZXJ0W10+KHVybCkpLFxuICAgICAgICAgICAgbWFwKHN1cHBvcnRBbGVydHMgPT4gKCEhc3VwcG9ydEFsZXJ0cyA/IHN1cHBvcnRBbGVydHMgOiBbXSkpLFxuICAgICAgICAgICAgLy8gRW5zdXJlcyB0aGF0IG9ic2VydmFibGVzIHRoYXQgZGVwZW5kIG9uIHRoaXMgb25lIGRvbid0IHJlLXRyaWdnZXIgYW4gaHR0cCBjYWxsLlxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmhhc0FsZXJ0cyA9IHRoaXMuYWxsQWxlcnRzLnBpcGUobWFwKGFsZXJ0cyA9PiAhIWFsZXJ0cy5sZW5ndGgpKTtcblxuICAgICAgICB0aGlzLmhhc0F0TGVhc3RPbmVCbG9ja2luZ0FsZXJ0ID0gdGhpcy5hbGxBbGVydHMucGlwZShcbiAgICAgICAgICAgIG1hcChhbGVydHMgPT4gYWxlcnRzLnNvbWUoYWxlcnQgPT4gYWxlcnQuYmxvY2tpbmcpKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuZGlzcGxheWFibGVBbGVydHMgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuYWxsQWxlcnRzLFxuICAgICAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkc1xuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgLy8gRmlsdGVyIHRoZSBhbGVydHMgdGhhdCBhcmUgaGlkZGVuIGJ5IHRoZSB1c2VyLCBwZXIgSWQuXG4gICAgICAgICAgICBtYXAoKFthbGVydHMsIGhpZGRlbkFsZXJ0c0lkXSkgPT5cbiAgICAgICAgICAgICAgICAvLyBBbHdheXMgZGlzcGxheSB0aGUgYmxvY2tpbmcgYWxlcnRzLCBpbiBjYXNlIHRoZSBhbGVydCBpcyBoaWRkZW4gYnV0IGVkaXRlZC5cbiAgICAgICAgICAgICAgICBhbGVydHMuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICBhbGVydCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYWxlcnQuYmxvY2tpbmcgfHwgIWhpZGRlbkFsZXJ0c0lkLmluY2x1ZGVzKGFsZXJ0LmlkKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmhhc0hpZGRlbkFsZXJ0cyA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgdGhpcy5hbGxBbGVydHMsXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlhYmxlQWxlcnRzXG4gICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgKFthbGxBbGVydHMsIGRpc3BsYXlhYmxlQWxlcnRzXSkgPT5cbiAgICAgICAgICAgICAgICAgICAgYWxsQWxlcnRzLmxlbmd0aCAhPT0gZGlzcGxheWFibGVBbGVydHMubGVuZ3RoXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG5cbiAgICAgICAgLy8gUGVyc2lzdCB0aGUgaWRzIHRoYXQgYXJlIGRpc21pc3NlZC5cbiAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkc1N1YnNjcmlwdGlvbnMgPSB0aGlzLmhpZGRlbkFsZXJ0SWRzLnN1YnNjcmliZShcbiAgICAgICAgICAgIHBlcnNpc3REaXNtaXNzZWRBbGVydElkc1xuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGRlbkFsZXJ0SWRzU3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHNldFN1cHBvcnRBbGVydFVybChzdXBwb3J0QWxlcnRVcmw6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1cHBvcnRBbGVydFVybC5uZXh0KHN1cHBvcnRBbGVydFVybCk7XG4gICAgfVxuXG4gICAgaGlkZUFsZXJ0KGFsZXJ0OiBTdXBwb3J0QWxlcnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFhbGVydC5ibG9ja2luZykge1xuICAgICAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkcy5uZXh0KFtcbiAgICAgICAgICAgICAgICBhbGVydC5pZCxcbiAgICAgICAgICAgICAgICAuLi50aGlzLmhpZGRlbkFsZXJ0SWRzLmdldFZhbHVlKClcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzdG9yZUFsbEFsZXJ0cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkcy5uZXh0KFtdKTtcbiAgICB9XG5cbiAgICByZWZyZXNoQWxlcnRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2hUcmlnZ2VyLm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgZ2V0RGlzcGxheWFibGVBbGVydHMoKTogT2JzZXJ2YWJsZTxTdXBwb3J0QWxlcnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNwbGF5YWJsZUFsZXJ0cztcbiAgICB9XG5cbiAgICBnZXRIYXNBbGVydHMoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0FsZXJ0cztcbiAgICB9XG5cbiAgICBnZXRIYXNIaWRkZW5BbGVydHMoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0hpZGRlbkFsZXJ0cztcbiAgICB9XG5cbiAgICBnZXRIYXNBdExlYXN0T25lQmxvY2tpbmdBbGVydCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQXRMZWFzdE9uZUJsb2NraW5nQWxlcnQ7XG4gICAgfVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export const supportedBrowsers = /((CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS)[ +]+(13[_\.]3|13[_\.]([4-9]|\d{2,})|13[_\.]7|13[_\.]([8-9]|\d{2,})|(1[4-9]|[2-9]\d|\d{3,})[_\.]\d+|14[_\.]0|14[_\.]([1-9]|\d{2,})|14[_\.]4|14[_\.]([5-9]|\d{2,})|14[_\.]7|14[_\.]([8-9]|\d{2,})|(1[5-9]|[2-9]\d|\d{3,})[_\.]\d+)(?:[_\.]\d+)?)|(CFNetwork\/8.* Darwin\/16\.5\.\d+)|(CFNetwork\/8.* Darwin\/16\.6\.\d+)|(CFNetwork\/8.* Darwin\/16\.7\.\d+)|(OperaMini(?:\/att)?\/?(\d+)?(?:\.\d+)?(?:\.\d+)?)|(Opera\/.+Opera Mobi.+Version\/(64\.0|64\.([1-9]|\d{2,})|(6[5-9]|[7-9]\d|\d{3,})\.\d+))|(Opera\/(64\.0|64\.([1-9]|\d{2,})|(6[5-9]|[7-9]\d|\d{3,})\.\d+).+Opera Mobi)|(Opera Mobi.+Opera(?:\/|\s+)(64\.0|64\.([1-9]|\d{2,})|(6[5-9]|[7-9]\d|\d{3,})\.\d+))|(SamsungBrowser\/(13\.0|13\.([1-9]|\d{2,})|(1[4-9]|[2-9]\d|\d{3,})\.\d+))|(Edge\/(85(?:\.0)?|85(?:\.([1-9]|\d{2,}))?|(8[6-9]|9\d|\d{3,})(?:\.\d+)?))|(HeadlessChrome((?:\/85\.0\.\d+)?|(?:\/85\.([1-9]|\d{2,})\.\d+)?|(?:\/(8[6-9]|9\d|\d{3,})\.\d+\.\d+)?))|((Chromium|Chrome)\/(85\.0|85\.([1-9]|\d{2,})|(8[6-9]|9\d|\d{3,})\.\d+)(?:\.\d+)?)|(Version\/(13\.1|13\.([2-9]|\d{2,})|(1[4-9]|[2-9]\d|\d{3,})\.\d+|14\.0|14\.([1-9]|\d{2,})|(1[5-9]|[2-9]\d|\d{3,})\.\d+)(?:\.\d+)?.*Safari\/)|(Firefox\/(68\.0|68\.([1-9]|\d{2,})|(69|[7-9]\d|\d{3,})\.\d+|78\.0|78\.([1-9]|\d{2,})|(79|[8-9]\d|\d{3,})\.\d+|80\.0|80\.([1-9]|\d{2,})|(8[1-9]|9\d|\d{3,})\.\d+)\.\d+)|(Firefox\/(68\.0|68\.([1-9]|\d{2,})|(69|[7-9]\d|\d{3,})\.\d+|78\.0|78\.([1-9]|\d{2,})|(79|[8-9]\d|\d{3,})\.\d+|80\.0|80\.([1-9]|\d{2,})|(8[1-9]|9\d|\d{3,})\.\d+)(pre|[ab]\d+[a-z]*)?)/;
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydGVkLWJyb3dzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc3VwcG9ydGVkLWJyb3dzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsMi9DQUEyL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBzdXBwb3J0ZWRCcm93c2VycyA9IC8oKENQVVsgK11PU3xpUGhvbmVbICtdT1N8Q1BVWyArXWlQaG9uZXxDUFUgSVBob25lIE9TKVsgK10rKDEzW19cXC5dM3wxM1tfXFwuXShbNC05XXxcXGR7Mix9KXwxM1tfXFwuXTd8MTNbX1xcLl0oWzgtOV18XFxkezIsfSl8KDFbNC05XXxbMi05XVxcZHxcXGR7Myx9KVtfXFwuXVxcZCt8MTRbX1xcLl0wfDE0W19cXC5dKFsxLTldfFxcZHsyLH0pfDE0W19cXC5dNHwxNFtfXFwuXShbNS05XXxcXGR7Mix9KXwxNFtfXFwuXTd8MTRbX1xcLl0oWzgtOV18XFxkezIsfSl8KDFbNS05XXxbMi05XVxcZHxcXGR7Myx9KVtfXFwuXVxcZCspKD86W19cXC5dXFxkKyk/KXwoQ0ZOZXR3b3JrXFwvOC4qIERhcndpblxcLzE2XFwuNVxcLlxcZCspfChDRk5ldHdvcmtcXC84LiogRGFyd2luXFwvMTZcXC42XFwuXFxkKyl8KENGTmV0d29ya1xcLzguKiBEYXJ3aW5cXC8xNlxcLjdcXC5cXGQrKXwoT3BlcmFNaW5pKD86XFwvYXR0KT9cXC8/KFxcZCspPyg/OlxcLlxcZCspPyg/OlxcLlxcZCspPyl8KE9wZXJhXFwvLitPcGVyYSBNb2JpLitWZXJzaW9uXFwvKDY0XFwuMHw2NFxcLihbMS05XXxcXGR7Mix9KXwoNls1LTldfFs3LTldXFxkfFxcZHszLH0pXFwuXFxkKykpfChPcGVyYVxcLyg2NFxcLjB8NjRcXC4oWzEtOV18XFxkezIsfSl8KDZbNS05XXxbNy05XVxcZHxcXGR7Myx9KVxcLlxcZCspLitPcGVyYSBNb2JpKXwoT3BlcmEgTW9iaS4rT3BlcmEoPzpcXC98XFxzKykoNjRcXC4wfDY0XFwuKFsxLTldfFxcZHsyLH0pfCg2WzUtOV18WzctOV1cXGR8XFxkezMsfSlcXC5cXGQrKSl8KFNhbXN1bmdCcm93c2VyXFwvKDEzXFwuMHwxM1xcLihbMS05XXxcXGR7Mix9KXwoMVs0LTldfFsyLTldXFxkfFxcZHszLH0pXFwuXFxkKykpfChFZGdlXFwvKDg1KD86XFwuMCk/fDg1KD86XFwuKFsxLTldfFxcZHsyLH0pKT98KDhbNi05XXw5XFxkfFxcZHszLH0pKD86XFwuXFxkKyk/KSl8KEhlYWRsZXNzQ2hyb21lKCg/OlxcLzg1XFwuMFxcLlxcZCspP3woPzpcXC84NVxcLihbMS05XXxcXGR7Mix9KVxcLlxcZCspP3woPzpcXC8oOFs2LTldfDlcXGR8XFxkezMsfSlcXC5cXGQrXFwuXFxkKyk/KSl8KChDaHJvbWl1bXxDaHJvbWUpXFwvKDg1XFwuMHw4NVxcLihbMS05XXxcXGR7Mix9KXwoOFs2LTldfDlcXGR8XFxkezMsfSlcXC5cXGQrKSg/OlxcLlxcZCspPyl8KFZlcnNpb25cXC8oMTNcXC4xfDEzXFwuKFsyLTldfFxcZHsyLH0pfCgxWzQtOV18WzItOV1cXGR8XFxkezMsfSlcXC5cXGQrfDE0XFwuMHwxNFxcLihbMS05XXxcXGR7Mix9KXwoMVs1LTldfFsyLTldXFxkfFxcZHszLH0pXFwuXFxkKykoPzpcXC5cXGQrKT8uKlNhZmFyaVxcLyl8KEZpcmVmb3hcXC8oNjhcXC4wfDY4XFwuKFsxLTldfFxcZHsyLH0pfCg2OXxbNy05XVxcZHxcXGR7Myx9KVxcLlxcZCt8NzhcXC4wfDc4XFwuKFsxLTldfFxcZHsyLH0pfCg3OXxbOC05XVxcZHxcXGR7Myx9KVxcLlxcZCt8ODBcXC4wfDgwXFwuKFsxLTldfFxcZHsyLH0pfCg4WzEtOV18OVxcZHxcXGR7Myx9KVxcLlxcZCspXFwuXFxkKyl8KEZpcmVmb3hcXC8oNjhcXC4wfDY4XFwuKFsxLTldfFxcZHsyLH0pfCg2OXxbNy05XVxcZHxcXGR7Myx9KVxcLlxcZCt8NzhcXC4wfDc4XFwuKFsxLTldfFxcZHsyLH0pfCg3OXxbOC05XVxcZHxcXGR7Myx9KVxcLlxcZCt8ODBcXC4wfDgwXFwuKFsxLTldfFxcZHsyLH0pfCg4WzEtOV18OVxcZHxcXGR7Myx9KVxcLlxcZCspKHByZXxbYWJdXFxkK1thLXpdKik/KS87XG4iXX0=