@bravobit/bb-foundation 0.21.1 → 0.21.2
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.
- package/README.md +47 -47
- package/auth/index.d.ts +5 -5
- package/auth/lib/auth.interceptor.d.ts +21 -21
- package/auth/lib/auth.module.d.ts +15 -15
- package/auth/lib/auth.service.d.ts +59 -59
- package/auth/lib/auth.session.d.ts +34 -34
- package/auth/lib/directives/authenticated.directive.d.ts +14 -14
- package/auth/lib/directives/permission.directive.d.ts +24 -24
- package/auth/lib/directives/role.directive.d.ts +16 -16
- package/auth/lib/guards/anonymous.guard.d.ts +11 -11
- package/auth/lib/guards/authenticated.guard.d.ts +11 -11
- package/auth/lib/helpers/jwt.helper.d.ts +8 -8
- package/auth/lib/helpers/mapper.helper.d.ts +23 -23
- package/auth/lib/interfaces/config.interface.d.ts +12 -12
- package/auth/lib/interfaces/mapper.interface.d.ts +19 -19
- package/auth/lib/interfaces/provider.interface.d.ts +16 -16
- package/auth/lib/interfaces/token.interface.d.ts +11 -11
- package/auth/lib/permissions.service.d.ts +14 -14
- package/auth/lib/providers/email.provider.d.ts +15 -15
- package/auth/lib/providers/verify.provider.d.ts +13 -13
- package/auth/lib/tokens/use-authorization.token.d.ts +2 -2
- package/auth/public_api.d.ts +18 -18
- package/collections/index.d.ts +5 -5
- package/collections/lib/collection.d.ts +42 -43
- package/collections/lib/collections.module.d.ts +10 -10
- package/collections/lib/components/collections-pager/collections-pager.component.d.ts +34 -34
- package/collections/lib/components/collections-viewer/collections-viewer.component.d.ts +12 -12
- package/collections/lib/components/collections.directive.d.ts +17 -17
- package/collections/lib/interfaces/collection.interface.d.ts +27 -26
- package/collections/lib/providers/api-collection.provider.d.ts +18 -19
- package/collections/lib/providers/collection.provider.d.ts +6 -6
- package/collections/lib/providers/local-collection.provider.d.ts +8 -8
- package/collections/public_api.d.ts +9 -9
- package/controls/index.d.ts +5 -5
- package/controls/lib/checkbox/checkbox/checkbox.component.d.ts +47 -47
- package/controls/lib/checkbox/checkbox-group/checkbox-group.component.d.ts +22 -22
- package/controls/lib/checkbox/checkbox.module.d.ts +9 -9
- package/controls/lib/controls.module.d.ts +7 -7
- package/controls/public_api.d.ts +4 -4
- package/dashboard/index.d.ts +5 -5
- package/dashboard/lib/dashboard/dashboard.component.d.ts +19 -19
- package/dashboard/lib/dashboard-header/dashboard-header.component.d.ts +11 -11
- package/dashboard/lib/dashboard-menu/dashboard-menu.component.d.ts +9 -9
- package/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.d.ts +11 -11
- package/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.d.ts +21 -21
- package/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.d.ts +27 -27
- package/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.d.ts +16 -16
- package/dashboard/lib/dashboard.module.d.ts +16 -16
- package/dashboard/public_api.d.ts +8 -8
- package/dialog/index.d.ts +5 -5
- package/dialog/lib/dialog-actions/dialog-actions.component.d.ts +5 -5
- package/dialog/lib/dialog-confirm/dialog-confirm.component.d.ts +16 -16
- package/dialog/lib/dialog-container/dialog-container.component.d.ts +24 -24
- package/dialog/lib/dialog-header/dialog-header.component.d.ts +9 -9
- package/dialog/lib/dialog-link/dialog-link.component.d.ts +5 -5
- package/dialog/lib/dialog-modal/dialog-modal.component.d.ts +12 -12
- package/dialog/lib/dialog-overlay/dialog-overlay.component.d.ts +22 -22
- package/dialog/lib/dialog.injector.d.ts +8 -8
- package/dialog/lib/dialog.insertion.d.ts +8 -8
- package/dialog/lib/dialog.interfaces.d.ts +3 -3
- package/dialog/lib/dialog.module.d.ts +19 -19
- package/dialog/lib/dialog.ref.d.ts +8 -8
- package/dialog/lib/dialog.service.d.ts +19 -19
- package/dialog/public_api.d.ts +9 -9
- package/elements/index.d.ts +5 -5
- package/elements/lib/avatar/avatar.component.d.ts +25 -25
- package/elements/lib/button/button.component.d.ts +23 -23
- package/elements/lib/checkbox/checkbox.component.d.ts +27 -27
- package/elements/lib/date-picker/date-picker.component.d.ts +69 -69
- package/elements/lib/directives/addon.directive.d.ts +9 -9
- package/elements/lib/directives/autosize.directive.d.ts +18 -18
- package/elements/lib/directives/focus-trap.directive.d.ts +17 -17
- package/elements/lib/directives/focus.directive.d.ts +14 -14
- package/elements/lib/directives/form-submit.directive.d.ts +17 -17
- package/elements/lib/directives/input.directive.d.ts +38 -38
- package/elements/lib/directives/template.directive.d.ts +10 -10
- package/elements/lib/dropdown/dropdown.component.d.ts +21 -21
- package/elements/lib/elements.interfaces.d.ts +25 -25
- package/elements/lib/elements.module.d.ts +116 -116
- package/elements/lib/file-picker/file-picker.component.d.ts +49 -49
- package/elements/lib/form-control/form-control.component.d.ts +21 -21
- package/elements/lib/form-error/form-error.component.d.ts +29 -29
- package/elements/lib/form-group/form-group.component.d.ts +10 -10
- package/elements/lib/icon/icon.component.d.ts +22 -22
- package/elements/lib/image-picker/image-picker.component.d.ts +38 -38
- package/elements/lib/pipes/file-image.pipe.d.ts +13 -13
- package/elements/lib/pipes/file-size.pipe.d.ts +8 -8
- package/elements/lib/pipes/relative-time.pipe.d.ts +19 -19
- package/elements/lib/spinner/spinner.component.d.ts +12 -12
- package/elements/lib/tag/tag.component.d.ts +7 -7
- package/elements/public_api.d.ts +25 -25
- package/esm2020/auth/bravobit-bb-foundation-auth.mjs +4 -4
- package/esm2020/auth/lib/auth.interceptor.mjs +93 -93
- package/esm2020/auth/lib/auth.module.mjs +54 -54
- package/esm2020/auth/lib/auth.service.mjs +281 -281
- package/esm2020/auth/lib/auth.session.mjs +131 -131
- package/esm2020/auth/lib/directives/authenticated.directive.mjs +31 -31
- package/esm2020/auth/lib/directives/permission.directive.mjs +80 -80
- package/esm2020/auth/lib/directives/role.directive.mjs +37 -37
- package/esm2020/auth/lib/guards/anonymous.guard.mjs +34 -34
- package/esm2020/auth/lib/guards/authenticated.guard.mjs +35 -35
- package/esm2020/auth/lib/helpers/jwt.helper.mjs +69 -69
- package/esm2020/auth/lib/helpers/mapper.helper.mjs +35 -35
- package/esm2020/auth/lib/interfaces/config.interface.mjs +3 -3
- package/esm2020/auth/lib/interfaces/mapper.interface.mjs +2 -2
- package/esm2020/auth/lib/interfaces/provider.interface.mjs +2 -2
- package/esm2020/auth/lib/interfaces/token.interface.mjs +2 -2
- package/esm2020/auth/lib/permissions.service.mjs +56 -56
- package/esm2020/auth/lib/providers/email.provider.mjs +25 -25
- package/esm2020/auth/lib/providers/verify.provider.mjs +19 -19
- package/esm2020/auth/lib/tokens/use-authorization.token.mjs +3 -3
- package/esm2020/auth/public_api.mjs +19 -19
- package/esm2020/bravobit-bb-foundation.mjs +4 -4
- package/esm2020/collections/bravobit-bb-foundation-collections.mjs +4 -4
- package/esm2020/collections/lib/collection.mjs +100 -102
- package/esm2020/collections/lib/collections.module.mjs +54 -54
- package/esm2020/collections/lib/components/collections-pager/collections-pager.component.mjs +123 -123
- package/esm2020/collections/lib/components/collections-viewer/collections-viewer.component.mjs +31 -31
- package/esm2020/collections/lib/components/collections.directive.mjs +43 -43
- package/esm2020/collections/lib/interfaces/collection.interface.mjs +2 -2
- package/esm2020/collections/lib/providers/api-collection.provider.mjs +91 -71
- package/esm2020/collections/lib/providers/collection.provider.mjs +13 -13
- package/esm2020/collections/lib/providers/local-collection.provider.mjs +16 -16
- package/esm2020/collections/public_api.mjs +10 -10
- package/esm2020/controls/bravobit-bb-foundation-controls.mjs +4 -4
- package/esm2020/controls/lib/checkbox/checkbox/checkbox.component.mjs +153 -153
- package/esm2020/controls/lib/checkbox/checkbox-group/checkbox-group.component.mjs +61 -61
- package/esm2020/controls/lib/checkbox/checkbox.module.mjs +19 -19
- package/esm2020/controls/lib/controls.module.mjs +16 -16
- package/esm2020/controls/public_api.mjs +5 -5
- package/esm2020/dashboard/bravobit-bb-foundation-dashboard.mjs +4 -4
- package/esm2020/dashboard/lib/dashboard/dashboard.component.mjs +56 -56
- package/esm2020/dashboard/lib/dashboard-header/dashboard-header.component.mjs +30 -30
- package/esm2020/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +31 -31
- package/esm2020/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +29 -29
- package/esm2020/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +75 -75
- package/esm2020/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +99 -99
- package/esm2020/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +62 -62
- package/esm2020/dashboard/lib/dashboard.module.mjs +47 -47
- package/esm2020/dashboard/public_api.mjs +9 -9
- package/esm2020/dialog/bravobit-bb-foundation-dialog.mjs +4 -4
- package/esm2020/dialog/lib/dialog-actions/dialog-actions.component.mjs +12 -12
- package/esm2020/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +37 -37
- package/esm2020/dialog/lib/dialog-container/dialog-container.component.mjs +153 -153
- package/esm2020/dialog/lib/dialog-header/dialog-header.component.mjs +25 -25
- package/esm2020/dialog/lib/dialog-link/dialog-link.component.mjs +11 -11
- package/esm2020/dialog/lib/dialog-modal/dialog-modal.component.mjs +46 -46
- package/esm2020/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +134 -134
- package/esm2020/dialog/lib/dialog.injector.mjs +18 -18
- package/esm2020/dialog/lib/dialog.insertion.mjs +16 -16
- package/esm2020/dialog/lib/dialog.interfaces.mjs +3 -3
- package/esm2020/dialog/lib/dialog.module.mjs +68 -68
- package/esm2020/dialog/lib/dialog.ref.mjs +22 -22
- package/esm2020/dialog/lib/dialog.service.mjs +77 -77
- package/esm2020/dialog/public_api.mjs +10 -10
- package/esm2020/elements/bravobit-bb-foundation-elements.mjs +4 -4
- package/esm2020/elements/lib/avatar/avatar.component.mjs +145 -145
- package/esm2020/elements/lib/button/button.component.mjs +61 -61
- package/esm2020/elements/lib/checkbox/checkbox.component.mjs +73 -73
- package/esm2020/elements/lib/date-picker/date-picker.component.mjs +304 -304
- package/esm2020/elements/lib/directives/addon.directive.mjs +29 -29
- package/esm2020/elements/lib/directives/autosize.directive.mjs +72 -72
- package/esm2020/elements/lib/directives/focus-trap.directive.mjs +77 -77
- package/esm2020/elements/lib/directives/focus.directive.mjs +39 -39
- package/esm2020/elements/lib/directives/form-submit.directive.mjs +50 -50
- package/esm2020/elements/lib/directives/input.directive.mjs +136 -136
- package/esm2020/elements/lib/directives/template.directive.mjs +28 -28
- package/esm2020/elements/lib/dropdown/dropdown.component.mjs +100 -100
- package/esm2020/elements/lib/elements.interfaces.mjs +4 -4
- package/esm2020/elements/lib/elements.module.mjs +177 -177
- package/esm2020/elements/lib/file-picker/file-picker.component.mjs +236 -236
- package/esm2020/elements/lib/form-control/form-control.component.mjs +49 -49
- package/esm2020/elements/lib/form-error/form-error.component.mjs +108 -108
- package/esm2020/elements/lib/form-group/form-group.component.mjs +18 -18
- package/esm2020/elements/lib/icon/icon.component.mjs +102 -102
- package/esm2020/elements/lib/image-picker/image-picker.component.mjs +106 -106
- package/esm2020/elements/lib/pipes/file-image.pipe.mjs +42 -42
- package/esm2020/elements/lib/pipes/file-size.pipe.mjs +28 -28
- package/esm2020/elements/lib/pipes/relative-time.pipe.mjs +94 -94
- package/esm2020/elements/lib/spinner/spinner.component.mjs +25 -25
- package/esm2020/elements/lib/tag/tag.component.mjs +18 -18
- package/esm2020/elements/public_api.mjs +26 -26
- package/esm2020/http/bravobit-bb-foundation-http.mjs +4 -4
- package/esm2020/http/lib/classes/http.config.mjs +29 -29
- package/esm2020/http/lib/classes/http.error.mjs +20 -20
- package/esm2020/http/lib/http.interfaces.mjs +2 -2
- package/esm2020/http/lib/http.module.mjs +43 -43
- package/esm2020/http/lib/interceptors/base-url.interceptor.mjs +50 -50
- package/esm2020/http/lib/interceptors/error.interceptor.mjs +32 -32
- package/esm2020/http/public_api.mjs +7 -7
- package/esm2020/lib/core/miscellaneous/regex.mjs +5 -5
- package/esm2020/lib/core/miscellaneous/validator.mjs +85 -85
- package/esm2020/lib/core/mixins/can-disable.mjs +16 -16
- package/esm2020/lib/core/mixins/can-hide-errors.mjs +16 -16
- package/esm2020/lib/core/mixins/can-load.mjs +16 -16
- package/esm2020/lib/core/mixins/constructor.mjs +2 -2
- package/esm2020/lib/core/mixins/has-error.mjs +16 -16
- package/esm2020/lib/core/mixins/is-focused.mjs +16 -16
- package/esm2020/lib/core/mixins/is-grouped.mjs +16 -16
- package/esm2020/lib/core/mixins/is-readonly.mjs +16 -16
- package/esm2020/lib/core/mixins/is-required.mjs +16 -16
- package/esm2020/lib/core/services/clipboard.service.mjs +70 -70
- package/esm2020/lib/core/services/exif.service.mjs +163 -163
- package/esm2020/lib/core/services/file-loader.service.mjs +87 -87
- package/esm2020/lib/core/services/image-converter.service.mjs +123 -123
- package/esm2020/lib/core/services/languages.service.mjs +74 -74
- package/esm2020/lib/core/services/network.service.mjs +55 -55
- package/esm2020/lib/core/services/patch.service.mjs +63 -63
- package/esm2020/lib/core/services/platform.service.mjs +42 -42
- package/esm2020/lib/core/tokens/accept-language.token.mjs +3 -3
- package/esm2020/lib/core/tokens/base-url.token.mjs +3 -3
- package/esm2020/lib/core/tokens/cookie.token.mjs +3 -3
- package/esm2020/lib/core/tokens/location.token.mjs +6 -6
- package/esm2020/lib/core/tokens/navigator.token.mjs +6 -6
- package/esm2020/lib/core/tokens/window.token.mjs +12 -12
- package/esm2020/localize/bravobit-bb-foundation-localize.mjs +4 -4
- package/esm2020/localize/lib/functions/date.function.mjs +18 -18
- package/esm2020/localize/lib/functions/lowercase.function.mjs +13 -13
- package/esm2020/localize/lib/functions/uppercase.function.mjs +13 -13
- package/esm2020/localize/lib/handlers/missing.handler.mjs +15 -15
- package/esm2020/localize/lib/interfaces/config.interfaces.mjs +7 -7
- package/esm2020/localize/lib/interfaces/functions.interfaces.mjs +8 -8
- package/esm2020/localize/lib/interfaces/handlers.interfaces.mjs +2 -2
- package/esm2020/localize/lib/interfaces/options.interfaces.mjs +6 -6
- package/esm2020/localize/lib/localizations/dutch.localization.mjs +45 -45
- package/esm2020/localize/lib/localizations/english.localization.mjs +45 -45
- package/esm2020/localize/lib/localize.dictionary.mjs +26 -26
- package/esm2020/localize/lib/localize.module.mjs +71 -71
- package/esm2020/localize/lib/localize.pipe.mjs +49 -49
- package/esm2020/localize/lib/localize.service.mjs +207 -207
- package/esm2020/localize/lib/views/localize-string/localize-string.component.mjs +88 -88
- package/esm2020/localize/lib/views/localize-template-or-string.directive.mjs +28 -28
- package/esm2020/localize/lib/views/localize-template.directive.mjs +21 -21
- package/esm2020/localize/public_api.mjs +17 -17
- package/esm2020/masking/bravobit-bb-foundation-masking.mjs +4 -4
- package/esm2020/masking/lib/input-mask.directive.mjs +110 -110
- package/esm2020/masking/lib/input-mask.interface.mjs +2 -2
- package/esm2020/masking/lib/masking.module.mjs +16 -16
- package/esm2020/masking/lib/masking.service.mjs +94 -94
- package/esm2020/masking/public_api.mjs +5 -5
- package/esm2020/notifications/bravobit-bb-foundation-notifications.mjs +4 -4
- package/esm2020/notifications/lib/notifications-item/notifications-item.component.mjs +100 -100
- package/esm2020/notifications/lib/notifications-list/notifications-list.component.mjs +47 -47
- package/esm2020/notifications/lib/notifications.animations.mjs +28 -28
- package/esm2020/notifications/lib/notifications.injector.mjs +18 -18
- package/esm2020/notifications/lib/notifications.interfaces.mjs +20 -20
- package/esm2020/notifications/lib/notifications.module.mjs +30 -30
- package/esm2020/notifications/lib/notifications.service.mjs +145 -145
- package/esm2020/notifications/public_api.mjs +4 -4
- package/esm2020/public_api.mjs +29 -29
- package/esm2020/recaptcha/bravobit-bb-foundation-recaptcha.mjs +4 -4
- package/esm2020/recaptcha/lib/recaptcha/recaptcha.component.mjs +185 -185
- package/esm2020/recaptcha/lib/recaptcha-loader.service.mjs +90 -90
- package/esm2020/recaptcha/lib/recaptcha.interface.mjs +3 -3
- package/esm2020/recaptcha/lib/recaptcha.module.mjs +27 -27
- package/esm2020/recaptcha/public_api.mjs +5 -5
- package/esm2020/rxjs/bravobit-bb-foundation-rxjs.mjs +4 -4
- package/esm2020/rxjs/lib/observables/get-control-value.observable.mjs +6 -0
- package/esm2020/rxjs/lib/operators/combine-latest-map.operator.mjs +10 -10
- package/esm2020/rxjs/lib/operators/filter-nil.operator.mjs +5 -5
- package/esm2020/rxjs/public_api.mjs +4 -3
- package/esm2020/storage/bravobit-bb-foundation-storage.mjs +4 -4
- package/esm2020/storage/lib/interfaces/attributes.interface.mjs +2 -2
- package/esm2020/storage/lib/interfaces/memory.interface.mjs +2 -2
- package/esm2020/storage/lib/interfaces/strategy.interface.mjs +2 -2
- package/esm2020/storage/lib/storage.service.mjs +109 -109
- package/esm2020/storage/lib/strategies/cookie-storage.strategy.mjs +142 -142
- package/esm2020/storage/lib/strategies/memory-storage.strategy.mjs +56 -56
- package/esm2020/storage/lib/strategies/polyfill-storage.strategy.mjs +102 -102
- package/esm2020/storage/public_api.mjs +8 -8
- package/esm2020/table/bravobit-bb-foundation-table.mjs +4 -4
- package/esm2020/table/lib/components/table/table.component.mjs +191 -191
- package/esm2020/table/lib/components/table-cell/table-cell.component.mjs +11 -11
- package/esm2020/table/lib/components/table-header-cell/table-header-cell.component.mjs +131 -131
- package/esm2020/table/lib/components/table-pager/table-pager.component.mjs +136 -136
- package/esm2020/table/lib/data/datasource.data.mjs +32 -32
- package/esm2020/table/lib/data/generic.data.mjs +72 -72
- package/esm2020/table/lib/interfaces/datasource.interface.mjs +2 -2
- package/esm2020/table/lib/interfaces/table.interfaces.mjs +2 -2
- package/esm2020/table/lib/table.module.mjs +42 -42
- package/esm2020/table/public_api.mjs +10 -10
- package/esm2020/theming/bravobit-bb-foundation-theming.mjs +4 -4
- package/esm2020/theming/lib/themes/checkbox-group.theme.mjs +2 -2
- package/esm2020/theming/lib/themes/checkbox.theme.mjs +2 -2
- package/esm2020/theming/lib/themes/theme.mjs +34 -0
- package/esm2020/theming/lib/theming.interface.mjs +3 -3
- package/esm2020/theming/lib/theming.module.mjs +38 -38
- package/esm2020/theming/lib/theming.service.mjs +77 -100
- package/esm2020/theming/public_api.mjs +7 -4
- package/fesm2015/bravobit-bb-foundation-auth.mjs +930 -930
- package/fesm2015/bravobit-bb-foundation-auth.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-collections.mjs +443 -424
- package/fesm2015/bravobit-bb-foundation-collections.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-controls.mjs +229 -229
- package/fesm2015/bravobit-bb-foundation-controls.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-dashboard.mjs +382 -382
- package/fesm2015/bravobit-bb-foundation-dashboard.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-dialog.mjs +540 -540
- package/fesm2015/bravobit-bb-foundation-dialog.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-elements.mjs +1970 -1970
- package/fesm2015/bravobit-bb-foundation-elements.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-http.mjs +156 -156
- package/fesm2015/bravobit-bb-foundation-http.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-localize.mjs +608 -608
- package/fesm2015/bravobit-bb-foundation-localize.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-masking.mjs +214 -214
- package/fesm2015/bravobit-bb-foundation-masking.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-notifications.mjs +348 -348
- package/fesm2015/bravobit-bb-foundation-notifications.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-recaptcha.mjs +290 -290
- package/fesm2015/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-rxjs.mjs +14 -10
- package/fesm2015/bravobit-bb-foundation-rxjs.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-storage.mjs +401 -401
- package/fesm2015/bravobit-bb-foundation-storage.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-table.mjs +571 -571
- package/fesm2015/bravobit-bb-foundation-table.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation-theming.mjs +151 -140
- package/fesm2015/bravobit-bb-foundation-theming.mjs.map +1 -1
- package/fesm2015/bravobit-bb-foundation.mjs +859 -859
- package/fesm2015/bravobit-bb-foundation.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-auth.mjs +882 -882
- package/fesm2020/bravobit-bb-foundation-auth.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-collections.mjs +432 -414
- package/fesm2020/bravobit-bb-foundation-collections.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-controls.mjs +227 -227
- package/fesm2020/bravobit-bb-foundation-controls.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-dashboard.mjs +370 -370
- package/fesm2020/bravobit-bb-foundation-dashboard.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-dialog.mjs +539 -539
- package/fesm2020/bravobit-bb-foundation-dialog.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-elements.mjs +1927 -1927
- package/fesm2020/bravobit-bb-foundation-elements.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-http.mjs +148 -148
- package/fesm2020/bravobit-bb-foundation-http.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-localize.mjs +587 -587
- package/fesm2020/bravobit-bb-foundation-localize.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-masking.mjs +203 -203
- package/fesm2020/bravobit-bb-foundation-masking.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-notifications.mjs +346 -346
- package/fesm2020/bravobit-bb-foundation-notifications.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-recaptcha.mjs +280 -280
- package/fesm2020/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-rxjs.mjs +17 -13
- package/fesm2020/bravobit-bb-foundation-rxjs.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-storage.mjs +396 -396
- package/fesm2020/bravobit-bb-foundation-storage.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-table.mjs +560 -560
- package/fesm2020/bravobit-bb-foundation-table.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-theming.mjs +141 -130
- package/fesm2020/bravobit-bb-foundation-theming.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation.mjs +831 -831
- package/fesm2020/bravobit-bb-foundation.mjs.map +1 -1
- package/http/index.d.ts +5 -5
- package/http/lib/classes/http.config.d.ts +9 -9
- package/http/lib/classes/http.error.d.ts +7 -7
- package/http/lib/http.interfaces.d.ts +12 -12
- package/http/lib/http.module.d.ts +15 -15
- package/http/lib/interceptors/base-url.interceptor.d.ts +15 -15
- package/http/lib/interceptors/error.interceptor.d.ts +11 -11
- package/http/public_api.d.ts +6 -6
- package/index.d.ts +5 -5
- package/lib/core/miscellaneous/regex.d.ts +4 -4
- package/lib/core/miscellaneous/validator.d.ts +13 -13
- package/lib/core/mixins/can-disable.d.ts +6 -6
- package/lib/core/mixins/can-hide-errors.d.ts +6 -6
- package/lib/core/mixins/can-load.d.ts +6 -6
- package/lib/core/mixins/constructor.d.ts +1 -1
- package/lib/core/mixins/has-error.d.ts +6 -6
- package/lib/core/mixins/is-focused.d.ts +6 -6
- package/lib/core/mixins/is-grouped.d.ts +6 -6
- package/lib/core/mixins/is-readonly.d.ts +6 -6
- package/lib/core/mixins/is-required.d.ts +6 -6
- package/lib/core/services/clipboard.service.d.ts +18 -18
- package/lib/core/services/exif.service.d.ts +15 -15
- package/lib/core/services/file-loader.service.d.ts +13 -13
- package/lib/core/services/image-converter.service.d.ts +21 -21
- package/lib/core/services/languages.service.d.ts +16 -16
- package/lib/core/services/network.service.d.ts +14 -14
- package/lib/core/services/patch.service.d.ts +16 -16
- package/lib/core/services/platform.service.d.ts +18 -18
- package/lib/core/tokens/accept-language.token.d.ts +2 -2
- package/lib/core/tokens/base-url.token.d.ts +2 -2
- package/lib/core/tokens/cookie.token.d.ts +2 -2
- package/lib/core/tokens/location.token.d.ts +2 -2
- package/lib/core/tokens/navigator.token.d.ts +2 -2
- package/lib/core/tokens/window.token.d.ts +2 -2
- package/localize/index.d.ts +5 -5
- package/localize/lib/functions/date.function.d.ts +5 -5
- package/localize/lib/functions/lowercase.function.d.ts +5 -5
- package/localize/lib/functions/uppercase.function.d.ts +5 -5
- package/localize/lib/handlers/missing.handler.d.ts +6 -6
- package/localize/lib/interfaces/config.interfaces.d.ts +18 -18
- package/localize/lib/interfaces/functions.interfaces.d.ts +9 -9
- package/localize/lib/interfaces/handlers.interfaces.d.ts +6 -6
- package/localize/lib/interfaces/options.interfaces.d.ts +10 -10
- package/localize/lib/localizations/dutch.localization.d.ts +44 -44
- package/localize/lib/localizations/english.localization.d.ts +44 -44
- package/localize/lib/localize.dictionary.d.ts +7 -7
- package/localize/lib/localize.module.d.ts +17 -17
- package/localize/lib/localize.pipe.d.ts +12 -12
- package/localize/lib/localize.service.d.ts +40 -40
- package/localize/lib/views/localize-string/localize-string.component.d.ts +23 -23
- package/localize/lib/views/localize-template-or-string.directive.d.ts +10 -10
- package/localize/lib/views/localize-template.directive.d.ts +9 -9
- package/localize/public_api.d.ts +16 -16
- package/masking/index.d.ts +5 -5
- package/masking/lib/input-mask.directive.d.ts +36 -36
- package/masking/lib/input-mask.interface.d.ts +20 -20
- package/masking/lib/masking.module.d.ts +7 -7
- package/masking/lib/masking.service.d.ts +12 -12
- package/masking/public_api.d.ts +4 -4
- package/notifications/index.d.ts +5 -5
- package/notifications/lib/notifications-item/notifications-item.component.d.ts +34 -34
- package/notifications/lib/notifications-list/notifications-list.component.d.ts +16 -16
- package/notifications/lib/notifications.animations.d.ts +1 -1
- package/notifications/lib/notifications.injector.d.ts +8 -8
- package/notifications/lib/notifications.interfaces.d.ts +49 -49
- package/notifications/lib/notifications.module.d.ts +13 -13
- package/notifications/lib/notifications.service.d.ts +34 -34
- package/notifications/public_api.d.ts +3 -3
- package/package.json +1 -1
- package/public_api.d.ts +25 -25
- package/recaptcha/index.d.ts +5 -5
- package/recaptcha/lib/recaptcha/recaptcha.component.d.ts +47 -47
- package/recaptcha/lib/recaptcha-loader.service.d.ts +22 -22
- package/recaptcha/lib/recaptcha.interface.d.ts +14 -14
- package/recaptcha/lib/recaptcha.module.d.ts +10 -10
- package/recaptcha/public_api.d.ts +4 -4
- package/rxjs/index.d.ts +5 -5
- package/rxjs/lib/observables/get-control-value.observable.d.ts +3 -0
- package/rxjs/lib/operators/combine-latest-map.operator.d.ts +8 -8
- package/rxjs/lib/operators/filter-nil.operator.d.ts +1 -1
- package/rxjs/public_api.d.ts +3 -2
- package/storage/index.d.ts +5 -5
- package/storage/lib/interfaces/attributes.interface.d.ts +13 -13
- package/storage/lib/interfaces/memory.interface.d.ts +7 -7
- package/storage/lib/interfaces/strategy.interface.d.ts +17 -17
- package/storage/lib/storage.service.d.ts +26 -26
- package/storage/lib/strategies/cookie-storage.strategy.d.ts +20 -20
- package/storage/lib/strategies/memory-storage.strategy.d.ts +11 -11
- package/storage/lib/strategies/polyfill-storage.strategy.d.ts +15 -15
- package/storage/public_api.d.ts +7 -7
- package/table/index.d.ts +5 -5
- package/table/lib/components/table/table.component.d.ts +56 -56
- package/table/lib/components/table-cell/table-cell.component.d.ts +5 -5
- package/table/lib/components/table-header-cell/table-header-cell.component.d.ts +29 -29
- package/table/lib/components/table-pager/table-pager.component.d.ts +41 -41
- package/table/lib/data/datasource.data.d.ts +14 -14
- package/table/lib/data/generic.data.d.ts +23 -23
- package/table/lib/interfaces/datasource.interface.d.ts +17 -17
- package/table/lib/interfaces/table.interfaces.d.ts +1 -1
- package/table/lib/table.module.d.ts +14 -14
- package/table/public_api.d.ts +9 -9
- package/theming/index.d.ts +5 -5
- package/theming/lib/themes/checkbox-group.theme.d.ts +5 -5
- package/theming/lib/themes/checkbox.theme.d.ts +19 -19
- package/theming/lib/themes/theme.d.ts +12 -0
- package/theming/lib/theming.interface.d.ts +15 -14
- package/theming/lib/theming.module.d.ts +13 -13
- package/theming/lib/theming.service.d.ts +22 -24
- package/theming/public_api.d.ts +6 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bravobit-bb-foundation-theming.mjs","sources":["../../../projects/bb-foundation/theming/src/lib/theming.interface.ts","../../../projects/bb-foundation/theming/src/lib/theming.service.ts","../../../projects/bb-foundation/theming/src/lib/theming.module.ts","../../../projects/bb-foundation/theming/src/bravobit-bb-foundation-theming.ts"],"sourcesContent":["import {CheckboxGroupTheme} from './themes/checkbox-group.theme';\r\nimport {CheckboxTheme} from './themes/checkbox.theme';\r\n\r\nexport class ThemingOptions {\r\n themes: Theme[];\r\n}\r\n\r\nexport interface Theme {\r\n name: string;\r\n\r\n accentColor?: string;\r\n checkbox?: Partial<CheckboxTheme>;\r\n checkboxGroup?: Partial<CheckboxGroupTheme>\r\n\r\n custom?: { [key: string]: string };\r\n}","import {Inject, Injectable, Injector, Optional, Renderer2, RendererFactory2} from '@angular/core';\r\nimport {Theme, ThemingOptions} from './theming.interface';\r\nimport {DOCUMENT} from '@angular/common';\r\n\r\n@Injectable()\r\nexport class Theming {\r\n\r\n // Readonly data.\r\n private readonly _attribute: string = 'data-theme';\r\n private readonly _renderer: Renderer2 = this._rendererFactory.createRenderer(null, null);\r\n\r\n // State.\r\n private _currentTheme: Theme | null = null;\r\n\r\n constructor(private _options: ThemingOptions,\r\n private _rendererFactory: RendererFactory2,\r\n @Optional() @Inject(DOCUMENT) private _document: Document) {\r\n this.setCssVariables();\r\n this.setFirstTheme();\r\n }\r\n\r\n get all() {\r\n return this._options?.themes ?? [];\r\n }\r\n\r\n get current() {\r\n return this._currentTheme ?? null;\r\n }\r\n\r\n set(name: string) {\r\n const theme = this.all?.find(theme => theme?.name === name);\r\n if (!theme) {\r\n throw new Error('Invalid theme.');\r\n }\r\n\r\n const document = this._document.documentElement;\r\n if (!document) {\r\n return;\r\n }\r\n\r\n this._renderer.setAttribute(document, this._attribute, name);\r\n this._currentTheme = theme;\r\n }\r\n\r\n private setCssVariables() {\r\n const style = this._renderer.createElement('style');\r\n this._renderer.setAttribute(style, 'id', 'theming-style');\r\n\r\n const variables = this.getCssVariables();\r\n this._renderer.setProperty(style, 'innerHTML', variables);\r\n\r\n const head = this._document?.head ?? null;\r\n if (!head) {\r\n return;\r\n }\r\n\r\n this._renderer.appendChild(this._document?.head, style);\r\n }\r\n\r\n private getCssVariables() {\r\n return this.all\r\n .map(theme => `:root[${this._attribute}=\"${theme?.name}\"] {${this.getThemeContents(theme)}}`)\r\n .join('\\n');\r\n }\r\n\r\n private getThemeContents(theme: Theme) {\r\n const properties = this.extractThemeProperties(theme);\r\n const themeData = this.formatThemeData(properties);\r\n return Object.keys(themeData)\r\n .map(key => `${key}: ${themeData?.[key]};`)\r\n .join(' ');\r\n }\r\n\r\n private formatThemeData(data: object, scope: string | null = null) {\r\n return Object.keys(data).reduce((previous, current) => {\r\n const value = data?.[current];\r\n if (typeof value === 'object' && value !== null) {\r\n const token = this.getFormattedToken(current, scope);\r\n const reformatted = this.formatThemeData(value, token);\r\n return {...previous, ...reformatted};\r\n }\r\n\r\n const token = this.getFormattedToken(current, scope);\r\n return {...previous, [`--${token}`]: value};\r\n }, {});\r\n }\r\n\r\n private setFirstTheme() {\r\n const theme = this.all?.[0] ?? null;\r\n if (!theme) {\r\n throw new Error('No theme found.');\r\n }\r\n\r\n const themeName = theme?.name ?? null;\r\n return this.set(themeName);\r\n }\r\n\r\n private getFormattedToken(key: string, scope: string | null = null) {\r\n const result = key.replace(/([A-Z])/g, ' $1');\r\n const current = result.split(' ').join('-').toLowerCase();\r\n return [scope, current].filter(item => !!item).join('-');\r\n }\r\n\r\n private extractThemeProperties(theme: Theme) {\r\n // Note: Do not include useless properties like the theme.\r\n const {name, ...rest} = theme;\r\n return rest;\r\n }\r\n\r\n}","import {APP_INITIALIZER, ModuleWithProviders, NgModule, Optional, SkipSelf} from '@angular/core';\r\nimport {ThemingOptions} from './theming.interface';\r\nimport {Theming} from './theming.service';\r\n\r\n@NgModule({})\r\nexport class ThemingModule {\r\n\r\n constructor(@Optional() @SkipSelf() private _parent?: ThemingModule) {\r\n if (this._parent) {\r\n throw new Error('ThemingModule is already loaded; Import it in the core module only.');\r\n }\r\n }\r\n\r\n static forRoot(options: ThemingOptions): ModuleWithProviders<ThemingModule> {\r\n return {\r\n ngModule: ThemingModule,\r\n providers: [\r\n Theming,\r\n {provide: APP_INITIALIZER, deps: [Theming], useFactory: initializeTheme, multi: true},\r\n {provide: ThemingOptions, useValue: options}\r\n ]\r\n };\r\n }\r\n\r\n}\r\n\r\nexport function initializeTheme(_: Theming) {\r\n // Note: We just need to initialize the theme.\r\n return () => ({});\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bravobit-bb-foundation-theming.mjs","sources":["../../../projects/bb-foundation/theming/src/lib/theming.interface.ts","../../../projects/bb-foundation/theming/src/lib/theming.service.ts","../../../projects/bb-foundation/theming/src/lib/theming.module.ts","../../../projects/bb-foundation/theming/src/lib/themes/theme.ts","../../../projects/bb-foundation/theming/src/bravobit-bb-foundation-theming.ts"],"sourcesContent":["import {CheckboxGroupTheme} from './themes/checkbox-group.theme';\nimport {CheckboxTheme} from './themes/checkbox.theme';\nimport {Theme} from './themes/theme';\n\nexport class ThemingOptions {\n themes: Theme[];\n}\n\nexport type ThemeDataRecord = Record<string, string> | string;\n\nexport interface ThemeData {\n accentColor?: string;\n checkbox?: Partial<CheckboxTheme>;\n checkboxGroup?: Partial<CheckboxGroupTheme>\n\n custom?: { [key: string]: ThemeDataRecord };\n}\n","import {Inject, Injectable, Optional, Renderer2, RendererFactory2} from '@angular/core';\nimport {ThemingOptions} from './theming.interface';\nimport {DOCUMENT} from '@angular/common';\nimport {Theme} from './themes/theme';\n\n@Injectable()\nexport class Theming {\n\n // Readonly data.\n private readonly _attribute: string = 'data-theme';\n private readonly _renderer: Renderer2 = this._rendererFactory.createRenderer(null, null);\n\n // State.\n private _currentTheme: Theme | null = null;\n\n constructor(private _options: ThemingOptions,\n private _rendererFactory: RendererFactory2,\n @Optional() @Inject(DOCUMENT) private _document: Document) {\n this.setCssVariables();\n this.setFirstTheme();\n }\n\n get all() {\n return this._options?.themes ?? [];\n }\n\n get current() {\n return this._currentTheme ?? null;\n }\n\n set(name: string) {\n const theme = this.all?.find(theme => theme?.name === name);\n if (!theme) {\n throw new Error('Invalid theme.');\n }\n\n const document = this._document.documentElement;\n if (!document) {\n return;\n }\n\n this._renderer.setAttribute(document, this._attribute, name);\n this._currentTheme = theme;\n }\n\n private setCssVariables() {\n const style = this._renderer.createElement('style');\n this._renderer.setAttribute(style, 'id', 'theming-style');\n\n const variables = this.getCssVariables();\n this._renderer.setProperty(style, 'innerHTML', variables);\n\n const head = this._document?.head ?? null;\n if (!head) {\n return;\n }\n\n this._renderer.appendChild(this._document?.head, style);\n }\n\n private getCssVariables() {\n return this.all\n .map(theme => `:root[${this._attribute}=\"${theme?.name}\"] {${this.getThemeContents(theme)}}`)\n .join('\\n');\n }\n\n private getThemeContents(theme: Theme) {\n const themeData = theme?.data ?? {};\n return Object.keys(themeData)\n .map(key => `${key}: ${themeData?.[key]};`)\n .join(' ');\n }\n\n private setFirstTheme() {\n const theme = this.all?.[0] ?? null;\n if (!theme) {\n throw new Error('No theme found.');\n }\n\n const themeName = theme?.name ?? null;\n return this.set(themeName);\n }\n\n}\n","import {APP_INITIALIZER, ModuleWithProviders, NgModule, Optional, SkipSelf} from '@angular/core';\nimport {ThemingOptions} from './theming.interface';\nimport {Theming} from './theming.service';\n\n@NgModule({})\nexport class ThemingModule {\n\n constructor(@Optional() @SkipSelf() private _parent?: ThemingModule) {\n if (this._parent) {\n throw new Error('ThemingModule is already loaded; Import it in the core module only.');\n }\n }\n\n static forRoot(options: ThemingOptions): ModuleWithProviders<ThemingModule> {\n return {\n ngModule: ThemingModule,\n providers: [\n Theming,\n {provide: APP_INITIALIZER, deps: [Theming], useFactory: initializeTheme, multi: true},\n {provide: ThemingOptions, useValue: options}\n ]\n };\n }\n\n}\n\nexport function initializeTheme(_: Theming) {\n // Note: We just need to initialize the theme.\n return () => ({});\n}\n","import {ThemeData} from '../theming.interface';\n\nexport class Theme {\n\n // Readonly data.\n private _parsed: Record<string, string>;\n\n constructor(private _name: string,\n private _data?: ThemeData) {\n this._parsed = this.parseData(_data ?? {});\n }\n\n get name() {\n return this._name;\n }\n\n get data() {\n return this._parsed;\n }\n\n update(data: ThemeData) {\n this._parsed = {...this._parsed, ...this.parseData(data)};\n return this;\n }\n\n protected parseData(data: object, scope: string | null = null) {\n return Object.keys(data).reduce((previous, current) => {\n const value = data?.[current];\n const token = this.getFormattedToken(current, scope);\n if (typeof value === 'object' && value !== null) {\n const formatted = this.parseData(value, token);\n return {...previous, ...formatted};\n }\n return {...previous, [`--${token}`]: value};\n }, {});\n }\n\n protected getFormattedToken(key: string, scope: string | null = null) {\n const result = key.replace(/([A-Z])/g, ' $1');\n const current = result.split(' ').join('-').toLowerCase();\n return [scope, current].filter(item => !!item).join('-');\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|