flowbite-angular 1.3.0 → 20.0.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 +30 -39
- package/accordion/index.d.ts +569 -16
- package/alert/index.d.ts +602 -4
- package/badge/index.d.ts +636 -4
- package/breadcrumb/index.d.ts +452 -8
- package/button/index.d.ts +335 -4
- package/button-group/README.md +4 -0
- package/button-group/index.d.ts +85 -0
- package/{core → card}/README.md +2 -2
- package/card/index.d.ts +640 -0
- package/{accordion → clipboard}/README.md +2 -2
- package/clipboard/index.d.ts +103 -0
- package/dropdown/index.d.ts +536 -16
- package/fesm2022/flowbite-angular-accordion.mjs +339 -479
- package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
- package/fesm2022/flowbite-angular-alert.mjs +308 -240
- package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
- package/fesm2022/flowbite-angular-badge.mjs +332 -238
- package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
- package/fesm2022/flowbite-angular-breadcrumb.mjs +262 -191
- package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
- package/fesm2022/flowbite-angular-button-group.mjs +86 -0
- package/fesm2022/flowbite-angular-button-group.mjs.map +1 -0
- package/fesm2022/flowbite-angular-button.mjs +189 -270
- package/fesm2022/flowbite-angular-button.mjs.map +1 -1
- package/fesm2022/flowbite-angular-card.mjs +344 -0
- package/fesm2022/flowbite-angular-card.mjs.map +1 -0
- package/fesm2022/flowbite-angular-clipboard.mjs +174 -0
- package/fesm2022/flowbite-angular-clipboard.mjs.map +1 -0
- package/fesm2022/flowbite-angular-dropdown.mjs +272 -459
- package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
- package/fesm2022/flowbite-angular-form.mjs +444 -0
- package/fesm2022/flowbite-angular-form.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-brand.mjs +71 -0
- package/fesm2022/flowbite-angular-icon-brand.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-arrows.mjs +51 -0
- package/fesm2022/flowbite-angular-icon-outline-arrows.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-e-commerce.mjs +23 -0
- package/fesm2022/flowbite-angular-icon-outline-e-commerce.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-emoji.mjs +13 -0
- package/fesm2022/flowbite-angular-icon-outline-emoji.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-files-folders.mjs +42 -0
- package/fesm2022/flowbite-angular-icon-outline-files-folders.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-general.mjs +145 -0
- package/fesm2022/flowbite-angular-icon-outline-general.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-media.mjs +25 -0
- package/fesm2022/flowbite-angular-icon-outline-media.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-text.mjs +20 -0
- package/fesm2022/flowbite-angular-icon-outline-text.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-user.mjs +17 -0
- package/fesm2022/flowbite-angular-icon-outline-user.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline-weather.mjs +9 -0
- package/fesm2022/flowbite-angular-icon-outline-weather.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-outline.mjs +6 -0
- package/fesm2022/flowbite-angular-icon-outline.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-arrows.mjs +17 -0
- package/fesm2022/flowbite-angular-icon-solid-arrows.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-brands.mjs +33 -0
- package/fesm2022/flowbite-angular-icon-solid-brands.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-e-commerce.mjs +21 -0
- package/fesm2022/flowbite-angular-icon-solid-e-commerce.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-emoji.mjs +13 -0
- package/fesm2022/flowbite-angular-icon-solid-emoji.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-files-folder.mjs +42 -0
- package/fesm2022/flowbite-angular-icon-solid-files-folder.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-general.mjs +123 -0
- package/fesm2022/flowbite-angular-icon-solid-general.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-media.mjs +24 -0
- package/fesm2022/flowbite-angular-icon-solid-media.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-text.mjs +11 -0
- package/fesm2022/flowbite-angular-icon-solid-text.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-user.mjs +17 -0
- package/fesm2022/flowbite-angular-icon-solid-user.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid-weather.mjs +9 -0
- package/fesm2022/flowbite-angular-icon-solid-weather.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon-solid.mjs +6 -0
- package/fesm2022/flowbite-angular-icon-solid.mjs.map +1 -0
- package/fesm2022/flowbite-angular-icon.mjs +318 -219
- package/fesm2022/flowbite-angular-icon.mjs.map +1 -1
- package/fesm2022/flowbite-angular-indicator.mjs +119 -231
- package/fesm2022/flowbite-angular-indicator.mjs.map +1 -1
- package/fesm2022/flowbite-angular-modal.mjs +337 -486
- package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
- package/fesm2022/flowbite-angular-navbar.mjs +600 -604
- package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
- package/fesm2022/flowbite-angular-pagination.mjs +994 -0
- package/fesm2022/flowbite-angular-pagination.mjs.map +1 -0
- package/fesm2022/flowbite-angular-sidebar.mjs +400 -776
- package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
- package/fesm2022/flowbite-angular-tab.mjs +465 -0
- package/fesm2022/flowbite-angular-tab.mjs.map +1 -0
- package/fesm2022/flowbite-angular-theme-toggle.mjs +263 -0
- package/fesm2022/flowbite-angular-theme-toggle.mjs.map +1 -0
- package/fesm2022/flowbite-angular-tooltip.mjs +117 -0
- package/fesm2022/flowbite-angular-tooltip.mjs.map +1 -0
- package/fesm2022/flowbite-angular.mjs +53 -66
- package/fesm2022/flowbite-angular.mjs.map +1 -1
- package/flowbite-angular.css +2 -0
- package/{alert → form}/README.md +2 -2
- package/form/index.d.ts +684 -0
- package/{breadcrumb → icon/brand}/README.md +2 -2
- package/icon/brand/index.d.ts +66 -0
- package/icon/index.d.ts +322 -5
- package/icon/outline/README.md +4 -0
- package/icon/outline/arrows/index.d.ts +46 -0
- package/icon/outline/e-commerce/index.d.ts +18 -0
- package/icon/outline/emoji/index.d.ts +8 -0
- package/icon/outline/files-folders/index.d.ts +37 -0
- package/icon/outline/general/index.d.ts +140 -0
- package/icon/outline/index.d.ts +2 -0
- package/icon/outline/media/index.d.ts +20 -0
- package/icon/outline/text/index.d.ts +15 -0
- package/icon/outline/user/index.d.ts +12 -0
- package/icon/outline/weather/index.d.ts +4 -0
- package/icon/solid/README.md +4 -0
- package/icon/solid/arrows/index.d.ts +12 -0
- package/icon/solid/brands/index.d.ts +28 -0
- package/icon/solid/e-commerce/index.d.ts +16 -0
- package/icon/solid/emoji/index.d.ts +8 -0
- package/icon/solid/files-folder/index.d.ts +37 -0
- package/icon/solid/general/index.d.ts +118 -0
- package/icon/solid/index.d.ts +2 -0
- package/icon/solid/media/index.d.ts +19 -0
- package/icon/solid/text/index.d.ts +6 -0
- package/icon/solid/user/index.d.ts +12 -0
- package/icon/solid/weather/index.d.ts +4 -0
- package/index.d.ts +126 -3
- package/indicator/index.d.ts +242 -4
- package/modal/index.d.ts +458 -16
- package/navbar/index.d.ts +1467 -24
- package/package.json +133 -38
- package/pagination/README.md +4 -0
- package/pagination/index.d.ts +1135 -0
- package/sidebar/index.d.ts +880 -24
- package/styles/flowbite-angular.css +8 -0
- package/styles/part/animation.css +0 -0
- package/styles/part/color.css +125 -0
- package/styles/part/font-size.css +67 -0
- package/styles/part/rounded.css +11 -0
- package/styles/part/shadow.css +9 -0
- package/styles/part/spacing.css +38 -0
- package/{badge → tab}/README.md +2 -2
- package/tab/index.d.ts +791 -0
- package/theme-toggle/README.md +4 -0
- package/theme-toggle/index.d.ts +342 -0
- package/{button → tooltip}/README.md +2 -2
- package/tooltip/index.d.ts +158 -0
- package/accordion/accordion-content.component.d.ts +0 -69
- package/accordion/accordion-content.theme.d.ts +0 -28
- package/accordion/accordion-content.theme.service.d.ts +0 -19
- package/accordion/accordion-panel.component.d.ts +0 -67
- package/accordion/accordion-panel.theme.d.ts +0 -23
- package/accordion/accordion-panel.theme.service.d.ts +0 -20
- package/accordion/accordion-title.component.d.ts +0 -106
- package/accordion/accordion-title.theme.d.ts +0 -35
- package/accordion/accordion-title.theme.service.d.ts +0 -19
- package/accordion/accordion.component.d.ts +0 -61
- package/accordion/accordion.theme.d.ts +0 -29
- package/accordion/accordion.theme.service.d.ts +0 -19
- package/alert/alert.component.d.ts +0 -150
- package/alert/alert.theme.d.ts +0 -39
- package/alert/alert.theme.service.d.ts +0 -19
- package/badge/badge.component.d.ts +0 -196
- package/badge/badge.theme.d.ts +0 -53
- package/badge/badge.theme.service.d.ts +0 -19
- package/base-component.directive.d.ts +0 -51
- package/breadcrumb/breadcrumb-item.component.d.ts +0 -84
- package/breadcrumb/breadcrumb-item.theme.d.ts +0 -33
- package/breadcrumb/breadcrumb-item.theme.service.d.ts +0 -19
- package/breadcrumb/breadcrumb.component.d.ts +0 -43
- package/breadcrumb/breadcrumb.theme.d.ts +0 -29
- package/breadcrumb/breadcrumb.theme.service.d.ts +0 -19
- package/button/button.component.d.ts +0 -250
- package/button/button.theme.d.ts +0 -79
- package/button/button.theme.service.d.ts +0 -19
- package/core/flowbite.theme.init.d.ts +0 -9
- package/core/index.d.ts +0 -1
- package/dark-theme-toggle/README.md +0 -4
- package/dark-theme-toggle/dark-theme-toggle.component.d.ts +0 -51
- package/dark-theme-toggle/dark-theme-toggle.theme.d.ts +0 -23
- package/dark-theme-toggle/dark-theme-toggle.theme.service.d.ts +0 -19
- package/dark-theme-toggle/index.d.ts +0 -3
- package/dropdown/README.md +0 -4
- package/dropdown/dropdown-divider.component.d.ts +0 -36
- package/dropdown/dropdown-divider.theme.d.ts +0 -23
- package/dropdown/dropdown-divider.theme.service.d.ts +0 -19
- package/dropdown/dropdown-header.component.d.ts +0 -42
- package/dropdown/dropdown-header.theme.d.ts +0 -28
- package/dropdown/dropdown-header.theme.service.d.ts +0 -19
- package/dropdown/dropdown-item.component.d.ts +0 -36
- package/dropdown/dropdown-item.theme.d.ts +0 -23
- package/dropdown/dropdown-item.theme.service.d.ts +0 -19
- package/dropdown/dropdown.component.d.ts +0 -136
- package/dropdown/dropdown.theme.d.ts +0 -56
- package/dropdown/dropdown.theme.service.d.ts +0 -19
- package/fesm2022/flowbite-angular-core.mjs +0 -322
- package/fesm2022/flowbite-angular-core.mjs.map +0 -1
- package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +0 -139
- package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +0 -1
- package/fesm2022/flowbite-angular-router-link-active.mjs +0 -68
- package/fesm2022/flowbite-angular-router-link-active.mjs.map +0 -1
- package/fesm2022/flowbite-angular-router-link.mjs +0 -73
- package/fesm2022/flowbite-angular-router-link.mjs.map +0 -1
- package/fesm2022/flowbite-angular-sanitize-html.mjs +0 -39
- package/fesm2022/flowbite-angular-sanitize-html.mjs.map +0 -1
- package/fesm2022/flowbite-angular-scroll-top.mjs +0 -193
- package/fesm2022/flowbite-angular-scroll-top.mjs.map +0 -1
- package/fesm2022/flowbite-angular-theme.mjs +0 -78
- package/fesm2022/flowbite-angular-theme.mjs.map +0 -1
- package/fesm2022/flowbite-angular-utils.mjs +0 -210
- package/fesm2022/flowbite-angular-utils.mjs.map +0 -1
- package/flowbite.theme.service.d.ts +0 -12
- package/icon/icon-registry.d.ts +0 -45
- package/icon/icon.component.d.ts +0 -22
- package/icon/trusted-types.d.ts +0 -15
- package/indicator/indicators.component.d.ts +0 -224
- package/indicator/indicators.theme.d.ts +0 -59
- package/indicator/indicators.theme.service.d.ts +0 -19
- package/modal/modal-body.component.d.ts +0 -36
- package/modal/modal-body.theme.d.ts +0 -23
- package/modal/modal-body.theme.service.d.ts +0 -19
- package/modal/modal-footer.component.d.ts +0 -36
- package/modal/modal-footer.theme.d.ts +0 -23
- package/modal/modal-footer.theme.service.d.ts +0 -19
- package/modal/modal-header.component.d.ts +0 -60
- package/modal/modal-header.theme.d.ts +0 -32
- package/modal/modal-header.theme.service.d.ts +0 -19
- package/modal/modal.component.d.ts +0 -146
- package/modal/modal.theme.d.ts +0 -35
- package/modal/modal.theme.service.d.ts +0 -19
- package/navbar/navbar-brand.component.d.ts +0 -36
- package/navbar/navbar-brand.theme.d.ts +0 -23
- package/navbar/navbar-brand.theme.service.d.ts +0 -19
- package/navbar/navbar-content.component.d.ts +0 -50
- package/navbar/navbar-content.theme.d.ts +0 -28
- package/navbar/navbar-content.theme.service.d.ts +0 -19
- package/navbar/navbar-icon-button.component.d.ts +0 -59
- package/navbar/navbar-icon-button.theme.d.ts +0 -26
- package/navbar/navbar-icon-button.theme.service.d.ts +0 -19
- package/navbar/navbar-item.component.d.ts +0 -67
- package/navbar/navbar-item.theme.d.ts +0 -26
- package/navbar/navbar-item.theme.service.d.ts +0 -19
- package/navbar/navbar-toggle.component.d.ts +0 -51
- package/navbar/navbar-toggle.theme.d.ts +0 -23
- package/navbar/navbar-toggle.theme.service.d.ts +0 -19
- package/navbar/navbar.component.d.ts +0 -121
- package/navbar/navbar.theme.d.ts +0 -21
- package/navbar/navbar.theme.service.d.ts +0 -19
- package/router-link/README.md +0 -4
- package/router-link/flowbite-router-link.directive.d.ts +0 -28
- package/router-link/index.d.ts +0 -1
- package/router-link-active/README.md +0 -4
- package/router-link-active/flowbite-router-link-active.directive.d.ts +0 -37
- package/router-link-active/index.d.ts +0 -1
- package/sanitize-html/README.md +0 -4
- package/sanitize-html/index.d.ts +0 -1
- package/sanitize-html/sanitize-html.pipe.d.ts +0 -20
- package/scroll-top/README.md +0 -4
- package/scroll-top/index.d.ts +0 -4
- package/scroll-top/scroll-top.component.d.ts +0 -114
- package/scroll-top/scroll-top.theme.d.ts +0 -39
- package/scroll-top/scroll-top.theme.service.d.ts +0 -19
- package/sidebar/sidebar-item-group.component.d.ts +0 -100
- package/sidebar/sidebar-item-group.theme.d.ts +0 -31
- package/sidebar/sidebar-item-group.theme.service.d.ts +0 -19
- package/sidebar/sidebar-item.component.d.ts +0 -101
- package/sidebar/sidebar-item.theme.d.ts +0 -33
- package/sidebar/sidebar-item.theme.service.d.ts +0 -19
- package/sidebar/sidebar-menu.component.d.ts +0 -93
- package/sidebar/sidebar-menu.theme.d.ts +0 -30
- package/sidebar/sidebar-menu.theme.service.d.ts +0 -19
- package/sidebar/sidebar-page-content.component.d.ts +0 -46
- package/sidebar/sidebar-page-content.theme.d.ts +0 -27
- package/sidebar/sidebar-page-content.theme.service.d.ts +0 -19
- package/sidebar/sidebar-toggle.component.d.ts +0 -95
- package/sidebar/sidebar-toggle.theme.d.ts +0 -34
- package/sidebar/sidebar-toggle.theme.service.d.ts +0 -19
- package/sidebar/sidebar.component.d.ts +0 -84
- package/sidebar/sidebar.theme.d.ts +0 -22
- package/sidebar/sidebar.theme.service.d.ts +0 -19
- package/tailwind.config.js +0 -303
- package/theme/README.md +0 -4
- package/theme/flowbite-theme.directive.d.ts +0 -36
- package/theme/index.d.ts +0 -1
- package/type-definitions/colors/flowbite.colors.d.ts +0 -19
- package/type-definitions/colors/flowbite.gradient-colors.d.ts +0 -11
- package/type-definitions/colors/flowbite.gradient-duo-tone-colors.d.ts +0 -12
- package/type-definitions/colors/index.d.ts +0 -3
- package/type-definitions/flowbite.boolean.d.ts +0 -14
- package/type-definitions/flowbite.class.d.ts +0 -6
- package/type-definitions/flowbite.combination.d.ts +0 -8
- package/type-definitions/flowbite.content-positions.d.ts +0 -6
- package/type-definitions/flowbite.deep-partial.d.ts +0 -6
- package/type-definitions/flowbite.heading-levels.d.ts +0 -4
- package/type-definitions/flowbite.positions.d.ts +0 -14
- package/type-definitions/flowbite.router-link-parameter.d.ts +0 -5
- package/type-definitions/flowbite.sizes.d.ts +0 -10
- package/type-definitions/flowbite.themes.d.ts +0 -4
- package/type-definitions/index.d.ts +0 -12
- package/utils/README.md +0 -4
- package/utils/icon.list.d.ts +0 -7
- package/utils/id.generator.d.ts +0 -59
- package/utils/index.d.ts +0 -8
- package/utils/theme/clone-deep.d.ts +0 -7
- package/utils/theme/create-class.d.ts +0 -7
- package/utils/theme/create-theme.d.ts +0 -7
- package/utils/theme/is-object.d.ts +0 -7
- package/utils/theme/merge-theme.d.ts +0 -8
- package/utils/theme/to-string.d.ts +0 -7
|
@@ -1,249 +1,320 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createTheme, mergeDeep, colorToTheme } from 'flowbite-angular';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { InjectionToken, inject,
|
|
3
|
+
import { InjectionToken, inject, input, booleanAttribute, computed, Directive } from '@angular/core';
|
|
4
|
+
import { createStateToken, createStateProvider, createStateInjector, createState } from 'ng-primitives/state';
|
|
4
5
|
import { twMerge } from 'tailwind-merge';
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
6
|
+
import * as i1 from 'ng-primitives/button';
|
|
7
|
+
import { NgpButton } from 'ng-primitives/button';
|
|
8
|
+
import * as i2 from 'ng-primitives/interactions';
|
|
9
|
+
import { NgpFocus } from 'ng-primitives/interactions';
|
|
9
10
|
|
|
11
|
+
const flowbiteBreadcrumbTheme = createTheme({
|
|
12
|
+
host: {
|
|
13
|
+
base: 'inline-flex items-center gap-1 rounded-lg px-5 py-3',
|
|
14
|
+
transition: '',
|
|
15
|
+
solid: {
|
|
16
|
+
on: 'border',
|
|
17
|
+
off: 'border-none bg-transparent',
|
|
18
|
+
},
|
|
19
|
+
color: {
|
|
20
|
+
default: {
|
|
21
|
+
light: 'border-gray-300 bg-gray-100',
|
|
22
|
+
dark: 'dark:border-gray-900 dark:bg-gray-800',
|
|
23
|
+
},
|
|
24
|
+
info: {
|
|
25
|
+
light: 'border-blue-300 bg-blue-100',
|
|
26
|
+
dark: 'dark:border-blue-900 dark:bg-blue-800',
|
|
27
|
+
},
|
|
28
|
+
failure: {
|
|
29
|
+
light: 'border-red-300 bg-red-100',
|
|
30
|
+
dark: 'dark:border-red-900 dark:bg-red-800',
|
|
31
|
+
},
|
|
32
|
+
success: {
|
|
33
|
+
light: 'border-green-300 bg-green-100',
|
|
34
|
+
dark: 'dark:border-green-900 dark:bg-green-800',
|
|
35
|
+
},
|
|
36
|
+
warning: {
|
|
37
|
+
light: 'border-yellow-300 bg-yellow-100',
|
|
38
|
+
dark: 'dark:border-yellow-900 dark:bg-yellow-800',
|
|
39
|
+
},
|
|
40
|
+
primary: {
|
|
41
|
+
light: 'border-primary-300 bg-primary-100',
|
|
42
|
+
dark: 'dark:border-primary-900 dark:bg-primary-800',
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
const defaultFlowbiteBreadcrumbConfig = {
|
|
49
|
+
baseTheme: flowbiteBreadcrumbTheme,
|
|
50
|
+
color: 'default',
|
|
51
|
+
solid: false,
|
|
52
|
+
customTheme: {},
|
|
53
|
+
};
|
|
54
|
+
const FlowbiteBreadcrumbConfigToken = new InjectionToken('FlowbiteBreadcrumbConfigToken');
|
|
10
55
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @
|
|
14
|
-
* ```
|
|
15
|
-
* var theme = inject(FLOWBITE_BREADCRUMB_ITEM_THEME_TOKEN)
|
|
16
|
-
* ```
|
|
56
|
+
* Provide the default Breadcrumb configuration
|
|
57
|
+
* @param config The Breadcrumb configuration
|
|
58
|
+
* @returns The provider
|
|
17
59
|
*/
|
|
18
|
-
const
|
|
19
|
-
class BreadcrumbItemThemeService {
|
|
20
|
-
constructor() {
|
|
21
|
-
this.baseTheme = inject(FLOWBITE_BREADCRUMB_ITEM_THEME_TOKEN);
|
|
22
|
-
}
|
|
23
|
-
getClasses(properties) {
|
|
24
|
-
const theme = mergeTheme(this.baseTheme, properties.customStyle);
|
|
25
|
-
const output = {
|
|
26
|
-
rootClass: twMerge(theme.root.base, theme.root.color[properties.color]),
|
|
27
|
-
breadcrumbIconClass: twMerge(theme.icon.base),
|
|
28
|
-
};
|
|
29
|
-
return output;
|
|
30
|
-
}
|
|
31
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbItemThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbItemThemeService, providedIn: 'root' }); }
|
|
33
|
-
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbItemThemeService, decorators: [{
|
|
35
|
-
type: Injectable,
|
|
36
|
-
args: [{
|
|
37
|
-
providedIn: 'root',
|
|
38
|
-
}]
|
|
39
|
-
}] });
|
|
40
|
-
|
|
41
|
-
const FLOWBITE_BREADCRUMB_ITEM_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BREADCRUMB_ITEM_CUSTOM_STYLE_DEFAULT_VALUE');
|
|
42
|
-
const breadcrumbItemDefaultValueProvider = makeEnvironmentProviders([
|
|
60
|
+
const provideFlowbiteBreadcrumbConfig = (config) => [
|
|
43
61
|
{
|
|
44
|
-
provide:
|
|
45
|
-
useValue: {},
|
|
62
|
+
provide: FlowbiteBreadcrumbConfigToken,
|
|
63
|
+
useValue: { ...defaultFlowbiteBreadcrumbConfig, ...config },
|
|
46
64
|
},
|
|
47
|
-
]
|
|
65
|
+
];
|
|
48
66
|
/**
|
|
49
|
-
*
|
|
67
|
+
* Inject the Breadcrumb configuration
|
|
68
|
+
* @see {@link defaultFlowbiteBreadcrumbConfig}
|
|
69
|
+
* @returns The configuration
|
|
50
70
|
*/
|
|
51
|
-
|
|
71
|
+
const injectFlowbiteBreadcrumbConfig = () => inject(FlowbiteBreadcrumbConfigToken, { optional: true }) ?? defaultFlowbiteBreadcrumbConfig;
|
|
72
|
+
|
|
73
|
+
const FlowbiteBreadcrumbStateToken = createStateToken('Flowbite Breadcrumb');
|
|
74
|
+
const provideFlowbiteBreadcrumbState = createStateProvider(FlowbiteBreadcrumbStateToken);
|
|
75
|
+
const injectFlowbiteBreadcrumbState = createStateInjector(FlowbiteBreadcrumbStateToken);
|
|
76
|
+
const flowbiteBreadcrumbState = createState(FlowbiteBreadcrumbStateToken);
|
|
77
|
+
|
|
78
|
+
class Breadcrumb {
|
|
52
79
|
constructor() {
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Service injected used to generate class
|
|
56
|
-
*/
|
|
57
|
-
this.themeService = inject(BreadcrumbItemThemeService);
|
|
58
|
-
/**
|
|
59
|
-
* The parent `BreadcrumbComponent`
|
|
60
|
-
*/
|
|
61
|
-
this.breadcrumbComponent = inject(BreadcrumbComponent);
|
|
80
|
+
this.config = injectFlowbiteBreadcrumbConfig();
|
|
62
81
|
/**
|
|
63
|
-
*
|
|
82
|
+
* @see {@link injectFlowbiteBreadcrumbConfig}
|
|
64
83
|
*/
|
|
65
|
-
this.
|
|
84
|
+
this.color = input(this.config.color);
|
|
66
85
|
/**
|
|
67
|
-
*
|
|
86
|
+
* @see {@link injectFlowbiteBreadcrumbConfig}
|
|
68
87
|
*/
|
|
69
|
-
this.
|
|
88
|
+
this.solid = input(this.config.solid, { transform: booleanAttribute });
|
|
70
89
|
/**
|
|
71
|
-
*
|
|
90
|
+
* @see {@link injectFlowbiteBreadcrumbConfig}
|
|
72
91
|
*/
|
|
73
|
-
this.
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
92
|
+
this.customTheme = input(this.config.customTheme);
|
|
93
|
+
this.theme = computed(() => {
|
|
94
|
+
const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
|
|
95
|
+
return {
|
|
96
|
+
host: {
|
|
97
|
+
root: twMerge(mergedTheme.host.base, mergedTheme.host.transition, this.state.solid() &&
|
|
98
|
+
mergedTheme.host.solid[this.state.solid() ? 'on' : 'off'] &&
|
|
99
|
+
colorToTheme(mergedTheme.host.color, this.state.color())),
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
});
|
|
81
103
|
/**
|
|
82
|
-
*
|
|
104
|
+
* @internal
|
|
83
105
|
*/
|
|
84
|
-
this.
|
|
85
|
-
}
|
|
86
|
-
//#endregion
|
|
87
|
-
//#region BaseComponent implementation
|
|
88
|
-
fetchClass() {
|
|
89
|
-
return this.themeService.getClasses({
|
|
90
|
-
color: this.color(),
|
|
91
|
-
link: this.flowbiteRouterLink?.routerLink.urlTree ?? null,
|
|
92
|
-
customStyle: this.customStyle(),
|
|
93
|
-
});
|
|
106
|
+
this.state = flowbiteBreadcrumbState(this);
|
|
94
107
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.4", type: BreadcrumbItemComponent, isStandalone: true, selector: "flowbite-breadcrumb-item", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: "colorChange", customStyle: "customStyleChange" }, usesInheritance: true, ngImport: i0, template: `
|
|
100
|
-
<flowbite-icon
|
|
101
|
-
[class]="contentClasses().breadcrumbIconClass"
|
|
102
|
-
svgIcon="flowbite-angular:chevron-right" />
|
|
103
|
-
<ng-content />
|
|
104
|
-
`, isInline: true, dependencies: [{ kind: "component", type: IconComponent, selector: "flowbite-icon", inputs: ["svgIcon"], outputs: ["svgIconChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Breadcrumb, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
109
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: Breadcrumb, isStandalone: true, selector: "\n nav[flowbiteBreadcrumb]\n ", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, solid: { classPropertyName: "solid", publicName: "solid", isSignal: true, isRequired: false, transformFunction: null }, customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBreadcrumbState()], exportAs: ["flowbiteBreadcrumb"], ngImport: i0 }); }
|
|
105
110
|
}
|
|
106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
107
|
-
type:
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Breadcrumb, decorators: [{
|
|
112
|
+
type: Directive,
|
|
108
113
|
args: [{
|
|
109
114
|
standalone: true,
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
template: `
|
|
113
|
-
<flowbite-icon
|
|
114
|
-
[class]="contentClasses().breadcrumbIconClass"
|
|
115
|
-
svgIcon="flowbite-angular:chevron-right" />
|
|
116
|
-
<ng-content />
|
|
115
|
+
selector: `
|
|
116
|
+
nav[flowbiteBreadcrumb]
|
|
117
117
|
`,
|
|
118
|
-
|
|
119
|
-
|
|
118
|
+
exportAs: 'flowbiteBreadcrumb',
|
|
119
|
+
hostDirectives: [],
|
|
120
|
+
providers: [provideFlowbiteBreadcrumbState()],
|
|
121
|
+
host: {
|
|
122
|
+
'[class]': `theme().host.root`,
|
|
123
|
+
},
|
|
120
124
|
}]
|
|
121
125
|
}] });
|
|
122
126
|
|
|
127
|
+
const flowbiteBreadcrumbItemTheme = createTheme({
|
|
128
|
+
host: {
|
|
129
|
+
base: 'group flex items-center justify-between text-sm font-medium data-hover:cursor-pointer',
|
|
130
|
+
transition: '',
|
|
131
|
+
color: {
|
|
132
|
+
default: {
|
|
133
|
+
light: 'text-gray-700 data-hover:text-gray-900',
|
|
134
|
+
dark: 'dark:text-gray-100 dark:data-hover:text-white',
|
|
135
|
+
},
|
|
136
|
+
info: {
|
|
137
|
+
light: 'text-blue-700 data-hover:text-blue-900',
|
|
138
|
+
dark: 'dark:text-blue-100 dark:data-hover:text-blue-300',
|
|
139
|
+
},
|
|
140
|
+
failure: {
|
|
141
|
+
light: 'text-red-700 data-hover:text-red-900',
|
|
142
|
+
dark: 'dark:text-red-100 dark:data-hover:text-red-300',
|
|
143
|
+
},
|
|
144
|
+
success: {
|
|
145
|
+
light: 'text-green-700 data-hover:text-green-900',
|
|
146
|
+
dark: 'dark:text-green-100 dark:data-hover:text-green-300',
|
|
147
|
+
},
|
|
148
|
+
warning: {
|
|
149
|
+
light: 'text-yellow-700 data-hover:text-yellow-900',
|
|
150
|
+
dark: 'dark:text-yellow-100 dark:data-hover:text-yellow-300',
|
|
151
|
+
},
|
|
152
|
+
primary: {
|
|
153
|
+
light: 'data-hover:text-primary-900 text-primary-700',
|
|
154
|
+
dark: 'dark:text-primary-100 dark:data-hover:text-primary-300',
|
|
155
|
+
},
|
|
156
|
+
},
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
const defaultFlowbiteBreadcrumbItemConfig = {
|
|
161
|
+
baseTheme: flowbiteBreadcrumbItemTheme,
|
|
162
|
+
customTheme: {},
|
|
163
|
+
};
|
|
164
|
+
const FlowbiteBreadcrumbItemConfigToken = new InjectionToken('FlowbiteBreadcrumbConfigToken');
|
|
123
165
|
/**
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
* @
|
|
127
|
-
* ```
|
|
128
|
-
* var theme = inject(FLOWBITE_BREADCRUMB_THEME_TOKEN)
|
|
129
|
-
* ```
|
|
166
|
+
* Provide the default Breadcrumb Item configuration
|
|
167
|
+
* @param config The Breadcrumb configuration
|
|
168
|
+
* @returns The provider
|
|
130
169
|
*/
|
|
131
|
-
const
|
|
132
|
-
class BreadcrumbThemeService {
|
|
133
|
-
constructor() {
|
|
134
|
-
this.baseTheme = inject(FLOWBITE_BREADCRUMB_THEME_TOKEN);
|
|
135
|
-
}
|
|
136
|
-
getClasses(properties) {
|
|
137
|
-
const theme = mergeTheme(this.baseTheme, properties.customStyle);
|
|
138
|
-
const output = {
|
|
139
|
-
rootClass: twMerge(theme.root.base),
|
|
140
|
-
};
|
|
141
|
-
return output;
|
|
142
|
-
}
|
|
143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
144
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbThemeService, providedIn: 'root' }); }
|
|
145
|
-
}
|
|
146
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BreadcrumbThemeService, decorators: [{
|
|
147
|
-
type: Injectable,
|
|
148
|
-
args: [{
|
|
149
|
-
providedIn: 'root',
|
|
150
|
-
}]
|
|
151
|
-
}] });
|
|
152
|
-
|
|
153
|
-
const FLOWBITE_BREADCRUMB_COLOR_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BREADCRUMB_COLOR_DEFAULT_VALUE');
|
|
154
|
-
const FLOWBITE_BREADCRUMB_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BREADCRUMB_CUSTOM_STYLE_DEFAULT_VALUE');
|
|
155
|
-
const breadcrumbDefaultValueProvider = makeEnvironmentProviders([
|
|
170
|
+
const provideFlowbiteBreadcrumbItemConfig = (config) => [
|
|
156
171
|
{
|
|
157
|
-
provide:
|
|
158
|
-
useValue:
|
|
172
|
+
provide: FlowbiteBreadcrumbItemConfigToken,
|
|
173
|
+
useValue: { ...defaultFlowbiteBreadcrumbItemConfig, ...config },
|
|
159
174
|
},
|
|
160
|
-
|
|
161
|
-
provide: FLOWBITE_BREADCRUMB_CUSTOM_STYLE_DEFAULT_VALUE,
|
|
162
|
-
useValue: {},
|
|
163
|
-
},
|
|
164
|
-
]);
|
|
175
|
+
];
|
|
165
176
|
/**
|
|
166
|
-
*
|
|
177
|
+
* Inject the Breadcrumb Item configuration
|
|
178
|
+
* @see {@link defaultFlowbiteBreadcrumbItemConfig}
|
|
179
|
+
* @returns The configuration
|
|
167
180
|
*/
|
|
168
|
-
|
|
181
|
+
const injectFlowbiteBreadcrumbItemConfig = () => inject(FlowbiteBreadcrumbItemConfigToken, { optional: true }) ??
|
|
182
|
+
defaultFlowbiteBreadcrumbItemConfig;
|
|
183
|
+
|
|
184
|
+
const FlowbiteBreadcrumbItemStateToken = createStateToken('Flowbite Breadcrumb Item');
|
|
185
|
+
const provideFlowbiteBreadcrumbItemState = createStateProvider(FlowbiteBreadcrumbItemStateToken);
|
|
186
|
+
const injectFlowbiteBreadcrumbItemState = createStateInjector(FlowbiteBreadcrumbItemStateToken);
|
|
187
|
+
const flowbiteBreadcrumbItemState = createState(FlowbiteBreadcrumbItemStateToken);
|
|
188
|
+
|
|
189
|
+
class BreadcrumbItem {
|
|
169
190
|
constructor() {
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
* Service injected used to generate class
|
|
173
|
-
*/
|
|
174
|
-
this.themeService = inject(BreadcrumbThemeService);
|
|
175
|
-
/**
|
|
176
|
-
* List of `BreadcrumbItemComponent`
|
|
177
|
-
*/
|
|
178
|
-
this.breadcrumbItemChildren = contentChildren(BreadcrumbItemComponent);
|
|
179
|
-
//#region properties
|
|
191
|
+
this.config = injectFlowbiteBreadcrumbItemConfig();
|
|
192
|
+
this.breadcrumbState = injectFlowbiteBreadcrumbState();
|
|
180
193
|
/**
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
* @default primary
|
|
194
|
+
* @see {@link injectFlowbiteBreadcrumbItemConfig}
|
|
184
195
|
*/
|
|
185
|
-
this.
|
|
196
|
+
this.customTheme = input(this.config.customTheme);
|
|
197
|
+
this.theme = computed(() => {
|
|
198
|
+
const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
|
|
199
|
+
return {
|
|
200
|
+
host: {
|
|
201
|
+
root: twMerge(mergedTheme.host.base, mergedTheme.host.transition, colorToTheme(mergedTheme.host.color, this.breadcrumbState().color())),
|
|
202
|
+
},
|
|
203
|
+
};
|
|
204
|
+
});
|
|
186
205
|
/**
|
|
187
|
-
*
|
|
206
|
+
* @internal
|
|
188
207
|
*/
|
|
189
|
-
this.
|
|
190
|
-
}
|
|
191
|
-
//#endregion
|
|
192
|
-
//#region BaseComponent implementation
|
|
193
|
-
fetchClass() {
|
|
194
|
-
return this.themeService.getClasses({
|
|
195
|
-
customStyle: this.customStyle(),
|
|
196
|
-
});
|
|
208
|
+
this.state = flowbiteBreadcrumbItemState(this);
|
|
197
209
|
}
|
|
198
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
199
|
-
static { this.ɵ
|
|
210
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
211
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: BreadcrumbItem, isStandalone: true, selector: "\n li[flowbiteBreadcrumbItem]\n ", inputs: { customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBreadcrumbItemState()], exportAs: ["flowbiteBreadcrumbItem"], hostDirectives: [{ directive: i1.NgpButton, inputs: ["disabled", "disabled"] }, { directive: i2.NgpFocus }], ngImport: i0 }); }
|
|
200
212
|
}
|
|
201
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
202
|
-
type:
|
|
213
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BreadcrumbItem, decorators: [{
|
|
214
|
+
type: Directive,
|
|
203
215
|
args: [{
|
|
204
216
|
standalone: true,
|
|
205
|
-
selector:
|
|
206
|
-
|
|
217
|
+
selector: `
|
|
218
|
+
li[flowbiteBreadcrumbItem]
|
|
219
|
+
`,
|
|
220
|
+
exportAs: 'flowbiteBreadcrumbItem',
|
|
221
|
+
hostDirectives: [
|
|
222
|
+
{
|
|
223
|
+
directive: NgpButton,
|
|
224
|
+
inputs: ['disabled:disabled'],
|
|
225
|
+
outputs: [],
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
directive: NgpFocus,
|
|
229
|
+
inputs: [],
|
|
230
|
+
outputs: [],
|
|
231
|
+
},
|
|
232
|
+
],
|
|
233
|
+
providers: [provideFlowbiteBreadcrumbItemState()],
|
|
207
234
|
host: {
|
|
208
|
-
'[
|
|
235
|
+
'[class]': `theme().host.root`,
|
|
209
236
|
},
|
|
210
|
-
encapsulation: ViewEncapsulation.None,
|
|
211
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
212
237
|
}]
|
|
213
238
|
}] });
|
|
214
239
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
root: {
|
|
220
|
-
base: 'flex items-center',
|
|
240
|
+
const flowbiteBreadcrumbContentTheme = createTheme({
|
|
241
|
+
host: {
|
|
242
|
+
base: 'inline-flex items-center space-x-1 md:space-x-2',
|
|
243
|
+
transition: '',
|
|
221
244
|
},
|
|
222
245
|
});
|
|
223
246
|
|
|
247
|
+
const defaultFlowbiteBreadcrumbContentConfig = {
|
|
248
|
+
baseTheme: flowbiteBreadcrumbContentTheme,
|
|
249
|
+
customTheme: {},
|
|
250
|
+
};
|
|
251
|
+
const FlowbiteBreadcrumbContentConfigToken = new InjectionToken('FlowbiteBreadcrumbContentConfigToken');
|
|
224
252
|
/**
|
|
225
|
-
*
|
|
253
|
+
* Provide the default BreadcrumbContent configuration
|
|
254
|
+
* @param config The BreadcrumbContent configuration
|
|
255
|
+
* @returns The provider
|
|
226
256
|
*/
|
|
227
|
-
const
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
primary: 'text-primary-700 dark:text-primary-400 hover:text-primary-900 dark:hover:text-primary-500',
|
|
232
|
-
dark: 'text-gray-700 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white',
|
|
233
|
-
blue: 'text-blue-700 dark:text-blue-400 hover:text-blue-900 dark:hover:text-blue-500',
|
|
234
|
-
red: 'text-red-700 dark:text-red-400 hover:text-red-900 dark:hover:text-red-500',
|
|
235
|
-
green: 'text-green-700 dark:text-green-400 hover:text-green-900 dark:hover:text-green-500',
|
|
236
|
-
yellow: 'text-yellow-700 dark:text-yellow-400 hover:text-yellow-900 dark:hover:text-yellow-500',
|
|
237
|
-
},
|
|
238
|
-
},
|
|
239
|
-
icon: {
|
|
240
|
-
base: 'mx-1 h-6 w-6 md:mx-2 group-first:hidden',
|
|
257
|
+
const provideFlowbiteBreadcrumbContentConfig = (config) => [
|
|
258
|
+
{
|
|
259
|
+
provide: FlowbiteBreadcrumbContentConfigToken,
|
|
260
|
+
useValue: { ...defaultFlowbiteBreadcrumbContentConfig, ...config },
|
|
241
261
|
},
|
|
242
|
-
|
|
262
|
+
];
|
|
263
|
+
/**
|
|
264
|
+
* Inject the BreadcrumbContent configuration
|
|
265
|
+
* @see {@link defaultFlowbiteBreadcrumbContentConfig}
|
|
266
|
+
* @returns The configuration
|
|
267
|
+
*/
|
|
268
|
+
const injectFlowbiteBreadcrumbContentConfig = () => inject(FlowbiteBreadcrumbContentConfigToken, { optional: true }) ??
|
|
269
|
+
defaultFlowbiteBreadcrumbContentConfig;
|
|
270
|
+
|
|
271
|
+
const FlowbiteBreadcrumbContentStateToken = createStateToken('Flowbite BreadcrumbContent');
|
|
272
|
+
const provideFlowbiteBreadcrumbContentState = createStateProvider(FlowbiteBreadcrumbContentStateToken);
|
|
273
|
+
const injectFlowbiteBreadcrumbContentState = createStateInjector(FlowbiteBreadcrumbContentStateToken);
|
|
274
|
+
const flowbiteBreadcrumbContentState = createState(FlowbiteBreadcrumbContentStateToken);
|
|
275
|
+
|
|
276
|
+
class BreadcrumbContent {
|
|
277
|
+
constructor() {
|
|
278
|
+
this.config = injectFlowbiteBreadcrumbContentConfig();
|
|
279
|
+
/**
|
|
280
|
+
* @see {@link injectFlowbiteBreadcrumbContentConfig}
|
|
281
|
+
*/
|
|
282
|
+
this.customTheme = input(this.config.customTheme);
|
|
283
|
+
this.theme = computed(() => {
|
|
284
|
+
const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
|
|
285
|
+
return {
|
|
286
|
+
host: {
|
|
287
|
+
root: twMerge(mergedTheme.host.base, mergedTheme.host.transition),
|
|
288
|
+
},
|
|
289
|
+
};
|
|
290
|
+
});
|
|
291
|
+
/**
|
|
292
|
+
* @internal
|
|
293
|
+
*/
|
|
294
|
+
this.state = flowbiteBreadcrumbContentState(this);
|
|
295
|
+
}
|
|
296
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BreadcrumbContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
297
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: BreadcrumbContent, isStandalone: true, selector: "\n ol[flowbiteBreadcrumbContent]\n ", inputs: { customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBreadcrumbContentState()], exportAs: ["flowbiteBreadcrumbContent"], ngImport: i0 }); }
|
|
298
|
+
}
|
|
299
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BreadcrumbContent, decorators: [{
|
|
300
|
+
type: Directive,
|
|
301
|
+
args: [{
|
|
302
|
+
standalone: true,
|
|
303
|
+
selector: `
|
|
304
|
+
ol[flowbiteBreadcrumbContent]
|
|
305
|
+
`,
|
|
306
|
+
exportAs: 'flowbiteBreadcrumbContent',
|
|
307
|
+
hostDirectives: [],
|
|
308
|
+
providers: [provideFlowbiteBreadcrumbContentState()],
|
|
309
|
+
host: { '[class]': `theme().host.root` },
|
|
310
|
+
}]
|
|
311
|
+
}] });
|
|
312
|
+
|
|
313
|
+
/* Breadcrumb */
|
|
243
314
|
|
|
244
315
|
/**
|
|
245
316
|
* Generated bundle index. Do not edit.
|
|
246
317
|
*/
|
|
247
318
|
|
|
248
|
-
export {
|
|
319
|
+
export { Breadcrumb, BreadcrumbContent, BreadcrumbItem, FlowbiteBreadcrumbConfigToken, FlowbiteBreadcrumbContentConfigToken, FlowbiteBreadcrumbContentStateToken, FlowbiteBreadcrumbItemConfigToken, FlowbiteBreadcrumbItemStateToken, FlowbiteBreadcrumbStateToken, defaultFlowbiteBreadcrumbConfig, defaultFlowbiteBreadcrumbContentConfig, defaultFlowbiteBreadcrumbItemConfig, flowbiteBreadcrumbContentState, flowbiteBreadcrumbContentTheme, flowbiteBreadcrumbItemState, flowbiteBreadcrumbItemTheme, flowbiteBreadcrumbState, flowbiteBreadcrumbTheme, injectFlowbiteBreadcrumbConfig, injectFlowbiteBreadcrumbContentConfig, injectFlowbiteBreadcrumbContentState, injectFlowbiteBreadcrumbItemConfig, injectFlowbiteBreadcrumbItemState, injectFlowbiteBreadcrumbState, provideFlowbiteBreadcrumbConfig, provideFlowbiteBreadcrumbContentConfig, provideFlowbiteBreadcrumbContentState, provideFlowbiteBreadcrumbItemConfig, provideFlowbiteBreadcrumbItemState, provideFlowbiteBreadcrumbState };
|
|
249
320
|
//# sourceMappingURL=flowbite-angular-breadcrumb.mjs.map
|