@bravobit/bb-foundation 0.21.1 → 0.21.4

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 (467) hide show
  1. package/README.md +47 -47
  2. package/auth/index.d.ts +5 -5
  3. package/auth/lib/auth.interceptor.d.ts +21 -21
  4. package/auth/lib/auth.module.d.ts +15 -15
  5. package/auth/lib/auth.service.d.ts +59 -59
  6. package/auth/lib/auth.session.d.ts +34 -34
  7. package/auth/lib/directives/authenticated.directive.d.ts +14 -14
  8. package/auth/lib/directives/permission.directive.d.ts +24 -24
  9. package/auth/lib/directives/role.directive.d.ts +16 -16
  10. package/auth/lib/guards/anonymous.guard.d.ts +11 -11
  11. package/auth/lib/guards/authenticated.guard.d.ts +11 -11
  12. package/auth/lib/helpers/jwt.helper.d.ts +8 -8
  13. package/auth/lib/helpers/mapper.helper.d.ts +23 -23
  14. package/auth/lib/interfaces/config.interface.d.ts +12 -12
  15. package/auth/lib/interfaces/mapper.interface.d.ts +19 -19
  16. package/auth/lib/interfaces/provider.interface.d.ts +16 -16
  17. package/auth/lib/interfaces/token.interface.d.ts +11 -11
  18. package/auth/lib/permissions.service.d.ts +14 -14
  19. package/auth/lib/providers/email.provider.d.ts +15 -15
  20. package/auth/lib/providers/verify.provider.d.ts +13 -13
  21. package/auth/lib/tokens/use-authorization.token.d.ts +2 -2
  22. package/auth/public_api.d.ts +18 -18
  23. package/collections/index.d.ts +5 -5
  24. package/collections/lib/collection.d.ts +42 -43
  25. package/collections/lib/collections.module.d.ts +10 -10
  26. package/collections/lib/components/collections-pager/collections-pager.component.d.ts +34 -34
  27. package/collections/lib/components/collections-viewer/collections-viewer.component.d.ts +12 -12
  28. package/collections/lib/components/collections.directive.d.ts +17 -17
  29. package/collections/lib/interfaces/collection.interface.d.ts +27 -26
  30. package/collections/lib/providers/api-collection.provider.d.ts +18 -19
  31. package/collections/lib/providers/collection.provider.d.ts +6 -6
  32. package/collections/lib/providers/local-collection.provider.d.ts +8 -8
  33. package/collections/public_api.d.ts +9 -9
  34. package/controls/index.d.ts +5 -5
  35. package/controls/lib/checkbox/checkbox/checkbox.component.d.ts +47 -47
  36. package/controls/lib/checkbox/checkbox-group/checkbox-group.component.d.ts +22 -22
  37. package/controls/lib/checkbox/checkbox.module.d.ts +9 -9
  38. package/controls/lib/controls.module.d.ts +7 -7
  39. package/controls/public_api.d.ts +4 -4
  40. package/dashboard/index.d.ts +5 -5
  41. package/dashboard/lib/dashboard/dashboard.component.d.ts +19 -19
  42. package/dashboard/lib/dashboard-header/dashboard-header.component.d.ts +11 -11
  43. package/dashboard/lib/dashboard-menu/dashboard-menu.component.d.ts +9 -9
  44. package/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.d.ts +11 -11
  45. package/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.d.ts +21 -21
  46. package/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.d.ts +27 -27
  47. package/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.d.ts +16 -16
  48. package/dashboard/lib/dashboard.module.d.ts +16 -16
  49. package/dashboard/public_api.d.ts +8 -8
  50. package/dialog/index.d.ts +5 -5
  51. package/dialog/lib/dialog-actions/dialog-actions.component.d.ts +5 -5
  52. package/dialog/lib/dialog-confirm/dialog-confirm.component.d.ts +16 -16
  53. package/dialog/lib/dialog-container/dialog-container.component.d.ts +24 -24
  54. package/dialog/lib/dialog-header/dialog-header.component.d.ts +9 -9
  55. package/dialog/lib/dialog-link/dialog-link.component.d.ts +5 -5
  56. package/dialog/lib/dialog-modal/dialog-modal.component.d.ts +12 -12
  57. package/dialog/lib/dialog-overlay/dialog-overlay.component.d.ts +22 -22
  58. package/dialog/lib/dialog.injector.d.ts +8 -8
  59. package/dialog/lib/dialog.insertion.d.ts +8 -8
  60. package/dialog/lib/dialog.interfaces.d.ts +3 -3
  61. package/dialog/lib/dialog.module.d.ts +19 -19
  62. package/dialog/lib/dialog.ref.d.ts +8 -8
  63. package/dialog/lib/dialog.service.d.ts +19 -19
  64. package/dialog/public_api.d.ts +9 -9
  65. package/elements/index.d.ts +5 -5
  66. package/elements/lib/avatar/avatar.component.d.ts +25 -25
  67. package/elements/lib/button/button.component.d.ts +23 -23
  68. package/elements/lib/checkbox/checkbox.component.d.ts +27 -27
  69. package/elements/lib/date-picker/date-picker.component.d.ts +69 -69
  70. package/elements/lib/directives/addon.directive.d.ts +9 -9
  71. package/elements/lib/directives/autosize.directive.d.ts +18 -18
  72. package/elements/lib/directives/focus-trap.directive.d.ts +17 -17
  73. package/elements/lib/directives/focus.directive.d.ts +14 -14
  74. package/elements/lib/directives/form-submit.directive.d.ts +17 -17
  75. package/elements/lib/directives/input.directive.d.ts +38 -38
  76. package/elements/lib/directives/template.directive.d.ts +10 -10
  77. package/elements/lib/dropdown/dropdown.component.d.ts +21 -21
  78. package/elements/lib/elements.interfaces.d.ts +25 -25
  79. package/elements/lib/elements.module.d.ts +116 -116
  80. package/elements/lib/file-picker/file-picker.component.d.ts +49 -49
  81. package/elements/lib/form-control/form-control.component.d.ts +21 -21
  82. package/elements/lib/form-error/form-error.component.d.ts +29 -29
  83. package/elements/lib/form-group/form-group.component.d.ts +10 -10
  84. package/elements/lib/icon/icon.component.d.ts +22 -22
  85. package/elements/lib/image-picker/image-picker.component.d.ts +38 -38
  86. package/elements/lib/pipes/file-image.pipe.d.ts +13 -13
  87. package/elements/lib/pipes/file-size.pipe.d.ts +8 -8
  88. package/elements/lib/pipes/relative-time.pipe.d.ts +19 -19
  89. package/elements/lib/spinner/spinner.component.d.ts +12 -12
  90. package/elements/lib/tag/tag.component.d.ts +7 -7
  91. package/elements/public_api.d.ts +25 -25
  92. package/esm2020/auth/bravobit-bb-foundation-auth.mjs +4 -4
  93. package/esm2020/auth/lib/auth.interceptor.mjs +93 -93
  94. package/esm2020/auth/lib/auth.module.mjs +54 -54
  95. package/esm2020/auth/lib/auth.service.mjs +281 -281
  96. package/esm2020/auth/lib/auth.session.mjs +131 -131
  97. package/esm2020/auth/lib/directives/authenticated.directive.mjs +31 -31
  98. package/esm2020/auth/lib/directives/permission.directive.mjs +80 -80
  99. package/esm2020/auth/lib/directives/role.directive.mjs +37 -37
  100. package/esm2020/auth/lib/guards/anonymous.guard.mjs +34 -34
  101. package/esm2020/auth/lib/guards/authenticated.guard.mjs +35 -35
  102. package/esm2020/auth/lib/helpers/jwt.helper.mjs +69 -69
  103. package/esm2020/auth/lib/helpers/mapper.helper.mjs +35 -35
  104. package/esm2020/auth/lib/interfaces/config.interface.mjs +3 -3
  105. package/esm2020/auth/lib/interfaces/mapper.interface.mjs +2 -2
  106. package/esm2020/auth/lib/interfaces/provider.interface.mjs +2 -2
  107. package/esm2020/auth/lib/interfaces/token.interface.mjs +2 -2
  108. package/esm2020/auth/lib/permissions.service.mjs +56 -56
  109. package/esm2020/auth/lib/providers/email.provider.mjs +25 -25
  110. package/esm2020/auth/lib/providers/verify.provider.mjs +19 -19
  111. package/esm2020/auth/lib/tokens/use-authorization.token.mjs +3 -3
  112. package/esm2020/auth/public_api.mjs +19 -19
  113. package/esm2020/bravobit-bb-foundation.mjs +4 -4
  114. package/esm2020/collections/bravobit-bb-foundation-collections.mjs +4 -4
  115. package/esm2020/collections/lib/collection.mjs +100 -102
  116. package/esm2020/collections/lib/collections.module.mjs +54 -54
  117. package/esm2020/collections/lib/components/collections-pager/collections-pager.component.mjs +123 -123
  118. package/esm2020/collections/lib/components/collections-viewer/collections-viewer.component.mjs +31 -31
  119. package/esm2020/collections/lib/components/collections.directive.mjs +43 -43
  120. package/esm2020/collections/lib/interfaces/collection.interface.mjs +2 -2
  121. package/esm2020/collections/lib/providers/api-collection.provider.mjs +91 -71
  122. package/esm2020/collections/lib/providers/collection.provider.mjs +13 -13
  123. package/esm2020/collections/lib/providers/local-collection.provider.mjs +16 -16
  124. package/esm2020/collections/public_api.mjs +10 -10
  125. package/esm2020/controls/bravobit-bb-foundation-controls.mjs +4 -4
  126. package/esm2020/controls/lib/checkbox/checkbox/checkbox.component.mjs +153 -153
  127. package/esm2020/controls/lib/checkbox/checkbox-group/checkbox-group.component.mjs +61 -61
  128. package/esm2020/controls/lib/checkbox/checkbox.module.mjs +19 -19
  129. package/esm2020/controls/lib/controls.module.mjs +16 -16
  130. package/esm2020/controls/public_api.mjs +5 -5
  131. package/esm2020/dashboard/bravobit-bb-foundation-dashboard.mjs +4 -4
  132. package/esm2020/dashboard/lib/dashboard/dashboard.component.mjs +56 -56
  133. package/esm2020/dashboard/lib/dashboard-header/dashboard-header.component.mjs +30 -30
  134. package/esm2020/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +31 -31
  135. package/esm2020/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +29 -29
  136. package/esm2020/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +75 -75
  137. package/esm2020/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +99 -99
  138. package/esm2020/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +62 -62
  139. package/esm2020/dashboard/lib/dashboard.module.mjs +47 -47
  140. package/esm2020/dashboard/public_api.mjs +9 -9
  141. package/esm2020/dialog/bravobit-bb-foundation-dialog.mjs +4 -4
  142. package/esm2020/dialog/lib/dialog-actions/dialog-actions.component.mjs +12 -12
  143. package/esm2020/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +37 -37
  144. package/esm2020/dialog/lib/dialog-container/dialog-container.component.mjs +153 -153
  145. package/esm2020/dialog/lib/dialog-header/dialog-header.component.mjs +25 -25
  146. package/esm2020/dialog/lib/dialog-link/dialog-link.component.mjs +11 -11
  147. package/esm2020/dialog/lib/dialog-modal/dialog-modal.component.mjs +46 -46
  148. package/esm2020/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +134 -134
  149. package/esm2020/dialog/lib/dialog.injector.mjs +18 -18
  150. package/esm2020/dialog/lib/dialog.insertion.mjs +16 -16
  151. package/esm2020/dialog/lib/dialog.interfaces.mjs +3 -3
  152. package/esm2020/dialog/lib/dialog.module.mjs +68 -68
  153. package/esm2020/dialog/lib/dialog.ref.mjs +22 -22
  154. package/esm2020/dialog/lib/dialog.service.mjs +77 -77
  155. package/esm2020/dialog/public_api.mjs +10 -10
  156. package/esm2020/elements/bravobit-bb-foundation-elements.mjs +4 -4
  157. package/esm2020/elements/lib/avatar/avatar.component.mjs +145 -145
  158. package/esm2020/elements/lib/button/button.component.mjs +61 -61
  159. package/esm2020/elements/lib/checkbox/checkbox.component.mjs +73 -73
  160. package/esm2020/elements/lib/date-picker/date-picker.component.mjs +304 -304
  161. package/esm2020/elements/lib/directives/addon.directive.mjs +29 -29
  162. package/esm2020/elements/lib/directives/autosize.directive.mjs +72 -72
  163. package/esm2020/elements/lib/directives/focus-trap.directive.mjs +77 -77
  164. package/esm2020/elements/lib/directives/focus.directive.mjs +39 -39
  165. package/esm2020/elements/lib/directives/form-submit.directive.mjs +50 -50
  166. package/esm2020/elements/lib/directives/input.directive.mjs +136 -136
  167. package/esm2020/elements/lib/directives/template.directive.mjs +28 -28
  168. package/esm2020/elements/lib/dropdown/dropdown.component.mjs +100 -100
  169. package/esm2020/elements/lib/elements.interfaces.mjs +4 -4
  170. package/esm2020/elements/lib/elements.module.mjs +177 -177
  171. package/esm2020/elements/lib/file-picker/file-picker.component.mjs +236 -236
  172. package/esm2020/elements/lib/form-control/form-control.component.mjs +49 -49
  173. package/esm2020/elements/lib/form-error/form-error.component.mjs +108 -108
  174. package/esm2020/elements/lib/form-group/form-group.component.mjs +18 -18
  175. package/esm2020/elements/lib/icon/icon.component.mjs +102 -102
  176. package/esm2020/elements/lib/image-picker/image-picker.component.mjs +106 -106
  177. package/esm2020/elements/lib/pipes/file-image.pipe.mjs +42 -42
  178. package/esm2020/elements/lib/pipes/file-size.pipe.mjs +28 -28
  179. package/esm2020/elements/lib/pipes/relative-time.pipe.mjs +94 -94
  180. package/esm2020/elements/lib/spinner/spinner.component.mjs +25 -25
  181. package/esm2020/elements/lib/tag/tag.component.mjs +18 -18
  182. package/esm2020/elements/public_api.mjs +26 -26
  183. package/esm2020/http/bravobit-bb-foundation-http.mjs +4 -4
  184. package/esm2020/http/lib/classes/http.config.mjs +29 -29
  185. package/esm2020/http/lib/classes/http.error.mjs +20 -20
  186. package/esm2020/http/lib/http.interfaces.mjs +2 -2
  187. package/esm2020/http/lib/http.module.mjs +43 -43
  188. package/esm2020/http/lib/interceptors/base-url.interceptor.mjs +50 -50
  189. package/esm2020/http/lib/interceptors/error.interceptor.mjs +32 -32
  190. package/esm2020/http/public_api.mjs +7 -7
  191. package/esm2020/lib/core/miscellaneous/regex.mjs +5 -5
  192. package/esm2020/lib/core/miscellaneous/validator.mjs +85 -85
  193. package/esm2020/lib/core/mixins/can-disable.mjs +16 -16
  194. package/esm2020/lib/core/mixins/can-hide-errors.mjs +16 -16
  195. package/esm2020/lib/core/mixins/can-load.mjs +16 -16
  196. package/esm2020/lib/core/mixins/constructor.mjs +2 -2
  197. package/esm2020/lib/core/mixins/has-error.mjs +16 -16
  198. package/esm2020/lib/core/mixins/is-focused.mjs +16 -16
  199. package/esm2020/lib/core/mixins/is-grouped.mjs +16 -16
  200. package/esm2020/lib/core/mixins/is-readonly.mjs +16 -16
  201. package/esm2020/lib/core/mixins/is-required.mjs +16 -16
  202. package/esm2020/lib/core/services/clipboard.service.mjs +70 -70
  203. package/esm2020/lib/core/services/exif.service.mjs +163 -163
  204. package/esm2020/lib/core/services/file-loader.service.mjs +87 -87
  205. package/esm2020/lib/core/services/image-converter.service.mjs +123 -123
  206. package/esm2020/lib/core/services/languages.service.mjs +74 -74
  207. package/esm2020/lib/core/services/network.service.mjs +55 -55
  208. package/esm2020/lib/core/services/patch.service.mjs +63 -63
  209. package/esm2020/lib/core/services/platform.service.mjs +42 -42
  210. package/esm2020/lib/core/tokens/accept-language.token.mjs +3 -3
  211. package/esm2020/lib/core/tokens/base-url.token.mjs +3 -3
  212. package/esm2020/lib/core/tokens/cookie.token.mjs +3 -3
  213. package/esm2020/lib/core/tokens/location.token.mjs +6 -6
  214. package/esm2020/lib/core/tokens/navigator.token.mjs +6 -6
  215. package/esm2020/lib/core/tokens/window.token.mjs +12 -12
  216. package/esm2020/localize/bravobit-bb-foundation-localize.mjs +4 -4
  217. package/esm2020/localize/lib/functions/date.function.mjs +18 -18
  218. package/esm2020/localize/lib/functions/lowercase.function.mjs +13 -13
  219. package/esm2020/localize/lib/functions/uppercase.function.mjs +13 -13
  220. package/esm2020/localize/lib/handlers/missing.handler.mjs +15 -15
  221. package/esm2020/localize/lib/interfaces/config.interfaces.mjs +7 -7
  222. package/esm2020/localize/lib/interfaces/functions.interfaces.mjs +8 -8
  223. package/esm2020/localize/lib/interfaces/handlers.interfaces.mjs +2 -2
  224. package/esm2020/localize/lib/interfaces/options.interfaces.mjs +6 -6
  225. package/esm2020/localize/lib/localizations/dutch.localization.mjs +45 -45
  226. package/esm2020/localize/lib/localizations/english.localization.mjs +45 -45
  227. package/esm2020/localize/lib/localize.dictionary.mjs +26 -26
  228. package/esm2020/localize/lib/localize.module.mjs +71 -71
  229. package/esm2020/localize/lib/localize.pipe.mjs +49 -49
  230. package/esm2020/localize/lib/localize.service.mjs +207 -207
  231. package/esm2020/localize/lib/views/localize-string/localize-string.component.mjs +88 -88
  232. package/esm2020/localize/lib/views/localize-template-or-string.directive.mjs +28 -28
  233. package/esm2020/localize/lib/views/localize-template.directive.mjs +21 -21
  234. package/esm2020/localize/public_api.mjs +17 -17
  235. package/esm2020/masking/bravobit-bb-foundation-masking.mjs +4 -4
  236. package/esm2020/masking/lib/directives/currency-mask.directive.mjs +35 -0
  237. package/esm2020/masking/lib/directives/date-mask.directive.mjs +35 -0
  238. package/esm2020/masking/lib/directives/input-mask.directive.mjs +118 -0
  239. package/esm2020/masking/lib/input-mask.interface.mjs +2 -2
  240. package/esm2020/masking/lib/masking.module.mjs +30 -16
  241. package/esm2020/masking/lib/masking.service.mjs +103 -94
  242. package/esm2020/masking/public_api.mjs +7 -5
  243. package/esm2020/notifications/bravobit-bb-foundation-notifications.mjs +4 -4
  244. package/esm2020/notifications/lib/notifications-item/notifications-item.component.mjs +100 -100
  245. package/esm2020/notifications/lib/notifications-list/notifications-list.component.mjs +47 -47
  246. package/esm2020/notifications/lib/notifications.animations.mjs +28 -28
  247. package/esm2020/notifications/lib/notifications.injector.mjs +18 -18
  248. package/esm2020/notifications/lib/notifications.interfaces.mjs +20 -20
  249. package/esm2020/notifications/lib/notifications.module.mjs +30 -30
  250. package/esm2020/notifications/lib/notifications.service.mjs +145 -145
  251. package/esm2020/notifications/public_api.mjs +4 -4
  252. package/esm2020/public_api.mjs +29 -29
  253. package/esm2020/recaptcha/bravobit-bb-foundation-recaptcha.mjs +4 -4
  254. package/esm2020/recaptcha/lib/recaptcha/recaptcha.component.mjs +185 -185
  255. package/esm2020/recaptcha/lib/recaptcha-loader.service.mjs +90 -90
  256. package/esm2020/recaptcha/lib/recaptcha.interface.mjs +3 -3
  257. package/esm2020/recaptcha/lib/recaptcha.module.mjs +27 -27
  258. package/esm2020/recaptcha/public_api.mjs +5 -5
  259. package/esm2020/rxjs/bravobit-bb-foundation-rxjs.mjs +4 -4
  260. package/esm2020/rxjs/lib/observables/get-control-value.observable.mjs +6 -0
  261. package/esm2020/rxjs/lib/operators/combine-latest-map.operator.mjs +10 -10
  262. package/esm2020/rxjs/lib/operators/filter-nil.operator.mjs +5 -5
  263. package/esm2020/rxjs/public_api.mjs +4 -3
  264. package/esm2020/storage/bravobit-bb-foundation-storage.mjs +4 -4
  265. package/esm2020/storage/lib/interfaces/attributes.interface.mjs +2 -2
  266. package/esm2020/storage/lib/interfaces/memory.interface.mjs +2 -2
  267. package/esm2020/storage/lib/interfaces/strategy.interface.mjs +2 -2
  268. package/esm2020/storage/lib/storage.service.mjs +109 -109
  269. package/esm2020/storage/lib/strategies/cookie-storage.strategy.mjs +142 -142
  270. package/esm2020/storage/lib/strategies/memory-storage.strategy.mjs +56 -56
  271. package/esm2020/storage/lib/strategies/polyfill-storage.strategy.mjs +102 -102
  272. package/esm2020/storage/public_api.mjs +8 -8
  273. package/esm2020/table/bravobit-bb-foundation-table.mjs +4 -4
  274. package/esm2020/table/lib/components/table/table.component.mjs +191 -191
  275. package/esm2020/table/lib/components/table-cell/table-cell.component.mjs +11 -11
  276. package/esm2020/table/lib/components/table-header-cell/table-header-cell.component.mjs +131 -131
  277. package/esm2020/table/lib/components/table-pager/table-pager.component.mjs +136 -136
  278. package/esm2020/table/lib/data/datasource.data.mjs +32 -32
  279. package/esm2020/table/lib/data/generic.data.mjs +72 -72
  280. package/esm2020/table/lib/interfaces/datasource.interface.mjs +2 -2
  281. package/esm2020/table/lib/interfaces/table.interfaces.mjs +2 -2
  282. package/esm2020/table/lib/table.module.mjs +42 -42
  283. package/esm2020/table/public_api.mjs +10 -10
  284. package/esm2020/theming/bravobit-bb-foundation-theming.mjs +4 -4
  285. package/esm2020/theming/lib/themes/checkbox-group.theme.mjs +2 -2
  286. package/esm2020/theming/lib/themes/checkbox.theme.mjs +2 -2
  287. package/esm2020/theming/lib/themes/theme.mjs +34 -0
  288. package/esm2020/theming/lib/theming.interface.mjs +3 -3
  289. package/esm2020/theming/lib/theming.module.mjs +38 -38
  290. package/esm2020/theming/lib/theming.service.mjs +77 -100
  291. package/esm2020/theming/public_api.mjs +7 -4
  292. package/fesm2015/bravobit-bb-foundation-auth.mjs +930 -930
  293. package/fesm2015/bravobit-bb-foundation-auth.mjs.map +1 -1
  294. package/fesm2015/bravobit-bb-foundation-collections.mjs +443 -424
  295. package/fesm2015/bravobit-bb-foundation-collections.mjs.map +1 -1
  296. package/fesm2015/bravobit-bb-foundation-controls.mjs +229 -229
  297. package/fesm2015/bravobit-bb-foundation-controls.mjs.map +1 -1
  298. package/fesm2015/bravobit-bb-foundation-dashboard.mjs +382 -382
  299. package/fesm2015/bravobit-bb-foundation-dashboard.mjs.map +1 -1
  300. package/fesm2015/bravobit-bb-foundation-dialog.mjs +540 -540
  301. package/fesm2015/bravobit-bb-foundation-dialog.mjs.map +1 -1
  302. package/fesm2015/bravobit-bb-foundation-elements.mjs +1970 -1970
  303. package/fesm2015/bravobit-bb-foundation-elements.mjs.map +1 -1
  304. package/fesm2015/bravobit-bb-foundation-http.mjs +156 -156
  305. package/fesm2015/bravobit-bb-foundation-http.mjs.map +1 -1
  306. package/fesm2015/bravobit-bb-foundation-localize.mjs +608 -608
  307. package/fesm2015/bravobit-bb-foundation-localize.mjs.map +1 -1
  308. package/fesm2015/bravobit-bb-foundation-masking.mjs +313 -215
  309. package/fesm2015/bravobit-bb-foundation-masking.mjs.map +1 -1
  310. package/fesm2015/bravobit-bb-foundation-notifications.mjs +348 -348
  311. package/fesm2015/bravobit-bb-foundation-notifications.mjs.map +1 -1
  312. package/fesm2015/bravobit-bb-foundation-recaptcha.mjs +290 -290
  313. package/fesm2015/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
  314. package/fesm2015/bravobit-bb-foundation-rxjs.mjs +14 -10
  315. package/fesm2015/bravobit-bb-foundation-rxjs.mjs.map +1 -1
  316. package/fesm2015/bravobit-bb-foundation-storage.mjs +401 -401
  317. package/fesm2015/bravobit-bb-foundation-storage.mjs.map +1 -1
  318. package/fesm2015/bravobit-bb-foundation-table.mjs +571 -571
  319. package/fesm2015/bravobit-bb-foundation-table.mjs.map +1 -1
  320. package/fesm2015/bravobit-bb-foundation-theming.mjs +151 -140
  321. package/fesm2015/bravobit-bb-foundation-theming.mjs.map +1 -1
  322. package/fesm2015/bravobit-bb-foundation.mjs +859 -859
  323. package/fesm2015/bravobit-bb-foundation.mjs.map +1 -1
  324. package/fesm2020/bravobit-bb-foundation-auth.mjs +882 -882
  325. package/fesm2020/bravobit-bb-foundation-auth.mjs.map +1 -1
  326. package/fesm2020/bravobit-bb-foundation-collections.mjs +432 -414
  327. package/fesm2020/bravobit-bb-foundation-collections.mjs.map +1 -1
  328. package/fesm2020/bravobit-bb-foundation-controls.mjs +227 -227
  329. package/fesm2020/bravobit-bb-foundation-controls.mjs.map +1 -1
  330. package/fesm2020/bravobit-bb-foundation-dashboard.mjs +370 -370
  331. package/fesm2020/bravobit-bb-foundation-dashboard.mjs.map +1 -1
  332. package/fesm2020/bravobit-bb-foundation-dialog.mjs +539 -539
  333. package/fesm2020/bravobit-bb-foundation-dialog.mjs.map +1 -1
  334. package/fesm2020/bravobit-bb-foundation-elements.mjs +1927 -1927
  335. package/fesm2020/bravobit-bb-foundation-elements.mjs.map +1 -1
  336. package/fesm2020/bravobit-bb-foundation-http.mjs +148 -148
  337. package/fesm2020/bravobit-bb-foundation-http.mjs.map +1 -1
  338. package/fesm2020/bravobit-bb-foundation-localize.mjs +587 -587
  339. package/fesm2020/bravobit-bb-foundation-localize.mjs.map +1 -1
  340. package/fesm2020/bravobit-bb-foundation-masking.mjs +295 -204
  341. package/fesm2020/bravobit-bb-foundation-masking.mjs.map +1 -1
  342. package/fesm2020/bravobit-bb-foundation-notifications.mjs +346 -346
  343. package/fesm2020/bravobit-bb-foundation-notifications.mjs.map +1 -1
  344. package/fesm2020/bravobit-bb-foundation-recaptcha.mjs +280 -280
  345. package/fesm2020/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
  346. package/fesm2020/bravobit-bb-foundation-rxjs.mjs +17 -13
  347. package/fesm2020/bravobit-bb-foundation-rxjs.mjs.map +1 -1
  348. package/fesm2020/bravobit-bb-foundation-storage.mjs +396 -396
  349. package/fesm2020/bravobit-bb-foundation-storage.mjs.map +1 -1
  350. package/fesm2020/bravobit-bb-foundation-table.mjs +560 -560
  351. package/fesm2020/bravobit-bb-foundation-table.mjs.map +1 -1
  352. package/fesm2020/bravobit-bb-foundation-theming.mjs +141 -130
  353. package/fesm2020/bravobit-bb-foundation-theming.mjs.map +1 -1
  354. package/fesm2020/bravobit-bb-foundation.mjs +831 -831
  355. package/fesm2020/bravobit-bb-foundation.mjs.map +1 -1
  356. package/http/index.d.ts +5 -5
  357. package/http/lib/classes/http.config.d.ts +9 -9
  358. package/http/lib/classes/http.error.d.ts +7 -7
  359. package/http/lib/http.interfaces.d.ts +12 -12
  360. package/http/lib/http.module.d.ts +15 -15
  361. package/http/lib/interceptors/base-url.interceptor.d.ts +15 -15
  362. package/http/lib/interceptors/error.interceptor.d.ts +11 -11
  363. package/http/public_api.d.ts +6 -6
  364. package/index.d.ts +5 -5
  365. package/lib/core/miscellaneous/regex.d.ts +4 -4
  366. package/lib/core/miscellaneous/validator.d.ts +13 -13
  367. package/lib/core/mixins/can-disable.d.ts +6 -6
  368. package/lib/core/mixins/can-hide-errors.d.ts +6 -6
  369. package/lib/core/mixins/can-load.d.ts +6 -6
  370. package/lib/core/mixins/constructor.d.ts +1 -1
  371. package/lib/core/mixins/has-error.d.ts +6 -6
  372. package/lib/core/mixins/is-focused.d.ts +6 -6
  373. package/lib/core/mixins/is-grouped.d.ts +6 -6
  374. package/lib/core/mixins/is-readonly.d.ts +6 -6
  375. package/lib/core/mixins/is-required.d.ts +6 -6
  376. package/lib/core/services/clipboard.service.d.ts +18 -18
  377. package/lib/core/services/exif.service.d.ts +15 -15
  378. package/lib/core/services/file-loader.service.d.ts +13 -13
  379. package/lib/core/services/image-converter.service.d.ts +21 -21
  380. package/lib/core/services/languages.service.d.ts +16 -16
  381. package/lib/core/services/network.service.d.ts +14 -14
  382. package/lib/core/services/patch.service.d.ts +16 -16
  383. package/lib/core/services/platform.service.d.ts +18 -18
  384. package/lib/core/tokens/accept-language.token.d.ts +2 -2
  385. package/lib/core/tokens/base-url.token.d.ts +2 -2
  386. package/lib/core/tokens/cookie.token.d.ts +2 -2
  387. package/lib/core/tokens/location.token.d.ts +2 -2
  388. package/lib/core/tokens/navigator.token.d.ts +2 -2
  389. package/lib/core/tokens/window.token.d.ts +2 -2
  390. package/localize/index.d.ts +5 -5
  391. package/localize/lib/functions/date.function.d.ts +5 -5
  392. package/localize/lib/functions/lowercase.function.d.ts +5 -5
  393. package/localize/lib/functions/uppercase.function.d.ts +5 -5
  394. package/localize/lib/handlers/missing.handler.d.ts +6 -6
  395. package/localize/lib/interfaces/config.interfaces.d.ts +18 -18
  396. package/localize/lib/interfaces/functions.interfaces.d.ts +9 -9
  397. package/localize/lib/interfaces/handlers.interfaces.d.ts +6 -6
  398. package/localize/lib/interfaces/options.interfaces.d.ts +10 -10
  399. package/localize/lib/localizations/dutch.localization.d.ts +44 -44
  400. package/localize/lib/localizations/english.localization.d.ts +44 -44
  401. package/localize/lib/localize.dictionary.d.ts +7 -7
  402. package/localize/lib/localize.module.d.ts +17 -17
  403. package/localize/lib/localize.pipe.d.ts +12 -12
  404. package/localize/lib/localize.service.d.ts +40 -40
  405. package/localize/lib/views/localize-string/localize-string.component.d.ts +23 -23
  406. package/localize/lib/views/localize-template-or-string.directive.d.ts +10 -10
  407. package/localize/lib/views/localize-template.directive.d.ts +9 -9
  408. package/localize/public_api.d.ts +16 -16
  409. package/masking/index.d.ts +5 -5
  410. package/masking/lib/directives/currency-mask.directive.d.ts +17 -0
  411. package/masking/lib/directives/date-mask.directive.d.ts +17 -0
  412. package/masking/lib/{input-mask.directive.d.ts → directives/input-mask.directive.d.ts} +38 -36
  413. package/masking/lib/input-mask.interface.d.ts +19 -20
  414. package/masking/lib/masking.module.d.ts +9 -7
  415. package/masking/lib/masking.service.d.ts +12 -12
  416. package/masking/public_api.d.ts +6 -4
  417. package/notifications/index.d.ts +5 -5
  418. package/notifications/lib/notifications-item/notifications-item.component.d.ts +34 -34
  419. package/notifications/lib/notifications-list/notifications-list.component.d.ts +16 -16
  420. package/notifications/lib/notifications.animations.d.ts +1 -1
  421. package/notifications/lib/notifications.injector.d.ts +8 -8
  422. package/notifications/lib/notifications.interfaces.d.ts +49 -49
  423. package/notifications/lib/notifications.module.d.ts +13 -13
  424. package/notifications/lib/notifications.service.d.ts +34 -34
  425. package/notifications/public_api.d.ts +3 -3
  426. package/package.json +1 -1
  427. package/public_api.d.ts +25 -25
  428. package/recaptcha/index.d.ts +5 -5
  429. package/recaptcha/lib/recaptcha/recaptcha.component.d.ts +47 -47
  430. package/recaptcha/lib/recaptcha-loader.service.d.ts +22 -22
  431. package/recaptcha/lib/recaptcha.interface.d.ts +14 -14
  432. package/recaptcha/lib/recaptcha.module.d.ts +10 -10
  433. package/recaptcha/public_api.d.ts +4 -4
  434. package/rxjs/index.d.ts +5 -5
  435. package/rxjs/lib/observables/get-control-value.observable.d.ts +3 -0
  436. package/rxjs/lib/operators/combine-latest-map.operator.d.ts +8 -8
  437. package/rxjs/lib/operators/filter-nil.operator.d.ts +1 -1
  438. package/rxjs/public_api.d.ts +3 -2
  439. package/storage/index.d.ts +5 -5
  440. package/storage/lib/interfaces/attributes.interface.d.ts +13 -13
  441. package/storage/lib/interfaces/memory.interface.d.ts +7 -7
  442. package/storage/lib/interfaces/strategy.interface.d.ts +17 -17
  443. package/storage/lib/storage.service.d.ts +26 -26
  444. package/storage/lib/strategies/cookie-storage.strategy.d.ts +20 -20
  445. package/storage/lib/strategies/memory-storage.strategy.d.ts +11 -11
  446. package/storage/lib/strategies/polyfill-storage.strategy.d.ts +15 -15
  447. package/storage/public_api.d.ts +7 -7
  448. package/table/index.d.ts +5 -5
  449. package/table/lib/components/table/table.component.d.ts +56 -56
  450. package/table/lib/components/table-cell/table-cell.component.d.ts +5 -5
  451. package/table/lib/components/table-header-cell/table-header-cell.component.d.ts +29 -29
  452. package/table/lib/components/table-pager/table-pager.component.d.ts +41 -41
  453. package/table/lib/data/datasource.data.d.ts +14 -14
  454. package/table/lib/data/generic.data.d.ts +23 -23
  455. package/table/lib/interfaces/datasource.interface.d.ts +17 -17
  456. package/table/lib/interfaces/table.interfaces.d.ts +1 -1
  457. package/table/lib/table.module.d.ts +14 -14
  458. package/table/public_api.d.ts +9 -9
  459. package/theming/index.d.ts +5 -5
  460. package/theming/lib/themes/checkbox-group.theme.d.ts +5 -5
  461. package/theming/lib/themes/checkbox.theme.d.ts +19 -19
  462. package/theming/lib/themes/theme.d.ts +12 -0
  463. package/theming/lib/theming.interface.d.ts +15 -14
  464. package/theming/lib/theming.module.d.ts +13 -13
  465. package/theming/lib/theming.service.d.ts +22 -24
  466. package/theming/public_api.d.ts +6 -3
  467. package/esm2020/masking/lib/input-mask.directive.mjs +0 -110
@@ -1,23 +1,23 @@
1
- import { Observable } from 'rxjs';
2
- import { DataSource, DataSourceRequest } from './datasource.data';
3
- import { HttpClient } from '@angular/common/http';
4
- export declare class GenericDataSource<T = any> extends DataSource<T> {
5
- private readonly _httpClient;
6
- private readonly _endpoint$;
7
- private _items$;
8
- private _fn;
9
- constructor(httpClient: HttpClient, endpoint: Observable<string> | string);
10
- append(item: Observable<{
11
- [key: string]: string;
12
- } | null>): this;
13
- data(fn: (data: T[]) => T[]): this;
14
- handle(request: DataSourceRequest): Observable<{
15
- data: T[];
16
- pageSize: number;
17
- pageNumber: number;
18
- totalPages: number;
19
- totalEntries: number;
20
- }>;
21
- private formatResponse;
22
- private formatParams;
23
- }
1
+ import { Observable } from 'rxjs';
2
+ import { DataSource, DataSourceRequest } from './datasource.data';
3
+ import { HttpClient } from '@angular/common/http';
4
+ export declare class GenericDataSource<T = any> extends DataSource<T> {
5
+ private readonly _httpClient;
6
+ private readonly _endpoint$;
7
+ private _items$;
8
+ private _fn;
9
+ constructor(httpClient: HttpClient, endpoint: Observable<string> | string);
10
+ append(item: Observable<{
11
+ [key: string]: string;
12
+ } | null>): this;
13
+ data(fn: (data: T[]) => T[]): this;
14
+ handle(request: DataSourceRequest): Observable<{
15
+ data: T[];
16
+ pageSize: number;
17
+ pageNumber: number;
18
+ totalPages: number;
19
+ totalEntries: number;
20
+ }>;
21
+ private formatResponse;
22
+ private formatParams;
23
+ }
@@ -1,17 +1,17 @@
1
- export interface DataSourcePageRequest {
2
- pageNumber: number;
3
- pageSize: number;
4
- query: string | null;
5
- queryFields: string[];
6
- sort: {
7
- name: string;
8
- direction: 'asc' | 'desc';
9
- }[];
10
- }
11
- export interface DataSourcePageResponse<T = any> {
12
- totalPages: number;
13
- totalEntries: number;
14
- pageSize: number;
15
- pageNumber: number;
16
- data: T[];
17
- }
1
+ export interface DataSourcePageRequest {
2
+ pageNumber: number;
3
+ pageSize: number;
4
+ query: string | null;
5
+ queryFields: string[];
6
+ sort: {
7
+ name: string;
8
+ direction: 'asc' | 'desc';
9
+ }[];
10
+ }
11
+ export interface DataSourcePageResponse<T = any> {
12
+ totalPages: number;
13
+ totalEntries: number;
14
+ pageSize: number;
15
+ pageNumber: number;
16
+ data: T[];
17
+ }
@@ -1 +1 @@
1
- export declare type TableColumnSortStrategy = 'asc' | 'desc' | 'none';
1
+ export declare type TableColumnSortStrategy = 'asc' | 'desc' | 'none';
@@ -1,14 +1,14 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./components/table/table.component";
3
- import * as i2 from "./components/table-header-cell/table-header-cell.component";
4
- import * as i3 from "./components/table-cell/table-cell.component";
5
- import * as i4 from "./components/table-pager/table-pager.component";
6
- import * as i5 from "@angular/common";
7
- import * as i6 from "@angular/forms";
8
- import * as i7 from "@bravobit/bb-foundation/elements";
9
- import * as i8 from "@bravobit/bb-foundation/localize";
10
- export declare class TableModule {
11
- static ɵfac: i0.ɵɵFactoryDeclaration<TableModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<TableModule, [typeof i1.BbTable, typeof i1.BbTableColumnDef, typeof i1.BbTableRowDef, typeof i2.BbTableHeaderCell, typeof i3.BbTableCell, typeof i4.BbTablePager], [typeof i5.CommonModule, typeof i6.ReactiveFormsModule, typeof i7.ElementsModule, typeof i8.LocalizeModule], [typeof i1.BbTable, typeof i1.BbTableColumnDef, typeof i1.BbTableRowDef, typeof i2.BbTableHeaderCell, typeof i3.BbTableCell, typeof i4.BbTablePager]>;
13
- static ɵinj: i0.ɵɵInjectorDeclaration<TableModule>;
14
- }
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./components/table/table.component";
3
+ import * as i2 from "./components/table-header-cell/table-header-cell.component";
4
+ import * as i3 from "./components/table-cell/table-cell.component";
5
+ import * as i4 from "./components/table-pager/table-pager.component";
6
+ import * as i5 from "@angular/common";
7
+ import * as i6 from "@angular/forms";
8
+ import * as i7 from "@bravobit/bb-foundation/elements";
9
+ import * as i8 from "@bravobit/bb-foundation/localize";
10
+ export declare class TableModule {
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableModule, never>;
12
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TableModule, [typeof i1.BbTable, typeof i1.BbTableColumnDef, typeof i1.BbTableRowDef, typeof i2.BbTableHeaderCell, typeof i3.BbTableCell, typeof i4.BbTablePager], [typeof i5.CommonModule, typeof i6.ReactiveFormsModule, typeof i7.ElementsModule, typeof i8.LocalizeModule], [typeof i1.BbTable, typeof i1.BbTableColumnDef, typeof i1.BbTableRowDef, typeof i2.BbTableHeaderCell, typeof i3.BbTableCell, typeof i4.BbTablePager]>;
13
+ static ɵinj: i0.ɵɵInjectorDeclaration<TableModule>;
14
+ }
@@ -1,9 +1,9 @@
1
- export * from './lib/interfaces/table.interfaces';
2
- export * from './lib/interfaces/datasource.interface';
3
- export * from './lib/data/datasource.data';
4
- export * from './lib/data/generic.data';
5
- export * from './lib/components/table/table.component';
6
- export * from './lib/components/table-cell/table-cell.component';
7
- export * from './lib/components/table-header-cell/table-header-cell.component';
8
- export * from './lib/components/table-pager/table-pager.component';
9
- export * from './lib/table.module';
1
+ export * from './lib/interfaces/table.interfaces';
2
+ export * from './lib/interfaces/datasource.interface';
3
+ export * from './lib/data/datasource.data';
4
+ export * from './lib/data/generic.data';
5
+ export * from './lib/components/table/table.component';
6
+ export * from './lib/components/table-cell/table-cell.component';
7
+ export * from './lib/components/table-header-cell/table-header-cell.component';
8
+ export * from './lib/components/table-pager/table-pager.component';
9
+ export * from './lib/table.module';
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@bravobit/bb-foundation/theming" />
5
- export * from './public_api';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@bravobit/bb-foundation/theming" />
5
+ export * from './public_api';
@@ -1,5 +1,5 @@
1
- export interface CheckboxGroupTheme {
2
- labelColor: string;
3
- labelFontSize: string;
4
- labelFontWeight: string;
5
- }
1
+ export interface CheckboxGroupTheme {
2
+ labelColor: string;
3
+ labelFontSize: string;
4
+ labelFontWeight: string;
5
+ }
@@ -1,19 +1,19 @@
1
- export interface CheckboxTheme {
2
- accentColor: string;
3
- disabledColor: string;
4
- size: string;
5
- borderColor: string;
6
- borderThickness: string;
7
- borderRadius: string;
8
- outlineColor: string;
9
- outlineThickness: string;
10
- outlineRadius: string;
11
- checkColor: string;
12
- checkThickness: string;
13
- checkSize: string;
14
- labelColor: string;
15
- labelFontSize: string;
16
- labelFontWeight: string;
17
- labelLineHeight: string;
18
- labelOffset: string;
19
- }
1
+ export interface CheckboxTheme {
2
+ accentColor: string;
3
+ disabledColor: string;
4
+ size: string;
5
+ borderColor: string;
6
+ borderThickness: string;
7
+ borderRadius: string;
8
+ outlineColor: string;
9
+ outlineThickness: string;
10
+ outlineRadius: string;
11
+ checkColor: string;
12
+ checkThickness: string;
13
+ checkSize: string;
14
+ labelColor: string;
15
+ labelFontSize: string;
16
+ labelFontWeight: string;
17
+ labelLineHeight: string;
18
+ labelOffset: string;
19
+ }
@@ -0,0 +1,12 @@
1
+ import { ThemeData } from '../theming.interface';
2
+ export declare class Theme {
3
+ private _name;
4
+ private _data?;
5
+ private _parsed;
6
+ constructor(_name: string, _data?: ThemeData);
7
+ get name(): string;
8
+ get data(): Record<string, string>;
9
+ update(data: ThemeData): this;
10
+ protected parseData(data: object, scope?: string | null): any;
11
+ protected getFormattedToken(key: string, scope?: string | null): string;
12
+ }
@@ -1,14 +1,15 @@
1
- import { CheckboxGroupTheme } from './themes/checkbox-group.theme';
2
- import { CheckboxTheme } from './themes/checkbox.theme';
3
- export declare class ThemingOptions {
4
- themes: Theme[];
5
- }
6
- export interface Theme {
7
- name: string;
8
- accentColor?: string;
9
- checkbox?: Partial<CheckboxTheme>;
10
- checkboxGroup?: Partial<CheckboxGroupTheme>;
11
- custom?: {
12
- [key: string]: string;
13
- };
14
- }
1
+ import { CheckboxGroupTheme } from './themes/checkbox-group.theme';
2
+ import { CheckboxTheme } from './themes/checkbox.theme';
3
+ import { Theme } from './themes/theme';
4
+ export declare class ThemingOptions {
5
+ themes: Theme[];
6
+ }
7
+ export declare type ThemeDataRecord = Record<string, string> | string;
8
+ export interface ThemeData {
9
+ accentColor?: string;
10
+ checkbox?: Partial<CheckboxTheme>;
11
+ checkboxGroup?: Partial<CheckboxGroupTheme>;
12
+ custom?: {
13
+ [key: string]: ThemeDataRecord;
14
+ };
15
+ }
@@ -1,13 +1,13 @@
1
- import { ModuleWithProviders } from '@angular/core';
2
- import { ThemingOptions } from './theming.interface';
3
- import { Theming } from './theming.service';
4
- import * as i0 from "@angular/core";
5
- export declare class ThemingModule {
6
- private _parent?;
7
- constructor(_parent?: ThemingModule);
8
- static forRoot(options: ThemingOptions): ModuleWithProviders<ThemingModule>;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<ThemingModule, [{ optional: true; skipSelf: true; }]>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<ThemingModule, never, never, never>;
11
- static ɵinj: i0.ɵɵInjectorDeclaration<ThemingModule>;
12
- }
13
- export declare function initializeTheme(_: Theming): () => {};
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import { ThemingOptions } from './theming.interface';
3
+ import { Theming } from './theming.service';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ThemingModule {
6
+ private _parent?;
7
+ constructor(_parent?: ThemingModule);
8
+ static forRoot(options: ThemingOptions): ModuleWithProviders<ThemingModule>;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<ThemingModule, [{ optional: true; skipSelf: true; }]>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ThemingModule, never, never, never>;
11
+ static ɵinj: i0.ɵɵInjectorDeclaration<ThemingModule>;
12
+ }
13
+ export declare function initializeTheme(_: Theming): () => {};
@@ -1,24 +1,22 @@
1
- import { RendererFactory2 } from '@angular/core';
2
- import { Theme, ThemingOptions } from './theming.interface';
3
- import * as i0 from "@angular/core";
4
- export declare class Theming {
5
- private _options;
6
- private _rendererFactory;
7
- private _document;
8
- private readonly _attribute;
9
- private readonly _renderer;
10
- private _currentTheme;
11
- constructor(_options: ThemingOptions, _rendererFactory: RendererFactory2, _document: Document);
12
- get all(): Theme[];
13
- get current(): Theme;
14
- set(name: string): void;
15
- private setCssVariables;
16
- private getCssVariables;
17
- private getThemeContents;
18
- private formatThemeData;
19
- private setFirstTheme;
20
- private getFormattedToken;
21
- private extractThemeProperties;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<Theming, [null, null, { optional: true; }]>;
23
- static ɵprov: i0.ɵɵInjectableDeclaration<Theming>;
24
- }
1
+ import { RendererFactory2 } from '@angular/core';
2
+ import { ThemingOptions } from './theming.interface';
3
+ import { Theme } from './themes/theme';
4
+ import * as i0 from "@angular/core";
5
+ export declare class Theming {
6
+ private _options;
7
+ private _rendererFactory;
8
+ private _document;
9
+ private readonly _attribute;
10
+ private readonly _renderer;
11
+ private _currentTheme;
12
+ constructor(_options: ThemingOptions, _rendererFactory: RendererFactory2, _document: Document);
13
+ get all(): Theme[];
14
+ get current(): Theme;
15
+ set(name: string): void;
16
+ private setCssVariables;
17
+ private getCssVariables;
18
+ private getThemeContents;
19
+ private setFirstTheme;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<Theming, [null, null, { optional: true; }]>;
21
+ static ɵprov: i0.ɵɵInjectableDeclaration<Theming>;
22
+ }
@@ -1,3 +1,6 @@
1
- export * from './lib/theming.interface';
2
- export * from './lib/theming.service';
3
- export * from './lib/theming.module';
1
+ export * from './lib/theming.interface';
2
+ export * from './lib/theming.service';
3
+ export * from './lib/theming.module';
4
+ export * from './lib/themes/checkbox.theme';
5
+ export * from './lib/themes/checkbox-group.theme';
6
+ export * from './lib/themes/theme';
@@ -1,110 +0,0 @@
1
- import { Directive, HostListener, Input, Optional, Self } from '@angular/core';
2
- import _Inputmask from 'inputmask';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/cdk/platform";
5
- import * as i2 from "@angular/forms";
6
- const InputmaskConstructor = _Inputmask.default || _Inputmask;
7
- export class BbInputMask {
8
- constructor(_ngZone, _platform, _renderer, _elementRef, _control) {
9
- this._ngZone = _ngZone;
10
- this._platform = _platform;
11
- this._renderer = _renderer;
12
- this._elementRef = _elementRef;
13
- this._control = _control;
14
- // State.
15
- this.inputMaskPlugin = null;
16
- this.nativeInputElement = null;
17
- this._inputMaskOptions = null;
18
- this._onChange = () => ({});
19
- this.onInput = (_) => ({});
20
- this.onTouched = () => ({});
21
- this.validate = (control) => !control.value || !this.inputMaskPlugin || this.inputMaskPlugin?.isValid()
22
- ? null
23
- : { inputMask: true };
24
- this.nativeInputElement = this._elementRef.nativeElement;
25
- if (this._control != null) {
26
- this._control.valueAccessor = this;
27
- }
28
- }
29
- set bbInputMask(mask) {
30
- if (!mask) {
31
- return;
32
- }
33
- this._inputMaskOptions = mask;
34
- this.updateMask();
35
- }
36
- ngOnInit() {
37
- const control = this._control.control;
38
- if (!control) {
39
- return;
40
- }
41
- control.setValidators(control.validator ? [control.validator, this.validate] : [this.validate]);
42
- control.updateValueAndValidity();
43
- }
44
- ngOnDestroy() {
45
- this.destroyMask();
46
- }
47
- writeValue(value) {
48
- if (!this.nativeInputElement) {
49
- return;
50
- }
51
- this._renderer.setProperty(this.nativeInputElement, 'value', value ?? '');
52
- }
53
- registerOnChange(fn) {
54
- this._onChange = fn;
55
- const parser = this._inputMaskOptions?.parser;
56
- this.onInput = value => this._onChange(parser && value ? parser(value) : value);
57
- }
58
- registerOnTouched(fn) {
59
- this.onTouched = fn;
60
- }
61
- setDisabledState(isDisabled) {
62
- if (!this.nativeInputElement) {
63
- return;
64
- }
65
- this._renderer.setProperty(this.nativeInputElement, 'disabled', isDisabled);
66
- }
67
- updateMask() {
68
- this.destroyMask();
69
- this.createMask();
70
- this.registerOnChange(this._onChange);
71
- }
72
- createMask() {
73
- const element = this._elementRef.nativeElement;
74
- if (!this._platform.isBrowser || !element || this._inputMaskOptions === null || Object.keys(this._inputMaskOptions).length === 0) {
75
- return;
76
- }
77
- const { parser, ...options } = this._inputMaskOptions;
78
- this.inputMaskPlugin = this._ngZone.runOutsideAngular(() => new InputmaskConstructor(options).mask(element));
79
- const control = this._control.control;
80
- if (!control) {
81
- return;
82
- }
83
- setTimeout(() => control.updateValueAndValidity());
84
- }
85
- destroyMask() {
86
- this.inputMaskPlugin?.remove();
87
- this.inputMaskPlugin = null;
88
- }
89
- }
90
- BbInputMask.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: BbInputMask, deps: [{ token: i0.NgZone }, { token: i1.Platform }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
91
- BbInputMask.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.3", type: BbInputMask, selector: "input[bbInputMask]", inputs: { bbInputMask: "bbInputMask" }, host: { listeners: { "input": "onInput($event.target.value)", "blur": "onTouched($event.target.value)" } }, ngImport: i0 });
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: BbInputMask, decorators: [{
93
- type: Directive,
94
- args: [{
95
- selector: 'input[bbInputMask]'
96
- }]
97
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.Platform }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i2.NgControl, decorators: [{
98
- type: Optional
99
- }, {
100
- type: Self
101
- }] }]; }, propDecorators: { bbInputMask: [{
102
- type: Input
103
- }], onInput: [{
104
- type: HostListener,
105
- args: ['input', ['$event.target.value']]
106
- }], onTouched: [{
107
- type: HostListener,
108
- args: ['blur', ['$event.target.value']]
109
- }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbWFzay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL21hc2tpbmcvc3JjL2xpYi9pbnB1dC1tYXNrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQTZCLFFBQVEsRUFBYSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFLL0gsT0FBTyxVQUFVLE1BQU0sV0FBVyxDQUFDOzs7O0FBRW5DLE1BQU0sb0JBQW9CLEdBQUksVUFBd0QsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDO0FBSzdHLE1BQU0sT0FBTyxXQUFXO0lBbUJwQixZQUFvQixPQUFlLEVBQ2YsU0FBbUIsRUFDbkIsU0FBb0IsRUFDcEIsV0FBdUIsRUFDSCxRQUFvQjtRQUp4QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ0gsYUFBUSxHQUFSLFFBQVEsQ0FBWTtRQVg1RCxTQUFTO1FBQ1Qsb0JBQWUsR0FBOEIsSUFBSSxDQUFDO1FBQ2xELHVCQUFrQixHQUE0QixJQUFJLENBQUM7UUFFM0Msc0JBQWlCLEdBQStCLElBQUksQ0FBQztRQUNyRCxjQUFTLEdBQThCLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFjMUQsWUFBTyxHQUF5QixDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUdqRCxjQUFTLEdBQWUsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQXdDbkMsYUFBUSxHQUFHLENBQUMsT0FBd0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxD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LEVBQUU7WUFDOUgsT0FBTztTQUNWO1FBRUQsTUFBTSxFQUFDLE1BQU0sRUFBRSxHQUFHLE9BQU8sRUFBQyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNwRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUU3RyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUN0QyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTztTQUNWO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFdBQVc7UUFDZixJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7O3dHQXZHUSxXQUFXOzRGQUFYLFdBQVc7MkZBQVgsV0FBVztrQkFIdkIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQzs7MEJBd0JnQixRQUFROzswQkFBSSxJQUFJOzRDQXBCekIsV0FBVztzQkFEZCxLQUFLO2dCQTZCTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7Z0JBSTlDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgUmVuZGVyZXIyLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wsIFZhbGlkYXRvcn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge0lucHV0TWFza09wdGlvbnN9IGZyb20gJy4vaW5wdXQtbWFzay5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1BsYXRmb3JtfSBmcm9tICdAYW5ndWxhci9jZGsvcGxhdGZvcm0nO1xyXG5pbXBvcnQgdHlwZSBJbnB1dG1hc2sgZnJvbSAnaW5wdXRtYXNrJztcclxuaW1wb3J0IF9JbnB1dG1hc2sgZnJvbSAnaW5wdXRtYXNrJztcclxuXHJcbmNvbnN0IElucHV0bWFza0NvbnN0cnVjdG9yID0gKF9JbnB1dG1hc2sgYXMgdW5rbm93biBhcyB7IGRlZmF1bHQ/OiBJbnB1dG1hc2suU3RhdGljIH0pLmRlZmF1bHQgfHwgX0lucHV0bWFzaztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdpbnB1dFtiYklucHV0TWFza10nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYklucHV0TWFzazxUID0gYW55PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGJiSW5wdXRNYXNrKG1hc2s6IElucHV0TWFza09wdGlvbnM8VD4gfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgaWYgKCFtYXNrKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX2lucHV0TWFza09wdGlvbnMgPSBtYXNrO1xyXG4gICAgICAgIHRoaXMudXBkYXRlTWFzaygpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFN0YXRlLlxyXG4gICAgaW5wdXRNYXNrUGx1Z2luOiBJbnB1dG1hc2suSW5zdGFuY2UgfCBudWxsID0gbnVsbDtcclxuICAgIG5hdGl2ZUlucHV0RWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX2lucHV0TWFza09wdGlvbnM6IElucHV0TWFza09wdGlvbnM8VD4gfCBudWxsID0gbnVsbDtcclxuICAgIHByaXZhdGUgX29uQ2hhbmdlOiAodmFsdWU6IFQgfCBudWxsKSA9PiB2b2lkID0gKCkgPT4gKHt9KTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgICAgICAgICAgICAgIHByaXZhdGUgX3BsYXRmb3JtOiBQbGF0Zm9ybSxcclxuICAgICAgICAgICAgICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIF9jb250cm9sPzogTmdDb250cm9sKSB7XHJcbiAgICAgICAgdGhpcy5uYXRpdmVJbnB1dEVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgaWYgKHRoaXMuX2NvbnRyb2wgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLl9jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50LnRhcmdldC52YWx1ZSddKVxyXG4gICAgb25JbnB1dDogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoXzogYW55KSA9PiAoe30pO1xyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudC50YXJnZXQudmFsdWUnXSlcclxuICAgIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+ICh7fSk7XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuX2NvbnRyb2wuY29udHJvbDtcclxuICAgICAgICBpZiAoIWNvbnRyb2wpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29udHJvbC5zZXRWYWxpZGF0b3JzKGNvbnRyb2wudmFsaWRhdG9yID8gW2NvbnRyb2wudmFsaWRhdG9yLCB0aGlzLnZhbGlkYXRlXSA6IFt0aGlzLnZhbGlkYXRlXSk7XHJcbiAgICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95TWFzaygpO1xyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIGlmICghdGhpcy5uYXRpdmVJbnB1dEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLm5hdGl2ZUlucHV0RWxlbWVudCwgJ3ZhbHVlJywgdmFsdWUgPz8gJycpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogVCB8IG51bGwpID0+IHZvaWQpIHtcclxuICAgICAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xyXG4gICAgICAgIGNvbnN0IHBhcnNlciA9IHRoaXMuX2lucHV0TWFza09wdGlvbnM/LnBhcnNlcjtcclxuICAgICAgICB0aGlzLm9uSW5wdXQgPSB2YWx1ZSA9PiB0aGlzLl9vbkNoYW5nZShwYXJzZXIgJiYgdmFsdWUgPyBwYXJzZXIodmFsdWUpIDogdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICBpZiAoIXRoaXMubmF0aXZlSW5wdXRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5uYXRpdmVJbnB1dEVsZW1lbnQsICdkaXNhYmxlZCcsIGlzRGlzYWJsZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4gIWNvbnRyb2wudmFsdWUgfHwgIXRoaXMuaW5wdXRNYXNrUGx1Z2luIHx8IHRoaXMuaW5wdXRNYXNrUGx1Z2luPy5pc1ZhbGlkKClcclxuICAgICAgICA/IG51bGxcclxuICAgICAgICA6IHtpbnB1dE1hc2s6IHRydWV9O1xyXG5cclxuICAgIHByaXZhdGUgdXBkYXRlTWFzaygpIHtcclxuICAgICAgICB0aGlzLmRlc3Ryb3lNYXNrKCk7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVNYXNrKCk7XHJcbiAgICAgICAgdGhpcy5yZWdpc3Rlck9uQ2hhbmdlKHRoaXMuX29uQ2hhbmdlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZU1hc2soKSB7XHJcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAoIXRoaXMuX3BsYXRmb3JtLmlzQnJvd3NlciB8fCAhZWxlbWVudCB8fCB0aGlzLl9pbnB1dE1hc2tPcHRpb25zID09PSBudWxsIHx8IE9iamVjdC5rZXlzKHRoaXMuX2lucHV0TWFza09wdGlvbnMpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCB7cGFyc2VyLCAuLi5vcHRpb25zfSA9IHRoaXMuX2lucHV0TWFza09wdGlvbnM7XHJcbiAgICAgICAgdGhpcy5pbnB1dE1hc2tQbHVnaW4gPSB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbmV3IElucHV0bWFza0NvbnN0cnVjdG9yKG9wdGlvbnMpLm1hc2soZWxlbWVudCkpO1xyXG5cclxuICAgICAgICBjb25zdCBjb250cm9sID0gdGhpcy5fY29udHJvbC5jb250cm9sO1xyXG4gICAgICAgIGlmICghY29udHJvbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZGVzdHJveU1hc2soKSB7XHJcbiAgICAgICAgdGhpcy5pbnB1dE1hc2tQbHVnaW4/LnJlbW92ZSgpO1xyXG4gICAgICAgIHRoaXMuaW5wdXRNYXNrUGx1Z2luID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXF1aXJlZCBzbyB0aGF0IHRoZSB0ZW1wbGF0ZSB0eXBlIGNoZWNrZXIgY2FuIGluZmVyIHRoZSB0eXBlIG9mIHRoZSBjb2VyY2VkIGlucHV0cy5cclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9iYklucHV0TWFzazogSW5wdXRNYXNrT3B0aW9uczxhbnk+IHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuXHJcbn0iXX0=