@sumaris-net/ngx-components 4.0.0-rc9 → 18.0.0-rc1

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 (555) hide show
  1. package/README.md +5 -3
  2. package/doc/changelog.md +522 -280
  3. package/esm2022/public_api.mjs +38 -19
  4. package/esm2022/src/app/admin/admin-routing.module.mjs +10 -17
  5. package/esm2022/src/app/admin/admin.module.mjs +7 -9
  6. package/esm2022/src/app/admin/services/filter/person.filter.mjs +3 -3
  7. package/esm2022/src/app/admin/services/person.service.mjs +31 -31
  8. package/esm2022/src/app/admin/services/validator/person.validator.mjs +10 -10
  9. package/esm2022/src/app/admin/users/users.mjs +22 -19
  10. package/esm2022/src/app/admin/users/users.module.mjs +8 -10
  11. package/esm2022/src/app/core/about/about.modal.mjs +7 -7
  12. package/esm2022/src/app/core/about/about.module.mjs +8 -21
  13. package/esm2022/src/app/core/account/account.module.mjs +28 -18
  14. package/esm2022/src/app/core/account/account.page.mjs +19 -5
  15. package/esm2022/src/app/core/account/new-token.form.mjs +106 -0
  16. package/esm2022/src/app/core/account/new-token.modal.mjs +27 -86
  17. package/esm2022/src/app/core/account/password/change-password.form.mjs +60 -0
  18. package/esm2022/src/app/core/account/password/change-password.module.mjs +22 -0
  19. package/esm2022/src/app/core/account/password/change-password.page.mjs +144 -0
  20. package/esm2022/src/app/core/account/token.table.mjs +47 -35
  21. package/esm2022/src/app/core/auth/auth.form.mjs +47 -28
  22. package/esm2022/src/app/core/auth/auth.modal.mjs +6 -6
  23. package/esm2022/src/app/core/auth/auth.module.mjs +22 -13
  24. package/esm2022/src/app/core/auth/reset-password.modal.mjs +77 -0
  25. package/esm2022/src/app/core/core.module.mjs +28 -61
  26. package/esm2022/src/app/core/core.testing.module.mjs +34 -20
  27. package/esm2022/src/app/core/form/array/form-array.mjs +325 -0
  28. package/esm2022/src/app/core/form/array/testing/form-array-test.module.mjs +23 -0
  29. package/esm2022/src/app/core/form/array/testing/form-array.test.mjs +94 -0
  30. package/esm2022/src/app/core/form/buttons/form-buttons-bar.component.mjs +24 -25
  31. package/esm2022/src/app/core/form/buttons/form-buttons-bar.module.mjs +9 -13
  32. package/esm2022/src/app/core/form/entity/editor.class.mjs +64 -517
  33. package/esm2022/src/app/core/form/entity/entity-editor-modal.class.mjs +26 -42
  34. package/esm2022/src/app/core/form/entity/entity-editor.class.mjs +42 -41
  35. package/esm2022/src/app/core/form/entity/entity-metadata.component.mjs +5 -5
  36. package/esm2022/src/app/core/form/entity/entity.module.mjs +8 -14
  37. package/esm2022/src/app/core/form/entity/tab-editor.class.mjs +194 -0
  38. package/esm2022/src/app/core/form/form-container.class.mjs +327 -0
  39. package/esm2022/src/app/core/form/form.class.mjs +39 -56
  40. package/esm2022/src/app/core/form/form.module.mjs +14 -10
  41. package/esm2022/src/app/core/form/form.utils.mjs +23 -306
  42. package/esm2022/src/app/core/form/list/list.form.mjs +16 -14
  43. package/esm2022/src/app/core/form/list/list.module.mjs +8 -12
  44. package/esm2022/src/app/core/form/properties/properties.form.mjs +139 -57
  45. package/esm2022/src/app/core/form/properties/properties.module.mjs +9 -15
  46. package/esm2022/src/app/core/form/properties/properties.table.mjs +27 -28
  47. package/esm2022/src/app/core/form/properties/properties.utils.mjs +60 -0
  48. package/esm2022/src/app/core/form/properties/property.validator.mjs +23 -9
  49. package/esm2022/src/app/core/form/properties/testing/properties-form.test.mjs +18 -18
  50. package/esm2022/src/app/core/form/properties/testing/properties-form.testing.module.mjs +8 -24
  51. package/esm2022/src/app/core/form/text-popover/testing/text-popover.testing.mjs +15 -15
  52. package/esm2022/src/app/core/form/text-popover/testing/text-popover.testing.module.mjs +10 -25
  53. package/esm2022/src/app/core/form/text-popover/text-popover.component.mjs +7 -7
  54. package/esm2022/src/app/core/form/text-popover/text-popover.module.mjs +9 -13
  55. package/esm2022/src/app/core/form/username/username.form.mjs +52 -0
  56. package/esm2022/src/app/core/form/username/username.module.mjs +20 -0
  57. package/esm2022/src/app/core/graphql/graphql.module.mjs +8 -16
  58. package/esm2022/src/app/core/graphql/graphql.service.mjs +101 -109
  59. package/esm2022/src/app/core/graphql/graphql.utils.mjs +12 -11
  60. package/esm2022/src/app/core/home/home.mjs +81 -52
  61. package/esm2022/src/app/core/home/home.module.mjs +10 -19
  62. package/esm2022/src/app/core/icon/icon.component.mjs +5 -5
  63. package/esm2022/src/app/core/icon/icon.module.mjs +8 -17
  64. package/esm2022/src/app/core/install/install-upgrade-card.component.mjs +33 -37
  65. package/esm2022/src/app/core/install/install-upgrade-card.module.mjs +9 -13
  66. package/esm2022/src/app/core/menu/menu.component.mjs +5 -6
  67. package/esm2022/src/app/core/menu/menu.model.mjs +21 -18
  68. package/esm2022/src/app/core/menu/menu.module.mjs +7 -12
  69. package/esm2022/src/app/core/menu/menu.service.mjs +44 -60
  70. package/esm2022/src/app/core/menu/sub-menu-tab.directive.mjs +4 -4
  71. package/esm2022/src/app/core/menu/testing/menu-other.testing.mjs +7 -6
  72. package/esm2022/src/app/core/menu/testing/menu.testing.mjs +43 -8
  73. package/esm2022/src/app/core/menu/testing/menu.testing.module.mjs +8 -27
  74. package/esm2022/src/app/core/offline/update-offline-mode-card.component.mjs +6 -7
  75. package/esm2022/src/app/core/offline/update-offline-mode-card.module.mjs +9 -13
  76. package/esm2022/src/app/core/peer/select-peer.modal.mjs +31 -21
  77. package/esm2022/src/app/core/peer/select-peer.module.mjs +11 -23
  78. package/esm2022/src/app/core/register/register-confirm.page.mjs +18 -16
  79. package/esm2022/src/app/core/register/register.form.mjs +7 -7
  80. package/esm2022/src/app/core/register/register.modal.mjs +6 -6
  81. package/esm2022/src/app/core/register/register.module.mjs +8 -29
  82. package/esm2022/src/app/core/services/account.service.mjs +272 -170
  83. package/esm2022/src/app/core/services/auth-guard.service.mjs +13 -15
  84. package/esm2022/src/app/core/services/base-entity-service.class.mjs +55 -64
  85. package/esm2022/src/app/core/services/base-graphql-service.class.mjs +39 -33
  86. package/esm2022/src/app/core/services/base58.mjs +8 -4
  87. package/esm2022/src/app/core/services/config/core.config.mjs +88 -37
  88. package/esm2022/src/app/core/services/config.service.mjs +81 -62
  89. package/esm2022/src/app/core/services/crypto.service.mjs +11 -11
  90. package/esm2022/src/app/core/services/errors.mjs +6 -5
  91. package/esm2022/src/app/core/services/local-settings.service.mjs +58 -44
  92. package/esm2022/src/app/core/services/model/account.model.mjs +12 -17
  93. package/esm2022/src/app/core/services/model/config.model.mjs +7 -7
  94. package/esm2022/src/app/core/services/model/department.model.mjs +3 -2
  95. package/esm2022/src/app/core/services/model/entity.decorators.mjs +6 -6
  96. package/esm2022/src/app/core/services/model/entity.model.mjs +27 -31
  97. package/esm2022/src/app/core/services/model/filter.model.mjs +12 -15
  98. package/esm2022/src/app/core/services/model/history.model.mjs +1 -1
  99. package/esm2022/src/app/core/services/model/model.enum.mjs +2 -2
  100. package/esm2022/src/app/core/services/model/peer.model.mjs +19 -9
  101. package/esm2022/src/app/core/services/model/person.model.mjs +26 -22
  102. package/esm2022/src/app/core/services/model/referential.model.mjs +36 -23
  103. package/esm2022/src/app/core/services/model/settings.model.mjs +2 -1
  104. package/esm2022/src/app/core/services/model/token.model.mjs +7 -3
  105. package/esm2022/src/app/core/services/model/tree-item-entity.model.mjs +3 -7
  106. package/esm2022/src/app/core/services/network.service.mjs +99 -76
  107. package/esm2022/src/app/core/services/network.types.mjs +1 -1
  108. package/esm2022/src/app/core/services/network.utils.mjs +3 -3
  109. package/esm2022/src/app/core/services/pipes/account.pipes.mjs +11 -11
  110. package/esm2022/src/app/core/services/pipes/department-to-string.pipe.mjs +6 -6
  111. package/esm2022/src/app/core/services/pipes/person-to-string.pipe.mjs +9 -9
  112. package/esm2022/src/app/core/services/pipes/pipes.module.mjs +54 -0
  113. package/esm2022/src/app/core/services/pipes/referential-to-string.pipe.mjs +21 -0
  114. package/esm2022/src/app/core/services/pipes/usage-mode.pipes.mjs +11 -11
  115. package/esm2022/src/app/core/services/platform.service.mjs +102 -69
  116. package/esm2022/src/app/core/services/storage/entities-storage.service.mjs +32 -39
  117. package/esm2022/src/app/core/services/storage/entity-store.class.mjs +36 -45
  118. package/esm2022/src/app/core/services/testing/referential-filter.model.mjs +1 -1
  119. package/esm2022/src/app/core/services/testing/referential.validator.mjs +14 -14
  120. package/esm2022/src/app/core/services/validator/account.validator.mjs +5 -5
  121. package/esm2022/src/app/core/services/validator/base.validator.class.mjs +5 -5
  122. package/esm2022/src/app/core/services/validator/local-settings.validator.mjs +34 -20
  123. package/esm2022/src/app/core/services/validator/user-settings.validator.mjs +5 -5
  124. package/esm2022/src/app/core/services/validator/user-token.validator.mjs +12 -9
  125. package/esm2022/src/app/core/settings/settings.module.mjs +9 -21
  126. package/esm2022/src/app/core/settings/settings.page.mjs +76 -63
  127. package/esm2022/src/app/core/table/async-table.class.mjs +219 -201
  128. package/esm2022/src/app/core/table/column/actions-column.component.mjs +127 -0
  129. package/esm2022/src/app/core/table/column/nav-actions-column.component.mjs +117 -0
  130. package/esm2022/src/app/core/table/column/row-field.component.mjs +116 -0
  131. package/esm2022/src/app/core/table/entities-async-table-datasource.class.mjs +31 -33
  132. package/esm2022/src/app/core/table/entities-table-datasource.class.mjs +36 -36
  133. package/esm2022/src/app/core/table/memory-table.class.mjs +5 -5
  134. package/esm2022/src/app/core/table/table-select-columns.component.mjs +8 -8
  135. package/esm2022/src/app/core/table/table.class.mjs +193 -152
  136. package/esm2022/src/app/core/table/table.model.mjs +1 -1
  137. package/esm2022/src/app/core/table/table.module.mjs +35 -24
  138. package/esm2022/src/app/core/table/table.pipes.mjs +77 -0
  139. package/esm2022/src/app/core/table/table.utils.mjs +2 -4
  140. package/esm2022/src/app/core/table/testing/table-validator.service.mjs +9 -5
  141. package/esm2022/src/app/core/table/testing/table.testing.mjs +116 -78
  142. package/esm2022/src/app/core/table/testing/table.testing.module.mjs +8 -33
  143. package/esm2022/src/app/core/table/testing/table2-validator.service.mjs +4 -4
  144. package/esm2022/src/app/core/table/testing/table2.testing.mjs +68 -45
  145. package/esm2022/src/app/shared/alerts.mjs +49 -45
  146. package/esm2022/src/app/shared/audio/audio.mjs +25 -27
  147. package/esm2022/src/app/shared/audio/audio.testing.mjs +5 -5
  148. package/esm2022/src/app/shared/audio/audio.testing.module.mjs +10 -25
  149. package/esm2022/src/app/shared/capacitor/keyboard.mjs +5 -5
  150. package/esm2022/src/app/shared/capacitor/plugins.mjs +1 -1
  151. package/esm2022/src/app/shared/constants.mjs +9 -4
  152. package/esm2022/src/app/shared/dates.mjs +18 -16
  153. package/esm2022/src/app/shared/debug/debug-service.class.mjs +1 -1
  154. package/esm2022/src/app/shared/debug/debug.component.mjs +5 -5
  155. package/esm2022/src/app/shared/debug/debug.module.mjs +8 -29
  156. package/esm2022/src/app/shared/directives/autofocus.directive.mjs +8 -15
  157. package/esm2022/src/app/shared/directives/autotitle.directive.mjs +4 -4
  158. package/esm2022/src/app/shared/directives/directives.module.mjs +8 -29
  159. package/esm2022/src/app/shared/directives/drag-and-drop.directive.mjs +4 -4
  160. package/esm2022/src/app/shared/directives/ng-var.directive.mjs +4 -4
  161. package/esm2022/src/app/shared/directives/resizable/resizable.component.mjs +4 -4
  162. package/esm2022/src/app/shared/directives/resizable/resizable.directive.mjs +4 -4
  163. package/esm2022/src/app/shared/directives/resizable/resizable.module.mjs +4 -4
  164. package/esm2022/src/app/shared/events.mjs +6 -8
  165. package/esm2022/src/app/shared/file/csv.utils.mjs +38 -18
  166. package/esm2022/src/app/shared/file/file.service.mjs +11 -15
  167. package/esm2022/src/app/shared/file/file.utils.mjs +13 -11
  168. package/esm2022/src/app/shared/file/images.utils.mjs +29 -4
  169. package/esm2022/src/app/shared/file/json.utils.mjs +11 -4
  170. package/esm2022/src/app/shared/file/uri.utils.mjs +1 -1
  171. package/esm2022/src/app/shared/focusable.mjs +1 -1
  172. package/esm2022/src/app/shared/form/field.component.mjs +69 -43
  173. package/esm2022/src/app/shared/form/field.model.mjs +4 -4
  174. package/esm2022/src/app/shared/form/loading-spinner.mjs +5 -5
  175. package/esm2022/src/app/shared/forms.mjs +116 -43
  176. package/esm2022/src/app/shared/functions.mjs +139 -71
  177. package/esm2022/src/app/shared/geolocation/geolocation.utils.mjs +14 -14
  178. package/esm2022/src/app/shared/gesture/gesture-config.mjs +10 -10
  179. package/esm2022/src/app/shared/gesture/hammer.utils.mjs +1 -1
  180. package/esm2022/src/app/shared/graph/colors.utils.mjs +14 -18
  181. package/esm2022/src/app/shared/graph/graph-colors.mjs +23 -29
  182. package/esm2022/src/app/shared/guard/component-dirty.guard.mjs +4 -4
  183. package/esm2022/src/app/shared/help/help.modal.mjs +6 -6
  184. package/esm2022/src/app/shared/hotkeys/dialog/hotkeys-dialog.component.mjs +5 -5
  185. package/esm2022/src/app/shared/hotkeys/hotkeys.service.mjs +44 -17
  186. package/esm2022/src/app/shared/hotkeys/shared-hotkeys.module.mjs +9 -27
  187. package/esm2022/src/app/shared/http/http.utils.mjs +15 -11
  188. package/esm2022/src/app/shared/image/gallery/image-gallery.component.mjs +27 -27
  189. package/esm2022/src/app/shared/image/gallery/image-gallery.module.mjs +13 -10
  190. package/esm2022/src/app/shared/image/gallery/testing/gallegry.model.testing.mjs +1 -1
  191. package/esm2022/src/app/shared/image/gallery/testing/gallery.service.testing.mjs +14 -17
  192. package/esm2022/src/app/shared/image/gallery/testing/gallery.testing.mjs +9 -13
  193. package/esm2022/src/app/shared/image/gallery/testing/gallery.testing.module.mjs +14 -11
  194. package/esm2022/src/app/shared/image/image.model.mjs +1 -1
  195. package/esm2022/src/app/shared/image/image.module.mjs +8 -13
  196. package/esm2022/src/app/shared/image/image.service.mjs +14 -12
  197. package/esm2022/src/app/shared/inputs.mjs +52 -20
  198. package/esm2022/src/app/shared/interceptors/progess.interceptor.mjs +2 -3
  199. package/esm2022/src/app/shared/logging/log-level.model.mjs +1 -1
  200. package/esm2022/src/app/shared/logging/logger.model.mjs +2 -2
  201. package/esm2022/src/app/shared/logging/logging-service.class.mjs +17 -20
  202. package/esm2022/src/app/shared/logging/logging-service.module.mjs +6 -6
  203. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.config.mjs +7 -10
  204. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +348 -238
  205. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.module.mjs +13 -16
  206. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.utils.mjs +5 -4
  207. package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +51 -37
  208. package/esm2022/src/app/shared/material/badge/badge.directive.mjs +99 -57
  209. package/esm2022/src/app/shared/material/badge/badge.module.mjs +8 -20
  210. package/esm2022/src/app/shared/material/badge/badge.test.mjs +5 -5
  211. package/esm2022/src/app/shared/material/boolean/boolean.module.mjs +19 -20
  212. package/esm2022/src/app/shared/material/boolean/material.boolean.mjs +209 -104
  213. package/esm2022/src/app/shared/material/boolean/testing/boolean.test.page.mjs +15 -8
  214. package/esm2022/src/app/shared/material/chips/chips.module.mjs +12 -13
  215. package/esm2022/src/app/shared/material/chips/material.chips.mjs +228 -168
  216. package/esm2022/src/app/shared/material/chips/testing/chips.test.mjs +20 -21
  217. package/esm2022/src/app/shared/material/datetime/datetime.module.mjs +12 -27
  218. package/esm2022/src/app/shared/material/datetime/material.date.mjs +167 -92
  219. package/esm2022/src/app/shared/material/datetime/material.dateshort.mjs +128 -77
  220. package/esm2022/src/app/shared/material/datetime/material.datetime.mjs +297 -165
  221. package/esm2022/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +34 -30
  222. package/esm2022/src/app/shared/material/datetime/testing/mat-date.test.mjs +31 -27
  223. package/esm2022/src/app/shared/material/datetime/testing/mat-dateshort.test.mjs +26 -23
  224. package/esm2022/src/app/shared/material/duration/duration.module.mjs +11 -16
  225. package/esm2022/src/app/shared/material/duration/duration.utils.mjs +3 -6
  226. package/esm2022/src/app/shared/material/duration/material.duration.mjs +35 -34
  227. package/esm2022/src/app/shared/material/duration/testing/mat-duration.test.mjs +23 -22
  228. package/esm2022/src/app/shared/material/latlong/latlong.utils.mjs +217 -170
  229. package/esm2022/src/app/shared/material/latlong/material.latlong.mjs +182 -241
  230. package/esm2022/src/app/shared/material/latlong/material.latlong.module.mjs +10 -15
  231. package/esm2022/src/app/shared/material/latlong/testing/latlong.test.mjs +19 -14
  232. package/esm2022/src/app/shared/material/material.animations.mjs +22 -22
  233. package/esm2022/src/app/shared/material/material.config.mjs +3 -0
  234. package/esm2022/src/app/shared/material/material.module.mjs +16 -16
  235. package/esm2022/src/app/shared/material/material.testing.module.mjs +50 -37
  236. package/esm2022/src/app/shared/material/paginator/material.paginator-i18n.mjs +12 -9
  237. package/esm2022/src/app/shared/material/stepper/material.stepper-i18n.mjs +4 -4
  238. package/esm2022/src/app/shared/material/swipe/material.swipe.mjs +26 -19
  239. package/esm2022/src/app/shared/material/swipe/swipe.module.mjs +7 -11
  240. package/esm2022/src/app/shared/material/swipe/testing/swipe.test.mjs +8 -8
  241. package/esm2022/src/app/shared/material/testing/common.test.mjs +30 -24
  242. package/esm2022/src/app/shared/material/text/testing/text-form.testing.mjs +30 -19
  243. package/esm2022/src/app/shared/material/text/text-form.component.mjs +128 -21
  244. package/esm2022/src/app/shared/material/text/text-form.module.mjs +8 -8
  245. package/esm2022/src/app/shared/modules.mjs +1 -1
  246. package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +118 -37
  247. package/esm2022/src/app/shared/named-filter/named-filter.model.mjs +1 -1
  248. package/esm2022/src/app/shared/named-filter/named-filter.module.mjs +5 -5
  249. package/esm2022/src/app/shared/named-filter/named-filter.service.mjs +8 -8
  250. package/esm2022/src/app/shared/named-filter/testing/named-filter-selector.testing.mjs +74 -0
  251. package/esm2022/src/app/shared/named-filter/testing/named-filter.testing.module.mjs +28 -0
  252. package/esm2022/src/app/shared/observables.mjs +14 -18
  253. package/esm2022/src/app/shared/pipes/arrays.pipe.mjs +53 -38
  254. package/esm2022/src/app/shared/pipes/badge.pipes.mjs +24 -0
  255. package/esm2022/src/app/shared/pipes/colors.pipe.mjs +8 -6
  256. package/esm2022/src/app/shared/pipes/date-diff-duration.pipe.mjs +8 -10
  257. package/esm2022/src/app/shared/pipes/date-format.pipe.mjs +15 -15
  258. package/esm2022/src/app/shared/pipes/date-from-now.pipe.mjs +6 -6
  259. package/esm2022/src/app/shared/pipes/duration.pipe.mjs +6 -6
  260. package/esm2022/src/app/shared/pipes/file-size.pipe.mjs +6 -13
  261. package/esm2022/src/app/shared/pipes/form.pipes.mjs +72 -47
  262. package/esm2022/src/app/shared/pipes/highlight.pipe.mjs +15 -15
  263. package/esm2022/src/app/shared/pipes/html.pipes.mjs +52 -0
  264. package/esm2022/src/app/shared/pipes/latlong-format.pipe.mjs +14 -14
  265. package/esm2022/src/app/shared/pipes/maps.pipe.mjs +17 -17
  266. package/esm2022/src/app/shared/pipes/maskito.pipe.mjs +37 -88
  267. package/esm2022/src/app/shared/pipes/math.pipes.mjs +16 -16
  268. package/esm2022/src/app/shared/pipes/ng-init.pipe.mjs +5 -5
  269. package/esm2022/src/app/shared/pipes/number-format.pipe.mjs +6 -6
  270. package/esm2022/src/app/shared/pipes/pipes.module.mjs +117 -137
  271. package/esm2022/src/app/shared/pipes/property.pipes.mjs +86 -47
  272. package/esm2022/src/app/shared/pipes/selection.pipes.mjs +179 -0
  273. package/esm2022/src/app/shared/pipes/string.pipes.mjs +50 -49
  274. package/esm2022/src/app/shared/pipes/translate-context.pipe.mjs +11 -11
  275. package/esm2022/src/app/shared/pipes/types.pipes.mjs +33 -17
  276. package/esm2022/src/app/shared/platforms.mjs +7 -5
  277. package/esm2022/src/app/shared/rx-state.module.mjs +7 -11
  278. package/esm2022/src/app/shared/services/entity-service.class.mjs +2 -2
  279. package/esm2022/src/app/shared/services/job.utils.mjs +7 -7
  280. package/esm2022/src/app/shared/services/memory-entity-service.class.mjs +43 -41
  281. package/esm2022/src/app/shared/services/progress-bar.service.mjs +4 -4
  282. package/esm2022/src/app/shared/services/startable-observable-service.class.mjs +11 -14
  283. package/esm2022/src/app/shared/services/startable-service.class.mjs +11 -17
  284. package/esm2022/src/app/shared/services/translate-context.service.mjs +18 -15
  285. package/esm2022/src/app/shared/services/validator-service.class.mjs +1 -1
  286. package/esm2022/src/app/shared/services.mjs +12 -12
  287. package/esm2022/src/app/shared/shared-routing.module.mjs +19 -18
  288. package/esm2022/src/app/shared/shared.module.mjs +29 -28
  289. package/esm2022/src/app/shared/shared.testing.module.mjs +18 -10
  290. package/esm2022/src/app/shared/storage/storage-explorer.component.mjs +39 -46
  291. package/esm2022/src/app/shared/storage/storage-explorer.module.mjs +8 -12
  292. package/esm2022/src/app/shared/storage/storage-explorer.testing-routing.module.mjs +9 -17
  293. package/esm2022/src/app/shared/storage/storage-explorer.testing.module.mjs +10 -18
  294. package/esm2022/src/app/shared/storage/storage.service.mjs +4 -4
  295. package/esm2022/src/app/shared/storage/storage.utils.mjs +2 -2
  296. package/esm2022/src/app/shared/testing/maskito.test.mjs +41 -0
  297. package/esm2022/src/app/shared/testing/observable.test.mjs +11 -13
  298. package/esm2022/src/app/shared/testing/tests.page.mjs +6 -6
  299. package/esm2022/src/app/shared/toast/toast.testing.mjs +11 -11
  300. package/esm2022/src/app/shared/toast/toast.testing.module.mjs +10 -25
  301. package/esm2022/src/app/shared/toast/toasts.mjs +9 -9
  302. package/esm2022/src/app/shared/toolbar/modal-toolbar.mjs +10 -8
  303. package/esm2022/src/app/shared/toolbar/toolbar.mjs +31 -32
  304. package/esm2022/src/app/shared/toolbar/toolbar.module.mjs +8 -39
  305. package/esm2022/src/app/shared/types.mjs +1 -1
  306. package/esm2022/src/app/shared/upload-file/testing/upload-file.testing.mjs +12 -12
  307. package/esm2022/src/app/shared/upload-file/testing/upload-file.testing.module.mjs +10 -25
  308. package/esm2022/src/app/shared/upload-file/upload-file-popover.component.mjs +7 -8
  309. package/esm2022/src/app/shared/upload-file/upload-file.component.mjs +21 -19
  310. package/esm2022/src/app/shared/upload-file/upload-file.model.mjs +2 -3
  311. package/esm2022/src/app/shared/validator/form-error-adapter.class.mjs +64 -56
  312. package/esm2022/src/app/shared/validator/validators.mjs +60 -39
  313. package/esm2022/src/app/shared/version/versions.mjs +2 -2
  314. package/esm2022/src/app/social/job/job.module.mjs +8 -27
  315. package/esm2022/src/app/social/job/progression/job-progression.component.mjs +9 -9
  316. package/esm2022/src/app/social/job/progression/job-progression.icon.mjs +49 -46
  317. package/esm2022/src/app/social/job/progression/job-progression.list.mjs +10 -13
  318. package/esm2022/src/app/social/job/progression/job-progression.model.mjs +1 -1
  319. package/esm2022/src/app/social/job/progression/job-progression.service.mjs +39 -21
  320. package/esm2022/src/app/social/job/testing/job-progression.testing.mjs +6 -11
  321. package/esm2022/src/app/social/job/testing/job-progression.testing.service.mjs +11 -30
  322. package/esm2022/src/app/social/job/testing/job.testing.module.mjs +8 -21
  323. package/esm2022/src/app/social/message/message.form.mjs +5 -5
  324. package/esm2022/src/app/social/message/message.modal.mjs +8 -8
  325. package/esm2022/src/app/social/message/message.model.mjs +8 -8
  326. package/esm2022/src/app/social/message/message.module.mjs +4 -4
  327. package/esm2022/src/app/social/message/message.service.mjs +7 -7
  328. package/esm2022/src/app/social/social.errors.mjs +2 -2
  329. package/esm2022/src/app/social/social.module.mjs +7 -32
  330. package/esm2022/src/app/social/social.testing.module.mjs +9 -20
  331. package/esm2022/src/app/social/user-event/notification/user-event-notification.icon.mjs +27 -23
  332. package/esm2022/src/app/social/user-event/notification/user-event-notification.list.mjs +19 -22
  333. package/esm2022/src/app/social/user-event/testing/user-event.testing.mjs +47 -23
  334. package/esm2022/src/app/social/user-event/testing/user-event.testing.model.mjs +8 -8
  335. package/esm2022/src/app/social/user-event/testing/user-event.testing.module.mjs +8 -21
  336. package/esm2022/src/app/social/user-event/testing/user-event.testing.service.mjs +27 -15
  337. package/esm2022/src/app/social/user-event/user-event.model.mjs +1 -1
  338. package/esm2022/src/app/social/user-event/user-event.module.mjs +8 -28
  339. package/esm2022/src/app/social/user-event/user-event.service.mjs +61 -64
  340. package/esm2022/src/environments/environment.class.mjs +9 -1
  341. package/esm2022/src/environments/environment.loader.mjs +5 -11
  342. package/esm2022/src/environments/environment.mjs +19 -11
  343. package/fesm2022/sumaris-net.ngx-components.mjs +16117 -14592
  344. package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
  345. package/package.json +33 -18
  346. package/public_api.d.ts +30 -22
  347. package/src/app/admin/services/filter/person.filter.d.ts +1 -1
  348. package/src/app/admin/users/users.d.ts +5 -6
  349. package/src/app/core/account/account.module.d.ts +10 -8
  350. package/src/app/core/account/account.page.d.ts +25 -15
  351. package/src/app/core/account/new-token.form.d.ts +29 -0
  352. package/src/app/core/account/new-token.modal.d.ts +9 -21
  353. package/src/app/core/account/password/change-password.form.d.ts +19 -0
  354. package/src/app/core/account/password/change-password.module.d.ts +11 -0
  355. package/src/app/core/account/password/change-password.page.d.ts +36 -0
  356. package/src/app/core/account/token.table.d.ts +7 -5
  357. package/src/app/core/auth/auth.form.d.ts +11 -9
  358. package/src/app/core/auth/auth.module.d.ts +6 -4
  359. package/src/app/core/auth/reset-password.modal.d.ts +26 -0
  360. package/src/app/core/core.module.d.ts +21 -24
  361. package/src/app/core/core.testing.module.d.ts +2 -1
  362. package/src/app/core/form/array/form-array.d.ts +136 -0
  363. package/src/app/core/form/array/testing/form-array-test.module.d.ts +12 -0
  364. package/src/app/core/form/array/testing/form-array.test.d.ts +26 -0
  365. package/src/app/core/form/buttons/form-buttons-bar.component.d.ts +2 -3
  366. package/src/app/core/form/entity/editor.class.d.ts +19 -179
  367. package/src/app/core/form/entity/entity-editor-modal.class.d.ts +10 -13
  368. package/src/app/core/form/entity/entity-editor.class.d.ts +12 -17
  369. package/src/app/core/form/entity/entity-metadata.component.d.ts +1 -1
  370. package/src/app/core/form/entity/tab-editor.class.d.ts +70 -0
  371. package/src/app/core/form/form-container.class.d.ts +126 -0
  372. package/src/app/core/form/form.class.d.ts +13 -26
  373. package/src/app/core/form/form.module.d.ts +2 -1
  374. package/src/app/core/form/form.utils.d.ts +60 -145
  375. package/src/app/core/form/list/list.form.d.ts +2 -2
  376. package/src/app/core/form/properties/properties.form.d.ts +34 -12
  377. package/src/app/core/form/properties/properties.table.d.ts +2 -2
  378. package/src/app/core/form/properties/properties.utils.d.ts +27 -0
  379. package/src/app/core/form/properties/property.validator.d.ts +9 -3
  380. package/src/app/core/form/text-popover/testing/text-popover.testing.d.ts +3 -1
  381. package/src/app/core/form/username/username.form.d.ts +19 -0
  382. package/src/app/core/form/username/username.module.d.ts +9 -0
  383. package/src/app/core/graphql/graphql.module.d.ts +1 -2
  384. package/src/app/core/graphql/graphql.service.d.ts +2 -4
  385. package/src/app/core/home/home.d.ts +26 -6
  386. package/src/app/core/menu/testing/menu-other.testing.d.ts +1 -1
  387. package/src/app/core/menu/testing/menu.testing.d.ts +11 -3
  388. package/src/app/core/peer/select-peer.modal.d.ts +13 -7
  389. package/src/app/core/peer/select-peer.module.d.ts +3 -4
  390. package/src/app/core/services/account.service.d.ts +9 -0
  391. package/src/app/core/services/base-entity-service.class.d.ts +1 -1
  392. package/src/app/core/services/config/core.config.d.ts +12 -1
  393. package/src/app/core/services/config.service.d.ts +4 -3
  394. package/src/app/core/services/errors.d.ts +11 -0
  395. package/src/app/core/services/local-settings.service.d.ts +8 -4
  396. package/src/app/core/services/model/entity.model.d.ts +6 -5
  397. package/src/app/core/services/model/filter.model.d.ts +1 -1
  398. package/src/app/core/services/model/peer.model.d.ts +1 -0
  399. package/src/app/core/services/model/person.model.d.ts +6 -2
  400. package/src/app/core/services/model/referential.model.d.ts +8 -3
  401. package/src/app/core/services/model/settings.model.d.ts +4 -2
  402. package/src/app/core/services/model/token.model.d.ts +1 -0
  403. package/src/app/core/services/model/tree-item-entity.model.d.ts +1 -1
  404. package/src/app/core/services/network.service.d.ts +11 -7
  405. package/src/app/core/services/pipes/department-to-string.pipe.d.ts +1 -1
  406. package/src/app/core/services/pipes/person-to-string.pipe.d.ts +3 -1
  407. package/src/app/core/services/pipes/pipes.module.d.ts +11 -0
  408. package/src/app/core/services/pipes/referential-to-string.pipe.d.ts +13 -0
  409. package/src/app/core/services/platform.service.d.ts +8 -3
  410. package/src/app/core/services/testing/referential-filter.model.d.ts +1 -1
  411. package/src/app/core/services/validator/local-settings.validator.d.ts +6 -2
  412. package/src/app/core/settings/settings.module.d.ts +2 -1
  413. package/src/app/core/settings/settings.page.d.ts +34 -21
  414. package/src/app/core/table/async-table.class.d.ts +22 -17
  415. package/src/app/core/table/column/actions-column.component.d.ts +59 -0
  416. package/src/app/core/table/column/nav-actions-column.component.d.ts +46 -0
  417. package/src/app/core/table/column/row-field.component.d.ts +40 -0
  418. package/src/app/core/table/entities-async-table-datasource.class.d.ts +1 -0
  419. package/src/app/core/table/entities-table-datasource.class.d.ts +1 -0
  420. package/src/app/core/table/table.class.d.ts +14 -11
  421. package/src/app/core/table/table.module.d.ts +8 -4
  422. package/src/app/core/table/table.pipes.d.ts +28 -0
  423. package/src/app/core/table/testing/table.testing.d.ts +12 -13
  424. package/src/app/core/table/testing/table2.testing.d.ts +13 -10
  425. package/src/app/shared/alerts.d.ts +4 -2
  426. package/src/app/shared/constants.d.ts +5 -0
  427. package/src/app/shared/dates.d.ts +12 -5
  428. package/src/app/shared/directives/autofocus.directive.d.ts +0 -1
  429. package/src/app/shared/events.d.ts +1 -1
  430. package/src/app/shared/file/csv.utils.d.ts +5 -0
  431. package/src/app/shared/file/images.utils.d.ts +17 -0
  432. package/src/app/shared/file/json.utils.d.ts +3 -0
  433. package/src/app/shared/form/field.component.d.ts +6 -3
  434. package/src/app/shared/forms.d.ts +32 -0
  435. package/src/app/shared/functions.d.ts +27 -8
  436. package/src/app/shared/graph/graph-colors.d.ts +1 -1
  437. package/src/app/shared/guard/component-dirty.guard.d.ts +1 -6
  438. package/src/app/shared/hotkeys/hotkeys.service.d.ts +17 -3
  439. package/src/app/shared/http/http.utils.d.ts +1 -0
  440. package/src/app/shared/image/gallery/image-gallery.component.d.ts +10 -10
  441. package/src/app/shared/image/gallery/image-gallery.module.d.ts +2 -1
  442. package/src/app/shared/image/gallery/testing/gallery.service.testing.d.ts +2 -2
  443. package/src/app/shared/image/gallery/testing/gallery.testing.module.d.ts +2 -1
  444. package/src/app/shared/inputs.d.ts +8 -6
  445. package/src/app/shared/material/autocomplete/material.autocomplete.config.d.ts +20 -1
  446. package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +56 -16
  447. package/src/app/shared/material/autocomplete/material.autocomplete.module.d.ts +1 -1
  448. package/src/app/shared/material/autocomplete/material.autocomplete.utils.d.ts +2 -1
  449. package/src/app/shared/material/autocomplete/testing/autocomplete.test.d.ts +3 -2
  450. package/src/app/shared/material/badge/badge.directive.d.ts +10 -4
  451. package/src/app/shared/material/boolean/boolean.module.d.ts +15 -14
  452. package/src/app/shared/material/boolean/material.boolean.d.ts +51 -25
  453. package/src/app/shared/material/boolean/testing/boolean.test.page.d.ts +1 -0
  454. package/src/app/shared/material/chips/chips.module.d.ts +2 -1
  455. package/src/app/shared/material/chips/material.chips.d.ts +46 -21
  456. package/src/app/shared/material/chips/testing/chips.test.d.ts +1 -0
  457. package/src/app/shared/material/datetime/datetime.module.d.ts +1 -1
  458. package/src/app/shared/material/datetime/material.date.d.ts +33 -18
  459. package/src/app/shared/material/datetime/material.dateshort.d.ts +29 -16
  460. package/src/app/shared/material/datetime/material.datetime.d.ts +41 -28
  461. package/src/app/shared/material/datetime/testing/mat-date-time.test.d.ts +3 -3
  462. package/src/app/shared/material/duration/duration.module.d.ts +1 -1
  463. package/src/app/shared/material/duration/material.duration.d.ts +1 -1
  464. package/src/app/shared/material/latlong/latlong.utils.d.ts +9 -1
  465. package/src/app/shared/material/latlong/material.latlong.d.ts +29 -32
  466. package/src/app/shared/material/latlong/material.latlong.module.d.ts +1 -1
  467. package/src/app/shared/material/latlong/testing/latlong.test.d.ts +5 -1
  468. package/src/app/shared/material/material.config.d.ts +3 -0
  469. package/src/app/shared/material/material.module.d.ts +5 -6
  470. package/src/app/shared/material/material.testing.module.d.ts +8 -7
  471. package/src/app/shared/material/swipe/material.swipe.d.ts +4 -3
  472. package/src/app/shared/material/text/testing/text-form.testing.d.ts +10 -4
  473. package/src/app/shared/material/text/text-form.component.d.ts +42 -8
  474. package/src/app/shared/named-filter/named-filter-selector.component.d.ts +30 -14
  475. package/src/app/shared/named-filter/named-filter.service.d.ts +12 -6
  476. package/src/app/shared/named-filter/testing/named-filter-selector.testing.d.ts +34 -0
  477. package/src/app/shared/named-filter/testing/named-filter.testing.module.d.ts +10 -0
  478. package/src/app/shared/pipes/arrays.pipe.d.ts +5 -0
  479. package/src/app/shared/pipes/badge.pipes.d.ts +7 -0
  480. package/src/app/shared/pipes/date-format.pipe.d.ts +3 -2
  481. package/src/app/shared/pipes/form.pipes.d.ts +18 -8
  482. package/src/app/shared/pipes/html.pipes.d.ts +15 -0
  483. package/src/app/shared/pipes/maps.pipe.d.ts +4 -4
  484. package/src/app/shared/pipes/maskito.pipe.d.ts +7 -9
  485. package/src/app/shared/pipes/pipes.module.d.ts +7 -4
  486. package/src/app/shared/pipes/property.pipes.d.ts +24 -3
  487. package/src/app/shared/pipes/selection.pipes.d.ts +62 -0
  488. package/src/app/shared/pipes/string.pipes.d.ts +6 -6
  489. package/src/app/shared/pipes/types.pipes.d.ts +6 -1
  490. package/src/app/shared/services/entity-service.class.d.ts +0 -2
  491. package/src/app/shared/services/memory-entity-service.class.d.ts +6 -3
  492. package/src/app/shared/services.d.ts +1 -0
  493. package/src/app/shared/shared.testing.module.d.ts +2 -1
  494. package/src/app/shared/storage/storage-explorer.component.d.ts +4 -3
  495. package/src/app/shared/testing/maskito.test.d.ts +10 -0
  496. package/src/app/shared/toolbar/toolbar.d.ts +7 -2
  497. package/src/app/shared/types.d.ts +5 -0
  498. package/src/app/shared/upload-file/upload-file.component.d.ts +1 -0
  499. package/src/app/shared/validator/form-error-adapter.class.d.ts +17 -11
  500. package/src/app/shared/validator/validators.d.ts +20 -9
  501. package/src/app/social/job/progression/job-progression.icon.d.ts +4 -5
  502. package/src/app/social/job/progression/job-progression.list.d.ts +1 -3
  503. package/src/app/social/job/progression/job-progression.service.d.ts +3 -4
  504. package/src/app/social/job/testing/job-progression.testing.d.ts +0 -1
  505. package/src/app/social/job/testing/job-progression.testing.service.d.ts +3 -11
  506. package/src/app/social/message/message.modal.d.ts +2 -2
  507. package/src/app/social/message/message.model.d.ts +1 -1
  508. package/src/app/social/user-event/notification/user-event-notification.icon.d.ts +4 -4
  509. package/src/app/social/user-event/testing/user-event.testing.d.ts +1 -0
  510. package/src/app/social/user-event/testing/user-event.testing.model.d.ts +2 -3
  511. package/src/app/social/user-event/testing/user-event.testing.service.d.ts +1 -0
  512. package/src/assets/i18n/en-US.json +48 -19
  513. package/src/assets/i18n/en.json +48 -20
  514. package/src/assets/i18n/fr.json +50 -20
  515. package/src/assets/manifest.json +1 -1
  516. package/src/environments/environment.class.d.ts +10 -0
  517. package/src/environments/environment.d.ts +0 -1
  518. package/src/environments/environment.loader.d.ts +0 -2
  519. package/src/theme/_functions.scss +15 -0
  520. package/src/theme/_icons.scss +1 -1
  521. package/src/theme/_ionic.globals.scss +8 -2
  522. package/src/theme/_ionic.scss +10 -10
  523. package/src/theme/_material.globals.scss +16 -43
  524. package/src/theme/_material.scss +45 -32
  525. package/src/theme/_mixins.scss +99 -18
  526. package/src/theme/_ngx-components.forms.scss +354 -0
  527. package/src/theme/_ngx-components.globals.scss +20 -10
  528. package/src/theme/_ngx-components.scss +194 -400
  529. package/src/theme/_ngx-components.table.scss +200 -207
  530. package/src/theme/_ngx-components.tabs.scss +54 -0
  531. package/src/theme/_responsive.scss +0 -31
  532. package/src/theme/_theme.scss +2 -0
  533. package/src/theme/_theme.variables.scss +172 -0
  534. package/esm2022/src/app/core/table/actions-column.component.mjs +0 -115
  535. package/esm2022/src/app/shared/material/boolean/material-boolean2.mjs +0 -266
  536. package/esm2022/src/app/shared/material/numpad/numpad.append-to-input.directive.mjs +0 -104
  537. package/esm2022/src/app/shared/material/numpad/numpad.component.mjs +0 -83
  538. package/esm2022/src/app/shared/material/numpad/numpad.container.mjs +0 -203
  539. package/esm2022/src/app/shared/material/numpad/numpad.content.mjs +0 -19
  540. package/esm2022/src/app/shared/material/numpad/numpad.directive.mjs +0 -168
  541. package/esm2022/src/app/shared/material/numpad/numpad.dom-service.mjs +0 -36
  542. package/esm2022/src/app/shared/material/numpad/numpad.model.mjs +0 -16
  543. package/esm2022/src/app/shared/material/numpad/numpad.module.mjs +0 -60
  544. package/esm2022/src/app/shared/material/numpad/testing/numpad.test.mjs +0 -48
  545. package/src/app/core/table/actions-column.component.d.ts +0 -48
  546. package/src/app/shared/material/boolean/material-boolean2.d.ts +0 -66
  547. package/src/app/shared/material/numpad/numpad.append-to-input.directive.d.ts +0 -22
  548. package/src/app/shared/material/numpad/numpad.component.d.ts +0 -26
  549. package/src/app/shared/material/numpad/numpad.container.d.ts +0 -40
  550. package/src/app/shared/material/numpad/numpad.content.d.ts +0 -7
  551. package/src/app/shared/material/numpad/numpad.directive.d.ts +0 -35
  552. package/src/app/shared/material/numpad/numpad.dom-service.d.ts +0 -16
  553. package/src/app/shared/material/numpad/numpad.model.d.ts +0 -30
  554. package/src/app/shared/material/numpad/numpad.module.d.ts +0 -16
  555. package/src/app/shared/material/numpad/testing/numpad.test.d.ts +0 -13
@@ -6,13 +6,11 @@ export class HighlightPipe {
6
6
  transform(value, args) {
7
7
  if (typeof value !== 'string' || !args)
8
8
  return value;
9
- const searchText = (typeof args === 'string' ? args : args.search);
10
- const withAccent = (typeof args !== 'string') ? toBoolean(args?.withAccent, false) : false;
9
+ const searchText = typeof args === 'string' ? args : args.search;
10
+ const withAccent = typeof args !== 'string' ? toBoolean(args?.withAccent, false) : false;
11
11
  if (typeof searchText !== 'string')
12
12
  return value;
13
- const searchRegexp = searchText
14
- .replace(/[.]/g, '[.]')
15
- .replace(/[*]+/g, '.*');
13
+ const searchRegexp = searchText.replace(/[.]/g, '[.]').replace(/[*]+/g, '.*');
16
14
  if (searchRegexp === '.*')
17
15
  return value; // skip if can match everything
18
16
  if (withAccent) {
@@ -20,29 +18,31 @@ export class HighlightPipe {
20
18
  const cleanedSearchText = removeDiacritics(searchRegexp).toUpperCase();
21
19
  const index = removeDiacritics(value.toUpperCase()).indexOf(cleanedSearchText);
22
20
  if (index !== -1) {
23
- return value.substring(0, index) +
24
- '<b>' + value.substring(index, index + cleanedSearchText.length) + '</b>' +
25
- value.substring(index + cleanedSearchText.length);
21
+ return (value.substring(0, index) +
22
+ '<b>' +
23
+ value.substring(index, index + cleanedSearchText.length) +
24
+ '</b>' +
25
+ value.substring(index + cleanedSearchText.length));
26
26
  }
27
27
  return value;
28
28
  }
29
29
  else {
30
30
  // Default behaviour
31
- const regexp = new RegExp('[ ]?' + searchRegexp, 'gi');
31
+ const regexp = new RegExp('[ ]?' + searchRegexp, 'gi'); // TODO escape characters like '?'
32
32
  return ('' + value).replace(regexp, '<b>$&</b>');
33
33
  }
34
34
  }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: HighlightPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
36
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: HighlightPipe, name: "highlight" });
37
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: HighlightPipe, providedIn: 'root' });
35
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: HighlightPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
36
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: HighlightPipe, name: "highlight" });
37
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: HighlightPipe, providedIn: 'root' });
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: HighlightPipe, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: HighlightPipe, decorators: [{
40
40
  type: Pipe,
41
41
  args: [{
42
- name: 'highlight'
42
+ name: 'highlight',
43
43
  }]
44
44
  }, {
45
45
  type: Injectable,
46
46
  args: [{ providedIn: 'root' }]
47
47
  }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9oaWdobGlnaHQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFNM0QsTUFBTSxPQUFPLGFBQWE7SUFFcEIsNkNBQTZDO0lBQy9DLFNBQVMsQ0FBQyxLQUFVLEVBQUUsSUFBd0Q7UUFDNUUsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDckQsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25FLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDM0YsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsTUFBTSxZQUFZLEdBQUcsVUFBVTthQUM1QixPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQzthQUN0QixPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksWUFBWSxLQUFLLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQyxDQUFDLCtCQUErQjtRQUV4RSxJQUFJLFVBQVUsRUFBRTtZQUNkLDZEQUE2RDtZQUM3RCxNQUFNLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZFLE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQy9FLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUNoQixPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztvQkFDOUIsS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNO29CQUN6RSxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNyRDtZQUNELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7YUFBTTtZQUNMLG9CQUFvQjtZQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3ZELE9BQU8sQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7dUdBNUJRLGFBQWE7cUdBQWIsYUFBYTsyR0FBYixhQUFhLGNBREQsTUFBTTs7MkZBQ2xCLGFBQWE7a0JBSnpCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLFdBQVc7aUJBQ3BCOztrQkFDQSxVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHJlbW92ZURpYWNyaXRpY3MsIHRvQm9vbGVhbiB9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnaGlnaGxpZ2h0J1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgICAgLy8gUmVwbGFjZSBzZWFyY2ggdGV4dCBieSBib2xkIHJlcHJlc2VudGF0aW9uXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGFyZ3M/OiBzdHJpbmcgfCB7IHNlYXJjaDogc3RyaW5nOyB3aXRoQWNjZW50PzogYm9vbGVhbiB9ICk6IHN0cmluZyB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJyB8fCAhYXJncykgcmV0dXJuIHZhbHVlO1xuICAgICAgY29uc3Qgc2VhcmNoVGV4dCA9ICh0eXBlb2YgYXJncyA9PT0gJ3N0cmluZycgPyBhcmdzIDogYXJncy5zZWFyY2gpO1xuICAgICAgY29uc3Qgd2l0aEFjY2VudCA9ICh0eXBlb2YgYXJncyAhPT0gJ3N0cmluZycpID8gdG9Cb29sZWFuKGFyZ3M/LndpdGhBY2NlbnQsIGZhbHNlKSA6IGZhbHNlO1xuICAgICAgaWYgKHR5cGVvZiBzZWFyY2hUZXh0ICE9PSAnc3RyaW5nJykgcmV0dXJuIHZhbHVlO1xuICAgICAgY29uc3Qgc2VhcmNoUmVnZXhwID0gc2VhcmNoVGV4dFxuICAgICAgICAucmVwbGFjZSgvWy5dL2csICdbLl0nKVxuICAgICAgICAucmVwbGFjZSgvWypdKy9nLCAnLionKTtcbiAgICAgIGlmIChzZWFyY2hSZWdleHAgPT09ICcuKicpIHJldHVybiB2YWx1ZTsgLy8gc2tpcCBpZiBjYW4gbWF0Y2ggZXZlcnl0aGluZ1xuXG4gICAgICBpZiAod2l0aEFjY2VudCkge1xuICAgICAgICAvLyBSZW1vdmUgYWxsIGFjY2VudCBjaGFyYWN0ZXJzIHRvIGFsbG93IHZlcnNhdGlsZSBjb21wYXJpc29uXG4gICAgICAgIGNvbnN0IGNsZWFuZWRTZWFyY2hUZXh0ID0gcmVtb3ZlRGlhY3JpdGljcyhzZWFyY2hSZWdleHApLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gcmVtb3ZlRGlhY3JpdGljcyh2YWx1ZS50b1VwcGVyQ2FzZSgpKS5pbmRleE9mKGNsZWFuZWRTZWFyY2hUZXh0KTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIHJldHVybiB2YWx1ZS5zdWJzdHJpbmcoMCwgaW5kZXgpICtcbiAgICAgICAgICAgICc8Yj4nICsgdmFsdWUuc3Vic3RyaW5nKGluZGV4LCBpbmRleCArIGNsZWFuZWRTZWFyY2hUZXh0Lmxlbmd0aCkgKyAnPC9iPicgK1xuICAgICAgICAgICAgdmFsdWUuc3Vic3RyaW5nKGluZGV4ICsgY2xlYW5lZFNlYXJjaFRleHQubGVuZ3RoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBEZWZhdWx0IGJlaGF2aW91clxuICAgICAgICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKCdbIF0/JyArIHNlYXJjaFJlZ2V4cCwgJ2dpJyk7XG4gICAgICAgIHJldHVybiAoJycgKyB2YWx1ZSkucmVwbGFjZShyZWdleHAsICc8Yj4kJjwvYj4nKTtcbiAgICAgIH1cbiAgICB9XG59XG4iXX0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9oaWdobGlnaHQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFNM0QsTUFBTSxPQUFPLGFBQWE7SUFDeEIsNkNBQTZDO0lBQzdDLFNBQVMsQ0FBQyxLQUFVLEVBQUUsSUFBd0Q7UUFDNUUsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDckQsTUFBTSxVQUFVLEdBQUcsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDakUsTUFBTSxVQUFVLEdBQUcsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3pGLElBQUksT0FBTyxVQUFVLEtBQUssUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUUsSUFBSSxZQUFZLEtBQUssSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDLENBQUMsK0JBQStCO1FBRXhFLElBQUksVUFBVSxFQUFFLENBQUM7WUFDZiw2REFBNkQ7WUFDN0QsTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2RSxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUMvRSxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNqQixPQUFPLENBQ0wsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDO29CQUN6QixLQUFLO29CQUNMLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7b0JBQ3hELE1BQU07b0JBQ04sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQ2xELENBQUM7WUFDSixDQUFDO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO2FBQU0sQ0FBQztZQUNOLG9CQUFvQjtZQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsa0NBQWtDO1lBQzFGLE9BQU8sQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQzt1R0E3QlUsYUFBYTtxR0FBYixhQUFhOzJHQUFiLGFBQWEsY0FEQSxNQUFNOzsyRkFDbkIsYUFBYTtrQkFKekIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsV0FBVztpQkFDbEI7O2tCQUNBLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgcmVtb3ZlRGlhY3JpdGljcywgdG9Cb29sZWFuIH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuQFBpcGUoe1xuICBuYW1lOiAnaGlnaGxpZ2h0Jyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgLy8gUmVwbGFjZSBzZWFyY2ggdGV4dCBieSBib2xkIHJlcHJlc2VudGF0aW9uXG4gIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBhcmdzPzogc3RyaW5nIHwgeyBzZWFyY2g6IHN0cmluZzsgd2l0aEFjY2VudD86IGJvb2xlYW4gfSk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycgfHwgIWFyZ3MpIHJldHVybiB2YWx1ZTtcbiAgICBjb25zdCBzZWFyY2hUZXh0ID0gdHlwZW9mIGFyZ3MgPT09ICdzdHJpbmcnID8gYXJncyA6IGFyZ3Muc2VhcmNoO1xuICAgIGNvbnN0IHdpdGhBY2NlbnQgPSB0eXBlb2YgYXJncyAhPT0gJ3N0cmluZycgPyB0b0Jvb2xlYW4oYXJncz8ud2l0aEFjY2VudCwgZmFsc2UpIDogZmFsc2U7XG4gICAgaWYgKHR5cGVvZiBzZWFyY2hUZXh0ICE9PSAnc3RyaW5nJykgcmV0dXJuIHZhbHVlO1xuICAgIGNvbnN0IHNlYXJjaFJlZ2V4cCA9IHNlYXJjaFRleHQucmVwbGFjZSgvWy5dL2csICdbLl0nKS5yZXBsYWNlKC9bKl0rL2csICcuKicpO1xuICAgIGlmIChzZWFyY2hSZWdleHAgPT09ICcuKicpIHJldHVybiB2YWx1ZTsgLy8gc2tpcCBpZiBjYW4gbWF0Y2ggZXZlcnl0aGluZ1xuXG4gICAgaWYgKHdpdGhBY2NlbnQpIHtcbiAgICAgIC8vIFJlbW92ZSBhbGwgYWNjZW50IGNoYXJhY3RlcnMgdG8gYWxsb3cgdmVyc2F0aWxlIGNvbXBhcmlzb25cbiAgICAgIGNvbnN0IGNsZWFuZWRTZWFyY2hUZXh0ID0gcmVtb3ZlRGlhY3JpdGljcyhzZWFyY2hSZWdleHApLnRvVXBwZXJDYXNlKCk7XG4gICAgICBjb25zdCBpbmRleCA9IHJlbW92ZURpYWNyaXRpY3ModmFsdWUudG9VcHBlckNhc2UoKSkuaW5kZXhPZihjbGVhbmVkU2VhcmNoVGV4dCk7XG4gICAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgdmFsdWUuc3Vic3RyaW5nKDAsIGluZGV4KSArXG4gICAgICAgICAgJzxiPicgK1xuICAgICAgICAgIHZhbHVlLnN1YnN0cmluZyhpbmRleCwgaW5kZXggKyBjbGVhbmVkU2VhcmNoVGV4dC5sZW5ndGgpICtcbiAgICAgICAgICAnPC9iPicgK1xuICAgICAgICAgIHZhbHVlLnN1YnN0cmluZyhpbmRleCArIGNsZWFuZWRTZWFyY2hUZXh0Lmxlbmd0aClcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRGVmYXVsdCBiZWhhdmlvdXJcbiAgICAgIGNvbnN0IHJlZ2V4cCA9IG5ldyBSZWdFeHAoJ1sgXT8nICsgc2VhcmNoUmVnZXhwLCAnZ2knKTsgLy8gVE9ETyBlc2NhcGUgY2hhcmFjdGVycyBsaWtlICc/J1xuICAgICAgcmV0dXJuICgnJyArIHZhbHVlKS5yZXBsYWNlKHJlZ2V4cCwgJzxiPiQmPC9iPicpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,52 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { noHtml } from '../functions';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/platform-browser";
5
+ /**
6
+ * Remove all HTML tags, from an input string
7
+ */
8
+ export class NoHtmlPipe {
9
+ transform(value) {
10
+ return noHtml(value);
11
+ }
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NoHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: NoHtmlPipe, name: "noHtml" });
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NoHtmlPipe, decorators: [{
16
+ type: Pipe,
17
+ args: [{
18
+ name: 'noHtml',
19
+ }]
20
+ }] });
21
+ /**
22
+ * SafeHtmlPipe is a custom Angular pipe designed to sanitize and transform
23
+ * potentially unsafe HTML content into safe HTML. It leverages the noHtml
24
+ * function to strip away any HTML tags from the input string, ensuring that
25
+ * the output string is safe for display in the frontend without risking
26
+ * security vulnerabilities like Cross-Site Scripting (XSS) attacks.
27
+ *
28
+ * This pipe can be used when there is a need to render user-generated or
29
+ * dynamically fetched HTML content safely within an Angular application.
30
+ *
31
+ * Methods:
32
+ * - transform: Accepts a string as input and returns a sanitized version
33
+ * of the string with HTML tags removed.
34
+ */
35
+ export class SafeHtmlPipe {
36
+ sanitized;
37
+ constructor(sanitized) {
38
+ this.sanitized = sanitized;
39
+ }
40
+ transform(value) {
41
+ return this.sanitized.bypassSecurityTrustHtml(value);
42
+ }
43
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
44
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SafeHtmlPipe, name: "safeHtml" });
45
+ }
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SafeHtmlPipe, decorators: [{
47
+ type: Pipe,
48
+ args: [{
49
+ name: 'safeHtml',
50
+ }]
51
+ }], ctorParameters: () => [{ type: i1.DomSanitizer }] });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2h0bWwucGlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBTXRDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFDckIsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQzt1R0FIVSxVQUFVO3FHQUFWLFVBQVU7OzJGQUFWLFVBQVU7a0JBTnRCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFFBQVE7aUJBQ2Y7O0FBYUQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBQ0g7SUFBcEIsWUFBb0IsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztJQUFHLENBQUM7SUFDL0MsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7dUdBSlUsWUFBWTtxR0FBWixZQUFZOzsyRkFBWixZQUFZO2tCQWpCeEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsVUFBVTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBub0h0bWwgfSBmcm9tICcuLi9mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdub0h0bWwnLFxufSlcbi8qKlxuICogUmVtb3ZlIGFsbCBIVE1MIHRhZ3MsIGZyb20gYW4gaW5wdXQgc3RyaW5nXG4gKi9cbmV4cG9ydCBjbGFzcyBOb0h0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbm9IdG1sKHZhbHVlKTtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdzYWZlSHRtbCcsXG59KVxuLyoqXG4gKiBTYWZlSHRtbFBpcGUgaXMgYSBjdXN0b20gQW5ndWxhciBwaXBlIGRlc2lnbmVkIHRvIHNhbml0aXplIGFuZCB0cmFuc2Zvcm1cbiAqIHBvdGVudGlhbGx5IHVuc2FmZSBIVE1MIGNvbnRlbnQgaW50byBzYWZlIEhUTUwuIEl0IGxldmVyYWdlcyB0aGUgbm9IdG1sXG4gKiBmdW5jdGlvbiB0byBzdHJpcCBhd2F5IGFueSBIVE1MIHRhZ3MgZnJvbSB0aGUgaW5wdXQgc3RyaW5nLCBlbnN1cmluZyB0aGF0XG4gKiB0aGUgb3V0cHV0IHN0cmluZyBpcyBzYWZlIGZvciBkaXNwbGF5IGluIHRoZSBmcm9udGVuZCB3aXRob3V0IHJpc2tpbmdcbiAqIHNlY3VyaXR5IHZ1bG5lcmFiaWxpdGllcyBsaWtlIENyb3NzLVNpdGUgU2NyaXB0aW5nIChYU1MpIGF0dGFja3MuXG4gKlxuICogVGhpcyBwaXBlIGNhbiBiZSB1c2VkIHdoZW4gdGhlcmUgaXMgYSBuZWVkIHRvIHJlbmRlciB1c2VyLWdlbmVyYXRlZCBvclxuICogZHluYW1pY2FsbHkgZmV0Y2hlZCBIVE1MIGNvbnRlbnQgc2FmZWx5IHdpdGhpbiBhbiBBbmd1bGFyIGFwcGxpY2F0aW9uLlxuICpcbiAqIE1ldGhvZHM6XG4gKiAtIHRyYW5zZm9ybTogQWNjZXB0cyBhIHN0cmluZyBhcyBpbnB1dCBhbmQgcmV0dXJucyBhIHNhbml0aXplZCB2ZXJzaW9uXG4gKiAgICAgICAgICAgICAgb2YgdGhlIHN0cmluZyB3aXRoIEhUTUwgdGFncyByZW1vdmVkLlxuICovXG5leHBvcnQgY2xhc3MgU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVkOiBEb21TYW5pdGl6ZXIpIHt9XG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogU2FmZUh0bWwge1xuICAgIHJldHVybiB0aGlzLnNhbml0aXplZC5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
@@ -3,24 +3,24 @@ import { formatLatitude, formatLongitude } from '../material/latlong/latlong.uti
3
3
  import * as i0 from "@angular/core";
4
4
  export class LatitudeFormatPipe {
5
5
  transform = formatLatitude;
6
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LatitudeFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
7
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: LatitudeFormatPipe, name: "latitudeFormat" });
6
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LatitudeFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
7
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: LatitudeFormatPipe, name: "latitudeFormat" });
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LatitudeFormatPipe, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LatitudeFormatPipe, decorators: [{
10
10
  type: Pipe,
11
11
  args: [{
12
- name: 'latitudeFormat'
12
+ name: 'latitudeFormat',
13
13
  }]
14
14
  }] });
15
15
  export class LongitudeFormatPipe {
16
16
  transform = formatLongitude;
17
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LongitudeFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: LongitudeFormatPipe, name: "longitudeFormat" });
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LongitudeFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: LongitudeFormatPipe, name: "longitudeFormat" });
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LongitudeFormatPipe, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LongitudeFormatPipe, decorators: [{
21
21
  type: Pipe,
22
22
  args: [{
23
- name: 'longitudeFormat'
23
+ name: 'longitudeFormat',
24
24
  }]
25
25
  }] });
26
26
  /**
@@ -28,15 +28,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
28
28
  */
29
29
  export class LatLongFormatPipe {
30
30
  transform(value, opts) {
31
- return ((!opts || opts?.type !== 'latitude') ? formatLongitude : formatLatitude)(value, opts);
31
+ return (!opts || opts?.type !== 'latitude' ? formatLongitude : formatLatitude)(value, opts);
32
32
  }
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LatLongFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
34
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: LatLongFormatPipe, name: "latLongFormat" });
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LatLongFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
34
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: LatLongFormatPipe, name: "latLongFormat" });
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: LatLongFormatPipe, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LatLongFormatPipe, decorators: [{
37
37
  type: Pipe,
38
38
  args: [{
39
- name: 'latLongFormat'
39
+ name: 'latLongFormat',
40
40
  }]
41
41
  }] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG9uZy1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2xhdGxvbmctZm9ybWF0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFDLGNBQWMsRUFBRSxlQUFlLEVBQXVCLE1BQU0sbUNBQW1DLENBQUM7O0FBTXhHLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsU0FBUyxHQUFHLGNBQWMsQ0FBQzt1R0FEaEIsa0JBQWtCO3FHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBSDlCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGdCQUFnQjtpQkFDdkI7O0FBUUQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixTQUFTLEdBQUcsZUFBZSxDQUFDO3VHQURqQixtQkFBbUI7cUdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4Qjs7QUFRRDs7R0FFRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFFNUIsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUFxRTtRQUM1RixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUUsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNoRyxDQUFDO3VHQUpVLGlCQUFpQjtxR0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQU43QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zvcm1hdExhdGl0dWRlLCBmb3JtYXRMb25naXR1ZGUsIExhdExvbmdGb3JtYXRPcHRpb25zfSBmcm9tICcuLi9tYXRlcmlhbC9sYXRsb25nL2xhdGxvbmcudXRpbHMnO1xuXG5cbkBQaXBlKHtcbiAgbmFtZTogJ2xhdGl0dWRlRm9ybWF0J1xufSlcbmV4cG9ydCBjbGFzcyBMYXRpdHVkZUZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtID0gZm9ybWF0TGF0aXR1ZGU7XG59XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2xvbmdpdHVkZUZvcm1hdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9uZ2l0dWRlRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0gPSBmb3JtYXRMb25naXR1ZGU7XG59XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2xhdExvbmdGb3JtYXQnXG59KVxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgJ2xhdGl0dWRlRm9ybWF0JyBvciAnbG9uZ2l0dWRlRm9ybWF0JyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjbGFzcyBMYXRMb25nRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyLCBvcHRzPzogUGFydGlhbDxMYXRMb25nRm9ybWF0T3B0aW9ucz4gJiB7dHlwZTogJ2xhdGl0dWRlJ3wnbG9uZ2l0dWRlJ30pOiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoKCFvcHRzIHx8IG9wdHM/LnR5cGUgIT09ICdsYXRpdHVkZScpID8gZm9ybWF0TG9uZ2l0dWRlIDogZm9ybWF0TGF0aXR1ZGUpKHZhbHVlLCBvcHRzKTtcbiAgfVxufVxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG9uZy1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2xhdGxvbmctZm9ybWF0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQXdCLE1BQU0sbUNBQW1DLENBQUM7O0FBSzFHLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsU0FBUyxHQUFHLGNBQWMsQ0FBQzt1R0FEaEIsa0JBQWtCO3FHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBSDlCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGdCQUFnQjtpQkFDdkI7O0FBUUQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixTQUFTLEdBQUcsZUFBZSxDQUFDO3VHQURqQixtQkFBbUI7cUdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4Qjs7QUFRRDs7R0FFRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUF5RTtRQUNoRyxPQUFPLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlGLENBQUM7dUdBSFUsaUJBQWlCO3FHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBTjdCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGVBQWU7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZm9ybWF0TGF0aXR1ZGUsIGZvcm1hdExvbmdpdHVkZSwgTGF0TG9uZ0Zvcm1hdE9wdGlvbnMgfSBmcm9tICcuLi9tYXRlcmlhbC9sYXRsb25nL2xhdGxvbmcudXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdsYXRpdHVkZUZvcm1hdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhdGl0dWRlRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0gPSBmb3JtYXRMYXRpdHVkZTtcbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnbG9uZ2l0dWRlRm9ybWF0Jyxcbn0pXG5leHBvcnQgY2xhc3MgTG9uZ2l0dWRlRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0gPSBmb3JtYXRMb25naXR1ZGU7XG59XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2xhdExvbmdGb3JtYXQnLFxufSlcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlICdsYXRpdHVkZUZvcm1hdCcgb3IgJ2xvbmdpdHVkZUZvcm1hdCcgaW5zdGVhZFxuICovXG5leHBvcnQgY2xhc3MgTGF0TG9uZ0Zvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIsIG9wdHM/OiBQYXJ0aWFsPExhdExvbmdGb3JtYXRPcHRpb25zPiAmIHsgdHlwZTogJ2xhdGl0dWRlJyB8ICdsb25naXR1ZGUnIH0pOiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoIW9wdHMgfHwgb3B0cz8udHlwZSAhPT0gJ2xhdGl0dWRlJyA/IGZvcm1hdExvbmdpdHVkZSA6IGZvcm1hdExhdGl0dWRlKSh2YWx1ZSwgb3B0cyk7XG4gIH1cbn1cbiJdfQ==
@@ -5,18 +5,18 @@ export class MapGetPipe {
5
5
  if (!val)
6
6
  return null;
7
7
  const key = (args && typeof args === 'object' ? args.key : args);
8
- if (!key)
8
+ if (key === null || key === undefined)
9
9
  return null;
10
10
  return val[key];
11
11
  }
12
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapGetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MapGetPipe, name: "mapGet" });
14
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapGetPipe, providedIn: 'root' });
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapGetPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: MapGetPipe, name: "mapGet" });
14
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapGetPipe, providedIn: 'root' });
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapGetPipe, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapGetPipe, decorators: [{
17
17
  type: Pipe,
18
18
  args: [{
19
- name: 'mapGet'
19
+ name: 'mapGet',
20
20
  }]
21
21
  }, {
22
22
  type: Injectable,
@@ -28,14 +28,14 @@ export class MapKeysPipe {
28
28
  return null;
29
29
  return Object.keys(map);
30
30
  }
31
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapKeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
32
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MapKeysPipe, name: "mapKeys" });
33
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapKeysPipe, providedIn: 'root' });
31
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapKeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
32
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: MapKeysPipe, name: "mapKeys" });
33
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapKeysPipe, providedIn: 'root' });
34
34
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapKeysPipe, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapKeysPipe, decorators: [{
36
36
  type: Pipe,
37
37
  args: [{
38
- name: 'mapKeys'
38
+ name: 'mapKeys',
39
39
  }]
40
40
  }, {
41
41
  type: Injectable,
@@ -47,17 +47,17 @@ export class MapValuesPipe {
47
47
  return null;
48
48
  return Object.values(map);
49
49
  }
50
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapValuesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
51
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MapValuesPipe, name: "mapValues" });
52
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapValuesPipe, providedIn: 'root' });
50
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapValuesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
51
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: MapValuesPipe, name: "mapValues" });
52
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapValuesPipe, providedIn: 'root' });
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MapValuesPipe, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MapValuesPipe, decorators: [{
55
55
  type: Pipe,
56
56
  args: [{
57
- name: 'mapValues'
57
+ name: 'mapValues',
58
58
  }]
59
59
  }, {
60
60
  type: Injectable,
61
61
  args: [{ providedIn: 'root' }]
62
62
  }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbWFwcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLFVBQVU7SUFFbkIsU0FBUyxDQUFDLEdBQVEsRUFBRSxJQUE4QztRQUNoRSxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3RCLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFRLENBQUM7UUFDeEUsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN0QixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsQixDQUFDO3VHQVBRLFVBQVU7cUdBQVYsVUFBVTsyR0FBVixVQUFVLGNBREUsTUFBTTs7MkZBQ2xCLFVBQVU7a0JBSnRCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLFFBQVE7aUJBQ2pCOztrQkFDQSxVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7QUFlaEMsTUFBTSxPQUFPLFdBQVc7SUFFdEIsU0FBUyxDQUFDLEdBQVE7UUFDaEIsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN0QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQzt1R0FMVSxXQUFXO3FHQUFYLFdBQVc7MkdBQVgsV0FBVyxjQURDLE1BQU07OzJGQUNsQixXQUFXO2tCQUp2QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxTQUFTO2lCQUNoQjs7a0JBQ0EsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7O0FBYWhDLE1BQU0sT0FBTyxhQUFhO0lBRXhCLFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEIsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7dUdBTFUsYUFBYTtxR0FBYixhQUFhOzJHQUFiLGFBQWEsY0FERCxNQUFNOzsyRkFDbEIsYUFBYTtrQkFKekIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsV0FBVztpQkFDbEI7O2tCQUNBLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ21hcEdldCdcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBNYXBHZXRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgICB0cmFuc2Zvcm0odmFsOiBhbnksIGFyZ3M6IHN0cmluZyB8IG51bWJlciB8IHtrZXk6IHN0cmluZyB8IG51bWJlcn0gKTogYW55IHtcbiAgICAgIGlmICghdmFsKSByZXR1cm4gbnVsbDtcbiAgICAgIGNvbnN0IGtleSA9IChhcmdzICYmIHR5cGVvZiBhcmdzID09PSAnb2JqZWN0JyA/IGFyZ3Mua2V5IDogYXJncykgYXMgYW55O1xuICAgICAgaWYgKCFrZXkpIHJldHVybiBudWxsO1xuICAgICAgcmV0dXJuIHZhbFtrZXldO1xuICAgIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnbWFwS2V5cydcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBNYXBLZXlzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShtYXA6IGFueSk6IGFueVtdIHtcbiAgICBpZiAoIW1hcCkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKG1hcCk7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnbWFwVmFsdWVzJ1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIE1hcFZhbHVlc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0obWFwOiBhbnkpOiBhbnlbXSB7XG4gICAgaWYgKCFtYXApIHJldHVybiBudWxsO1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKG1hcCk7XG4gIH1cbn1cbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbWFwcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLFVBQVU7SUFDckIsU0FBUyxDQUFtQixHQUFNLEVBQUUsSUFBb0U7UUFDdEcsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN0QixNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBUSxDQUFDO1FBQ3hFLElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxHQUFHLEtBQUssU0FBUztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ25ELE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBTSxDQUFDO0lBQ3ZCLENBQUM7dUdBTlUsVUFBVTtxR0FBVixVQUFVOzJHQUFWLFVBQVUsY0FERyxNQUFNOzsyRkFDbkIsVUFBVTtrQkFKdEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsUUFBUTtpQkFDZjs7a0JBQ0EsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBY2xDLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7dUdBSlUsV0FBVztxR0FBWCxXQUFXOzJHQUFYLFdBQVcsY0FERSxNQUFNOzsyRkFDbkIsV0FBVztrQkFKdkIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsU0FBUztpQkFDaEI7O2tCQUNBLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztBQVlsQyxNQUFNLE9BQU8sYUFBYTtJQUN4QixTQUFTLENBQW1CLEdBQW9CO1FBQzlDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEIsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7dUdBSlUsYUFBYTtxR0FBYixhQUFhOzJHQUFiLGFBQWEsY0FEQSxNQUFNOzsyRkFDbkIsYUFBYTtrQkFKekIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsV0FBVztpQkFDbEI7O2tCQUNBLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdtYXBHZXQnLFxufSlcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTWFwR2V0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm08VCA9IGFueSwgUiA9IGFueT4odmFsOiBULCBhcmdzOiBrZXlvZiBUIHwgc3RyaW5nIHwgbnVtYmVyIHwgeyBrZXk6IGtleW9mIFQgfCBzdHJpbmcgfCBudW1iZXIgfSk6IFIge1xuICAgIGlmICghdmFsKSByZXR1cm4gbnVsbDtcbiAgICBjb25zdCBrZXkgPSAoYXJncyAmJiB0eXBlb2YgYXJncyA9PT0gJ29iamVjdCcgPyBhcmdzLmtleSA6IGFyZ3MpIGFzIGFueTtcbiAgICBpZiAoa2V5ID09PSBudWxsIHx8IGtleSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gdmFsW2tleV0gYXMgUjtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdtYXBLZXlzJyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1hcEtleXNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShtYXA6IGFueSk6IGFueVtdIHtcbiAgICBpZiAoIW1hcCkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKG1hcCk7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnbWFwVmFsdWVzJyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1hcFZhbHVlc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtPEsgPSBhbnksIFYgPSBhbnk+KG1hcDogYW55IHwgTWFwPEssIFY+KTogVltdIHtcbiAgICBpZiAoIW1hcCkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIE9iamVjdC52YWx1ZXMobWFwKTtcbiAgfVxufVxuIl19
@@ -1,92 +1,43 @@
1
1
  import { Pipe } from '@angular/core';
2
- import { isNilOrBlank } from '../functions';
3
- import { maskitoDateOptionsGenerator, maskitoEventHandler, maskitoWithPlaceholder } from '@maskito/kit';
4
- import { EMPTY_PLACEHOLDER_CHAR } from '../constants';
2
+ import { isNilOrBlank, isNotNil } from '../functions';
3
+ import { maskitoEventHandler, maskitoWithPlaceholder } from '@maskito/kit';
4
+ import { getCaretPosition, getInputRangeFromCaretIndex, getInputSelectionRangesFromMask, selectInputRange } from '../inputs';
5
5
  import * as i0 from "@angular/core";
6
6
  export class MaskitoPlaceholderPipe {
7
- transform(placeholder, mask, defaultPrefix) {
7
+ transform(placeholder, mask, opts) {
8
8
  if (isNilOrBlank(placeholder))
9
9
  return { mask };
10
- const placeholderOptions = maskitoWithPlaceholder(placeholder, true);
11
- const plugins = [
12
- ...placeholderOptions.plugins,
13
- //maskitoRestorePlaceholderOnFocus(placeholder)
14
- ];
15
- if (defaultPrefix) {
16
- plugins.push(maskitoPrefixPlugin(defaultPrefix, placeholder));
10
+ const plugins = [];
11
+ const preprocessors = [];
12
+ const postprocessors = [];
13
+ if (!opts?.noDefaults) {
14
+ const placeholderOptions = maskitoWithPlaceholder(placeholder, true);
15
+ plugins.push(...placeholderOptions.plugins);
16
+ preprocessors.push(...placeholderOptions.preprocessors);
17
+ postprocessors.push(...placeholderOptions.postprocessors);
17
18
  }
19
+ plugins.push(...(opts?.plugins || []));
20
+ preprocessors.push(...(opts?.preprocessors || []));
21
+ postprocessors.push(...(opts?.postprocessors || []));
22
+ if (isNotNil(opts?.defaultPrefix)) {
23
+ plugins.push(maskitoPrefixPlugin(opts.defaultPrefix, placeholder));
24
+ }
25
+ plugins.push(maskitoAutoSelectByMaskPattern());
18
26
  return {
19
- ...placeholderOptions,
27
+ overwriteMode: opts?.overwriteMode || 'replace',
20
28
  plugins,
21
- preprocessors: [
22
- ({ elementState, data }, actionType) => {
23
- let { value, selection } = elementState;
24
- if (!value.length)
25
- return { elementState, data }; // Skip if empty
26
- let [start, end] = selection;
27
- let selectionMax = value.length - 1;
28
- if (value.length < placeholder.length) {
29
- value = value +
30
- placeholder.substring(value.length)
31
- .replace(/[DSM]/g, EMPTY_PLACEHOLDER_CHAR);
32
- }
33
- else if (value.indexOf(EMPTY_PLACEHOLDER_CHAR) !== -1) {
34
- selectionMax = value.indexOf(EMPTY_PLACEHOLDER_CHAR);
35
- }
36
- return {
37
- elementState: {
38
- selection: [Math.min(selectionMax, start), Math.min(selectionMax, end)],
39
- value,
40
- },
41
- data,
42
- };
43
- },
44
- ...placeholderOptions.preprocessors
45
- ],
46
- mask
29
+ preprocessors,
30
+ postprocessors,
31
+ mask,
47
32
  };
48
33
  }
49
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MaskitoPlaceholderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
50
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MaskitoPlaceholderPipe, name: "maskitoPlaceholder" });
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MaskitoPlaceholderPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
35
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: MaskitoPlaceholderPipe, name: "maskitoPlaceholder" });
51
36
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MaskitoPlaceholderPipe, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MaskitoPlaceholderPipe, decorators: [{
53
38
  type: Pipe,
54
39
  args: [{
55
- name: 'maskitoPlaceholder'
56
- }]
57
- }] });
58
- export class MaskitoDatePipe {
59
- transform(baseOptions, pattern, separator = '/') {
60
- const dateOptions = maskitoDateOptionsGenerator({
61
- mode: pattern.toLowerCase(),
62
- separator,
63
- });
64
- return {
65
- ...baseOptions,
66
- ...dateOptions,
67
- plugins: [
68
- ...baseOptions.plugins,
69
- ...dateOptions.plugins
70
- ],
71
- preprocessors: [
72
- // Always put it BEFORE all other preprocessors
73
- ...baseOptions.preprocessors,
74
- ...dateOptions.preprocessors,
75
- ],
76
- postprocessors: [
77
- ...dateOptions.postprocessors,
78
- // Always put it AFTER all other postprocessors
79
- ...baseOptions.postprocessors,
80
- ],
81
- };
82
- }
83
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MaskitoDatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
84
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MaskitoDatePipe, name: "maskitoDate" });
85
- }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MaskitoDatePipe, decorators: [{
87
- type: Pipe,
88
- args: [{
89
- name: 'maskitoDate'
40
+ name: 'maskitoPlaceholder',
90
41
  }]
91
42
  }] });
92
43
  export function maskitoPrefixPlugin(prefix, placeholder) {
@@ -101,18 +52,16 @@ export function maskitoPrefixPlugin(prefix, placeholder) {
101
52
  }
102
53
  });
103
54
  }
104
- export function maskitoRestorePlaceholderOnFocus(placeholder) {
105
- // Focus
106
- return maskitoEventHandler('focus', (element, options) => {
107
- const value = element.value;
108
- if (value.length === placeholder.length) {
109
- const index = value.indexOf(EMPTY_PLACEHOLDER_CHAR);
110
- if (index !== -1) {
111
- element.value = value.replace(/\uFEFF/g, 'D');
112
- // substring(0, index) + placeholder.substring(index);
113
- element.dispatchEvent(new Event('input'));
55
+ export function maskitoAutoSelectByMaskPattern() {
56
+ return maskitoEventHandler('click', (element, options) => {
57
+ if (options.mask instanceof Array) {
58
+ const caretIndex = getCaretPosition(element);
59
+ const maskPatternInputRanges = getInputSelectionRangesFromMask(options?.mask);
60
+ const selectedInputRange = getInputRangeFromCaretIndex(caretIndex, maskPatternInputRanges);
61
+ if (isNotNil(selectedInputRange)) {
62
+ selectInputRange(element, selectedInputRange[0], selectedInputRange[1] + 1);
114
63
  }
115
64
  }
116
- }, { capture: true });
65
+ });
117
66
  }
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFza2l0by5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbWFza2l0by5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxFQUVMLDJCQUEyQixFQUFFLG1CQUFtQixFQUNoRCxzQkFBc0IsRUFDdkIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sY0FBYyxDQUFDOztBQUtwRCxNQUFNLE9BQU8sc0JBQXNCO0lBRS9CLFNBQVMsQ0FBQyxXQUFtQixFQUFFLElBQWlCLEVBQUUsYUFBc0I7UUFDdEUsSUFBSSxZQUFZLENBQUMsV0FBVyxDQUFDO1lBQUUsT0FBTyxFQUFDLElBQUksRUFBQyxDQUFDO1FBRTdDLE1BQU0sa0JBQWtCLEdBQUcsc0JBQXNCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sT0FBTyxHQUFFO1lBQ2IsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPO1lBQzdCLCtDQUErQztTQUNoRCxDQUFDO1FBQ0YsSUFBSSxhQUFhLEVBQUU7WUFDakIsT0FBTyxDQUFDLElBQUksQ0FDVixtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ2hELENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxHQUFHLGtCQUFrQjtZQUNyQixPQUFPO1lBQ1AsYUFBYSxFQUFFO2dCQUNiLENBQUMsRUFBQyxZQUFZLEVBQUUsSUFBSSxFQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUU7b0JBQ25DLElBQUksRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFDLEdBQUcsWUFBWSxDQUFDO29CQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07d0JBQUUsT0FBTyxFQUFDLFlBQVksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLGdCQUFnQjtvQkFFaEUsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQzdCLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO29CQUVwQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRTt3QkFDckMsS0FBSyxHQUFHLEtBQUs7NEJBQ1gsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2lDQUNoQyxPQUFPLENBQUMsUUFBUSxFQUFFLHNCQUFzQixDQUFDLENBQUM7cUJBQ2hEO3lCQUNJLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO3dCQUNyRCxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO3FCQUN0RDtvQkFDRCxPQUFPO3dCQUNMLFlBQVksRUFBRTs0QkFDWixTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQzs0QkFDdkUsS0FBSzt5QkFDTjt3QkFDRCxJQUFJO3FCQUNMLENBQUM7Z0JBRUosQ0FBQztnQkFDRCxHQUFHLGtCQUFrQixDQUFDLGFBQWE7YUFDcEM7WUFDRCxJQUFJO1NBQ0wsQ0FBQztJQUNKLENBQUM7dUdBaERRLHNCQUFzQjtxR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUhsQyxJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxvQkFBb0I7aUJBQzdCOztBQXVERCxNQUFNLE9BQU8sZUFBZTtJQUUxQixTQUFTLENBQUMsV0FBMkIsRUFBRSxPQUFlLEVBQUUsU0FBUyxHQUFHLEdBQUc7UUFDckUsTUFBTSxXQUFXLEdBQUcsMkJBQTJCLENBQUM7WUFDOUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQXFCO1lBQzlDLFNBQVM7U0FDVixDQUFDLENBQUM7UUFDSCxPQUFPO1lBQ0wsR0FBRyxXQUFXO1lBQ2QsR0FBRyxXQUFXO1lBQ2QsT0FBTyxFQUFFO2dCQUNQLEdBQUcsV0FBVyxDQUFDLE9BQU87Z0JBQ3RCLEdBQUcsV0FBVyxDQUFDLE9BQU87YUFDdkI7WUFDRCxhQUFhLEVBQUU7Z0JBQ2IsK0NBQStDO2dCQUMvQyxHQUFHLFdBQVcsQ0FBQyxhQUFhO2dCQUM1QixHQUFHLFdBQVcsQ0FBQyxhQUFhO2FBQzdCO1lBQ0QsY0FBYyxFQUFFO2dCQUNkLEdBQUcsV0FBVyxDQUFDLGNBQWM7Z0JBQzdCLCtDQUErQztnQkFDL0MsR0FBRyxXQUFXLENBQUMsY0FBYzthQUM5QjtTQUNGLENBQUM7SUFDSixDQUFDO3VHQXpCVSxlQUFlO3FHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGFBQWE7aUJBQ3BCOztBQThCRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBYyxFQUFFLFdBQW9CO0lBQ3RFLE9BQU8sbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBK0MsRUFBRSxPQUFpQyxFQUFFLEVBQUU7UUFDekgsSUFBSSxPQUFPLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRTtZQUN4QixPQUFPLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztZQUN2QixPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDM0M7YUFBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQ3hDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsTUFBTSxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzlELE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUdELE1BQU0sVUFBVSxnQ0FBZ0MsQ0FBQyxXQUFtQjtJQUNoRSxRQUFRO0lBQ1YsT0FBTyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUErQyxFQUFFLE9BQWlDLEVBQUUsRUFBRTtRQUN2SCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxXQUFXLENBQUMsTUFBTSxFQUFFO1lBQ3ZDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUNwRCxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDaEIsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDNUMsc0RBQXNEO2dCQUN4RCxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDM0M7U0FDRjtJQUNILENBQUMsRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0FBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpc05pbE9yQmxhbmt9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5pbXBvcnQge01hc2tpdG9PcHRpb25zLCBNYXNraXRvUGx1Z2lufSBmcm9tICdAbWFza2l0by9jb3JlJztcbmltcG9ydCB7XG4gIE1hc2tpdG9EYXRlTW9kZSxcbiAgbWFza2l0b0RhdGVPcHRpb25zR2VuZXJhdG9yLCBtYXNraXRvRXZlbnRIYW5kbGVyLFxuICBtYXNraXRvV2l0aFBsYWNlaG9sZGVyXG59IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5pbXBvcnQge01hc2tpdG9NYXNrfSBmcm9tICdAbWFza2l0by9jb3JlL2xpYi90eXBlcy9tYXNrJztcbmltcG9ydCB7RU1QVFlfUExBQ0VIT0xERVJfQ0hBUn0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdtYXNraXRvUGxhY2Vob2xkZXInXG59KVxuZXhwb3J0IGNsYXNzIE1hc2tpdG9QbGFjZWhvbGRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgIHRyYW5zZm9ybShwbGFjZWhvbGRlcjogc3RyaW5nLCBtYXNrOiBNYXNraXRvTWFzaywgZGVmYXVsdFByZWZpeD86IHN0cmluZyk6IE1hc2tpdG9PcHRpb25zIHtcbiAgICAgIGlmIChpc05pbE9yQmxhbmsocGxhY2Vob2xkZXIpKSByZXR1cm4ge21hc2t9O1xuXG4gICAgICBjb25zdCBwbGFjZWhvbGRlck9wdGlvbnMgPSBtYXNraXRvV2l0aFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyLCB0cnVlKTtcbiAgICAgIGNvbnN0IHBsdWdpbnM9IFtcbiAgICAgICAgLi4ucGxhY2Vob2xkZXJPcHRpb25zLnBsdWdpbnMsXG4gICAgICAgIC8vbWFza2l0b1Jlc3RvcmVQbGFjZWhvbGRlck9uRm9jdXMocGxhY2Vob2xkZXIpXG4gICAgICBdO1xuICAgICAgaWYgKGRlZmF1bHRQcmVmaXgpIHtcbiAgICAgICAgcGx1Z2lucy5wdXNoKFxuICAgICAgICAgIG1hc2tpdG9QcmVmaXhQbHVnaW4oZGVmYXVsdFByZWZpeCwgcGxhY2Vob2xkZXIpXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnBsYWNlaG9sZGVyT3B0aW9ucyxcbiAgICAgICAgcGx1Z2lucyxcbiAgICAgICAgcHJlcHJvY2Vzc29yczogW1xuICAgICAgICAgICh7ZWxlbWVudFN0YXRlLCBkYXRhfSwgYWN0aW9uVHlwZSkgPT4ge1xuICAgICAgICAgICAgbGV0IHt2YWx1ZSwgc2VsZWN0aW9ufSA9IGVsZW1lbnRTdGF0ZTtcbiAgICAgICAgICAgIGlmICghdmFsdWUubGVuZ3RoKSByZXR1cm4ge2VsZW1lbnRTdGF0ZSwgZGF0YX07IC8vIFNraXAgaWYgZW1wdHlcblxuICAgICAgICAgICAgbGV0IFtzdGFydCwgZW5kXSA9IHNlbGVjdGlvbjtcbiAgICAgICAgICAgIGxldCBzZWxlY3Rpb25NYXggPSB2YWx1ZS5sZW5ndGggLSAxO1xuXG4gICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoIDwgcGxhY2Vob2xkZXIubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUgK1xuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLnN1YnN0cmluZyh2YWx1ZS5sZW5ndGgpXG4gICAgICAgICAgICAgICAgICAucmVwbGFjZSgvW0RTTV0vZywgRU1QVFlfUExBQ0VIT0xERVJfQ0hBUik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh2YWx1ZS5pbmRleE9mKEVNUFRZX1BMQUNFSE9MREVSX0NIQVIpICE9PSAtMSkge1xuICAgICAgICAgICAgICBzZWxlY3Rpb25NYXggPSB2YWx1ZS5pbmRleE9mKEVNUFRZX1BMQUNFSE9MREVSX0NIQVIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgZWxlbWVudFN0YXRlOiB7XG4gICAgICAgICAgICAgICAgc2VsZWN0aW9uOiBbTWF0aC5taW4oc2VsZWN0aW9uTWF4LCBzdGFydCksIE1hdGgubWluKHNlbGVjdGlvbk1heCwgZW5kKV0sXG4gICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgfSxcbiAgICAgICAgICAuLi5wbGFjZWhvbGRlck9wdGlvbnMucHJlcHJvY2Vzc29yc1xuICAgICAgICBdLFxuICAgICAgICBtYXNrXG4gICAgICB9O1xuICAgIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnbWFza2l0b0RhdGUnXG59KVxuZXhwb3J0IGNsYXNzIE1hc2tpdG9EYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShiYXNlT3B0aW9uczogTWFza2l0b09wdGlvbnMsIHBhdHRlcm46IHN0cmluZywgc2VwYXJhdG9yID0gJy8nKTogTWFza2l0b09wdGlvbnMge1xuICAgIGNvbnN0IGRhdGVPcHRpb25zID0gbWFza2l0b0RhdGVPcHRpb25zR2VuZXJhdG9yKHtcbiAgICAgIG1vZGU6IHBhdHRlcm4udG9Mb3dlckNhc2UoKSBhcyBNYXNraXRvRGF0ZU1vZGUsXG4gICAgICBzZXBhcmF0b3IsXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmJhc2VPcHRpb25zLFxuICAgICAgLi4uZGF0ZU9wdGlvbnMsXG4gICAgICBwbHVnaW5zOiBbXG4gICAgICAgIC4uLmJhc2VPcHRpb25zLnBsdWdpbnMsXG4gICAgICAgIC4uLmRhdGVPcHRpb25zLnBsdWdpbnNcbiAgICAgIF0sXG4gICAgICBwcmVwcm9jZXNzb3JzOiBbXG4gICAgICAgIC8vIEFsd2F5cyBwdXQgaXQgQkVGT1JFIGFsbCBvdGhlciBwcmVwcm9jZXNzb3JzXG4gICAgICAgIC4uLmJhc2VPcHRpb25zLnByZXByb2Nlc3NvcnMsXG4gICAgICAgIC4uLmRhdGVPcHRpb25zLnByZXByb2Nlc3NvcnMsXG4gICAgICBdLFxuICAgICAgcG9zdHByb2Nlc3NvcnM6IFtcbiAgICAgICAgLi4uZGF0ZU9wdGlvbnMucG9zdHByb2Nlc3NvcnMsXG4gICAgICAgIC8vIEFsd2F5cyBwdXQgaXQgQUZURVIgYWxsIG90aGVyIHBvc3Rwcm9jZXNzb3JzXG4gICAgICAgIC4uLmJhc2VPcHRpb25zLnBvc3Rwcm9jZXNzb3JzLFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIG1hc2tpdG9QcmVmaXhQbHVnaW4ocHJlZml4OiBzdHJpbmcsIHBsYWNlaG9sZGVyPzogc3RyaW5nKTogTWFza2l0b1BsdWdpbiB7XG4gIHJldHVybiBtYXNraXRvRXZlbnRIYW5kbGVyKCdmb2N1cycsIChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCwgb3B0aW9uczogUmVxdWlyZWQ8TWFza2l0b09wdGlvbnM+KSA9PiB7XG4gICAgaWYgKGVsZW1lbnQudmFsdWUgPT09ICcnKSB7XG4gICAgICBlbGVtZW50LnZhbHVlID0gcHJlZml4O1xuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnKSk7XG4gICAgfSBlbHNlIGlmIChlbGVtZW50LnZhbHVlID09PSBwbGFjZWhvbGRlcikge1xuICAgICAgZWxlbWVudC52YWx1ZSA9IHByZWZpeCArIHBsYWNlaG9sZGVyLnN1YnN0cmluZyhwcmVmaXgubGVuZ3RoKTtcbiAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JykpO1xuICAgIH1cbiAgfSk7XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIG1hc2tpdG9SZXN0b3JlUGxhY2Vob2xkZXJPbkZvY3VzKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiBNYXNraXRvUGx1Z2luIHtcbiAgICAvLyBGb2N1c1xuICByZXR1cm4gbWFza2l0b0V2ZW50SGFuZGxlcignZm9jdXMnLCAoZWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQsIG9wdGlvbnM6IFJlcXVpcmVkPE1hc2tpdG9PcHRpb25zPikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSBlbGVtZW50LnZhbHVlO1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gcGxhY2Vob2xkZXIubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdmFsdWUuaW5kZXhPZihFTVBUWV9QTEFDRUhPTERFUl9DSEFSKTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIGVsZW1lbnQudmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9cXHVGRUZGL2csICdEJyk7XG4gICAgICAgICAgICAvLyBzdWJzdHJpbmcoMCwgaW5kZXgpICsgcGxhY2Vob2xkZXIuc3Vic3RyaW5nKGluZGV4KTtcbiAgICAgICAgICBlbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdpbnB1dCcpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIHtjYXB0dXJlOiB0cnVlfSk7XG59XG4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFza2l0by5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbWFza2l0by5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXRELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsMkJBQTJCLEVBQUUsK0JBQStCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBTzdILE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsU0FBUyxDQUFDLFdBQW1CLEVBQUUsSUFBaUIsRUFBRSxJQUFvQztRQUNwRixJQUFJLFlBQVksQ0FBQyxXQUFXLENBQUM7WUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFL0MsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ25CLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN6QixNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFFMUIsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztZQUN0QixNQUFNLGtCQUFrQixHQUFHLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNyRSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3hELGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxhQUFhLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNuRCxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsY0FBYyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFckQsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQyxDQUFDO1FBRS9DLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxFQUFFLGFBQWEsSUFBSSxTQUFTO1lBQy9DLE9BQU87WUFDUCxhQUFhO1lBQ2IsY0FBYztZQUNkLElBQUk7U0FDTCxDQUFDO0lBQ0osQ0FBQzt1R0E5QlUsc0JBQXNCO3FHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBSGxDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG9CQUFvQjtpQkFDM0I7O0FBa0NELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFjLEVBQUUsV0FBb0I7SUFDdEUsT0FBTyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUErQyxFQUFFLE9BQWlDLEVBQUUsRUFBRTtRQUN6SCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDekIsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7WUFDdkIsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzVDLENBQUM7YUFBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDekMsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUQsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzVDLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsOEJBQThCO0lBQzVDLE9BQU8sbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBK0MsRUFBRSxPQUFpQyxFQUFFLEVBQUU7UUFDekgsSUFBSSxPQUFPLENBQUMsSUFBSSxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQ2xDLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLE1BQU0sc0JBQXNCLEdBQUcsK0JBQStCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzlFLE1BQU0sa0JBQWtCLEdBQUcsMkJBQTJCLENBQUMsVUFBVSxFQUFFLHNCQUFzQixDQUFDLENBQUM7WUFDM0YsSUFBSSxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO2dCQUNqQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDOUUsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpc05pbE9yQmxhbmssIGlzTm90TmlsIH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcbmltcG9ydCB7IE1hc2tpdG9NYXNrLCBNYXNraXRvT3B0aW9ucywgTWFza2l0b1BsdWdpbiB9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IHsgbWFza2l0b0V2ZW50SGFuZGxlciwgbWFza2l0b1dpdGhQbGFjZWhvbGRlciB9IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5pbXBvcnQgeyBnZXRDYXJldFBvc2l0aW9uLCBnZXRJbnB1dFJhbmdlRnJvbUNhcmV0SW5kZXgsIGdldElucHV0U2VsZWN0aW9uUmFuZ2VzRnJvbU1hc2ssIHNlbGVjdElucHV0UmFuZ2UgfSBmcm9tICcuLi9pbnB1dHMnO1xuXG5leHBvcnQgdHlwZSBNYXNraXRvUGxhY2Vob2xkZXJQaXBlT3B0aW9ucyA9IHsgZGVmYXVsdFByZWZpeD86IHN0cmluZzsgbm9EZWZhdWx0cz86IGJvb2xlYW4gfSAmIFBhcnRpYWw8TWFza2l0b09wdGlvbnM+O1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdtYXNraXRvUGxhY2Vob2xkZXInLFxufSlcbmV4cG9ydCBjbGFzcyBNYXNraXRvUGxhY2Vob2xkZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShwbGFjZWhvbGRlcjogc3RyaW5nLCBtYXNrOiBNYXNraXRvTWFzaywgb3B0cz86IE1hc2tpdG9QbGFjZWhvbGRlclBpcGVPcHRpb25zKTogTWFza2l0b09wdGlvbnMge1xuICAgIGlmIChpc05pbE9yQmxhbmsocGxhY2Vob2xkZXIpKSByZXR1cm4geyBtYXNrIH07XG5cbiAgICBjb25zdCBwbHVnaW5zID0gW107XG4gICAgY29uc3QgcHJlcHJvY2Vzc29ycyA9IFtdO1xuICAgIGNvbnN0IHBvc3Rwcm9jZXNzb3JzID0gW107XG5cbiAgICBpZiAoIW9wdHM/Lm5vRGVmYXVsdHMpIHtcbiAgICAgIGNvbnN0IHBsYWNlaG9sZGVyT3B0aW9ucyA9IG1hc2tpdG9XaXRoUGxhY2Vob2xkZXIocGxhY2Vob2xkZXIsIHRydWUpO1xuICAgICAgcGx1Z2lucy5wdXNoKC4uLnBsYWNlaG9sZGVyT3B0aW9ucy5wbHVnaW5zKTtcbiAgICAgIHByZXByb2Nlc3NvcnMucHVzaCguLi5wbGFjZWhvbGRlck9wdGlvbnMucHJlcHJvY2Vzc29ycyk7XG4gICAgICBwb3N0cHJvY2Vzc29ycy5wdXNoKC4uLnBsYWNlaG9sZGVyT3B0aW9ucy5wb3N0cHJvY2Vzc29ycyk7XG4gICAgfVxuICAgIHBsdWdpbnMucHVzaCguLi4ob3B0cz8ucGx1Z2lucyB8fCBbXSkpO1xuICAgIHByZXByb2Nlc3NvcnMucHVzaCguLi4ob3B0cz8ucHJlcHJvY2Vzc29ycyB8fCBbXSkpO1xuICAgIHBvc3Rwcm9jZXNzb3JzLnB1c2goLi4uKG9wdHM/LnBvc3Rwcm9jZXNzb3JzIHx8IFtdKSk7XG5cbiAgICBpZiAoaXNOb3ROaWwob3B0cz8uZGVmYXVsdFByZWZpeCkpIHtcbiAgICAgIHBsdWdpbnMucHVzaChtYXNraXRvUHJlZml4UGx1Z2luKG9wdHMuZGVmYXVsdFByZWZpeCwgcGxhY2Vob2xkZXIpKTtcbiAgICB9XG4gICAgcGx1Z2lucy5wdXNoKG1hc2tpdG9BdXRvU2VsZWN0QnlNYXNrUGF0dGVybigpKTtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyd3JpdGVNb2RlOiBvcHRzPy5vdmVyd3JpdGVNb2RlIHx8ICdyZXBsYWNlJyxcbiAgICAgIHBsdWdpbnMsXG4gICAgICBwcmVwcm9jZXNzb3JzLFxuICAgICAgcG9zdHByb2Nlc3NvcnMsXG4gICAgICBtYXNrLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hc2tpdG9QcmVmaXhQbHVnaW4ocHJlZml4OiBzdHJpbmcsIHBsYWNlaG9sZGVyPzogc3RyaW5nKTogTWFza2l0b1BsdWdpbiB7XG4gIHJldHVybiBtYXNraXRvRXZlbnRIYW5kbGVyKCdmb2N1cycsIChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCwgb3B0aW9uczogUmVxdWlyZWQ8TWFza2l0b09wdGlvbnM+KSA9PiB7XG4gICAgaWYgKGVsZW1lbnQudmFsdWUgPT09ICcnKSB7XG4gICAgICBlbGVtZW50LnZhbHVlID0gcHJlZml4O1xuICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnKSk7XG4gICAgfSBlbHNlIGlmIChlbGVtZW50LnZhbHVlID09PSBwbGFjZWhvbGRlcikge1xuICAgICAgZWxlbWVudC52YWx1ZSA9IHByZWZpeCArIHBsYWNlaG9sZGVyLnN1YnN0cmluZyhwcmVmaXgubGVuZ3RoKTtcbiAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JykpO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXNraXRvQXV0b1NlbGVjdEJ5TWFza1BhdHRlcm4oKTogTWFza2l0b1BsdWdpbiB7XG4gIHJldHVybiBtYXNraXRvRXZlbnRIYW5kbGVyKCdjbGljaycsIChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCwgb3B0aW9uczogUmVxdWlyZWQ8TWFza2l0b09wdGlvbnM+KSA9PiB7XG4gICAgaWYgKG9wdGlvbnMubWFzayBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICBjb25zdCBjYXJldEluZGV4ID0gZ2V0Q2FyZXRQb3NpdGlvbihlbGVtZW50KTtcbiAgICAgIGNvbnN0IG1hc2tQYXR0ZXJuSW5wdXRSYW5nZXMgPSBnZXRJbnB1dFNlbGVjdGlvblJhbmdlc0Zyb21NYXNrKG9wdGlvbnM/Lm1hc2spO1xuICAgICAgY29uc3Qgc2VsZWN0ZWRJbnB1dFJhbmdlID0gZ2V0SW5wdXRSYW5nZUZyb21DYXJldEluZGV4KGNhcmV0SW5kZXgsIG1hc2tQYXR0ZXJuSW5wdXRSYW5nZXMpO1xuICAgICAgaWYgKGlzTm90TmlsKHNlbGVjdGVkSW5wdXRSYW5nZSkpIHtcbiAgICAgICAgc2VsZWN0SW5wdXRSYW5nZShlbGVtZW50LCBzZWxlY3RlZElucHV0UmFuZ2VbMF0sIHNlbGVjdGVkSW5wdXRSYW5nZVsxXSArIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG59XG4iXX0=
@@ -9,14 +9,14 @@ export class MathAbsPipe {
9
9
  return val;
10
10
  }
11
11
  }
12
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MathAbsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: MathAbsPipe, name: "mathAbs" });
14
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MathAbsPipe, providedIn: 'root' });
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MathAbsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
13
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: MathAbsPipe, name: "mathAbs" });
14
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MathAbsPipe, providedIn: 'root' });
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MathAbsPipe, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MathAbsPipe, decorators: [{
17
17
  type: Pipe,
18
18
  args: [{
19
- name: 'mathAbs'
19
+ name: 'mathAbs',
20
20
  }]
21
21
  }, {
22
22
  type: Injectable,
@@ -26,14 +26,14 @@ export class EvenPipe {
26
26
  transform(val) {
27
27
  return val % 2 === 0;
28
28
  }
29
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: EvenPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
30
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: EvenPipe, name: "even" });
31
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: EvenPipe, providedIn: 'root' });
29
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EvenPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
30
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: EvenPipe, name: "even" });
31
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EvenPipe, providedIn: 'root' });
32
32
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: EvenPipe, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EvenPipe, decorators: [{
34
34
  type: Pipe,
35
35
  args: [{
36
- name: 'even'
36
+ name: 'even',
37
37
  }]
38
38
  }, {
39
39
  type: Injectable,
@@ -43,17 +43,17 @@ export class OddPipe {
43
43
  transform(val) {
44
44
  return val % 2 !== 0;
45
45
  }
46
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: OddPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
47
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: OddPipe, name: "odd" });
48
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: OddPipe, providedIn: 'root' });
46
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OddPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
47
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: OddPipe, name: "odd" });
48
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OddPipe, providedIn: 'root' });
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: OddPipe, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OddPipe, decorators: [{
51
51
  type: Pipe,
52
52
  args: [{
53
- name: 'odd'
53
+ name: 'odd',
54
54
  }]
55
55
  }, {
56
56
  type: Injectable,
57
57
  args: [{ providedIn: 'root' }]
58
58
  }] });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL21hdGgucGlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDOztBQU05RCxNQUFNLE9BQU8sV0FBVztJQUVwQixTQUFTLENBQUMsR0FBVztRQUNuQixJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLElBQUksRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdEI7YUFBTTtZQUNMLE9BQU8sR0FBRyxDQUFDO1NBQ1o7SUFDSCxDQUFDO3VHQVJRLFdBQVc7cUdBQVgsV0FBVzsyR0FBWCxXQUFXLGNBREMsTUFBTTs7MkZBQ2xCLFdBQVc7a0JBSnZCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLFNBQVM7aUJBQ2xCOztrQkFDQSxVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7QUFnQmhDLE1BQU0sT0FBTyxRQUFRO0lBRW5CLFNBQVMsQ0FBQyxHQUFXO1FBQ25CLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQzt1R0FKVSxRQUFRO3FHQUFSLFFBQVE7MkdBQVIsUUFBUSxjQURJLE1BQU07OzJGQUNsQixRQUFRO2tCQUpwQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxNQUFNO2lCQUNiOztrQkFDQSxVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7QUFZaEMsTUFBTSxPQUFPLE9BQU87SUFFbEIsU0FBUyxDQUFDLEdBQVc7UUFDbkIsT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO3VHQUpVLE9BQU87cUdBQVAsT0FBTzsyR0FBUCxPQUFPLGNBREssTUFBTTs7MkZBQ2xCLE9BQU87a0JBSm5CLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLEtBQUs7aUJBQ1o7O2tCQUNBLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdtYXRoQWJzJ1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIE1hdGhBYnNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgICB0cmFuc2Zvcm0odmFsOiBudW1iZXIpOiBhbnkge1xuICAgICAgaWYgKHZhbCAhPT0gdW5kZWZpbmVkICYmIHZhbCAhPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gTWF0aC5hYnModmFsKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWw7XG4gICAgICB9XG4gICAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdldmVuJ1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEV2ZW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKHZhbDogbnVtYmVyKTogYW55IHtcbiAgICByZXR1cm4gdmFsICUgMiA9PT0gMDtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdvZGQnXG59KVxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgT2RkUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybSh2YWw6IG51bWJlcik6IGFueSB7XG4gICAgcmV0dXJuIHZhbCAlIDIgIT09IDA7XG4gIH1cbn1cblxuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL21hdGgucGlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1oRSxNQUFNLE9BQU8sV0FBVztJQUN0QixTQUFTLENBQUMsR0FBVztRQUNuQixJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztJQUNILENBQUM7dUdBUFUsV0FBVztxR0FBWCxXQUFXOzJHQUFYLFdBQVcsY0FERSxNQUFNOzsyRkFDbkIsV0FBVztrQkFKdkIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsU0FBUztpQkFDaEI7O2tCQUNBLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztBQWVsQyxNQUFNLE9BQU8sUUFBUTtJQUNuQixTQUFTLENBQUMsR0FBVztRQUNuQixPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7dUdBSFUsUUFBUTtxR0FBUixRQUFROzJHQUFSLFFBQVEsY0FESyxNQUFNOzsyRkFDbkIsUUFBUTtrQkFKcEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsTUFBTTtpQkFDYjs7a0JBQ0EsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBV2xDLE1BQU0sT0FBTyxPQUFPO0lBQ2xCLFNBQVMsQ0FBQyxHQUFXO1FBQ25CLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQzt1R0FIVSxPQUFPO3FHQUFQLE9BQU87MkdBQVAsT0FBTyxjQURNLE1BQU07OzJGQUNuQixPQUFPO2tCQUpuQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxLQUFLO2lCQUNaOztrQkFDQSxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbWF0aEFicycsXG59KVxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNYXRoQWJzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsOiBudW1iZXIpOiBhbnkge1xuICAgIGlmICh2YWwgIT09IHVuZGVmaW5lZCAmJiB2YWwgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiBNYXRoLmFicyh2YWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdmFsO1xuICAgIH1cbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdldmVuJyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEV2ZW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybSh2YWw6IG51bWJlcik6IGFueSB7XG4gICAgcmV0dXJuIHZhbCAlIDIgPT09IDA7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnb2RkJyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE9kZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHZhbDogbnVtYmVyKTogYW55IHtcbiAgICByZXR1cm4gdmFsICUgMiAhPT0gMDtcbiAgfVxufVxuIl19
@@ -5,15 +5,15 @@ export class NgInitDirective {
5
5
  ngOnInit() {
6
6
  this.ngInit.emit();
7
7
  }
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NgInitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.6", type: NgInitDirective, selector: "[ngInit]", outputs: { ngInit: "ngInit" }, ngImport: i0 });
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NgInitDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: NgInitDirective, selector: "[ngInit]", outputs: { ngInit: "ngInit" }, ngImport: i0 });
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NgInitDirective, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NgInitDirective, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
- selector: '[ngInit]'
14
+ selector: '[ngInit]',
15
15
  }]
16
16
  }], propDecorators: { ngInit: [{
17
17
  type: Output
18
18
  }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctaW5pdC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbmctaW5pdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFLdEUsTUFBTSxPQUFPLGVBQWU7SUFHMUIsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFakMsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQzt1R0FQVSxlQUFlOzJGQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCOzhCQUlDLE1BQU07c0JBREwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW25nSW5pdF0nXG59KVxuZXhwb3J0IGNsYXNzIE5nSW5pdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQE91dHB1dCgpXG4gIG5nSW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubmdJbml0LmVtaXQoKTtcbiAgfVxufVxuIl19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctaW5pdC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbmctaW5pdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLeEUsTUFBTSxPQUFPLGVBQWU7SUFFMUIsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFakMsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQzt1R0FOVSxlQUFlOzJGQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCOzhCQUdDLE1BQU07c0JBREwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmdJbml0XScsXG59KVxuZXhwb3J0IGNsYXNzIE5nSW5pdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBPdXRwdXQoKVxuICBuZ0luaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm5nSW5pdC5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -14,17 +14,17 @@ export class NumberFormatPipe {
14
14
  return '';
15
15
  }
16
16
  }
17
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NumberFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: NumberFormatPipe, name: "numberFormat" });
19
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NumberFormatPipe, providedIn: 'root' });
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NumberFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
18
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: NumberFormatPipe, name: "numberFormat" });
19
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NumberFormatPipe, providedIn: 'root' });
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: NumberFormatPipe, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: NumberFormatPipe, decorators: [{
22
22
  type: Pipe,
23
23
  args: [{
24
- name: 'numberFormat'
24
+ name: 'numberFormat',
25
25
  }]
26
26
  }, {
27
27
  type: Injectable,
28
28
  args: [{ providedIn: 'root' }]
29
29
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZvcm1hdC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbnVtYmVyLWZvcm1hdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixTQUFTLENBQUMsR0FBVyxFQUFFLElBQTBEO1FBQy9FLHNEQUFzRDtRQUN0RCxnQkFBZ0I7UUFDaEIsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDckMsSUFBSSxJQUFJLEVBQUUsYUFBYSxFQUFFO2dCQUN2QixPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ3hDO1lBQ0QsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUM1QzthQUFNO1lBQ0wsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7dUdBYlEsZ0JBQWdCO3FHQUFoQixnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQURKLE1BQU07OzJGQUNsQixnQkFBZ0I7a0JBSjVCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGNBQWM7aUJBQ3ZCOztrQkFDQSxVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdudW1iZXJGb3JtYXQnXG59KVxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgTnVtYmVyRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gICAgdHJhbnNmb3JtKHZhbDogbnVtYmVyLCBvcHRzPzogSW50bC5OdW1iZXJGb3JtYXRPcHRpb25zICYge2ZpeGVkRGVjaW1hbHM/OiBudW1iZXJ9KTogc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgIC8vIEZvcm1hdCB0aGUgb3V0cHV0IHRvIGRpc3BsYXkgYW55IHdheSB5b3Ugd2FudCBoZXJlLlxuICAgICAgLy8gRm9yIGluc3RhbmNlOlxuICAgICAgaWYgKHZhbCAhPT0gdW5kZWZpbmVkICYmIHZhbCAhPT0gbnVsbCkge1xuICAgICAgICBpZiAob3B0cz8uZml4ZWREZWNpbWFscykge1xuICAgICAgICAgIHJldHVybiB2YWwudG9GaXhlZChvcHRzLmZpeGVkRGVjaW1hbHMpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWwudG9Mb2NhbGVTdHJpbmcodW5kZWZpbmVkLCBvcHRzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH1cbiAgICB9XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZvcm1hdC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbnVtYmVyLWZvcm1hdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixTQUFTLENBQUMsR0FBVyxFQUFFLElBQTREO1FBQ2pGLHNEQUFzRDtRQUN0RCxnQkFBZ0I7UUFDaEIsSUFBSSxHQUFHLEtBQUssU0FBUyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0QyxJQUFJLElBQUksRUFBRSxhQUFhLEVBQUUsQ0FBQztnQkFDeEIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN6QyxDQUFDO1lBQ0QsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztJQUNILENBQUM7dUdBWlUsZ0JBQWdCO3FHQUFoQixnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQURILE1BQU07OzJGQUNuQixnQkFBZ0I7a0JBSjVCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGNBQWM7aUJBQ3JCOztrQkFDQSxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbnVtYmVyRm9ybWF0Jyxcbn0pXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE51bWJlckZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHZhbDogbnVtYmVyLCBvcHRzPzogSW50bC5OdW1iZXJGb3JtYXRPcHRpb25zICYgeyBmaXhlZERlY2ltYWxzPzogbnVtYmVyIH0pOiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4ge1xuICAgIC8vIEZvcm1hdCB0aGUgb3V0cHV0IHRvIGRpc3BsYXkgYW55IHdheSB5b3Ugd2FudCBoZXJlLlxuICAgIC8vIEZvciBpbnN0YW5jZTpcbiAgICBpZiAodmFsICE9PSB1bmRlZmluZWQgJiYgdmFsICE9PSBudWxsKSB7XG4gICAgICBpZiAob3B0cz8uZml4ZWREZWNpbWFscykge1xuICAgICAgICByZXR1cm4gdmFsLnRvRml4ZWQob3B0cy5maXhlZERlY2ltYWxzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2YWwudG9Mb2NhbGVTdHJpbmcodW5kZWZpbmVkLCBvcHRzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxufVxuIl19