ngx-techlify-core 19.0.0 → 22.3.0

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 (790) hide show
  1. package/fesm2022/ngx-techlify-core-base-model-oCILHkdE.mjs +677 -0
  2. package/fesm2022/ngx-techlify-core-base-model-oCILHkdE.mjs.map +1 -0
  3. package/fesm2022/ngx-techlify-core-shared.module-DROe5GRx.mjs +4842 -0
  4. package/fesm2022/ngx-techlify-core-shared.module-DROe5GRx.mjs.map +1 -0
  5. package/fesm2022/ngx-techlify-core-user-config.service-DW5EgXhL.mjs +133 -0
  6. package/fesm2022/ngx-techlify-core-user-config.service-DW5EgXhL.mjs.map +1 -0
  7. package/fesm2022/ngx-techlify-core-user-sessions.module-BRmDpYG3.mjs +2135 -0
  8. package/fesm2022/ngx-techlify-core-user-sessions.module-BRmDpYG3.mjs.map +1 -0
  9. package/fesm2022/ngx-techlify-core.mjs +32477 -16273
  10. package/fesm2022/ngx-techlify-core.mjs.map +1 -1
  11. package/package.json +19 -19
  12. package/styles/_index.scss +1 -1
  13. package/styles/style.scss +2 -2
  14. package/types/ngx-techlify-core.d.ts +6429 -0
  15. package/esm2022/lib/access-control-config/access-control-config-form/access-control-config-form.component.mjs +0 -126
  16. package/esm2022/lib/access-control-config/access-control-config-routing.module.mjs +0 -31
  17. package/esm2022/lib/access-control-config/access-control-config.component.mjs +0 -128
  18. package/esm2022/lib/access-control-config/access-control-config.model.mjs +0 -21
  19. package/esm2022/lib/access-control-config/access-control-config.module.mjs +0 -28
  20. package/esm2022/lib/access-control-config/access-control-config.service.mjs +0 -37
  21. package/esm2022/lib/action-popup/action-popup.component.mjs +0 -33
  22. package/esm2022/lib/action-popup/action-popup.model.mjs +0 -3
  23. package/esm2022/lib/action-popup/action-popup.module.mjs +0 -28
  24. package/esm2022/lib/action-popup/index.mjs +0 -3
  25. package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list-routing.module.mjs +0 -26
  26. package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list.component.mjs +0 -115
  27. package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list.module.mjs +0 -33
  28. package/esm2022/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.component.mjs +0 -87
  29. package/esm2022/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.module.mjs +0 -22
  30. package/esm2022/lib/app-admin/admin-role/admin-role.service.mjs +0 -24
  31. package/esm2022/lib/app-admin/app-admin-home/app-admin-home.component.mjs +0 -17
  32. package/esm2022/lib/app-admin/app-admin-routing.module.mjs +0 -29
  33. package/esm2022/lib/app-admin/app-admin.module.mjs +0 -22
  34. package/esm2022/lib/app-admin/tenant/tenant-list-widget/tenant-list-widget.component.mjs +0 -56
  35. package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.mjs +0 -18
  36. package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model.component.mjs +0 -61
  37. package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model.module.mjs +0 -32
  38. package/esm2022/lib/audit-log/audit-log-list/audit-log-list-routing.module.mjs +0 -18
  39. package/esm2022/lib/audit-log/audit-log-list/audit-log-list.component.mjs +0 -149
  40. package/esm2022/lib/audit-log/audit-log-list/audit-log-list.module.mjs +0 -28
  41. package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.mjs +0 -18
  42. package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.mjs +0 -56
  43. package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.mjs +0 -24
  44. package/esm2022/lib/audit-log/audit-log-routing.module.mjs +0 -25
  45. package/esm2022/lib/audit-log/audit-log-view/audit-log-view-routing.module.mjs +0 -18
  46. package/esm2022/lib/audit-log/audit-log-view/audit-log-view.component.mjs +0 -53
  47. package/esm2022/lib/audit-log/audit-log-view/audit-log-view.module.mjs +0 -24
  48. package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.mjs +0 -18
  49. package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model.component.mjs +0 -55
  50. package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model.module.mjs +0 -24
  51. package/esm2022/lib/audit-log/audit-log.module.mjs +0 -31
  52. package/esm2022/lib/audit-log/audit-log.service.mjs +0 -18
  53. package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.mjs +0 -18
  54. package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.mjs +0 -23
  55. package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.mjs +0 -28
  56. package/esm2022/lib/base-model/index.mjs +0 -8
  57. package/esm2022/lib/base-model/techlify-form/contract/techlify-form.contract.mjs +0 -191
  58. package/esm2022/lib/base-model/techlify-form/techlify-form.component.mjs +0 -134
  59. package/esm2022/lib/base-model/techlify-list/contract/techlify-list.contract.mjs +0 -69
  60. package/esm2022/lib/base-model/techlify-list/techlify-list.component.mjs +0 -331
  61. package/esm2022/lib/base-model/techlify-service.mjs +0 -68
  62. package/esm2022/lib/base-model/techlify-show/contract/techlify-show.contract.mjs +0 -84
  63. package/esm2022/lib/base-model/techlify-show/techlify-show.component.mjs +0 -120
  64. package/esm2022/lib/change-password/change-password-routing.module.mjs +0 -24
  65. package/esm2022/lib/change-password/change-password.component.mjs +0 -86
  66. package/esm2022/lib/change-password/change-password.module.mjs +0 -29
  67. package/esm2022/lib/column-selector/column-config.model.mjs +0 -3
  68. package/esm2022/lib/column-selector/column-selector/column-selector.component.mjs +0 -108
  69. package/esm2022/lib/column-selector/column-selector.module.mjs +0 -24
  70. package/esm2022/lib/column-selector/index.mjs +0 -4
  71. package/esm2022/lib/company-information/client.service.mjs +0 -19
  72. package/esm2022/lib/company-information/company-info-display/company-info-display.component.mjs +0 -44
  73. package/esm2022/lib/company-information/company-information/company-information.component.mjs +0 -120
  74. package/esm2022/lib/company-information/tenant-form-button/tenant-form-button.component.mjs +0 -36
  75. package/esm2022/lib/core/alert.service.mjs +0 -38
  76. package/esm2022/lib/core/api-prefix.interceptor.mjs +0 -26
  77. package/esm2022/lib/core/app-update.service.mjs +0 -64
  78. package/esm2022/lib/core/authentication.guard.mjs +0 -35
  79. package/esm2022/lib/core/authentication.service.mjs +0 -67
  80. package/esm2022/lib/core/cache.interceptor.mjs +0 -58
  81. package/esm2022/lib/core/config.service.mjs +0 -45
  82. package/esm2022/lib/core/core.module.mjs +0 -56
  83. package/esm2022/lib/core/credentials.service.mjs +0 -84
  84. package/esm2022/lib/core/environment.service.mjs +0 -22
  85. package/esm2022/lib/core/error-handler.interceptor.mjs +0 -60
  86. package/esm2022/lib/core/error-handler.service.mjs +0 -68
  87. package/esm2022/lib/core/filter.service.mjs +0 -40
  88. package/esm2022/lib/core/form-validator.service.mjs +0 -24
  89. package/esm2022/lib/core/header.interceptor.mjs +0 -24
  90. package/esm2022/lib/core/http-cache.service.mjs +0 -107
  91. package/esm2022/lib/core/http.service.mjs +0 -84
  92. package/esm2022/lib/core/index.mjs +0 -23
  93. package/esm2022/lib/core/logger.service.mjs +0 -100
  94. package/esm2022/lib/core/route-reusable-strategy.mjs +0 -36
  95. package/esm2022/lib/core/snack/snack.component.mjs +0 -33
  96. package/esm2022/lib/core/snack/snack.module.mjs +0 -36
  97. package/esm2022/lib/core/storage.service.mjs +0 -38
  98. package/esm2022/lib/core/techlify-config.model.mjs +0 -28
  99. package/esm2022/lib/core/token.interceptor.mjs +0 -28
  100. package/esm2022/lib/custom-icon/custom-icon-registry.service.mjs +0 -23
  101. package/esm2022/lib/custom-icon/custom-icon.component.mjs +0 -24
  102. package/esm2022/lib/custom-icon/custom-icon.module.mjs +0 -20
  103. package/esm2022/lib/custom-icon/custom-icons.registry.mjs +0 -42
  104. package/esm2022/lib/data-table/data-table.component.mjs +0 -203
  105. package/esm2022/lib/data-table/data-table.model.mjs +0 -11
  106. package/esm2022/lib/data-table/data-table.module.mjs +0 -24
  107. package/esm2022/lib/data-table/index.mjs +0 -3
  108. package/esm2022/lib/delete-button/techlify-delete-button.component.mjs +0 -74
  109. package/esm2022/lib/detail-layout/techlify-detail-layout.component.mjs +0 -11
  110. package/esm2022/lib/document-viewer/document-viewer.component.mjs +0 -64
  111. package/esm2022/lib/document-viewer/document-viewer.module.mjs +0 -32
  112. package/esm2022/lib/document-viewer/index.mjs +0 -3
  113. package/esm2022/lib/document-viewer/viewer-config.model.mjs +0 -3
  114. package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.mjs +0 -32
  115. package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.mjs +0 -73
  116. package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.mjs +0 -24
  117. package/esm2022/lib/email-subscription/email-subscription-for-user/index.mjs +0 -2
  118. package/esm2022/lib/email-subscription/email-subscription-routing.module.mjs +0 -18
  119. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.mjs +0 -18
  120. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.mjs +0 -104
  121. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.mjs +0 -28
  122. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.mjs +0 -2
  123. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.mjs +0 -34
  124. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.mjs +0 -160
  125. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.mjs +0 -28
  126. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.mjs +0 -2
  127. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.mjs +0 -18
  128. package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type.module.mjs +0 -22
  129. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.mjs +0 -18
  130. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.mjs +0 -100
  131. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.mjs +0 -27
  132. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.mjs +0 -2
  133. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.mjs +0 -34
  134. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.mjs +0 -164
  135. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.mjs +0 -32
  136. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.mjs +0 -2
  137. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.mjs +0 -18
  138. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.mjs +0 -51
  139. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.mjs +0 -24
  140. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.mjs +0 -2
  141. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.mjs +0 -18
  142. package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user.module.mjs +0 -22
  143. package/esm2022/lib/email-subscription/email-subscription.module.mjs +0 -22
  144. package/esm2022/lib/entity-files/entity-file-form/entity-file-form.component.mjs +0 -160
  145. package/esm2022/lib/entity-files/entity-file-list/entity-file-list.component.mjs +0 -251
  146. package/esm2022/lib/entity-files/entity-file-list-widget/entity-file-list-widget.component.mjs +0 -33
  147. package/esm2022/lib/entity-files/entity-file-list.module.mjs +0 -43
  148. package/esm2022/lib/entity-files/entity-file.service.mjs +0 -37
  149. package/esm2022/lib/entity-files/index.mjs +0 -5
  150. package/esm2022/lib/export-excel/export-excel-button/export-excel-button.component.mjs +0 -112
  151. package/esm2022/lib/export-excel/export-excel.module.mjs +0 -28
  152. package/esm2022/lib/file-dragdrop-uploader/file-dragdrop-uploader/file-dragdrop-uploader.component.mjs +0 -103
  153. package/esm2022/lib/file-dragdrop-uploader/file-dragdrop-uploader.module.mjs +0 -24
  154. package/esm2022/lib/file-dropper/file-dropper.component.mjs +0 -125
  155. package/esm2022/lib/file-dropper/file-dropper.model.mjs +0 -3
  156. package/esm2022/lib/file-dropper/file-dropper.module.mjs +0 -26
  157. package/esm2022/lib/file-dropper/index.mjs +0 -3
  158. package/esm2022/lib/file-upload-button/file-upload-button.component.mjs +0 -47
  159. package/esm2022/lib/forgot-password/forgot-password-routing.module.mjs +0 -22
  160. package/esm2022/lib/forgot-password/forgot-password.component.mjs +0 -69
  161. package/esm2022/lib/forgot-password/forgot-password.module.mjs +0 -26
  162. package/esm2022/lib/forgot-password/index.mjs +0 -3
  163. package/esm2022/lib/form-button/techlify-form-button.component.mjs +0 -39
  164. package/esm2022/lib/form-configuration/form-configuration-field-form/form-configuration-field-form-routing.module.mjs +0 -29
  165. package/esm2022/lib/form-configuration/form-configuration-field-form/form-configuration-field-form.component.mjs +0 -43
  166. package/esm2022/lib/form-configuration/form-configuration-field-form/form-configuration-field-form.module.mjs +0 -24
  167. package/esm2022/lib/form-configuration/form-configuration-for-form/form-configuration-for-form.component.mjs +0 -22
  168. package/esm2022/lib/form-configuration/form-configuration-for-form/form-configuration-for-form.module.mjs +0 -28
  169. package/esm2022/lib/form-configuration/form-configuration-form-field.service.mjs +0 -18
  170. package/esm2022/lib/form-configuration/form-configuration-form.service.mjs +0 -18
  171. package/esm2022/lib/form-configuration/form-configuration-utility.service.mjs +0 -37
  172. package/esm2022/lib/image-preview/image-preview.component.mjs +0 -26
  173. package/esm2022/lib/import-csv/data-import/data-import.component.mjs +0 -17
  174. package/esm2022/lib/import-csv/failed-items-list/failed-items-list.component.mjs +0 -34
  175. package/esm2022/lib/import-csv/field-mapping/field-mapping.component.mjs +0 -152
  176. package/esm2022/lib/import-csv/import-csv-config.mjs +0 -2
  177. package/esm2022/lib/import-csv/import-csv.component.mjs +0 -209
  178. package/esm2022/lib/import-csv/import-csv.module.mjs +0 -44
  179. package/esm2022/lib/import-csv/import-history-list/import-history-list.component.mjs +0 -70
  180. package/esm2022/lib/import-csv/import-success/import-success.component.mjs +0 -23
  181. package/esm2022/lib/ip-address-selector/ip-address-selector.module.mjs +0 -24
  182. package/esm2022/lib/ip-address-selector/ip-range-selector/ip-range-selector.component.mjs +0 -108
  183. package/esm2022/lib/loader/index.mjs +0 -2
  184. package/esm2022/lib/loader/loader.component.mjs +0 -23
  185. package/esm2022/lib/loader/loader.module.mjs +0 -28
  186. package/esm2022/lib/local-date-parser.mjs +0 -6
  187. package/esm2022/lib/locked-date/index.mjs +0 -6
  188. package/esm2022/lib/locked-date/locked-date-form/locked-date-form.component.mjs +0 -72
  189. package/esm2022/lib/locked-date/locked-date-lock-unlock-button/locked-date-lock-unlock-button.component.mjs +0 -35
  190. package/esm2022/lib/locked-date/locked-date.model.mjs +0 -3
  191. package/esm2022/lib/locked-date/locked-date.module.mjs +0 -34
  192. package/esm2022/lib/locked-date/locked-date.service.mjs +0 -25
  193. package/esm2022/lib/locked-date/locked-dates-list/locked-date-list.component.mjs +0 -62
  194. package/esm2022/lib/login/index.mjs +0 -3
  195. package/esm2022/lib/login/login-form-fields/login-form-fields.component.mjs +0 -152
  196. package/esm2022/lib/login/login-routing.module.mjs +0 -23
  197. package/esm2022/lib/login/login.component.mjs +0 -88
  198. package/esm2022/lib/login/login.module.mjs +0 -33
  199. package/esm2022/lib/login-history-for-user/login-history-for-user-routing.module.mjs +0 -26
  200. package/esm2022/lib/login-history-for-user/login-history-for-user.component.mjs +0 -91
  201. package/esm2022/lib/login-history-for-user/login-history-for-user.module.mjs +0 -24
  202. package/esm2022/lib/material.module.mjs +0 -128
  203. package/esm2022/lib/ngx-techlify-users/ngx-techlify-users-routing.module.mjs +0 -43
  204. package/esm2022/lib/ngx-techlify-users/ngx-techlify-users.module.mjs +0 -22
  205. package/esm2022/lib/note/comment-form/comment-form.component.mjs +0 -76
  206. package/esm2022/lib/note/index.mjs +0 -5
  207. package/esm2022/lib/note/note-comment-list/note-comment-list.component.mjs +0 -102
  208. package/esm2022/lib/note/note-form/note-form.component.mjs +0 -63
  209. package/esm2022/lib/note/note-list/note-list.component.mjs +0 -111
  210. package/esm2022/lib/note/note.module.mjs +0 -30
  211. package/esm2022/lib/note/note.service.mjs +0 -18
  212. package/esm2022/lib/number-input-button/index.mjs +0 -3
  213. package/esm2022/lib/number-input-button/number-input-button/number-input-button.component.mjs +0 -104
  214. package/esm2022/lib/number-input-button/number-input-button.module.mjs +0 -24
  215. package/esm2022/lib/number-selector/number-selector.component.mjs +0 -116
  216. package/esm2022/lib/ordinal-pipe/ordinal-pipe.mjs +0 -30
  217. package/esm2022/lib/password-requirement-check/password-check-result.mjs +0 -2
  218. package/esm2022/lib/password-requirement-check/password-check.service.mjs +0 -43
  219. package/esm2022/lib/password-requirement-check/password-requirement-check/password-requirement-check.component.mjs +0 -56
  220. package/esm2022/lib/password-requirement-check/password-requirement-check.module.mjs +0 -24
  221. package/esm2022/lib/pdf-button/pdf-button.component.mjs +0 -35
  222. package/esm2022/lib/pdf-button/pdf-button.module.mjs +0 -23
  223. package/esm2022/lib/phone-number-selector/country.service.mjs +0 -31
  224. package/esm2022/lib/phone-number-selector/phone-number-selector.component.mjs +0 -172
  225. package/esm2022/lib/pipes/file-size.pipe.mjs +0 -21
  226. package/esm2022/lib/pipes/wrap.pipe.mjs +0 -20
  227. package/esm2022/lib/profile/index.mjs +0 -3
  228. package/esm2022/lib/profile/profile-edit.component.mjs +0 -75
  229. package/esm2022/lib/profile/profile-routing.module.mjs +0 -23
  230. package/esm2022/lib/profile/profile.module.mjs +0 -28
  231. package/esm2022/lib/read-more/read-more.component.mjs +0 -43
  232. package/esm2022/lib/read-more/read-more.module.mjs +0 -26
  233. package/esm2022/lib/request-helper/request-helper.service.mjs +0 -131
  234. package/esm2022/lib/reset-password/index.mjs +0 -4
  235. package/esm2022/lib/reset-password/reset-password-routing.module.mjs +0 -22
  236. package/esm2022/lib/reset-password/reset-password.component.mjs +0 -89
  237. package/esm2022/lib/reset-password/reset-password.module.mjs +0 -30
  238. package/esm2022/lib/reset-password/reset-password.service.mjs +0 -25
  239. package/esm2022/lib/restrictors/index.mjs +0 -4
  240. package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level-selector/restrictor-level-selector.component.mjs +0 -91
  241. package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level-selector.module.mjs +0 -24
  242. package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level.service.mjs +0 -19
  243. package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status-selector/restrictor-status-selector.component.mjs +0 -91
  244. package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status-selector.module.mjs +0 -24
  245. package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status.service.mjs +0 -19
  246. package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type-selector/restrictor-type-selector.component.mjs +0 -92
  247. package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type-selector.module.mjs +0 -24
  248. package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type.service.mjs +0 -19
  249. package/esm2022/lib/restrictors/restrictor.service.mjs +0 -19
  250. package/esm2022/lib/restrictors/restrictors-form/restrictors-form.component.mjs +0 -101
  251. package/esm2022/lib/restrictors/restrictors-form-page/restrictors-form-page.component.mjs +0 -43
  252. package/esm2022/lib/restrictors/restrictors-list-page/restrictors-list-page.component.mjs +0 -141
  253. package/esm2022/lib/restrictors/restrictors-routing.module.mjs +0 -42
  254. package/esm2022/lib/restrictors/restrictors.module.mjs +0 -47
  255. package/esm2022/lib/role/index.mjs +0 -10
  256. package/esm2022/lib/role/permission/permission.model.mjs +0 -9
  257. package/esm2022/lib/role/permission/permission.module.mjs +0 -30
  258. package/esm2022/lib/role/permission/permission.routes.mjs +0 -26
  259. package/esm2022/lib/role/permission/permissions-management.component.mjs +0 -127
  260. package/esm2022/lib/role/role-form-button.component.mjs +0 -44
  261. package/esm2022/lib/role/role-form.component.mjs +0 -82
  262. package/esm2022/lib/role/role-list/role-list.component.mjs +0 -120
  263. package/esm2022/lib/role/role-view/role-view-routing.module.mjs +0 -26
  264. package/esm2022/lib/role/role-view/role-view.component.mjs +0 -38
  265. package/esm2022/lib/role/role-view/role-view.module.mjs +0 -28
  266. package/esm2022/lib/role/role.model.mjs +0 -56
  267. package/esm2022/lib/role/role.module.mjs +0 -38
  268. package/esm2022/lib/role/role.routes.mjs +0 -31
  269. package/esm2022/lib/role/role.service.mjs +0 -23
  270. package/esm2022/lib/searchable-selector/index.mjs +0 -2
  271. package/esm2022/lib/searchable-selector/searchable-selector.component.mjs +0 -384
  272. package/esm2022/lib/searchable-selector/searchable-selector.module.mjs +0 -36
  273. package/esm2022/lib/shared.module.mjs +0 -85
  274. package/esm2022/lib/signup/index.mjs +0 -3
  275. package/esm2022/lib/signup/signup-routing.module.mjs +0 -22
  276. package/esm2022/lib/signup/signup.component.mjs +0 -78
  277. package/esm2022/lib/signup/signup.module.mjs +0 -26
  278. package/esm2022/lib/subscription/subscription-form/subscription-form-routing.module.mjs +0 -18
  279. package/esm2022/lib/subscription/subscription-form/subscription-form.component.mjs +0 -148
  280. package/esm2022/lib/subscription/subscription-form/subscription-form.module.mjs +0 -26
  281. package/esm2022/lib/subscription/subscription-listing/subscription-listing-routing.module.mjs +0 -26
  282. package/esm2022/lib/subscription/subscription-listing/subscription-listing.component.mjs +0 -128
  283. package/esm2022/lib/subscription/subscription-listing/subscription-listing.module.mjs +0 -30
  284. package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing-routing.module.mjs +0 -26
  285. package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing.component.mjs +0 -116
  286. package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing.module.mjs +0 -25
  287. package/esm2022/lib/subscription/subscription-package-view/subscription-package-view-routing.module.mjs +0 -26
  288. package/esm2022/lib/subscription/subscription-package-view/subscription-package-view.component.mjs +0 -38
  289. package/esm2022/lib/subscription/subscription-package-view/subscription-package-view.module.mjs +0 -29
  290. package/esm2022/lib/subscription/subscription-package.service.mjs +0 -21
  291. package/esm2022/lib/subscription/subscription-status.enum.mjs +0 -6
  292. package/esm2022/lib/subscription/subscription.service.mjs +0 -40
  293. package/esm2022/lib/subscription/techlify-subscription-directive.module.mjs +0 -20
  294. package/esm2022/lib/subscription/techlify-subscription.directive.mjs +0 -33
  295. package/esm2022/lib/tag/tag.service.mjs +0 -18
  296. package/esm2022/lib/tag/techlify-tagger-tag-form/techlify-tagger-tag-form.component.mjs +0 -71
  297. package/esm2022/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.mjs +0 -15
  298. package/esm2022/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.mjs +0 -266
  299. package/esm2022/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.mjs +0 -22
  300. package/esm2022/lib/tag/techlify-tagger-tag-list/techlify-tagger-tag-list.component.mjs +0 -57
  301. package/esm2022/lib/tag/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.mjs +0 -181
  302. package/esm2022/lib/tag/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.mjs +0 -22
  303. package/esm2022/lib/techlify-app-selector/techlify-app-selector.component.mjs +0 -50
  304. package/esm2022/lib/techlify-app-selector/techlify-app-selector.module.mjs +0 -28
  305. package/esm2022/lib/techlify-auto-complete-select/techlify-auto-complete-select.component.mjs +0 -185
  306. package/esm2022/lib/techlify-company-switcher/index.mjs +0 -3
  307. package/esm2022/lib/techlify-company-switcher/techlify-company-switcher/techlify-company-switcher.component.mjs +0 -70
  308. package/esm2022/lib/techlify-company-switcher/techlify-company-switcher.module.mjs +0 -32
  309. package/esm2022/lib/techlify-currency-pipe/techlify-currency-pipe.directive.mjs +0 -27
  310. package/esm2022/lib/techlify-feature/on-off-switch/on-off-switch.component.mjs +0 -24
  311. package/esm2022/lib/techlify-feature/techlify-feature-directive.module.mjs +0 -20
  312. package/esm2022/lib/techlify-feature/techlify-feature-enabled.directive.mjs +0 -32
  313. package/esm2022/lib/techlify-feature/techlify-feature-listing.component.mjs +0 -141
  314. package/esm2022/lib/techlify-feature/techlify-feature.module.mjs +0 -28
  315. package/esm2022/lib/techlify-feature/techlify-feature.routing.mjs +0 -12
  316. package/esm2022/lib/techlify-feature/techlify-feature.service.mjs +0 -43
  317. package/esm2022/lib/techlify-icon/techlify-icon.component.mjs +0 -77
  318. package/esm2022/lib/techlify-icon/techlify-icon.module.mjs +0 -24
  319. package/esm2022/lib/techlify-notifications/index.mjs +0 -9
  320. package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user-routing.module.mjs +0 -26
  321. package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.component.mjs +0 -52
  322. package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.module.mjs +0 -26
  323. package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-subscription.service.mjs +0 -18
  324. package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-type.service.mjs +0 -18
  325. package/esm2022/lib/techlify-notifications/techlify-notification-routing.module.mjs +0 -18
  326. package/esm2022/lib/techlify-notifications/techlify-notification.module.mjs +0 -22
  327. package/esm2022/lib/techlify-update/techlify-update-form/techlify-update-form.component.mjs +0 -115
  328. package/esm2022/lib/techlify-update/techlify-update-form/techlify-update-form.module.mjs +0 -26
  329. package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.mjs +0 -28
  330. package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history.component.mjs +0 -143
  331. package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history.module.mjs +0 -23
  332. package/esm2022/lib/techlify-update/techlify-update-routing.module.mjs +0 -28
  333. package/esm2022/lib/techlify-update/techlify-update.module.mjs +0 -27
  334. package/esm2022/lib/techlify-update/techlify-update.service.mjs +0 -41
  335. package/esm2022/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.mjs +0 -160
  336. package/esm2022/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.component.mjs +0 -58
  337. package/esm2022/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.module.mjs +0 -22
  338. package/esm2022/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.mjs +0 -76
  339. package/esm2022/lib/techlify-update/update-notifier/update-notifier.component.mjs +0 -53
  340. package/esm2022/lib/techlify-update/update-notifier/update-notifier.module.mjs +0 -27
  341. package/esm2022/lib/techlify-update/update-view/update-view.component.mjs +0 -37
  342. package/esm2022/lib/techlify-update/update-view/update-view.module.mjs +0 -22
  343. package/esm2022/lib/techlify-view/my-techlify-view-listing/my-techlify-view-listing.component.mjs +0 -90
  344. package/esm2022/lib/techlify-view/my-techlify-view-listing/my-techlify-view-listing.module.mjs +0 -24
  345. package/esm2022/lib/techlify-view/my-techlify-view-listing/my-techlify-view.service.mjs +0 -18
  346. package/esm2022/lib/techlify-view/techlify-view-form/techlify-view-form.component.mjs +0 -95
  347. package/esm2022/lib/techlify-view/techlify-view-form/techlify-view-form.module.mjs +0 -20
  348. package/esm2022/lib/techlify-view/techlify-view.service.mjs +0 -18
  349. package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button-routing.module.mjs +0 -18
  350. package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button.component.mjs +0 -42
  351. package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button.module.mjs +0 -28
  352. package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list-routing.module.mjs +0 -18
  353. package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list.component.mjs +0 -87
  354. package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list.module.mjs +0 -24
  355. package/esm2022/lib/timeline-activity/timeline-activity.service.mjs +0 -18
  356. package/esm2022/lib/timeline-filter/calculate-timeline.mjs +0 -103
  357. package/esm2022/lib/timeline-filter/index.mjs +0 -4
  358. package/esm2022/lib/timeline-filter/timeline-filter-routing.module.mjs +0 -18
  359. package/esm2022/lib/timeline-filter/timeline-filter.component.mjs +0 -290
  360. package/esm2022/lib/timeline-filter/timeline-filter.module.mjs +0 -60
  361. package/esm2022/lib/timeline-filter/timeline.model.mjs +0 -18
  362. package/esm2022/lib/user/app-admin-user-list/app-admin-user-list.component.mjs +0 -155
  363. package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.component.mjs +0 -52
  364. package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.module.mjs +0 -44
  365. package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.routes.mjs +0 -22
  366. package/esm2022/lib/user/current-user.service.mjs +0 -152
  367. package/esm2022/lib/user/index.mjs +0 -14
  368. package/esm2022/lib/user/user-enable-button-component/user-enable-button.component.mjs +0 -93
  369. package/esm2022/lib/user/user-enable-button-component/user-enable-button.module.mjs +0 -20
  370. package/esm2022/lib/user/user-explore.component.mjs +0 -49
  371. package/esm2022/lib/user/user-form/user-form.component.mjs +0 -200
  372. package/esm2022/lib/user/user-list/user-list.component.mjs +0 -145
  373. package/esm2022/lib/user/user-sessions/user-session.service.mjs +0 -18
  374. package/esm2022/lib/user/user-sessions/user-sessions/user-sessions.component.mjs +0 -47
  375. package/esm2022/lib/user/user-sessions/user-sessions/user-sessions.module.mjs +0 -20
  376. package/esm2022/lib/user/user-type.enum.mjs +0 -7
  377. package/esm2022/lib/user/user-view.component.mjs +0 -58
  378. package/esm2022/lib/user/user.model.mjs +0 -31
  379. package/esm2022/lib/user/user.module.mjs +0 -68
  380. package/esm2022/lib/user/user.routes.mjs +0 -30
  381. package/esm2022/lib/user/user.service.mjs +0 -42
  382. package/esm2022/lib/user-client-enable-disable-button/user-client-enable-disable-button.component.mjs +0 -53
  383. package/esm2022/lib/user-client-enable-disable-button/user-client-enable-disable-button.module.mjs +0 -20
  384. package/esm2022/lib/user-clients-list/user-clients-list.component.mjs +0 -50
  385. package/esm2022/lib/user-clients-list/user-clients-list.module.mjs +0 -24
  386. package/esm2022/lib/user-clients-list/user-tenant.service.mjs +0 -24
  387. package/esm2022/lib/user-config/index.mjs +0 -3
  388. package/esm2022/lib/user-config/user-config.model.mjs +0 -50
  389. package/esm2022/lib/user-config/user-config.service.mjs +0 -65
  390. package/esm2022/lib/user-menu/user-menu.component.mjs +0 -39
  391. package/esm2022/lib/user-menu/user-menu.module.mjs +0 -28
  392. package/esm2022/lib/user-selector/index.mjs +0 -3
  393. package/esm2022/lib/user-selector/user-data.service.mjs +0 -35
  394. package/esm2022/lib/user-selector/user-selector.component.mjs +0 -86
  395. package/esm2022/lib/user-selector/user-selector.module.mjs +0 -26
  396. package/esm2022/lib/utility/date-utils.service.mjs +0 -89
  397. package/esm2022/lib/utility/index.mjs +0 -3
  398. package/esm2022/lib/utility/num-items-selector.component.mjs +0 -31
  399. package/esm2022/lib/utility/utility.module.mjs +0 -22
  400. package/esm2022/lib/validators/date.validator.mjs +0 -31
  401. package/esm2022/ngx-techlify-core.mjs +0 -5
  402. package/esm2022/public-api.mjs +0 -232
  403. package/index.d.ts +0 -5
  404. package/lib/access-control-config/access-control-config-form/access-control-config-form.component.d.ts +0 -44
  405. package/lib/access-control-config/access-control-config-routing.module.d.ts +0 -7
  406. package/lib/access-control-config/access-control-config.component.d.ts +0 -30
  407. package/lib/access-control-config/access-control-config.model.d.ts +0 -17
  408. package/lib/access-control-config/access-control-config.module.d.ts +0 -10
  409. package/lib/access-control-config/access-control-config.service.d.ts +0 -15
  410. package/lib/action-popup/action-popup.component.d.ts +0 -17
  411. package/lib/action-popup/action-popup.model.d.ts +0 -5
  412. package/lib/action-popup/action-popup.module.d.ts +0 -9
  413. package/lib/action-popup/index.d.ts +0 -2
  414. package/lib/app-admin/admin-role/admin-role-list/admin-role-list-routing.module.d.ts +0 -7
  415. package/lib/app-admin/admin-role/admin-role-list/admin-role-list.component.d.ts +0 -29
  416. package/lib/app-admin/admin-role/admin-role-list/admin-role-list.module.d.ts +0 -11
  417. package/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.component.d.ts +0 -28
  418. package/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.module.d.ts +0 -8
  419. package/lib/app-admin/admin-role/admin-role.service.d.ts +0 -11
  420. package/lib/app-admin/app-admin-home/app-admin-home.component.d.ts +0 -5
  421. package/lib/app-admin/app-admin-routing.module.d.ts +0 -7
  422. package/lib/app-admin/app-admin.module.d.ts +0 -8
  423. package/lib/app-admin/tenant/tenant-list-widget/tenant-list-widget.component.d.ts +0 -13
  424. package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts +0 -7
  425. package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts +0 -20
  426. package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts +0 -11
  427. package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts +0 -7
  428. package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +0 -33
  429. package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +0 -10
  430. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts +0 -7
  431. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +0 -20
  432. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +0 -9
  433. package/lib/audit-log/audit-log-routing.module.d.ts +0 -7
  434. package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts +0 -7
  435. package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts +0 -20
  436. package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts +0 -9
  437. package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts +0 -7
  438. package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts +0 -18
  439. package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts +0 -9
  440. package/lib/audit-log/audit-log.module.d.ts +0 -10
  441. package/lib/audit-log/audit-log.service.d.ts +0 -8
  442. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts +0 -7
  443. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts +0 -12
  444. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts +0 -10
  445. package/lib/base-model/index.d.ts +0 -7
  446. package/lib/base-model/techlify-form/contract/techlify-form.contract.d.ts +0 -18
  447. package/lib/base-model/techlify-form/techlify-form.component.d.ts +0 -69
  448. package/lib/base-model/techlify-list/contract/techlify-list.contract.d.ts +0 -9
  449. package/lib/base-model/techlify-list/techlify-list.component.d.ts +0 -175
  450. package/lib/base-model/techlify-service.d.ts +0 -54
  451. package/lib/base-model/techlify-show/contract/techlify-show.contract.d.ts +0 -17
  452. package/lib/base-model/techlify-show/techlify-show.component.d.ts +0 -71
  453. package/lib/change-password/change-password-routing.module.d.ts +0 -7
  454. package/lib/change-password/change-password.component.d.ts +0 -27
  455. package/lib/change-password/change-password.module.d.ts +0 -10
  456. package/lib/column-selector/column-config.model.d.ts +0 -7
  457. package/lib/column-selector/column-selector/column-selector.component.d.ts +0 -27
  458. package/lib/column-selector/column-selector.module.d.ts +0 -8
  459. package/lib/column-selector/index.d.ts +0 -3
  460. package/lib/company-information/client.service.d.ts +0 -9
  461. package/lib/company-information/company-info-display/company-info-display.component.d.ts +0 -16
  462. package/lib/company-information/company-information/company-information.component.d.ts +0 -27
  463. package/lib/company-information/tenant-form-button/tenant-form-button.component.d.ts +0 -14
  464. package/lib/core/alert.service.d.ts +0 -15
  465. package/lib/core/api-prefix.interceptor.d.ts +0 -14
  466. package/lib/core/app-update.service.d.ts +0 -25
  467. package/lib/core/authentication.guard.d.ts +0 -13
  468. package/lib/core/authentication.service.d.ts +0 -28
  469. package/lib/core/cache.interceptor.d.ts +0 -24
  470. package/lib/core/config.service.d.ts +0 -22
  471. package/lib/core/core.module.d.ts +0 -10
  472. package/lib/core/credentials.service.d.ts +0 -39
  473. package/lib/core/environment.service.d.ts +0 -8
  474. package/lib/core/error-handler.interceptor.d.ts +0 -26
  475. package/lib/core/error-handler.service.d.ts +0 -19
  476. package/lib/core/filter.service.d.ts +0 -14
  477. package/lib/core/form-validator.service.d.ts +0 -11
  478. package/lib/core/header.interceptor.d.ts +0 -11
  479. package/lib/core/http-cache.service.d.ts +0 -57
  480. package/lib/core/http.service.d.ts +0 -59
  481. package/lib/core/index.d.ts +0 -22
  482. package/lib/core/logger.service.d.ts +0 -85
  483. package/lib/core/route-reusable-strategy.d.ts +0 -16
  484. package/lib/core/snack/snack.component.d.ts +0 -13
  485. package/lib/core/snack/snack.module.d.ts +0 -10
  486. package/lib/core/storage.service.d.ts +0 -18
  487. package/lib/core/techlify-config.model.d.ts +0 -18
  488. package/lib/core/token.interceptor.d.ts +0 -14
  489. package/lib/custom-icon/custom-icon-registry.service.d.ts +0 -10
  490. package/lib/custom-icon/custom-icon.component.d.ts +0 -11
  491. package/lib/custom-icon/custom-icon.module.d.ts +0 -8
  492. package/lib/custom-icon/custom-icons.registry.d.ts +0 -4
  493. package/lib/data-table/data-table.component.d.ts +0 -61
  494. package/lib/data-table/data-table.model.d.ts +0 -46
  495. package/lib/data-table/data-table.module.d.ts +0 -8
  496. package/lib/data-table/index.d.ts +0 -2
  497. package/lib/delete-button/techlify-delete-button.component.d.ts +0 -24
  498. package/lib/detail-layout/techlify-detail-layout.component.d.ts +0 -5
  499. package/lib/document-viewer/document-viewer.component.d.ts +0 -19
  500. package/lib/document-viewer/document-viewer.module.d.ts +0 -10
  501. package/lib/document-viewer/index.d.ts +0 -2
  502. package/lib/document-viewer/viewer-config.model.d.ts +0 -5
  503. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts +0 -12
  504. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts +0 -19
  505. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts +0 -9
  506. package/lib/email-subscription/email-subscription-for-user/index.d.ts +0 -1
  507. package/lib/email-subscription/email-subscription-routing.module.d.ts +0 -7
  508. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts +0 -7
  509. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts +0 -35
  510. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts +0 -10
  511. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts +0 -1
  512. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts +0 -14
  513. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts +0 -32
  514. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts +0 -10
  515. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts +0 -1
  516. package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts +0 -7
  517. package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts +0 -8
  518. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts +0 -7
  519. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts +0 -35
  520. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts +0 -10
  521. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts +0 -1
  522. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts +0 -14
  523. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts +0 -34
  524. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts +0 -11
  525. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts +0 -1
  526. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts +0 -7
  527. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts +0 -16
  528. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts +0 -9
  529. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts +0 -1
  530. package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts +0 -7
  531. package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts +0 -8
  532. package/lib/email-subscription/email-subscription.module.d.ts +0 -8
  533. package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts +0 -42
  534. package/lib/entity-files/entity-file-list/entity-file-list.component.d.ts +0 -72
  535. package/lib/entity-files/entity-file-list-widget/entity-file-list-widget.component.d.ts +0 -9
  536. package/lib/entity-files/entity-file-list.module.d.ts +0 -13
  537. package/lib/entity-files/entity-file.service.d.ts +0 -11
  538. package/lib/entity-files/index.d.ts +0 -4
  539. package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts +0 -21
  540. package/lib/export-excel/export-excel.module.d.ts +0 -10
  541. package/lib/file-dragdrop-uploader/file-dragdrop-uploader/file-dragdrop-uploader.component.d.ts +0 -31
  542. package/lib/file-dragdrop-uploader/file-dragdrop-uploader.module.d.ts +0 -8
  543. package/lib/file-dropper/file-dropper.component.d.ts +0 -36
  544. package/lib/file-dropper/file-dropper.model.d.ts +0 -10
  545. package/lib/file-dropper/file-dropper.module.d.ts +0 -9
  546. package/lib/file-dropper/index.d.ts +0 -2
  547. package/lib/file-upload-button/file-upload-button.component.d.ts +0 -20
  548. package/lib/forgot-password/forgot-password-routing.module.d.ts +0 -7
  549. package/lib/forgot-password/forgot-password.component.d.ts +0 -34
  550. package/lib/forgot-password/forgot-password.module.d.ts +0 -9
  551. package/lib/forgot-password/index.d.ts +0 -2
  552. package/lib/form-button/techlify-form-button.component.d.ts +0 -15
  553. package/lib/form-configuration/form-configuration-field-form/form-configuration-field-form-routing.module.d.ts +0 -7
  554. package/lib/form-configuration/form-configuration-field-form/form-configuration-field-form.component.d.ts +0 -18
  555. package/lib/form-configuration/form-configuration-field-form/form-configuration-field-form.module.d.ts +0 -9
  556. package/lib/form-configuration/form-configuration-for-form/form-configuration-for-form.component.d.ts +0 -10
  557. package/lib/form-configuration/form-configuration-for-form/form-configuration-for-form.module.d.ts +0 -10
  558. package/lib/form-configuration/form-configuration-form-field.service.d.ts +0 -8
  559. package/lib/form-configuration/form-configuration-form.service.d.ts +0 -8
  560. package/lib/form-configuration/form-configuration-utility.service.d.ts +0 -18
  561. package/lib/image-preview/image-preview.component.d.ts +0 -9
  562. package/lib/import-csv/data-import/data-import.component.d.ts +0 -9
  563. package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts +0 -15
  564. package/lib/import-csv/field-mapping/field-mapping.component.d.ts +0 -37
  565. package/lib/import-csv/import-csv-config.d.ts +0 -18
  566. package/lib/import-csv/import-csv.component.d.ts +0 -38
  567. package/lib/import-csv/import-csv.module.d.ts +0 -14
  568. package/lib/import-csv/import-history-list/import-history-list.component.d.ts +0 -23
  569. package/lib/import-csv/import-success/import-success.component.d.ts +0 -11
  570. package/lib/ip-address-selector/ip-address-selector.module.d.ts +0 -8
  571. package/lib/ip-address-selector/ip-range-selector/ip-range-selector.component.d.ts +0 -28
  572. package/lib/loader/index.d.ts +0 -1
  573. package/lib/loader/loader.component.d.ts +0 -11
  574. package/lib/loader/loader.module.d.ts +0 -9
  575. package/lib/local-date-parser.d.ts +0 -1
  576. package/lib/locked-date/index.d.ts +0 -5
  577. package/lib/locked-date/locked-date-form/locked-date-form.component.d.ts +0 -24
  578. package/lib/locked-date/locked-date-lock-unlock-button/locked-date-lock-unlock-button.component.d.ts +0 -13
  579. package/lib/locked-date/locked-date.model.d.ts +0 -10
  580. package/lib/locked-date/locked-date.module.d.ts +0 -10
  581. package/lib/locked-date/locked-date.service.d.ts +0 -11
  582. package/lib/locked-date/locked-dates-list/locked-date-list.component.d.ts +0 -19
  583. package/lib/login/index.d.ts +0 -2
  584. package/lib/login/login-form-fields/login-form-fields.component.d.ts +0 -41
  585. package/lib/login/login-routing.module.d.ts +0 -7
  586. package/lib/login/login.component.d.ts +0 -36
  587. package/lib/login/login.module.d.ts +0 -10
  588. package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts +0 -7
  589. package/lib/login-history-for-user/login-history-for-user.component.d.ts +0 -25
  590. package/lib/login-history-for-user/login-history-for-user.module.d.ts +0 -9
  591. package/lib/material.module.d.ts +0 -30
  592. package/lib/ngx-techlify-users/ngx-techlify-users-routing.module.d.ts +0 -7
  593. package/lib/ngx-techlify-users/ngx-techlify-users.module.d.ts +0 -8
  594. package/lib/note/comment-form/comment-form.component.d.ts +0 -25
  595. package/lib/note/index.d.ts +0 -4
  596. package/lib/note/note-comment-list/note-comment-list.component.d.ts +0 -33
  597. package/lib/note/note-form/note-form.component.d.ts +0 -29
  598. package/lib/note/note-list/note-list.component.d.ts +0 -30
  599. package/lib/note/note.module.d.ts +0 -9
  600. package/lib/note/note.service.d.ts +0 -8
  601. package/lib/number-input-button/index.d.ts +0 -2
  602. package/lib/number-input-button/number-input-button/number-input-button.component.d.ts +0 -32
  603. package/lib/number-input-button/number-input-button.module.d.ts +0 -8
  604. package/lib/number-selector/number-selector.component.d.ts +0 -44
  605. package/lib/ordinal-pipe/ordinal-pipe.d.ts +0 -7
  606. package/lib/password-requirement-check/password-check-result.d.ts +0 -7
  607. package/lib/password-requirement-check/password-check.service.d.ts +0 -15
  608. package/lib/password-requirement-check/password-requirement-check/password-requirement-check.component.d.ts +0 -23
  609. package/lib/password-requirement-check/password-requirement-check.module.d.ts +0 -8
  610. package/lib/pdf-button/pdf-button.component.d.ts +0 -11
  611. package/lib/pdf-button/pdf-button.module.d.ts +0 -8
  612. package/lib/phone-number-selector/country.service.d.ts +0 -12
  613. package/lib/phone-number-selector/phone-number-selector.component.d.ts +0 -47
  614. package/lib/pipes/file-size.pipe.d.ts +0 -7
  615. package/lib/pipes/wrap.pipe.d.ts +0 -7
  616. package/lib/profile/index.d.ts +0 -2
  617. package/lib/profile/profile-edit.component.d.ts +0 -33
  618. package/lib/profile/profile-routing.module.d.ts +0 -7
  619. package/lib/profile/profile.module.d.ts +0 -9
  620. package/lib/read-more/read-more.component.d.ts +0 -15
  621. package/lib/read-more/read-more.module.d.ts +0 -9
  622. package/lib/request-helper/request-helper.service.d.ts +0 -59
  623. package/lib/reset-password/index.d.ts +0 -3
  624. package/lib/reset-password/reset-password-routing.module.d.ts +0 -7
  625. package/lib/reset-password/reset-password.component.d.ts +0 -28
  626. package/lib/reset-password/reset-password.module.d.ts +0 -10
  627. package/lib/reset-password/reset-password.service.d.ts +0 -11
  628. package/lib/restrictors/index.d.ts +0 -3
  629. package/lib/restrictors/restrictor-level-selector/restrictor-level-selector/restrictor-level-selector.component.d.ts +0 -34
  630. package/lib/restrictors/restrictor-level-selector/restrictor-level-selector.module.d.ts +0 -8
  631. package/lib/restrictors/restrictor-level-selector/restrictor-level.service.d.ts +0 -9
  632. package/lib/restrictors/restrictor-status-selector/restrictor-status-selector/restrictor-status-selector.component.d.ts +0 -34
  633. package/lib/restrictors/restrictor-status-selector/restrictor-status-selector.module.d.ts +0 -8
  634. package/lib/restrictors/restrictor-status-selector/restrictor-status.service.d.ts +0 -9
  635. package/lib/restrictors/restrictor-type-selector/restrictor-type-selector/restrictor-type-selector.component.d.ts +0 -34
  636. package/lib/restrictors/restrictor-type-selector/restrictor-type-selector.module.d.ts +0 -8
  637. package/lib/restrictors/restrictor-type-selector/restrictor-type.service.d.ts +0 -9
  638. package/lib/restrictors/restrictor.service.d.ts +0 -9
  639. package/lib/restrictors/restrictors-form/restrictors-form.component.d.ts +0 -30
  640. package/lib/restrictors/restrictors-form-page/restrictors-form-page.component.d.ts +0 -21
  641. package/lib/restrictors/restrictors-list-page/restrictors-list-page.component.d.ts +0 -50
  642. package/lib/restrictors/restrictors-routing.module.d.ts +0 -7
  643. package/lib/restrictors/restrictors.module.d.ts +0 -15
  644. package/lib/role/index.d.ts +0 -9
  645. package/lib/role/permission/permission.model.d.ts +0 -11
  646. package/lib/role/permission/permission.module.d.ts +0 -9
  647. package/lib/role/permission/permission.routes.d.ts +0 -7
  648. package/lib/role/permission/permissions-management.component.d.ts +0 -41
  649. package/lib/role/role-form-button.component.d.ts +0 -16
  650. package/lib/role/role-form.component.d.ts +0 -32
  651. package/lib/role/role-list/role-list.component.d.ts +0 -33
  652. package/lib/role/role-view/role-view-routing.module.d.ts +0 -7
  653. package/lib/role/role-view/role-view.component.d.ts +0 -16
  654. package/lib/role/role-view/role-view.module.d.ts +0 -9
  655. package/lib/role/role.model.d.ts +0 -29
  656. package/lib/role/role.module.d.ts +0 -11
  657. package/lib/role/role.routes.d.ts +0 -7
  658. package/lib/role/role.service.d.ts +0 -10
  659. package/lib/searchable-selector/index.d.ts +0 -1
  660. package/lib/searchable-selector/searchable-selector.component.d.ts +0 -95
  661. package/lib/searchable-selector/searchable-selector.module.d.ts +0 -11
  662. package/lib/shared.module.d.ts +0 -22
  663. package/lib/signup/index.d.ts +0 -2
  664. package/lib/signup/signup-routing.module.d.ts +0 -7
  665. package/lib/signup/signup.component.d.ts +0 -29
  666. package/lib/signup/signup.module.d.ts +0 -9
  667. package/lib/subscription/subscription-form/subscription-form-routing.module.d.ts +0 -7
  668. package/lib/subscription/subscription-form/subscription-form.component.d.ts +0 -31
  669. package/lib/subscription/subscription-form/subscription-form.module.d.ts +0 -9
  670. package/lib/subscription/subscription-listing/subscription-listing-routing.module.d.ts +0 -7
  671. package/lib/subscription/subscription-listing/subscription-listing.component.d.ts +0 -25
  672. package/lib/subscription/subscription-listing/subscription-listing.module.d.ts +0 -10
  673. package/lib/subscription/subscription-package-listing/subscription-package-listing-routing.module.d.ts +0 -7
  674. package/lib/subscription/subscription-package-listing/subscription-package-listing.component.d.ts +0 -28
  675. package/lib/subscription/subscription-package-listing/subscription-package-listing.module.d.ts +0 -9
  676. package/lib/subscription/subscription-package-view/subscription-package-view-routing.module.d.ts +0 -7
  677. package/lib/subscription/subscription-package-view/subscription-package-view.component.d.ts +0 -15
  678. package/lib/subscription/subscription-package-view/subscription-package-view.module.d.ts +0 -10
  679. package/lib/subscription/subscription-package.service.d.ts +0 -9
  680. package/lib/subscription/subscription-status.enum.d.ts +0 -4
  681. package/lib/subscription/subscription.service.d.ts +0 -12
  682. package/lib/subscription/techlify-subscription-directive.module.d.ts +0 -8
  683. package/lib/subscription/techlify-subscription.directive.d.ts +0 -14
  684. package/lib/tag/tag.service.d.ts +0 -8
  685. package/lib/tag/techlify-tagger-tag-form/techlify-tagger-tag-form.component.d.ts +0 -22
  686. package/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.d.ts +0 -12
  687. package/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts +0 -74
  688. package/lib/tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.d.ts +0 -8
  689. package/lib/tag/techlify-tagger-tag-list/techlify-tagger-tag-list.component.d.ts +0 -15
  690. package/lib/tag/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.d.ts +0 -61
  691. package/lib/tag/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.d.ts +0 -8
  692. package/lib/techlify-app-selector/techlify-app-selector.component.d.ts +0 -13
  693. package/lib/techlify-app-selector/techlify-app-selector.module.d.ts +0 -10
  694. package/lib/techlify-auto-complete-select/techlify-auto-complete-select.component.d.ts +0 -50
  695. package/lib/techlify-company-switcher/index.d.ts +0 -2
  696. package/lib/techlify-company-switcher/techlify-company-switcher/techlify-company-switcher.component.d.ts +0 -28
  697. package/lib/techlify-company-switcher/techlify-company-switcher.module.d.ts +0 -10
  698. package/lib/techlify-currency-pipe/techlify-currency-pipe.directive.d.ts +0 -8
  699. package/lib/techlify-feature/on-off-switch/on-off-switch.component.d.ts +0 -12
  700. package/lib/techlify-feature/techlify-feature-directive.module.d.ts +0 -8
  701. package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +0 -13
  702. package/lib/techlify-feature/techlify-feature-listing.component.d.ts +0 -32
  703. package/lib/techlify-feature/techlify-feature.module.d.ts +0 -11
  704. package/lib/techlify-feature/techlify-feature.routing.d.ts +0 -2
  705. package/lib/techlify-feature/techlify-feature.service.d.ts +0 -13
  706. package/lib/techlify-icon/techlify-icon.component.d.ts +0 -12
  707. package/lib/techlify-icon/techlify-icon.module.d.ts +0 -9
  708. package/lib/techlify-notifications/index.d.ts +0 -5
  709. package/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user-routing.module.d.ts +0 -7
  710. package/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.component.d.ts +0 -17
  711. package/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.module.d.ts +0 -9
  712. package/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-subscription.service.d.ts +0 -8
  713. package/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-type.service.d.ts +0 -8
  714. package/lib/techlify-notifications/techlify-notification-routing.module.d.ts +0 -7
  715. package/lib/techlify-notifications/techlify-notification.module.d.ts +0 -8
  716. package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts +0 -33
  717. package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts +0 -9
  718. package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts +0 -7
  719. package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts +0 -34
  720. package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts +0 -9
  721. package/lib/techlify-update/techlify-update-routing.module.d.ts +0 -7
  722. package/lib/techlify-update/techlify-update.module.d.ts +0 -10
  723. package/lib/techlify-update/techlify-update.service.d.ts +0 -16
  724. package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts +0 -33
  725. package/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.component.d.ts +0 -20
  726. package/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.module.d.ts +0 -8
  727. package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts +0 -28
  728. package/lib/techlify-update/update-notifier/update-notifier.component.d.ts +0 -19
  729. package/lib/techlify-update/update-notifier/update-notifier.module.d.ts +0 -10
  730. package/lib/techlify-update/update-view/update-view.component.d.ts +0 -17
  731. package/lib/techlify-update/update-view/update-view.module.d.ts +0 -8
  732. package/lib/techlify-view/my-techlify-view-listing/my-techlify-view-listing.component.d.ts +0 -23
  733. package/lib/techlify-view/my-techlify-view-listing/my-techlify-view-listing.module.d.ts +0 -9
  734. package/lib/techlify-view/my-techlify-view-listing/my-techlify-view.service.d.ts +0 -8
  735. package/lib/techlify-view/techlify-view-form/techlify-view-form.component.d.ts +0 -30
  736. package/lib/techlify-view/techlify-view-form/techlify-view-form.module.d.ts +0 -8
  737. package/lib/techlify-view/techlify-view.service.d.ts +0 -8
  738. package/lib/timeline-activity/timeline-activity-button/timeline-activity-button-routing.module.d.ts +0 -7
  739. package/lib/timeline-activity/timeline-activity-button/timeline-activity-button.component.d.ts +0 -17
  740. package/lib/timeline-activity/timeline-activity-button/timeline-activity-button.module.d.ts +0 -10
  741. package/lib/timeline-activity/timeline-activity-list/timeline-activity-list-routing.module.d.ts +0 -7
  742. package/lib/timeline-activity/timeline-activity-list/timeline-activity-list.component.d.ts +0 -24
  743. package/lib/timeline-activity/timeline-activity-list/timeline-activity-list.module.d.ts +0 -9
  744. package/lib/timeline-activity/timeline-activity.service.d.ts +0 -8
  745. package/lib/timeline-filter/calculate-timeline.d.ts +0 -6
  746. package/lib/timeline-filter/index.d.ts +0 -3
  747. package/lib/timeline-filter/timeline-filter-routing.module.d.ts +0 -7
  748. package/lib/timeline-filter/timeline-filter.component.d.ts +0 -75
  749. package/lib/timeline-filter/timeline-filter.module.d.ts +0 -18
  750. package/lib/timeline-filter/timeline.model.d.ts +0 -17
  751. package/lib/user/app-admin-user-list/app-admin-user-list.component.d.ts +0 -40
  752. package/lib/user/app-admin-user-view/app-admin-user-view.component.d.ts +0 -26
  753. package/lib/user/app-admin-user-view/app-admin-user-view.module.d.ts +0 -13
  754. package/lib/user/app-admin-user-view/app-admin-user-view.routes.d.ts +0 -7
  755. package/lib/user/current-user.service.d.ts +0 -75
  756. package/lib/user/index.d.ts +0 -13
  757. package/lib/user/user-enable-button-component/user-enable-button.component.d.ts +0 -23
  758. package/lib/user/user-enable-button-component/user-enable-button.module.d.ts +0 -8
  759. package/lib/user/user-explore.component.d.ts +0 -26
  760. package/lib/user/user-form/user-form.component.d.ts +0 -43
  761. package/lib/user/user-list/user-list.component.d.ts +0 -38
  762. package/lib/user/user-sessions/user-session.service.d.ts +0 -8
  763. package/lib/user/user-sessions/user-sessions/user-sessions.component.d.ts +0 -15
  764. package/lib/user/user-sessions/user-sessions/user-sessions.module.d.ts +0 -8
  765. package/lib/user/user-type.enum.d.ts +0 -5
  766. package/lib/user/user-view.component.d.ts +0 -32
  767. package/lib/user/user.model.d.ts +0 -30
  768. package/lib/user/user.module.d.ts +0 -16
  769. package/lib/user/user.routes.d.ts +0 -7
  770. package/lib/user/user.service.d.ts +0 -15
  771. package/lib/user-client-enable-disable-button/user-client-enable-disable-button.component.d.ts +0 -22
  772. package/lib/user-client-enable-disable-button/user-client-enable-disable-button.module.d.ts +0 -8
  773. package/lib/user-clients-list/user-clients-list.component.d.ts +0 -15
  774. package/lib/user-clients-list/user-clients-list.module.d.ts +0 -9
  775. package/lib/user-clients-list/user-tenant.service.d.ts +0 -11
  776. package/lib/user-config/index.d.ts +0 -2
  777. package/lib/user-config/user-config.model.d.ts +0 -50
  778. package/lib/user-config/user-config.service.d.ts +0 -14
  779. package/lib/user-menu/user-menu.component.d.ts +0 -17
  780. package/lib/user-menu/user-menu.module.d.ts +0 -13
  781. package/lib/user-selector/index.d.ts +0 -2
  782. package/lib/user-selector/user-data.service.d.ts +0 -16
  783. package/lib/user-selector/user-selector.component.d.ts +0 -28
  784. package/lib/user-selector/user-selector.module.d.ts +0 -8
  785. package/lib/utility/date-utils.service.d.ts +0 -38
  786. package/lib/utility/index.d.ts +0 -2
  787. package/lib/utility/num-items-selector.component.d.ts +0 -19
  788. package/lib/utility/utility.module.d.ts +0 -8
  789. package/lib/validators/date.validator.d.ts +0 -6
  790. package/public-api.d.ts +0 -212
@@ -1,191 +0,0 @@
1
- import { of } from 'rxjs';
2
- /**
3
- * Reusable test contract for components extending TechlifyFormComponent.
4
- *
5
- * Ensures all form components follow the same base behaviour:
6
- * - Service injection
7
- * - Default state initialization
8
- * - Create/update submission flow
9
- * - Form validation handling
10
- * - Success event handling
11
- * - Dialog handling
12
- * - Field helper methods
13
- */
14
- export function techlifyFormContract(options) {
15
- describe('TechlifyFormComponent Contract', () => {
16
- /**
17
- * Ensures child components correctly pass their service
18
- * to the base form component.
19
- */
20
- it('should pass a service to the base class', () => {
21
- const component = options.getComponent();
22
- expect(component.service)
23
- .toBe(options.getService());
24
- });
25
- /**
26
- * Ensures default properties are initialized correctly.
27
- */
28
- it('should initialize default values', () => {
29
- const component = options.getComponent();
30
- expect(component.isWorking).toBeFalse();
31
- expect(component.isUpdate).toBeFalse();
32
- expect(component.isAllowCreateAnother).toBeTrue();
33
- expect(component.createdEntries).toEqual([]);
34
- });
35
- /**
36
- * Ensures create forms call store service and finalise response.
37
- */
38
- it('should submit using store when creating', () => {
39
- const component = options.getComponent();
40
- component.form.patchValue({
41
- name: 'Test'
42
- });
43
- spyOn(component, 'finalisedResponse');
44
- options.getService().store
45
- .and.returnValue(of({
46
- item: { id: 1 }
47
- }));
48
- component.submit();
49
- expect(options.getService().store)
50
- .toHaveBeenCalledWith(component.form.value);
51
- expect(component.createdEntries)
52
- .toEqual([{ id: 1 }]);
53
- expect(component.finalisedResponse)
54
- .toHaveBeenCalled();
55
- });
56
- /**
57
- * Ensures update forms call update service instead of store.
58
- */
59
- it('should submit using update when isUpdate is true', () => {
60
- const component = options.getComponent();
61
- component.isUpdate = true;
62
- component.form.patchValue({
63
- name: 'Updated'
64
- });
65
- spyOn(component, 'finalisedResponse');
66
- options.getService().update
67
- .and.returnValue(of({
68
- item: { id: 1 }
69
- }));
70
- component.submit();
71
- expect(options.getService().update)
72
- .toHaveBeenCalledWith(component.form.value);
73
- expect(component.finalisedResponse)
74
- .toHaveBeenCalledWith({
75
- id: 1
76
- });
77
- });
78
- /**
79
- * Ensures invalid forms do not trigger API submission.
80
- */
81
- it('should not submit invalid form', () => {
82
- const component = options.getComponent();
83
- component.form.setErrors({
84
- invalid: true
85
- });
86
- component.submit();
87
- expect(options.getService().store)
88
- .not.toHaveBeenCalled();
89
- });
90
- /**
91
- * Ensures form validation is triggered before submission.
92
- */
93
- it('should mark form as touched before submit', () => {
94
- const component = options.getComponent();
95
- spyOn(component.form, 'markAllAsTouched');
96
- component.submit();
97
- expect(component.form.markAllAsTouched)
98
- .toHaveBeenCalled();
99
- });
100
- /**
101
- * Ensures API progress state is handled correctly.
102
- */
103
- it('should set isWorking while submitting', () => {
104
- const component = options.getComponent();
105
- component.form.patchValue({
106
- name: 'Test'
107
- });
108
- options.getService().store
109
- .and.returnValue(of({
110
- item: { id: 1 }
111
- }));
112
- component.submit();
113
- expect(component.isWorking)
114
- .toBeFalse();
115
- });
116
- /**
117
- * Ensures successful form completion emits success event.
118
- */
119
- it('should emit success event on finalisedResponse', () => {
120
- const component = options.getComponent();
121
- spyOn(component.success, 'emit');
122
- component.finalisedResponse({
123
- id: 1
124
- });
125
- expect(component.success.emit)
126
- .toHaveBeenCalledWith({
127
- id: 1
128
- });
129
- });
130
- /**
131
- * Ensures dialog closes after successful response.
132
- */
133
- it('should close dialog on finalisedResponse when dialog exists', () => {
134
- const component = options.getComponent();
135
- component.dialogRef = {
136
- close: jasmine.createSpy('close')
137
- };
138
- component.finalisedResponse({
139
- id: 1
140
- });
141
- expect(component.dialogRef.close)
142
- .toHaveBeenCalledWith({
143
- id: 1
144
- });
145
- });
146
- /**
147
- * Ensures form field reset helper works correctly.
148
- */
149
- it('should reset field value', () => {
150
- const component = options.getComponent();
151
- component.form.patchValue({
152
- name: 'Test'
153
- });
154
- component.resetFieldValue(null, 'name');
155
- expect(component.getFieldValue('name'))
156
- .toBe('');
157
- });
158
- /**
159
- * Ensures form field value helper returns correct value.
160
- */
161
- it('should return field value', () => {
162
- const component = options.getComponent();
163
- component.form.patchValue({
164
- name: 'Test'
165
- });
166
- expect(component.getFieldValue('name'))
167
- .toBe('Test');
168
- });
169
- /**
170
- * Ensures closing dialog emits created entries before closing.
171
- */
172
- it('should close dialog and emit created entries', () => {
173
- const component = options.getComponent();
174
- component.createdEntries = [
175
- { id: 1 }
176
- ];
177
- component.dialogRef = {
178
- close: jasmine.createSpy('close')
179
- };
180
- spyOn(component.success, 'emit');
181
- component.closeDialog();
182
- expect(component.success.emit)
183
- .toHaveBeenCalledWith([
184
- { id: 1 }
185
- ]);
186
- expect(component.dialogRef.close)
187
- .toHaveBeenCalled();
188
- });
189
- });
190
- }
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZm9ybS5jb250cmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvYmFzZS1tb2RlbC90ZWNobGlmeS1mb3JtL2NvbnRyYWN0L3RlY2hsaWZ5LWZvcm0uY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQVExQjs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FDaEMsT0FBb0M7SUFHcEMsUUFBUSxDQUFDLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtRQUU1Qzs7O1dBR0c7UUFDSCxFQUFFLENBQUMseUNBQXlDLEVBQUUsR0FBRyxFQUFFO1lBQy9DLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN6QyxNQUFNLENBQUUsU0FBaUIsQ0FBQyxPQUFPLENBQUM7aUJBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ0gsRUFBRSxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsRUFBRTtZQUN4QyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDekMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN4QyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsRCxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FB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RUFBRSxHQUFHLEVBQUU7WUFDcEQsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3pDLFNBQVMsQ0FBQyxjQUFjLEdBQUc7Z0JBQ3ZCLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRTthQUNaLENBQUM7WUFDRixTQUFTLENBQUMsU0FBUyxHQUFHO2dCQUNsQixLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7YUFDN0IsQ0FBQztZQUNULEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN4QixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7aUJBQ3pCLG9CQUFvQixDQUFDO2dCQUNsQixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7YUFDWixDQUFDLENBQUM7WUFDUCxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7aUJBQzVCLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFFUCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGVjaGxpZnlGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vdGVjaGxpZnktZm9ybS5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRlY2hsaWZ5Rm9ybUNvbnRyYWN0T3B0aW9ucyB7XG4gICAgZ2V0Q29tcG9uZW50OiAoKSA9PiBUZWNobGlmeUZvcm1Db21wb25lbnQ7XG4gICAgZ2V0U2VydmljZTogKCkgPT4gYW55O1xufVxuXG4vKipcbiAqIFJldXNhYmxlIHRlc3QgY29udHJhY3QgZm9yIGNvbXBvbmVudHMgZXh0ZW5kaW5nIFRlY2hsaWZ5Rm9ybUNvbXBvbmVudC5cbiAqXG4gKiBFbnN1cmVzIGFsbCBmb3JtIGNvbXBvbmVudHMgZm9sbG93IHRoZSBzYW1lIGJhc2UgYmVoYXZpb3VyOlxuICogLSBTZXJ2aWNlIGluamVjdGlvblxuICogLSBEZWZhdWx0IHN0YXRlIGluaXRpYWxpemF0aW9uXG4gKiAtIENyZWF0ZS91cGRhdGUgc3VibWlzc2lvbiBmbG93XG4gKiAtIEZvcm0gdmFsaWRhdGlvbiBoYW5kbGluZ1xuICogLSBTdWNjZXNzIGV2ZW50IGhhbmRsaW5nXG4gKiAtIERpYWxvZyBoYW5kbGluZ1xuICogLSBGaWVsZCBoZWxwZXIgbWV0aG9kc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdGVjaGxpZnlGb3JtQ29udHJhY3QoXG4gICAgb3B0aW9uczogVGVjaGxpZnlGb3JtQ29udHJhY3RPcHRpb25zXG4pOiB2b2lkIHtcblxuICAgIGRlc2NyaWJlKCdUZWNobGlmeUZvcm1Db21wb25lbnQgQ29udHJhY3QnLCAoKSA9PiB7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEVuc3VyZXMgY2hpbGQgY29tcG9uZW50cyBjb3JyZWN0bHkgcGFzcyB0aGVpciBzZXJ2aWNlXG4gICAgICAgICAqIHRvIHRoZSBiYXNlIGZvcm0gY29tcG9uZW50LlxuICAgICAgICAgKi9cbiAgICAgICAgaXQoJ3Nob3VsZCBwYXNzIGEgc2VydmljZSB0byB0aGUgYmFzZSBjbGFzcycsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBleHBlY3QoKGNvbXBvbmVudCBhcyBhbnkpLnNlcnZpY2UpXG4gICAgICAgICAgICAgICAgLnRvQmUob3B0aW9ucy5nZXRTZXJ2aWNlKCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBkZWZhdWx0IHByb3BlcnRpZXMgYXJlIGluaXRpYWxpemVkIGNvcnJlY3RseS5cbiAgICAgICAgICovXG4gICAgICAgIGl0KCdzaG91bGQgaW5pdGlhbGl6ZSBkZWZhdWx0IHZhbHVlcycsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmlzV29ya2luZykudG9CZUZhbHNlKCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmlzVXBkYXRlKS50b0JlRmFsc2UoKTtcbiAgICAgICAgICAgIGV4cGVjdChjb21wb25lbnQuaXNBbGxvd0NyZWF0ZUFub3RoZXIpLnRvQmVUcnVlKCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmNyZWF0ZWRFbnRyaWVzKS50b0VxdWFsKFtdKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEVuc3VyZXMgY3JlYXRlIGZvcm1zIGNhbGwgc3RvcmUgc2VydmljZSBhbmQgZmluYWxpc2UgcmVzcG9uc2UuXG4gICAgICAgICAqL1xuICAgICAgICBpdCgnc2hvdWxkIHN1Ym1pdCB1c2luZyBzdG9yZSB3aGVuIGNyZWF0aW5nJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgICAgIG5hbWU6ICdUZXN0J1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzcHlPbihjb21wb25lbnQgYXMgYW55LCAnZmluYWxpc2VkUmVzcG9uc2UnKTtcbiAgICAgICAgICAgIG9wdGlvbnMuZ2V0U2VydmljZSgpLnN0b3JlXG4gICAgICAgICAgICAgICAgLmFuZC5yZXR1cm5WYWx1ZShvZih7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW06IHsgaWQ6IDEgfVxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5zdWJtaXQoKTtcbiAgICAgICAgICAgIGV4cGVjdChvcHRpb25zLmdldFNlcnZpY2UoKS5zdG9yZSlcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoY29tcG9uZW50LmZvcm0udmFsdWUpO1xuICAgICAgICAgICAgZXhwZWN0KGNvbXBvbmVudC5jcmVhdGVkRW50cmllcylcbiAgICAgICAgICAgICAgICAudG9FcXVhbChbeyBpZDogMSB9XSk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmZpbmFsaXNlZFJlc3BvbnNlKVxuICAgICAgICAgICAgICAgIC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFbnN1cmVzIHVwZGF0ZSBmb3JtcyBjYWxsIHVwZGF0ZSBzZXJ2aWNlIGluc3RlYWQgb2Ygc3RvcmUuXG4gICAgICAgICAqL1xuICAgICAgICBpdCgnc2hvdWxkIHN1Ym1pdCB1c2luZyB1cGRhdGUgd2hlbiBpc1VwZGF0ZSBpcyB0cnVlJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5pc1VwZGF0ZSA9IHRydWU7XG4gICAgICAgICAgICBjb21wb25lbnQuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnVXBkYXRlZCdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc3B5T24oY29tcG9uZW50IGFzIGFueSwgJ2ZpbmFsaXNlZFJlc3BvbnNlJyk7XG4gICAgICAgICAgICBvcHRpb25zLmdldFNlcnZpY2UoKS51cGRhdGVcbiAgICAgICAgICAgICAgICAuYW5kLnJldHVyblZhbHVlKG9mKHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbTogeyBpZDogMSB9XG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgY29tcG9uZW50LnN1Ym1pdCgpO1xuICAgICAgICAgICAgZXhwZWN0KG9wdGlvbnMuZ2V0U2VydmljZSgpLnVwZGF0ZSlcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoY29tcG9uZW50LmZvcm0udmFsdWUpO1xuICAgICAgICAgICAgZXhwZWN0KGNvbXBvbmVudC5maW5hbGlzZWRSZXNwb25zZSlcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICAgICAgICAgICAgICBpZDogMVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBpbnZhbGlkIGZvcm1zIGRvIG5vdCB0cmlnZ2VyIEFQSSBzdWJtaXNzaW9uLlxuICAgICAgICAgKi9cbiAgICAgICAgaXQoJ3Nob3VsZCBub3Qgc3VibWl0IGludmFsaWQgZm9ybScsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBjb21wb25lbnQuZm9ybS5zZXRFcnJvcnMoe1xuICAgICAgICAgICAgICAgIGludmFsaWQ6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29tcG9uZW50LnN1Ym1pdCgpO1xuICAgICAgICAgICAgZXhwZWN0KG9wdGlvbnMuZ2V0U2VydmljZSgpLnN0b3JlKVxuICAgICAgICAgICAgICAgIC5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBmb3JtIHZhbGlkYXRpb24gaXMgdHJpZ2dlcmVkIGJlZm9yZSBzdWJtaXNzaW9uLlxuICAgICAgICAgKi9cbiAgICAgICAgaXQoJ3Nob3VsZCBtYXJrIGZvcm0gYXMgdG91Y2hlZCBiZWZvcmUgc3VibWl0JywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIHNweU9uKGNvbXBvbmVudC5mb3JtLCAnbWFya0FsbEFzVG91Y2hlZCcpO1xuICAgICAgICAgICAgY29tcG9uZW50LnN1Ym1pdCgpO1xuICAgICAgICAgICAgZXhwZWN0KGNvbXBvbmVudC5mb3JtLm1hcmtBbGxBc1RvdWNoZWQpXG4gICAgICAgICAgICAgICAgLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEVuc3VyZXMgQVBJIHByb2dyZXNzIHN0YXRlIGlzIGhhbmRsZWQgY29ycmVjdGx5LlxuICAgICAgICAgKi9cbiAgICAgICAgaXQoJ3Nob3VsZCBzZXQgaXNXb3JraW5nIHdoaWxlIHN1Ym1pdHRpbmcnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgY29tcG9uZW50LmZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1Rlc3QnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIG9wdGlvbnMuZ2V0U2VydmljZSgpLnN0b3JlXG4gICAgICAgICAgICAgICAgLmFuZC5yZXR1cm5WYWx1ZShvZih7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW06IHsgaWQ6IDEgfVxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5zdWJtaXQoKTtcbiAgICAgICAgICAgIGV4cGVjdChjb21wb25lbnQuaXNXb3JraW5nKVxuICAgICAgICAgICAgICAgIC50b0JlRmFsc2UoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEVuc3VyZXMgc3VjY2Vzc2Z1bCBmb3JtIGNvbXBsZXRpb24gZW1pdHMgc3VjY2VzcyBldmVudC5cbiAgICAgICAgICovXG4gICAgICAgIGl0KCdzaG91bGQgZW1pdCBzdWNjZXNzIGV2ZW50IG9uIGZpbmFsaXNlZFJlc3BvbnNlJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIHNweU9uKGNvbXBvbmVudC5zdWNjZXNzLCAnZW1pdCcpO1xuICAgICAgICAgICAgY29tcG9uZW50LmZpbmFsaXNlZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBpZDogMVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LnN1Y2Nlc3MuZW1pdClcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICAgICAgICAgICAgICBpZDogMVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBkaWFsb2cgY2xvc2VzIGFmdGVyIHN1Y2Nlc3NmdWwgcmVzcG9uc2UuXG4gICAgICAgICAqL1xuICAgICAgICBpdCgnc2hvdWxkIGNsb3NlIGRpYWxvZyBvbiBmaW5hbGlzZWRSZXNwb25zZSB3aGVuIGRpYWxvZyBleGlzdHMnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgY29tcG9uZW50LmRpYWxvZ1JlZiA9IHtcbiAgICAgICAgICAgICAgICBjbG9zZTogamFzbWluZS5jcmVhdGVTcHkoJ2Nsb3NlJylcbiAgICAgICAgICAgIH0gYXMgYW55O1xuICAgICAgICAgICAgY29tcG9uZW50LmZpbmFsaXNlZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBpZDogMVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmRpYWxvZ1JlZi5jbG9zZSlcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgICAgICAgICAgICAgICBpZDogMVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBmb3JtIGZpZWxkIHJlc2V0IGhlbHBlciB3b3JrcyBjb3JyZWN0bHkuXG4gICAgICAgICAqL1xuICAgICAgICBpdCgnc2hvdWxkIHJlc2V0IGZpZWxkIHZhbHVlJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgICAgIG5hbWU6ICdUZXN0J1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb21wb25lbnQucmVzZXRGaWVsZFZhbHVlKG51bGwsICduYW1lJyk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmdldEZpZWxkVmFsdWUoJ25hbWUnKSlcbiAgICAgICAgICAgICAgICAudG9CZSgnJyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFbnN1cmVzIGZvcm0gZmllbGQgdmFsdWUgaGVscGVyIHJldHVybnMgY29ycmVjdCB2YWx1ZS5cbiAgICAgICAgICovXG4gICAgICAgIGl0KCdzaG91bGQgcmV0dXJuIGZpZWxkIHZhbHVlJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5mb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgICAgIG5hbWU6ICdUZXN0J1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmdldEZpZWxkVmFsdWUoJ25hbWUnKSlcbiAgICAgICAgICAgICAgICAudG9CZSgnVGVzdCcpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlcyBjbG9zaW5nIGRpYWxvZyBlbWl0cyBjcmVhdGVkIGVudHJpZXMgYmVmb3JlIGNsb3NpbmcuXG4gICAgICAgICAqL1xuICAgICAgICBpdCgnc2hvdWxkIGNsb3NlIGRpYWxvZyBhbmQgZW1pdCBjcmVhdGVkIGVudHJpZXMnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgY29tcG9uZW50LmNyZWF0ZWRFbnRyaWVzID0gW1xuICAgICAgICAgICAgICAgIHsgaWQ6IDEgfVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5kaWFsb2dSZWYgPSB7XG4gICAgICAgICAgICAgICAgY2xvc2U6IGphc21pbmUuY3JlYXRlU3B5KCdjbG9zZScpXG4gICAgICAgICAgICB9IGFzIGFueTtcbiAgICAgICAgICAgIHNweU9uKGNvbXBvbmVudC5zdWNjZXNzLCAnZW1pdCcpO1xuICAgICAgICAgICAgY29tcG9uZW50LmNsb3NlRGlhbG9nKCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LnN1Y2Nlc3MuZW1pdClcbiAgICAgICAgICAgICAgICAudG9IYXZlQmVlbkNhbGxlZFdpdGgoW1xuICAgICAgICAgICAgICAgICAgICB7IGlkOiAxIH1cbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgIGV4cGVjdChjb21wb25lbnQuZGlhbG9nUmVmLmNsb3NlKVxuICAgICAgICAgICAgICAgIC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgfSk7XG59Il19
@@ -1,134 +0,0 @@
1
- import { Directive, EventEmitter, inject, Input, Optional, Output } from '@angular/core';
2
- import { finalize } from 'rxjs';
3
- import { AlertService } from '../../core/alert.service';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../core/form-validator.service";
6
- import * as i2 from "../techlify-service";
7
- /**
8
- * Interface used to ensure we have a consistent structure across our form components
9
- *
10
- * It also provides some abstraction of repeated code to reduce our codebase size
11
- *
12
- * @todo This should be moved to ngx-techlify-core
13
- *
14
- * Advantages of this abstract class
15
- * - Less code, less maintenance, less bugs
16
- * - more consistent code
17
- * - comments on more code
18
- * - save time, save energy
19
- */
20
- export class TechlifyFormComponent {
21
- constructor(formValidatorService, service) {
22
- this.formValidatorService = formValidatorService;
23
- this.service = service;
24
- //Boolean to denote the form is in API progress
25
- this.isWorking = false;
26
- //Array of created multiple entries
27
- this.createdEntries = [];
28
- //Boolean to denote if form is in update mode
29
- this.isUpdate = false;
30
- //Boolean to denote if form has ability to create multiple entries
31
- this.isAllowCreateAnother = true;
32
- //Emits an event once form submit is success
33
- this.success = new EventEmitter();
34
- //Injected alert service
35
- this.alertService = inject(AlertService, { optional: true });
36
- }
37
- /**
38
- * Submits the form
39
- * @param model form model optional, if needed to be overriden
40
- * @returns
41
- */
42
- submit(model) {
43
- this.form.markAllAsTouched();
44
- if (!this.service) {
45
- throw new Error(`${this.constructor.name}: Service is required to submit the form`);
46
- }
47
- if (!this.form.valid) {
48
- return;
49
- }
50
- if (!model) {
51
- model = this.form.value;
52
- }
53
- this.isWorking = true;
54
- (this.isUpdate ?
55
- this.service.update(model) :
56
- this.service.store(model))
57
- .pipe(finalize(() => this.isWorking = false))
58
- .subscribe((res) => {
59
- this.createdEntries.unshift(res?.item);
60
- if (model?.is_create_another) {
61
- this.alertService.addAlert('Successfully Created', 'success');
62
- return;
63
- }
64
- if (this.isUpdate) {
65
- this.finalisedResponse(res?.item);
66
- }
67
- else {
68
- this.finalisedResponse((this.createdEntries.length == 1) ? this.createdEntries[0] : this.createdEntries);
69
- }
70
- });
71
- }
72
- //Send uniformed finalised response for both form button and dialog
73
- finalisedResponse(response) {
74
- this.success.emit(response);
75
- if (this.dialogRef) {
76
- this.dialogRef.close(response);
77
- }
78
- }
79
- /**
80
- * Close the active dialog
81
- */
82
- closeDialog() {
83
- if (this.createdEntries?.length > 0) {
84
- this.success.emit(this.createdEntries);
85
- }
86
- if (this.dialogRef) {
87
- this.dialogRef.close();
88
- }
89
- }
90
- /**
91
- * Resets the value of a field in the HTML form
92
- *
93
- * @param event
94
- * @param field
95
- */
96
- resetFieldValue(event, field) {
97
- this.form?.get(field)?.setValue('');
98
- }
99
- /**
100
- * Retrieves the value of a field from the HTML form
101
- *
102
- * @param field
103
- * @returns
104
- */
105
- getFieldValue(field) {
106
- return this.form?.get(field)?.value;
107
- }
108
- /**
109
- * Method to evaluate form fields
110
- * */
111
- isFieldValid(field) {
112
- return this.formValidatorService.isFieldValid(field, this.form);
113
- }
114
- /**
115
- * Method to find error in form fields
116
- * */
117
- getErrorMessage(field) {
118
- return this.formValidatorService.getErrorMessage(field, this.form, this.errorMessages);
119
- }
120
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TechlifyFormComponent, deps: [{ token: i1.FormValidatorService }, { token: i2.TechlifyService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
121
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: TechlifyFormComponent, inputs: { isUpdate: "isUpdate", isAllowCreateAnother: "isAllowCreateAnother" }, outputs: { success: "success" }, ngImport: i0 }); }
122
- }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TechlifyFormComponent, decorators: [{
124
- type: Directive
125
- }], ctorParameters: () => [{ type: i1.FormValidatorService }, { type: i2.TechlifyService, decorators: [{
126
- type: Optional
127
- }] }], propDecorators: { isUpdate: [{
128
- type: Input
129
- }], isAllowCreateAnother: [{
130
- type: Input
131
- }], success: [{
132
- type: Output
133
- }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2Jhc2UtbW9kZWwvdGVjaGxpZnktZm9ybS90ZWNobGlmeS1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVoQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFFeEQ7Ozs7Ozs7Ozs7OztHQVlHO0FBRUgsTUFBTSxPQUFnQixxQkFBcUI7SUE2QnpDLFlBQ1ksb0JBQTBDLEVBQzlCLE9BQXlCO1FBRHJDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDOUIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUF2QmpELCtDQUErQztRQUMvQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBSzNCLG1DQUFtQztRQUNuQyxtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUV6Qiw2Q0FBNkM7UUFDcEMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUVuQyxrRUFBa0U7UUFDekQseUJBQW9CLEdBQVksSUFBSSxDQUFDO1FBRTlDLDRDQUE0QztRQUNsQyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUU1Qyx3QkFBd0I7UUFDZCxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQU1sRSxDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFXO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztR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QUFvQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7U0FFSztJQUNMLGVBQWUsQ0FBQyxLQUFhO1FBQzNCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekYsQ0FBQzsrR0FoSW1CLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUQxQyxTQUFTOzswQkFnQ0wsUUFBUTt5Q0FiRixRQUFRO3NCQUFoQixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFHSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1WYWxpZGF0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9mb3JtLXZhbGlkYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPcHRpb25hbCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUZWNobGlmeVNlcnZpY2UgfSBmcm9tICcuLi90ZWNobGlmeS1zZXJ2aWNlJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9hbGVydC5zZXJ2aWNlJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgdXNlZCB0byBlbnN1cmUgd2UgaGF2ZSBhIGNvbnNpc3RlbnQgc3RydWN0dXJlIGFjcm9zcyBvdXIgZm9ybSBjb21wb25lbnRzXG4gKlxuICogSXQgYWxzbyBwcm92aWRlcyBzb21lIGFic3RyYWN0aW9uIG9mIHJlcGVhdGVkIGNvZGUgdG8gcmVkdWNlIG91ciBjb2RlYmFzZSBzaXplXG4gKlxuICogQHRvZG8gVGhpcyBzaG91bGQgYmUgbW92ZWQgdG8gbmd4LXRlY2hsaWZ5LWNvcmVcbiAqXG4gKiBBZHZhbnRhZ2VzIG9mIHRoaXMgYWJzdHJhY3QgY2xhc3NcbiAqIC0gTGVzcyBjb2RlLCBsZXNzIG1haW50ZW5hbmNlLCBsZXNzIGJ1Z3NcbiAqIC0gbW9yZSBjb25zaXN0ZW50IGNvZGVcbiAqIC0gY29tbWVudHMgb24gbW9yZSBjb2RlXG4gKiAtIHNhdmUgdGltZSwgc2F2ZSBlbmVyZ3lcbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGVjaGxpZnlGb3JtQ29tcG9uZW50IHtcblxuICAvL0Zvcm0gYnVpbGRlciBpbnN0YW5jZVxuICBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIC8vRXJyb3IgbWVzc2FnZXMgY29uZmlnIGZvciB0aGUgZm9ybVxuICBlcnJvck1lc3NhZ2VzOiBhbnk7XG5cbiAgLy9Cb29sZWFuIHRvIGRlbm90ZSB0aGUgZm9ybSBpcyBpbiBBUEkgcHJvZ3Jlc3NcbiAgaXNXb3JraW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy9Gb3JtIGRpYWxvZ3JlZiByZWZlcmVuY2VcbiAgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8YW55LCBhbnk+O1xuXG4gIC8vQXJyYXkgb2YgY3JlYXRlZCBtdWx0aXBsZSBlbnRyaWVzXG4gIGNyZWF0ZWRFbnRyaWVzOiBhbnkgPSBbXTtcblxuICAvL0Jvb2xlYW4gdG8gZGVub3RlIGlmIGZvcm0gaXMgaW4gdXBkYXRlIG1vZGVcbiAgQElucHV0KCkgaXNVcGRhdGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvL0Jvb2xlYW4gdG8gZGVub3RlIGlmIGZvcm0gaGFzIGFiaWxpdHkgdG8gY3JlYXRlIG11bHRpcGxlIGVudHJpZXNcbiAgQElucHV0KCkgaXNBbGxvd0NyZWF0ZUFub3RoZXI6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8vRW1pdHMgYW4gZXZlbnQgb25jZSBmb3JtIHN1Ym1pdCBpcyBzdWNjZXNzXG4gIEBPdXRwdXQoKSBzdWNjZXNzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLy9JbmplY3RlZCBhbGVydCBzZXJ2aWNlXG4gIHByb3RlY3RlZCBhbGVydFNlcnZpY2UgPSBpbmplY3QoQWxlcnRTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBmb3JtVmFsaWRhdG9yU2VydmljZTogRm9ybVZhbGlkYXRvclNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIHNlcnZpY2U/OiBUZWNobGlmeVNlcnZpY2UpIHtcblxuICB9XG4gIC8qKlxuICAgKiBTdWJtaXRzIHRoZSBmb3JtXG4gICAqIEBwYXJhbSBtb2RlbCBmb3JtIG1vZGVsIG9wdGlvbmFsLCBpZiBuZWVkZWQgdG8gYmUgb3ZlcnJpZGVuXG4gICAqIEByZXR1cm5zIFxuICAgKi9cbiAgc3VibWl0KG1vZGVsPzogYW55KSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICBpZiAoIXRoaXMuc2VydmljZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgJHt0aGlzLmNvbnN0cnVjdG9yLm5hbWV9OiBTZXJ2aWNlIGlzIHJlcXVpcmVkIHRvIHN1Ym1pdCB0aGUgZm9ybWBcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICghdGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghbW9kZWwpIHtcbiAgICAgIG1vZGVsID0gdGhpcy5mb3JtLnZhbHVlO1xuICAgIH1cbiAgICB0aGlzLmlzV29ya2luZyA9IHRydWU7XG4gICAgKFxuICAgICAgdGhpcy5pc1VwZGF0ZSA/XG4gICAgICAgIHRoaXMuc2VydmljZS51cGRhdGUobW9kZWwpIDpcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnN0b3JlKG1vZGVsKVxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLmlzV29ya2luZyA9IGZhbHNlKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuY3JlYXRlZEVudHJpZXMudW5zaGlmdChyZXM/Lml0ZW0pO1xuICAgICAgICBpZiAobW9kZWw/LmlzX2NyZWF0ZV9hbm90aGVyKSB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkQWxlcnQoJ1N1Y2Nlc3NmdWxseSBDcmVhdGVkJywgJ3N1Y2Nlc3MnKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaXNVcGRhdGUpIHtcbiAgICAgICAgICB0aGlzLmZpbmFsaXNlZFJlc3BvbnNlKHJlcz8uaXRlbSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5maW5hbGlzZWRSZXNwb25zZSgodGhpcy5jcmVhdGVkRW50cmllcy5sZW5ndGggPT0gMSkgPyB0aGlzLmNyZWF0ZWRFbnRyaWVzWzBdIDogdGhpcy5jcmVhdGVkRW50cmllcyk7XG4gICAgICAgIH1cblxuICAgICAgfSk7XG4gIH1cblxuICAvL1NlbmQgdW5pZm9ybWVkIGZpbmFsaXNlZCByZXNwb25zZSBmb3IgYm90aCBmb3JtIGJ1dHRvbiBhbmQgZGlhbG9nXG4gIGZpbmFsaXNlZFJlc3BvbnNlKHJlc3BvbnNlOiBhbnkpIHtcbiAgICB0aGlzLnN1Y2Nlc3MuZW1pdChyZXNwb25zZSk7XG4gICAgaWYgKHRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXNwb25zZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlIHRoZSBhY3RpdmUgZGlhbG9nXG4gICAqL1xuICBjbG9zZURpYWxvZygpIHtcbiAgICBpZiAodGhpcy5jcmVhdGVkRW50cmllcz8ubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5zdWNjZXNzLmVtaXQodGhpcy5jcmVhdGVkRW50cmllcyk7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpYWxvZ1JlZikge1xuICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSB2YWx1ZSBvZiBhIGZpZWxkIGluIHRoZSBIVE1MIGZvcm1cbiAgICpcbiAgICogQHBhcmFtIGV2ZW50XG4gICAqIEBwYXJhbSBmaWVsZFxuICAgKi9cbiAgcmVzZXRGaWVsZFZhbHVlKGV2ZW50OiBhbnksIGZpZWxkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZvcm0/LmdldChmaWVsZCk/LnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIHZhbHVlIG9mIGEgZmllbGQgZnJvbSB0aGUgSFRNTCBmb3JtXG4gICAqXG4gICAqIEBwYXJhbSBmaWVsZFxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgZ2V0RmllbGRWYWx1ZShmaWVsZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uZ2V0KGZpZWxkKT8udmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIHRvIGV2YWx1YXRlIGZvcm0gZmllbGRzXG4gICAqICovXG4gIGlzRmllbGRWYWxpZChmaWVsZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybVZhbGlkYXRvclNlcnZpY2UuaXNGaWVsZFZhbGlkKGZpZWxkLCB0aGlzLmZvcm0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0byBmaW5kIGVycm9yIGluIGZvcm0gZmllbGRzXG4gICAqICovXG4gIGdldEVycm9yTWVzc2FnZShmaWVsZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybVZhbGlkYXRvclNlcnZpY2UuZ2V0RXJyb3JNZXNzYWdlKGZpZWxkLCB0aGlzLmZvcm0sIHRoaXMuZXJyb3JNZXNzYWdlcyk7XG4gIH1cblxufVxuIl19
@@ -1,69 +0,0 @@
1
- import { fakeAsync, tick } from '@angular/core/testing';
2
- export function techlifyListContract(options) {
3
- describe('TechlifyListComponent Contract', () => {
4
- it('should pass a service to the base class', () => {
5
- const component = options.getComponent();
6
- expect(component.service).toBe(options.getService());
7
- });
8
- it('should have a filter form', () => {
9
- const component = options.getComponent();
10
- expect(component.filterForm).toBeTruthy();
11
- });
12
- it('should call loadData on init', () => {
13
- const component = options.getComponent();
14
- spyOn(component, 'loadData');
15
- component.ngOnInit();
16
- expect(component.loadData).toHaveBeenCalled();
17
- });
18
- it('should patch filters from route on init', () => {
19
- const component = options.getComponent();
20
- spyOn(component, 'patchFiltersFromRoute');
21
- component.ngOnInit();
22
- expect(component.patchFiltersFromRoute).toHaveBeenCalled();
23
- });
24
- it('should reload when filter changes', fakeAsync(() => {
25
- const component = options.getComponent();
26
- const filterField = options.filterField ?? 'search';
27
- if (!component.filterForm?.get(filterField)) {
28
- pending(`Filter '${filterField}' does not exist.`);
29
- return;
30
- }
31
- spyOn(component, 'reload');
32
- component.listenFilterChanges();
33
- component.filterForm.get(filterField)?.setValue('abc');
34
- tick(501);
35
- expect(component.reload).toHaveBeenCalled();
36
- }));
37
- it('should load next page on scroll', () => {
38
- const component = options.getComponent();
39
- component.page = 1;
40
- component.lastPage = 3;
41
- component.isWorking = false;
42
- spyOn(component, 'loadData');
43
- component.onScroll();
44
- expect(component.page).toBe(2);
45
- expect(component.loadData).toHaveBeenCalled();
46
- });
47
- it('should not load next page while already loading', () => {
48
- const component = options.getComponent();
49
- component.page = 1;
50
- component.lastPage = 3;
51
- component.isWorking = true;
52
- spyOn(component, 'loadData');
53
- component.onScroll();
54
- expect(component.loadData).not.toHaveBeenCalled();
55
- });
56
- it('should update sort_by filter', () => {
57
- const component = options.getComponent();
58
- const control = component.filterForm.get('sort_by');
59
- if (!control) {
60
- pending('No sort_by control.');
61
- return;
62
- }
63
- spyOn(control, 'setValue');
64
- component.sortColumn({ active: 'name', direction: 'asc' });
65
- expect(control.setValue).toHaveBeenCalledWith('name|ASC');
66
- });
67
- });
68
- }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktbGlzdC5jb250cmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvYmFzZS1tb2RlbC90ZWNobGlmeS1saXN0L2NvbnRyYWN0L3RlY2hsaWZ5LWxpc3QuY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQW9CLE1BQU0sdUJBQXVCLENBQUM7QUFVMUUsTUFBTSxVQUFVLG9CQUFvQixDQUNoQyxPQUFvQztJQUVwQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsR0FBRyxFQUFFO1FBQzVDLEVBQUUsQ0FBQyx5Q0FBeUMsRUFBRSxHQUFHLEVBQUU7WUFDL0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3pDLE1BQU0sQ0FBRSxTQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxHQUFHLEVBQUU7WUFDakMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO1lBQ3BDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsU0FBZ0IsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNuQyxTQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsZ0JBQWdCLEVBQUUs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QUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzNCLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzNELE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUQsQ0FBQyxDQUFDLENBQUM7SUFFUCxDQUFDLENBQUMsQ0FBQztBQUVQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYWtlQXN5bmMsIHRpY2ssIENvbXBvbmVudEZpeHR1cmUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuaW1wb3J0IHsgVGVjaGxpZnlMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vdGVjaGxpZnktbGlzdC5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRlY2hsaWZ5TGlzdENvbnRyYWN0T3B0aW9ucyB7XG4gICAgZ2V0Rml4dHVyZTogKCkgPT4gQ29tcG9uZW50Rml4dHVyZTxhbnk+O1xuICAgIGdldENvbXBvbmVudDogKCkgPT4gVGVjaGxpZnlMaXN0Q29tcG9uZW50O1xuICAgIGdldFNlcnZpY2U6ICgpID0+IGFueTtcbiAgICBmaWx0ZXJGaWVsZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlY2hsaWZ5TGlzdENvbnRyYWN0KFxuICAgIG9wdGlvbnM6IFRlY2hsaWZ5TGlzdENvbnRyYWN0T3B0aW9uc1xuKTogdm9pZCB7XG4gICAgZGVzY3JpYmUoJ1RlY2hsaWZ5TGlzdENvbXBvbmVudCBDb250cmFjdCcsICgpID0+IHtcbiAgICAgICAgaXQoJ3Nob3VsZCBwYXNzIGEgc2VydmljZSB0byB0aGUgYmFzZSBjbGFzcycsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBleHBlY3QoKGNvbXBvbmVudCBhcyBhbnkpLnNlcnZpY2UpLnRvQmUob3B0aW9ucy5nZXRTZXJ2aWNlKCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICBpdCgnc2hvdWxkIGhhdmUgYSBmaWx0ZXIgZm9ybScsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmZpbHRlckZvcm0pLnRvQmVUcnV0aHkoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCBjYWxsIGxvYWREYXRhIG9uIGluaXQnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgc3B5T24oY29tcG9uZW50IGFzIGFueSwgJ2xvYWREYXRhJyk7XG4gICAgICAgICAgICAoY29tcG9uZW50IGFzIGFueSkubmdPbkluaXQoKTtcbiAgICAgICAgICAgIGV4cGVjdChjb21wb25lbnQubG9hZERhdGEpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCBwYXRjaCBmaWx0ZXJzIGZyb20gcm91dGUgb24gaW5pdCcsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBzcHlPbihjb21wb25lbnQgYXMgYW55LCAncGF0Y2hGaWx0ZXJzRnJvbVJvdXRlJyk7XG4gICAgICAgICAgICAoY29tcG9uZW50IGFzIGFueSkubmdPbkluaXQoKTtcbiAgICAgICAgICAgIGV4cGVjdChjb21wb25lbnQucGF0Y2hGaWx0ZXJzRnJvbVJvdXRlKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGl0KCdzaG91bGQgcmVsb2FkIHdoZW4gZmlsdGVyIGNoYW5nZXMnLCBmYWtlQXN5bmMoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50ID0gb3B0aW9ucy5nZXRDb21wb25lbnQoKTtcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlckZpZWxkID0gb3B0aW9ucy5maWx0ZXJGaWVsZCA/PyAnc2VhcmNoJztcbiAgICAgICAgICAgIGlmICghY29tcG9uZW50LmZpbHRlckZvcm0/LmdldChmaWx0ZXJGaWVsZCkpIHtcbiAgICAgICAgICAgICAgICBwZW5kaW5nKGBGaWx0ZXIgJyR7ZmlsdGVyRmllbGR9JyBkb2VzIG5vdCBleGlzdC5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcHlPbihjb21wb25lbnQgYXMgYW55LCAncmVsb2FkJyk7XG4gICAgICAgICAgICBjb21wb25lbnQubGlzdGVuRmlsdGVyQ2hhbmdlcygpO1xuICAgICAgICAgICAgY29tcG9uZW50LmZpbHRlckZvcm0uZ2V0KGZpbHRlckZpZWxkKT8uc2V0VmFsdWUoJ2FiYycpO1xuICAgICAgICAgICAgdGljayg1MDEpO1xuICAgICAgICAgICAgZXhwZWN0KGNvbXBvbmVudC5yZWxvYWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcblxuICAgICAgICB9KSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCBsb2FkIG5leHQgcGFnZSBvbiBzY3JvbGwnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgY29tcG9uZW50LnBhZ2UgPSAxO1xuICAgICAgICAgICAgY29tcG9uZW50Lmxhc3RQYWdlID0gMztcbiAgICAgICAgICAgIGNvbXBvbmVudC5pc1dvcmtpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHNweU9uKGNvbXBvbmVudCBhcyBhbnksICdsb2FkRGF0YScpO1xuICAgICAgICAgICAgY29tcG9uZW50Lm9uU2Nyb2xsKCk7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LnBhZ2UpLnRvQmUoMik7XG4gICAgICAgICAgICBleHBlY3QoY29tcG9uZW50LmxvYWREYXRhKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGl0KCdzaG91bGQgbm90IGxvYWQgbmV4dCBwYWdlIHdoaWxlIGFscmVhZHkgbG9hZGluZycsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IG9wdGlvbnMuZ2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICBjb21wb25lbnQucGFnZSA9IDE7XG4gICAgICAgICAgICBjb21wb25lbnQubGFzdFBhZ2UgPSAzO1xuICAgICAgICAgICAgY29tcG9uZW50LmlzV29ya2luZyA9IHRydWU7XG4gICAgICAgICAgICBzcHlPbihjb21wb25lbnQgYXMgYW55LCAnbG9hZERhdGEnKTtcbiAgICAgICAgICAgIGNvbXBvbmVudC5vblNjcm9sbCgpO1xuICAgICAgICAgICAgZXhwZWN0KGNvbXBvbmVudC5sb2FkRGF0YSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXQoJ3Nob3VsZCB1cGRhdGUgc29ydF9ieSBmaWx0ZXInLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnQgPSBvcHRpb25zLmdldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGNvbXBvbmVudC5maWx0ZXJGb3JtLmdldCgnc29ydF9ieScpO1xuICAgICAgICAgICAgaWYgKCFjb250cm9sKSB7XG4gICAgICAgICAgICAgICAgcGVuZGluZygnTm8gc29ydF9ieSBjb250cm9sLicpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNweU9uKGNvbnRyb2wsICdzZXRWYWx1ZScpO1xuICAgICAgICAgICAgY29tcG9uZW50LnNvcnRDb2x1bW4oeyBhY3RpdmU6ICduYW1lJywgZGlyZWN0aW9uOiAnYXNjJyB9KTtcbiAgICAgICAgICAgIGV4cGVjdChjb250cm9sLnNldFZhbHVlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnbmFtZXxBU0MnKTtcbiAgICAgICAgfSk7XG5cbiAgICB9KTtcblxufSJdfQ==