@tsi-developpement/tsi-shared-ui 0.0.1

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 (558) hide show
  1. package/esm2022/lib/consts/app-providers.mjs +11 -0
  2. package/esm2022/lib/consts/html-template.const.mjs +40 -0
  3. package/esm2022/lib/consts/index.mjs +8 -0
  4. package/esm2022/lib/consts/localization-key.mjs +12 -0
  5. package/esm2022/lib/consts/locals.const.mjs +8 -0
  6. package/esm2022/lib/consts/queryParamNames.const.mjs +11 -0
  7. package/esm2022/lib/consts/themes.mjs +5 -0
  8. package/esm2022/lib/consts/tsi-consts.mjs +45 -0
  9. package/esm2022/lib/end-points/authorization-endpoints.mjs +35 -0
  10. package/esm2022/lib/end-points/baseuri.mjs +11 -0
  11. package/esm2022/lib/end-points/endpoints.mjs +208 -0
  12. package/esm2022/lib/end-points/import-export-endpoint.mjs +35 -0
  13. package/esm2022/lib/end-points/index.mjs +7 -0
  14. package/esm2022/lib/end-points/presentation-settings-endpoints.mjs +13 -0
  15. package/esm2022/lib/end-points/reporting-endpoints.mjs +55 -0
  16. package/esm2022/lib/end-points/shared-endpoint.mjs +12 -0
  17. package/esm2022/lib/end-points/user-identity-endpoints.mjs +61 -0
  18. package/esm2022/lib/enums/Language.mjs +9 -0
  19. package/esm2022/lib/enums/auto-complete.mjs +6 -0
  20. package/esm2022/lib/enums/button-type.enum.mjs +6 -0
  21. package/esm2022/lib/enums/claim-types.mjs +15 -0
  22. package/esm2022/lib/enums/code-format.mjs +6 -0
  23. package/esm2022/lib/enums/component-use-modes-enum.mjs +19 -0
  24. package/esm2022/lib/enums/css-units.mjs +10 -0
  25. package/esm2022/lib/enums/decimal-format.mjs +8 -0
  26. package/esm2022/lib/enums/display-types.mjs +35 -0
  27. package/esm2022/lib/enums/filter-operator-type.mjs +34 -0
  28. package/esm2022/lib/enums/form-validation-error.mjs +7 -0
  29. package/esm2022/lib/enums/grid-selection-mode.mjs +7 -0
  30. package/esm2022/lib/enums/grid-sort-mode.mjs +7 -0
  31. package/esm2022/lib/enums/http-method-types.mjs +6 -0
  32. package/esm2022/lib/enums/index.mjs +25 -0
  33. package/esm2022/lib/enums/input-types.mjs +20 -0
  34. package/esm2022/lib/enums/layout-orientation.mjs +6 -0
  35. package/esm2022/lib/enums/logout-reason-enum.mjs +8 -0
  36. package/esm2022/lib/enums/modal-size-enum.mjs +10 -0
  37. package/esm2022/lib/enums/report-type.mjs +9 -0
  38. package/esm2022/lib/enums/status.mjs +9 -0
  39. package/esm2022/lib/enums/text-box-type.mjs +7 -0
  40. package/esm2022/lib/enums/tooltipPosition.enum.mjs +8 -0
  41. package/esm2022/lib/enums/tsi-component-enum.mjs +40 -0
  42. package/esm2022/lib/enums/type-import.mjs +6 -0
  43. package/esm2022/lib/functions/array.functions.mjs +8 -0
  44. package/esm2022/lib/functions/index.mjs +3 -0
  45. package/esm2022/lib/functions/modal-open.function.mjs +69 -0
  46. package/esm2022/lib/guards/admin.guard.mjs +37 -0
  47. package/esm2022/lib/guards/auth.guard.mjs +30 -0
  48. package/esm2022/lib/guards/index.mjs +4 -0
  49. package/esm2022/lib/guards/permission.guard.mjs +32 -0
  50. package/esm2022/lib/interfaces/configuration/configuration.mjs +2 -0
  51. package/esm2022/lib/interfaces/generic-form/generic-form.mjs +118 -0
  52. package/esm2022/lib/interfaces/generic-types/dictionary.mjs +2 -0
  53. package/esm2022/lib/interfaces/grid/grid-configuration.mjs +2 -0
  54. package/esm2022/lib/interfaces/index.mjs +12 -0
  55. package/esm2022/lib/interfaces/modal/dynamic.component.mjs +7 -0
  56. package/esm2022/lib/interfaces/modal/modal-size.mjs +2 -0
  57. package/esm2022/lib/interfaces/pagination/pagination-base.mjs +2 -0
  58. package/esm2022/lib/interfaces/select-list/combo-status-model.mjs +10 -0
  59. package/esm2022/lib/interfaces/settings/app-settings.mjs +2 -0
  60. package/esm2022/lib/interfaces/styles/css-size-property.mjs +17 -0
  61. package/esm2022/lib/interfaces/translation/translation.mjs +2 -0
  62. package/esm2022/lib/models/Notes/Note.mjs +7 -0
  63. package/esm2022/lib/models/application/configuration/endpoint-infos.mjs +3 -0
  64. package/esm2022/lib/models/application/configuration/entity-delete-behavior.mjs +2 -0
  65. package/esm2022/lib/models/authorization/authorization-token-mapper.mjs +24 -0
  66. package/esm2022/lib/models/authorization/authorization-token.mjs +2 -0
  67. package/esm2022/lib/models/common/component-descriminator.mjs +2 -0
  68. package/esm2022/lib/models/common/entity-properties.mjs +2 -0
  69. package/esm2022/lib/models/common/entity-validations.mjs +2 -0
  70. package/esm2022/lib/models/common/event-schema.mjs +2 -0
  71. package/esm2022/lib/models/common/key-value-pair.mjs +2 -0
  72. package/esm2022/lib/models/entity-info/entity-info.mjs +29 -0
  73. package/esm2022/lib/models/filter/filter-by-existing-values.mjs +7 -0
  74. package/esm2022/lib/models/filter/paged-result-request-base.mjs +13 -0
  75. package/esm2022/lib/models/filter/search-field.mjs +2 -0
  76. package/esm2022/lib/models/import-export/import-export.mjs +15 -0
  77. package/esm2022/lib/models/index.mjs +38 -0
  78. package/esm2022/lib/models/journalisation-application/journalisation-application.mjs +10 -0
  79. package/esm2022/lib/models/journalisation-application/status-history.mjs +3 -0
  80. package/esm2022/lib/models/layout/layout-config.mjs +2 -0
  81. package/esm2022/lib/models/modal/bs-modal.mjs +6 -0
  82. package/esm2022/lib/models/presentation-settings/presentation-settings.mjs +8 -0
  83. package/esm2022/lib/models/progress-bar/progress-bar-create-request.mjs +2 -0
  84. package/esm2022/lib/models/progress-bar/progress-bar-response.mjs +8 -0
  85. package/esm2022/lib/models/progress-bar/progress-bar-update-request.mjs +3 -0
  86. package/esm2022/lib/models/remote-services-utility/subscription-result.mjs +17 -0
  87. package/esm2022/lib/models/reporting/json-data-connection.mjs +2 -0
  88. package/esm2022/lib/models/reporting/optional-endpoints.mjs +2 -0
  89. package/esm2022/lib/models/reporting/report-template-response.mjs +2 -0
  90. package/esm2022/lib/models/reporting/report-to-edit-template.mjs +2 -0
  91. package/esm2022/lib/models/reporting/report-to-print.mjs +2 -0
  92. package/esm2022/lib/models/reporting/report-to-template.mjs +2 -0
  93. package/esm2022/lib/models/settings/devise.mjs +3 -0
  94. package/esm2022/lib/models/settings/fichier.mjs +6 -0
  95. package/esm2022/lib/models/settings/type-fichier.mjs +3 -0
  96. package/esm2022/lib/models/tsi-card/tsi-card.mjs +3 -0
  97. package/esm2022/lib/models/user-identity/login-response.mjs +7 -0
  98. package/esm2022/lib/models/user-identity/tenant.mjs +3 -0
  99. package/esm2022/lib/models/user-identity/user-identity.mjs +3 -0
  100. package/esm2022/lib/models/workflow/workflow.mjs +14 -0
  101. package/esm2022/lib/package-initializer.mjs +7 -0
  102. package/esm2022/lib/pipes/cut-label.pipe.mjs +23 -0
  103. package/esm2022/lib/pipes/index.mjs +8 -0
  104. package/esm2022/lib/pipes/localize.pipe.mjs +51 -0
  105. package/esm2022/lib/pipes/modal-label.pipe.mjs +37 -0
  106. package/esm2022/lib/pipes/shorten.pipe.mjs +20 -0
  107. package/esm2022/lib/pipes/to-number.pipe.mjs +20 -0
  108. package/esm2022/lib/pipes/tsi-currency.pipe.mjs +29 -0
  109. package/esm2022/lib/pipes/tsi-decimal.pipe.mjs +21 -0
  110. package/esm2022/lib/providers/index.mjs +2 -0
  111. package/esm2022/lib/providers/shared-ui-tsi.provider.mjs +15 -0
  112. package/esm2022/lib/routes/admin.routes.mjs +5 -0
  113. package/esm2022/lib/routes/app.routes.mjs +7 -0
  114. package/esm2022/lib/routes/identity.routes.mjs +4 -0
  115. package/esm2022/lib/routes/index.mjs +5 -0
  116. package/esm2022/lib/routes/manage-reporting.routes.mjs +5 -0
  117. package/esm2022/lib/services/Component-Finder/tsi-component-finder.service.mjs +22 -0
  118. package/esm2022/lib/services/Import-Export/modele-import.service.mjs +59 -0
  119. package/esm2022/lib/services/Note/Note.service.mjs +35 -0
  120. package/esm2022/lib/services/UserIdentity/identity-platform-authentication.service.mjs +29 -0
  121. package/esm2022/lib/services/UserIdentity/user-identity.service.mjs +40 -0
  122. package/esm2022/lib/services/application/api-explorer.service.mjs +24 -0
  123. package/esm2022/lib/services/application/app.layout.service.mjs +97 -0
  124. package/esm2022/lib/services/application/parametres-application-parambase.service.mjs +20 -0
  125. package/esm2022/lib/services/authorization/authorization.service.mjs +124 -0
  126. package/esm2022/lib/services/authorization/identity-manager.service.mjs +97 -0
  127. package/esm2022/lib/services/base/crud-base.service.mjs +38 -0
  128. package/esm2022/lib/services/configuration/entity-configuration.service.mjs +49 -0
  129. package/esm2022/lib/services/currentUser/currentUser.service.mjs +49 -0
  130. package/esm2022/lib/services/date-helper.service.mjs +133 -0
  131. package/esm2022/lib/services/dialog-data.service.mjs +32 -0
  132. package/esm2022/lib/services/fichier/fichier-upload.service.mjs +44 -0
  133. package/esm2022/lib/services/fichier/fichier.service.mjs +20 -0
  134. package/esm2022/lib/services/formula.service.mjs +20 -0
  135. package/esm2022/lib/services/generator/html-template-generator.service.mjs +196 -0
  136. package/esm2022/lib/services/index.mjs +41 -0
  137. package/esm2022/lib/services/journalisation/journalisation-application.service.mjs +23 -0
  138. package/esm2022/lib/services/journalisation/status-history.service.mjs +23 -0
  139. package/esm2022/lib/services/layout/layout-helper.service.mjs +72 -0
  140. package/esm2022/lib/services/modal/tsi-bs-modal.service.mjs +37 -0
  141. package/esm2022/lib/services/modal/tsi-modal.service.mjs +21 -0
  142. package/esm2022/lib/services/module-code/module-code.service.mjs +31 -0
  143. package/esm2022/lib/services/module-main-parameter.service.mjs +31 -0
  144. package/esm2022/lib/services/notification/error-response-manager.service.mjs +57 -0
  145. package/esm2022/lib/services/notification/tsi-confirmation.service.mjs +37 -0
  146. package/esm2022/lib/services/notification/tsi-message.service.mjs +54 -0
  147. package/esm2022/lib/services/notification/tsi-notification.service.mjs +47 -0
  148. package/esm2022/lib/services/presentation-setting/presentation-designer-base.service.mjs +26 -0
  149. package/esm2022/lib/services/presentation-setting/presentation-designer.service.mjs +58 -0
  150. package/esm2022/lib/services/presentation-setting/presentation-setting.service.mjs +39 -0
  151. package/esm2022/lib/services/progress-bar/progress-bar-helper.service.mjs +39 -0
  152. package/esm2022/lib/services/progress-bar/progress-bar.service.mjs +30 -0
  153. package/esm2022/lib/services/record-info-popup.service.mjs +21 -0
  154. package/esm2022/lib/services/reporting/dashboard-module.service.mjs +24 -0
  155. package/esm2022/lib/services/reporting/reporting.service.mjs +111 -0
  156. package/esm2022/lib/services/settings/app-settings.service.mjs +47 -0
  157. package/esm2022/lib/services/settings/keyboard-shortcut.service.mjs +30 -0
  158. package/esm2022/lib/services/status/entityStatus.service.mjs +21 -0
  159. package/esm2022/lib/services/translation/translation.service.mjs +71 -0
  160. package/esm2022/lib/services/validation/entity-validations.service.mjs +21 -0
  161. package/esm2022/lib/services/validation/generic-validation-state.service.mjs +30 -0
  162. package/esm2022/lib/services/validation/input-registry.service.mjs +25 -0
  163. package/esm2022/lib/services/workflow/workflow-configuration.service.mjs +80 -0
  164. package/esm2022/lib/shared.module.mjs +643 -0
  165. package/esm2022/lib/tsi-base/components/app-base/app-base.component.mjs +101 -0
  166. package/esm2022/lib/tsi-base/components/tsi-base/tsi-base.component.mjs +25 -0
  167. package/esm2022/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.mjs +645 -0
  168. package/esm2022/lib/tsi-base/components/tsi-list-base/tsi-list-base.component.mjs +514 -0
  169. package/esm2022/lib/tsi-base/index.mjs +6 -0
  170. package/esm2022/lib/tsi-base/tsi-input-base/tsi-input-base.component.mjs +141 -0
  171. package/esm2022/lib/tsi-components/alert-import-message/alert-import-message.component.mjs +19 -0
  172. package/esm2022/lib/tsi-components/button-components/Tsi-Submit-Button/tsi-submit-button.component.mjs +40 -0
  173. package/esm2022/lib/tsi-components/button-components/tsi-button/tsi-button.component.mjs +75 -0
  174. package/esm2022/lib/tsi-components/create-or-edit-entity-informations/create-or-edit-entity-informations.component.mjs +173 -0
  175. package/esm2022/lib/tsi-components/create-or-edit-modele-import/create-or-edit-modele-import.component.mjs +201 -0
  176. package/esm2022/lib/tsi-components/index.mjs +80 -0
  177. package/esm2022/lib/tsi-components/input-components/editable-grid/editable-grid.component.mjs +643 -0
  178. package/esm2022/lib/tsi-components/input-components/tsi-checkbox/tsi-checkbox.component.mjs +120 -0
  179. package/esm2022/lib/tsi-components/input-components/tsi-currency-other-input/tsi-currency-other-input.component.mjs +53 -0
  180. package/esm2022/lib/tsi-components/input-components/tsi-currency-societe-input/tsi-currency-societe-input.component.mjs +62 -0
  181. package/esm2022/lib/tsi-components/input-components/tsi-date-picker/tsi-date-picker.component.mjs +116 -0
  182. package/esm2022/lib/tsi-components/input-components/tsi-decimal-input/tsi-decimal-input.component.mjs +51 -0
  183. package/esm2022/lib/tsi-components/input-components/tsi-file-manager/tsi-file-manager.component.mjs +195 -0
  184. package/esm2022/lib/tsi-components/input-components/tsi-formula-box/tsi-formula-box.component.mjs +54 -0
  185. package/esm2022/lib/tsi-components/input-components/tsi-integer/tsi-integer.component.mjs +55 -0
  186. package/esm2022/lib/tsi-components/input-components/tsi-radio-button/tsi-radio-button.component.mjs +43 -0
  187. package/esm2022/lib/tsi-components/input-components/tsi-rate-input/tsi-rate-input.component.mjs +56 -0
  188. package/esm2022/lib/tsi-components/input-components/tsi-search-combo/tsi-search-combo.component.mjs +649 -0
  189. package/esm2022/lib/tsi-components/input-components/tsi-text-area/tsi-text-area.component.mjs +44 -0
  190. package/esm2022/lib/tsi-components/input-components/tsi-text-box/tsi-text-box.component.mjs +50 -0
  191. package/esm2022/lib/tsi-components/input-components/tsi-time-picker/tsi-time-picker.component.mjs +65 -0
  192. package/esm2022/lib/tsi-components/logout-popup/logout-popup.component.mjs +12 -0
  193. package/esm2022/lib/tsi-components/manage-import-export/manage-import-export.component.mjs +435 -0
  194. package/esm2022/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.mjs +148 -0
  195. package/esm2022/lib/tsi-components/manage-reporting/manage-reporting.component.mjs +1075 -0
  196. package/esm2022/lib/tsi-components/message-components/tsi-error-message/tsi-error-message.component.mjs +31 -0
  197. package/esm2022/lib/tsi-components/message-components/tsi-info-message/tsi-info-message.component.mjs +24 -0
  198. package/esm2022/lib/tsi-components/message-components/tsi-redirection-message/tsi-redirection-message.component.mjs +19 -0
  199. package/esm2022/lib/tsi-components/message-components/tsi-success-message/tsi-success-message.component.mjs +22 -0
  200. package/esm2022/lib/tsi-components/modal-component/modal.component.mjs +138 -0
  201. package/esm2022/lib/tsi-components/modal-loader/modal-loader.component.mjs +58 -0
  202. package/esm2022/lib/tsi-components/output-components/display-nested-prop/display-nested-prop.component.mjs +32 -0
  203. package/esm2022/lib/tsi-components/output-components/tsi-checkbox-display/tsi-checkbox-display.component.mjs +18 -0
  204. package/esm2022/lib/tsi-components/output-components/tsi-currency-other-display/tsi-currency-other-display.component.mjs +17 -0
  205. package/esm2022/lib/tsi-components/output-components/tsi-currency-societe-display/tsi-currency-societe-display.component.mjs +57 -0
  206. package/esm2022/lib/tsi-components/output-components/tsi-date-display/tsi-date-display.component.mjs +27 -0
  207. package/esm2022/lib/tsi-components/output-components/tsi-decimal-display/tsi-decimal-display.component.mjs +25 -0
  208. package/esm2022/lib/tsi-components/output-components/tsi-display-grid/tsi-display-grid.component.mjs +139 -0
  209. package/esm2022/lib/tsi-components/output-components/tsi-generic-grid/tsi-generic-grid.component.mjs +1509 -0
  210. package/esm2022/lib/tsi-components/output-components/tsi-image-display/tsi-image-display.component.mjs +144 -0
  211. package/esm2022/lib/tsi-components/output-components/tsi-integer-display/tsi-integer-display.component.mjs +13 -0
  212. package/esm2022/lib/tsi-components/output-components/tsi-label/tsi-label.component.mjs +24 -0
  213. package/esm2022/lib/tsi-components/output-components/tsi-label-legend/tsi-label-legend.component.mjs +18 -0
  214. package/esm2022/lib/tsi-components/output-components/tsi-legend/tsi-legend.component.mjs +20 -0
  215. package/esm2022/lib/tsi-components/output-components/tsi-paragraph/tsi-paragraph.component.mjs +17 -0
  216. package/esm2022/lib/tsi-components/output-components/tsi-rate-display/tsi-rate-display.component.mjs +30 -0
  217. package/esm2022/lib/tsi-components/output-components/tsi-time-display/tsi-time-display.component.mjs +17 -0
  218. package/esm2022/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.mjs +427 -0
  219. package/esm2022/lib/tsi-components/reporting/reporting.component.mjs +667 -0
  220. package/esm2022/lib/tsi-components/spinner/spinner.component.mjs +15 -0
  221. package/esm2022/lib/tsi-components/tsi-bubble-info/tsi-bubble-info.component.mjs +21 -0
  222. package/esm2022/lib/tsi-components/tsi-calender/context-menu/context-menu.component.mjs +46 -0
  223. package/esm2022/lib/tsi-components/tsi-calender/tsi-calender.component.mjs +297 -0
  224. package/esm2022/lib/tsi-components/tsi-card/tsi-card.component.mjs +64 -0
  225. package/esm2022/lib/tsi-components/tsi-card-list/tsi-card-list.component.mjs +112 -0
  226. package/esm2022/lib/tsi-components/tsi-change-password/tsi-change-password.component.mjs +39 -0
  227. package/esm2022/lib/tsi-components/tsi-code-generator/tsi-code-generator.component.mjs +83 -0
  228. package/esm2022/lib/tsi-components/tsi-divider/tsi-divider.component.mjs +18 -0
  229. package/esm2022/lib/tsi-components/tsi-form/tsi-form.component.mjs +305 -0
  230. package/esm2022/lib/tsi-components/tsi-form-modal-footer/tsi-form-modal-footer.component.mjs +15 -0
  231. package/esm2022/lib/tsi-components/tsi-generic-crud/tsi-generic-crud.component.mjs +883 -0
  232. package/esm2022/lib/tsi-components/tsi-generic-form/tsi-generic-form.component.mjs +149 -0
  233. package/esm2022/lib/tsi-components/tsi-kanban/tsi-kanban.component.mjs +231 -0
  234. package/esm2022/lib/tsi-components/tsi-log-event-history/tsi-log-event-history.component.mjs +119 -0
  235. package/esm2022/lib/tsi-components/tsi-modal/tsi-modal.component.mjs +25 -0
  236. package/esm2022/lib/tsi-components/tsi-modal-footer/tsi-modal-footer.component.mjs +119 -0
  237. package/esm2022/lib/tsi-components/tsi-modal-header/tsi-modal-header.component.mjs +54 -0
  238. package/esm2022/lib/tsi-components/tsi-notes-avertir/tsi-notes-avertir.component.mjs +27 -0
  239. package/esm2022/lib/tsi-components/tsi-notes-createoredit/tsi-notes.component.mjs +123 -0
  240. package/esm2022/lib/tsi-components/tsi-notes-grid/tsi-notes-grid.component.mjs +41 -0
  241. package/esm2022/lib/tsi-components/tsi-popup-text-viewer/tsi-popup-text-viewer.component.mjs +187 -0
  242. package/esm2022/lib/tsi-components/tsi-progress-bar/tsi-progress-bar.component.mjs +170 -0
  243. package/esm2022/lib/tsi-components/tsi-search-box/tsi-search-box.component.mjs +142 -0
  244. package/esm2022/lib/tsi-components/tsi-send-mail/tsi-send-mail.component.mjs +37 -0
  245. package/esm2022/lib/tsi-components/tsi-tab-panel/tsi-tab-panel.component.mjs +52 -0
  246. package/esm2022/lib/tsi-components/tsi-tab-view/tsi-tab-view.component.mjs +46 -0
  247. package/esm2022/lib/tsi-components/tsi-tenants/tsi-tenants.component.mjs +122 -0
  248. package/esm2022/lib/tsi-components/tsi-tooltip/tsi-tooltip.component.mjs +21 -0
  249. package/esm2022/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.mjs +186 -0
  250. package/esm2022/lib/tsi-components/tsi-upload-grid/tsi-upload-grid.component.mjs +54 -0
  251. package/esm2022/lib/tsi-directives/auto-select.directive.mjs +33 -0
  252. package/esm2022/lib/tsi-directives/busy.directive.mjs +32 -0
  253. package/esm2022/lib/tsi-directives/dynamic-component-loader/ad.directive.mjs +16 -0
  254. package/esm2022/lib/tsi-directives/index.mjs +8 -0
  255. package/esm2022/lib/tsi-directives/module-main-parameter.directive.mjs +16 -0
  256. package/esm2022/lib/tsi-directives/presentation-designer-base.directive.mjs +238 -0
  257. package/esm2022/lib/tsi-directives/presentation-designer.directive.mjs +205 -0
  258. package/esm2022/lib/tsi-directives/validation.directive.mjs +85 -0
  259. package/esm2022/lib/tsi-helpers/compoent-reference.helper.mjs +7 -0
  260. package/esm2022/lib/tsi-helpers/date-helper.mjs +21 -0
  261. package/esm2022/lib/tsi-helpers/export-excel.helper.mjs +40 -0
  262. package/esm2022/lib/tsi-helpers/filter-helper.mjs +126 -0
  263. package/esm2022/lib/tsi-helpers/grid-col-style.helper.mjs +7 -0
  264. package/esm2022/lib/tsi-helpers/guid.helper.mjs +19 -0
  265. package/esm2022/lib/tsi-helpers/helpers.mjs +9 -0
  266. package/esm2022/lib/tsi-helpers/index.mjs +13 -0
  267. package/esm2022/lib/tsi-helpers/mapping-helper.mjs +10 -0
  268. package/esm2022/lib/tsi-helpers/object.helper.mjs +6 -0
  269. package/esm2022/lib/tsi-helpers/primeng-translate-config.mjs +55 -0
  270. package/esm2022/lib/tsi-helpers/storage-manager.mjs +33 -0
  271. package/esm2022/lib/tsi-helpers/type-registry.helper.mjs +49 -0
  272. package/esm2022/lib/types/enum-description.type.mjs +2 -0
  273. package/esm2022/lib/types/index.mjs +3 -0
  274. package/esm2022/lib/types/time-only.mjs +42 -0
  275. package/esm2022/public-api.mjs +21 -0
  276. package/esm2022/tsi-developpement-tsi-shared-ui.mjs +5 -0
  277. package/esm2022/tsi-tsi-shared-ui.mjs +5 -0
  278. package/fesm2022/tsi-developpement-tsi-shared-ui.mjs +17486 -0
  279. package/fesm2022/tsi-developpement-tsi-shared-ui.mjs.map +1 -0
  280. package/fesm2022/tsi-tsi-shared-ui.mjs +17486 -0
  281. package/fesm2022/tsi-tsi-shared-ui.mjs.map +1 -0
  282. package/index.d.ts +5 -0
  283. package/lib/consts/app-providers.d.ts +4 -0
  284. package/lib/consts/html-template.const.d.ts +12 -0
  285. package/lib/consts/index.d.ts +7 -0
  286. package/lib/consts/localization-key.d.ts +11 -0
  287. package/lib/consts/locals.const.d.ts +7 -0
  288. package/lib/consts/queryParamNames.const.d.ts +10 -0
  289. package/lib/consts/themes.d.ts +4 -0
  290. package/lib/consts/tsi-consts.d.ts +40 -0
  291. package/lib/end-points/authorization-endpoints.d.ts +31 -0
  292. package/lib/end-points/baseuri.d.ts +10 -0
  293. package/lib/end-points/endpoints.d.ts +205 -0
  294. package/lib/end-points/import-export-endpoint.d.ts +33 -0
  295. package/lib/end-points/index.d.ts +6 -0
  296. package/lib/end-points/presentation-settings-endpoints.d.ts +11 -0
  297. package/lib/end-points/reporting-endpoints.d.ts +53 -0
  298. package/lib/end-points/shared-endpoint.d.ts +9 -0
  299. package/lib/end-points/user-identity-endpoints.d.ts +59 -0
  300. package/lib/enums/Language.d.ts +9 -0
  301. package/lib/enums/auto-complete.d.ts +4 -0
  302. package/lib/enums/button-type.enum.d.ts +4 -0
  303. package/lib/enums/claim-types.d.ts +13 -0
  304. package/lib/enums/code-format.d.ts +4 -0
  305. package/lib/enums/component-use-modes-enum.d.ts +17 -0
  306. package/lib/enums/css-units.d.ts +8 -0
  307. package/lib/enums/decimal-format.d.ts +6 -0
  308. package/lib/enums/display-types.d.ts +17 -0
  309. package/lib/enums/filter-operator-type.d.ts +18 -0
  310. package/lib/enums/form-validation-error.d.ts +11 -0
  311. package/lib/enums/grid-selection-mode.d.ts +5 -0
  312. package/lib/enums/grid-sort-mode.d.ts +5 -0
  313. package/lib/enums/http-method-types.d.ts +4 -0
  314. package/lib/enums/index.d.ts +24 -0
  315. package/lib/enums/input-types.d.ts +18 -0
  316. package/lib/enums/layout-orientation.d.ts +4 -0
  317. package/lib/enums/logout-reason-enum.d.ts +6 -0
  318. package/lib/enums/modal-size-enum.d.ts +10 -0
  319. package/lib/enums/report-type.d.ts +7 -0
  320. package/lib/enums/status.d.ts +7 -0
  321. package/lib/enums/text-box-type.d.ts +5 -0
  322. package/lib/enums/tooltipPosition.enum.d.ts +6 -0
  323. package/lib/enums/tsi-component-enum.d.ts +37 -0
  324. package/lib/enums/type-import.d.ts +4 -0
  325. package/lib/functions/array.functions.d.ts +1 -0
  326. package/lib/functions/index.d.ts +1 -0
  327. package/lib/functions/modal-open.function.d.ts +9 -0
  328. package/lib/guards/admin.guard.d.ts +14 -0
  329. package/lib/guards/auth.guard.d.ts +12 -0
  330. package/lib/guards/index.d.ts +3 -0
  331. package/lib/guards/permission.guard.d.ts +2 -0
  332. package/lib/interfaces/configuration/configuration.d.ts +10 -0
  333. package/lib/interfaces/generic-form/generic-form.d.ts +45 -0
  334. package/lib/interfaces/generic-types/dictionary.d.ts +3 -0
  335. package/lib/interfaces/grid/grid-configuration.d.ts +116 -0
  336. package/lib/interfaces/index.d.ts +11 -0
  337. package/lib/interfaces/modal/dynamic.component.d.ts +18 -0
  338. package/lib/interfaces/modal/modal-size.d.ts +4 -0
  339. package/lib/interfaces/pagination/pagination-base.d.ts +46 -0
  340. package/lib/interfaces/select-list/combo-status-model.d.ts +8 -0
  341. package/lib/interfaces/settings/app-settings.d.ts +4 -0
  342. package/lib/interfaces/styles/css-size-property.d.ts +10 -0
  343. package/lib/interfaces/translation/translation.d.ts +10 -0
  344. package/lib/models/Notes/Note.d.ts +25 -0
  345. package/lib/models/application/configuration/endpoint-infos.d.ts +6 -0
  346. package/lib/models/application/configuration/entity-delete-behavior.d.ts +6 -0
  347. package/lib/models/authorization/authorization-token-mapper.d.ts +4 -0
  348. package/lib/models/authorization/authorization-token.d.ts +16 -0
  349. package/lib/models/common/component-descriminator.d.ts +4 -0
  350. package/lib/models/common/entity-properties.d.ts +5 -0
  351. package/lib/models/common/entity-validations.d.ts +7 -0
  352. package/lib/models/common/event-schema.d.ts +6 -0
  353. package/lib/models/common/key-value-pair.d.ts +4 -0
  354. package/lib/models/entity-info/entity-info.d.ts +37 -0
  355. package/lib/models/filter/filter-by-existing-values.d.ts +6 -0
  356. package/lib/models/filter/paged-result-request-base.d.ts +16 -0
  357. package/lib/models/filter/search-field.d.ts +35 -0
  358. package/lib/models/import-export/import-export.d.ts +28 -0
  359. package/lib/models/index.d.ts +37 -0
  360. package/lib/models/journalisation-application/journalisation-application.d.ts +39 -0
  361. package/lib/models/journalisation-application/status-history.d.ts +12 -0
  362. package/lib/models/layout/layout-config.d.ts +3 -0
  363. package/lib/models/modal/bs-modal.d.ts +5 -0
  364. package/lib/models/presentation-settings/presentation-settings.d.ts +14 -0
  365. package/lib/models/progress-bar/progress-bar-create-request.d.ts +8 -0
  366. package/lib/models/progress-bar/progress-bar-response.d.ts +10 -0
  367. package/lib/models/progress-bar/progress-bar-update-request.d.ts +9 -0
  368. package/lib/models/remote-services-utility/subscription-result.d.ts +15 -0
  369. package/lib/models/reporting/json-data-connection.d.ts +6 -0
  370. package/lib/models/reporting/optional-endpoints.d.ts +8 -0
  371. package/lib/models/reporting/report-template-response.d.ts +13 -0
  372. package/lib/models/reporting/report-to-edit-template.d.ts +29 -0
  373. package/lib/models/reporting/report-to-print.d.ts +18 -0
  374. package/lib/models/reporting/report-to-template.d.ts +19 -0
  375. package/lib/models/settings/devise.d.ts +9 -0
  376. package/lib/models/settings/fichier.d.ts +14 -0
  377. package/lib/models/settings/type-fichier.d.ts +4 -0
  378. package/lib/models/tsi-card/tsi-card.d.ts +9 -0
  379. package/lib/models/user-identity/login-response.d.ts +8 -0
  380. package/lib/models/user-identity/tenant.d.ts +5 -0
  381. package/lib/models/user-identity/user-identity.d.ts +5 -0
  382. package/lib/models/workflow/workflow.d.ts +36 -0
  383. package/lib/package-initializer.d.ts +1 -0
  384. package/lib/pipes/cut-label.pipe.d.ts +7 -0
  385. package/lib/pipes/index.d.ts +7 -0
  386. package/lib/pipes/localize.pipe.d.ts +11 -0
  387. package/lib/pipes/modal-label.pipe.d.ts +10 -0
  388. package/lib/pipes/shorten.pipe.d.ts +7 -0
  389. package/lib/pipes/to-number.pipe.d.ts +7 -0
  390. package/lib/pipes/tsi-currency.pipe.d.ts +10 -0
  391. package/lib/pipes/tsi-decimal.pipe.d.ts +7 -0
  392. package/lib/providers/index.d.ts +1 -0
  393. package/lib/providers/shared-ui-tsi.provider.d.ts +8 -0
  394. package/lib/routes/admin.routes.d.ts +4 -0
  395. package/lib/routes/app.routes.d.ts +6 -0
  396. package/lib/routes/identity.routes.d.ts +3 -0
  397. package/lib/routes/index.d.ts +4 -0
  398. package/lib/routes/manage-reporting.routes.d.ts +4 -0
  399. package/lib/services/Component-Finder/tsi-component-finder.service.d.ts +10 -0
  400. package/lib/services/Import-Export/modele-import.service.d.ts +21 -0
  401. package/lib/services/Note/Note.service.d.ts +15 -0
  402. package/lib/services/UserIdentity/identity-platform-authentication.service.d.ts +13 -0
  403. package/lib/services/UserIdentity/user-identity.service.d.ts +15 -0
  404. package/lib/services/application/api-explorer.service.d.ts +13 -0
  405. package/lib/services/application/app.layout.service.d.ts +47 -0
  406. package/lib/services/application/parametres-application-parambase.service.d.ts +10 -0
  407. package/lib/services/authorization/authorization.service.d.ts +46 -0
  408. package/lib/services/authorization/identity-manager.service.d.ts +23 -0
  409. package/lib/services/base/crud-base.service.d.ts +20 -0
  410. package/lib/services/configuration/entity-configuration.service.d.ts +22 -0
  411. package/lib/services/currentUser/currentUser.service.d.ts +26 -0
  412. package/lib/services/date-helper.service.d.ts +32 -0
  413. package/lib/services/dialog-data.service.d.ts +12 -0
  414. package/lib/services/fichier/fichier-upload.service.d.ts +15 -0
  415. package/lib/services/fichier/fichier.service.d.ts +10 -0
  416. package/lib/services/formula.service.d.ts +10 -0
  417. package/lib/services/generator/html-template-generator.service.d.ts +28 -0
  418. package/lib/services/index.d.ts +40 -0
  419. package/lib/services/journalisation/journalisation-application.service.d.ts +12 -0
  420. package/lib/services/journalisation/status-history.service.d.ts +12 -0
  421. package/lib/services/layout/layout-helper.service.d.ts +25 -0
  422. package/lib/services/modal/tsi-bs-modal.service.d.ts +16 -0
  423. package/lib/services/modal/tsi-modal.service.d.ts +9 -0
  424. package/lib/services/module-code/module-code.service.d.ts +18 -0
  425. package/lib/services/module-main-parameter.service.d.ts +12 -0
  426. package/lib/services/notification/error-response-manager.service.d.ts +13 -0
  427. package/lib/services/notification/tsi-confirmation.service.d.ts +11 -0
  428. package/lib/services/notification/tsi-message.service.d.ts +13 -0
  429. package/lib/services/notification/tsi-notification.service.d.ts +18 -0
  430. package/lib/services/presentation-setting/presentation-designer-base.service.d.ts +14 -0
  431. package/lib/services/presentation-setting/presentation-designer.service.d.ts +19 -0
  432. package/lib/services/presentation-setting/presentation-setting.service.d.ts +16 -0
  433. package/lib/services/progress-bar/progress-bar-helper.service.d.ts +19 -0
  434. package/lib/services/progress-bar/progress-bar.service.d.ts +16 -0
  435. package/lib/services/record-info-popup.service.d.ts +10 -0
  436. package/lib/services/reporting/dashboard-module.service.d.ts +11 -0
  437. package/lib/services/reporting/reporting.service.d.ts +32 -0
  438. package/lib/services/settings/app-settings.service.d.ts +13 -0
  439. package/lib/services/settings/keyboard-shortcut.service.d.ts +9 -0
  440. package/lib/services/status/entityStatus.service.d.ts +11 -0
  441. package/lib/services/translation/translation.service.d.ts +20 -0
  442. package/lib/services/validation/entity-validations.service.d.ts +10 -0
  443. package/lib/services/validation/generic-validation-state.service.d.ts +15 -0
  444. package/lib/services/validation/input-registry.service.d.ts +11 -0
  445. package/lib/services/workflow/workflow-configuration.service.d.ts +28 -0
  446. package/lib/shared.module.d.ts +141 -0
  447. package/lib/tsi-base/components/app-base/app-base.component.d.ts +28 -0
  448. package/lib/tsi-base/components/tsi-base/tsi-base.component.d.ts +11 -0
  449. package/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.d.ts +118 -0
  450. package/lib/tsi-base/components/tsi-list-base/tsi-list-base.component.d.ts +85 -0
  451. package/lib/tsi-base/index.d.ts +5 -0
  452. package/lib/tsi-base/tsi-input-base/tsi-input-base.component.d.ts +34 -0
  453. package/lib/tsi-components/alert-import-message/alert-import-message.component.d.ts +10 -0
  454. package/lib/tsi-components/button-components/Tsi-Submit-Button/tsi-submit-button.component.d.ts +16 -0
  455. package/lib/tsi-components/button-components/tsi-button/tsi-button.component.d.ts +26 -0
  456. package/lib/tsi-components/create-or-edit-entity-informations/create-or-edit-entity-informations.component.d.ts +31 -0
  457. package/lib/tsi-components/create-or-edit-modele-import/create-or-edit-modele-import.component.d.ts +52 -0
  458. package/lib/tsi-components/index.d.ts +79 -0
  459. package/lib/tsi-components/input-components/editable-grid/editable-grid.component.d.ts +127 -0
  460. package/lib/tsi-components/input-components/tsi-checkbox/tsi-checkbox.component.d.ts +30 -0
  461. package/lib/tsi-components/input-components/tsi-currency-other-input/tsi-currency-other-input.component.d.ts +18 -0
  462. package/lib/tsi-components/input-components/tsi-currency-societe-input/tsi-currency-societe-input.component.d.ts +21 -0
  463. package/lib/tsi-components/input-components/tsi-date-picker/tsi-date-picker.component.d.ts +38 -0
  464. package/lib/tsi-components/input-components/tsi-decimal-input/tsi-decimal-input.component.d.ts +14 -0
  465. package/lib/tsi-components/input-components/tsi-file-manager/tsi-file-manager.component.d.ts +45 -0
  466. package/lib/tsi-components/input-components/tsi-formula-box/tsi-formula-box.component.d.ts +17 -0
  467. package/lib/tsi-components/input-components/tsi-integer/tsi-integer.component.d.ts +19 -0
  468. package/lib/tsi-components/input-components/tsi-radio-button/tsi-radio-button.component.d.ts +16 -0
  469. package/lib/tsi-components/input-components/tsi-rate-input/tsi-rate-input.component.d.ts +16 -0
  470. package/lib/tsi-components/input-components/tsi-search-combo/tsi-search-combo.component.d.ts +92 -0
  471. package/lib/tsi-components/input-components/tsi-text-area/tsi-text-area.component.d.ts +17 -0
  472. package/lib/tsi-components/input-components/tsi-text-box/tsi-text-box.component.d.ts +21 -0
  473. package/lib/tsi-components/input-components/tsi-time-picker/tsi-time-picker.component.d.ts +23 -0
  474. package/lib/tsi-components/logout-popup/logout-popup.component.d.ts +5 -0
  475. package/lib/tsi-components/manage-import-export/manage-import-export.component.d.ts +64 -0
  476. package/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.d.ts +151 -0
  477. package/lib/tsi-components/manage-reporting/manage-reporting.component.d.ts +109 -0
  478. package/lib/tsi-components/message-components/tsi-error-message/tsi-error-message.component.d.ts +15 -0
  479. package/lib/tsi-components/message-components/tsi-info-message/tsi-info-message.component.d.ts +13 -0
  480. package/lib/tsi-components/message-components/tsi-redirection-message/tsi-redirection-message.component.d.ts +9 -0
  481. package/lib/tsi-components/message-components/tsi-success-message/tsi-success-message.component.d.ts +13 -0
  482. package/lib/tsi-components/modal-component/modal.component.d.ts +25 -0
  483. package/lib/tsi-components/modal-loader/modal-loader.component.d.ts +27 -0
  484. package/lib/tsi-components/output-components/display-nested-prop/display-nested-prop.component.d.ts +14 -0
  485. package/lib/tsi-components/output-components/tsi-checkbox-display/tsi-checkbox-display.component.d.ts +6 -0
  486. package/lib/tsi-components/output-components/tsi-currency-other-display/tsi-currency-other-display.component.d.ts +7 -0
  487. package/lib/tsi-components/output-components/tsi-currency-societe-display/tsi-currency-societe-display.component.d.ts +19 -0
  488. package/lib/tsi-components/output-components/tsi-date-display/tsi-date-display.component.d.ts +10 -0
  489. package/lib/tsi-components/output-components/tsi-decimal-display/tsi-decimal-display.component.d.ts +9 -0
  490. package/lib/tsi-components/output-components/tsi-display-grid/tsi-display-grid.component.d.ts +41 -0
  491. package/lib/tsi-components/output-components/tsi-generic-grid/tsi-generic-grid.component.d.ts +231 -0
  492. package/lib/tsi-components/output-components/tsi-image-display/tsi-image-display.component.d.ts +46 -0
  493. package/lib/tsi-components/output-components/tsi-integer-display/tsi-integer-display.component.d.ts +6 -0
  494. package/lib/tsi-components/output-components/tsi-label/tsi-label.component.d.ts +8 -0
  495. package/lib/tsi-components/output-components/tsi-label-legend/tsi-label-legend.component.d.ts +6 -0
  496. package/lib/tsi-components/output-components/tsi-legend/tsi-legend.component.d.ts +9 -0
  497. package/lib/tsi-components/output-components/tsi-paragraph/tsi-paragraph.component.d.ts +6 -0
  498. package/lib/tsi-components/output-components/tsi-rate-display/tsi-rate-display.component.d.ts +10 -0
  499. package/lib/tsi-components/output-components/tsi-time-display/tsi-time-display.component.d.ts +7 -0
  500. package/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.d.ts +97 -0
  501. package/lib/tsi-components/reporting/reporting.component.d.ts +103 -0
  502. package/lib/tsi-components/spinner/spinner.component.d.ts +8 -0
  503. package/lib/tsi-components/tsi-bubble-info/tsi-bubble-info.component.d.ts +9 -0
  504. package/lib/tsi-components/tsi-calender/context-menu/context-menu.component.d.ts +25 -0
  505. package/lib/tsi-components/tsi-calender/tsi-calender.component.d.ts +50 -0
  506. package/lib/tsi-components/tsi-card/tsi-card.component.d.ts +25 -0
  507. package/lib/tsi-components/tsi-card-list/tsi-card-list.component.d.ts +35 -0
  508. package/lib/tsi-components/tsi-change-password/tsi-change-password.component.d.ts +21 -0
  509. package/lib/tsi-components/tsi-code-generator/tsi-code-generator.component.d.ts +23 -0
  510. package/lib/tsi-components/tsi-divider/tsi-divider.component.d.ts +6 -0
  511. package/lib/tsi-components/tsi-form/tsi-form.component.d.ts +91 -0
  512. package/lib/tsi-components/tsi-form-modal-footer/tsi-form-modal-footer.component.d.ts +8 -0
  513. package/lib/tsi-components/tsi-generic-crud/tsi-generic-crud.component.d.ts +156 -0
  514. package/lib/tsi-components/tsi-generic-form/tsi-generic-form.component.d.ts +28 -0
  515. package/lib/tsi-components/tsi-kanban/tsi-kanban.component.d.ts +68 -0
  516. package/lib/tsi-components/tsi-log-event-history/tsi-log-event-history.component.d.ts +35 -0
  517. package/lib/tsi-components/tsi-modal/tsi-modal.component.d.ts +10 -0
  518. package/lib/tsi-components/tsi-modal-footer/tsi-modal-footer.component.d.ts +38 -0
  519. package/lib/tsi-components/tsi-modal-header/tsi-modal-header.component.d.ts +19 -0
  520. package/lib/tsi-components/tsi-notes-avertir/tsi-notes-avertir.component.d.ts +13 -0
  521. package/lib/tsi-components/tsi-notes-createoredit/tsi-notes.component.d.ts +21 -0
  522. package/lib/tsi-components/tsi-notes-grid/tsi-notes-grid.component.d.ts +12 -0
  523. package/lib/tsi-components/tsi-popup-text-viewer/tsi-popup-text-viewer.component.d.ts +41 -0
  524. package/lib/tsi-components/tsi-progress-bar/tsi-progress-bar.component.d.ts +38 -0
  525. package/lib/tsi-components/tsi-search-box/tsi-search-box.component.d.ts +44 -0
  526. package/lib/tsi-components/tsi-send-mail/tsi-send-mail.component.d.ts +21 -0
  527. package/lib/tsi-components/tsi-tab-panel/tsi-tab-panel.component.d.ts +18 -0
  528. package/lib/tsi-components/tsi-tab-view/tsi-tab-view.component.d.ts +17 -0
  529. package/lib/tsi-components/tsi-tenants/tsi-tenants.component.d.ts +39 -0
  530. package/lib/tsi-components/tsi-tooltip/tsi-tooltip.component.d.ts +9 -0
  531. package/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.d.ts +35 -0
  532. package/lib/tsi-components/tsi-upload-grid/tsi-upload-grid.component.d.ts +13 -0
  533. package/lib/tsi-directives/auto-select.directive.d.ts +9 -0
  534. package/lib/tsi-directives/busy.directive.d.ts +11 -0
  535. package/lib/tsi-directives/dynamic-component-loader/ad.directive.d.ts +8 -0
  536. package/lib/tsi-directives/index.d.ts +7 -0
  537. package/lib/tsi-directives/module-main-parameter.directive.d.ts +8 -0
  538. package/lib/tsi-directives/presentation-designer-base.directive.d.ts +41 -0
  539. package/lib/tsi-directives/presentation-designer.directive.d.ts +37 -0
  540. package/lib/tsi-directives/validation.directive.d.ts +18 -0
  541. package/lib/tsi-helpers/compoent-reference.helper.d.ts +5 -0
  542. package/lib/tsi-helpers/date-helper.d.ts +6 -0
  543. package/lib/tsi-helpers/export-excel.helper.d.ts +5 -0
  544. package/lib/tsi-helpers/filter-helper.d.ts +12 -0
  545. package/lib/tsi-helpers/grid-col-style.helper.d.ts +5 -0
  546. package/lib/tsi-helpers/guid.helper.d.ts +6 -0
  547. package/lib/tsi-helpers/helpers.d.ts +4 -0
  548. package/lib/tsi-helpers/index.d.ts +12 -0
  549. package/lib/tsi-helpers/mapping-helper.d.ts +5 -0
  550. package/lib/tsi-helpers/object.helper.d.ts +3 -0
  551. package/lib/tsi-helpers/primeng-translate-config.d.ts +54 -0
  552. package/lib/tsi-helpers/storage-manager.d.ts +8 -0
  553. package/lib/tsi-helpers/type-registry.helper.d.ts +34 -0
  554. package/lib/types/enum-description.type.d.ts +3 -0
  555. package/lib/types/index.d.ts +2 -0
  556. package/lib/types/time-only.d.ts +17 -0
  557. package/package.json +24 -0
  558. package/public-api.d.ts +17 -0
@@ -0,0 +1,46 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "primeng/tabview";
4
+ export class TsiTabViewComponent {
5
+ //#endregion
6
+ constructor() {
7
+ //#region Inputs
8
+ this.orientation = 'top';
9
+ this.styleClass = '';
10
+ this.controlClose = false;
11
+ this.scrollable = false;
12
+ this.activeIndex = 0;
13
+ //#endregion
14
+ //#region Outputs
15
+ this.onChange = new EventEmitter();
16
+ this.onClose = new EventEmitter();
17
+ this.activeIndexChange = new EventEmitter();
18
+ }
19
+ ngOnInit() {
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTabViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiTabViewComponent, selector: "tsi-tab-view", inputs: { orientation: "orientation", style: "style", styleClass: "styleClass", controlClose: "controlClose", scrollable: "scrollable", activeIndex: "activeIndex" }, outputs: { onChange: "onChange", onClose: "onClose", activeIndexChange: "activeIndexChange" }, ngImport: i0, template: "<p-tabView\r\n[scrollable]=\"scrollable\"\r\n[controlClose]=\"controlClose\"\r\n[styleClass]=\"styleClass\"\r\n[style]=\"style\"\r\n[activeIndex]=\"activeIndex\"\r\n(activeIndexChange)=\"activeIndexChange.emit($event)\"\r\n(onClose)=\"onClose.emit($event)\"\r\n(onChange)=\"onChange.emit($event)\"\r\n><ng-content></ng-content></p-tabView>", styles: [""], dependencies: [{ kind: "component", type: i1.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTabViewComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 'tsi-tab-view', template: "<p-tabView\r\n[scrollable]=\"scrollable\"\r\n[controlClose]=\"controlClose\"\r\n[styleClass]=\"styleClass\"\r\n[style]=\"style\"\r\n[activeIndex]=\"activeIndex\"\r\n(activeIndexChange)=\"activeIndexChange.emit($event)\"\r\n(onClose)=\"onClose.emit($event)\"\r\n(onChange)=\"onChange.emit($event)\"\r\n><ng-content></ng-content></p-tabView>" }]
27
+ }], ctorParameters: () => [], propDecorators: { orientation: [{
28
+ type: Input
29
+ }], style: [{
30
+ type: Input
31
+ }], styleClass: [{
32
+ type: Input
33
+ }], controlClose: [{
34
+ type: Input
35
+ }], scrollable: [{
36
+ type: Input
37
+ }], activeIndex: [{
38
+ type: Input
39
+ }], onChange: [{
40
+ type: Output
41
+ }], onClose: [{
42
+ type: Output
43
+ }], activeIndexChange: [{
44
+ type: Output
45
+ }] } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXRhYi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdGFiLXZpZXcvdHNpLXRhYi12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdGFiLXZpZXcvdHNpLXRhYi12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU8vRSxNQUFNLE9BQU8sbUJBQW1CO0lBZTlCLFlBQVk7SUFDWjtRQWRBLGdCQUFnQjtRQUNQLGdCQUFXLEdBQVcsS0FBSyxDQUFDO1FBRTVCLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFDdkIsaUJBQVksR0FBVyxLQUFLLENBQUM7UUFDN0IsZUFBVSxHQUFXLEtBQUssQ0FBQztRQUMzQixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUNqQyxZQUFZO1FBRVosaUJBQWlCO1FBQ0wsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pELFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCxzQkFBaUIsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUV6RCxDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOytHQW5CVSxtQkFBbUI7bUdBQW5CLG1CQUFtQix5VENQaEMscVZBU3NDOzs0RkRGekIsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGNBQWM7d0RBT2YsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFJTSxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0c2ktdGFiLXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90c2ktdGFiLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RzaS10YWItdmlldy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUc2lUYWJWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHsgXHJcblxyXG4gIC8vI3JlZ2lvbiBJbnB1dHNcclxuICBASW5wdXQoKSBvcmllbnRhdGlvbjogc3RyaW5nID0gJ3RvcCc7XHJcbiAgQElucHV0KCkgc3R5bGU6IGFueTtcclxuICBASW5wdXQoKSBzdHlsZUNsYXNzOiBzdHJpbmcgPScnO1xyXG4gIEBJbnB1dCgpIGNvbnRyb2xDbG9zZTogYm9vbGVhbj0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2Nyb2xsYWJsZTogYm9vbGVhbj0gZmFsc2U7XHJcbiAgQElucHV0KCkgYWN0aXZlSW5kZXg6IG51bWJlciA9IDA7XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIC8vI3JlZ2lvbiBPdXRwdXRzXHJcbiAgICBAT3V0cHV0KCkgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgQE91dHB1dCgpIG9uQ2xvc2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgQE91dHB1dCgpIGFjdGl2ZUluZGV4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAvLyNlbmRyZWdpb25cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxwLXRhYlZpZXdcclxuW3Njcm9sbGFibGVdPVwic2Nyb2xsYWJsZVwiXHJcbltjb250cm9sQ2xvc2VdPVwiY29udHJvbENsb3NlXCJcclxuW3N0eWxlQ2xhc3NdPVwic3R5bGVDbGFzc1wiXHJcbltzdHlsZV09XCJzdHlsZVwiXHJcblthY3RpdmVJbmRleF09XCJhY3RpdmVJbmRleFwiXHJcbihhY3RpdmVJbmRleENoYW5nZSk9XCJhY3RpdmVJbmRleENoYW5nZS5lbWl0KCRldmVudClcIlxyXG4ob25DbG9zZSk9XCJvbkNsb3NlLmVtaXQoJGV2ZW50KVwiXHJcbihvbkNoYW5nZSk9XCJvbkNoYW5nZS5lbWl0KCRldmVudClcIlxyXG4+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvcC10YWJWaWV3PiJdfQ==
@@ -0,0 +1,122 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { firstValueFrom } from 'rxjs';
3
+ import { logoutReasonEnum } from '../../enums';
4
+ import { ProceedLoginRequest } from '../../services';
5
+ import { AppRoutes } from '../../routes/app.routes';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services";
8
+ import * as i2 from "@angular/router";
9
+ import * as i3 from "../../services/application/app.layout.service";
10
+ import * as i4 from "@angular/common";
11
+ import * as i5 from "primeng/button";
12
+ import * as i6 from "../input-components/tsi-search-combo/tsi-search-combo.component";
13
+ import * as i7 from "../output-components/tsi-label/tsi-label.component";
14
+ import * as i8 from "../spinner/spinner.component";
15
+ import * as i9 from "../../pipes/localize.pipe";
16
+ export class TsiTenantsComponent {
17
+ set loginModel(value) { this._loginModel = value; }
18
+ get loginModel() { return this._loginModel; }
19
+ constructor(_auth, _identityAuthorisationService, _identityManager, notifService, _router, translationService, _appSettingsService, _layoutService) {
20
+ this._auth = _auth;
21
+ this._identityAuthorisationService = _identityAuthorisationService;
22
+ this._identityManager = _identityManager;
23
+ this.notifService = notifService;
24
+ this._router = _router;
25
+ this.translationService = translationService;
26
+ this._appSettingsService = _appSettingsService;
27
+ this._layoutService = _layoutService;
28
+ this.showTenants = false;
29
+ this.isLoading = false;
30
+ this.isLoginPage = false;
31
+ this.showAvancedButtons = true;
32
+ this.cancelEvent = new EventEmitter();
33
+ this.tenants = [];
34
+ this.languagesInformations = [];
35
+ }
36
+ ngOnInit() {
37
+ this.tenants = this.tenants.sort((a, b) => a.value.localeCompare(b.value));
38
+ let token = this._identityManager.parseMyAuthToken();
39
+ this.selectedTenantUid = token ? token.tenantUid : undefined;
40
+ }
41
+ async onTenantChange(tenantUid) {
42
+ let currentTenant = this.selectedTenantUid;
43
+ this.selectedTenantUid = tenantUid;
44
+ if (!this.isLoginPage && currentTenant !== this.selectedTenantUid) {
45
+ this.isLoading = true;
46
+ await this.logout();
47
+ await this.proceedLoginAsync();
48
+ setTimeout(() => {
49
+ window.location.reload();
50
+ }, 200);
51
+ }
52
+ }
53
+ cancel() {
54
+ this.showTenants = false;
55
+ this.isLoading = false;
56
+ this.cancelEvent.emit();
57
+ }
58
+ async proceedLoginAsync() {
59
+ if (!this.selectedTenantUid) {
60
+ this.notifService.error('AuthenticationFailure', 'Notification');
61
+ return;
62
+ }
63
+ this.isLoading = true;
64
+ try {
65
+ let proceedLoginRequest = new ProceedLoginRequest(this.selectedTenantUid);
66
+ const result = await this._identityAuthorisationService.proceedLoginAsync(proceedLoginRequest, this.userToken);
67
+ console.log("result => ", result);
68
+ if (!result?.token) {
69
+ throw new Error("Login response does not contain a valid token");
70
+ }
71
+ this._identityManager.saveAuthToken(result.token);
72
+ let parsedToken = this._identityManager.parseMyAuthToken();
73
+ console.log(parsedToken);
74
+ let languagesInformations = this.languagesInformations.find(x => x.languageCode === parsedToken.langue);
75
+ this._identityManager.saveUserLanguage(parsedToken.langue);
76
+ if (languagesInformations?.isRightToLeftMode) {
77
+ this._layoutService.enableRtlMode();
78
+ this._identityManager.saveRtlMode("true");
79
+ await this.translationService.loadLocalizationDS();
80
+ }
81
+ this.notifService.success('shared_Successfully_logged_in', 'Notification');
82
+ await this._appSettingsService.loadAppSettings();
83
+ this._router.navigate([`${AppRoutes.app}/${AppRoutes.home}`]);
84
+ this.isLoading = false;
85
+ }
86
+ catch (error) {
87
+ this.notifService.error('shared_Authentication_Failure', 'Notification');
88
+ this.isLoading = false;
89
+ }
90
+ finally {
91
+ this.isLoading = false;
92
+ }
93
+ }
94
+ async logout() {
95
+ await firstValueFrom(this._identityAuthorisationService.logout(logoutReasonEnum.VOLONTARY));
96
+ }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTenantsComponent, deps: [{ token: i1.AuthorizationService }, { token: i1.IdentityPlatformAuthenticationService }, { token: i1.IdentityManagerService }, { token: i1.TsiNotificationService }, { token: i2.Router }, { token: i1.TranslationService }, { token: i1.AppSettingsService }, { token: i3.LayoutService }], target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiTenantsComponent, selector: "Tsi-tenants", inputs: { showTenants: "showTenants", isLoading: "isLoading", isLoginPage: "isLoginPage", userToken: "userToken", showAvancedButtons: "showAvancedButtons", loginModel: "loginModel", tenants: "tenants", applicationUid: "applicationUid" }, outputs: { cancelEvent: "cancelEvent" }, ngImport: i0, template: "<div class=\"flex flex-column gap-4\">\r\n <div *ngIf=\"showTenants\" class=\"w-full loginForm-input\">\r\n <label *ngIf=\"isLoginPage\" for=\"connectionString\" class=\"text-900 text-xl font-medium\">\r\n <Tsi-Label [labelValue]=\"'connectionString'\" class=\"tsi-text-color-default\"></Tsi-Label>\r\n </label>\r\n\r\n <div *ngIf=\"!isLoginPage\" class=\"flex align-items-center cursor-pointer tooltip-text\">\r\n <i class=\"pi pi-database\"></i>\r\n <span>{{ 'connectionString' | localize }}</span>\r\n </div>\r\n\r\n <Tsi-Search-Combo id=\"societe\" id-field=\"key\" label-field=\"value\" [datasource]=\"tenants\"\r\n (bindChange)=\"onTenantChange($event)\" [(bind)]=\"selectedTenantUid\" [showClear]=\"true\"\r\n [showAddButton]=\"showAvancedButtons\" [showSearchButton]=\"showAvancedButtons\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showTenants && isLoginPage\" class=\"w-ful loginForm-submit flex gap-2\">\r\n\r\n <button pButton id=\"continueButton\" pRipple class=\"w-full p-3 text-xl btn\"\r\n [disabled]=\"!selectedTenantUid || isLoading\" type=\"button\" (click)=\"proceedLoginAsync()\"\r\n [ngClass]=\"{'button-loading' : isLoading }\">\r\n <div class=\"button-text\">\r\n <Tsi-Label [labelValue]=\"'Continuer'\"></Tsi-Label>\r\n </div>\r\n </button>\r\n\r\n <button pButton id=\"cancelButton\" pRipple class=\"w-full p-3 text-xl btn cancel-btn\" [disabled]=\"isLoading\"\r\n type=\"button\" (click)=\"cancel()\">\r\n <div class=\"button-text\">\r\n <Tsi-Label [labelValue]=\"'Cancel'\"></Tsi-Label>\r\n </div>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<app-spinner *ngIf=\"isLoading\" ></app-spinner>", styles: [".loginForm-input{display:flex;flex-direction:column;gap:1rem}.loginForm-submit button{border-radius:50px}.loginForm-submit .button-text{font-size:1rem;font-weight:600;padding:1rem}.btn{background:#f48d23;color:#fff;border-color:#f48d23}.btn:enabled:hover{background:#f48d23;color:#fff;border-color:#f48d23;opacity:.9}.cancel-btn{background:#3c3c3c;color:#fff;border-color:#3c3c3c}.cancel-btn:enabled:hover{background:#3c3c3c;color:#fff;border-color:#3c3c3c;opacity:.9}.tsi-text-color-default{color:#1b1f3d}.button-loading .button-text{visibility:hidden;opacity:0}.button-text{color:#fff;transition:all .2s}.button-text:hover{cursor:pointer}.btn:disabled{cursor:default}.btn{display:flex;justify-content:center}.tooltip-text{text-decoration:none;color:var(--primary-color);font-family:inherit;font-size:.9rem;display:flex;align-items:center;gap:.5rem;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i6.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "currentRowItem", "datasource", "bind", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick"] }, { kind: "component", type: i7.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i8.SpinnerComponent, selector: "app-spinner" }, { kind: "pipe", type: i9.LocalizePipe, name: "localize" }] }); }
99
+ }
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTenantsComponent, decorators: [{
101
+ type: Component,
102
+ args: [{ selector: 'Tsi-tenants', template: "<div class=\"flex flex-column gap-4\">\r\n <div *ngIf=\"showTenants\" class=\"w-full loginForm-input\">\r\n <label *ngIf=\"isLoginPage\" for=\"connectionString\" class=\"text-900 text-xl font-medium\">\r\n <Tsi-Label [labelValue]=\"'connectionString'\" class=\"tsi-text-color-default\"></Tsi-Label>\r\n </label>\r\n\r\n <div *ngIf=\"!isLoginPage\" class=\"flex align-items-center cursor-pointer tooltip-text\">\r\n <i class=\"pi pi-database\"></i>\r\n <span>{{ 'connectionString' | localize }}</span>\r\n </div>\r\n\r\n <Tsi-Search-Combo id=\"societe\" id-field=\"key\" label-field=\"value\" [datasource]=\"tenants\"\r\n (bindChange)=\"onTenantChange($event)\" [(bind)]=\"selectedTenantUid\" [showClear]=\"true\"\r\n [showAddButton]=\"showAvancedButtons\" [showSearchButton]=\"showAvancedButtons\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showTenants && isLoginPage\" class=\"w-ful loginForm-submit flex gap-2\">\r\n\r\n <button pButton id=\"continueButton\" pRipple class=\"w-full p-3 text-xl btn\"\r\n [disabled]=\"!selectedTenantUid || isLoading\" type=\"button\" (click)=\"proceedLoginAsync()\"\r\n [ngClass]=\"{'button-loading' : isLoading }\">\r\n <div class=\"button-text\">\r\n <Tsi-Label [labelValue]=\"'Continuer'\"></Tsi-Label>\r\n </div>\r\n </button>\r\n\r\n <button pButton id=\"cancelButton\" pRipple class=\"w-full p-3 text-xl btn cancel-btn\" [disabled]=\"isLoading\"\r\n type=\"button\" (click)=\"cancel()\">\r\n <div class=\"button-text\">\r\n <Tsi-Label [labelValue]=\"'Cancel'\"></Tsi-Label>\r\n </div>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<app-spinner *ngIf=\"isLoading\" ></app-spinner>", styles: [".loginForm-input{display:flex;flex-direction:column;gap:1rem}.loginForm-submit button{border-radius:50px}.loginForm-submit .button-text{font-size:1rem;font-weight:600;padding:1rem}.btn{background:#f48d23;color:#fff;border-color:#f48d23}.btn:enabled:hover{background:#f48d23;color:#fff;border-color:#f48d23;opacity:.9}.cancel-btn{background:#3c3c3c;color:#fff;border-color:#3c3c3c}.cancel-btn:enabled:hover{background:#3c3c3c;color:#fff;border-color:#3c3c3c;opacity:.9}.tsi-text-color-default{color:#1b1f3d}.button-loading .button-text{visibility:hidden;opacity:0}.button-text{color:#fff;transition:all .2s}.button-text:hover{cursor:pointer}.btn:disabled{cursor:default}.btn{display:flex;justify-content:center}.tooltip-text{text-decoration:none;color:var(--primary-color);font-family:inherit;font-size:.9rem;display:flex;align-items:center;gap:.5rem;cursor:pointer}\n"] }]
103
+ }], ctorParameters: () => [{ type: i1.AuthorizationService }, { type: i1.IdentityPlatformAuthenticationService }, { type: i1.IdentityManagerService }, { type: i1.TsiNotificationService }, { type: i2.Router }, { type: i1.TranslationService }, { type: i1.AppSettingsService }, { type: i3.LayoutService }], propDecorators: { showTenants: [{
104
+ type: Input
105
+ }], isLoading: [{
106
+ type: Input
107
+ }], isLoginPage: [{
108
+ type: Input
109
+ }], userToken: [{
110
+ type: Input
111
+ }], showAvancedButtons: [{
112
+ type: Input
113
+ }], cancelEvent: [{
114
+ type: Output
115
+ }], loginModel: [{
116
+ type: Input
117
+ }], tenants: [{
118
+ type: Input
119
+ }], applicationUid: [{
120
+ type: Input
121
+ }] } });
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXRlbmFudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL3RzaS10ZW5hbnRzL3RzaS10ZW5hbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdGVuYW50cy90c2ktdGVuYW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBdUosbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxTSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7SUFXOUIsSUFDSSxVQUFVLENBQUMsS0FBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RCxJQUFJLFVBQVUsS0FBVSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBV2xELFlBQ1UsS0FBMkIsRUFDM0IsNkJBQXFFLEVBQ3RFLGdCQUF3QyxFQUN2QyxZQUFvQyxFQUNwQyxPQUFlLEVBQ2Ysa0JBQXNDLEVBQ3RDLG1CQUF1QyxFQUN2QyxjQUE2QjtRQVA3QixVQUFLLEdBQUwsS0FBSyxDQUFzQjtRQUMzQixrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQXdDO1FBQ3RFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FB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QVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTTtRQUNWLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtJQUM3RixDQUFDOytHQXJIVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwwVUNiaEMseTFEQXFDOEM7OzRGRHhCakMsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7MFVBTWQsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFJSCxVQUFVO3NCQURiLEtBQUs7Z0JBSUcsT0FBTztzQkFBZixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGxvZ291dFJlYXNvbkVudW0gfSBmcm9tICcuLi8uLi9lbnVtcyc7XHJcbmltcG9ydCB7IEF1dGhvcml6YXRpb25TZXJ2aWNlLCBJZGVudGl0eVBsYXRmb3JtQXV0aGVudGljYXRpb25TZXJ2aWNlLCBJZGVudGl0eU1hbmFnZXJTZXJ2aWNlLCBUc2lOb3RpZmljYXRpb25TZXJ2aWNlLCBUcmFuc2xhdGlvblNlcnZpY2UsIEFwcFNldHRpbmdzU2VydmljZSwgUHJvY2VlZExvZ2luUmVxdWVzdCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9uL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcFJvdXRlcyB9IGZyb20gJy4uLy4uL3JvdXRlcy9hcHAucm91dGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLXRlbmFudHMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90c2ktdGVuYW50cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHNpLXRlbmFudHMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHNpVGVuYW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHNob3dUZW5hbnRzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaXNMb2dpblBhZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSB1c2VyVG9rZW4gPzogc3RyaW5nIDtcclxuICBASW5wdXQoKSBzaG93QXZhbmNlZEJ1dHRvbnM6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgY2FuY2VsRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHByaXZhdGUgX2xvZ2luTW9kZWw6IGFueTtcclxuICBASW5wdXQoKVxyXG4gIHNldCBsb2dpbk1vZGVsKHZhbHVlOiBhbnkpIHsgdGhpcy5fbG9naW5Nb2RlbCA9IHZhbHVlOyB9XHJcbiAgZ2V0IGxvZ2luTW9kZWwoKTogYW55IHsgcmV0dXJuIHRoaXMuX2xvZ2luTW9kZWw7IH1cclxuXHJcbiAgQElucHV0KCkgdGVuYW50czogeyBrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9W10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgYXBwbGljYXRpb25VaWQgPzogc3RyaW5nO1xyXG5cclxuICBzZWxlY3RlZFRlbmFudFVpZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG5cclxuXHJcbiAgbGFuZ3VhZ2VzSW5mb3JtYXRpb25zOiBhbnlbXSA9IFtdXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfYXV0aDogQXV0aG9yaXphdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9pZGVudGl0eUF1dGhvcmlzYXRpb25TZXJ2aWNlIDogSWRlbnRpdHlQbGF0Zm9ybUF1dGhlbnRpY2F0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBfaWRlbnRpdHlNYW5hZ2VyOiBJZGVudGl0eU1hbmFnZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBub3RpZlNlcnZpY2U6IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgdHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9hcHBTZXR0aW5nc1NlcnZpY2U6IEFwcFNldHRpbmdzU2VydmljZSxcclxuICAgIHByaXZhdGUgX2xheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBcclxuICAgIHRoaXMudGVuYW50cyA9IHRoaXMudGVuYW50cy5zb3J0KChhLCBiKSA9PiBhLnZhbHVlLmxvY2FsZUNvbXBhcmUoYi52YWx1ZSkpO1xyXG5cclxuICAgIGxldCB0b2tlbiA9IHRoaXMuX2lkZW50aXR5TWFuYWdlci5wYXJzZU15QXV0aFRva2VuKCk7XHJcbiAgICB0aGlzLnNlbGVjdGVkVGVuYW50VWlkID0gdG9rZW4gPyB0b2tlbi50ZW5hbnRVaWQgOiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBhc3luYyBvblRlbmFudENoYW5nZSh0ZW5hbnRVaWQ6IGFueSkge1xyXG5cclxuICAgIGxldCBjdXJyZW50VGVuYW50ID0gdGhpcy5zZWxlY3RlZFRlbmFudFVpZDtcclxuICAgIHRoaXMuc2VsZWN0ZWRUZW5hbnRVaWQgPSB0ZW5hbnRVaWQ7XHJcblxyXG4gICAgaWYgKCF0aGlzLmlzTG9naW5QYWdlICYmIGN1cnJlbnRUZW5hbnQgIT09IHRoaXMuc2VsZWN0ZWRUZW5hbnRVaWQpIHtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgYXdhaXQgdGhpcy5sb2dvdXQoKTtcclxuICAgICAgYXdhaXQgdGhpcy5wcm9jZWVkTG9naW5Bc3luYygpO1xyXG5cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICB9LCAyMDApO1xyXG4gICAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbmNlbCgpIHtcclxuICAgIHRoaXMuc2hvd1RlbmFudHMgPSBmYWxzZTtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgdGhpcy5jYW5jZWxFdmVudC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBwcm9jZWVkTG9naW5Bc3luYygpIHtcclxuICAgIGlmICghdGhpcy5zZWxlY3RlZFRlbmFudFVpZCkge1xyXG4gICAgICB0aGlzLm5vdGlmU2VydmljZS5lcnJvcignQXV0aGVudGljYXRpb25GYWlsdXJlJywgJ05vdGlmaWNhdGlvbicpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gXHJcbiAgICB0cnkge1xyXG4gICAgICBsZXQgcHJvY2VlZExvZ2luUmVxdWVzdCA6IFByb2NlZWRMb2dpblJlcXVlc3QgPSBuZXcgUHJvY2VlZExvZ2luUmVxdWVzdCh0aGlzLnNlbGVjdGVkVGVuYW50VWlkKTtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5faWRlbnRpdHlBdXRob3Jpc2F0aW9uU2VydmljZS5wcm9jZWVkTG9naW5Bc3luYyhwcm9jZWVkTG9naW5SZXF1ZXN0LCB0aGlzLnVzZXJUb2tlbik7XHJcblxyXG4gICAgICBjb25zb2xlLmxvZyhcInJlc3VsdCA9PiBcIixyZXN1bHQpO1xyXG5cclxuICAgICAgaWYgKCFyZXN1bHQ/LnRva2VuKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTG9naW4gcmVzcG9uc2UgZG9lcyBub3QgY29udGFpbiBhIHZhbGlkIHRva2VuXCIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLl9pZGVudGl0eU1hbmFnZXIuc2F2ZUF1dGhUb2tlbihyZXN1bHQudG9rZW4pO1xyXG4gICAgICBsZXQgcGFyc2VkVG9rZW46IGFueSA9IHRoaXMuX2lkZW50aXR5TWFuYWdlci5wYXJzZU15QXV0aFRva2VuKCk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHBhcnNlZFRva2VuKTtcclxuXHJcbiAgICAgIGxldCBsYW5ndWFnZXNJbmZvcm1hdGlvbnMgPSB0aGlzLmxhbmd1YWdlc0luZm9ybWF0aW9ucy5maW5kKHggPT4geC5sYW5ndWFnZUNvZGUgPT09IHBhcnNlZFRva2VuLmxhbmd1ZSk7XHJcbiAgICAgIHRoaXMuX2lkZW50aXR5TWFuYWdlci5zYXZlVXNlckxhbmd1YWdlKHBhcnNlZFRva2VuLmxhbmd1ZSk7XHJcblxyXG4gICAgICBpZiAobGFuZ3VhZ2VzSW5mb3JtYXRpb25zPy5pc1JpZ2h0VG9MZWZ0TW9kZSkge1xyXG4gICAgICAgIHRoaXMuX2xheW91dFNlcnZpY2UuZW5hYmxlUnRsTW9kZSgpO1xyXG4gICAgICAgIHRoaXMuX2lkZW50aXR5TWFuYWdlci5zYXZlUnRsTW9kZShcInRydWVcIik7XHJcbiAgICAgICAgYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UubG9hZExvY2FsaXphdGlvbkRTKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMubm90aWZTZXJ2aWNlLnN1Y2Nlc3MoJ3NoYXJlZF9TdWNjZXNzZnVsbHlfbG9nZ2VkX2luJywgJ05vdGlmaWNhdGlvbicpO1xyXG4gICAgICBhd2FpdCB0aGlzLl9hcHBTZXR0aW5nc1NlcnZpY2UubG9hZEFwcFNldHRpbmdzKCk7XHJcbiAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbYCR7QXBwUm91dGVzLmFwcH0vJHtBcHBSb3V0ZXMuaG9tZX1gXSk7XHJcblxyXG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMubm90aWZTZXJ2aWNlLmVycm9yKCdzaGFyZWRfQXV0aGVudGljYXRpb25fRmFpbHVyZScsICdOb3RpZmljYXRpb24nKTtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgIH0gZmluYWxseSB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2dvdXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLl9pZGVudGl0eUF1dGhvcmlzYXRpb25TZXJ2aWNlLmxvZ291dChsb2dvdXRSZWFzb25FbnVtLlZPTE9OVEFSWSkpXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBnYXAtNFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dUZW5hbnRzXCIgY2xhc3M9XCJ3LWZ1bGwgbG9naW5Gb3JtLWlucHV0XCI+XHJcbiAgICAgICAgPGxhYmVsICpuZ0lmPVwiaXNMb2dpblBhZ2VcIiBmb3I9XCJjb25uZWN0aW9uU3RyaW5nXCIgY2xhc3M9XCJ0ZXh0LTkwMCB0ZXh0LXhsIGZvbnQtbWVkaXVtXCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgIFtsYWJlbFZhbHVlXT1cIidjb25uZWN0aW9uU3RyaW5nJ1wiIGNsYXNzPVwidHNpLXRleHQtY29sb3ItZGVmYXVsdFwiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhaXNMb2dpblBhZ2VcIiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGN1cnNvci1wb2ludGVyIHRvb2x0aXAtdGV4dFwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWRhdGFiYXNlXCI+PC9pPlxyXG4gICAgICAgICAgICA8c3Bhbj57eyAnY29ubmVjdGlvblN0cmluZycgfCBsb2NhbGl6ZSB9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gaWQ9XCJzb2NpZXRlXCIgaWQtZmllbGQ9XCJrZXlcIiBsYWJlbC1maWVsZD1cInZhbHVlXCIgW2RhdGFzb3VyY2VdPVwidGVuYW50c1wiXHJcbiAgICAgICAgICAgIChiaW5kQ2hhbmdlKT1cIm9uVGVuYW50Q2hhbmdlKCRldmVudClcIiBbKGJpbmQpXT1cInNlbGVjdGVkVGVuYW50VWlkXCIgW3Nob3dDbGVhcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW3Nob3dBZGRCdXR0b25dPVwic2hvd0F2YW5jZWRCdXR0b25zXCIgW3Nob3dTZWFyY2hCdXR0b25dPVwic2hvd0F2YW5jZWRCdXR0b25zXCI+XHJcbiAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPlxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93VGVuYW50cyAmJiBpc0xvZ2luUGFnZVwiIGNsYXNzPVwidy1mdWwgbG9naW5Gb3JtLXN1Ym1pdCBmbGV4IGdhcC0yXCI+XHJcblxyXG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiBpZD1cImNvbnRpbnVlQnV0dG9uXCIgcFJpcHBsZSBjbGFzcz1cInctZnVsbCBwLTMgdGV4dC14bCBidG5cIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdGVkVGVuYW50VWlkIHx8IGlzTG9hZGluZ1wiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwicHJvY2VlZExvZ2luQXN5bmMoKVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnYnV0dG9uLWxvYWRpbmcnIDogaXNMb2FkaW5nIH1cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICA8VHNpLUxhYmVsIFtsYWJlbFZhbHVlXT1cIidDb250aW51ZXInXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICA8YnV0dG9uIHBCdXR0b24gaWQ9XCJjYW5jZWxCdXR0b25cIiBwUmlwcGxlIGNsYXNzPVwidy1mdWxsIHAtMyB0ZXh0LXhsIGJ0biBjYW5jZWwtYnRuXCIgW2Rpc2FibGVkXT1cImlzTG9hZGluZ1wiXHJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2FuY2VsKClcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICA8VHNpLUxhYmVsIFtsYWJlbFZhbHVlXT1cIidDYW5jZWwnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGFwcC1zcGlubmVyICpuZ0lmPVwiaXNMb2FkaW5nXCIgPjwvYXBwLXNwaW5uZXI+Il19
@@ -0,0 +1,21 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { TooltipPosition } from '../../enums/tooltipPosition.enum';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "primeng/tooltip";
5
+ export class TsiTooltipComponent {
6
+ constructor() {
7
+ this.tooltipText = "";
8
+ this.tooltipPosition = TooltipPosition.Top;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiTooltipComponent, selector: "Tsi-Tooltip", inputs: { tooltipText: "tooltipText", tooltipPosition: "tooltipPosition" }, ngImport: i0, template: "<span\r\n [pTooltip]=\"tooltipText\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n>\r\n <ng-content></ng-content>\r\n</span>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiTooltipComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'Tsi-Tooltip', template: "<span\r\n [pTooltip]=\"tooltipText\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n>\r\n <ng-content></ng-content>\r\n</span>\r\n" }]
16
+ }], ctorParameters: () => [], propDecorators: { tooltipText: [{
17
+ type: Input
18
+ }], tooltipPosition: [{
19
+ type: Input
20
+ }] } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXRvb2x0aXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL3RzaS10b29sdGlwL3RzaS10b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdG9vbHRpcC90c2ktdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU9uRSxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCO1FBSFMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsb0JBQWUsR0FBb0IsZUFBZSxDQUFDLEdBQUcsQ0FBQztJQUVoRCxDQUFDOytHQUpOLG1CQUFtQjttR0FBbkIsbUJBQW1CLCtIQ1JoQyxxSUFNQTs7NEZERWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7d0RBS2QsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuLi8uLi9lbnVtcy90b29sdGlwUG9zaXRpb24uZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1RzaS1Ub29sdGlwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLXRvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RzaS10b29sdGlwLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRzaVRvb2x0aXBDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHRvb2x0aXBUZXh0IDpzdHJpbmcgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHRvb2x0aXBQb3NpdGlvbiA6VG9vbHRpcFBvc2l0aW9uID0gVG9vbHRpcFBvc2l0aW9uLlRvcDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbn1cclxuIiwiPHNwYW5cclxuICBbcFRvb2x0aXBdPVwidG9vbHRpcFRleHRcIlxyXG4gIFt0b29sdGlwUG9zaXRpb25dPVwidG9vbHRpcFBvc2l0aW9uXCJcclxuPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuPC9zcGFuPlxyXG4iXX0=
@@ -0,0 +1,186 @@
1
+ import { Component, EventEmitter, Output } from '@angular/core';
2
+ import { LocalizationKeys } from '../../consts/localization-key';
3
+ import { Modes } from '../../enums';
4
+ import { Fichier } from '../../models';
5
+ import { TsiFormComponentBaseComponent } from '../../tsi-base/components/tsi-form-base/tsi-form-base.component';
6
+ import { appProviders } from '../../consts/app-providers';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../services/fichier/fichier.service";
9
+ import * as i2 from "../../services";
10
+ import * as i3 from "primeng/dynamicdialog";
11
+ import * as i4 from "../input-components/tsi-checkbox/tsi-checkbox.component";
12
+ import * as i5 from "../input-components/tsi-date-picker/tsi-date-picker.component";
13
+ import * as i6 from "../input-components/tsi-text-area/tsi-text-area.component";
14
+ import * as i7 from "../input-components/tsi-text-box/tsi-text-box.component";
15
+ import * as i8 from "../input-components/tsi-file-manager/tsi-file-manager.component";
16
+ import * as i9 from "../output-components/tsi-label/tsi-label.component";
17
+ import * as i10 from "../tsi-modal-footer/tsi-modal-footer.component";
18
+ import * as i11 from "../tsi-modal-header/tsi-modal-header.component";
19
+ import * as i12 from "../tsi-form/tsi-form.component";
20
+ import * as i13 from "../../pipes/localize.pipe";
21
+ export class TsiUploadFicheComponent extends TsiFormComponentBaseComponent {
22
+ constructor(_fichierService, _errorResponseManagerService, ref, config, _notificationService, _confirmationService, dialogDataService) {
23
+ super(ref, config);
24
+ this._fichierService = _fichierService;
25
+ this._errorResponseManagerService = _errorResponseManagerService;
26
+ this.ref = ref;
27
+ this.config = config;
28
+ this._notificationService = _notificationService;
29
+ this._confirmationService = _confirmationService;
30
+ this.dialogDataService = dialogDataService;
31
+ this.fichier = new Fichier();
32
+ // paramBaseEndpoints = ParamBaseEndpoints;
33
+ this.saving = false;
34
+ this.allDataLoaded = false;
35
+ this.toUploadFileData = undefined;
36
+ this.base64String = null;
37
+ this.isDisable = true;
38
+ this.onSave = new EventEmitter();
39
+ }
40
+ ngOnInit() {
41
+ this.fichier.nomFichierComplet = "";
42
+ super.ngOnInit();
43
+ // TODO @MedAli to be fixed
44
+ this.businessClass = "Fichier";
45
+ if ((this.mode == Modes.edit || this.mode == Modes.delete || this.mode == Modes.consult) &&
46
+ this.id != undefined &&
47
+ this.id != null) {
48
+ this.isloading = true;
49
+ this._fichierService.getById(this.id).subscribe((data) => {
50
+ this.fichier = data;
51
+ this.isloading = false;
52
+ });
53
+ }
54
+ }
55
+ save() {
56
+ super.save();
57
+ this.saving = false;
58
+ this.isloading = false;
59
+ if (this.mode == Modes.create) {
60
+ this._fichierService.create(this.fichier).subscribe({
61
+ next: () => {
62
+ this._notificationService.info(this.l(LocalizationKeys.savedSuccessfully));
63
+ this.hide(true);
64
+ this.onSave.emit();
65
+ },
66
+ error: (response) => {
67
+ this.saving = false;
68
+ this._errorResponseManagerService.showErrorMessage(response);
69
+ },
70
+ complete: () => {
71
+ this.isloading = false;
72
+ },
73
+ });
74
+ }
75
+ if (this.mode == Modes.edit &&
76
+ this.fichier.uid != null &&
77
+ this.fichier.uid != undefined) {
78
+ this.isloading = true;
79
+ this._fichierService.update(this.fichier, this.fichier.uid).subscribe({
80
+ next: () => {
81
+ this._notificationService.info(this.l(LocalizationKeys.updatedSuccessfully));
82
+ this.hide(true);
83
+ this.onSave.emit();
84
+ this.isloading = false;
85
+ },
86
+ error: (response) => {
87
+ this.saving = false;
88
+ this._errorResponseManagerService.showErrorMessage(response);
89
+ this.isloading = false;
90
+ },
91
+ complete: () => {
92
+ this.isloading = false;
93
+ },
94
+ });
95
+ }
96
+ if (this.mode == Modes.delete) {
97
+ this.isloading = true;
98
+ this._confirmationService.confirm(LocalizationKeys.confirmDelete, undefined, (result) => {
99
+ if (result &&
100
+ this.fichier.uid != null &&
101
+ this.fichier.uid != undefined) {
102
+ this._fichierService.delete(this.fichier.uid).subscribe(() => {
103
+ this._notificationService.success(this.l(LocalizationKeys.deletedSuccessfully));
104
+ this.hide(true);
105
+ this.onSave.emit();
106
+ this.isloading = false;
107
+ });
108
+ }
109
+ });
110
+ }
111
+ }
112
+ onFileSelected(event) {
113
+ // const file: File = event.currentFiles[0];
114
+ //this.toUploadFileData = file;
115
+ //this.readFile(file);
116
+ //this.readFileAsByteArray(file);
117
+ //const blob = new Blob([file], { type: file.type });
118
+ setTimeout(() => {
119
+ //this.fichier.contenu = this.base64String;
120
+ //this.fichier.nomFichierComplet = event.currentFiles[0].name;
121
+ this.fichier.pkey = this.dialogDataService.getData().id;
122
+ this.fichier.tableLiee = this.dialogDataService.getData().class;
123
+ console.log("file to upload", this.fichier.nomFichierComplet);
124
+ }, 200);
125
+ }
126
+ onImportFile(event) {
127
+ /* this.reportingService.uploadReportFile(this.toUploadFileData)
128
+ .subscribe(
129
+ {
130
+ next: (response) => {
131
+ this._refreshReports();
132
+ this.notificationService.success('shared_reporting_report_uploaded_successfully');
133
+ this.fileUpload?.clear();
134
+ },
135
+ error: () => {
136
+ this.notificationService.error(this.errorMessageKey);
137
+ }
138
+ }); */
139
+ }
140
+ //cancel button click
141
+ onClear(event) {
142
+ this.toUploadFileData = undefined;
143
+ }
144
+ //cancel button click
145
+ onRemove(event) {
146
+ this.toUploadFileData = undefined;
147
+ }
148
+ readFile(file) {
149
+ const reader = new FileReader();
150
+ reader.onload = () => {
151
+ this.base64String = reader.result.split(',')[1];
152
+ // Use this.base64String as needed
153
+ };
154
+ reader.onerror = (error) => {
155
+ console.error('File reading error:', error);
156
+ };
157
+ reader.readAsDataURL(file);
158
+ }
159
+ readFileAsByteArray(file) {
160
+ const reader = new FileReader();
161
+ reader.onload = () => {
162
+ const arrayBuffer = reader.result;
163
+ const byteArray = new Uint8Array(arrayBuffer);
164
+ // Use byteArray as needed
165
+ const byteConst = byteArray;
166
+ console.log(byteConst);
167
+ //this.fichier.contenu = byteConst
168
+ };
169
+ reader.onerror = (error) => {
170
+ console.error('File reading error:', error);
171
+ };
172
+ reader.readAsArrayBuffer(file);
173
+ }
174
+ onDataLoaded() {
175
+ this.allDataLoaded = true;
176
+ }
177
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadFicheComponent, deps: [{ token: i1.FichierService }, { token: i2.ErrorResponseManagerService }, { token: i3.DynamicDialogRef }, { token: i3.DynamicDialogConfig }, { token: i2.TsiNotificationService }, { token: i2.TsiConfirmationService }, { token: i2.DialogDataService }], target: i0.ɵɵFactoryTarget.Component }); }
178
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiUploadFicheComponent, selector: "app-tsi-upload-fiche", outputs: { onSave: "onSave" }, providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <!-- TODO @MedAli -->\r\n <!-- <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" elementSourceUrl=\"{{paramBaseEndpoints.getTypeFichierMinimal()}}\"\r\n listSourceUrl=\"{{paramBaseEndpoints.getAllTypeFichierMinimal()}}\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" label-field=\"libelle\" [isFiltered]=\"true\" (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo>\r\n </div> -->\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>", styles: [""], dependencies: [{ kind: "component", type: i4.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i5.TsiDatePickerComponent, selector: "Tsi-Date-Picker", inputs: ["required", "showTime", "showButtonBar"], outputs: ["inputFieldChange"] }, { kind: "component", type: i6.TsiTextAreaComponent, selector: "Tsi-Text-Area", inputs: ["rows", "cols"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i7.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i8.TsiFileManagerComponent, selector: "Tsi-File-Manager", inputs: ["fileName", "name", "id", "accept", "maxFileSize", "multiple", "exploreOnDownload", "showUploadButton", "showCancelButton", "showDownloadButton", "chooseIcon", "chooseLabel", "showSelectButton", "showFileUpload"], outputs: ["onSelectFileManager", "onClear", "onRemove", "inputFieldChange", "fileNameChange"] }, { kind: "component", type: i9.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i10.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate"], outputs: ["onCancelClick", "onSaveClick"] }, { kind: "component", type: i11.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i12.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly"], outputs: ["onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i13.LocalizePipe, name: "localize" }] }); }
179
+ }
180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadFicheComponent, decorators: [{
181
+ type: Component,
182
+ args: [{ selector: 'app-tsi-upload-fiche', providers: [...appProviders], template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <!-- TODO @MedAli -->\r\n <!-- <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" elementSourceUrl=\"{{paramBaseEndpoints.getTypeFichierMinimal()}}\"\r\n listSourceUrl=\"{{paramBaseEndpoints.getAllTypeFichierMinimal()}}\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" label-field=\"libelle\" [isFiltered]=\"true\" (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo>\r\n </div> -->\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>" }]
183
+ }], ctorParameters: () => [{ type: i1.FichierService }, { type: i2.ErrorResponseManagerService }, { type: i3.DynamicDialogRef }, { type: i3.DynamicDialogConfig }, { type: i2.TsiNotificationService }, { type: i2.TsiConfirmationService }, { type: i2.DialogDataService }], propDecorators: { onSave: [{
184
+ type: Output
185
+ }] } });
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvdHNpLXVwbG9hZC1maWNoZS90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdXBsb2FkLWZpY2hlL3RzaS11cGxvYWQtZmljaGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV2QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQVExRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsNkJBQTZCO0lBY3hFLFlBQ1MsZUFBK0IsRUFDOUIsNEJBQXlELEVBQ2pELEdBQXFCLEVBQ3JCLE1BQTJCLEVBQ25DLG9CQUE0QyxFQUM1QyxvQkFBNEMsRUFDNUMsaUJBQW9DO1FBRTVDLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFSWixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFDOUIsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE2QjtRQUNqRCxRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFx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O1FBQzlDLENBQUMsQ0FBQztRQUNGLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztJQUM1QixDQUFDOytHQTFMVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw4RUFGdkIsQ0FBQyxHQUFHLFlBQVksQ0FBQyxpRENmOUIsdThNQThIVzs7NEZEN0dFLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxzQkFBc0IsYUFHckIsQ0FBQyxHQUFHLFlBQVksQ0FBQzt3U0FjVCxNQUFNO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uS2V5cyB9IGZyb20gJy4uLy4uL2NvbnN0cy9sb2NhbGl6YXRpb24ta2V5JztcclxuaW1wb3J0IHsgTW9kZXMgfSBmcm9tICcuLi8uLi9lbnVtcyc7XHJcbmltcG9ydCB7IEZpY2hpZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2UsIFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsIFRzaUNvbmZpcm1hdGlvblNlcnZpY2UsIERpYWxvZ0RhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3RzaS1iYXNlL2NvbXBvbmVudHMvdHNpLWZvcm0tYmFzZS90c2ktZm9ybS1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpY2hpZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmljaGllci9maWNoaWVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBhcHBQcm92aWRlcnMgfSBmcm9tICcuLi8uLi9jb25zdHMvYXBwLXByb3ZpZGVycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10c2ktdXBsb2FkLWZpY2hlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogWy4uLmFwcFByb3ZpZGVyc11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRzaVVwbG9hZEZpY2hlQ29tcG9uZW50IGV4dGVuZHMgVHNpRm9ybUNvbXBvbmVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBmaWNoaWVyID0gbmV3IEZpY2hpZXIoKTtcclxuICAvLyBwYXJhbUJhc2VFbmRwb2ludHMgPSBQYXJhbUJhc2VFbmRwb2ludHM7XHJcblxyXG4gIG92ZXJyaWRlIHNhdmluZyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhbGxEYXRhTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdG9VcGxvYWRGaWxlRGF0YTogYW55ID0gdW5kZWZpbmVkO1xyXG4gIGJhc2U2NFN0cmluZzogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgaXNEaXNhYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIG92ZXJyaWRlIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBfZmljaGllclNlcnZpY2U6IEZpY2hpZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlOiBFcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVmOiBEeW5hbWljRGlhbG9nUmVmLFxyXG4gICAgcHVibGljIG92ZXJyaWRlIGNvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jb25maXJtYXRpb25TZXJ2aWNlOiBUc2lDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dEYXRhU2VydmljZTogRGlhbG9nRGF0YVNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHJlZiwgY29uZmlnKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5maWNoaWVyLm5vbUZpY2hpZXJDb21wbGV0ID0gXCJcIjtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAvLyBUT0RPIEBNZWRBbGkgdG8gYmUgZml4ZWQgXHJcbiAgICB0aGlzLmJ1c2luZXNzQ2xhc3MgPSBcIkZpY2hpZXJcIjtcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgICh0aGlzLm1vZGUgPT0gTW9kZXMuZWRpdCB8fCB0aGlzLm1vZGUgPT0gTW9kZXMuZGVsZXRlIHx8IHRoaXMubW9kZSA9PSBNb2Rlcy5jb25zdWx0KSAmJlxyXG4gICAgICB0aGlzLmlkICE9IHVuZGVmaW5lZCAmJlxyXG4gICAgICB0aGlzLmlkICE9IG51bGxcclxuICAgICkge1xyXG5cclxuICAgICAgdGhpcy5pc2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLl9maWNoaWVyU2VydmljZS5nZXRCeUlkKHRoaXMuaWQpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZmljaGllciA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBzYXZlKCk6IHZvaWQge1xyXG4gICAgc3VwZXIuc2F2ZSgpXHJcbiAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xyXG4gICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5tb2RlID09IE1vZGVzLmNyZWF0ZSkge1xyXG4gICAgICB0aGlzLl9maWNoaWVyU2VydmljZS5jcmVhdGUodGhpcy5maWNoaWVyKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvblNlcnZpY2UuaW5mbyh0aGlzLmwoTG9jYWxpemF0aW9uS2V5cy5zYXZlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChyZXNwb25zZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLl9lcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2Uuc2hvd0Vycm9yTWVzc2FnZShyZXNwb25zZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMubW9kZSA9PSBNb2Rlcy5lZGl0ICYmXHJcbiAgICAgIHRoaXMuZmljaGllci51aWQgIT0gbnVsbCAmJlxyXG4gICAgICB0aGlzLmZpY2hpZXIudWlkICE9IHVuZGVmaW5lZFxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaXNsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fZmljaGllclNlcnZpY2UudXBkYXRlKHRoaXMuZmljaGllciwgdGhpcy5maWNoaWVyLnVpZCkuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLmluZm8odGhpcy5sKExvY2FsaXphdGlvbktleXMudXBkYXRlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAocmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5fZXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlLnNob3dFcnJvck1lc3NhZ2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm1vZGUgPT0gTW9kZXMuZGVsZXRlKSB7XHJcbiAgICAgIHRoaXMuaXNsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKFxyXG4gICAgICAgIExvY2FsaXphdGlvbktleXMuY29uZmlybURlbGV0ZSxcclxuICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgKHJlc3VsdDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICByZXN1bHQgJiZcclxuICAgICAgICAgICAgdGhpcy5maWNoaWVyLnVpZCAhPSBudWxsICYmXHJcbiAgICAgICAgICAgIHRoaXMuZmljaGllci51aWQgIT0gdW5kZWZpbmVkXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5fZmljaGllclNlcnZpY2UuZGVsZXRlKHRoaXMuZmljaGllci51aWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKHRoaXMubChMb2NhbGl6YXRpb25LZXlzLmRlbGV0ZWRTdWNjZXNzZnVsbHkpKTtcclxuICAgICAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRmlsZVNlbGVjdGVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIC8vIGNvbnN0IGZpbGU6IEZpbGUgPSBldmVudC5jdXJyZW50RmlsZXNbMF07XHJcbiAgICAvL3RoaXMudG9VcGxvYWRGaWxlRGF0YSA9IGZpbGU7XHJcbiAgICAvL3RoaXMucmVhZEZpbGUoZmlsZSk7XHJcbiAgICAvL3RoaXMucmVhZEZpbGVBc0J5dGVBcnJheShmaWxlKTtcclxuICAgIC8vY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtmaWxlXSwgeyB0eXBlOiBmaWxlLnR5cGUgfSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgLy90aGlzLmZpY2hpZXIuY29udGVudSA9IHRoaXMuYmFzZTY0U3RyaW5nO1xyXG4gICAgICAvL3RoaXMuZmljaGllci5ub21GaWNoaWVyQ29tcGxldCA9IGV2ZW50LmN1cnJlbnRGaWxlc1swXS5uYW1lO1xyXG4gICAgICB0aGlzLmZpY2hpZXIucGtleSA9IHRoaXMuZGlhbG9nRGF0YVNlcnZpY2UuZ2V0RGF0YSgpLmlkO1xyXG4gICAgICB0aGlzLmZpY2hpZXIudGFibGVMaWVlID0gdGhpcy5kaWFsb2dEYXRhU2VydmljZS5nZXREYXRhKCkuY2xhc3M7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiZmlsZSB0byB1cGxvYWRcIiwgdGhpcy5maWNoaWVyLm5vbUZpY2hpZXJDb21wbGV0KVxyXG4gICAgfSwgMjAwKTtcclxuICB9XHJcblxyXG4gIG9uSW1wb3J0RmlsZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAvKiAgdGhpcy5yZXBvcnRpbmdTZXJ2aWNlLnVwbG9hZFJlcG9ydEZpbGUodGhpcy50b1VwbG9hZEZpbGVEYXRhKVxyXG4gICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAge1xyXG4gICAgICAgICAgIG5leHQ6IChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgdGhpcy5fcmVmcmVzaFJlcG9ydHMoKTtcclxuICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKCdzaGFyZWRfcmVwb3J0aW5nX3JlcG9ydF91cGxvYWRlZF9zdWNjZXNzZnVsbHknKTtcclxuICAgICAgICAgICAgIHRoaXMuZmlsZVVwbG9hZD8uY2xlYXIoKTtcclxuICAgICAgICAgICB9LFxyXG4gICAgICAgICAgIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IodGhpcy5lcnJvck1lc3NhZ2VLZXkpO1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgfSk7ICovXHJcbiAgfVxyXG5cclxuICAvL2NhbmNlbCBidXR0b24gY2xpY2tcclxuICBvbkNsZWFyKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMudG9VcGxvYWRGaWxlRGF0YSA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIC8vY2FuY2VsIGJ1dHRvbiBjbGlja1xyXG4gIG9uUmVtb3ZlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMudG9VcGxvYWRGaWxlRGF0YSA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHJlYWRGaWxlKGZpbGU6IEZpbGUpIHtcclxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmJhc2U2NFN0cmluZyA9IChyZWFkZXIucmVzdWx0IGFzIHN0cmluZykuc3BsaXQoJywnKVsxXTtcclxuICAgICAgLy8gVXNlIHRoaXMuYmFzZTY0U3RyaW5nIGFzIG5lZWRlZFxyXG4gICAgfTtcclxuICAgIHJlYWRlci5vbmVycm9yID0gKGVycm9yKSA9PiB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZpbGUgcmVhZGluZyBlcnJvcjonLCBlcnJvcik7XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgfVxyXG5cclxuICByZWFkRmlsZUFzQnl0ZUFycmF5KGZpbGU6IEZpbGUpIHtcclxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICBjb25zdCBhcnJheUJ1ZmZlciA9IHJlYWRlci5yZXN1bHQgYXMgQXJyYXlCdWZmZXI7XHJcbiAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGFycmF5QnVmZmVyKTtcclxuXHJcbiAgICAgIC8vIFVzZSBieXRlQXJyYXkgYXMgbmVlZGVkXHJcbiAgICAgIGNvbnN0IGJ5dGVDb25zdDogVWludDhBcnJheSA9IGJ5dGVBcnJheTtcclxuICAgICAgY29uc29sZS5sb2coYnl0ZUNvbnN0KTtcclxuICAgICAgLy90aGlzLmZpY2hpZXIuY29udGVudSA9IGJ5dGVDb25zdFxyXG4gICAgfTtcclxuICAgIHJlYWRlci5vbmVycm9yID0gKGVycm9yKSA9PiB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZpbGUgcmVhZGluZyBlcnJvcjonLCBlcnJvcik7XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLnJlYWRBc0FycmF5QnVmZmVyKGZpbGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRGF0YUxvYWRlZCgpIHtcclxuICAgIHRoaXMuYWxsRGF0YUxvYWRlZCA9IHRydWU7XHJcbiAgfVxyXG59XHJcbiIsIjx0c2ktZm9ybSBjbGFzcz1cImZvcm0taG9yaXpvbnRhbFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIChvblN1Ym1pdCk9XCJzYXZlKClcIiBbaXNMb2FkaW5nXT1cImlzbG9hZGluZ1wiPlxyXG4gIDxUc2ktTW9kYWwtSGVhZGVyIFtpbnB1dFRpdGxlXT1cIid1cGxvYWRfZmljaGllcicgfCBsb2NhbGl6ZSBcIiAob25DbG9zZUNsaWNrKT1cImhpZGUoKVwiPlxyXG4gIDwvVHNpLU1vZGFsLUhlYWRlcj5cclxuICA8ZmllbGRzZXQgW2Rpc2FibGVkXT1cImlzRGVsZXRlTW9kZSgpIHx8IGlzQ29uc3VsdE1vZGUoKSBcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8IS0tIFRPRE8gQE1lZEFsaSAtLT5cclxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTJcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfVHlwZUZpY2hpZXInXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktU2VhcmNoLUNvbWJvIGNsYXNzPVwiY29sLThcIiBlbGVtZW50U291cmNlVXJsPVwie3twYXJhbUJhc2VFbmRwb2ludHMuZ2V0VHlwZUZpY2hpZXJNaW5pbWFsKCl9fVwiXHJcbiAgICAgICAgICAgICAgbGlzdFNvdXJjZVVybD1cInt7cGFyYW1CYXNlRW5kcG9pbnRzLmdldEFsbFR5cGVGaWNoaWVyTWluaW1hbCgpfX1cIiBbKGJpbmQpXT1cImZpY2hpZXIudHlwZUZpY2hpZXJcIlxyXG4gICAgICAgICAgICAgIGlkLWZpZWxkPVwidWlkXCIgbGFiZWwtZmllbGQ9XCJsaWJlbGxlXCIgW2lzRmlsdGVyZWRdPVwidHJ1ZVwiIChkYXRhc291cmNlLWxvYWRlZCk9XCJvbkRhdGFMb2FkZWQoKVwiPlxyXG4gICAgICAgICAgICA8L1RzaS1TZWFyY2gtQ29tYm8+XHJcbiAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMlwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9UYWJsZUxpZWUnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1Cb3ggY2xhc3M9XCJjb2wtOFwiIFtpbnB1dE5hbWVdPVwiJ3RhYmxlTGllZSdcIiBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIudGFibGVMaWVlXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlXCI+PC9Uc2ktVGV4dC1Cb3g+XHJcbiAgICAgICAgICAgIDwhLS0gPFRzaS1TZWFyY2gtQ29tYm9cclxuICAgICAgICAgICAgICBjbGFzcz1cImNvbC02XCJcclxuICAgICAgICAgICAgICBbKGJpbmQpXT1cImZpY2hpZXIudGFibGVMaWVlXCJcclxuICAgICAgICAgICAgICBpZC1maWVsZD1cImlkXCJcclxuICAgICAgICAgICAgICBsYWJlbC1maWVsZD1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAoZGF0YXNvdXJjZS1sb2FkZWQpPVwib25EYXRhTG9hZGVkKClcIj5cclxuICAgICAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPiAtLT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0yXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX05vbSdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUJveCBjbGFzcz1cImNvbC04XCIgW2lucHV0TmFtZV09XCInbm9tJ1wiIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci5ub21cIj48L1RzaS1UZXh0LUJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTJcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfRGF0ZUZpY2hpZXInXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktRGF0ZS1QaWNrZXIgY2xhc3M9XCJjb2wtOFwiIFtpbnB1dE5hbWVdPVwiJ2RhdGVGaWNoaWVyJ1wiXHJcbiAgICAgICAgICAgICAgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLmRhdGVGaWNoaWVyXCI+PC9Uc2ktRGF0ZS1QaWNrZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0xXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX09iamV0J1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQm94IGNsYXNzPVwiY29sLTEwXCIgW2lucHV0TmFtZV09XCInT2JqZXQnXCIgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLm9iamV0XCI+PC9Uc2ktVGV4dC1Cb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0xXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX0Rlc2NyaXB0aW9uJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQXJlYSBjbGFzcz1cImNvbC0xMFwiIFtpbnB1dE5hbWVdPVwiJ2Rlc2NyaXB0aW9uJ1wiIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci5kZXNjcmlwdGlvblwiIFtyb3dzXT1cIjVcIlxyXG4gICAgICAgICAgICAgIFtjb2xzXT1cIjVcIj48L1RzaS1UZXh0LUFyZWE+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuXHJcbiAgICAgICAgPFRzaS1MYWJlbCBmb3I9XCJpc0ZpbGVTdG9yYWdlXCIgY2xhc3M9XCJjb2wtMVwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9pc0ZpbGVTdG9yYWdlJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgPFRzaS1DaGVja0JveCBpZD1cImlzRmlsZVN0b3JhZ2VcIiBjbGFzcz1cImNvbC01XCIgW2lzQmluYXJ5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ2lzRmlsZVN0b3JhZ2UnXCIgW2Rpc2FibGVkXT1cInRydWVcIiBbaW5wdXRGaWVsZF09XCJmaWNoaWVyLmlzRmlsZVN0b3JhZ2VcIj5cclxuICAgICAgICAgIDwvVHNpLUNoZWNrQm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTExXCI+XHJcbiAgICAgICAgICAgICAgICA8VHNpLUZpbGUtTWFuYWdlciBcclxuICAgICAgICAgICAgICAgICAgW3Nob3dGaWxlVXBsb2FkXT1cInRydWVcIiBcclxuICAgICAgICAgICAgICAgICAgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLmNvbnRlbnVcIlxyXG4gICAgICAgICAgICAgICAgICBbKGZpbGVOYW1lKV09XCJmaWNoaWVyLm5vbUZpY2hpZXJDb21wbGV0XCIgXHJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJmaWxlRmljaGllclwiIFxyXG4gICAgICAgICAgICAgICAgICBpZD1cImZpbGVVcGxvYWRpbmdcIiBcclxuICAgICAgICAgICAgICAgICAgaW5wdXROYW1lPVwiY29udGVudVwiIFxyXG4gICAgICAgICAgICAgICAgICBhY2NlcHQ9XCJcIlxyXG4gICAgICAgICAgICAgICAgICBbbWF4RmlsZVNpemVdPVwiMTA0ODU3NjBcIiBcclxuICAgICAgICAgICAgICAgICAgW211bHRpcGxlXT1cImZhbHNlXCIgXHJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0VkaXRNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICBbc2hvd0Rvd25sb2FkQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtzaG93VXBsb2FkQnV0dG9uXT1cImZhbHNlXCIgXHJcbiAgICAgICAgICAgICAgICAgIFtleHBsb3JlT25Eb3dubG9hZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgKG9uU2VsZWN0RmlsZU1hbmFnZXIpPVwib25GaWxlU2VsZWN0ZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgID48L1RzaS1GaWxlLU1hbmFnZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICBcclxuICAgICAgPCEtLSAgPHAtZmlsZVVwbG9hZCAjZmlsZVVwbG9hZEZpY2hpZXIgbmFtZT1cImRlbW9bXVwiIChvbkJlZm9yZVVwbG9hZCk9XCJvbkltcG9ydEZpbGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAob25TZWxlY3QpPVwib25GaWxlU2VsZWN0ZWQoJGV2ZW50KVwiIChvbkNsZWFyKT1cIm9uQ2xlYXIoJGV2ZW50KVwiIChvblJlbW92ZSk9XCJvblJlbW92ZSgkZXZlbnQpXCIgW211bHRpcGxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICBbbWF4RmlsZVNpemVdPVwiMTAwMDAwMFwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVTaXplTWVzc2FnZVN1bW1hcnldPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfc2l6ZV9tZXNzYWdlX3N1bW1hcnknIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlU2l6ZU1lc3NhZ2VEZXRhaWxdPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfc2l6ZV9tZXNzYWdlX2RldGFpbCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVUeXBlTWVzc2FnZVN1bW1hcnldPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfdHlwZV9tZXNzYWdlX3N1bW1hcnknIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlTGltaXRNZXNzYWdlRGV0YWlsXT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX2xpbWl0X21lc3NhZ2VfZGV0YWlsJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZUxpbWl0TWVzc2FnZVN1bW1hcnldPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfbGltaXRfbWVzc2FnZV9zdW1tYXJ5JyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZVR5cGVNZXNzYWdlRGV0YWlsXT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX3R5cGVfbWVzc2FnZV9kZXRhaWwnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2Nob29zZUljb25dPVwiJ3BpIHBpLXBhcGVyY2xpcCdcIiBjYW5jZWxTdHlsZUNsYXNzPVwicC1idXR0b24tc2Vjb25kYXJ5XCIgdXBsb2FkU3R5bGVDbGFzcz1cInAtYnV0dG9uLWhlbHBcIlxyXG4gICAgICAgICAgcmVtb3ZlU3R5bGVDbGFzcz1cInAtYnV0dG9uLWRhbmdlclwiIFtjaG9vc2VMYWJlbF09XCInc2hhcmVkX3JlcG9ydGluZ19jaG9vc2VfcmVwb3J0X2ZpbGUnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW3VwbG9hZExhYmVsXT1cIidzaGFyZWRfcmVwb3J0aW5nX2ltcG9ydF9yZXBvcnQnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2NhbmNlbExhYmVsXT1cIidzaGFyZWRfcmVwb3J0aW5nX2NhbmNlbF9jaG9vc2VfcmVwb3J0X2ZpbGUnIHwgbG9jYWxpemVcIiBbc2hvd1VwbG9hZEJ1dHRvbl09XCJmYWxzZVwiPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwidG9VcGxvYWRGaWxlRGF0YVwiIHBUZW1wbGF0ZT1cImZpbGV1cGxvYWQtY29udGVudFwiPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L3AtZmlsZVVwbG9hZD4gICAtLT5cclxuXHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9maWVsZHNldD5cclxuICA8VHNpLU1vZGFsLUZvb3RlciBbY2FuY2VsRGlzYWJsZWRdPVwic2F2aW5nXCIgW3NhdmVEaXNhYmxlZF09XCJpc1N1Ym1pdERpc2FibGVkKClcIlxyXG4gICAgKG9uQ2FuY2VsQ2xpY2spPVwiaGlkZSgpXCI+PC9Uc2ktTW9kYWwtRm9vdGVyPlxyXG48L3RzaS1mb3JtPiJdfQ==
@@ -0,0 +1,54 @@
1
+ import { Component } from '@angular/core';
2
+ import { TsiUploadFicheComponent } from '../tsi-upload-fiche/tsi-upload-fiche.component';
3
+ import { TsiListBaseComponent } from '../../tsi-base/components/tsi-list-base/tsi-list-base.component';
4
+ import { DisplayTypes, ModalSizeEnum } from '../../enums';
5
+ import { appProviders } from '../../consts/app-providers';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services/fichier/fichier-upload.service";
8
+ import * as i2 from "../tsi-generic-crud/tsi-generic-crud.component";
9
+ export class TsiUploadGridComponent extends TsiListBaseComponent {
10
+ constructor(_fichierService) {
11
+ super();
12
+ this._fichierService = _fichierService;
13
+ this.columns = [
14
+ {
15
+ header: 'parambase_param_fichier_typeFichier',
16
+ field: 'libelleFichier',
17
+ },
18
+ {
19
+ header: 'parambase_param_fichier_Nom',
20
+ field: 'nom',
21
+ },
22
+ {
23
+ header: 'parambase_param_fichier_Objet',
24
+ field: 'objet',
25
+ },
26
+ {
27
+ header: 'parambase_param_fichier_Description',
28
+ field: 'description',
29
+ },
30
+ {
31
+ header: 'parambase_param_fichier_isFileStorage',
32
+ field: 'isFileStorage',
33
+ type: DisplayTypes.CHECKBOX_DISPLAY
34
+ },
35
+ ];
36
+ // TODO @MedAli to be fixed
37
+ // this.businessClass = BusinessClassNames.Fichier;
38
+ this.businessClass = "Fichier";
39
+ }
40
+ ngOnInit() {
41
+ super.ngOnInit();
42
+ this.setModalSize(ModalSizeEnum.ExtraLarge);
43
+ this.comp = TsiUploadFicheComponent;
44
+ this.titleComponent = 'parambase_param_fichier_fichiers';
45
+ this.table = "Fichier";
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadGridComponent, deps: [{ token: i1.FichierUploadService }], target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiUploadGridComponent, selector: "app-tsi-upload-grid", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<Tsi-Generic-Crud\r\n [cudComponent]=\"comp\"\r\n [header]=\"titleComponent\"\r\n [columns]=\"columns\"\r\n [crudService]=\"_fichierService\"\r\n [modalSize]=\"modalSize\"\r\n [showUploadButton]=\"false\"\r\n [showDownloadButton]=\"true\"\r\n >\r\n</Tsi-Generic-Crud>\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.TsiGenericCrudComponent, selector: "Tsi-Generic-Crud", inputs: ["entityInfo", "modalData", "columns", "gridConfiguration", "cudComponent", "crudService", "header", "modalSize", "descriminatorValue", "presentationSettings", "preventAddEvent", "formEndpoint", "formName", "isSearchButtonDisabled", "showHeaderFilters", "showEditButton", "showDeleteButton", "showAddButton", "showConsultButton", "showUploadButton", "showNoteButton", "showDownloadButton", "showInfoButton", "showSearchField", "searchFields", "showCalenderView", "calenderSchema", "showCardView", "showKanbanView", "showDuplicateButton", "selectKeyOnly", "selectionMode", "selectedItems", "key", "id", "businessClass", "searchOnInit", "showGlobalSearch", "showExportButton", "showReporting"], outputs: ["selectedItemsChange", "searchFieldsValueChanged", "buttonColumnClicked"] }] }); }
49
+ }
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadGridComponent, decorators: [{
51
+ type: Component,
52
+ args: [{ selector: 'app-tsi-upload-grid', providers: [...appProviders], template: "<Tsi-Generic-Crud\r\n [cudComponent]=\"comp\"\r\n [header]=\"titleComponent\"\r\n [columns]=\"columns\"\r\n [crudService]=\"_fichierService\"\r\n [modalSize]=\"modalSize\"\r\n [showUploadButton]=\"false\"\r\n [showDownloadButton]=\"true\"\r\n >\r\n</Tsi-Generic-Crud>\r\n" }]
53
+ }], ctorParameters: () => [{ type: i1.FichierUploadService }] });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXVwbG9hZC1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdXBsb2FkLWdyaWQvdHNpLXVwbG9hZC1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdXBsb2FkLWdyaWQvdHNpLXVwbG9hZC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFFdkcsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBUTFELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxvQkFBb0I7SUE0QjlELFlBQ2lCLGVBQXFDO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBRE8sb0JBQWUsR0FBZixlQUFlLENBQXNCO1FBekI3QyxZQUFPLEdBQXNCO1lBQ3BDO2dCQUNFLE1BQU0sRUFBRSxxQ0FBcUM7Z0JBQzdDLEtBQUssRUFBRSxnQkFBZ0I7YUFDeEI7WUFDRDtnQkFDRSxNQUFNLEVBQUUsNkJBQTZCO2dCQUNyQyxLQUFLLEVBQUUsS0FBSzthQUNiO1lBQ0Q7Z0JBQ0UsTUFBTSxFQUFFLCtCQUErQjtnQkFDdkMsS0FBSyxFQUFFLE9BQU87YUFDZjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxxQ0FBcUM7Z0JBQzdDLEtBQUssRUFBRSxhQUFhO2FBQ3JCO1lBQ0Q7Z0JBQ0UsTUFBTSxFQUFFLHVDQUF1QztnQkFDL0MsS0FBSyxFQUFFLGVBQWU7Z0JBQ3RCLElBQUksRUFBRSxZQUFZLENBQUMsZ0JBQWdCO2FBQ3BDO1NBQ0YsQ0FBQztRQUtBLDJCQUEyQjtRQUMzQixtREFBbUQ7UUFDbkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUM7SUFDakMsQ0FBQztJQUVRLFFBQVE7UUFDZixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLElBQUksR0FBRyx1QkFBdUIsQ0FBQztRQUNwQyxJQUFJLENBQUMsY0FBYyxHQUFHLGtDQUFrQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO0lBQ3pCLENBQUM7K0dBMUNVLHNCQUFzQjttR0FBdEIsc0JBQXNCLDhDQUZ0QixDQUFDLEdBQUcsWUFBWSxDQUFDLGlEQ1o5Qix5UkFVQTs7NEZESWEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQixDQUFDLEdBQUcsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRzaVVwbG9hZEZpY2hlQ29tcG9uZW50IH0gZnJvbSAnLi4vdHNpLXVwbG9hZC1maWNoZS90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRzaUxpc3RCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vdHNpLWJhc2UvY29tcG9uZW50cy90c2ktbGlzdC1iYXNlL3RzaS1saXN0LWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JpZENvbHVtbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZ3JpZC9ncmlkLWNvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBEaXNwbGF5VHlwZXMsIE1vZGFsU2l6ZUVudW0gfSBmcm9tICcuLi8uLi9lbnVtcyc7XHJcbmltcG9ydCB7IEZpY2hpZXJVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmljaGllci9maWNoaWVyLXVwbG9hZC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgYXBwUHJvdmlkZXJzIH0gZnJvbSAnLi4vLi4vY29uc3RzL2FwcC1wcm92aWRlcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtdHNpLXVwbG9hZC1ncmlkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLXVwbG9hZC1ncmlkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90c2ktdXBsb2FkLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFsuLi5hcHBQcm92aWRlcnNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUc2lVcGxvYWRHcmlkQ29tcG9uZW50IGV4dGVuZHMgVHNpTGlzdEJhc2VDb21wb25lbnQge1xyXG4gIFxyXG4gIHRhYmxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgXHJcbiAgb3ZlcnJpZGUgY29sdW1uczogQXJyYXk8R3JpZENvbHVtbj4gPSBbXHJcbiAgICB7XHJcbiAgICAgIGhlYWRlcjogJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX3R5cGVGaWNoaWVyJyxcclxuICAgICAgZmllbGQ6ICdsaWJlbGxlRmljaGllcicsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBoZWFkZXI6ICdwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9Ob20nLFxyXG4gICAgICBmaWVsZDogJ25vbScsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBoZWFkZXI6ICdwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9PYmpldCcsXHJcbiAgICAgIGZpZWxkOiAnb2JqZXQnLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgaGVhZGVyOiAncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfRGVzY3JpcHRpb24nLFxyXG4gICAgICBmaWVsZDogJ2Rlc2NyaXB0aW9uJyxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGhlYWRlcjogJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX2lzRmlsZVN0b3JhZ2UnLFxyXG4gICAgICBmaWVsZDogJ2lzRmlsZVN0b3JhZ2UnLFxyXG4gICAgICB0eXBlOiBEaXNwbGF5VHlwZXMuQ0hFQ0tCT1hfRElTUExBWVxyXG4gICAgfSxcclxuICBdO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgICAgICBwdWJsaWMgX2ZpY2hpZXJTZXJ2aWNlOiBGaWNoaWVyVXBsb2FkU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIC8vIFRPRE8gQE1lZEFsaSB0byBiZSBmaXhlZFxyXG4gICAgLy8gdGhpcy5idXNpbmVzc0NsYXNzID0gQnVzaW5lc3NDbGFzc05hbWVzLkZpY2hpZXI7XHJcbiAgICB0aGlzLmJ1c2luZXNzQ2xhc3MgPSBcIkZpY2hpZXJcIjtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuc2V0TW9kYWxTaXplKE1vZGFsU2l6ZUVudW0uRXh0cmFMYXJnZSk7XHJcbiAgICB0aGlzLmNvbXAgPSBUc2lVcGxvYWRGaWNoZUNvbXBvbmVudDtcclxuICAgIHRoaXMudGl0bGVDb21wb25lbnQgPSAncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfZmljaGllcnMnO1xyXG4gICAgdGhpcy50YWJsZSA9IFwiRmljaGllclwiO1xyXG4gIH1cclxufVxyXG4iLCI8VHNpLUdlbmVyaWMtQ3J1ZFxyXG4gIFtjdWRDb21wb25lbnRdPVwiY29tcFwiXHJcbiAgW2hlYWRlcl09XCJ0aXRsZUNvbXBvbmVudFwiXHJcbiAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgW2NydWRTZXJ2aWNlXT1cIl9maWNoaWVyU2VydmljZVwiXHJcbiAgW21vZGFsU2l6ZV09XCJtb2RhbFNpemVcIlxyXG4gIFtzaG93VXBsb2FkQnV0dG9uXT1cImZhbHNlXCJcclxuICBbc2hvd0Rvd25sb2FkQnV0dG9uXT1cInRydWVcIlxyXG4gID5cclxuPC9Uc2ktR2VuZXJpYy1DcnVkPlxyXG4iXX0=