@sumaris-net/ngx-components 1.23.8 → 2.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 (714) hide show
  1. package/doc/build.md +2 -2
  2. package/esm2020/public_api.mjs +274 -0
  3. package/esm2020/public_test_api.mjs +46 -0
  4. package/esm2020/src/app/admin/admin-routing.module.mjs +41 -0
  5. package/esm2020/src/app/admin/admin.module.mjs +49 -0
  6. package/esm2020/src/app/admin/services/filter/person.filter.mjs +59 -0
  7. package/esm2020/src/app/admin/services/person.service.mjs +161 -0
  8. package/esm2020/src/app/admin/services/validator/person.validator.mjs +34 -0
  9. package/esm2020/src/app/admin/users/list/users.mjs +227 -0
  10. package/esm2020/src/app/core/about/modal-about.mjs +71 -0
  11. package/esm2020/src/app/core/account/account.mjs +230 -0
  12. package/esm2020/src/app/core/auth/form/form-auth.mjs +131 -0
  13. package/esm2020/src/app/core/auth/modal/modal-auth.mjs +72 -0
  14. package/esm2020/src/app/core/core.module.mjs +223 -0
  15. package/esm2020/src/app/core/core.testing.module.mjs +72 -0
  16. package/esm2020/src/app/core/form/editor.class.mjs +608 -0
  17. package/esm2020/src/app/core/form/entity-editor-modal.class.mjs +406 -0
  18. package/esm2020/src/app/core/form/entity-editor.class.mjs +669 -0
  19. package/esm2020/src/app/core/form/entity-metadata.component.mjs +25 -0
  20. package/esm2020/src/app/core/form/form-buttons-bar.component.mjs +71 -0
  21. package/esm2020/src/app/core/form/form.class.mjs +334 -0
  22. package/esm2020/src/app/core/form/form.utils.mjs +264 -0
  23. package/esm2020/src/app/core/form/list.form.mjs +221 -0
  24. package/esm2020/src/app/core/form/properties.form.mjs +126 -0
  25. package/esm2020/src/app/core/graphql/graphql.module.mjs +22 -0
  26. package/esm2020/src/app/core/graphql/graphql.service.mjs +730 -0
  27. package/esm2020/src/app/core/graphql/graphql.utils.mjs +117 -0
  28. package/esm2020/src/app/core/home/home.mjs +257 -0
  29. package/esm2020/src/app/core/icon/icon.component.mjs +41 -0
  30. package/esm2020/src/app/core/icon/icon.module.mjs +29 -0
  31. package/esm2020/src/app/core/install/install-upgrade-card.component.mjs +337 -0
  32. package/esm2020/src/app/core/install/install-upgrade-card.module.mjs +33 -0
  33. package/esm2020/src/app/core/menu/menu.component.mjs +317 -0
  34. package/{esm2015/src/app/core/menu/menu.model.js → esm2020/src/app/core/menu/menu.model.mjs} +0 -0
  35. package/esm2020/src/app/core/menu/menu.module.mjs +45 -0
  36. package/{esm2015/src/app/core/menu/menu.service.js → esm2020/src/app/core/menu/menu.service.mjs} +9 -7
  37. package/esm2020/src/app/core/offline/update-offline-mode-card.component.mjs +27 -0
  38. package/esm2020/src/app/core/peer/select-peer.modal.mjs +130 -0
  39. package/esm2020/src/app/core/peer/select-peer.module.mjs +35 -0
  40. package/esm2020/src/app/core/register/confirm/confirm.mjs +81 -0
  41. package/esm2020/src/app/core/register/form/form-register.mjs +181 -0
  42. package/esm2020/src/app/core/register/modal/modal-register.mjs +52 -0
  43. package/esm2020/src/app/core/register/register.module.mjs +42 -0
  44. package/esm2020/src/app/core/services/account.service.mjs +1112 -0
  45. package/esm2020/src/app/core/services/auth-guard.service.mjs +71 -0
  46. package/esm2020/src/app/core/services/base-entity-service.class.mjs +433 -0
  47. package/esm2020/src/app/core/services/base-graphql-service.class.mjs +219 -0
  48. package/{esm2015/src/app/core/services/base58.js → esm2020/src/app/core/services/base58.mjs} +0 -0
  49. package/{esm2015/src/app/core/services/config/core.config.js → esm2020/src/app/core/services/config/core.config.mjs} +0 -0
  50. package/esm2020/src/app/core/services/config.service.mjs +354 -0
  51. package/{esm2015/src/app/core/services/crypto.service.js → esm2020/src/app/core/services/crypto.service.mjs} +7 -5
  52. package/{esm2015/src/app/core/services/errors.js → esm2020/src/app/core/services/errors.mjs} +0 -0
  53. package/esm2020/src/app/core/services/local-settings.service.mjs +442 -0
  54. package/esm2020/src/app/core/services/model/account.model.mjs +50 -0
  55. package/esm2020/src/app/core/services/model/config.model.mjs +89 -0
  56. package/esm2020/src/app/core/services/model/department.model.mjs +30 -0
  57. package/esm2020/src/app/core/services/model/entity.decorators.mjs +107 -0
  58. package/esm2020/src/app/core/services/model/entity.model.mjs +242 -0
  59. package/{esm2015/src/app/core/services/model/filter.model.js → esm2020/src/app/core/services/model/filter.model.mjs} +0 -0
  60. package/{esm2015/src/app/core/services/model/history.model.js → esm2020/src/app/core/services/model/history.model.mjs} +0 -0
  61. package/{esm2015/src/app/core/services/model/model.enum.js → esm2020/src/app/core/services/model/model.enum.mjs} +0 -0
  62. package/esm2020/src/app/core/services/model/peer.model.mjs +68 -0
  63. package/esm2020/src/app/core/services/model/person.model.mjs +83 -0
  64. package/esm2020/src/app/core/services/model/referential.model.mjs +145 -0
  65. package/esm2020/src/app/core/services/model/settings.model.mjs +75 -0
  66. package/esm2020/src/app/core/services/network.service.mjs +602 -0
  67. package/esm2020/src/app/core/services/network.utils.mjs +16 -0
  68. package/esm2020/src/app/core/services/pipes/account.pipes.mjs +38 -0
  69. package/esm2020/src/app/core/services/pipes/department-to-string.pipe.mjs +23 -0
  70. package/esm2020/src/app/core/services/pipes/person-to-string.pipe.mjs +23 -0
  71. package/esm2020/src/app/core/services/pipes/usage-mode.pipes.mjs +37 -0
  72. package/esm2020/src/app/core/services/platform.service.mjs +476 -0
  73. package/esm2020/src/app/core/services/storage/entities-storage.service.mjs +422 -0
  74. package/esm2020/src/app/core/services/storage/entity-store.class.mjs +449 -0
  75. package/esm2020/src/app/core/services/testing/referential-filter.model.mjs +23 -0
  76. package/esm2020/src/app/core/services/testing/referential.validator.mjs +45 -0
  77. package/esm2020/src/app/core/services/validator/account.validator.mjs +52 -0
  78. package/esm2020/src/app/core/services/validator/base.validator.class.mjs +47 -0
  79. package/esm2020/src/app/core/services/validator/local-settings.validator.mjs +66 -0
  80. package/esm2020/src/app/core/services/validator/user-settings.validator.mjs +29 -0
  81. package/esm2020/src/app/core/settings/settings.page.mjs +290 -0
  82. package/esm2020/src/app/core/table/actions-column.component.mjs +96 -0
  83. package/esm2020/src/app/core/table/entities-table-datasource.class.mjs +385 -0
  84. package/esm2020/src/app/core/table/memory-table.class.mjs +53 -0
  85. package/esm2020/src/app/core/table/table-select-columns.component.mjs +43 -0
  86. package/esm2020/src/app/core/table/table.class.mjs +1654 -0
  87. package/{esm2015/src/app/core/table/table.utils.js → esm2020/src/app/core/table/table.utils.mjs} +0 -0
  88. package/esm2020/src/app/core/table/testing/table.testing.mjs +264 -0
  89. package/esm2020/src/app/core/table/testing/table.testing.module.mjs +38 -0
  90. package/esm2020/src/app/core/text-popover/testing/text-popover.testing.mjs +37 -0
  91. package/esm2020/src/app/core/text-popover/testing/text-popover.testing.module.mjs +45 -0
  92. package/esm2020/src/app/core/text-popover/text-form.component.mjs +84 -0
  93. package/esm2020/src/app/core/text-popover/text-popover.component.mjs +92 -0
  94. package/esm2020/src/app/shared/alerts.mjs +238 -0
  95. package/esm2020/src/app/shared/audio/audio.mjs +201 -0
  96. package/esm2020/src/app/shared/audio/audio.testing.mjs +31 -0
  97. package/esm2020/src/app/shared/audio/audio.testing.module.mjs +45 -0
  98. package/esm2020/src/app/shared/capacitor/keyboard.mjs +40 -0
  99. package/esm2020/src/app/shared/capacitor/plugins.mjs +9 -0
  100. package/{esm2015/src/app/shared/constants.js → esm2020/src/app/shared/constants.mjs} +2 -1
  101. package/esm2020/src/app/shared/dates.mjs +134 -0
  102. package/esm2020/src/app/shared/directives/autofocus.directive.mjs +92 -0
  103. package/esm2020/src/app/shared/directives/autotitle.directive.mjs +30 -0
  104. package/esm2020/src/app/shared/directives/directives.module.mjs +43 -0
  105. package/esm2020/src/app/shared/directives/drag-and-drop.directive.mjs +53 -0
  106. package/esm2020/src/app/shared/directives/ng-var.directive.mjs +31 -0
  107. package/esm2020/src/app/shared/directives/resizable/resizable.component.mjs +59 -0
  108. package/esm2020/src/app/shared/directives/resizable/resizable.directive.mjs +40 -0
  109. package/esm2020/src/app/shared/directives/resizable/resizable.module.mjs +17 -0
  110. package/esm2020/src/app/shared/events.mjs +64 -0
  111. package/esm2020/src/app/shared/file/csv.utils.mjs +74 -0
  112. package/esm2020/src/app/shared/file/file.service.mjs +117 -0
  113. package/esm2020/src/app/shared/file/file.utils.mjs +113 -0
  114. package/esm2020/src/app/shared/file/images.utils.mjs +161 -0
  115. package/{esm2015/src/app/shared/file/uri.utils.js → esm2020/src/app/shared/file/uri.utils.mjs} +0 -0
  116. package/{esm2015/src/app/shared/focusable.js → esm2020/src/app/shared/focusable.mjs} +0 -0
  117. package/esm2020/src/app/shared/form/field.component.mjs +241 -0
  118. package/{esm2015/src/app/shared/form/field.model.js → esm2020/src/app/shared/form/field.model.mjs} +1 -1
  119. package/esm2020/src/app/shared/form/loading-spinner.mjs +36 -0
  120. package/esm2020/src/app/shared/forms.mjs +355 -0
  121. package/esm2020/src/app/shared/functions.mjs +417 -0
  122. package/{esm2015/src/app/shared/gesture/gesture-config.js → esm2020/src/app/shared/gesture/gesture-config.mjs} +7 -5
  123. package/esm2020/src/app/shared/gesture/hammer.utils.mjs +2 -0
  124. package/{esm2015/src/app/shared/graph/colors.utils.js → esm2020/src/app/shared/graph/colors.utils.mjs} +0 -0
  125. package/esm2020/src/app/shared/graph/graph-colors.mjs +254 -0
  126. package/esm2020/src/app/shared/guard/component-dirty.guard.mjs +57 -0
  127. package/esm2020/src/app/shared/help/help.modal.mjs +53 -0
  128. package/esm2020/src/app/shared/hotkeys/dialog/hotkeys-dialog.component.mjs +23 -0
  129. package/esm2020/src/app/shared/hotkeys/hotkeys.service.mjs +84 -0
  130. package/esm2020/src/app/shared/hotkeys/shared-hotkeys.module.mjs +42 -0
  131. package/esm2020/src/app/shared/http/http.utils.mjs +52 -0
  132. package/esm2020/src/app/shared/image/gallery/image-gallery.component.mjs +279 -0
  133. package/esm2020/src/app/shared/image/gallery/image-gallery.module.mjs +46 -0
  134. package/esm2020/src/app/shared/image/gallery/testing/gallegry.model.testing.mjs +27 -0
  135. package/esm2020/src/app/shared/image/gallery/testing/gallery.service.testing.mjs +89 -0
  136. package/esm2020/src/app/shared/image/gallery/testing/gallery.testing.mjs +33 -0
  137. package/esm2020/src/app/shared/image/gallery/testing/gallery.testing.module.mjs +56 -0
  138. package/esm2020/src/app/shared/image/image.model.mjs +2 -0
  139. package/esm2020/src/app/shared/image/image.module.mjs +29 -0
  140. package/esm2020/src/app/shared/image/image.service.mjs +99 -0
  141. package/{esm2015/src/app/shared/inputs.js → esm2020/src/app/shared/inputs.mjs} +4 -4
  142. package/{esm2015/src/app/shared/interceptors/progess.interceptor.js → esm2020/src/app/shared/interceptors/progess.interceptor.mjs} +0 -0
  143. package/esm2020/src/app/shared/material/autocomplete/material.autocomplete.config.mjs +47 -0
  144. package/esm2020/src/app/shared/material/autocomplete/material.autocomplete.mjs +836 -0
  145. package/esm2020/src/app/shared/material/autocomplete/material.autocomplete.module.mjs +78 -0
  146. package/esm2020/src/app/shared/material/autocomplete/material.autocomplete.utils.mjs +19 -0
  147. package/esm2020/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +205 -0
  148. package/esm2020/src/app/shared/material/badge/badge-icon.directive.mjs +143 -0
  149. package/esm2020/src/app/shared/material/badge/badge-icon.module.mjs +32 -0
  150. package/esm2020/src/app/shared/material/badge/badge-icon.test.mjs +27 -0
  151. package/esm2020/src/app/shared/material/boolean/boolean.module.mjs +68 -0
  152. package/esm2020/src/app/shared/material/boolean/material.boolean.mjs +253 -0
  153. package/esm2020/src/app/shared/material/chips/chips.module.mjs +76 -0
  154. package/esm2020/src/app/shared/material/chips/material.chips.mjs +692 -0
  155. package/esm2020/src/app/shared/material/chips/testing/chips.test.mjs +136 -0
  156. package/esm2020/src/app/shared/material/datetime/datetime.module.mjs +91 -0
  157. package/esm2020/src/app/shared/material/datetime/material.date.mjs +392 -0
  158. package/esm2020/src/app/shared/material/datetime/material.dateshort.mjs +327 -0
  159. package/esm2020/src/app/shared/material/datetime/material.datetime.mjs +416 -0
  160. package/esm2020/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +110 -0
  161. package/esm2020/src/app/shared/material/datetime/testing/mat-date.test.mjs +111 -0
  162. package/esm2020/src/app/shared/material/duration/duration.module.mjs +67 -0
  163. package/{esm2015/src/app/shared/material/duration/duration.utils.js → esm2020/src/app/shared/material/duration/duration.utils.mjs} +0 -0
  164. package/esm2020/src/app/shared/material/duration/material.duration.mjs +257 -0
  165. package/esm2020/src/app/shared/material/latlong/latlong.utils.mjs +266 -0
  166. package/esm2020/src/app/shared/material/latlong/material.latlong.mjs +381 -0
  167. package/esm2020/src/app/shared/material/latlong/material.latlong.module.mjs +67 -0
  168. package/esm2020/src/app/shared/material/latlong/testing/latlong.test.mjs +74 -0
  169. package/{esm2015/src/app/shared/material/material.animations.js → esm2020/src/app/shared/material/material.animations.mjs} +0 -0
  170. package/esm2020/src/app/shared/material/material.module.mjs +224 -0
  171. package/{esm2015/src/app/shared/material/material.testing.module.js → esm2020/src/app/shared/material/material.testing.module.mjs} +68 -34
  172. package/esm2020/src/app/shared/material/numpad/numpad.append-to-input.directive.mjs +98 -0
  173. package/esm2020/src/app/shared/material/numpad/numpad.component.mjs +80 -0
  174. package/esm2020/src/app/shared/material/numpad/numpad.container.mjs +190 -0
  175. package/esm2020/src/app/shared/material/numpad/numpad.content.mjs +17 -0
  176. package/esm2020/src/app/shared/material/numpad/numpad.directive.mjs +162 -0
  177. package/esm2020/src/app/shared/material/numpad/numpad.dom-service.mjs +37 -0
  178. package/{esm2015/src/app/shared/material/numpad/numpad.model.js → esm2020/src/app/shared/material/numpad/numpad.model.mjs} +1 -1
  179. package/esm2020/src/app/shared/material/numpad/numpad.module.mjs +60 -0
  180. package/esm2020/src/app/shared/material/numpad/testing/numpad.test.mjs +46 -0
  181. package/esm2020/src/app/shared/material/paginator/material.paginator-i18n.mjs +42 -0
  182. package/esm2020/src/app/shared/material/stepper/material.stepper-i18n.mjs +22 -0
  183. package/esm2020/src/app/shared/material/swipe/material.swipe.mjs +334 -0
  184. package/esm2020/src/app/shared/material/swipe/swipe.module.mjs +51 -0
  185. package/esm2020/src/app/shared/material/swipe/testing/swipe.test.mjs +65 -0
  186. package/esm2020/src/app/shared/observables.mjs +96 -0
  187. package/esm2020/src/app/shared/pipes/arrays.pipe.mjs +114 -0
  188. package/esm2020/src/app/shared/pipes/colors.pipe.mjs +23 -0
  189. package/esm2020/src/app/shared/pipes/date-diff-duration.pipe.mjs +49 -0
  190. package/esm2020/src/app/shared/pipes/date-format.pipe.mjs +42 -0
  191. package/{esm2015/src/app/shared/pipes/date-from-now.pipe.js → esm2020/src/app/shared/pipes/date-from-now.pipe.mjs} +13 -12
  192. package/{esm2015/src/app/shared/pipes/duration.pipe.js → esm2020/src/app/shared/pipes/duration.pipe.mjs} +13 -12
  193. package/esm2020/src/app/shared/pipes/file-size.pipe.mjs +62 -0
  194. package/esm2020/src/app/shared/pipes/form.pipes.mjs +187 -0
  195. package/esm2020/src/app/shared/pipes/highlight.pipe.mjs +48 -0
  196. package/esm2020/src/app/shared/pipes/latlong-format.pipe.mjs +46 -0
  197. package/esm2020/src/app/shared/pipes/maps.pipe.mjs +63 -0
  198. package/esm2020/src/app/shared/pipes/math.pipes.mjs +59 -0
  199. package/esm2020/src/app/shared/pipes/ng-init.pipe.mjs +21 -0
  200. package/{esm2015/src/app/shared/pipes/number-format.pipe.js → esm2020/src/app/shared/pipes/number-format.pipe.mjs} +14 -9
  201. package/esm2020/src/app/shared/pipes/pipes.module.mjs +206 -0
  202. package/esm2020/src/app/shared/pipes/property.pipes.mjs +96 -0
  203. package/esm2020/src/app/shared/pipes/string.pipes.mjs +69 -0
  204. package/esm2020/src/app/shared/pipes/translate-context.pipe.mjs +43 -0
  205. package/esm2020/src/app/shared/platforms.mjs +49 -0
  206. package/esm2020/src/app/shared/services/entity-service.class.mjs +19 -0
  207. package/esm2020/src/app/shared/services/job.utils.mjs +92 -0
  208. package/esm2020/src/app/shared/services/memory-entity-service.class.mjs +253 -0
  209. package/esm2020/src/app/shared/services/progress-bar.service.mjs +32 -0
  210. package/esm2020/src/app/shared/services/startable-service.class.mjs +94 -0
  211. package/esm2020/src/app/shared/services/storage/storage.service.mjs +132 -0
  212. package/esm2020/src/app/shared/services/storage/storage.utils.mjs +13 -0
  213. package/esm2020/src/app/shared/services/translate-context.service.mjs +81 -0
  214. package/esm2020/src/app/shared/services/validator-service.class.mjs +2 -0
  215. package/esm2020/src/app/shared/services.mjs +62 -0
  216. package/esm2020/src/app/shared/shared-routing.module.mjs +63 -0
  217. package/esm2020/src/app/shared/shared.module.mjs +208 -0
  218. package/esm2020/src/app/shared/shared.testing.module.mjs +76 -0
  219. package/esm2020/src/app/shared/testing/tests.page.mjs +33 -0
  220. package/esm2020/src/app/shared/toast/toast.testing.mjs +52 -0
  221. package/esm2020/src/app/shared/toast/toast.testing.module.mjs +45 -0
  222. package/esm2020/src/app/shared/toast/toasts.mjs +121 -0
  223. package/esm2020/src/app/shared/toolbar/modal-toolbar.mjs +58 -0
  224. package/esm2020/src/app/shared/toolbar/toolbar.mjs +226 -0
  225. package/esm2020/src/app/shared/toolbar/toolbar.module.mjs +53 -0
  226. package/{esm2015/src/app/shared/types.js → esm2020/src/app/shared/types.mjs} +0 -0
  227. package/esm2020/src/app/shared/upload-file/testing/upload-file.testing.mjs +57 -0
  228. package/esm2020/src/app/shared/upload-file/testing/upload-file.testing.module.mjs +45 -0
  229. package/esm2020/src/app/shared/upload-file/upload-file-popover.component.mjs +97 -0
  230. package/esm2020/src/app/shared/upload-file/upload-file.component.mjs +204 -0
  231. package/esm2020/src/app/shared/upload-file/upload-file.model.mjs +20 -0
  232. package/esm2020/src/app/shared/validator/form-error-adapter.class.mjs +104 -0
  233. package/esm2020/src/app/shared/validator/validators.mjs +544 -0
  234. package/{esm2015/src/app/shared/version/versions.js → esm2020/src/app/shared/version/versions.mjs} +0 -0
  235. package/esm2020/src/app/social/job/job.model.mjs +26 -0
  236. package/esm2020/src/app/social/job/job.module.mjs +35 -0
  237. package/esm2020/src/app/social/job/job.service.mjs +59 -0
  238. package/esm2020/src/app/social/job/progression/job-progression.component.mjs +201 -0
  239. package/esm2020/src/app/social/job/progression/job-progression.list.mjs +22 -0
  240. package/esm2020/src/app/social/job/testing/job-progression.testing.mjs +51 -0
  241. package/esm2020/src/app/social/job/testing/job-progression.testing.service.mjs +33 -0
  242. package/esm2020/src/app/social/job/testing/job.testing.module.mjs +35 -0
  243. package/esm2020/src/app/social/message/message.form.mjs +81 -0
  244. package/esm2020/src/app/social/message/message.modal.mjs +93 -0
  245. package/esm2020/src/app/social/message/message.model.mjs +65 -0
  246. package/esm2020/src/app/social/message/message.module.mjs +35 -0
  247. package/esm2020/src/app/social/message/message.service.mjs +84 -0
  248. package/{esm2015/src/app/social/social.errors.js → esm2020/src/app/social/social.errors.mjs} +0 -0
  249. package/esm2020/src/app/social/social.module.mjs +47 -0
  250. package/esm2020/src/app/social/social.testing.module.mjs +51 -0
  251. package/esm2020/src/app/social/user-event/notification/user-event-notification.icon.mjs +97 -0
  252. package/esm2020/src/app/social/user-event/notification/user-event-notification.list.mjs +212 -0
  253. package/esm2020/src/app/social/user-event/testing/user-event.testing.mjs +228 -0
  254. package/esm2020/src/app/social/user-event/testing/user-event.testing.model.mjs +107 -0
  255. package/esm2020/src/app/social/user-event/testing/user-event.testing.module.mjs +35 -0
  256. package/esm2020/src/app/social/user-event/testing/user-event.testing.service.mjs +111 -0
  257. package/esm2020/src/app/social/user-event/user-event.model.mjs +2 -0
  258. package/esm2020/src/app/social/user-event/user-event.module.mjs +39 -0
  259. package/esm2020/src/app/social/user-event/user-event.service.mjs +486 -0
  260. package/{esm2015/src/app/vendor.js → esm2020/src/app/vendor.mjs} +1 -1
  261. package/esm2020/src/environments/environment.class.mjs +5 -0
  262. package/esm2020/src/environments/environment.mjs +86 -0
  263. package/esm2020/sumaris-net.ngx-components.mjs +5 -0
  264. package/fesm2015/sumaris-net.ngx-components.mjs +32493 -0
  265. package/fesm2015/sumaris-net.ngx-components.mjs.map +1 -0
  266. package/fesm2020/sumaris-net.ngx-components.mjs +31739 -0
  267. package/fesm2020/sumaris-net.ngx-components.mjs.map +1 -0
  268. package/index.d.ts +5 -0
  269. package/package.json +25 -34
  270. package/public_api.d.ts +23 -28
  271. package/public_test_api.d.ts +37 -0
  272. package/resources/README.md +8 -0
  273. package/src/app/admin/admin-routing.module.d.ts +7 -0
  274. package/src/app/admin/admin.module.d.ts +11 -0
  275. package/src/app/admin/services/person.service.d.ts +3 -0
  276. package/src/app/admin/services/validator/person.validator.d.ts +8 -5
  277. package/src/app/admin/users/list/users.d.ts +10 -7
  278. package/src/app/core/about/modal-about.d.ts +3 -0
  279. package/src/app/core/account/account.d.ts +11 -8
  280. package/src/app/core/auth/form/form-auth.d.ts +6 -3
  281. package/src/app/core/auth/modal/modal-auth.d.ts +3 -0
  282. package/src/app/core/core.module.d.ts +36 -0
  283. package/src/app/core/core.testing.module.d.ts +9 -0
  284. package/src/app/core/form/editor.class.d.ts +7 -2
  285. package/src/app/core/form/entity-editor-modal.class.d.ts +7 -4
  286. package/src/app/core/form/entity-editor.class.d.ts +4 -1
  287. package/src/app/core/form/entity-metadata.component.d.ts +3 -0
  288. package/src/app/core/form/form-buttons-bar.component.d.ts +3 -0
  289. package/src/app/core/form/form.class.d.ts +12 -9
  290. package/src/app/core/form/form.utils.d.ts +4 -4
  291. package/src/app/core/form/list.form.d.ts +10 -7
  292. package/src/app/core/form/properties.form.d.ts +10 -7
  293. package/src/app/core/graphql/graphql.module.d.ts +5 -0
  294. package/src/app/core/graphql/graphql.service.d.ts +9 -2
  295. package/src/app/core/graphql/graphql.utils.d.ts +8 -0
  296. package/src/app/core/home/home.d.ts +4 -1
  297. package/src/app/core/icon/icon.component.d.ts +5 -2
  298. package/src/app/core/icon/icon.module.d.ts +7 -0
  299. package/src/app/core/install/install-upgrade-card.component.d.ts +5 -2
  300. package/src/app/core/install/install-upgrade-card.module.d.ts +10 -0
  301. package/src/app/core/menu/menu.component.d.ts +7 -5
  302. package/src/app/core/menu/menu.module.d.ts +8 -0
  303. package/src/app/core/menu/menu.service.d.ts +3 -0
  304. package/src/app/core/offline/update-offline-mode-card.component.d.ts +3 -0
  305. package/src/app/core/peer/select-peer.modal.d.ts +7 -4
  306. package/src/app/core/peer/select-peer.module.d.ts +9 -0
  307. package/src/app/core/register/confirm/confirm.d.ts +3 -0
  308. package/src/app/core/register/form/form-register.d.ts +10 -7
  309. package/src/app/core/register/modal/modal-register.d.ts +3 -0
  310. package/src/app/core/register/register.module.d.ts +12 -0
  311. package/src/app/core/services/account.service.d.ts +5 -2
  312. package/src/app/core/services/auth-guard.service.d.ts +3 -0
  313. package/src/app/core/services/base-entity-service.class.d.ts +3 -0
  314. package/src/app/core/services/base-graphql-service.class.d.ts +3 -0
  315. package/src/app/core/services/config.service.d.ts +4 -1
  316. package/src/app/core/services/crypto.service.d.ts +3 -0
  317. package/src/app/core/services/local-settings.service.d.ts +5 -1
  318. package/src/app/core/services/model/referential.model.d.ts +1 -1
  319. package/src/app/core/services/network.service.d.ts +6 -5
  320. package/src/app/core/services/pipes/account.pipes.d.ts +7 -0
  321. package/src/app/core/services/pipes/department-to-string.pipe.d.ts +4 -0
  322. package/src/app/core/services/pipes/person-to-string.pipe.d.ts +4 -0
  323. package/src/app/core/services/pipes/usage-mode.pipes.d.ts +7 -0
  324. package/src/app/core/services/platform.service.d.ts +22 -21
  325. package/src/app/core/services/storage/entities-storage.service.d.ts +5 -2
  326. package/src/app/core/services/storage/entity-store.class.d.ts +3 -3
  327. package/src/app/core/services/testing/referential.validator.d.ts +8 -5
  328. package/src/app/core/services/validator/account.validator.d.ts +6 -3
  329. package/src/app/core/services/validator/base.validator.class.d.ts +8 -5
  330. package/src/app/core/services/validator/local-settings.validator.d.ts +8 -5
  331. package/src/app/core/services/validator/user-settings.validator.d.ts +6 -3
  332. package/src/app/core/settings/settings.page.d.ts +8 -5
  333. package/src/app/core/table/actions-column.component.d.ts +3 -0
  334. package/src/app/core/table/entities-table-datasource.class.d.ts +11 -9
  335. package/src/app/core/table/memory-table.class.d.ts +3 -0
  336. package/src/app/core/table/table-select-columns.component.d.ts +4 -5
  337. package/src/app/core/table/table.class.d.ts +53 -34
  338. package/src/app/core/table/testing/table.testing.d.ts +13 -15
  339. package/src/app/core/table/testing/table.testing.module.d.ts +9 -0
  340. package/src/app/core/text-popover/testing/text-popover.testing.d.ts +4 -1
  341. package/src/app/core/text-popover/testing/text-popover.testing.module.d.ts +9 -0
  342. package/src/app/core/text-popover/text-form.component.d.ts +7 -4
  343. package/src/app/core/text-popover/text-popover.component.d.ts +3 -0
  344. package/src/app/shared/alerts.d.ts +4 -4
  345. package/src/app/shared/audio/audio.d.ts +20 -11
  346. package/src/app/shared/audio/audio.testing.d.ts +13 -0
  347. package/src/app/shared/audio/audio.testing.module.d.ts +11 -0
  348. package/src/app/shared/capacitor/keyboard.d.ts +16 -0
  349. package/src/app/shared/capacitor/plugins.d.ts +7 -0
  350. package/src/app/shared/constants.d.ts +1 -0
  351. package/src/app/shared/directives/autofocus.directive.d.ts +9 -7
  352. package/src/app/shared/directives/autotitle.directive.d.ts +3 -0
  353. package/src/app/shared/directives/directives.module.d.ts +10 -0
  354. package/src/app/shared/directives/drag-and-drop.directive.d.ts +3 -0
  355. package/src/app/shared/directives/ng-var.directive.d.ts +3 -0
  356. package/src/app/shared/directives/resizable/resizable.component.d.ts +3 -0
  357. package/src/app/shared/directives/resizable/resizable.directive.d.ts +3 -0
  358. package/src/app/shared/directives/resizable/resizable.module.d.ts +6 -0
  359. package/src/app/shared/file/file.service.d.ts +3 -0
  360. package/src/app/shared/file/file.utils.d.ts +1 -1
  361. package/src/app/shared/form/field.component.d.ts +9 -3
  362. package/src/app/shared/form/field.model.d.ts +2 -2
  363. package/src/app/shared/form/loading-spinner.d.ts +3 -0
  364. package/src/app/shared/forms.d.ts +12 -12
  365. package/src/app/shared/gesture/gesture-config.d.ts +3 -0
  366. package/src/app/shared/gesture/hammer.utils.d.ts +11 -11
  367. package/src/app/shared/guard/component-dirty.guard.d.ts +3 -0
  368. package/src/app/shared/help/help.modal.d.ts +4 -1
  369. package/src/app/shared/hotkeys/dialog/hotkeys-dialog.component.d.ts +3 -0
  370. package/src/app/shared/hotkeys/hotkeys.service.d.ts +4 -1
  371. package/src/app/shared/hotkeys/shared-hotkeys.module.d.ts +9 -0
  372. package/src/app/shared/image/gallery/image-gallery.component.d.ts +77 -0
  373. package/src/app/shared/image/gallery/image-gallery.module.d.ts +12 -0
  374. package/src/app/shared/image/gallery/testing/gallegry.model.testing.d.ts +12 -0
  375. package/src/app/shared/image/gallery/testing/gallery.service.testing.d.ts +33 -0
  376. package/src/app/shared/image/gallery/testing/gallery.testing.d.ts +15 -0
  377. package/src/app/shared/image/gallery/testing/gallery.testing.module.d.ts +12 -0
  378. package/src/app/shared/image/image.model.d.ts +5 -0
  379. package/src/app/shared/image/image.module.d.ts +8 -0
  380. package/src/app/shared/image/image.service.d.ts +32 -0
  381. package/src/app/shared/inputs.d.ts +3 -3
  382. package/src/app/shared/material/autocomplete/material.autocomplete.config.d.ts +36 -0
  383. package/src/app/shared/material/autocomplete/material.autocomplete.d.ts +11 -40
  384. package/src/app/shared/material/autocomplete/material.autocomplete.module.d.ts +19 -0
  385. package/src/app/shared/material/autocomplete/material.autocomplete.utils.d.ts +4 -0
  386. package/src/app/shared/material/autocomplete/testing/autocomplete.test.d.ts +12 -9
  387. package/src/app/shared/material/badge/badge-icon.directive.d.ts +6 -4
  388. package/src/app/shared/material/badge/badge-icon.module.d.ts +8 -0
  389. package/src/app/shared/material/badge/badge-icon.test.d.ts +4 -1
  390. package/src/app/shared/material/boolean/boolean.module.d.ts +17 -0
  391. package/src/app/shared/material/boolean/material.boolean.d.ts +7 -4
  392. package/src/app/shared/material/chips/chips.module.d.ts +19 -0
  393. package/src/app/shared/material/chips/material.chips.d.ts +11 -8
  394. package/src/app/shared/material/chips/testing/chips.test.d.ts +8 -5
  395. package/src/app/shared/material/datetime/datetime.module.d.ts +22 -0
  396. package/src/app/shared/material/datetime/material.date.d.ts +11 -9
  397. package/src/app/shared/material/datetime/material.dateshort.d.ts +10 -9
  398. package/src/app/shared/material/datetime/material.datetime.d.ts +13 -12
  399. package/src/app/shared/material/datetime/testing/mat-date-time.test.d.ts +11 -9
  400. package/src/app/shared/material/datetime/testing/mat-date.test.d.ts +11 -9
  401. package/src/app/shared/material/duration/duration.module.d.ts +16 -0
  402. package/src/app/shared/material/duration/material.duration.d.ts +8 -5
  403. package/src/app/shared/material/latlong/material.latlong.d.ts +8 -5
  404. package/src/app/shared/material/latlong/material.latlong.module.d.ts +17 -0
  405. package/src/app/shared/material/latlong/testing/latlong.test.d.ts +10 -7
  406. package/src/app/shared/material/material.module.d.ts +43 -0
  407. package/src/app/shared/material/material.testing.module.d.ts +19 -0
  408. package/src/app/shared/material/numpad/numpad.append-to-input.directive.d.ts +3 -0
  409. package/src/app/shared/material/numpad/numpad.component.d.ts +4 -1
  410. package/src/app/shared/material/numpad/numpad.container.d.ts +5 -2
  411. package/src/app/shared/material/numpad/numpad.content.d.ts +3 -0
  412. package/src/app/shared/material/numpad/numpad.directive.d.ts +4 -1
  413. package/src/app/shared/material/numpad/numpad.dom-service.d.ts +3 -0
  414. package/src/app/shared/material/numpad/numpad.model.d.ts +1 -1
  415. package/src/app/shared/material/numpad/numpad.module.d.ts +14 -0
  416. package/src/app/shared/material/numpad/testing/numpad.test.d.ts +7 -4
  417. package/src/app/shared/material/paginator/material.paginator-i18n.d.ts +3 -0
  418. package/src/app/shared/material/stepper/material.stepper-i18n.d.ts +3 -0
  419. package/src/app/shared/material/swipe/material.swipe.d.ts +6 -3
  420. package/src/app/shared/material/swipe/swipe.module.d.ts +13 -0
  421. package/src/app/shared/material/swipe/testing/swipe.test.d.ts +7 -4
  422. package/src/app/shared/pipes/arrays.pipe.d.ts +15 -0
  423. package/src/app/shared/pipes/colors.pipe.d.ts +9 -0
  424. package/src/app/shared/pipes/date-diff-duration.pipe.d.ts +4 -0
  425. package/src/app/shared/pipes/date-format.pipe.d.ts +4 -0
  426. package/src/app/shared/pipes/date-from-now.pipe.d.ts +4 -0
  427. package/src/app/shared/pipes/duration.pipe.d.ts +4 -0
  428. package/src/app/shared/pipes/file-size.pipe.d.ts +3 -0
  429. package/src/app/shared/pipes/form.pipes.d.ts +18 -5
  430. package/src/app/shared/pipes/highlight.pipe.d.ts +4 -0
  431. package/src/app/shared/pipes/latlong-format.pipe.d.ts +7 -0
  432. package/src/app/shared/pipes/maps.pipe.d.ts +10 -0
  433. package/src/app/shared/pipes/math.pipes.d.ts +10 -0
  434. package/src/app/shared/pipes/ng-init.pipe.d.ts +3 -0
  435. package/src/app/shared/pipes/number-format.pipe.d.ts +4 -0
  436. package/src/app/shared/pipes/pipes.module.d.ts +24 -0
  437. package/src/app/shared/pipes/property.pipes.d.ts +6 -0
  438. package/src/app/shared/pipes/string.pipes.d.ts +11 -0
  439. package/src/app/shared/pipes/translate-context.pipe.d.ts +7 -0
  440. package/src/app/shared/platforms.d.ts +1 -0
  441. package/src/app/shared/services/entity-service.class.d.ts +3 -0
  442. package/src/app/shared/services/memory-entity-service.class.d.ts +3 -0
  443. package/src/app/shared/services/progress-bar.service.d.ts +4 -1
  444. package/src/app/shared/services/storage/storage.service.d.ts +23 -0
  445. package/src/app/shared/services/storage/storage.utils.d.ts +19 -0
  446. package/src/app/shared/services/translate-context.service.d.ts +3 -0
  447. package/src/app/shared/services/validator-service.class.d.ts +2 -2
  448. package/src/app/shared/shared-routing.module.d.ts +7 -0
  449. package/src/app/shared/shared.module.d.ts +23 -0
  450. package/src/app/shared/shared.testing.module.d.ts +12 -0
  451. package/src/app/shared/testing/tests.page.d.ts +3 -0
  452. package/src/app/shared/toast/toast.testing.d.ts +3 -0
  453. package/src/app/shared/toast/toast.testing.module.d.ts +9 -0
  454. package/src/app/shared/toolbar/modal-toolbar.d.ts +5 -2
  455. package/src/app/shared/toolbar/toolbar.d.ts +9 -5
  456. package/src/app/shared/toolbar/toolbar.module.d.ts +15 -0
  457. package/src/app/shared/upload-file/testing/upload-file.testing.d.ts +4 -1
  458. package/src/app/shared/upload-file/testing/upload-file.testing.module.d.ts +9 -0
  459. package/src/app/shared/upload-file/upload-file-popover.component.d.ts +3 -0
  460. package/src/app/shared/upload-file/upload-file.component.d.ts +3 -0
  461. package/src/app/shared/validator/form-error-adapter.class.d.ts +3 -0
  462. package/src/app/shared/validator/validators.d.ts +9 -9
  463. package/src/app/social/job/job.module.d.ts +9 -0
  464. package/src/app/social/job/job.service.d.ts +3 -0
  465. package/src/app/social/job/progression/job-progression.component.d.ts +4 -1
  466. package/src/app/social/job/progression/job-progression.list.d.ts +3 -0
  467. package/src/app/social/job/testing/job-progression.testing.d.ts +3 -0
  468. package/src/app/social/job/testing/job-progression.testing.service.d.ts +3 -0
  469. package/src/app/social/job/testing/job.testing.module.d.ts +9 -0
  470. package/src/app/social/message/message.form.d.ts +5 -2
  471. package/src/app/social/message/message.modal.d.ts +5 -2
  472. package/src/app/social/message/message.module.d.ts +9 -0
  473. package/src/app/social/message/message.service.d.ts +3 -0
  474. package/src/app/social/social.module.d.ts +10 -0
  475. package/src/app/social/social.testing.module.d.ts +9 -0
  476. package/src/app/social/user-event/notification/user-event-notification.icon.d.ts +4 -1
  477. package/src/app/social/user-event/notification/user-event-notification.list.d.ts +7 -4
  478. package/src/app/social/user-event/testing/user-event.testing.d.ts +3 -0
  479. package/src/app/social/user-event/testing/user-event.testing.model.d.ts +1 -0
  480. package/src/app/social/user-event/testing/user-event.testing.module.d.ts +9 -0
  481. package/src/app/social/user-event/testing/user-event.testing.service.d.ts +5 -1
  482. package/src/app/social/user-event/user-event.model.d.ts +3 -2
  483. package/src/app/social/user-event/user-event.module.d.ts +10 -0
  484. package/src/app/social/user-event/user-event.service.d.ts +16 -11
  485. package/src/assets/audio/beep-notification.mp3 +0 -0
  486. package/src/assets/i18n/fr.json +9 -2
  487. package/src/environments/environment.class.d.ts +2 -0
  488. package/src/environments/environment.d.ts +1 -1
  489. package/src/theme/_icons.scss +1 -1
  490. package/src/theme/_material.globals.scss +29 -31
  491. package/src/theme/_material.scss +3 -2
  492. package/src/theme/_mixins.scss +4 -4
  493. package/src/theme/_ngx-components.scss +6 -0
  494. package/src/theme/_print.scss +24 -0
  495. package/bundles/sumaris-net.ngx-components.umd.js +0 -35297
  496. package/bundles/sumaris-net.ngx-components.umd.js.map +0 -1
  497. package/bundles/sumaris-net.ngx-components.umd.min.js +0 -25
  498. package/bundles/sumaris-net.ngx-components.umd.min.js.map +0 -1
  499. package/esm2015/public_api.js +0 -244
  500. package/esm2015/src/app/admin/admin-routing.module.js +0 -34
  501. package/esm2015/src/app/admin/admin.module.js +0 -34
  502. package/esm2015/src/app/admin/services/filter/person.filter.js +0 -59
  503. package/esm2015/src/app/admin/services/person.service.js +0 -175
  504. package/esm2015/src/app/admin/services/validator/person.validator.js +0 -37
  505. package/esm2015/src/app/admin/users/list/users.js +0 -216
  506. package/esm2015/src/app/core/about/modal-about.js +0 -63
  507. package/esm2015/src/app/core/account/account.js +0 -240
  508. package/esm2015/src/app/core/auth/form/form-auth.js +0 -134
  509. package/esm2015/src/app/core/auth/modal/modal-auth.js +0 -78
  510. package/esm2015/src/app/core/core.module.js +0 -127
  511. package/esm2015/src/app/core/core.testing.module.js +0 -51
  512. package/esm2015/src/app/core/form/editor.class.js +0 -632
  513. package/esm2015/src/app/core/form/entity-editor-modal.class.js +0 -421
  514. package/esm2015/src/app/core/form/entity-editor.class.js +0 -696
  515. package/esm2015/src/app/core/form/entity-metadata.component.js +0 -22
  516. package/esm2015/src/app/core/form/form-buttons-bar.component.js +0 -63
  517. package/esm2015/src/app/core/form/form.class.js +0 -338
  518. package/esm2015/src/app/core/form/form.utils.js +0 -264
  519. package/esm2015/src/app/core/form/list.form.js +0 -219
  520. package/esm2015/src/app/core/form/properties.form.js +0 -119
  521. package/esm2015/src/app/core/graphql/graphql.module.js +0 -18
  522. package/esm2015/src/app/core/graphql/graphql.service.js +0 -734
  523. package/esm2015/src/app/core/graphql/graphql.utils.js +0 -107
  524. package/esm2015/src/app/core/home/home.js +0 -265
  525. package/esm2015/src/app/core/icon/icon.component.js +0 -32
  526. package/esm2015/src/app/core/icon/icon.module.js +0 -26
  527. package/esm2015/src/app/core/install/install-upgrade-card.component.js +0 -358
  528. package/esm2015/src/app/core/menu/menu.component.js +0 -329
  529. package/esm2015/src/app/core/menu/menu.module.js +0 -28
  530. package/esm2015/src/app/core/offline/update-offline-mode-card.component.js +0 -26
  531. package/esm2015/src/app/core/peer/select-peer.modal.js +0 -134
  532. package/esm2015/src/app/core/register/confirm/confirm.js +0 -86
  533. package/esm2015/src/app/core/register/form/form-register.js +0 -172
  534. package/esm2015/src/app/core/register/modal/modal-register.js +0 -55
  535. package/esm2015/src/app/core/services/account.service.js +0 -1165
  536. package/esm2015/src/app/core/services/auth-guard.service.js +0 -77
  537. package/esm2015/src/app/core/services/base-entity-service.class.js +0 -455
  538. package/esm2015/src/app/core/services/base-graphql-service.class.js +0 -221
  539. package/esm2015/src/app/core/services/config.service.js +0 -385
  540. package/esm2015/src/app/core/services/local-settings.service.js +0 -460
  541. package/esm2015/src/app/core/services/model/account.model.js +0 -50
  542. package/esm2015/src/app/core/services/model/config.model.js +0 -89
  543. package/esm2015/src/app/core/services/model/department.model.js +0 -30
  544. package/esm2015/src/app/core/services/model/entity.decorators.js +0 -104
  545. package/esm2015/src/app/core/services/model/entity.model.js +0 -245
  546. package/esm2015/src/app/core/services/model/peer.model.js +0 -68
  547. package/esm2015/src/app/core/services/model/person.model.js +0 -83
  548. package/esm2015/src/app/core/services/model/referential.model.js +0 -147
  549. package/esm2015/src/app/core/services/model/settings.model.js +0 -75
  550. package/esm2015/src/app/core/services/network.service.js +0 -639
  551. package/esm2015/src/app/core/services/network.utils.js +0 -19
  552. package/esm2015/src/app/core/services/pipes/account.pipes.js +0 -28
  553. package/esm2015/src/app/core/services/pipes/department-to-string.pipe.js +0 -18
  554. package/esm2015/src/app/core/services/pipes/person-to-string.pipe.js +0 -18
  555. package/esm2015/src/app/core/services/pipes/usage-mode.pipes.js +0 -27
  556. package/esm2015/src/app/core/services/platform.service.js +0 -549
  557. package/esm2015/src/app/core/services/storage/entities-storage.service.js +0 -452
  558. package/esm2015/src/app/core/services/storage/entity-store.class.js +0 -461
  559. package/esm2015/src/app/core/services/testing/referential-filter.model.js +0 -23
  560. package/esm2015/src/app/core/services/testing/referential.validator.js +0 -44
  561. package/esm2015/src/app/core/services/validator/account.validator.js +0 -55
  562. package/esm2015/src/app/core/services/validator/base.validator.class.js +0 -48
  563. package/esm2015/src/app/core/services/validator/local-settings.validator.js +0 -72
  564. package/esm2015/src/app/core/services/validator/user-settings.validator.js +0 -30
  565. package/esm2015/src/app/core/settings/settings.page.js +0 -305
  566. package/esm2015/src/app/core/table/actions-column.component.js +0 -74
  567. package/esm2015/src/app/core/table/entities-table-datasource.class.js +0 -389
  568. package/esm2015/src/app/core/table/memory-table.class.js +0 -59
  569. package/esm2015/src/app/core/table/table-select-columns.component.js +0 -44
  570. package/esm2015/src/app/core/table/table.class.js +0 -1651
  571. package/esm2015/src/app/core/table/testing/table.testing.js +0 -241
  572. package/esm2015/src/app/core/table/testing/table.testing.module.js +0 -26
  573. package/esm2015/src/app/core/text-popover/testing/text-popover.testing.js +0 -37
  574. package/esm2015/src/app/core/text-popover/testing/text-popover.testing.module.js +0 -33
  575. package/esm2015/src/app/core/text-popover/text-form.component.js +0 -72
  576. package/esm2015/src/app/core/text-popover/text-popover.component.js +0 -90
  577. package/esm2015/src/app/shared/alerts.js +0 -251
  578. package/esm2015/src/app/shared/audio/audio.js +0 -178
  579. package/esm2015/src/app/shared/dates.js +0 -134
  580. package/esm2015/src/app/shared/directives/autofocus.directive.js +0 -90
  581. package/esm2015/src/app/shared/directives/autotitle.directive.js +0 -27
  582. package/esm2015/src/app/shared/directives/directives.module.js +0 -30
  583. package/esm2015/src/app/shared/directives/drag-and-drop.directive.js +0 -43
  584. package/esm2015/src/app/shared/directives/ng-var.directive.js +0 -32
  585. package/esm2015/src/app/shared/directives/resizable/resizable.component.js +0 -54
  586. package/esm2015/src/app/shared/directives/resizable/resizable.directive.js +0 -34
  587. package/esm2015/src/app/shared/directives/resizable/resizable.module.js +0 -12
  588. package/esm2015/src/app/shared/events.js +0 -61
  589. package/esm2015/src/app/shared/file/csv.utils.js +0 -70
  590. package/esm2015/src/app/shared/file/file.service.js +0 -121
  591. package/esm2015/src/app/shared/file/file.utils.js +0 -116
  592. package/esm2015/src/app/shared/file/images.utils.js +0 -166
  593. package/esm2015/src/app/shared/form/field.component.js +0 -206
  594. package/esm2015/src/app/shared/form/loading-spinner.js +0 -24
  595. package/esm2015/src/app/shared/forms.js +0 -339
  596. package/esm2015/src/app/shared/functions.js +0 -418
  597. package/esm2015/src/app/shared/gesture/hammer.utils.js +0 -2
  598. package/esm2015/src/app/shared/graph/graph-colors.js +0 -256
  599. package/esm2015/src/app/shared/guard/component-dirty.guard.js +0 -61
  600. package/esm2015/src/app/shared/help/help.modal.js +0 -56
  601. package/esm2015/src/app/shared/hotkeys/dialog/hotkeys-dialog.component.js +0 -20
  602. package/esm2015/src/app/shared/hotkeys/hotkeys.service.js +0 -91
  603. package/esm2015/src/app/shared/hotkeys/shared-hotkeys.module.js +0 -29
  604. package/esm2015/src/app/shared/http/http.utils.js +0 -57
  605. package/esm2015/src/app/shared/material/autocomplete/material.autocomplete.js +0 -825
  606. package/esm2015/src/app/shared/material/autocomplete/material.autocomplete.module.js +0 -46
  607. package/esm2015/src/app/shared/material/autocomplete/testing/autocomplete.test.js +0 -200
  608. package/esm2015/src/app/shared/material/badge/badge-icon.directive.js +0 -135
  609. package/esm2015/src/app/shared/material/badge/badge-icon.module.js +0 -23
  610. package/esm2015/src/app/shared/material/badge/badge-icon.test.js +0 -17
  611. package/esm2015/src/app/shared/material/boolean/boolean.module.js +0 -41
  612. package/esm2015/src/app/shared/material/boolean/material.boolean.js +0 -223
  613. package/esm2015/src/app/shared/material/chips/chips.module.js +0 -45
  614. package/esm2015/src/app/shared/material/chips/material.chips.js +0 -636
  615. package/esm2015/src/app/shared/material/chips/testing/chips.test.js +0 -138
  616. package/esm2015/src/app/shared/material/datetime/datetime.module.js +0 -54
  617. package/esm2015/src/app/shared/material/datetime/material.date.js +0 -375
  618. package/esm2015/src/app/shared/material/datetime/material.dateshort.js +0 -316
  619. package/esm2015/src/app/shared/material/datetime/material.datetime.js +0 -398
  620. package/esm2015/src/app/shared/material/datetime/testing/mat-date-time.test.js +0 -110
  621. package/esm2015/src/app/shared/material/datetime/testing/mat-date.test.js +0 -108
  622. package/esm2015/src/app/shared/material/duration/duration.module.js +0 -40
  623. package/esm2015/src/app/shared/material/duration/material.duration.js +0 -246
  624. package/esm2015/src/app/shared/material/latlong/latlong.utils.js +0 -249
  625. package/esm2015/src/app/shared/material/latlong/material.latlong.js +0 -350
  626. package/esm2015/src/app/shared/material/latlong/material.latlong.module.js +0 -41
  627. package/esm2015/src/app/shared/material/latlong/testing/latlong.test.js +0 -70
  628. package/esm2015/src/app/shared/material/material.module.js +0 -93
  629. package/esm2015/src/app/shared/material/numpad/numpad.append-to-input.directive.js +0 -96
  630. package/esm2015/src/app/shared/material/numpad/numpad.component.js +0 -73
  631. package/esm2015/src/app/shared/material/numpad/numpad.container.js +0 -149
  632. package/esm2015/src/app/shared/material/numpad/numpad.content.js +0 -14
  633. package/esm2015/src/app/shared/material/numpad/numpad.directive.js +0 -148
  634. package/esm2015/src/app/shared/material/numpad/numpad.dom-service.js +0 -37
  635. package/esm2015/src/app/shared/material/numpad/numpad.module.js +0 -39
  636. package/esm2015/src/app/shared/material/numpad/testing/numpad.test.js +0 -44
  637. package/esm2015/src/app/shared/material/paginator/material.paginator-i18n.js +0 -44
  638. package/esm2015/src/app/shared/material/stepper/material.stepper-i18n.js +0 -24
  639. package/esm2015/src/app/shared/material/swipe/material.swipe.js +0 -308
  640. package/esm2015/src/app/shared/material/swipe/swipe.module.js +0 -33
  641. package/esm2015/src/app/shared/material/swipe/testing/swipe.test.js +0 -68
  642. package/esm2015/src/app/shared/observables.js +0 -99
  643. package/esm2015/src/app/shared/pipes/arrays.pipe.js +0 -92
  644. package/esm2015/src/app/shared/pipes/date-diff-duration.pipe.js +0 -50
  645. package/esm2015/src/app/shared/pipes/date-format.pipe.js +0 -43
  646. package/esm2015/src/app/shared/pipes/file-size.pipe.js +0 -58
  647. package/esm2015/src/app/shared/pipes/form.pipes.js +0 -177
  648. package/esm2015/src/app/shared/pipes/highlight.pipe.js +0 -43
  649. package/esm2015/src/app/shared/pipes/latlong-format.pipe.js +0 -36
  650. package/esm2015/src/app/shared/pipes/maps.pipe.js +0 -48
  651. package/esm2015/src/app/shared/pipes/math.pipes.js +0 -44
  652. package/esm2015/src/app/shared/pipes/ng-init.pipe.js +0 -18
  653. package/esm2015/src/app/shared/pipes/pipes.module.js +0 -115
  654. package/esm2015/src/app/shared/pipes/property.pipes.js +0 -98
  655. package/esm2015/src/app/shared/pipes/string.pipes.js +0 -53
  656. package/esm2015/src/app/shared/pipes/translate-context.pipe.js +0 -36
  657. package/esm2015/src/app/shared/platforms.js +0 -45
  658. package/esm2015/src/app/shared/services/entity-service.class.js +0 -17
  659. package/esm2015/src/app/shared/services/job.utils.js +0 -96
  660. package/esm2015/src/app/shared/services/memory-entity-service.class.js +0 -260
  661. package/esm2015/src/app/shared/services/progress-bar.service.js +0 -30
  662. package/esm2015/src/app/shared/services/startable-service.class.js +0 -98
  663. package/esm2015/src/app/shared/services/storage.utils.js +0 -41
  664. package/esm2015/src/app/shared/services/translate-context.service.js +0 -83
  665. package/esm2015/src/app/shared/services/validator-service.class.js +0 -2
  666. package/esm2015/src/app/shared/services.js +0 -61
  667. package/esm2015/src/app/shared/shared-routing.module.js +0 -54
  668. package/esm2015/src/app/shared/shared.module.js +0 -135
  669. package/esm2015/src/app/shared/shared.testing.module.js +0 -33
  670. package/esm2015/src/app/shared/testing/tests.page.js +0 -34
  671. package/esm2015/src/app/shared/toast/toast.testing.js +0 -39
  672. package/esm2015/src/app/shared/toast/toast.testing.module.js +0 -33
  673. package/esm2015/src/app/shared/toast/toasts.js +0 -119
  674. package/esm2015/src/app/shared/toolbar/modal-toolbar.js +0 -53
  675. package/esm2015/src/app/shared/toolbar/toolbar.js +0 -213
  676. package/esm2015/src/app/shared/upload-file/testing/upload-file.testing.js +0 -59
  677. package/esm2015/src/app/shared/upload-file/testing/upload-file.testing.module.js +0 -33
  678. package/esm2015/src/app/shared/upload-file/upload-file-popover.component.js +0 -98
  679. package/esm2015/src/app/shared/upload-file/upload-file.component.js +0 -202
  680. package/esm2015/src/app/shared/upload-file/upload-file.model.js +0 -20
  681. package/esm2015/src/app/shared/validator/form-error-adapter.class.js +0 -99
  682. package/esm2015/src/app/shared/validator/validators.js +0 -537
  683. package/esm2015/src/app/social/job/job.model.js +0 -26
  684. package/esm2015/src/app/social/job/job.module.js +0 -25
  685. package/esm2015/src/app/social/job/job.service.js +0 -54
  686. package/esm2015/src/app/social/job/progression/job-progression.component.js +0 -200
  687. package/esm2015/src/app/social/job/progression/job-progression.list.js +0 -20
  688. package/esm2015/src/app/social/job/testing/job-progression.testing.js +0 -48
  689. package/esm2015/src/app/social/job/testing/job-progression.testing.service.js +0 -30
  690. package/esm2015/src/app/social/job/testing/job.testing.module.js +0 -25
  691. package/esm2015/src/app/social/message/message.form.js +0 -73
  692. package/esm2015/src/app/social/message/message.modal.js +0 -96
  693. package/esm2015/src/app/social/message/message.model.js +0 -65
  694. package/esm2015/src/app/social/message/message.module.js +0 -25
  695. package/esm2015/src/app/social/message/message.service.js +0 -87
  696. package/esm2015/src/app/social/social.module.js +0 -28
  697. package/esm2015/src/app/social/social.testing.module.js +0 -39
  698. package/esm2015/src/app/social/user-event/notification/user-event-notification.icon.js +0 -95
  699. package/esm2015/src/app/social/user-event/notification/user-event-notification.list.js +0 -203
  700. package/esm2015/src/app/social/user-event/testing/user-event.testing.js +0 -230
  701. package/esm2015/src/app/social/user-event/testing/user-event.testing.model.js +0 -103
  702. package/esm2015/src/app/social/user-event/testing/user-event.testing.module.js +0 -25
  703. package/esm2015/src/app/social/user-event/testing/user-event.testing.service.js +0 -117
  704. package/esm2015/src/app/social/user-event/user-event.model.js +0 -2
  705. package/esm2015/src/app/social/user-event/user-event.module.js +0 -27
  706. package/esm2015/src/app/social/user-event/user-event.service.js +0 -509
  707. package/esm2015/src/environments/environment.class.js +0 -5
  708. package/esm2015/src/environments/environment.js +0 -81
  709. package/esm2015/sumaris-net.ngx-components.js +0 -21
  710. package/fesm2015/sumaris-net.ngx-components.js +0 -29932
  711. package/fesm2015/sumaris-net.ngx-components.js.map +0 -1
  712. package/src/app/shared/services/storage.utils.d.ts +0 -13
  713. package/sumaris-net.ngx-components.d.ts +0 -20
  714. package/sumaris-net.ngx-components.metadata.json +0 -1
@@ -1,46 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { MatCommonModule } from '@angular/material/core';
3
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
4
- import { MatFormFieldModule } from '@angular/material/form-field';
5
- import { MatInputModule } from '@angular/material/input';
6
- import { MatIconModule } from '@angular/material/icon';
7
- import { MatButtonModule } from '@angular/material/button';
8
- import { MatSelectModule } from '@angular/material/select';
9
- import { MatAutocompleteField } from './material.autocomplete';
10
- import { TranslateModule } from '@ngx-translate/core';
11
- import { CommonModule } from '@angular/common';
12
- import { IonicModule } from '@ionic/angular';
13
- import { SharedPipesModule } from '../../pipes/pipes.module';
14
- import { ReactiveFormsModule } from '@angular/forms';
15
- import { SharedDirectivesModule } from '../../directives/directives.module';
16
- import { ScrollingModule } from '@angular/cdk/scrolling';
17
- export class SharedMatAutocompleteModule {
18
- }
19
- SharedMatAutocompleteModule.decorators = [
20
- { type: NgModule, args: [{
21
- imports: [
22
- CommonModule,
23
- IonicModule,
24
- ScrollingModule,
25
- ReactiveFormsModule,
26
- SharedPipesModule,
27
- SharedDirectivesModule,
28
- MatCommonModule,
29
- MatAutocompleteModule,
30
- MatFormFieldModule,
31
- MatInputModule,
32
- MatIconModule,
33
- MatButtonModule,
34
- MatSelectModule,
35
- TranslateModule.forChild()
36
- ],
37
- exports: [
38
- MatAutocompleteModule,
39
- MatAutocompleteField
40
- ],
41
- declarations: [
42
- MatAutocompleteField
43
- ]
44
- },] }
45
- ];
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwuYXV0b2NvbXBsZXRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS9tYXRlcmlhbC5hdXRvY29tcGxldGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUEyQnZELE1BQU0sT0FBTywyQkFBMkI7OztZQXpCdkMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFdBQVc7b0JBQ1gsZUFBZTtvQkFDZixtQkFBbUI7b0JBQ25CLGlCQUFpQjtvQkFDakIsc0JBQXNCO29CQUN0QixlQUFlO29CQUNmLHFCQUFxQjtvQkFDckIsa0JBQWtCO29CQUNsQixjQUFjO29CQUNkLGFBQWE7b0JBQ2IsZUFBZTtvQkFDZixlQUFlO29CQUNmLGVBQWUsQ0FBQyxRQUFRLEVBQUU7aUJBQzNCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxxQkFBcUI7b0JBQ3JCLG9CQUFvQjtpQkFDckI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLG9CQUFvQjtpQkFDckI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge01hdFNlbGVjdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7TWF0QXV0b2NvbXBsZXRlRmllbGR9IGZyb20gJy4vbWF0ZXJpYWwuYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtJb25pY01vZHVsZX0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHtTaGFyZWRQaXBlc01vZHVsZX0gZnJvbSAnLi4vLi4vcGlwZXMvcGlwZXMubW9kdWxlJztcbmltcG9ydCB7UmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtTaGFyZWREaXJlY3RpdmVzTW9kdWxlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmltcG9ydCB7U2Nyb2xsaW5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJb25pY01vZHVsZSxcbiAgICBTY3JvbGxpbmdNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBTaGFyZWRQaXBlc01vZHVsZSxcbiAgICBTaGFyZWREaXJlY3RpdmVzTW9kdWxlLFxuICAgIE1hdENvbW1vbk1vZHVsZSxcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIE1hdEF1dG9jb21wbGV0ZUZpZWxkXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1hdEF1dG9jb21wbGV0ZUZpZWxkXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2hhcmVkTWF0QXV0b2NvbXBsZXRlTW9kdWxlIHtcbn1cblxuIl19
@@ -1,200 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { Component, ViewChild } from '@angular/core';
3
- import { FormBuilder } from '@angular/forms';
4
- import { SharedFormArrayValidators, SharedValidators } from '../../../validator/validators';
5
- import { MatAutocompleteConfigHolder } from '../material.autocomplete';
6
- import { isNil, isNotNil, sleep } from '../../../functions';
7
- import { BehaviorSubject } from 'rxjs';
8
- import { suggestFromArray } from '../../../services';
9
- class EntityTestClass {
10
- }
11
- const FAKE_ENTITIES = [
12
- { id: 1, label: 'AAA', name: 'Item A', description: 'Very long description A', comments: 'Very very long comments... again for A' },
13
- { id: 2, label: 'BBB', name: 'Item B', description: 'Very long description B', comments: 'Very very long comments... again for B' },
14
- { id: 3, label: 'CCC', name: 'Item C', description: 'Very long description C', comments: 'Very very long comments... again for C' }
15
- ];
16
- function deepCopy(values, size) {
17
- if (isNil(size)) {
18
- return (values || FAKE_ENTITIES).map(entity => Object.assign({}, entity));
19
- }
20
- let result = [];
21
- let i = 1;
22
- while (result.length < size) {
23
- result = result.concat((values || FAKE_ENTITIES).map(entity => {
24
- const name = entity.name + ' #' + i;
25
- return Object.assign(Object.assign({}, entity), { id: i++, name });
26
- }));
27
- }
28
- return result.slice(0, size);
29
- }
30
- export class AutocompleteTestPage {
31
- constructor(formBuilder) {
32
- this.formBuilder = formBuilder;
33
- this._items = deepCopy(FAKE_ENTITIES, 100);
34
- this._$items = new BehaviorSubject(undefined);
35
- this.autocompleteFields = new MatAutocompleteConfigHolder();
36
- this.memoryHide = false;
37
- this.memoryMobile = true;
38
- this.memoryAutocompleteFieldName = 'entity-$items';
39
- this.mode = 'mobile';
40
- this.form = formBuilder.group({
41
- entity: [null, SharedValidators.entity],
42
- missingEntity: [null, SharedValidators.entity],
43
- disableEntity: [null, SharedValidators.entity],
44
- entities: [null, SharedFormArrayValidators.requiredArrayMinLength(1)],
45
- farEntity: [null, SharedValidators.entity]
46
- });
47
- this.form.get('disableEntity').disable();
48
- }
49
- ngOnInit() {
50
- // From suggest
51
- this.autocompleteFields.add('entity-suggestFn', {
52
- suggestFn: (value, filter) => this.suggest(value, filter),
53
- attributes: ['label', 'name'],
54
- displayWith: this.entityToString
55
- });
56
- // From items array
57
- this.autocompleteFields.add('entity-items', {
58
- items: this._items.slice(),
59
- attributes: ['label', 'name'],
60
- displayWith: this.entityToString
61
- });
62
- // From $items observable
63
- this.autocompleteFields.add('entity-$items', {
64
- items: this._$items,
65
- attributes: ['label', 'name'],
66
- displayWith: this.entityToString
67
- });
68
- // From $items with filter
69
- this.autocompleteFields.add('entity-items-filter', {
70
- service: {
71
- suggest: (value, filter) => this.suggest(value, filter)
72
- },
73
- attributes: ['label', 'name'],
74
- displayWith: this.entityToString
75
- });
76
- // From items
77
- this.autocompleteFields.add('entity-items-large', {
78
- items: FAKE_ENTITIES.slice(),
79
- attributes: ['label', 'name', 'description', 'comments'],
80
- displayWith: this.entityToString
81
- });
82
- // Far entity, in the list
83
- this.autocompleteFields.add('entity-far', {
84
- suggestFn: (value, filter) => this.suggest(value, filter),
85
- attributes: ['label', 'name'],
86
- displayWith: this.entityToString
87
- });
88
- // For multiple value
89
- this.autocompleteFields.add('entities-items-filter', {
90
- service: {
91
- suggest: (value, filter) => this.suggest(value, filter)
92
- },
93
- attributes: ['label', 'name'],
94
- multiple: true
95
- });
96
- }
97
- ngAfterViewInit() {
98
- if (this.farEntityField) {
99
- setTimeout(() => {
100
- this.farEntityField.suggestLengthThreshold = 2;
101
- this.farEntityField.reloadItems();
102
- }, 2000);
103
- }
104
- setTimeout(() => this.loadData(), 1000);
105
- }
106
- // Load the form with data
107
- loadData() {
108
- return __awaiter(this, void 0, void 0, function* () {
109
- const data = {
110
- entity: deepCopy(FAKE_ENTITIES)[0],
111
- farEntity: deepCopy(FAKE_ENTITIES)[2],
112
- // This item is NOT in the items list => i should be displayed anyway
113
- missingEntity: {
114
- id: -1, label: '??', name: 'Missing item'
115
- },
116
- disableEntity: deepCopy(FAKE_ENTITIES)[2],
117
- entities: deepCopy(FAKE_ENTITIES)
118
- };
119
- this.form.setValue(data);
120
- // Load observables
121
- setTimeout(() => this.loadItems(), 1000);
122
- });
123
- }
124
- loadItems() {
125
- return __awaiter(this, void 0, void 0, function* () {
126
- this._$items.next(this._items.slice());
127
- });
128
- }
129
- entityToString(item) {
130
- return [item && item.label || undefined, item && item.name || undefined].filter(isNotNil).join(' - ');
131
- }
132
- entitiesToString(items) {
133
- return (items || []).map(this.entityToString).join(', ');
134
- }
135
- suggest(value, filter) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- filter = Object.assign({ offset: 0, size: 30 }, filter);
138
- const res = suggestFromArray(this._items, value, Object.assign(Object.assign({}, filter), { searchAttributes: ['label', 'name'] }));
139
- // Simulate a size = 30
140
- const total = res.total || res.data.length;
141
- const nextOffset = filter.offset + res.data.length;
142
- if (nextOffset < total) {
143
- filter = Object.assign(Object.assign({}, filter), { offset: nextOffset });
144
- return {
145
- total,
146
- data: res.data,
147
- fetchMore: (variables) => __awaiter(this, void 0, void 0, function* () {
148
- yield sleep(1000); // Simulate access to server
149
- return this.suggest(value, Object.assign(Object.assign({}, filter), variables));
150
- })
151
- };
152
- }
153
- return res;
154
- });
155
- }
156
- doSubmit(event) {
157
- console.debug('Validate form: ', this.form.value);
158
- }
159
- equals(o1, o2) {
160
- return o1 && o2 && o1.id === o2.id;
161
- }
162
- toggleMode(value) {
163
- if (this.mode !== value) {
164
- this.mode = value;
165
- this.stopMemoryTimer();
166
- }
167
- }
168
- startMemoryTimer() {
169
- this.memoryTimer = setInterval(() => {
170
- this.memoryHide = !this.memoryHide;
171
- }, 50);
172
- }
173
- stopMemoryTimer() {
174
- clearInterval(this.memoryTimer);
175
- this.memoryTimer = null;
176
- this.memoryHide = false;
177
- }
178
- updateFilter(autocompleteField, fieldName) {
179
- const filter = this.autocompleteFields.get(fieldName).filter || {};
180
- filter.searchAttribute = (!filter || filter.searchAttribute !== 'name') ? 'name' : 'label';
181
- autocompleteField.reloadItems();
182
- }
183
- /* -- protected methods -- */
184
- stringify(value) {
185
- return JSON.stringify(value);
186
- }
187
- }
188
- AutocompleteTestPage.decorators = [
189
- { type: Component, args: [{
190
- selector: 'app-autocomplete-test',
191
- template: "<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Autocomplete field test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n\n <!-- Tab nav - mobile/desktop mode -->\n <nav mat-tab-nav-bar>\n <a mat-tab-link\n [active]=\"mode==='mobile'\"\n (click)=\"toggleMode('mobile')\">\n <mat-label>Mobile</mat-label>\n </a>\n <a mat-tab-link [active]=\"mode==='desktop'\"\n (click)=\"toggleMode('desktop')\">\n <mat-label>Desktop</mat-label>\n </a>\n <a mat-tab-link [active]=\"mode==='memory'\"\n (click)=\"toggleMode('memory')\">\n <mat-label>Memory leak debug</mat-label>\n </a>\n <a mat-tab-link\n [active]=\"mode==='temp'\"\n (click)=\"toggleMode('temp')\">\n <mat-label>Temporary</mat-label>\n </a>\n </nav>\n\n <form class=\"form-container\" [formGroup]=\"form\" (ngSubmit)=\"doSubmit($event)\">\n\n <!--<ion-grid *ngIf=\"mode === 'temp'\">\n <ion-row>\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Items is an Observable\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>items: Observable&lt;any[]&gt;</pre></small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [logPrefix]=\"'[combo-desktop-2]'\"\n [compareWith]=\"compareWithFn\"\n [mobile]=\"false\"\n ></mat-autocomplete-field>\n </ion-card-content>\n\n </ion-card>\n </ion-col>\n </ion-row>\n\n\n </ion-grid>-->\n\n\n <ion-grid *ngIf=\"mode === 'memory'\">\n\n <!-- debugging memory leak -->\n <ion-row>\n <ion-col>\n <ion-text><h4>Debug memory leak</h4></ion-text>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col size=\"2\">\n <mat-form-field floatLabel=\"always\">\n <input matInput type=\"text\" hidden placeholder=\"Items type\">\n <mat-select (selectionChange)=\"memoryAutocompleteFieldName=$event.value\" [value]=\"memoryAutocompleteFieldName\">\n <mat-option value=\"entity-$items\">Observable</mat-option>\n <mat-option value=\"entity-suggestFn\">Suggest function</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n <ion-col size=\"1\" class=\"ion-no-padding\">\n <mat-form-field floatLabel=\"always\">\n <input matInput type=\"text\" hidden placeholder=\"Mobile ?\">\n <mat-checkbox (change)=\"memoryMobile=$event.checked\" [checked]=\"memoryMobile\">\n </mat-checkbox>\n </mat-form-field>\n </ion-col>\n\n <ion-col size=\"2\">\n <ion-button *ngIf=\"!memoryTimer\" (click)=\"startMemoryTimer()\" color=\"tertiary\">Start</ion-button>\n <ion-button *ngIf=\"memoryTimer\" (click)=\"stopMemoryTimer()\" color=\"tertiary\">Stop</ion-button>\n </ion-col>\n </ion-row>\n\n <ion-row>\n <ion-col>\n <mat-autocomplete-field formControlName=\"entity\"\n *ngIf=\"!memoryHide && memoryAutocompleteFieldName\"\n [config]=\"autocompleteFields.get(memoryAutocompleteFieldName)\"\n [mobile]=\"memoryMobile\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-memory-leak]'\">\n </mat-autocomplete-field>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n <!-- Mobile mode -->\n <ion-grid *ngIf=\"mode === 'mobile'\">\n\n <ion-row>\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Entity far in the list (not in first page)\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre style=\"white-space: normal !important;\">value: {{stringify(form.controls.farEntity.value)}}</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"farEntity\" #farEntityField\n [config]=\"autocompleteFields.get('entity-far')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-far]'\"\n [debug]=\"true\"\n [required]=\"true\"\n [clearable]=\"true\"\n placeholder=\"Far entity (in the list)\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Suggest() function\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>mobile: true, suggestFn: (searchText, filter) =&gt; any[]</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-suggestFn')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-1]'\"\n [required]=\"true\"\n placeholder=\"Suggest field\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Items is an Observable\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>mobile: true, items: Observable&lt;any[]&gt;</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-observable]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Control value if missing in items\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>mobile: true, items: Observable&lt;any[]&gt;</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"missingEntity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [clearable]=\"true\"\n [logPrefix]=\"'[combo-mobile-2]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n search with a suggestLengthThreshold\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>suggest: (value, filter) => LoadResult&lt;any&gt;\nsuggestLengthThreshold: '3'</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-filter')\"\n [placeholder]=\"'Entity'\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n suggestLengthThreshold=\"3\"\n [logPrefix]=\"'[combo-mobile-suggestLengthThreshold]'\"\n required\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Multiple value\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>multiple: true</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entities\"\n [config]=\"autocompleteFields.get('entities-items-filter')\"\n [placeholder]=\"'Multiple'\"\n mobile=\"true\"\n multiple=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-multiple]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Disabled control\n </ion-label>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"disableEntity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-2]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n </ion-row>\n\n <ion-row>\n <ion-col size=\"9\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Change filter\n </ion-label>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre></pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <ion-grid class=\"ion-no-padding\">\n <ion-row>\n <ion-col>\n <ion-button (click)=\"updateFilter(filterChangeField, 'entity-items-filter')\">Filter on: {{autocompleteFields.get('entity-items-filter').filter?.searchAttribute }}</ion-button>\n </ion-col>\n <ion-col>\n <mat-autocomplete-field formControlName=\"entity\" #filterChangeField\n [config]=\"autocompleteFields.get('entity-items-filter')\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-filter]'\"\n ></mat-autocomplete-field>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col size=\"3\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Large combo\n </ion-label>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>class=\"min-width-large\"</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-large')\"\n [mobile]=\"true\"\n class=\"min-width-large\"\n panelWidth=\"400px\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-large]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col size=\"6\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Readonly toggle\n </ion-text>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <ion-grid>\n <ion-row>\n <ion-col size=\"3\">\n <mat-checkbox (change)=\"readonlyField.readonly=$event.checked\" [checked]=\"readonlyField.readonly\">\n Readonly ?\n </mat-checkbox>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <mat-autocomplete-field #readonlyField formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items')\"\n [placeholder]=\"'Entity'\"\n [mobile]=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-mobile-readonly]'\"\n [readonly]=\"true\"\n [clearable]=\"!readonlyField.readonly\">\n </mat-autocomplete-field>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Fullscreen\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>class: 'mat-autocomplete-panel-full-size'</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"true\"\n [class]=\"'mat-autocomplete-panel-full-size'\"\n [matAutocompletePosition]=\"'above'\"\n [logPrefix]=\"'[combo-mobile-full-size]'\"\n [debug]=\"true\"\n [showAllOnFocus]=\"true\"\n [showPanelOnFocus]=\"true\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n <!-- Desktop mode -->\n <ion-grid *ngIf=\"mode === 'desktop'\">\n <ion-row>\n <ion-col>\n <ion-text><h4>Desktop mode</h4></ion-text>\n </ion-col>\n </ion-row>\n <ion-row>\n\n\n <ion-col size=\"6\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n items from suggest function\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>suggest: (value, filter) => LoadResult&lt;any&gt;</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-filter')\"\n [placeholder]=\"'Entity'\"\n [mobile]=\"false\"\n [equals]=\"equals\"\n [clearable]=\"true\"\n [logPrefix]=\"'[combo-desktop-suggest]'\"\n [debug]=\"true\">\n </mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col size=\"6\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n search with a suggestLengthThreshold\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>suggest: (value, filter) => LoadResult&lt;any&gt;\nsuggestLengthThreshold: '3'</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-filter')\"\n [placeholder]=\"'Entity'\"\n [mobile]=\"false\"\n [equals]=\"equals\"\n suggestLengthThreshold=\"3\"\n [logPrefix]=\"'[combo-desktop-suggestLengthThreshold]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col size=\"6\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Items is an array\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>items: [], value: {{stringify(form.controls.entity.value)}}</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items')\"\n [logPrefix]=\"'[combo-desktop-array-1]'\"\n [equals]=\"equals\"\n [mobile]=\"false\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Items is an Observable\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>items: Observable&lt;any[]&gt;</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [logPrefix]=\"'[combo-desktop-2]'\"\n [equals]=\"equals\"\n [mobile]=\"false\"\n ></mat-autocomplete-field>\n </ion-card-content>\n\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Multiple value\n </ion-text>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small><pre>multiple: true</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entities\"\n [config]=\"autocompleteFields.get('entities-items-filter')\"\n [placeholder]=\"'Multiple'\"\n mobile=\"false\"\n multiple=\"true\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-multiple]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Control value if missing in items\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>items: Observable&lt;any[]&gt;</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"missingEntity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-missing]'\"\n [mobile]=\"false\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Full size panel\n </ion-label>\n </ion-card-title>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>class: 'mat-autocomplete-panel-full-size'</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"false\"\n [class]=\"'mat-autocomplete-panel-full-size'\"\n [matAutocompletePosition]=\"'above'\"\n [logPrefix]=\"'[combo-desktop-full-size]'\"\n [debug]=\"true\"\n [showAllOnFocus]=\"true\"\n [showPanelOnFocus]=\"true\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Disabled control\n </ion-label>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"disableEntity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"false\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-disable]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col>\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Readonly control\n </ion-label>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-$items')\"\n [mobile]=\"false\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-readonly]'\"\n [readonly]=\"true\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n </ion-row>\n\n <ion-row>\n <ion-col size=\"9\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Full size combo\n </ion-label>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>class=\"mat-autocomplete-panel-full-size\"</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-large')\"\n [mobile]=\"false\"\n class=\"mat-autocomplete-panel-full-size\"\n panelWidth=\"100vw\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-full-size]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col size=\"3\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-label color=\"primary\">\n Large combo\n </ion-label>\n <ion-card-subtitle>\n <ion-text color=\"medium\">\n <small>\n <pre>panelWidth: string</pre>\n </small>\n </ion-text>\n </ion-card-subtitle>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <mat-autocomplete-field formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-large')\"\n [mobile]=\"false\"\n panelWidth=\"400px\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-large]'\"\n ></mat-autocomplete-field>\n </ion-card-content>\n </ion-card>\n </ion-col>\n\n <ion-col size=\"6\">\n <ion-card>\n <ion-card-header>\n <ion-card-title>\n <ion-text color=\"primary\">\n Readonly toggle\n </ion-text>\n </ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <ion-grid>\n <ion-row>\n <ion-col size=\"3\">\n <mat-checkbox (change)=\"readonlyField.readonly=$event.checked\" [checked]=\"readonlyField.readonly\">\n Readonly ?\n </mat-checkbox>\n </ion-col>\n <ion-col size=\"3\">\n <mat-checkbox #showIcons [checked]=\"false\">\n Icons ?\n </mat-checkbox>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <mat-autocomplete-field #readonlyField formControlName=\"entity\"\n [config]=\"autocompleteFields.get('entity-items-filter')\"\n [placeholder]=\"'Entity'\"\n [mobile]=\"false\"\n [equals]=\"equals\"\n [logPrefix]=\"'[combo-desktop-readonly]'\"\n [readonly]=\"true\"\n [clearable]=\"!readonlyField.readonly\">\n <mat-icon matPrefix *ngIf=\"showIcons.checked\">keyboard_arrow_right</mat-icon>\n <mat-icon matSuffix *ngIf=\"showIcons.checked\">keyboard_arrow_left</mat-icon>\n </mat-autocomplete-field>\n </ion-col>\n </ion-row>\n </ion-grid>\n </ion-card-content>\n </ion-card>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n </form>\n\n</ion-content>\n"
192
- },] }
193
- ];
194
- AutocompleteTestPage.ctorParameters = () => [
195
- { type: FormBuilder }
196
- ];
197
- AutocompleteTestPage.propDecorators = {
198
- farEntityField: [{ type: ViewChild, args: ['farEntityField',] }]
199
- };
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9hdXRvY29tcGxldGUvdGVzdGluZy9hdXRvY29tcGxldGUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixTQUFTLEVBQVUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBWSxXQUFXLEVBQVksTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUMseUJBQXlCLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRixPQUFPLEVBQUMsMkJBQTJCLEVBQXVCLE1BQU0sMEJBQTBCLENBQUM7QUFDM0YsT0FBTyxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVyQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUduRCxNQUFNLGVBQWU7Q0FJcEI7QUFFRCxNQUFNLGFBQWEsR0FBRztJQUNwQixFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsd0NBQXdDLEVBQUM7SUFDakksRUFBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLHdDQUF3QyxFQUFDO0lBQ2pJLEVBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLHlCQUF5QixFQUFFLFFB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QUFlO1FBQ2IsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsWUFBWSxDQUFDLGlCQUF1QyxFQUFFLFNBQWlCO1FBQ3JFLE1BQU0sTUFBTSxHQUFpQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDakcsTUFBTSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxlQUFlLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQzNGLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCw2QkFBNkI7SUFFN0IsU0FBUyxDQUFDLEtBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7OztZQTFNRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsbTEvQkFBdUM7YUFDeEM7OztZQXhDa0IsV0FBVzs7OzZCQXVEM0IsU0FBUyxTQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtTaGFyZWRGb3JtQXJyYXlWYWxpZGF0b3JzLCBTaGFyZWRWYWxpZGF0b3JzfSBmcm9tICcuLi8uLi8uLi92YWxpZGF0b3IvdmFsaWRhdG9ycyc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZUNvbmZpZ0hvbGRlciwgTWF0QXV0b2NvbXBsZXRlRmllbGR9IGZyb20gJy4uL21hdGVyaWFsLmF1dG9jb21wbGV0ZSc7XG5pbXBvcnQge2lzTmlsLCBpc05vdE5pbCwgc2xlZXB9IGZyb20gJy4uLy4uLy4uL2Z1bmN0aW9ucyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvYWRSZXN1bHR9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlLmNsYXNzJztcbmltcG9ydCB7c3VnZ2VzdEZyb21BcnJheX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IFRpbWVyID0gTm9kZUpTLlRpbWVyO1xuXG5jbGFzcyBFbnRpdHlUZXN0Q2xhc3Mge1xuICBpZDogbnVtYmVyO1xuICBsYWJlbDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmNvbnN0IEZBS0VfRU5USVRJRVMgPSBbXG4gIHtpZDogMSwgbGFiZWw6ICdBQUEnLCBuYW1lOiAnSXRlbSBBJywgZGVzY3JpcHRpb246ICdWZXJ5IGxvbmcgZGVzY3JpcHRpb24gQScsIGNvbW1lbnRzOiAnVmVyeSB2ZXJ5IGxvbmcgY29tbWVudHMuLi4gYWdhaW4gZm9yIEEnfSxcbiAge2lkOiAyLCBsYWJlbDogJ0JCQicsIG5hbWU6ICdJdGVtIEInLCBkZXNjcmlwdGlvbjogJ1ZlcnkgbG9uZyBkZXNjcmlwdGlvbiBCJywgY29tbWVudHM6ICdWZXJ5IHZlcnkgbG9uZyBjb21tZW50cy4uLiBhZ2FpbiBmb3IgQid9LFxuICB7aWQ6IDMsIGxhYmVsOiAnQ0NDJywgbmFtZTogJ0l0ZW0gQycsIGRlc2NyaXB0aW9uOiAnVmVyeSBsb25nIGRlc2NyaXB0aW9uIEMnLCBjb21tZW50czogJ1ZlcnkgdmVyeSBsb25nIGNvbW1lbnRzLi4uIGFnYWluIGZvciBDJ31cbl07XG5cbmZ1bmN0aW9uIGRlZXBDb3B5KHZhbHVlcz86IEVudGl0eVRlc3RDbGFzc1tdLCBzaXplPzogbnVtYmVyKTogRW50aXR5VGVzdENsYXNzW10ge1xuICBpZiAoaXNOaWwoc2l6ZSkpIHtcbiAgICByZXR1cm4gKHZhbHVlcyB8fCBGQUtFX0VOVElUSUVTKS5tYXAoZW50aXR5ID0+IE9iamVjdC5hc3NpZ24oe30sIGVudGl0eSkpO1xuICB9XG5cbiAgbGV0IHJlc3VsdCA9IFtdO1xuICBsZXQgaSA9IDE7XG4gIHdoaWxlIChyZXN1bHQubGVuZ3RoIDwgc2l6ZSkge1xuICAgIHJlc3VsdCA9IHJlc3VsdC5jb25jYXQoKHZhbHVlcyB8fCBGQUtFX0VOVElUSUVTKS5tYXAoZW50aXR5ID0+IHtcbiAgICAgIGNvbnN0IG5hbWUgPSBlbnRpdHkubmFtZSArICcgIycgKyBpO1xuICAgICAgcmV0dXJuIHsuLi5lbnRpdHksIGlkOiBpKyssIG5hbWV9O1xuICAgIH0pKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0LnNsaWNlKDAsIHNpemUpO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXV0b2NvbXBsZXRlLXRlc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLnRlc3QuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlVGVzdFBhZ2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHByaXZhdGUgX2l0ZW1zID0gZGVlcENvcHkoRkFLRV9FTlRJVElFUywgMTAwKTtcbiAgcHJpdmF0ZSBfJGl0ZW1zID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbnRpdHlUZXN0Q2xhc3NbXT4odW5kZWZpbmVkKTtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG4gIGF1dG9jb21wbGV0ZUZpZWxkcyA9IG5ldyBNYXRBdXRvY29tcGxldGVDb25maWdIb2xkZXIoKTtcbiAgbWVtb3J5SGlkZSA9IGZhbHNlO1xuICBtZW1vcnlNb2JpbGUgPSB0cnVlO1xuICBtZW1vcnlBdXRvY29tcGxldGVGaWVsZE5hbWUgPSAnZW50aXR5LSRpdGVtcyc7XG4gIG1lbW9yeVRpbWVyOiBUaW1lcjtcblxuICBtb2RlOiAnbW9iaWxlJ3wnZGVza3RvcCd8J21lbW9yeSd8J3RlbXAnID0gJ21vYmlsZSc7XG5cbiAgQFZpZXdDaGlsZCgnZmFyRW50aXR5RmllbGQnKSBmYXJFbnRpdHlGaWVsZDogTWF0QXV0b2NvbXBsZXRlRmllbGQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlclxuICApIHtcbiAgICB0aGlzLmZvcm0gPSBmb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBlbnRpdHk6IFtudWxsLCBTaGFyZWRWYWxpZGF0b3JzLmVudGl0eV0sXG4gICAgICBtaXNzaW5nRW50aXR5OiBbbnVsbCwgU2hhcmVkVmFsaWRhdG9ycy5lbnRpdHldLFxuICAgICAgZGlzYWJsZUVudGl0eTogW251bGwsIFNoYXJlZFZhbGlkYXRvcnMuZW50aXR5XSxcbiAgICAgIGVudGl0aWVzOiBbbnVsbCwgU2hhcmVkRm9ybUFycmF5VmFsaWRhdG9ycy5yZXF1aXJlZEFycmF5TWluTGVuZ3RoKDEpXSxcbiAgICAgIGZhckVudGl0eTogW251bGwsIFNoYXJlZFZhbGlkYXRvcnMuZW50aXR5XVxuICAgIH0pO1xuXG4gICAgdGhpcy5mb3JtLmdldCgnZGlzYWJsZUVudGl0eScpLmRpc2FibGUoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuXG4gICAgLy8gRnJvbSBzdWdnZXN0XG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuYWRkKCdlbnRpdHktc3VnZ2VzdEZuJywge1xuICAgICAgc3VnZ2VzdEZuOiAodmFsdWUsIGZpbHRlcikgPT4gdGhpcy5zdWdnZXN0KHZhbHVlLCBmaWx0ZXIpLFxuICAgICAgYXR0cmlidXRlczogWydsYWJlbCcsICduYW1lJ10sXG4gICAgICBkaXNwbGF5V2l0aDogdGhpcy5lbnRpdHlUb1N0cmluZ1xuICAgIH0pO1xuXG4gICAgLy8gRnJvbSBpdGVtcyBhcnJheVxuICAgIHRoaXMuYXV0b2NvbXBsZXRlRmllbGRzLmFkZCgnZW50aXR5LWl0ZW1zJywge1xuICAgICAgaXRlbXM6IHRoaXMuX2l0ZW1zLnNsaWNlKCksXG4gICAgICBhdHRyaWJ1dGVzOiBbJ2xhYmVsJywgJ25hbWUnXSxcbiAgICAgIGRpc3BsYXlXaXRoOiB0aGlzLmVudGl0eVRvU3RyaW5nXG4gICAgfSk7XG5cbiAgICAvLyBGcm9tICRpdGVtcyBvYnNlcnZhYmxlXG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuYWRkKCdlbnRpdHktJGl0ZW1zJywge1xuICAgICAgaXRlbXM6IHRoaXMuXyRpdGVtcyxcbiAgICAgIGF0dHJpYnV0ZXM6IFsnbGFiZWwnLCAnbmFtZSddLFxuICAgICAgZGlzcGxheVdpdGg6IHRoaXMuZW50aXR5VG9TdHJpbmdcbiAgICB9KTtcblxuICAgIC8vIEZyb20gJGl0ZW1zIHdpdGggZmlsdGVyXG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuYWRkKCdlbnRpdHktaXRlbXMtZmlsdGVyJywge1xuICAgICAgc2VydmljZToge1xuICAgICAgICBzdWdnZXN0OiAodmFsdWUsIGZpbHRlcikgPT4gdGhpcy5zdWdnZXN0KHZhbHVlLCBmaWx0ZXIpXG4gICAgICB9LFxuICAgICAgYXR0cmlidXRlczogWydsYWJlbCcsICduYW1lJ10sXG4gICAgICBkaXNwbGF5V2l0aDogdGhpcy5lbnRpdHlUb1N0cmluZ1xuICAgIH0pO1xuXG4gICAgLy8gRnJvbSBpdGVtc1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlRmllbGRzLmFkZCgnZW50aXR5LWl0ZW1zLWxhcmdlJywge1xuICAgICAgaXRlbXM6IEZBS0VfRU5USVRJRVMuc2xpY2UoKSxcbiAgICAgIGF0dHJpYnV0ZXM6IFsnbGFiZWwnLCAnbmFtZScsICdkZXNjcmlwdGlvbicsICdjb21tZW50cyddLFxuICAgICAgZGlzcGxheVdpdGg6IHRoaXMuZW50aXR5VG9TdHJpbmdcbiAgICB9KTtcblxuICAgIC8vIEZhciBlbnRpdHksIGluIHRoZSBsaXN0XG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuYWRkKCdlbnRpdHktZmFyJywge1xuICAgICAgc3VnZ2VzdEZuOiAodmFsdWUsIGZpbHRlcikgPT4gdGhpcy5zdWdnZXN0KHZhbHVlLCBmaWx0ZXIpLFxuICAgICAgYXR0cmlidXRlczogWydsYWJlbCcsICduYW1lJ10sXG4gICAgICBkaXNwbGF5V2l0aDogdGhpcy5lbnRpdHlUb1N0cmluZ1xuICAgIH0pO1xuXG4gICAgLy8gRm9yIG11bHRpcGxlIHZhbHVlXG4gICAgdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuYWRkKCdlbnRpdGllcy1pdGVtcy1maWx0ZXInLCB7XG4gICAgICBzZXJ2aWNlOiB7XG4gICAgICAgIHN1Z2dlc3Q6ICh2YWx1ZSwgZmlsdGVyKSA9PiB0aGlzLnN1Z2dlc3QodmFsdWUsIGZpbHRlcilcbiAgICAgIH0sXG4gICAgICBhdHRyaWJ1dGVzOiBbJ2xhYmVsJywgJ25hbWUnXSxcbiAgICAgIG11bHRpcGxlOiB0cnVlXG4gICAgfSk7XG5cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcblxuICAgIGlmICh0aGlzLmZhckVudGl0eUZpZWxkKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5mYXJFbnRpdHlGaWVsZC5zdWdnZXN0TGVuZ3RoVGhyZXNob2xkPTI7XG4gICAgICAgIHRoaXMuZmFyRW50aXR5RmllbGQucmVsb2FkSXRlbXMoKTtcbiAgICAgIH0sIDIwMDApO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQoKCk9PiB0aGlzLmxvYWREYXRhKCksIDEwMDApO1xuICB9XG5cbiAgLy8gTG9hZCB0aGUgZm9ybSB3aXRoIGRhdGFcbiAgYXN5bmMgbG9hZERhdGEoKSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGVudGl0eTogZGVlcENvcHkoRkFLRV9FTlRJVElFUylbMF0sIC8vIEZpcnN0XG5cbiAgICAgIGZhckVudGl0eTogZGVlcENvcHkoRkFLRV9FTlRJVElFUylbMl0sXG5cbiAgICAgIC8vIFRoaXMgaXRlbSBpcyBOT1QgaW4gdGhlIGl0ZW1zIGxpc3QgPT4gaSBzaG91bGQgYmUgZGlzcGxheWVkIGFueXdheVxuICAgICAgbWlzc2luZ0VudGl0eToge1xuICAgICAgICBpZDogLTEsIGxhYmVsOiAnPz8nLCBuYW1lOiAnTWlzc2luZyBpdGVtJ1xuICAgICAgfSxcblxuICAgICAgZGlzYWJsZUVudGl0eTogZGVlcENvcHkoRkFLRV9FTlRJVElFUylbMl0sXG5cbiAgICAgIGVudGl0aWVzOiBkZWVwQ29weShGQUtFX0VOVElUSUVTKVxuICAgIH07XG5cbiAgICB0aGlzLmZvcm0uc2V0VmFsdWUoZGF0YSk7XG5cbiAgICAvLyBMb2FkIG9ic2VydmFibGVzXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmxvYWRJdGVtcygpLCAxMDAwKTtcbiAgfVxuXG4gIGFzeW5jIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLl8kaXRlbXMubmV4dCh0aGlzLl9pdGVtcy5zbGljZSgpKTtcbiAgfVxuXG4gIGVudGl0eVRvU3RyaW5nKGl0ZW06IGFueSkge1xuICAgIHJldHVybiBbaXRlbSAmJiBpdGVtLmxhYmVsIHx8IHVuZGVmaW5lZCwgaXRlbSAmJiBpdGVtLm5hbWUgfHwgdW5kZWZpbmVkXS5maWx0ZXIoaXNOb3ROaWwpLmpvaW4oJyAtICcpO1xuICB9XG5cbiAgZW50aXRpZXNUb1N0cmluZyhpdGVtczogYW55W10pIHtcbiAgICByZXR1cm4gKGl0ZW1zfHxbXSkubWFwKHRoaXMuZW50aXR5VG9TdHJpbmcpLmpvaW4oJywgJyk7XG4gIH1cblxuICBhc3luYyBzdWdnZXN0KHZhbHVlOiBhbnksIGZpbHRlcj86IGFueSk6IFByb21pc2U8TG9hZFJlc3VsdDxFbnRpdHlUZXN0Q2xhc3M+PiB7XG4gICAgZmlsdGVyID0ge29mZnNldDogMCwgc2l6ZTogMzAsIC4uLmZpbHRlcn07XG4gICAgY29uc3QgcmVzID0gc3VnZ2VzdEZyb21BcnJheSh0aGlzLl9pdGVtcywgdmFsdWUsIHtcbiAgICAgIC4uLmZpbHRlcixcbiAgICAgIHNlYXJjaEF0dHJpYnV0ZXM6IFsnbGFiZWwnLCAnbmFtZSddXG4gICAgfSk7XG5cbiAgICAvLyBTaW11bGF0ZSBhIHNpemUgPSAzMFxuICAgIGNvbnN0IHRvdGFsID0gcmVzLnRvdGFsIHx8IHJlcy5kYXRhLmxlbmd0aDtcblxuICAgIGNvbnN0IG5leHRPZmZzZXQgPSBmaWx0ZXIub2Zmc2V0ICsgcmVzLmRhdGEubGVuZ3RoO1xuICAgIGlmIChuZXh0T2Zmc2V0IDwgdG90YWwpIHtcbiAgICAgIGZpbHRlciA9IHsuLi5maWx0ZXIsIG9mZnNldDogbmV4dE9mZnNldH07XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b3RhbCxcbiAgICAgICAgZGF0YTogcmVzLmRhdGEsXG4gICAgICAgIGZldGNoTW9yZTogYXN5bmMgKHZhcmlhYmxlcykgPT4ge1xuICAgICAgICAgIGF3YWl0IHNsZWVwKDEwMDApOyAvLyBTaW11bGF0ZSBhY2Nlc3MgdG8gc2VydmVyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuc3VnZ2VzdCh2YWx1ZSwgey4uLmZpbHRlciwgLi4udmFyaWFibGVzfSk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIGRvU3VibWl0KGV2ZW50KSB7XG5cbiAgICBjb25zb2xlLmRlYnVnKCdWYWxpZGF0ZSBmb3JtOiAnLCB0aGlzLmZvcm0udmFsdWUpO1xuICB9XG5cbiAgZXF1YWxzKG8xOiBFbnRpdHlUZXN0Q2xhc3MsIG8yOiBFbnRpdHlUZXN0Q2xhc3MpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbzEgJiYgbzIgJiYgbzEuaWQgPT09IG8yLmlkO1xuICB9XG5cbiAgdG9nZ2xlTW9kZSh2YWx1ZSkge1xuICAgIGlmICh0aGlzLm1vZGUgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLm1vZGUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuc3RvcE1lbW9yeVRpbWVyKCk7XG4gICAgfVxuICB9XG5cbiAgc3RhcnRNZW1vcnlUaW1lcigpIHtcbiAgICB0aGlzLm1lbW9yeVRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5tZW1vcnlIaWRlID0gIXRoaXMubWVtb3J5SGlkZTtcbiAgICB9LCA1MCk7XG4gIH1cblxuICBzdG9wTWVtb3J5VGltZXIoKSB7XG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLm1lbW9yeVRpbWVyKTtcbiAgICB0aGlzLm1lbW9yeVRpbWVyID0gbnVsbDtcbiAgICB0aGlzLm1lbW9yeUhpZGUgPSBmYWxzZTtcbiAgfVxuXG4gIHVwZGF0ZUZpbHRlcihhdXRvY29tcGxldGVGaWVsZDogTWF0QXV0b2NvbXBsZXRlRmllbGQsIGZpZWxkTmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZmlsdGVyOiB7IHNlYXJjaEF0dHJpYnV0ZT86IHN0cmluZyB9ID0gdGhpcy5hdXRvY29tcGxldGVGaWVsZHMuZ2V0KGZpZWxkTmFtZSkuZmlsdGVyIHx8IHt9O1xuICAgIGZpbHRlci5zZWFyY2hBdHRyaWJ1dGUgPSAoIWZpbHRlciB8fCBmaWx0ZXIuc2VhcmNoQXR0cmlidXRlICE9PSAnbmFtZScpID8gJ25hbWUnIDogJ2xhYmVsJztcbiAgICBhdXRvY29tcGxldGVGaWVsZC5yZWxvYWRJdGVtcygpO1xuICB9XG5cbiAgLyogLS0gcHJvdGVjdGVkIG1ldGhvZHMgLS0gKi9cblxuICBzdHJpbmdpZnkodmFsdWU6IGFueSkge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gIH1cbn1cblxuIl19
@@ -1,135 +0,0 @@
1
- import { Directive, ElementRef, Input } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { debounceTime } from 'rxjs/operators';
4
- export class MatBadgeIconDirective {
5
- constructor(el) {
6
- this.el = el;
7
- this._subscription = null;
8
- this._$update = new Subject();
9
- }
10
- set size(value) {
11
- if (this._size !== value) {
12
- this._size = value;
13
- this.updateView();
14
- }
15
- }
16
- get size() {
17
- return this._size;
18
- }
19
- set color(value) {
20
- if (this._color !== value) {
21
- this._color = value;
22
- this.updateView();
23
- }
24
- }
25
- get color() {
26
- return this._color;
27
- }
28
- set fill(value) {
29
- if (this._fill !== value) {
30
- this._fill = value;
31
- this.updateView();
32
- }
33
- }
34
- get fill() {
35
- return this._fill;
36
- }
37
- set matIcon(icon) {
38
- if (this._matIcon !== icon) {
39
- this._matIcon = icon;
40
- this.updateView();
41
- }
42
- }
43
- set ionIcon(icon) {
44
- if (this._ionIcon !== icon) {
45
- this._ionIcon = icon;
46
- this.updateView();
47
- }
48
- }
49
- ngOnInit() {
50
- // Default value
51
- this._size = this._size || 'medium';
52
- this._color = this._color || 'primary';
53
- if (this._color === 'warn')
54
- this._color = 'warning';
55
- this.updateView(true);
56
- this._subscription = this._$update
57
- .pipe(debounceTime(100))
58
- .subscribe(() => this.updateView(true));
59
- }
60
- ngOnDestroy() {
61
- var _a;
62
- (_a = this._subscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
63
- }
64
- updateView(immediate) {
65
- // Async by default
66
- if (!immediate) {
67
- this._$update.next();
68
- return;
69
- }
70
- const badge = this.el.nativeElement.querySelector('.mat-badge-content');
71
- if (!badge)
72
- return;
73
- let fontSize;
74
- switch (this._size) {
75
- case 'large':
76
- fontSize = '24px';
77
- break;
78
- case 'medium':
79
- fontSize = '22px';
80
- break;
81
- case 'small':
82
- fontSize = '16px';
83
- break;
84
- }
85
- let html = '';
86
- if (this._matIcon) {
87
- html = `<i class="material-icons" style="font-size: ${fontSize};">${this._matIcon}</i>`;
88
- }
89
- else if (this._ionIcon) {
90
- html = `<ion-icon style="font-size: ${fontSize}; pointer-events: none;" name="${this._ionIcon}"></ion-icon>`;
91
- }
92
- if (this._html !== html) {
93
- this._html = html;
94
- badge.innerHTML = html;
95
- }
96
- // Update style
97
- // fill: 'clear'
98
- if (this._fill === 'clear') {
99
- badge.style.color = `var(--ion-color-${this._color})`;
100
- badge.style.background = 'transparent';
101
- }
102
- // fill: 'solid' (default value)
103
- else {
104
- badge.style.background = `var(--ion-color-${this._color})`;
105
- badge.style.color = `var(--ion-color-${this._color}-contrast)`;
106
- }
107
- if (badge.style.display !== 'inline-block')
108
- badge.style.display = 'inline-block';
109
- if (badge.style.alignItems !== 'center')
110
- badge.style.alignItems = 'center';
111
- if (badge.style.justifyContent !== 'center')
112
- badge.style.justifyContent = 'center';
113
- }
114
- }
115
- MatBadgeIconDirective.decorators = [
116
- { type: Directive, args: [{
117
- selector: '[matBadgeIcon], [ionBadgeIcon]',
118
- inputs: [
119
- 'size: matBadgeSize',
120
- 'color: matBadgeColor',
121
- 'fill: matBadgeFill',
122
- ]
123
- },] }
124
- ];
125
- MatBadgeIconDirective.ctorParameters = () => [
126
- { type: ElementRef }
127
- ];
128
- MatBadgeIconDirective.propDecorators = {
129
- size: [{ type: Input, args: ['matBadgeSize',] }],
130
- color: [{ type: Input, args: ['matBadgeColor',] }],
131
- fill: [{ type: Input, args: ['matBadgeFill',] }],
132
- matIcon: [{ type: Input, args: ['matBadgeIcon',] }],
133
- ionIcon: [{ type: Input, args: ['ionBadgeIcon',] }]
134
- };
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UtaWNvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9iYWRnZS9iYWRnZS1pY29uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBZSxLQUFLLEVBQXdELE1BQU0sZUFBZSxDQUFDO0FBSS9ILE9BQU8sRUFBQyxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBWTVDLE1BQU0sT0FBTyxxQkFBcUI7SUEwRGhDLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBSDFCLGtCQUFhLEdBQWlCLElBQUksQ0FBQztRQUNuQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUVJLENBQUM7SUF4RHRDLElBQTJCLElBQUksQ0FBQyxLQUFtQjtRQUNqRCxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssS0FBSyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQTRCLEtBQUssQ0FBQyxLQUFzQztRQUN0RSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssS0FBSyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQTJCLElBQUksQ0FBQyxLQUFt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MUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUN0RCxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQUM7U0FDeEM7UUFDRCxnQ0FBZ0M7YUFDM0I7WUFDSCxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQzNELEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLG1CQUFtQixJQUFJLENBQUMsTUFBTSxZQUFZLENBQUM7U0FDaEU7UUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLGNBQWM7WUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUM7UUFDakYsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsS0FBSyxRQUFRO1lBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQzNFLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxjQUFjLEtBQUssUUFBUTtZQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQztJQUNyRixDQUFDOzs7WUF2SUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQ0FBZ0M7Z0JBQzFDLE1BQU0sRUFBRTtvQkFDTixvQkFBb0I7b0JBQ3BCLHNCQUFzQjtvQkFDdEIsb0JBQW9CO2lCQUNyQjthQUNGOzs7WUFoQmtCLFVBQVU7OzttQkFtQjFCLEtBQUssU0FBQyxjQUFjO29CQVdwQixLQUFLLFNBQUMsZUFBZTttQkFXckIsS0FBSyxTQUFDLGNBQWM7c0JBV3BCLEtBQUssU0FBQyxjQUFjO3NCQU1wQixLQUFLLFNBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZCwgVmlld0NoaWxkcmVufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0QmFkZ2VTaXplfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQge1ByZWRlZmluZWRDb2xvcnN9IGZyb20gJ0Bpb25pYy9jb3JlJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7U3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBkZWNsYXJlIHR5cGUgTWF0QmFkZ2VGaWxsID0gJ2NsZWFyJyB8ICdzb2xpZCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttYXRCYWRnZUljb25dLCBbaW9uQmFkZ2VJY29uXScsXG4gIGlucHV0czogW1xuICAgICdzaXplOiBtYXRCYWRnZVNpemUnLFxuICAgICdjb2xvcjogbWF0QmFkZ2VDb2xvcicsXG4gICAgJ2ZpbGw6IG1hdEJhZGdlRmlsbCcsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTWF0QmFkZ2VJY29uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgnbWF0QmFkZ2VTaXplJykgc2V0IHNpemUodmFsdWU6IE1hdEJhZGdlU2l6ZSkge1xuICAgIGlmICh0aGlzLl9zaXplICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5fc2l6ZSA9IHZhbHVlO1xuICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHNpemUoKTogTWF0QmFkZ2VTaXplIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuXG4gIEBJbnB1dCgnbWF0QmFkZ2VDb2xvcicpIHNldCBjb2xvcih2YWx1ZTogUHJlZGVmaW5lZENvbG9ycyB8IFRoZW1lUGFsZXR0ZSkge1xuICAgIGlmICh0aGlzLl9jb2xvciAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX2NvbG9yID0gdmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgY29sb3IoKTogUHJlZGVmaW5lZENvbG9ycyB8IFRoZW1lUGFsZXR0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xuICB9XG5cbiAgQElucHV0KCdtYXRCYWRnZUZpbGwnKSBzZXQgZmlsbCh2YWx1ZTogTWF0QmFkZ2VGaWxsKSB7XG4gICAgaWYgKHRoaXMuX2ZpbGwgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLl9maWxsID0gdmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZmlsbCgpOiBNYXRCYWRnZUZpbGwge1xuICAgIHJldHVybiB0aGlzLl9maWxsO1xuICB9XG5cbiAgQElucHV0KCdtYXRCYWRnZUljb24nKSBzZXQgbWF0SWNvbihpY29uOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fbWF0SWNvbiAhPT0gaWNvbikge1xuICAgICAgdGhpcy5fbWF0SWNvbiA9IGljb247XG4gICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICB9XG4gIH1cbiAgQElucHV0KCdpb25CYWRnZUljb24nKSBzZXQgaW9uSWNvbihpY29uOiBzdHJpbmcpe1xuICAgIGlmICh0aGlzLl9pb25JY29uICE9PSBpY29uKSB7XG4gICAgICB0aGlzLl9pb25JY29uID0gaWNvbjtcbiAgICAgIHRoaXMudXBkYXRlVmlldygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3NpemU6IE1hdEJhZGdlU2l6ZTtcbiAgcHJpdmF0ZSBfY29sb3I6IFByZWRlZmluZWRDb2xvcnMgfCBUaGVtZVBhbGV0dGU7XG4gIHByaXZhdGUgX2ZpbGw6IE1hdEJhZGdlRmlsbDtcbiAgcHJpdmF0ZSBfbWF0SWNvbjogc3RyaW5nO1xuICBwcml2YXRlIF9pb25JY29uOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfaHRtbDogc3RyaW5nO1xuICBwcml2YXRlIF9zdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG51bGw7XG4gIHByaXZhdGUgXyR1cGRhdGUgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gRGVmYXVsdCB2YWx1ZVxuICAgIHRoaXMuX3NpemUgPSB0aGlzLl9zaXplIHx8ICdtZWRpdW0nO1xuICAgIHRoaXMuX2NvbG9yID0gdGhpcy5fY29sb3IgfHwgJ3ByaW1hcnknO1xuICAgIGlmICh0aGlzLl9jb2xvciA9PT0gJ3dhcm4nKSB0aGlzLl9jb2xvciA9ICd3YXJuaW5nJztcblxuICAgIHRoaXMudXBkYXRlVmlldyh0cnVlKTtcblxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuXyR1cGRhdGVcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZVZpZXcodHJ1ZSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVWaWV3KGltbWVkaWF0ZT86IGJvb2xlYW4pIHtcblxuICAgIC8vIEFzeW5jIGJ5IGRlZmF1bHRcbiAgICBpZiAoIWltbWVkaWF0ZSkge1xuICAgICAgdGhpcy5fJHVwZGF0ZS5uZXh0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgYmFkZ2U6IEhUTUxTcGFuRWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcubWF0LWJhZGdlLWNvbnRlbnQnKTtcbiAgICBpZiAoIWJhZGdlKSByZXR1cm47XG5cbiAgICBsZXQgZm9udFNpemU7XG4gICAgc3dpdGNoICh0aGlzLl9zaXplKSB7XG4gICAgICBjYXNlICdsYXJnZSc6XG4gICAgICAgIGZvbnRTaXplID0gJzI0cHgnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21lZGl1bSc6XG4gICAgICAgIGZvbnRTaXplID0gJzIycHgnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3NtYWxsJzpcbiAgICAgICAgZm9udFNpemUgPSAnMTZweCc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBsZXQgaHRtbCA9ICcnO1xuICAgIGlmICh0aGlzLl9tYXRJY29uKSB7XG4gICAgICBodG1sID0gYDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiBzdHlsZT1cImZvbnQtc2l6ZTogJHtmb250U2l6ZX07XCI+JHt0aGlzLl9tYXRJY29ufTwvaT5gO1xuICAgIH1cbiAgICBlbHNlIGlmICh0aGlzLl9pb25JY29uKSB7XG4gICAgICBodG1sID0gYDxpb24taWNvbiBzdHlsZT1cImZvbnQtc2l6ZTogJHtmb250U2l6ZX07IHBvaW50ZXItZXZlbnRzOiBub25lO1wiIG5hbWU9XCIke3RoaXMuX2lvbkljb259XCI+PC9pb24taWNvbj5gO1xuICAgIH1cbiAgICBpZiAodGhpcy5faHRtbCAhPT0gaHRtbCkge1xuICAgICAgdGhpcy5faHRtbCA9IGh0bWw7XG4gICAgICBiYWRnZS5pbm5lckhUTUwgPSBodG1sO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBzdHlsZVxuICAgIC8vIGZpbGw6ICdjbGVhcidcbiAgICBpZiAodGhpcy5fZmlsbCA9PT0gJ2NsZWFyJykge1xuICAgICAgYmFkZ2Uuc3R5bGUuY29sb3IgPSBgdmFyKC0taW9uLWNvbG9yLSR7dGhpcy5fY29sb3J9KWA7XG4gICAgICBiYWRnZS5zdHlsZS5iYWNrZ3JvdW5kID0gJ3RyYW5zcGFyZW50JztcbiAgICB9XG4gICAgLy8gZmlsbDogJ3NvbGlkJyAoZGVmYXVsdCB2YWx1ZSlcbiAgICBlbHNlIHtcbiAgICAgIGJhZGdlLnN0eWxlLmJhY2tncm91bmQgPSBgdmFyKC0taW9uLWNvbG9yLSR7dGhpcy5fY29sb3J9KWA7XG4gICAgICBiYWRnZS5zdHlsZS5jb2xvciA9IGB2YXIoLS1pb24tY29sb3ItJHt0aGlzLl9jb2xvcn0tY29udHJhc3QpYDtcbiAgICB9XG5cbiAgICBpZiAoYmFkZ2Uuc3R5bGUuZGlzcGxheSAhPT0gJ2lubGluZS1ibG9jaycpIGJhZGdlLnN0eWxlLmRpc3BsYXkgPSAnaW5saW5lLWJsb2NrJztcbiAgICBpZiAoYmFkZ2Uuc3R5bGUuYWxpZ25JdGVtcyAhPT0gJ2NlbnRlcicpIGJhZGdlLnN0eWxlLmFsaWduSXRlbXMgPSAnY2VudGVyJztcbiAgICBpZiAoYmFkZ2Uuc3R5bGUuanVzdGlmeUNvbnRlbnQgIT09ICdjZW50ZXInKSBiYWRnZS5zdHlsZS5qdXN0aWZ5Q29udGVudCA9ICdjZW50ZXInO1xuICB9XG59XG4iXX0=
@@ -1,23 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { IonicModule } from '@ionic/angular';
4
- import { MatBadgeIconDirective } from './badge-icon.directive';
5
- import { MatBadgeModule } from '@angular/material/badge';
6
- export class SharedMatBadgeIconModule {
7
- }
8
- SharedMatBadgeIconModule.decorators = [
9
- { type: NgModule, args: [{
10
- imports: [
11
- CommonModule,
12
- IonicModule,
13
- MatBadgeModule,
14
- ],
15
- exports: [
16
- MatBadgeIconDirective
17
- ],
18
- declarations: [
19
- MatBadgeIconDirective
20
- ]
21
- },] }
22
- ];
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UtaWNvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9iYWRnZS9iYWRnZS1pY29uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBZXZELE1BQU0sT0FBTyx3QkFBd0I7OztZQWJwQyxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxjQUFjO2lCQUNmO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxxQkFBcUI7aUJBQ3RCO2dCQUNELFlBQVksRUFBRTtvQkFDWixxQkFBcUI7aUJBQ3RCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtJb25pY01vZHVsZX0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHtNYXRCYWRnZUljb25EaXJlY3RpdmV9IGZyb20gJy4vYmFkZ2UtaWNvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHtNYXRCYWRnZU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYmFkZ2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIElvbmljTW9kdWxlLFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWF0QmFkZ2VJY29uRGlyZWN0aXZlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1hdEJhZGdlSWNvbkRpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNoYXJlZE1hdEJhZGdlSWNvbk1vZHVsZSB7XG59XG5cbiJdfQ==
@@ -1,17 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- export class MatBadgeIconTestPage {
4
- constructor() {
5
- this.$icon = new BehaviorSubject('alert');
6
- this.$size = new BehaviorSubject('small');
7
- this.$fill = new BehaviorSubject('solid');
8
- this.$color = new BehaviorSubject('danger');
9
- }
10
- }
11
- MatBadgeIconTestPage.decorators = [
12
- { type: Component, args: [{
13
- selector: 'mat-badge-icon-test',
14
- template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>matBadgeIcon directive</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n\n <!-- small badge -->\n <p>\n <ion-text color=\"tertiary\">\n <span matBadge matIcon=\"check\"\n matBadgeSize=\"small\"\n matBadgeColor=\"accent\"\n matBadgeOverlap=\"false\">Small badge</span>\n </ion-text>\n </p>\n\n <!-- medium badge -->\n <p>\n <ion-text matBadge matBadgeIcon=\"check\"\n matBadgeSize=\"medium\"\n matBadgeColor=\"tertiary\"\n matBadgeOverlap=\"false\"\n >Medium badge</ion-text>\n </p>\n\n <!-- small badge -->\n <p>\n <ion-label matBadge matBadgeIcon=\"close\" matBadgeSize=\"large\"\n matBadgeOverlap=\"false\">Large badge</ion-label>\n </p>\n\n <!-- default size badge -->\n <p>\n <ion-label matBadge matBadgeIcon=\"check\" matBadgeColor=\"success\"\n matBadgeOverlap=\"false\">Badge (no size, no color)\n </ion-label>\n </p>\n\n <!-- ion icon -->\n <p>\n <ion-label matBadge\n ionBadgeIcon=\"checkmark\"\n matBadgeColor=\"success\"\n matBadgeOverlap=\"false\">Badge with ion-icon\n </ion-label>\n </p>\n\n <!-- ion icon clear -->\n <p>\n <ion-label matBadge\n ionBadgeIcon=\"checkmark-circle\"\n matBadgeColor=\"tertiary\"\n matBadgeFill=\"clear\"\n matBadgeOverlap=\"false\">Badge with clear icon\n </ion-label>\n </p>\n\n <ion-row class=\"ion-no-padding\">\n <ion-col>\n <mat-icon [style.color]=\"'var(--ion-color-secondary)'\"\n matBadge\n [ionBadgeIcon]=\"$icon|async\"\n [matBadgeColor]=\"$color|async\"\n [matBadgeFill]=\"$fill|async\"\n [matBadgeSize]=\"$size|async\"\n matBadgeOverlap=\"false\">\n <ion-icon slot=\"icon-only\"\n [color]=\"'secondary'\"\n name=\"navigate\"\n ></ion-icon>\n </mat-icon>\n </ion-col>\n\n <ion-col>\n <mat-form-field>\n <mat-select placeholder=\"matBadgeColor\"\n [value]=\"$color.value\"\n (selectionChange)=\"this.$color.next($event.value)\">\n <mat-option [value]=\"'primary'\">primary</mat-option>\n <mat-option [value]=\"'secondary'\">secondary</mat-option>\n <mat-option [value]=\"'tertiary'\">tertiary</mat-option>\n <mat-option [value]=\"'danger'\">danger</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n\n <ion-col>\n <mat-form-field>\n <mat-select placeholder=\"ionBadgeIcon\"\n [value]=\"$icon.value\"\n (selectionChange)=\"this.$icon.next($event.value)\">\n <mat-option [value]=\"'checkmark-circle'\">checkmark-circle</mat-option>\n <mat-option [value]=\"'alert-circle'\">alert-circle</mat-option>\n <mat-option [value]=\"'alert'\">alert</mat-option>\n <mat-option [value]=\"'flag'\">flag</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n\n <ion-col>\n <mat-form-field>\n <mat-select placeholder=\"matBadgeSize\"\n [value]=\"$size.value\"\n (selectionChange)=\"this.$size.next($event.value)\">\n <mat-option [value]=\"'large'\">large</mat-option>\n <mat-option [value]=\"'medium'\">medium</mat-option>\n <mat-option [value]=\"'small'\">small</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n\n <ion-col>\n <mat-form-field>\n <mat-select placeholder=\"matBadgeFill\"\n [value]=\"$fill.value\"\n (selectionChange)=\"this.$fill.next($event.value)\">\n <mat-option [value]=\"'clear'\">clear</mat-option>\n <mat-option [value]=\"'solid'\">solid</mat-option>\n </mat-select>\n </mat-form-field>\n </ion-col>\n </ion-row>\n\n</ion-content>\n"
15
- },] }
16
- ];
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UtaWNvbi50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYmFkZ2UvYmFkZ2UtaWNvbi50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQVVyQyxNQUFNLE9BQU8sb0JBQW9CO0lBSmpDO1FBTUUsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFTLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBZSxPQUFPLENBQUMsQ0FBQztRQUNuRCxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQWUsT0FBTyxDQUFDLENBQUM7UUFDbkQsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFrQyxRQUFRLENBQUMsQ0FBQztJQUMxRSxDQUFDOzs7WUFWQSxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0Isc29JQUFxQzthQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7TWF0QmFkZ2VGaWxsfSBmcm9tICcuL2JhZGdlLWljb24uZGlyZWN0aXZlJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7UHJlZGVmaW5lZENvbG9yc30gZnJvbSAnQGlvbmljL2NvcmUnO1xuaW1wb3J0IHtNYXRCYWRnZVNpemV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JhZGdlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWF0LWJhZGdlLWljb24tdGVzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYWRnZS1pY29uLnRlc3QuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTWF0QmFkZ2VJY29uVGVzdFBhZ2Uge1xuXG4gICRpY29uID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCdhbGVydCcpO1xuICAkc2l6ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF0QmFkZ2VTaXplPignc21hbGwnKTtcbiAgJGZpbGwgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdEJhZGdlRmlsbD4oJ3NvbGlkJyk7XG4gICRjb2xvciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UHJlZGVmaW5lZENvbG9ycyB8IFRoZW1lUGFsZXR0ZT4oJ2RhbmdlcicpO1xufVxuIl19