@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,15 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "primeng/progressspinner";
4
+ export class SpinnerComponent {
5
+ constructor() { }
6
+ ngOnInit() {
7
+ }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SpinnerComponent, selector: "app-spinner", ngImport: i0, template: "<div class=\"spinner-container flex align-items-center justify-content-center\">\r\n <div class=\"d-flex justify-content-center\">\r\n <p-progressSpinner></p-progressSpinner>\r\n </div>\r\n</div>\r\n", styles: [".spinner-container{position:fixed;left:50%;top:50%;background-color:#ffffff80;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:100%;height:100%;z-index:9999;pointer-events:none}\n"], dependencies: [{ kind: "component", type: i1.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SpinnerComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'app-spinner', template: "<div class=\"spinner-container flex align-items-center justify-content-center\">\r\n <div class=\"d-flex justify-content-center\">\r\n <p-progressSpinner></p-progressSpinner>\r\n </div>\r\n</div>\r\n", styles: [".spinner-container{position:fixed;left:50%;top:50%;background-color:#ffffff80;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:100%;height:100%;z-index:9999;pointer-events:none}\n"] }]
14
+ }], ctorParameters: () => [] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy9zcGlubmVyL3NwaW5uZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7O0FBT2xELE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7K0dBTFUsZ0JBQWdCO21HQUFoQixnQkFBZ0IsbURDUDdCLCtNQUtBOzs0RkRFYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1zcGlubmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3Bpbm5lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3Bpbm5lci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcGlubmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic3Bpbm5lci1jb250YWluZXIgIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgIDxwLXByb2dyZXNzU3Bpbm5lcj48L3AtcHJvZ3Jlc3NTcGlubmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,21 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "primeng/overlaypanel";
5
+ import * as i3 from "../../pipes/localize.pipe";
6
+ export class TsiBubbleInfoComponent {
7
+ constructor() {
8
+ this.infoText = '';
9
+ }
10
+ ngOnInit() {
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiBubbleInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiBubbleInfoComponent, selector: "Tsi-Bubble-Info", inputs: { infoText: "infoText" }, ngImport: i0, template: "<div *ngIf=\"infoText != null && infoText!= ''\">\r\n <i class=\"pi pi-info-circle ml-2 mr-2\" (mouseenter)=\"op.toggle($event)\" (mouseleave)=\"op.hide()\"></i>\r\n\r\n <p-overlayPanel #op>\r\n <div class=\"flex flex-column gap-3 w-25rem\">\r\n <div>\r\n <span class=\"font-medium text-600 block mb-2\"\r\n [innerHTML]=\"infoText | localize\">\r\n </span>\r\n </div>\r\n </div>\r\n </p-overlayPanel>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "pipe", type: i3.LocalizePipe, name: "localize" }] }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiBubbleInfoComponent, decorators: [{
16
+ type: Component,
17
+ args: [{ selector: 'Tsi-Bubble-Info', template: "<div *ngIf=\"infoText != null && infoText!= ''\">\r\n <i class=\"pi pi-info-circle ml-2 mr-2\" (mouseenter)=\"op.toggle($event)\" (mouseleave)=\"op.hide()\"></i>\r\n\r\n <p-overlayPanel #op>\r\n <div class=\"flex flex-column gap-3 w-25rem\">\r\n <div>\r\n <span class=\"font-medium text-600 block mb-2\"\r\n [innerHTML]=\"infoText | localize\">\r\n </span>\r\n </div>\r\n </div>\r\n </p-overlayPanel>\r\n</div>" }]
18
+ }], ctorParameters: () => [], propDecorators: { infoText: [{
19
+ type: Input
20
+ }] } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWJ1YmJsZS1pbmZvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktYnViYmxlLWluZm8vdHNpLWJ1YmJsZS1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktYnViYmxlLWluZm8vdHNpLWJ1YmJsZS1pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7OztBQU96RCxNQUFNLE9BQU8sc0JBQXNCO0lBSWpDO1FBRlMsYUFBUSxHQUFxQixFQUFFLENBQUM7SUFFekIsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzsrR0FQVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix5RkNQbkMsMGZBWU07OzRGRExPLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxpQkFBaUI7d0RBTWxCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLUJ1YmJsZS1JbmZvJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLWJ1YmJsZS1pbmZvLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90c2ktYnViYmxlLWluZm8uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHNpQnViYmxlSW5mb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGluZm9UZXh0OiBzdHJpbmd8IHN0cmluZ1tdID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxufSIsIjxkaXYgKm5nSWY9XCJpbmZvVGV4dCAhPSBudWxsICYmIGluZm9UZXh0IT0gJydcIj5cclxuICAgIDxpIGNsYXNzPVwicGkgcGktaW5mby1jaXJjbGUgbWwtMiBtci0yXCIgKG1vdXNlZW50ZXIpPVwib3AudG9nZ2xlKCRldmVudClcIiAobW91c2VsZWF2ZSk9XCJvcC5oaWRlKClcIj48L2k+XHJcblxyXG4gICAgPHAtb3ZlcmxheVBhbmVsICNvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBnYXAtMyB3LTI1cmVtXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtbWVkaXVtIHRleHQtNjAwIGJsb2NrIG1iLTJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiaW5mb1RleHQgfCBsb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvcC1vdmVybGF5UGFuZWw+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,46 @@
1
+ import { Component, EventEmitter, Output, ViewChild } from '@angular/core';
2
+ import { Modes } from '../../../enums/component-use-modes-enum';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../../output-components/tsi-label/tsi-label.component";
6
+ export class ContextMenuComponent {
7
+ constructor() {
8
+ this.actionSelected = new EventEmitter();
9
+ this.isVisible = false;
10
+ this.menuPosition = { x: '0px', y: '0px' };
11
+ this.modes = Modes;
12
+ }
13
+ openMenu(x, y) {
14
+ this.menuPosition = { x: `${x}px`, y: `${y}px` };
15
+ this.isVisible = true;
16
+ //Add event listener to detect clicks outside the menu
17
+ document.addEventListener('click', this.onDocumentClick.bind(this));
18
+ }
19
+ closeMenu() {
20
+ this.isVisible = false;
21
+ //Remove event listener when menu is closed
22
+ document.removeEventListener('click', this.onDocumentClick.bind(this));
23
+ }
24
+ onMenuClick(action) {
25
+ this.closeMenu();
26
+ this.actionSelected.emit({ selectedAction: action });
27
+ }
28
+ //To detect clicks outside the menu
29
+ onDocumentClick(event) {
30
+ if (!this.menu?.nativeElement.contains(event.target)) {
31
+ this.closeMenu();
32
+ }
33
+ }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ContextMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ContextMenuComponent, selector: "app-context-menu", outputs: { actionSelected: "actionSelected" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #menu class=\"context-menu\" (click)=\"closeMenu()\" [class.visible]=\"isVisible\"\r\n [ngStyle]=\"{ top: menuPosition.y, left: menuPosition.x }\">\r\n <ul>\r\n <li (click)=\"onMenuClick(modes.consult)\" class=\"flx\">\r\n <Tsi-Label labelValue=\"cmpt_parametres_exercices_consulter\"></Tsi-Label>\r\n </li>\r\n <li (click)=\"onMenuClick(modes.edit)\" class=\"flx\">\r\n <Tsi-Label labelValue=\"parambase_autres_tier_btnmodifier\"></Tsi-Label>\r\n </li>\r\n <li (click)=\"onMenuClick(modes.delete)\" class=\"flx delete\">\r\n <Tsi-Label labelValue=\"parambase_autres_tier_btnsupprimer\"></Tsi-Label>\r\n </li>\r\n </ul>\r\n</div>", styles: [".context-menu{position:fixed;display:none;background-color:#fff;border:1px solid #ccc;box-shadow:3px 3px 5px #0003;z-index:1000;width:120px}.context-menu.visible{display:block}.context-menu ul{list-style-type:none;padding:0;margin:0}.context-menu li{padding:8px 12px;cursor:pointer}.context-menu li:hover{background-color:#eee}.flx{display:flex;justify-content:center}.delete{color:#d00}li{font-weight:500}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }] }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ContextMenuComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'app-context-menu', template: "<div #menu class=\"context-menu\" (click)=\"closeMenu()\" [class.visible]=\"isVisible\"\r\n [ngStyle]=\"{ top: menuPosition.y, left: menuPosition.x }\">\r\n <ul>\r\n <li (click)=\"onMenuClick(modes.consult)\" class=\"flx\">\r\n <Tsi-Label labelValue=\"cmpt_parametres_exercices_consulter\"></Tsi-Label>\r\n </li>\r\n <li (click)=\"onMenuClick(modes.edit)\" class=\"flx\">\r\n <Tsi-Label labelValue=\"parambase_autres_tier_btnmodifier\"></Tsi-Label>\r\n </li>\r\n <li (click)=\"onMenuClick(modes.delete)\" class=\"flx delete\">\r\n <Tsi-Label labelValue=\"parambase_autres_tier_btnsupprimer\"></Tsi-Label>\r\n </li>\r\n </ul>\r\n</div>", styles: [".context-menu{position:fixed;display:none;background-color:#fff;border:1px solid #ccc;box-shadow:3px 3px 5px #0003;z-index:1000;width:120px}.context-menu.visible{display:block}.context-menu ul{list-style-type:none;padding:0;margin:0}.context-menu li{padding:8px 12px;cursor:pointer}.context-menu li:hover{background-color:#eee}.flx{display:flex;justify-content:center}.delete{color:#d00}li{font-weight:500}\n"] }]
40
+ }], propDecorators: { actionSelected: [{
41
+ type: Output
42
+ }], menu: [{
43
+ type: ViewChild,
44
+ args: ['menu']
45
+ }] } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktY2FsZW5kZXIvY29udGV4dC1tZW51L2NvbnRleHQtbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvdHNpLWNhbGVuZGVyL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7QUFPaEUsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU9ZLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVuRCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUN0QyxVQUFLLEdBQUcsS0FBSyxDQUFDO0tBMEJmO0lBeEJDLFFBQVEsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixzREFBc0Q7UUFDdEQsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsMkNBQTJDO1FBQzNDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUMsY0FBYyxFQUFHLE1BQU0sRUFBQyxDQUFDLENBQUE7SUFDckQsQ0FBQztJQUVELG1DQUFtQztJQUMzQixlQUFlLENBQUMsS0FBaUI7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBYyxDQUFDLEVBQUUsQ0FBQztZQUM3RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7K0dBL0JVLG9CQUFvQjttR0FBcEIsb0JBQW9CLHFNQ1JqQyxndEJBYU07OzRGRExPLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0I7OEJBTWxCLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ1ksSUFBSTtzQkFBdEIsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1vZGVzIH0gZnJvbSAnLi4vLi4vLi4vZW51bXMvY29tcG9uZW50LXVzZS1tb2Rlcy1lbnVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWNvbnRleHQtbWVudScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRleHQtbWVudS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29udGV4dC1tZW51LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvbnRleHRNZW51Q29tcG9uZW50IHtcclxuICBcclxuICBAT3V0cHV0KCkgYWN0aW9uU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAVmlld0NoaWxkKCdtZW51JykgbWVudTogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcclxuICBpc1Zpc2libGUgPSBmYWxzZTtcclxuICBtZW51UG9zaXRpb24gPSB7IHg6ICcwcHgnLCB5OiAnMHB4JyB9O1xyXG4gIG1vZGVzID0gTW9kZXM7XHJcblxyXG4gIG9wZW5NZW51KHg6IG51bWJlciwgeTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLm1lbnVQb3NpdGlvbiA9IHsgeDogYCR7eH1weGAsIHk6IGAke3l9cHhgIH07XHJcbiAgICB0aGlzLmlzVmlzaWJsZSA9IHRydWU7XHJcbiAgICAvL0FkZCBldmVudCBsaXN0ZW5lciB0byBkZXRlY3QgY2xpY2tzIG91dHNpZGUgdGhlIG1lbnVcclxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5vbkRvY3VtZW50Q2xpY2suYmluZCh0aGlzKSk7XHJcbiAgfVxyXG5cclxuICBjbG9zZU1lbnUoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgLy9SZW1vdmUgZXZlbnQgbGlzdGVuZXIgd2hlbiBtZW51IGlzIGNsb3NlZFxyXG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm9uRG9jdW1lbnRDbGljay5iaW5kKHRoaXMpKTtcclxuICB9XHJcblxyXG4gIG9uTWVudUNsaWNrKGFjdGlvbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlTWVudSgpO1xyXG4gICAgdGhpcy5hY3Rpb25TZWxlY3RlZC5lbWl0KHtzZWxlY3RlZEFjdGlvbiA6IGFjdGlvbn0pXHJcbiAgfVxyXG5cclxuICAvL1RvIGRldGVjdCBjbGlja3Mgb3V0c2lkZSB0aGUgbWVudVxyXG4gIHByaXZhdGUgb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMubWVudT8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkpIHtcclxuICAgICAgdGhpcy5jbG9zZU1lbnUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiAjbWVudSBjbGFzcz1cImNvbnRleHQtbWVudVwiIChjbGljayk9XCJjbG9zZU1lbnUoKVwiIFtjbGFzcy52aXNpYmxlXT1cImlzVmlzaWJsZVwiXHJcbiAgICBbbmdTdHlsZV09XCJ7IHRvcDogbWVudVBvc2l0aW9uLnksIGxlZnQ6IG1lbnVQb3NpdGlvbi54IH1cIj5cclxuICAgIDx1bD5cclxuICAgICAgICA8bGkgKGNsaWNrKT1cIm9uTWVudUNsaWNrKG1vZGVzLmNvbnN1bHQpXCIgY2xhc3M9XCJmbHhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBsYWJlbFZhbHVlPVwiY21wdF9wYXJhbWV0cmVzX2V4ZXJjaWNlc19jb25zdWx0ZXJcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIDxsaSAoY2xpY2spPVwib25NZW51Q2xpY2sobW9kZXMuZWRpdClcIiBjbGFzcz1cImZseFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGxhYmVsVmFsdWU9XCJwYXJhbWJhc2VfYXV0cmVzX3RpZXJfYnRubW9kaWZpZXJcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIDxsaSAoY2xpY2spPVwib25NZW51Q2xpY2sobW9kZXMuZGVsZXRlKVwiIGNsYXNzPVwiZmx4IGRlbGV0ZVwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGxhYmVsVmFsdWU9XCJwYXJhbWJhc2VfYXV0cmVzX3RpZXJfYnRuc3VwcHJpbWVyXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,297 @@
1
+ import { Component, EventEmitter, Input, Output, signal, ViewChild } from '@angular/core';
2
+ import interactionPlugin from '@fullcalendar/interaction';
3
+ import dayGridPlugin from '@fullcalendar/daygrid';
4
+ import timeGridPlugin from '@fullcalendar/timegrid';
5
+ import listPlugin from '@fullcalendar/list';
6
+ import { ContextMenuComponent } from './context-menu/context-menu.component';
7
+ import { Component_Modes, Modes } from '../../enums';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../services/notification/tsi-notification.service";
10
+ import * as i2 from "../../pipes/localize.pipe";
11
+ import * as i3 from "@angular/common";
12
+ import * as i4 from "primeng/calendar";
13
+ import * as i5 from "primeng/dropdown";
14
+ import * as i6 from "@fullcalendar/angular";
15
+ import * as i7 from "./context-menu/context-menu.component";
16
+ export class TsiCalenderComponent {
17
+ set eventsData(value) {
18
+ this.mapDataToEvents(value);
19
+ }
20
+ constructor(_changeDetector, _viewContainerRef, _messageService, _localizePipe, renderer) {
21
+ this._changeDetector = _changeDetector;
22
+ this._viewContainerRef = _viewContainerRef;
23
+ this._messageService = _messageService;
24
+ this._localizePipe = _localizePipe;
25
+ this.renderer = renderer;
26
+ this.eventClick = new EventEmitter();
27
+ this.dateRangeChange = new EventEmitter();
28
+ this.displayModeOptions = [];
29
+ this.calendarOptions = signal({
30
+ plugins: [
31
+ interactionPlugin,
32
+ dayGridPlugin,
33
+ timeGridPlugin,
34
+ listPlugin,
35
+ ],
36
+ headerToolbar: {
37
+ left: 'prevYear,prev,datePickerNavigator,searchFilter,next,nextYear,today',
38
+ center: 'title',
39
+ right: 'displayModeOptions',
40
+ },
41
+ buttonText: {
42
+ today: "Aujourd'hui",
43
+ },
44
+ customButtons: {
45
+ datePickerNavigator: {
46
+ icon: "Calendar",
47
+ hint: "",
48
+ click: this.handleDatePickerNavigatorClick.bind(this)
49
+ },
50
+ searchFilter: {
51
+ icon: "SearchFilter",
52
+ hint: "",
53
+ click: this.handleSearchFilter.bind(this)
54
+ },
55
+ },
56
+ initialView: 'dayGridMonth',
57
+ locale: "fr",
58
+ events: this.eventsData,
59
+ weekends: true,
60
+ selectable: true,
61
+ editable: true,
62
+ eventResizableFromStart: true,
63
+ eventStartEditable: true,
64
+ eventDurationEditable: true,
65
+ selectMirror: true,
66
+ dayMaxEvents: true,
67
+ select: this.handleDateSelect.bind(this),
68
+ eventClick: this.handleEventClick.bind(this),
69
+ eventsSet: this.handleEvents.bind(this),
70
+ eventDrop: this.handleEventDrop.bind(this),
71
+ eventResize: this.handleEventResize.bind(this),
72
+ eventDidMount: this.handleEventDidMount.bind(this),
73
+ datesSet: this.getCurrentDates.bind(this),
74
+ eventContent: (arg) => {
75
+ const nombreAttachement = arg.event.extendedProps?.['nombreAttachement'] || 0;
76
+ const attachmentHtml = nombreAttachement > 0
77
+ ? `<span class="attachment-info"><i class="pi pi-paperclip"></i> [${nombreAttachement}]</span>`
78
+ : '';
79
+ return {
80
+ html: `
81
+ <div>
82
+ <span class="event-title">${arg.event.title}</span>
83
+ ${attachmentHtml}
84
+ </div>
85
+ `,
86
+ };
87
+ },
88
+ });
89
+ this.currentEvents = signal([]);
90
+ this.displayModeOptions = [
91
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_dayGridMonth'), value: 'dayGridMonth' },
92
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_dayGridWeek'), value: 'dayGridWeek' },
93
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_dayGridDay'), value: 'dayGridDay' },
94
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_timeGridDay'), value: 'timeGridDay' },
95
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_timeGridWeek'), value: 'timeGridWeek' },
96
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_listYear'), value: 'listYear' },
97
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_listMonth'), value: 'listMonth' },
98
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_listWeek'), value: 'listWeek' },
99
+ { label: this._localizePipe.transform('shared_tsi_component_grid_calender_listDay'), value: 'listDay' },
100
+ //premium
101
+ // { label: 'vue chronologique année', value: 'timelineYear' },
102
+ // { label: 'vue chronologique mois', value: 'timelineMonth' },
103
+ // { label: 'vue chronologique semaine', value: 'timelineWeek' },
104
+ // { label: 'vue chronologique jour', value: 'timelineDay' },
105
+ ];
106
+ }
107
+ ngOnInit() { }
108
+ ngAfterViewInit() {
109
+ const iconForCalendar = document.querySelector('.fc-icon-Calendar');
110
+ if (iconForCalendar) {
111
+ iconForCalendar.classList.value = "pi pi-calendar";
112
+ }
113
+ const iconForSearchFilter = document.querySelector('.fc-icon-SearchFilter');
114
+ if (iconForSearchFilter) {
115
+ iconForSearchFilter.classList.value = "pi pi-search";
116
+ }
117
+ const dropdownElement = document.querySelector('.fc-displayModeOptions-button');
118
+ if (dropdownElement) {
119
+ dropdownElement.innerHTML = ''; // Clear any default content
120
+ // Create an embedded view from the template
121
+ const embeddedView = this.dropdownTemplate.createEmbeddedView(null);
122
+ this._viewContainerRef.insert(embeddedView);
123
+ // Append the dropdown to the toolbar
124
+ embeddedView.rootNodes.forEach(node => {
125
+ this.renderer.appendChild(dropdownElement, node);
126
+ });
127
+ dropdownElement.classList.value = 'displayModeOptions';
128
+ }
129
+ }
130
+ mapDataToEvents(value) {
131
+ this.calendarOptions.update((oldCalenderOpts) => {
132
+ if (!this.schema) {
133
+ throw new Error("schema should be defined.");
134
+ }
135
+ let evts = value.map(item => {
136
+ let event = {
137
+ id: item[this.schema.id],
138
+ start: item[this.schema.start],
139
+ end: item[this.schema.end],
140
+ title: item[this.schema.title],
141
+ color: item.color,
142
+ extendedProps: {
143
+ nombreAttachement: item.nombreAttachement,
144
+ }
145
+ };
146
+ return event;
147
+ });
148
+ oldCalenderOpts.events = evts;
149
+ return {
150
+ ...oldCalenderOpts,
151
+ events: evts
152
+ };
153
+ });
154
+ }
155
+ handleDateSelect(selectInfo) {
156
+ this.eventClick.emit({
157
+ mode: Component_Modes.CREATE,
158
+ dateDebut: selectInfo.start.toLocaleDateString('fr-FR')
159
+ });
160
+ }
161
+ handleEventClick(clickInfo) {
162
+ this.eventClick.emit({
163
+ mode: Component_Modes.EDIT,
164
+ id: clickInfo.event.id
165
+ });
166
+ }
167
+ handleEvents(events) {
168
+ this.currentEvents.set(events);
169
+ this._changeDetector.detectChanges(); // workaround for pressionChangedAfterItHasBeenCheckedError
170
+ }
171
+ handleEventResize(info) {
172
+ this.updateEvent(info);
173
+ }
174
+ handleEventDrop(info) {
175
+ this.updateEvent(info);
176
+ }
177
+ updateEvent(info) {
178
+ const newStart = info.event.start;
179
+ const newEnd = info.event.end;
180
+ const id = info.event.id;
181
+ if (this.crudService) {
182
+ this.crudService.getById(id).subscribe({
183
+ next: (res) => {
184
+ if (!this.schema) {
185
+ throw new Error("schema should be defined.");
186
+ }
187
+ let item = res;
188
+ item[this.schema.start] = newStart;
189
+ item[this.schema.end] = newEnd ? newEnd : newStart; // if it's on the same day
190
+ this.crudService?.update(item, id).subscribe({
191
+ next: () => this._messageService.success("shared_reporting_success_updated"),
192
+ error: (err) => console.log(err)
193
+ });
194
+ },
195
+ error: (err) => console.log("Can not update item :", err)
196
+ });
197
+ }
198
+ }
199
+ handleDatePickerNavigatorClick(event) {
200
+ if (this.datePicker) {
201
+ let calendarInput = this.datePicker.inputfieldViewChild?.nativeElement;
202
+ calendarInput.focus();
203
+ }
204
+ }
205
+ handleSearchFilter(event) {
206
+ this.eventClick.emit({
207
+ mode: "SEARCH"
208
+ });
209
+ }
210
+ navigateToDate(event) {
211
+ const fullCalendar = this.calendar?.getApi();
212
+ fullCalendar?.gotoDate(event);
213
+ if (this.datePicker) {
214
+ let calendarInput = this.datePicker.inputfieldViewChild?.nativeElement;
215
+ calendarInput.blur();
216
+ }
217
+ }
218
+ handleEventDidMount(arg) {
219
+ //Attach right-click event to each event cell
220
+ arg.el.addEventListener('contextmenu', (event) => {
221
+ //Prevent the default context menu from appearing
222
+ event.preventDefault();
223
+ this.currentContextMenuEvent = arg.event;
224
+ this.contextMenu?.openMenu(event.clientX, event.clientY);
225
+ });
226
+ }
227
+ handleSelectedAction(action) {
228
+ switch (action.selectedAction) {
229
+ case Modes.delete:
230
+ if (this.currentContextMenuEvent) {
231
+ this.crudService?.delete(this.currentContextMenuEvent.id).subscribe({
232
+ next: (res) => {
233
+ const fullCalendar = this.calendar?.getApi();
234
+ fullCalendar?.getEventById(this.currentContextMenuEvent.id)?.remove();
235
+ this._messageService.success("shared_tsi_component_grid_calender_delete_item_success");
236
+ },
237
+ error: (err) => this._messageService.error(err.error.errors[547] ? "shared_tsi_component_grid_calender_delete_item_failed" : err.error.detail),
238
+ });
239
+ }
240
+ break;
241
+ case Modes.consult:
242
+ this.eventClick.emit({
243
+ mode: Component_Modes.CONSULT,
244
+ id: this.currentContextMenuEvent.id
245
+ });
246
+ break;
247
+ case Modes.edit:
248
+ this.eventClick.emit({
249
+ mode: Component_Modes.EDIT,
250
+ id: this.currentContextMenuEvent.id
251
+ });
252
+ break;
253
+ }
254
+ }
255
+ onDisplayModeChange(event) {
256
+ const calendarApi = this.calendar?.getApi();
257
+ calendarApi?.changeView(event.value);
258
+ }
259
+ getCurrentDates() {
260
+ if (this.calendar) {
261
+ const calendarApi = this.calendar.getApi();
262
+ this.dateRangeChange.emit({
263
+ start: new Date(calendarApi.view.currentStart.setDate(calendarApi.view.currentStart.getDate() + 1)),
264
+ end: new Date(calendarApi.view.currentEnd.setDate(calendarApi.view.currentEnd.getDate() + 1))
265
+ });
266
+ }
267
+ }
268
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCalenderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i1.TsiNotificationService }, { token: i2.LocalizePipe }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
269
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCalenderComponent, selector: "tsi-calender", inputs: { crudService: "crudService", schema: "schema", eventsData: "eventsData" }, outputs: { eventClick: "eventClick", dateRangeChange: "dateRangeChange" }, viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ContextMenuComponent, descendants: true }, { propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }, { propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true }], ngImport: i0, template: "<p-calendar #datePicker class=\"hidden-calendar\" (onSelect)=\"navigateToDate($event)\"/>\r\n<full-calendar #calendar [options]='calendarOptions()'>\r\n <ng-template let-arg>\r\n\r\n <i [ngStyle]=\"arg.event.color && arg.event.color !== '' ? {'background-color': arg.event.color} : {}\" >\r\n \r\n {{ arg.event.title }}</i>\r\n </ng-template>\r\n</full-calendar>\r\n<app-context-menu (actionSelected)=\"handleSelectedAction($event)\"></app-context-menu>\r\n<ng-template #dropdownTemplate>\r\n <p-dropdown [style]=\"{'width' : '200px','border-radius': '5px'}\" [options]=\"displayModeOptions\" (onChange)=\"onDisplayModeChange($event)\"></p-dropdown>\r\n</ng-template>\r\n", styles: ["::ng-deep .hidden-calendar .p-inputtext{border:none;width:0px;height:0px}::ng-deep .hidden-calendar .p-inputtext:enabled:focus{box-shadow:none}::ng-deep .displayModeOptions{background:#fff;border:none}.attachment-info{margin-left:50px;font-size:12px;color:#080808}.attachment-info i{margin-right:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepYearPicker", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i5.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i6.FullCalendarComponent, selector: "full-calendar", inputs: ["options", "deepChangeDetection", "events", "eventSources", "resources"] }, { kind: "component", type: i7.ContextMenuComponent, selector: "app-context-menu", outputs: ["actionSelected"] }] }); }
270
+ }
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCalenderComponent, decorators: [{
272
+ type: Component,
273
+ args: [{ selector: 'tsi-calender', template: "<p-calendar #datePicker class=\"hidden-calendar\" (onSelect)=\"navigateToDate($event)\"/>\r\n<full-calendar #calendar [options]='calendarOptions()'>\r\n <ng-template let-arg>\r\n\r\n <i [ngStyle]=\"arg.event.color && arg.event.color !== '' ? {'background-color': arg.event.color} : {}\" >\r\n \r\n {{ arg.event.title }}</i>\r\n </ng-template>\r\n</full-calendar>\r\n<app-context-menu (actionSelected)=\"handleSelectedAction($event)\"></app-context-menu>\r\n<ng-template #dropdownTemplate>\r\n <p-dropdown [style]=\"{'width' : '200px','border-radius': '5px'}\" [options]=\"displayModeOptions\" (onChange)=\"onDisplayModeChange($event)\"></p-dropdown>\r\n</ng-template>\r\n", styles: ["::ng-deep .hidden-calendar .p-inputtext{border:none;width:0px;height:0px}::ng-deep .hidden-calendar .p-inputtext:enabled:focus{box-shadow:none}::ng-deep .displayModeOptions{background:#fff;border:none}.attachment-info{margin-left:50px;font-size:12px;color:#080808}.attachment-info i{margin-right:5px}\n"] }]
274
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i1.TsiNotificationService }, { type: i2.LocalizePipe }, { type: i0.Renderer2 }], propDecorators: { contextMenu: [{
275
+ type: ViewChild,
276
+ args: [ContextMenuComponent]
277
+ }], datePicker: [{
278
+ type: ViewChild,
279
+ args: ['datePicker']
280
+ }], calendar: [{
281
+ type: ViewChild,
282
+ args: ['calendar']
283
+ }], dropdownTemplate: [{
284
+ type: ViewChild,
285
+ args: ['dropdownTemplate']
286
+ }], crudService: [{
287
+ type: Input
288
+ }], schema: [{
289
+ type: Input
290
+ }], eventsData: [{
291
+ type: Input
292
+ }], eventClick: [{
293
+ type: Output
294
+ }], dateRangeChange: [{
295
+ type: Output
296
+ }] } });
297
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWNhbGVuZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktY2FsZW5kZXIvdHNpLWNhbGVuZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktY2FsZW5kZXIvdHNpLWNhbGVuZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFhLE1BQU0sRUFBZSxTQUFTLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBRzlLLE9BQU8saUJBQXlDLE1BQU0sMkJBQTJCLENBQUM7QUFDbEYsT0FBTyxhQUFhLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxjQUFjLE1BQU0sd0JBQXdCLENBQUM7QUFDcEQsT0FBTyxVQUFVLE1BQU0sb0JBQW9CLENBQUM7QUFFNUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7OztBQVdyRCxNQUFNLE9BQU8sb0JBQW9CO0lBVS9CLElBQWEsVUFBVSxDQUFDLEtBQWE7UUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBT0QsWUFDVSxlQUFrQyxFQUNsQyxpQkFBbUMsRUFDbkMsZUFBdUMsRUFDdkMsYUFBMkIsRUFDM0IsUUFBbUI7UUFKbkIsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFDbkMsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZD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R0FBRyxDQUFDLENBQUMsQ0FBQzthQUMvRixDQUFDLENBQUE7UUFDSixDQUFDO0lBQ0gsQ0FBQzsrR0E3UlUsb0JBQW9CO21HQUFwQixvQkFBb0IsZ1FBR3BCLG9CQUFvQix5VUN2QmpDLDRyQkFhQTs7NEZET2Esb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGNBQWM7Nk1BT1MsV0FBVztzQkFBM0MsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBQ04sVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNBLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDVSxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUVwQixXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDTyxVQUFVO3NCQUF0QixLQUFLO2dCQUlJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBSZW5kZXJlcjIsIHNpZ25hbCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyAgQ2FsZW5kYXJBcGksIENhbGVuZGFyT3B0aW9ucywgRGF0ZVNlbGVjdEFyZywgRXZlbnRBcGksIEV2ZW50Q2xpY2tBcmcsIEV2ZW50SW5wdXQgfSBmcm9tICdAZnVsbGNhbGVuZGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBwcmltZU5nIGZyb20gJ3ByaW1lbmcvY2FsZW5kYXInO1xyXG5pbXBvcnQgaW50ZXJhY3Rpb25QbHVnaW4sIHsgRXZlbnRSZXNpemVEb25lQXJnIH0gZnJvbSAnQGZ1bGxjYWxlbmRhci9pbnRlcmFjdGlvbic7XHJcbmltcG9ydCBkYXlHcmlkUGx1Z2luIGZyb20gJ0BmdWxsY2FsZW5kYXIvZGF5Z3JpZCc7XHJcbmltcG9ydCB0aW1lR3JpZFBsdWdpbiBmcm9tICdAZnVsbGNhbGVuZGFyL3RpbWVncmlkJztcclxuaW1wb3J0IGxpc3RQbHVnaW4gZnJvbSAnQGZ1bGxjYWxlbmRhci9saXN0JztcclxuaW1wb3J0IHsgRnVsbENhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSAnQGZ1bGxjYWxlbmRhci9hbmd1bGFyJztcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcG9uZW50X01vZGVzLCBNb2RlcyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgRXZlbnRTY2hlbWEgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9sb2NhbGl6ZS5waXBlJztcclxuaW1wb3J0IHsgQ3J1ZEJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYmFzZS9jcnVkLWJhc2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24vdHNpLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHNpLWNhbGVuZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLWNhbGVuZGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90c2ktY2FsZW5kZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHNpQ2FsZW5kZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXR7XHJcbiAgXHJcbiAgY3VycmVudENvbnRleHRNZW51RXZlbnQgOiBhbnkgO1xyXG4gIEBWaWV3Q2hpbGQoQ29udGV4dE1lbnVDb21wb25lbnQpIGNvbnRleHRNZW51OiBDb250ZXh0TWVudUNvbXBvbmVudCB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCdkYXRlUGlja2VyJykgZGF0ZVBpY2tlcjogcHJpbWVOZy5DYWxlbmRhciB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCdjYWxlbmRhcicpIGNhbGVuZGFyOiBGdWxsQ2FsZW5kYXJDb21wb25lbnQgfCB1bmRlZmluZWQ7XHJcbiAgQFZpZXdDaGlsZCgnZHJvcGRvd25UZW1wbGF0ZScpIGRyb3Bkb3duVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBJbnB1dCgpIGNydWRTZXJ2aWNlPzogQ3J1ZEJhc2VTZXJ2aWNlPGFueSwgYW55LCBhbnksIGFueT47XHJcbiAgQElucHV0KCkgc2NoZW1hOiBFdmVudFNjaGVtYSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBzZXQgZXZlbnRzRGF0YSh2YWx1ZSA6IGFueVtdKXtcclxuICAgIHRoaXMubWFwRGF0YVRvRXZlbnRzKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSBldmVudENsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBkYXRlUmFuZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIGRpc3BsYXlNb2RlT3B0aW9ucyA6IGFueVtdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgX21lc3NhZ2VTZXJ2aWNlOiBUc2lOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfbG9jYWxpemVQaXBlOiBMb2NhbGl6ZVBpcGUsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcclxuICApIHtcclxudGhpcy5kaXNwbGF5TW9kZU9wdGlvbnMgPSBbXHJcbiAgICB7IGxhYmVsOiB0aGlzLl9sb2NhbGl6ZVBpcGUudHJhbnNmb3JtKCdzaGFyZWRfdHNpX2NvbXBvbmVudF9ncmlkX2NhbGVuZGVyX2RheUdyaWRNb250aCcpICwgdmFsdWU6ICdkYXlHcmlkTW9udGgnIH0sXHJcbiAgICB7IGxhYmVsOiB0aGlzLl9sb2NhbGl6ZVBpcGUudHJhbnNmb3JtKCdzaGFyZWRfdHNpX2NvbXBvbmVudF9ncmlkX2NhbGVuZGVyX2RheUdyaWRXZWVrJykgLCB2YWx1ZTogJ2RheUdyaWRXZWVrJyB9LFxyXG4gICAgeyBsYWJlbDogdGhpcy5fbG9jYWxpemVQaXBlLnRyYW5zZm9ybSgnc2hhcmVkX3RzaV9jb21wb25lbnRfZ3JpZF9jYWxlbmRlcl9kYXlHcmlkRGF5JykgLCB2YWx1ZTogJ2RheUdyaWREYXknIH0sXHJcbiAgICB7IGxhYmVsOiB0aGlzLl9sb2NhbGl6ZVBpcGUudHJhbnNmb3JtKCdzaGFyZWRfdHNpX2NvbXBvbmVudF9ncmlkX2NhbGVuZGVyX3RpbWVHcmlkRGF5JykgLCB2YWx1ZTogJ3RpbWVHcmlkRGF5JyB9LFxyXG4gICAgeyBsYWJlbDogdGhpcy5fbG9jYWxpemVQaXBlLnRyYW5zZm9ybSgnc2hhcmVkX3RzaV9jb21wb25lbnRfZ3JpZF9jYWxlbmRlcl90aW1lR3JpZFdlZWsnKSAsIHZhbHVlOiAndGltZUdyaWRXZWVrJyB9LFxyXG4gICAgeyBsYWJlbDogdGhpcy5fbG9jYWxpemVQaXBlLnRyYW5zZm9ybSgnc2hhcmVkX3RzaV9jb21wb25lbnRfZ3JpZF9jYWxlbmRlcl9saXN0WWVhcicpICwgdmFsdWU6ICdsaXN0WWVhcicgfSxcclxuICAgIHsgbGFiZWw6IHRoaXMuX2xvY2FsaXplUGlwZS50cmFuc2Zvcm0oJ3NoYXJlZF90c2lfY29tcG9uZW50X2dyaWRfY2FsZW5kZXJfbGlzdE1vbnRoJykgLCB2YWx1ZTogJ2xpc3RNb250aCcgfSxcclxuICAgIHsgbGFiZWw6IHRoaXMuX2xvY2FsaXplUGlwZS50cmFuc2Zvcm0oJ3NoYXJlZF90c2lfY29tcG9uZW50X2dyaWRfY2FsZW5kZXJfbGlzdFdlZWsnKSAsIHZhbHVlOiAnbGlzdFdlZWsnIH0sXHJcbiAgICB7IGxhYmVsOiB0aGlzLl9sb2NhbGl6ZVBpcGUudHJhbnNmb3JtKCdzaGFyZWRfdHNpX2NvbXBvbmVudF9ncmlkX2NhbGVuZGVyX2xpc3REYXknKSAsIHZhbHVlOiAnbGlzdERheScgfSxcclxuICAgIC8vcHJlbWl1bVxyXG4gICAgLy8geyBsYWJlbDogJ3Z1ZSBjaHJvbm9sb2dpcXVlIGFubsOpZScsIHZhbHVlOiAndGltZWxpbmVZZWFyJyB9LFxyXG4gICAgLy8geyBsYWJlbDogJ3Z1ZSBjaHJvbm9sb2dpcXVlIG1vaXMnLCB2YWx1ZTogJ3RpbWVsaW5lTW9udGgnIH0sXHJcbiAgICAvLyB7IGxhYmVsOiAndnVlIGNocm9ub2xvZ2lxdWUgc2VtYWluZScsIHZhbHVlOiAndGltZWxpbmVXZWVrJyB9LFxyXG4gICAgLy8geyBsYWJlbDogJ3Z1ZSBjaHJvbm9sb2dpcXVlIGpvdXInLCB2YWx1ZTogJ3RpbWVsaW5lRGF5JyB9LFxyXG4gIF1cclxuXHJcbiAgIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgY29uc3QgaWNvbkZvckNhbGVuZGFyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmZjLWljb24tQ2FsZW5kYXInKTtcclxuICAgIGlmKGljb25Gb3JDYWxlbmRhcil7XHJcbiAgICAgIGljb25Gb3JDYWxlbmRhci5jbGFzc0xpc3QudmFsdWUgPSBcInBpIHBpLWNhbGVuZGFyXCJcclxuICAgIH1cclxuICAgIGNvbnN0IGljb25Gb3JTZWFyY2hGaWx0ZXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuZmMtaWNvbi1TZWFyY2hGaWx0ZXInKTtcclxuICAgIGlmKGljb25Gb3JTZWFyY2hGaWx0ZXIpe1xyXG4gICAgICBpY29uRm9yU2VhcmNoRmlsdGVyLmNsYXNzTGlzdC52YWx1ZSA9IFwicGkgcGktc2VhcmNoXCJcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBkcm9wZG93bkVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuZmMtZGlzcGxheU1vZGVPcHRpb25zLWJ1dHRvbicpO1xyXG4gICAgaWYgKGRyb3Bkb3duRWxlbWVudCkge1xyXG4gICAgICBkcm9wZG93bkVsZW1lbnQuaW5uZXJIVE1MID0gJyc7IC8vIENsZWFyIGFueSBkZWZhdWx0IGNvbnRlbnRcclxuICAgICAgLy8gQ3JlYXRlIGFuIGVtYmVkZGVkIHZpZXcgZnJvbSB0aGUgdGVtcGxhdGVcclxuICAgICAgY29uc3QgZW1iZWRkZWRWaWV3ID0gdGhpcy5kcm9wZG93blRlbXBsYXRlIS5jcmVhdGVFbWJlZGRlZFZpZXcobnVsbCk7XHJcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXJSZWYuaW5zZXJ0KGVtYmVkZGVkVmlldyk7XHJcbiAgICAgIC8vIEFwcGVuZCB0aGUgZHJvcGRvd24gdG8gdGhlIHRvb2xiYXJcclxuICAgICAgZW1iZWRkZWRWaWV3IS5yb290Tm9kZXMuZm9yRWFjaChub2RlID0+IHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGRyb3Bkb3duRWxlbWVudCwgbm9kZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBkcm9wZG93bkVsZW1lbnQuY2xhc3NMaXN0LnZhbHVlID0gJ2Rpc3BsYXlNb2RlT3B0aW9ucyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYWxlbmRhck9wdGlvbnMgPSBzaWduYWw8Q2FsZW5kYXJPcHRpb25zPih7XHJcbiAgICBwbHVnaW5zOiBbXHJcbiAgICAgIGludGVyYWN0aW9uUGx1Z2luLFxyXG4gICAgICBkYXlHcmlkUGx1Z2luLFxyXG4gICAgICB0aW1lR3JpZFBsdWdpbixcclxuICAgICAgbGlzdFBsdWdpbixcclxuICAgIF0sXHJcbiAgICBoZWFkZXJUb29sYmFyOiB7XHJcbiAgICAgIGxlZnQ6ICdwcmV2WWVhcixwcmV2LGRhdGVQaWNrZXJOYXZpZ2F0b3Isc2VhcmNoRmlsdGVyLG5leHQsbmV4dFllYXIsdG9kYXknLFxyXG4gICAgICBjZW50ZXI6ICd0aXRsZScsXHJcbiAgICAgIHJpZ2h0OiAnZGlzcGxheU1vZGVPcHRpb25zJyxcclxuICAgIH0sXHJcbiAgICBidXR0b25UZXh0OiB7XHJcbiAgICAgIHRvZGF5OiBcIkF1am91cmQnaHVpXCIsXHJcbiAgICB9LFxyXG4gICAgY3VzdG9tQnV0dG9uczoge1xyXG4gICAgICBkYXRlUGlja2VyTmF2aWdhdG9yIDoge1xyXG4gICAgICAgIGljb246IFwiQ2FsZW5kYXJcIixcclxuICAgICAgICBoaW50OiBcIlwiLFxyXG4gICAgICAgIGNsaWNrOiB0aGlzLmhhbmRsZURhdGVQaWNrZXJOYXZpZ2F0b3JDbGljay5iaW5kKHRoaXMpXHJcbiAgICAgIH0sXHJcbiAgICAgIHNlYXJjaEZpbHRlciA6IHtcclxuICAgICAgICBpY29uOiBcIlNlYXJjaEZpbHRlclwiLFxyXG4gICAgICAgIGhpbnQ6IFwiXCIsXHJcbiAgICAgICAgY2xpY2s6IHRoaXMuaGFuZGxlU2VhcmNoRmlsdGVyLmJpbmQodGhpcylcclxuICAgICAgfSxcclxuICAgIH0sXHJcbiAgICBpbml0aWFsVmlldzogJ2RheUdyaWRNb250aCcsXHJcbiAgICBsb2NhbGU6IFwiZnJcIixcclxuICAgIGV2ZW50cyA6IHRoaXMuZXZlbnRzRGF0YSxcclxuICAgIHdlZWtlbmRzOiB0cnVlLFxyXG4gICAgc2VsZWN0YWJsZTogdHJ1ZSxcclxuICAgIGVkaXRhYmxlOiB0cnVlLFxyXG4gICAgZXZlbnRSZXNpemFibGVGcm9tU3RhcnQ6IHRydWUsXHJcbiAgICBldmVudFN0YXJ0RWRpdGFibGU6IHRydWUsXHJcbiAgICBldmVudER1cmF0aW9uRWRpdGFibGU6IHRydWUsXHJcbiAgICBzZWxlY3RNaXJyb3I6IHRydWUsXHJcbiAgICBkYXlNYXhFdmVudHM6IHRydWUsXHJcbiAgICBzZWxlY3Q6IHRoaXMuaGFuZGxlRGF0ZVNlbGVjdC5iaW5kKHRoaXMpLFxyXG4gICAgZXZlbnRDbGljazogdGhpcy5oYW5kbGVFdmVudENsaWNrLmJpbmQodGhpcyksXHJcbiAgICBldmVudHNTZXQ6IHRoaXMuaGFuZGxlRXZlbnRzLmJpbmQodGhpcyksXHJcbiAgICBldmVudERyb3A6IHRoaXMuaGFuZGxlRXZlbnREcm9wLmJpbmQodGhpcyksXHJcbiAgICBldmVudFJlc2l6ZTogdGhpcy5oYW5kbGVFdmVudFJlc2l6ZS5iaW5kKHRoaXMpLFxyXG4gICAgZXZlbnREaWRNb3VudDogdGhpcy5oYW5kbGVFdmVudERpZE1vdW50LmJpbmQodGhpcyksXHJcbiAgICBkYXRlc1NldDogdGhpcy5nZXRDdXJyZW50RGF0ZXMuYmluZCh0aGlzKSxcclxuICAgIGV2ZW50Q29udGVudDogKGFyZykgPT4ge1xyXG4gICAgICBjb25zdCBub21icmVBdHRhY2hlbWVudCA9IGFyZy5ldmVudC5leHRlbmRlZFByb3BzPy5bJ25vbWJyZUF0dGFjaGVtZW50J10gfHwgMDtcclxuICAgICAgY29uc3QgYXR0YWNobWVudEh0bWwgPSBub21icmVBdHRhY2hlbWVudCA+IDAgXHJcbiAgICAgICAgPyBgPHNwYW4gY2xhc3M9XCJhdHRhY2htZW50LWluZm9cIj48aSBjbGFzcz1cInBpIHBpLXBhcGVyY2xpcFwiPjwvaT4gWyR7bm9tYnJlQXR0YWNoZW1lbnR9XTwvc3Bhbj5gIFxyXG4gICAgICAgIDogJyc7IFxyXG4gIFxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGh0bWw6IGBcclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXZlbnQtdGl0bGVcIj4ke2FyZy5ldmVudC50aXRsZX08L3NwYW4+XHJcbiAgICAgICAgICAgICR7YXR0YWNobWVudEh0bWx9XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICBgLFxyXG4gICAgICB9O1xyXG4gICAgfSxcclxuICB9KTtcclxuICBjdXJyZW50RXZlbnRzID0gc2lnbmFsPEV2ZW50QXBpW10+KFtdKTtcclxuXHJcbiAgbWFwRGF0YVRvRXZlbnRzKHZhbHVlIDogYW55W10pIHtcclxuICAgIHRoaXMuY2FsZW5kYXJPcHRpb25zLnVwZGF0ZSgob2xkQ2FsZW5kZXJPcHRzOkNhbGVuZGFyT3B0aW9ucykgPT4ge1xyXG4gICAgICBpZighdGhpcy5zY2hlbWEpe1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInNjaGVtYSBzaG91bGQgYmUgZGVmaW5lZC5cIikgXHJcbiAgICAgIH1cclxuICAgICAgbGV0IGV2dHMgPSB2YWx1ZS5tYXAoaXRlbSA9PiB7XHJcbiAgICAgICAgbGV0IGV2ZW50IDogRXZlbnRJbnB1dCA9IHtcclxuICAgICAgICAgIGlkOiBpdGVtW3RoaXMuc2NoZW1hIS5pZF0sXHJcbiAgICAgICAgICBzdGFydDogaXRlbVt0aGlzLnNjaGVtYSEuc3RhcnRdLFxyXG4gICAgICAgICAgZW5kOiBpdGVtW3RoaXMuc2NoZW1hIS5lbmRdLFxyXG4gICAgICAgICAgdGl0bGU6IGl0ZW1bdGhpcy5zY2hlbWEhLnRpdGxlXSxcclxuICAgICAgICAgIGNvbG9yOiBpdGVtLmNvbG9yLFxyXG4gICAgICAgICAgZXh0ZW5kZWRQcm9wczogeyBcclxuICAgICAgICAgICAgbm9tYnJlQXR0YWNoZW1lbnQ6IGl0ZW0ubm9tYnJlQXR0YWNoZW1lbnQsXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gZXZlbnQ7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgb2xkQ2FsZW5kZXJPcHRzLmV2ZW50cyA9IGV2dHMgO1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIC4uLm9sZENhbGVuZGVyT3B0cyxcclxuICAgICAgICBldmVudHM6IGV2dHNcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRGF0ZVNlbGVjdChzZWxlY3RJbmZvOiBEYXRlU2VsZWN0QXJnKSB7XHJcbiAgICB0aGlzLmV2ZW50Q2xpY2suZW1pdCh7XHJcbiAgICAgIG1vZGUgOiBDb21wb25lbnRfTW9kZXMuQ1JFQVRFLFxyXG4gICAgICBkYXRlRGVidXQ6IHNlbGVjdEluZm8uc3RhcnQudG9Mb2NhbGVEYXRlU3RyaW5nKCdmci1GUicpXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUV2ZW50Q2xpY2soY2xpY2tJbmZvOiBFdmVudENsaWNrQXJnKSB7XHJcbiAgICB0aGlzLmV2ZW50Q2xpY2suZW1pdCh7XHJcbiAgICAgIG1vZGUgOiBDb21wb25lbnRfTW9kZXMuRURJVCxcclxuICAgICAgaWQgOiBjbGlja0luZm8uZXZlbnQuaWRcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRXZlbnRzKGV2ZW50czogRXZlbnRBcGlbXSkge1xyXG4gICAgdGhpcy5jdXJyZW50RXZlbnRzLnNldChldmVudHMpO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpOyAvLyB3b3JrYXJvdW5kIGZvciBwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvclxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRXZlbnRSZXNpemUoaW5mbzogRXZlbnRSZXNpemVEb25lQXJnKXtcclxuICAgIHRoaXMudXBkYXRlRXZlbnQoaW5mbyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFdmVudERyb3AoaW5mbzogYW55KXtcclxuICAgIHRoaXMudXBkYXRlRXZlbnQoaW5mbyk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVFdmVudChpbmZvOiBhbnkpe1xyXG4gICAgY29uc3QgbmV3U3RhcnQgPSBpbmZvLmV2ZW50LnN0YXJ0O1xyXG4gICAgY29uc3QgbmV3RW5kID0gaW5mby5ldmVudC5lbmQ7XHJcbiAgICBjb25zdCBpZCA9IGluZm8uZXZlbnQuaWQ7XHJcblxyXG4gICAgaWYgKHRoaXMuY3J1ZFNlcnZpY2Upe1xyXG4gICAgICB0aGlzLmNydWRTZXJ2aWNlLmdldEJ5SWQoaWQpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dCA6KHJlczphbnkpID0+IHtcclxuICAgICAgICAgIGlmKCF0aGlzLnNjaGVtYSl7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcInNjaGVtYSBzaG91bGQgYmUgZGVmaW5lZC5cIikgXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsZXQgaXRlbSA9IHJlcztcclxuICAgICAgICAgIGl0ZW1bdGhpcy5zY2hlbWEhLnN0YXJ0XSA9IG5ld1N0YXJ0O1xyXG4gICAgICAgICAgaXRlbVt0aGlzLnNjaGVtYSEuZW5kXSA9IG5ld0VuZCA/IG5ld0VuZCA6IG5ld1N0YXJ0OyAvLyBpZiBpdCdzIG9uIHRoZSBzYW1lIGRheVxyXG4gICAgICAgICAgdGhpcy5jcnVkU2VydmljZT8udXBkYXRlKGl0ZW0sIGlkKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICBuZXh0IDogKCkgPT4gdGhpcy5fbWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhcInNoYXJlZF9yZXBvcnRpbmdfc3VjY2Vzc191cGRhdGVkXCIpLFxyXG4gICAgICAgICAgICBlcnJvcjogKGVycikgPT4gY29uc29sZS5sb2coZXJyKVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiBjb25zb2xlLmxvZyhcIkNhbiBub3QgdXBkYXRlIGl0ZW0gOlwiLCBlcnIpXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVEYXRlUGlja2VyTmF2aWdhdG9yQ2xpY2soZXZlbnQ6YW55KXtcclxuICAgIGlmICh0aGlzLmRhdGVQaWNrZXIpIHtcclxuICAgICAgbGV0IGNhbGVuZGFySW5wdXQgPSB0aGlzLmRhdGVQaWNrZXIuaW5wdXRmaWVsZFZpZXdDaGlsZD8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgY2FsZW5kYXJJbnB1dC5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuICBoYW5kbGVTZWFyY2hGaWx0ZXIoZXZlbnQ6YW55KXtcclxuICAgIHRoaXMuZXZlbnRDbGljay5lbWl0KHtcclxuICAgICAgbW9kZSA6IFwiU0VBUkNIXCJcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuYXZpZ2F0ZVRvRGF0ZShldmVudDphbnkpe1xyXG4gICAgY29uc3QgZnVsbENhbGVuZGFyID0gdGhpcy5jYWxlbmRhcj8uZ2V0QXBpKCk7XHJcbiAgICBmdWxsQ2FsZW5kYXI/LmdvdG9EYXRlKGV2ZW50KTtcclxuICAgIGlmICh0aGlzLmRhdGVQaWNrZXIpIHtcclxuICAgICAgbGV0IGNhbGVuZGFySW5wdXQgPSB0aGlzLmRhdGVQaWNrZXIuaW5wdXRmaWVsZFZpZXdDaGlsZD8ubmF0aXZlRWxlbWVudDtcclxuICAgICAgY2FsZW5kYXJJbnB1dC5ibHVyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFdmVudERpZE1vdW50KGFyZzphbnkpIHtcclxuICAgIC8vQXR0YWNoIHJpZ2h0LWNsaWNrIGV2ZW50IHRvIGVhY2ggZXZlbnQgY2VsbFxyXG4gICAgYXJnLmVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcbiAgICAgIC8vUHJldmVudCB0aGUgZGVmYXVsdCBjb250ZXh0IG1lbnUgZnJvbSBhcHBlYXJpbmdcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsgXHJcbiAgICAgIHRoaXMuY3VycmVudENvbnRleHRNZW51RXZlbnQgPSBhcmcuZXZlbnQ7XHJcbiAgICAgIHRoaXMuY29udGV4dE1lbnU/Lm9wZW5NZW51KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpOyBcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VsZWN0ZWRBY3Rpb24oYWN0aW9uOiBhbnkpOiB2b2lkIHtcclxuICAgIHN3aXRjaChhY3Rpb24uc2VsZWN0ZWRBY3Rpb24pIHtcclxuICAgICAgY2FzZSBNb2Rlcy5kZWxldGU6XHJcbiAgICAgICAgaWYodGhpcy5jdXJyZW50Q29udGV4dE1lbnVFdmVudCl7XHJcbiAgICAgICAgICB0aGlzLmNydWRTZXJ2aWNlPy5kZWxldGUodGhpcy5jdXJyZW50Q29udGV4dE1lbnVFdmVudC5pZCkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgbmV4dDogKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGZ1bGxDYWxlbmRhciA9IHRoaXMuY2FsZW5kYXI/LmdldEFwaSgpO1xyXG4gICAgICAgICAgICAgIGZ1bGxDYWxlbmRhcj8uZ2V0RXZlbnRCeUlkKHRoaXMuY3VycmVudENvbnRleHRNZW51RXZlbnQuaWQpPy5yZW1vdmUoKTtcclxuICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlU2VydmljZS5zdWNjZXNzKFwic2hhcmVkX3RzaV9jb21wb25lbnRfZ3JpZF9jYWxlbmRlcl9kZWxldGVfaXRlbV9zdWNjZXNzXCIpXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGVycm9yOiAoZXJyKSA9PiB0aGlzLl9tZXNzYWdlU2VydmljZS5lcnJvcihlcnIuZXJyb3IuZXJyb3JzWzU0N10gPyBcInNoYXJlZF90c2lfY29tcG9uZW50X2dyaWRfY2FsZW5kZXJfZGVsZXRlX2l0ZW1fZmFpbGVkXCIgOiBlcnIuZXJyb3IuZGV0YWlsKSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfVxyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSBNb2Rlcy5jb25zdWx0OlxyXG4gICAgICAgIHRoaXMuZXZlbnRDbGljay5lbWl0KHtcclxuICAgICAgICAgIG1vZGUgOiBDb21wb25lbnRfTW9kZXMuQ09OU1VMVCxcclxuICAgICAgICAgIGlkIDogdGhpcy5jdXJyZW50Q29udGV4dE1lbnVFdmVudC5pZFxyXG4gICAgICAgIH0pO1xyXG4gICAgICBicmVhaztcclxuICAgICAgY2FzZSBNb2Rlcy5lZGl0OlxyXG4gICAgICAgIHRoaXMuZXZlbnRDbGljay5lbWl0KHtcclxuICAgICAgICAgIG1vZGUgOiBDb21wb25lbnRfTW9kZXMuRURJVCxcclxuICAgICAgICAgIGlkIDogdGhpcy5jdXJyZW50Q29udGV4dE1lbnVFdmVudC5pZFxyXG4gICAgICAgIH0pO1xyXG4gICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRGlzcGxheU1vZGVDaGFuZ2UoZXZlbnQ6IGFueSl7XHJcbiAgICBjb25zdCBjYWxlbmRhckFwaSA9IHRoaXMuY2FsZW5kYXI/LmdldEFwaSgpO1xyXG4gICAgY2FsZW5kYXJBcGk/LmNoYW5nZVZpZXcoZXZlbnQudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q3VycmVudERhdGVzKCkge1xyXG4gICAgaWYodGhpcy5jYWxlbmRhcil7XHJcbiAgICAgIGNvbnN0IGNhbGVuZGFyQXBpOiBDYWxlbmRhckFwaSA9IHRoaXMuY2FsZW5kYXIuZ2V0QXBpKCk7XHJcbiAgICAgIHRoaXMuZGF0ZVJhbmdlQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgIHN0YXJ0IDogbmV3IERhdGUoY2FsZW5kYXJBcGkudmlldy5jdXJyZW50U3RhcnQuc2V0RGF0ZShjYWxlbmRhckFwaS52aWV3LmN1cnJlbnRTdGFydC5nZXREYXRlKCkgKyAxKSksXHJcbiAgICAgICAgZW5kIDogbmV3IERhdGUoY2FsZW5kYXJBcGkudmlldy5jdXJyZW50RW5kLnNldERhdGUoY2FsZW5kYXJBcGkudmlldy5jdXJyZW50RW5kLmdldERhdGUoKSArIDEpKVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPHAtY2FsZW5kYXIgI2RhdGVQaWNrZXIgY2xhc3M9XCJoaWRkZW4tY2FsZW5kYXJcIiAob25TZWxlY3QpPVwibmF2aWdhdGVUb0RhdGUoJGV2ZW50KVwiLz5cclxuPGZ1bGwtY2FsZW5kYXIgI2NhbGVuZGFyIFtvcHRpb25zXT0nY2FsZW5kYXJPcHRpb25zKCknPlxyXG4gICAgPG5nLXRlbXBsYXRlICBsZXQtYXJnPlxyXG5cclxuICAgIDxpIFtuZ1N0eWxlXT1cImFyZy5ldmVudC5jb2xvciAmJiBhcmcuZXZlbnQuY29sb3IgIT09ICcnID8geydiYWNrZ3JvdW5kLWNvbG9yJzogYXJnLmV2ZW50LmNvbG9yfSA6IHt9XCIgPlxyXG4gICAgICAgIFxyXG4gICAgICAgIHt7IGFyZy5ldmVudC50aXRsZSB9fTwvaT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbjwvZnVsbC1jYWxlbmRhcj5cclxuPGFwcC1jb250ZXh0LW1lbnUgKGFjdGlvblNlbGVjdGVkKT1cImhhbmRsZVNlbGVjdGVkQWN0aW9uKCRldmVudClcIj48L2FwcC1jb250ZXh0LW1lbnU+XHJcbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd25UZW1wbGF0ZT5cclxuICAgIDxwLWRyb3Bkb3duIFtzdHlsZV09XCJ7J3dpZHRoJyA6ICcyMDBweCcsJ2JvcmRlci1yYWRpdXMnOiAnNXB4J31cIiBbb3B0aW9uc109XCJkaXNwbGF5TW9kZU9wdGlvbnNcIiAob25DaGFuZ2UpPVwib25EaXNwbGF5TW9kZUNoYW5nZSgkZXZlbnQpXCI+PC9wLWRyb3Bkb3duPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
@@ -0,0 +1,64 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "primeng/api";
5
+ import * as i3 from "primeng/card";
6
+ import * as i4 from "../button-components/tsi-button/tsi-button.component";
7
+ export class TsiCardComponent {
8
+ constructor() {
9
+ this.buttonClicked = new EventEmitter();
10
+ }
11
+ ngOnInit() {
12
+ }
13
+ consult(uid) {
14
+ if (uid) {
15
+ this.openModalComponent(uid, 'consult');
16
+ }
17
+ }
18
+ edit(uid) {
19
+ if (uid) {
20
+ this.openModalComponent(uid, 'edit');
21
+ }
22
+ }
23
+ delete(uid) {
24
+ if (uid) {
25
+ this.openModalComponent(uid, 'delete');
26
+ }
27
+ }
28
+ upload(uid) {
29
+ if (uid) {
30
+ this.openModalComponent(uid, 'upload');
31
+ }
32
+ }
33
+ info(uid) {
34
+ if (uid) {
35
+ this.openModalComponent(uid, 'info');
36
+ }
37
+ }
38
+ openModalComponent(uid, mode) {
39
+ this.buttonClicked.emit({ field: mode, key: uid, selectKeyOnly: true });
40
+ }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCardComponent, selector: "Tsi-card", inputs: { id: "id", headerTitle: "headerTitle", subHeaderTitle: "subHeaderTitle", description: "description", imgUrl: "imgUrl", uid: "uid", formName: "formName" }, outputs: { buttonClicked: "buttonClicked" }, ngImport: i0, template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"body\">\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i3.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: i4.TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }] }); }
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardComponent, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'Tsi-card', template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"body\">\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"] }]
47
+ }], ctorParameters: () => [], propDecorators: { id: [{
48
+ type: Input
49
+ }], headerTitle: [{
50
+ type: Input
51
+ }], subHeaderTitle: [{
52
+ type: Input
53
+ }], description: [{
54
+ type: Input
55
+ }], imgUrl: [{
56
+ type: Input
57
+ }], uid: [{
58
+ type: Input
59
+ }], formName: [{
60
+ type: Input
61
+ }], buttonClicked: [{
62
+ type: Output
63
+ }] } });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL3RzaS1jYXJkL3RzaS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktY2FyZC90c2ktY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRL0UsTUFBTSxPQUFPLGdCQUFnQjtJQWEzQjtRQUpVLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFPaEUsQ0FBQztJQUVELFFBQVE7SUFFUixDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQVk7UUFDbEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLENBQUMsR0FBWTtRQUNmLElBQUksR0FBRyxFQUFFLENBQUM7WUFDUCxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQVk7UUFDakIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsR0FBWTtRQUNqQixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFZO1FBQ2YsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxHQUFXLEVBQUUsSUFBWTtRQUNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDOytHQXREVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixpUUNSN0IsbTVFQXVETTs7NEZEL0NPLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxVQUFVO3dEQUtYLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBCdXR0b25DbGlja1Jlc3VsdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZ3JpZC9ncmlkLWNvbmZpZ3VyYXRpb24nO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1RzaS1jYXJkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi90c2ktY2FyZC5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFRzaUNhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGlkPzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGhlYWRlclRpdGxlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN1YkhlYWRlclRpdGxlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGltZ1VybD86IHN0cmluZztcclxuICBASW5wdXQoKSB1aWQ/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZm9ybU5hbWU/OiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKSBidXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxCdXR0b25DbGlja1Jlc3VsdD4oKTtcclxuXHJcbiAgX2RpYWxvZ1JlZj86IER5bmFtaWNEaWFsb2dSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICkge1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIGNvbnN1bHQodWlkPzogc3RyaW5nKSB7XHJcbiAgICBpZiAodWlkKSB7XHJcbiAgICAgIHRoaXMub3Blbk1vZGFsQ29tcG9uZW50KHVpZCwgJ2NvbnN1bHQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVkaXQodWlkPzogc3RyaW5nKSB7XHJcbiAgICBpZiAodWlkKSB7XHJcbiAgICAgICB0aGlzLm9wZW5Nb2RhbENvbXBvbmVudCh1aWQsICdlZGl0Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkZWxldGUodWlkPzogc3RyaW5nKSB7XHJcbiAgICBpZiAodWlkKSB7XHJcbiAgICAgIHRoaXMub3Blbk1vZGFsQ29tcG9uZW50KHVpZCwgJ2RlbGV0ZScpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICB1cGxvYWQodWlkPzogc3RyaW5nKSB7XHJcbiAgICBpZiAodWlkKSB7XHJcbiAgICAgIHRoaXMub3Blbk1vZGFsQ29tcG9uZW50KHVpZCwgJ3VwbG9hZCcpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBpbmZvKHVpZD86IHN0cmluZykge1xyXG4gICAgaWYgKHVpZCkge1xyXG4gICAgICB0aGlzLm9wZW5Nb2RhbENvbXBvbmVudCh1aWQsICdpbmZvJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9wZW5Nb2RhbENvbXBvbmVudCh1aWQ6IHN0cmluZywgbW9kZTogc3RyaW5nKXtcclxuICAgIHRoaXMuYnV0dG9uQ2xpY2tlZC5lbWl0KHsgZmllbGQ6IG1vZGUsIGtleTogdWlkLCBzZWxlY3RLZXlPbmx5OiB0cnVlIH0pO1xyXG4gIH1cclxuXHJcbn0iLCI8ZGl2IGNsYXNzPVwiY2FyZC1jb250YWluZXJcIj5cclxuICAgIDxwLWNhcmQ+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiICA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaXhlZC1jYXJkLWhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImltZ1VybFwiIFtzcmNdPVwiaW1nVXJsLnN0YXJ0c1dpdGgoJy4vYXNzZXRzJykgPyAgaW1nVXJsIDogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwnICsgaW1nVXJsXCIgLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cInRpdGxlXCI+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGVhZGVyVGl0bGVcIj5cclxuICAgICAgICAgICAgICAgIHt7IGhlYWRlclRpdGxlIH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJzdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInN1YkhlYWRlclRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBzdWJIZWFkZXJUaXRsZSB9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICBcclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiPlxyXG4gICAgICAgICAgICA8cCBjbGFzcz1cImNsYW1wLXRleHRcIiAqbmdJZj1cImRlc2NyaXB0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBkZXNjcmlwdGlvbiB9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBtdC0xIGdhcC00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxUc2ktQnV0dG9uIFtzdHlsZUNsYXNzXT1cIidwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXRleHQgcC0wLTUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaSBwaS1leWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29uc3VsdCh1aWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9Uc2ktQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxUc2ktQnV0dG9uIFtzdHlsZUNsYXNzXT1cIidwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXRleHQgcC0wLTUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1wZW5jaWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZWRpdCh1aWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9Uc2ktQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxUc2ktQnV0dG9uIFtzdHlsZUNsYXNzXT1cIidwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXRleHQgcC1idXR0b24tZGFuZ2VyIHAtMC01J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktdHJhc2hcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlKHVpZClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L1RzaS1CdXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8VHNpLUJ1dHRvbiBbc3R5bGVDbGFzc109XCIncC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi10ZXh0IHAtMC01J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1wYXBlcmNsaXBcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ1cGxvYWQodWlkKVwiPlxyXG4gICAgICAgICAgICAgICAgPC9Uc2ktQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFRzaS1CdXR0b24gW3N0eWxlQ2xhc3NdPVwiJ3AtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tdGV4dCBwLTAtNSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktaW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImluZm8odWlkKVwiPlxyXG4gICAgICAgICAgICAgICAgPC9Uc2ktQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L3AtY2FyZD5cclxuPC9kaXY+Il19