@dsivd/prestations-ng 17.0.0-beta.2 → 17.0.0-beta.20

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 (239) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/ESLINT_MIGRATION_GUIDE.md +2 -1
  3. package/UPGRADING_V17.md +385 -38
  4. package/dsivd-prestations-ng-17.0.0-beta.20.tgz +0 -0
  5. package/esm2022/abstract-page-component.mjs +10 -6
  6. package/esm2022/directives/currency-formatter.directive.mjs +4 -4
  7. package/esm2022/directives/formatter.module.mjs +5 -5
  8. package/esm2022/directives/iban-formatter.directive.mjs +4 -4
  9. package/esm2022/directives/ide-formatter.directive.mjs +4 -4
  10. package/esm2022/directives/ndc-formatter.directive.mjs +4 -4
  11. package/esm2022/foehn-address/foehn-address.module.mjs +5 -5
  12. package/esm2022/foehn-address/foehn-display-address.component.mjs +4 -4
  13. package/esm2022/foehn-address/foehn-input-address.component.mjs +9 -5
  14. package/esm2022/foehn-address/foehn-input-foreign-locality.component.mjs +4 -4
  15. package/esm2022/foehn-address/foehn-input-foreign-street.component.mjs +6 -7
  16. package/esm2022/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.mjs +5 -5
  17. package/esm2022/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +6 -6
  18. package/esm2022/foehn-agenda/foehn-agenda.component.mjs +4 -4
  19. package/esm2022/foehn-agenda/foehn-agenda.module.mjs +5 -5
  20. package/esm2022/foehn-autocomplete/foehn-autocomplete.component.mjs +4 -4
  21. package/esm2022/foehn-autocomplete/foehn-autocomplete.module.mjs +5 -5
  22. package/esm2022/foehn-boolean/foehn-boolean-checkbox.component.mjs +4 -4
  23. package/esm2022/foehn-boolean/foehn-boolean-radio.component.mjs +4 -4
  24. package/esm2022/foehn-boolean/foehn-boolean.module.mjs +5 -5
  25. package/esm2022/foehn-breadcrumb/breadcrumb-event.service.mjs +24 -17
  26. package/esm2022/foehn-breadcrumb/foehn-breadcrumb.component.mjs +4 -4
  27. package/esm2022/foehn-breadcrumb/foehn-breadcrumb.module.mjs +5 -5
  28. package/esm2022/foehn-checkables/foehn-checkable-group.component.mjs +36 -34
  29. package/esm2022/foehn-checkables/foehn-checkables.module.mjs +5 -5
  30. package/esm2022/foehn-checkables/foehn-checkbox.component.mjs +4 -4
  31. package/esm2022/foehn-checkables/foehn-radio.component.mjs +4 -4
  32. package/esm2022/foehn-checkables/foehn-select.component.mjs +4 -4
  33. package/esm2022/foehn-confirm-modal/foehn-confirm-modal.component.mjs +5 -5
  34. package/esm2022/foehn-confirm-modal/foehn-confirm-modal.module.mjs +5 -5
  35. package/esm2022/foehn-confirm-modal/foehn-confirm-modal.service.mjs +4 -4
  36. package/esm2022/foehn-date-picker/foehn-date-picker.component.mjs +5 -5
  37. package/esm2022/foehn-date-picker/foehn-date-picker.module.mjs +5 -5
  38. package/esm2022/foehn-date-picker-button/foehn-date-picker-button.component.mjs +4 -4
  39. package/esm2022/foehn-date-picker-button/foehn-date-picker-button.module.mjs +5 -5
  40. package/esm2022/foehn-debug-summary/foehn-debug-summary.component.mjs +4 -4
  41. package/esm2022/foehn-debug-summary/foehn-debug-summary.component.module.mjs +5 -5
  42. package/esm2022/foehn-decision-electronique/foehn-decision-electronique.component.mjs +4 -4
  43. package/esm2022/foehn-decision-electronique/foehn-decision-electronique.module.mjs +5 -5
  44. package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.component.mjs +5 -5
  45. package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.module.mjs +5 -5
  46. package/esm2022/foehn-feedback-notification/foehn-feedback-notification.component.mjs +90 -0
  47. package/esm2022/foehn-feedback-notification/foehn-feedback-notification.module.mjs +32 -0
  48. package/esm2022/foehn-footer/foehn-footer.component.mjs +5 -5
  49. package/esm2022/foehn-footer/foehn-footer.module.mjs +5 -5
  50. package/esm2022/foehn-form/foehn-form.component.mjs +4 -4
  51. package/esm2022/foehn-form/foehn-form.module.mjs +5 -5
  52. package/esm2022/foehn-form/register-ng-model.service.mjs +4 -4
  53. package/esm2022/foehn-growl/foehn-growl.component.mjs +4 -4
  54. package/esm2022/foehn-growl/foehn-growl.module.mjs +5 -5
  55. package/esm2022/foehn-growl/growl-broker.service.mjs +4 -4
  56. package/esm2022/foehn-header/foehn-header.component.mjs +4 -4
  57. package/esm2022/foehn-header/foehn-header.module.mjs +5 -5
  58. package/esm2022/foehn-header/foehn-skip-link.component.mjs +4 -4
  59. package/esm2022/foehn-help-modal/foehn-help-modal.component.mjs +5 -5
  60. package/esm2022/foehn-help-modal/foehn-help-modal.module.mjs +5 -5
  61. package/esm2022/foehn-icons/abstract-icon-component.mjs +4 -4
  62. package/esm2022/foehn-icons/foehn-icon-calendar.component.mjs +4 -4
  63. package/esm2022/foehn-icons/foehn-icon-check-square-o.component.mjs +4 -4
  64. package/esm2022/foehn-icons/foehn-icon-check.component.mjs +4 -4
  65. package/esm2022/foehn-icons/foehn-icon-chevron-down.component.mjs +4 -4
  66. package/esm2022/foehn-icons/foehn-icon-chevron-left.component.mjs +4 -4
  67. package/esm2022/foehn-icons/foehn-icon-chevron-right.component.mjs +4 -4
  68. package/esm2022/foehn-icons/foehn-icon-chevron-up.component.mjs +4 -4
  69. package/esm2022/foehn-icons/foehn-icon-clock.component.mjs +4 -4
  70. package/esm2022/foehn-icons/foehn-icon-comment-dots.component.mjs +4 -4
  71. package/esm2022/foehn-icons/foehn-icon-edit.component.mjs +4 -4
  72. package/esm2022/foehn-icons/foehn-icon-external-link-alt.component.mjs +4 -4
  73. package/esm2022/foehn-icons/foehn-icon-file-pdf.component.mjs +4 -4
  74. package/esm2022/foehn-icons/foehn-icon-info-circle.component.mjs +4 -4
  75. package/esm2022/foehn-icons/foehn-icon-lock.component.mjs +4 -4
  76. package/esm2022/foehn-icons/foehn-icon-map-marker.component.mjs +4 -4
  77. package/esm2022/foehn-icons/foehn-icon-minus-circle.component.mjs +4 -4
  78. package/esm2022/foehn-icons/foehn-icon-pencil.component.mjs +4 -4
  79. package/esm2022/foehn-icons/foehn-icon-plus-circle.component.mjs +4 -4
  80. package/esm2022/foehn-icons/foehn-icon-plus-square.component.mjs +4 -4
  81. package/esm2022/foehn-icons/foehn-icon-search.component.mjs +4 -4
  82. package/esm2022/foehn-icons/foehn-icon-times.component.mjs +4 -4
  83. package/esm2022/foehn-icons/foehn-icon-trash-alt.component.mjs +4 -4
  84. package/esm2022/foehn-icons/foehn-icon-unlock-alt.component.mjs +4 -4
  85. package/esm2022/foehn-icons/foehn-icon-user.component.mjs +4 -4
  86. package/esm2022/foehn-icons/foehn-icons.module.mjs +5 -5
  87. package/esm2022/foehn-input/foehn-input-email.component.mjs +4 -4
  88. package/esm2022/foehn-input/foehn-input-hidden.component.mjs +4 -4
  89. package/esm2022/foehn-input/foehn-input-number.component.mjs +4 -4
  90. package/esm2022/foehn-input/foehn-input-password.component.mjs +4 -4
  91. package/esm2022/foehn-input/foehn-input-phone.component.mjs +4 -4
  92. package/esm2022/foehn-input/foehn-input-prefixed-text.component.mjs +4 -4
  93. package/esm2022/foehn-input/foehn-input-string.component.mjs +4 -4
  94. package/esm2022/foehn-input/foehn-input-text.component.mjs +4 -4
  95. package/esm2022/foehn-input/foehn-input-textarea.component.mjs +4 -4
  96. package/esm2022/foehn-input/foehn-input.component.mjs +4 -4
  97. package/esm2022/foehn-input/foehn-input.module.mjs +5 -5
  98. package/esm2022/foehn-input-date/foehn-input-date.component.mjs +4 -4
  99. package/esm2022/foehn-input-date-time/foehn-input-date-time.component.mjs +4 -4
  100. package/esm2022/foehn-input-time/foehn-input-time.component.mjs +6 -6
  101. package/esm2022/foehn-list/foehn-list.component.mjs +5 -5
  102. package/esm2022/foehn-list/foehn-list.module.mjs +5 -5
  103. package/esm2022/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +4 -4
  104. package/esm2022/foehn-menu-prestation/abstract-menu-page.component.mjs +4 -4
  105. package/esm2022/foehn-menu-prestation/abstract-page-from-menu.component.mjs +4 -4
  106. package/esm2022/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs +6 -5
  107. package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +6 -6
  108. package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +4 -4
  109. package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs +4 -4
  110. package/esm2022/foehn-menu-prestation/foehn-menu-prestation.module.mjs +5 -5
  111. package/esm2022/foehn-misc/foehn-abbr.component.mjs +4 -4
  112. package/esm2022/foehn-misc/foehn-misc.module.mjs +5 -5
  113. package/esm2022/foehn-modal/foehn-modal.component.mjs +5 -5
  114. package/esm2022/foehn-modal/foehn-modal.module.mjs +5 -5
  115. package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +6 -6
  116. package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.mjs +5 -5
  117. package/esm2022/foehn-nav13/foehn-input-nav13.component.mjs +4 -4
  118. package/esm2022/foehn-nav13/foehn-input-nav13.module.mjs +5 -5
  119. package/esm2022/foehn-navigation/abstract-foehn-navigation.component.mjs +4 -4
  120. package/esm2022/foehn-navigation/foehn-navigation/foehn-navigation.component.mjs +5 -5
  121. package/esm2022/foehn-navigation/foehn-navigation.module.mjs +5 -5
  122. package/esm2022/foehn-navigation/foehn-navigation.service.mjs +4 -4
  123. package/esm2022/foehn-navigation/foehn-simple-navigation/foehn-simple-navigation.component.mjs +5 -5
  124. package/esm2022/foehn-notfound/foehn-notfound.component.mjs +4 -4
  125. package/esm2022/foehn-notfound/foehn-notfound.module.mjs +5 -5
  126. package/esm2022/foehn-page/foehn-page-counter.component.mjs +4 -4
  127. package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration-interceptor.mjs +4 -4
  128. package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration.service.mjs +4 -4
  129. package/esm2022/foehn-page/foehn-page-expiration-timer/foehn-page-expiration-timer.component.mjs +4 -4
  130. package/esm2022/foehn-page/foehn-page-expiration-timer/interval.helper.mjs +2 -2
  131. package/esm2022/foehn-page/foehn-page-modal.component.mjs +4 -4
  132. package/esm2022/foehn-page/foehn-page-modal.service.mjs +4 -4
  133. package/esm2022/foehn-page/foehn-page.component.mjs +5 -5
  134. package/esm2022/foehn-page/foehn-page.module.mjs +5 -5
  135. package/esm2022/foehn-page/foehn-page.service.mjs +4 -4
  136. package/esm2022/foehn-page/foehn-transmit-waiting-modal/demande-transmit-interceptor.mjs +4 -4
  137. package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.component.mjs +4 -4
  138. package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.service.mjs +4 -4
  139. package/esm2022/foehn-recap-section/foehn-recap-section.component.mjs +4 -4
  140. package/esm2022/foehn-recap-section/foehn-recap-section.module.mjs +5 -5
  141. package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs +4 -4
  142. package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs +5 -5
  143. package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +4 -4
  144. package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs +5 -5
  145. package/esm2022/foehn-table/foehn-table.component.mjs +9 -5
  146. package/esm2022/foehn-table/foehn-table.module.mjs +5 -5
  147. package/esm2022/foehn-upload/abstract-foehn-uploader.component.mjs +4 -4
  148. package/esm2022/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +6 -19
  149. package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +4 -4
  150. package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs +5 -5
  151. package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +4 -4
  152. package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs +5 -5
  153. package/esm2022/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +6 -19
  154. package/esm2022/foehn-upload/foehn-multi-upload/pending-upload.service.mjs +8 -6
  155. package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +20 -47
  156. package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs +5 -5
  157. package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.mjs +4 -4
  158. package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.mjs +5 -5
  159. package/esm2022/foehn-upload/foehn-upload-progress-bar/upload-progress.service.mjs +4 -4
  160. package/esm2022/foehn-upload/page-upload-limit.service.mjs +4 -4
  161. package/esm2022/foehn-upload/uploader.helper.mjs +5 -13
  162. package/esm2022/foehn-user-connected-as/foehn-user-connected-as.component.mjs +4 -4
  163. package/esm2022/foehn-user-connected-as/foehn-user-connected-as.module.mjs +5 -5
  164. package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs +4 -4
  165. package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs +5 -5
  166. package/esm2022/foehn-validation-alerts/foehn-validation-alerts.component.mjs +4 -4
  167. package/esm2022/foehn-validation-alerts/foehn-validation-alerts.module.mjs +5 -5
  168. package/esm2022/gesdem/gesdem-error-handler.service.mjs +16 -13
  169. package/esm2022/gesdem/gesdem-event.service.mjs +4 -4
  170. package/esm2022/gesdem/gesdem-handler.service.mjs +29 -16
  171. package/esm2022/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +4 -4
  172. package/esm2022/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +31 -12
  173. package/esm2022/gesdem-action-recovery/gesdem-action-recovery.module.mjs +5 -5
  174. package/esm2022/gesdem-action-recovery/gesdem-action-recovery.service.mjs +4 -4
  175. package/esm2022/gesdem-confirmation/gesdem-confirmation.component.mjs +20 -15
  176. package/esm2022/gesdem-confirmation/gesdem-confirmation.module.mjs +12 -8
  177. package/esm2022/gesdem-error/gesdem-error.component.mjs +8 -6
  178. package/esm2022/gesdem-error/gesdem-error.module.mjs +5 -5
  179. package/esm2022/pipes/currency.pipe.mjs +4 -4
  180. package/esm2022/pipes/date.pipe.mjs +4 -4
  181. package/esm2022/pipes/formatIde.pipe.mjs +4 -4
  182. package/esm2022/pipes/pipes.module.mjs +5 -5
  183. package/esm2022/prestations-ng-core.module.mjs +5 -5
  184. package/esm2022/public_api.mjs +4 -1
  185. package/esm2022/sdk-appinfo/application-info.mjs +7 -1
  186. package/esm2022/sdk-appinfo/application-info.service.mjs +24 -6
  187. package/esm2022/sdk-currency/currency.helper.mjs +4 -4
  188. package/esm2022/sdk-date/date.helper.mjs +4 -4
  189. package/esm2022/sdk-dictionary/default-dictionary.mjs +19 -5
  190. package/esm2022/sdk-dictionary/sdk-dictionary.module.mjs +5 -5
  191. package/esm2022/sdk-dictionary/sdk-dictionary.pipe.mjs +4 -4
  192. package/esm2022/sdk-dictionary/sdk-dictionary.service.mjs +4 -4
  193. package/esm2022/sdk-drafts/drafts-container.component.mjs +5 -5
  194. package/esm2022/sdk-drafts/drafts.module.mjs +5 -5
  195. package/esm2022/sdk-drafts/drafts.service.mjs +4 -4
  196. package/esm2022/sdk-epayment/sdk-epayment.component.mjs +4 -4
  197. package/esm2022/sdk-epayment/sdk-epayment.module.mjs +5 -5
  198. package/esm2022/sdk-epayment/sdk-epayment.service.mjs +4 -4
  199. package/esm2022/sdk-events-logger/sdk-events-logger.service.mjs +4 -4
  200. package/esm2022/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs +4 -4
  201. package/esm2022/sdk-recaptcha/recaptcha.service.mjs +8 -16
  202. package/esm2022/sdk-recaptcha/sdk-recaptcha.component.mjs +4 -4
  203. package/esm2022/sdk-recaptcha/sdk-recaptcha.module.mjs +5 -5
  204. package/esm2022/sdk-redirect/iam-expired-interceptor.service.mjs +12 -11
  205. package/esm2022/sdk-redirect/redirect.component.mjs +32 -17
  206. package/esm2022/sdk-redirect/sdk-redirect.module.mjs +5 -5
  207. package/esm2022/sdk-session-info/session-info-with-application.service.mjs +4 -4
  208. package/esm2022/sdk-session-info/session-info.service.mjs +4 -4
  209. package/esm2022/sdk-statistics/sdk-statistics.service.mjs +4 -4
  210. package/esm2022/sdk-support-alert/support-alert-container.component.mjs +5 -5
  211. package/esm2022/sdk-support-alert/support-alert.component.mjs +12 -14
  212. package/esm2022/sdk-support-alert/support-alert.module.mjs +5 -5
  213. package/esm2022/sdk-support-alert/support-alert.service.mjs +4 -4
  214. package/esm2022/supported-browser.mjs +2 -2
  215. package/esm2022/validation/validation-handler.service.mjs +4 -4
  216. package/fesm2022/dsivd-prestations-ng.mjs +1304 -1153
  217. package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
  218. package/foehn-address/foehn-input-address.component.d.ts +2 -1
  219. package/foehn-breadcrumb/breadcrumb-event.service.d.ts +3 -1
  220. package/foehn-checkables/foehn-checkable-group.component.d.ts +2 -1
  221. package/foehn-feedback-notification/foehn-feedback-notification.component.d.ts +30 -0
  222. package/foehn-feedback-notification/foehn-feedback-notification.module.d.ts +11 -0
  223. package/foehn-table/foehn-table.component.d.ts +3 -1
  224. package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.d.ts +1 -4
  225. package/foehn-upload/foehn-multi-upload/multi-upload.service.d.ts +1 -4
  226. package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +2 -4
  227. package/gesdem/gesdem-error-handler.service.d.ts +1 -0
  228. package/gesdem/gesdem-handler.service.d.ts +2 -2
  229. package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +3 -1
  230. package/gesdem-confirmation/gesdem-confirmation.component.d.ts +2 -0
  231. package/gesdem-confirmation/gesdem-confirmation.module.d.ts +2 -1
  232. package/gesdem-error/gesdem-error.component.d.ts +1 -0
  233. package/package.json +1 -1
  234. package/public_api.d.ts +2 -0
  235. package/schematics/utility/foehn2-bootstrap5-migration.js +19 -2
  236. package/sdk-appinfo/application-info.d.ts +4 -2
  237. package/sdk-recaptcha/recaptcha.service.d.ts +1 -3
  238. package/sdk-redirect/redirect.component.d.ts +4 -2
  239. package/dsivd-prestations-ng-17.0.0-beta.2.tgz +0 -0
package/CHANGELOG.md CHANGED
@@ -14,6 +14,86 @@
14
14
 
15
15
  - Added migration guide
16
16
 
17
+ - [gesdem-handler.service.ts](projects/prestations-ng/src/gesdem/gesdem-handler.service.ts)
18
+
19
+ - set `?updateOnly=false` to `api/validated` when saving from first page
20
+
21
+ - [foehn-table.component.ts](projects/prestations-ng/src/foehn-table/foehn-table.component.ts)
22
+
23
+ - added `@Input() title: string;` to set a title (caption) to the table
24
+ - added `@Input() titleSrOnly: boolean;` when set to `true`, only screen readers will see the table title
25
+
26
+ - [foehn-feedback-notification.component.ts](projects/prestations-ng/src/foehn-feedback-notification/foehn-feedback-notification.component.ts)
27
+
28
+ - Component used to redirect to users feedback prestation by sending first feedback answer
29
+ - By default, it is added to [gesdem-confirmation.component.ts](projects/prestations-ng/src/gesdem-confirmation/gesdem-confirmation.component.ts)
30
+ - Can be activated through `Catalogue de prestations`
31
+
32
+ - [gesdem-action-recovery-registration.component.ts](projects/prestations-ng/src/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.ts)
33
+
34
+ - by default the form errors are not displayed when registering for recovery
35
+ - you can change that by setting the new `@Input() dispatchFormErrors:boolean` to `true`
36
+
37
+ ## [16.6.2]
38
+
39
+ ### Fixed
40
+
41
+ - [foehn-page-counter.component.ts](projects/prestations-ng/src/foehn-page/foehn-page-counter.component.ts)
42
+ - Changed wording in default dictionary. Now displays `Page X sur Y`.
43
+
44
+ ## [16.6.0] - must be aligned with prestations-be
45
+
46
+ ### Fixed
47
+
48
+ - [gesdem-error-handler.service.ts](projects/prestations-ng/src/gesdem/gesdem-error-handler.service.ts)
49
+
50
+ - do not redirect to error page if iamExpiredInterceptorService has caught that IAM session is expired
51
+
52
+ ### Added
53
+
54
+ - [foehn-footer.component.ts](projects/prestations-ng/src/foehn-footer/foehn-footer.component.ts)
55
+ - display the app version in the green bar at the bottom of the page
56
+
57
+ ## [16.5.6]
58
+
59
+ ### Fixed
60
+
61
+ - [iam-expired-interceptor.service.ts](projects/prestations-ng/src/sdk-redirect/iam-expired-interceptor.service.ts)
62
+ - handle `BENEFICIARY_REQUIRED` exception globally
63
+
64
+ ## [16.5.5]
65
+
66
+ ### Added
67
+
68
+ - [foehn-input-address.component.ts](projects/prestations-ng/src/foehn-address/foehn-input-address.component.ts)
69
+ - added `@Input() withDefaultCountry = true;`, can be set to `false` to prevent the component of setting a default country.
70
+
71
+ ## [16.5.4]
72
+
73
+ ### Added
74
+
75
+ - [foehn-input-time.component.html](projects/prestations-ng/src/foehn-input-time/foehn-input-time.component.html)
76
+
77
+ - added `allowLeadingZero` to true to allowed leading 0 in hours and minutes
78
+
79
+ - [ApplicationInfo](projects/prestations-ng/src/sdk-appinfo/application-info.ts)
80
+
81
+ - added `baseVdChUrl?: string` to `ApplicationInfo.Configuration.Portail`
82
+ - with default value by environnement
83
+ - use in `BreadcrumbEventService` and `GesdemConfirmationComponent`
84
+
85
+ ### Fixed
86
+
87
+ - [redirect.component.ts](projects/prestations-ng/src/sdk-redirect/redirect.component.ts)
88
+ - fixed redirect url when IAM ACV session is expired
89
+
90
+ ## [16.5.3]
91
+
92
+ ### Added
93
+
94
+ - [foehn-error-pill-component.html](projects/prestations-ng/src/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.html)
95
+ - added dictionary keys `foehn-error-pill.incomplete` and `foehn-error-pill.complete` for pills. Defaults are already added in prestations-ng.
96
+
17
97
  ## [16.5.1] - must be aligned with prestations-be (16.5.1+)
18
98
 
19
99
  ### Added
@@ -376,7 +376,8 @@ You can replace the content of your `.eslintrc.json` with the following `json`.
376
376
  {
377
377
  code: 200
378
378
  }
379
- ]
379
+ ],
380
+ '@angular-eslint/template/button-has-type': 'error'
380
381
  }
381
382
  },
382
383
  // Jasmine
package/UPGRADING_V17.md CHANGED
@@ -1,40 +1,100 @@
1
1
  # PRESTAKIT : Upgrading from v16 to v17
2
2
 
3
+ For the commands in this guide, it is supposed that your are in the `front` folder of your project.
4
+
3
5
  ## PRESTATIONS-NG
4
6
 
5
7
  The main feature in `prestations-ng` v17 is the update of the `@angular/*` peer dependencies
6
- to `^17.2.4`, using `node 20+` to build, `npm 10+` for package manager and `Foehn 2+ (Bootstrap 5+)`.
8
+ to `^17.2.4`, using `node 20+` to build, `npm 10+` for package manager and `Foehn 2+ (Bootstrap 5+)` for our design system.
7
9
 
8
10
  ### Migrating to ESLint
9
11
 
10
- Follow [our migration guide](ESLINT_MIGRATION_GUIDE.md) to migrate your project from TSLint to ESLint
12
+ (NB : you can skip this step if you already have a `front/eslintrc.json` file, it means it is already done.)
13
+ Follow [our migration guide](ESLINT_MIGRATION_GUIDE.md) to migrate your project from TSLint to ESLint.
11
14
 
12
- ### Package manager NPM
15
+ ### Package manager NPM instead of YARN
13
16
 
14
17
  We now recommend using `npm` instead of `yarn`.
15
- You can search for `yarn` in your project and replace it by `npm run`.
16
18
 
17
19
  **NB: Don't need `run` when running `npm` for https://docs.npmjs.com/cli/v10/commands**
18
20
 
21
+ - When using `prestations-ng` as a link, you need to run (you can do it in any case, it won't harm and like this you are sure):
22
+
23
+ ```bash
24
+ yarn unlink @dsivd/prestations-ng
25
+ yarn install --force
26
+ ```
27
+
28
+ - Delete `yarn.lock` file and `yarn-error.log` (if you have one).
29
+ - You can search for `yarn` in your project and replace it by `npm run` (do not take into account `.browserslistrc` as it will be replaced).
30
+
31
+ ```bash
32
+ find . -type f ! -name '.browserslistrc' -exec sed -i 's/yarn/npm run/g' {} +
33
+ ```
34
+
35
+ - Then run:
36
+
37
+ ```bash
38
+ npm install
39
+ git add -A
40
+ ```
41
+
42
+ If you have vulnerabilities, you can run:
43
+
44
+ ```bash
45
+ npm update
46
+ ```
47
+
48
+ NB: be patient...
49
+
50
+ ### Updating to Angular 16
51
+
52
+ [https://update.angular.io/?l=3&v=15.0-16.0](https://update.angular.io/?l=3&v=15.0-16.0)
53
+
54
+ **NB: Commit before continuing so your repository is clean.**
55
+
56
+ Remove your `resolutions` in `package.json` before starting : if you have `resolutions` in `package.json`, remove manually the section.
57
+ In the next commands, commit before each ng update.
58
+
59
+ ```bash
60
+ ng update @angular/core@15 @angular/cli@15
61
+ ng update @dsivd/prestations-ng@16
62
+
63
+ npm install @angular/cli@16 -g
64
+ ng update @angular/core@16 @angular/cli@16
65
+ ```
66
+
19
67
  ### Running with node 20+
20
68
 
21
69
  #### Switch to node 20+
22
70
 
23
71
  ##### If you are using our `slave-apps`
24
72
 
25
- Be sure to update your `slave-apps` git repository and source your bashrc (or whatever env file you're using) so you will be using node20 by default, verify by executing :
73
+ Be sure to update your `slave-apps` git repository and source your `.bashrc` (or whatever file you're using).
74
+
75
+ Verify your node version in your terminal by executing:
26
76
 
27
77
  ```bash
28
78
  node -v
29
79
  ```
30
80
 
81
+ **NB: If version is still v16+ by default, type `node20` in your terminal to switch to node v20+**
82
+
83
+ ```bash
84
+ node20
85
+ ```
86
+
31
87
  ##### If you are NOT using our `slave-apps`
32
88
 
33
- Be sure to use a node version 20+ and use the same command as above.
89
+ Be sure to use a node version 20+ in your terminal:
90
+
91
+ ```bash
92
+ node -v
93
+ ```
34
94
 
35
95
  #### In your project
36
96
 
37
- Update your `package.json` to specify node engine
97
+ Update your `package.json` file to specify the node engine:
38
98
 
39
99
  ```json
40
100
  {
@@ -46,8 +106,8 @@ Update your `package.json` to specify node engine
46
106
 
47
107
  #### Update your jenkins files
48
108
 
49
- Add `nodeVersion: 20` to use node 20.
50
- Add `nodeLabel: 'rhel8pee'` to use a RedHat 8 which support node 20
109
+ - Add `nodeVersion: 20` to use node 20
110
+ - Add `nodeLabel: 'rhel8pee'` to use a RedHat 8 which support node 20
51
111
 
52
112
  ##### UT folder
53
113
 
@@ -76,45 +136,51 @@ def args = [
76
136
  ]
77
137
  ```
78
138
 
79
- ### Updating Angular
139
+ ### Updating to Angular 17
80
140
 
81
- `prestations-ng` **v17+** now supports **Angular v17**. You can follow the Angular update guide
82
- at this address:
141
+ `prestations-ng` **v17+** now supports **Angular v17**.
83
142
 
84
- - [https://update.angular.io/?l=3&v=15.0-16.0](https://update.angular.io/?l=3&v=15.0-16.0)
85
- - [https://update.angular.io/?l=3&v=16.0-17.0](https://update.angular.io/?l=3&v=16.0-17.0)
143
+ Just FYI if you are curious about the details, you can find the Angular update guide at this address [https://update.angular.io/?l=3&v=16.0-17.0](https://update.angular.io/?l=3&v=16.0-17.0).
86
144
 
87
- #### When having migrated to ESLint
145
+ #### Update your `front/.gitignore` file
88
146
 
89
- ```bash
90
- # Remove your resolutions in package.json before starting
91
- ng update @angular/core@15 @angular/cli@15
147
+ Add `/.nx/cache`
92
148
 
93
- yarn global add @angular/cli@16
94
- ng update @angular/core@16 @angular/cli@16
149
+ #### When having migrated to ESLint
95
150
 
96
- yarn global add @angular/cli@17
97
- ng update @angular/core@17 @angular/cli@17
98
- ng update typescript@5.3
151
+ ```bash
152
+ npm install @angular/cli@17 -g
153
+ ng update @angular/core@17 @angular/cli@17 --force
154
+ ng update @dsivd/prestations-ng@latest
99
155
  ng update rxjs@7
100
156
  ng update @angular-eslint/builder@17
101
157
  ng update @angular-eslint/eslint-plugin@17 @angular-eslint/eslint-plugin-template@17 @angular-eslint/template-parser@17
102
158
  ng update @typescript-eslint/eslint-plugin@7 @typescript-eslint/parser@7
103
159
  ng update eslint-plugin-import eslint-plugin-jasmine eslint-plugin-jsdoc eslint-plugin-rxjs-angular
104
- ng update eslint
105
- ng update eslint-plugin-rxjs@7
160
+ ng update eslint@8
161
+ ng update eslint-plugin-rxjs
106
162
  ng update \
107
163
  @types/jasmine@5 \
108
164
  @types/node@20 \
109
165
  ts-node@10
110
- ng update @dsivd/prestations-ng@latest
166
+
167
+ npm remove puppeteer
168
+ npm install puppeteer@~22.7.1 --save-dev
111
169
 
112
170
  npm update
113
171
  ```
114
172
 
173
+ #### Browsers list update
174
+
175
+ Run update schematic:
176
+
177
+ ```bash
178
+ ng g @dsivd/prestations-ng:replace-browsers-list
179
+ ```
180
+
115
181
  #### Migration to Foehn 2 and Boostrap 5
116
182
 
117
- ##### Running migration schematic
183
+ Run migration schematic:
118
184
 
119
185
  ```bash
120
186
  ng g @dsivd/prestations-ng:foehn2-bootstrap5-migration
@@ -122,18 +188,21 @@ ng g @dsivd/prestations-ng:foehn2-bootstrap5-migration
122
188
 
123
189
  **NB: Be aware that you will have to check every changes made to your repository to be sure everything is fine.**
124
190
 
125
- You will need to check manually your Java `dictionary.properties` for any HTML styling (search for: `class=`)
126
- You will need to check manually your TypeScript (`.ts`) files for any dynamique CSS classes or tests (`.spec.ts`)
191
+ You will need to check manually your:
192
+
193
+ - Java `dictionary.properties` for any HTML styling (search for: `class=`)
194
+ - TypeScript (`.ts`) files for any dynamique CSS classes or tests (`.spec.ts`)
127
195
 
128
196
  ##### More information here
129
197
 
130
- - Visite https://getbootstrap.com/docs/5.0/migration/ for Bootstrap 5 migration
131
- - Visite https://github.com/twbs/bootstrap/issues/32753 for the list of class changes in Bootstrap 5
132
- - Visite https://github.com/DSI-VD/foehn/blob/master/CHANGELOG.md for Foehn 2 migration
198
+ - https://getbootstrap.com/docs/5.0/migration/ for Bootstrap 5 migration.
199
+ - https://github.com/twbs/bootstrap/issues/32753 for the list of class changes in Bootstrap 5.
200
+ - https://github.com/DSI-VD/foehn/blob/master/CHANGELOG.md for Foehn 2 migration.
133
201
 
134
202
  ### Update ".eslintrc.json" file if your project was already migrated to ESLint
135
203
 
136
- Replace your current `.eslintrc.json` file by the one found in [ESLINT_MIGRATION.GUIDE](ESLINT_MIGRATION_GUIDE.md#customizing_eslint__inspired_from_otia_and_prestations-ng_s_files_for_rules_)
204
+ **NB: Replace your current `.eslintrc.json` file by the one found in [ESLINT_MIGRATION.GUIDE](ESLINT_MIGRATION_GUIDE.md#customizing_eslint__inspired_from_otia_and_prestations-ng_s_files_for_rules_).**
205
+ You will have to fix the json file after the copy as it won't copy the double quotes around the properties. (ask IntelliJ to do it for you, alt-enter, Wrap with double quotes -> fix all compliance with json standard ...)
137
206
 
138
207
  Then run
139
208
 
@@ -141,14 +210,43 @@ Then run
141
210
  ng lint --fix=true
142
211
  ```
143
212
 
144
- and finally fix manually remaining errors
213
+ and finally fix manually remaining errors. When encountering following warning in your `*.spec.ts`:
214
+
215
+ **`warning Deprecated: Use provideRouter or RouterModule/RouterModule.forRoot instead`**
216
+
217
+ replace `RouterTestingModule` by `RouterModule.forRoot([])`
218
+
219
+ ### Cloudflare (`app.module.ts`)
220
+
221
+ Need to remove `CAPTCHA_URL_TOKEN` override
222
+
223
+ ```diff
224
+ @NgModule({
225
+ providers: [
226
+ META_SERVICE_PROVIDER,
227
+ - {
228
+ - provide: CAPTCHA_URL_TOKEN,
229
+ - useValue: 'https://challenges.cloudflare.com/turnstile/v0/api.js?onload=reCaptchaLoad&render=explicit&compat=recaptcha'
230
+ - },
231
+ ]
232
+ })
233
+ ```
234
+
235
+ ### gesdem-action-recovery-registration
236
+
237
+ If you use the `<gesdem-action-recovery-registration>` component in a page which includes some `<foehn-error-pill>` or `<foehn-menu-item>` (i.e. e-vaudtax, pocama, any form with a menu)
238
+ you should set `dispatchFormErrors` to `true` :
239
+
240
+ - `<gesdem-action-recovery-registration [dispatchFormErrors]="true"><gesdem-action-recovery-registration>`
241
+
242
+ Otherwise the pills wil be set to "Renseigné" after a recovery registration even if some errors remains.
145
243
 
146
244
  ### Language deprecations
147
245
 
148
246
  When using `intellij`, you can run code inspection on your project to fix manually deprecations. Two ways:
149
247
 
150
- - Intellij window menu, go to: `Code > Analyze code > Run inspection by name...` (or **Ctrl+Alt+Maj+i**) and type `Deprecated symbol used`
151
- - Or select your project in your project panel and `right click` on it then `Analyze > Run inspection by name...` (or **Ctrl+Alt+Maj+i**) and type `Deprecated symbol used`
248
+ - Intellij window menu, go to: `Code > Analyze code > Run inspection by name...` (or **Ctrl+Alt+Maj+i**) and type `Deprecated symbol used`.
249
+ - Or select your project in your project panel and `right click` on it then `Analyze > Run inspection by name...` (or **Ctrl+Alt+Maj+i**) and type `Deprecated symbol used`.
152
250
 
153
251
  ### Last but not least, check if your application is working!!!
154
252
 
@@ -163,8 +261,257 @@ npm install
163
261
  #### Build and launch your application
164
262
 
165
263
  ```bash
166
- npm build
264
+ npm run build
167
265
  npm start
168
266
  ```
169
267
 
170
- Your are good to go if no errors are remaining!
268
+ Your are good if no errors are remaining!
269
+ Finally check if your tests run well :
270
+
271
+ ```bash
272
+ npm run test
273
+ ```
274
+
275
+ If there is a message complaining about HttpErrorResponse & NG0205: Injector has already been destroyed,
276
+ in your `app.component.spec.ts` file, add `HttpClientTestingModule` to `TestBed.configureTestingModule` in `beforeEach(waitForAsync` function
277
+
278
+ ## PRESTATIONS-BE
279
+
280
+ From here on, we are back in the root folder of your project
281
+
282
+ ### application.properties
283
+
284
+ ```diff
285
+ recaptcha.cookie.path=${base.href}
286
+ - recaptcha.verify-url=https://challenges.cloudflare.com/turnstile/v0/siteverify
287
+ ```
288
+
289
+ ### pom.xml
290
+
291
+ #### With application parent
292
+
293
+ ##### Use new application-parent
294
+
295
+ ```diff
296
+ <parent>
297
+ <groupId>ch.vd.cyber.parent</groupId>
298
+ <artifactId>application-parent</artifactId>
299
+ - <version>12.x.x</version>
300
+ + <version>13.x.x</version>
301
+ <relativePath/>
302
+ </parent>
303
+ ```
304
+
305
+ ##### Cleanup pom.xml
306
+
307
+ Then remove following plugin:
308
+
309
+ ```diff
310
+ -<plugin>
311
+ - <groupId>org.codehaus.mojo</groupId>
312
+ - <artifactId>exec-maven-plugin</artifactId>
313
+ - <version>${exec-maven-plugin.version}</version>
314
+ - <configuration>
315
+ - <workingDirectory>${basedir}/front</workingDirectory>
316
+ - </configuration>
317
+ - <executions>
318
+ - <execution>
319
+ - <id>exec-yarn-install</id>
320
+ - <phase>prepare-package</phase>
321
+ - <configuration>
322
+ - <executable>${yarn.executable}</executable>
323
+ - <arguments>
324
+ - <argument>--pure-lockfile</argument>
325
+ - </arguments>
326
+ - <skip>${build.nofront}</skip>
327
+ - </configuration>
328
+ - <goals>
329
+ - <goal>exec</goal>
330
+ - </goals>
331
+ - </execution>
332
+ - <execution>
333
+ - <id>exec-ngcli-lint</id>
334
+ - <phase>prepare-package</phase>
335
+ - <configuration>
336
+ - <executable>${yarn.executable}</executable>
337
+ - <arguments>
338
+ - <argument>run</argument>
339
+ - <argument>lint</argument>
340
+ - </arguments>
341
+ - <skip>${skipTests}</skip>
342
+ - </configuration>
343
+ - <goals>
344
+ - <goal>exec</goal>
345
+ - </goals>
346
+ - </execution>
347
+ - <execution>
348
+ - <id>exec-ngcli-test</id>
349
+ - <phase>prepare-package</phase>
350
+ - <configuration>
351
+ - <executable>${yarn.executable}</executable>
352
+ - <arguments>
353
+ - <argument>run</argument>
354
+ - <argument>test</argument>
355
+ - </arguments>
356
+ - <skip>${skipTests}</skip>
357
+ - </configuration>
358
+ - <goals>
359
+ - <goal>exec</goal>
360
+ - </goals>
361
+ - </execution>
362
+ - <execution>
363
+ - <id>exec-ngcli-build</id>
364
+ - <phase>prepare-package</phase>
365
+ - <configuration>
366
+ - <executable>${yarn.executable}</executable>
367
+ - <arguments>
368
+ - <argument>run</argument>
369
+ - <argument>build</argument>
370
+ - </arguments>
371
+ - <skip>${build.nofront}</skip>
372
+ - </configuration>
373
+ - <goals>
374
+ - <goal>exec</goal>
375
+ - </goals>
376
+ - </execution>
377
+ - </executions>
378
+ -</plugin>
379
+ ```
380
+
381
+ If it is an Angular application but you have other configurations to build the front, add -Dskip-build-angular-front-npm in .mvn/maven-config at the same level as the pom.xml.
382
+
383
+ #### Without application parent
384
+
385
+ ```diff
386
+ <properties>
387
+ - <prestations-be.version>16.x.x</prestations-be.version>
388
+ + <prestations-be.version>17.x.x</prestations-be.version>
389
+ </properties
390
+ ```
391
+
392
+ Remove plugin executing some `yarn` (See `With application parent`) and replace by following plugin :
393
+
394
+ ```xml
395
+ <plugins>
396
+ <plugin>
397
+ <groupId>org.codehaus.mojo</groupId>
398
+ <artifactId>exec-maven-plugin</artifactId>
399
+ <version>${exec-maven-plugin.version}</version>
400
+ <configuration>
401
+ <workingDirectory>${front.srcPath}</workingDirectory>
402
+ </configuration>
403
+ <executions>
404
+ <execution>
405
+ <id>exec-npm-install</id>
406
+ <phase>prepare-package</phase>
407
+ <configuration>
408
+ <executable>${npm.executable}</executable>
409
+ <arguments>
410
+ <argument>install</argument>
411
+ <argument>--pure-lockfile</argument>
412
+ </arguments>
413
+ <skip>${build.nofront}</skip>
414
+ </configuration>
415
+ <goals>
416
+ <goal>exec</goal>
417
+ </goals>
418
+ </execution>
419
+ <execution>
420
+ <id>exec-ngcli-lint</id>
421
+ <phase>prepare-package</phase>
422
+ <configuration>
423
+ <executable>${npm.executable}</executable>
424
+ <arguments>
425
+ <argument>run</argument>
426
+ <argument>lint</argument>
427
+ </arguments>
428
+ <skip>${skipTests}</skip>
429
+ </configuration>
430
+ <goals>
431
+ <goal>exec</goal>
432
+ </goals>
433
+ </execution>
434
+ <execution>
435
+ <id>exec-ngcli-test</id>
436
+ <phase>prepare-package</phase>
437
+ <configuration>
438
+ <executable>${npm.executable}</executable>
439
+ <arguments>
440
+ <argument>run</argument>
441
+ <argument>test</argument>
442
+ </arguments>
443
+ <skip>${skipTests}</skip>
444
+ </configuration>
445
+ <goals>
446
+ <goal>exec</goal>
447
+ </goals>
448
+ </execution>
449
+ <execution>
450
+ <id>exec-ngcli-build</id>
451
+ <phase>prepare-package</phase>
452
+ <configuration>
453
+ <executable>${npm.executable}</executable>
454
+ <arguments>
455
+ <argument>run</argument>
456
+ <argument>build</argument>
457
+ </arguments>
458
+ <skip>${build.nofront}</skip>
459
+ </configuration>
460
+ <goals>
461
+ <goal>exec</goal>
462
+ </goals>
463
+ </execution>
464
+ </executions>
465
+ </plugin>
466
+ <plugin>
467
+ <groupId>org.apache.maven.plugins</groupId>
468
+ <artifactId>maven-resources-plugin</artifactId>
469
+ <version>${maven-resources-plugin.version}</version>
470
+ <configuration>
471
+ <encoding>${project.build.sourceEncoding}</encoding>
472
+ </configuration>
473
+ <executions>
474
+ <execution>
475
+ <id>copy-ngcli-dist</id>
476
+ <phase>prepare-package</phase>
477
+ <goals>
478
+ <goal>copy-resources</goal>
479
+ </goals>
480
+ <configuration>
481
+ <outputDirectory>${basedir}/target/classes/static</outputDirectory>
482
+ <resources>
483
+ <resource>
484
+ <directory>${front.distPath}</directory>
485
+ <filtering>false</filtering>
486
+ </resource>
487
+ </resources>
488
+ </configuration>
489
+ </execution>
490
+ <execution>
491
+ <id>copy-config</id>
492
+ <phase>prepare-package</phase>
493
+ <goals>
494
+ <goal>copy-resources</goal>
495
+ </goals>
496
+ <configuration>
497
+ <outputDirectory>${project.build.directory}/classes</outputDirectory>
498
+ <resources>
499
+ <resource>
500
+ <directory>${project.build.directory}/unfiltered-config</directory>
501
+ <filtering>true</filtering>
502
+ </resource>
503
+ </resources>
504
+ </configuration>
505
+ </execution>
506
+ </executions>
507
+ </plugin>
508
+ </plugins>
509
+ ```
510
+
511
+ Finally, run
512
+
513
+ ```bash
514
+ mvn clean install
515
+ ```
516
+
517
+ Hopefully, you should see a successful build.