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.
Files changed (309) hide show
  1. package/README.md +30 -39
  2. package/accordion/index.d.ts +569 -16
  3. package/alert/index.d.ts +602 -4
  4. package/badge/index.d.ts +636 -4
  5. package/breadcrumb/index.d.ts +452 -8
  6. package/button/index.d.ts +335 -4
  7. package/button-group/README.md +4 -0
  8. package/button-group/index.d.ts +85 -0
  9. package/{core → card}/README.md +2 -2
  10. package/card/index.d.ts +640 -0
  11. package/{accordion → clipboard}/README.md +2 -2
  12. package/clipboard/index.d.ts +103 -0
  13. package/dropdown/index.d.ts +536 -16
  14. package/fesm2022/flowbite-angular-accordion.mjs +339 -479
  15. package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
  16. package/fesm2022/flowbite-angular-alert.mjs +308 -240
  17. package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
  18. package/fesm2022/flowbite-angular-badge.mjs +332 -238
  19. package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
  20. package/fesm2022/flowbite-angular-breadcrumb.mjs +262 -191
  21. package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
  22. package/fesm2022/flowbite-angular-button-group.mjs +86 -0
  23. package/fesm2022/flowbite-angular-button-group.mjs.map +1 -0
  24. package/fesm2022/flowbite-angular-button.mjs +189 -270
  25. package/fesm2022/flowbite-angular-button.mjs.map +1 -1
  26. package/fesm2022/flowbite-angular-card.mjs +344 -0
  27. package/fesm2022/flowbite-angular-card.mjs.map +1 -0
  28. package/fesm2022/flowbite-angular-clipboard.mjs +174 -0
  29. package/fesm2022/flowbite-angular-clipboard.mjs.map +1 -0
  30. package/fesm2022/flowbite-angular-dropdown.mjs +272 -459
  31. package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
  32. package/fesm2022/flowbite-angular-form.mjs +444 -0
  33. package/fesm2022/flowbite-angular-form.mjs.map +1 -0
  34. package/fesm2022/flowbite-angular-icon-brand.mjs +71 -0
  35. package/fesm2022/flowbite-angular-icon-brand.mjs.map +1 -0
  36. package/fesm2022/flowbite-angular-icon-outline-arrows.mjs +51 -0
  37. package/fesm2022/flowbite-angular-icon-outline-arrows.mjs.map +1 -0
  38. package/fesm2022/flowbite-angular-icon-outline-e-commerce.mjs +23 -0
  39. package/fesm2022/flowbite-angular-icon-outline-e-commerce.mjs.map +1 -0
  40. package/fesm2022/flowbite-angular-icon-outline-emoji.mjs +13 -0
  41. package/fesm2022/flowbite-angular-icon-outline-emoji.mjs.map +1 -0
  42. package/fesm2022/flowbite-angular-icon-outline-files-folders.mjs +42 -0
  43. package/fesm2022/flowbite-angular-icon-outline-files-folders.mjs.map +1 -0
  44. package/fesm2022/flowbite-angular-icon-outline-general.mjs +145 -0
  45. package/fesm2022/flowbite-angular-icon-outline-general.mjs.map +1 -0
  46. package/fesm2022/flowbite-angular-icon-outline-media.mjs +25 -0
  47. package/fesm2022/flowbite-angular-icon-outline-media.mjs.map +1 -0
  48. package/fesm2022/flowbite-angular-icon-outline-text.mjs +20 -0
  49. package/fesm2022/flowbite-angular-icon-outline-text.mjs.map +1 -0
  50. package/fesm2022/flowbite-angular-icon-outline-user.mjs +17 -0
  51. package/fesm2022/flowbite-angular-icon-outline-user.mjs.map +1 -0
  52. package/fesm2022/flowbite-angular-icon-outline-weather.mjs +9 -0
  53. package/fesm2022/flowbite-angular-icon-outline-weather.mjs.map +1 -0
  54. package/fesm2022/flowbite-angular-icon-outline.mjs +6 -0
  55. package/fesm2022/flowbite-angular-icon-outline.mjs.map +1 -0
  56. package/fesm2022/flowbite-angular-icon-solid-arrows.mjs +17 -0
  57. package/fesm2022/flowbite-angular-icon-solid-arrows.mjs.map +1 -0
  58. package/fesm2022/flowbite-angular-icon-solid-brands.mjs +33 -0
  59. package/fesm2022/flowbite-angular-icon-solid-brands.mjs.map +1 -0
  60. package/fesm2022/flowbite-angular-icon-solid-e-commerce.mjs +21 -0
  61. package/fesm2022/flowbite-angular-icon-solid-e-commerce.mjs.map +1 -0
  62. package/fesm2022/flowbite-angular-icon-solid-emoji.mjs +13 -0
  63. package/fesm2022/flowbite-angular-icon-solid-emoji.mjs.map +1 -0
  64. package/fesm2022/flowbite-angular-icon-solid-files-folder.mjs +42 -0
  65. package/fesm2022/flowbite-angular-icon-solid-files-folder.mjs.map +1 -0
  66. package/fesm2022/flowbite-angular-icon-solid-general.mjs +123 -0
  67. package/fesm2022/flowbite-angular-icon-solid-general.mjs.map +1 -0
  68. package/fesm2022/flowbite-angular-icon-solid-media.mjs +24 -0
  69. package/fesm2022/flowbite-angular-icon-solid-media.mjs.map +1 -0
  70. package/fesm2022/flowbite-angular-icon-solid-text.mjs +11 -0
  71. package/fesm2022/flowbite-angular-icon-solid-text.mjs.map +1 -0
  72. package/fesm2022/flowbite-angular-icon-solid-user.mjs +17 -0
  73. package/fesm2022/flowbite-angular-icon-solid-user.mjs.map +1 -0
  74. package/fesm2022/flowbite-angular-icon-solid-weather.mjs +9 -0
  75. package/fesm2022/flowbite-angular-icon-solid-weather.mjs.map +1 -0
  76. package/fesm2022/flowbite-angular-icon-solid.mjs +6 -0
  77. package/fesm2022/flowbite-angular-icon-solid.mjs.map +1 -0
  78. package/fesm2022/flowbite-angular-icon.mjs +318 -219
  79. package/fesm2022/flowbite-angular-icon.mjs.map +1 -1
  80. package/fesm2022/flowbite-angular-indicator.mjs +119 -231
  81. package/fesm2022/flowbite-angular-indicator.mjs.map +1 -1
  82. package/fesm2022/flowbite-angular-modal.mjs +337 -486
  83. package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
  84. package/fesm2022/flowbite-angular-navbar.mjs +600 -604
  85. package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
  86. package/fesm2022/flowbite-angular-pagination.mjs +994 -0
  87. package/fesm2022/flowbite-angular-pagination.mjs.map +1 -0
  88. package/fesm2022/flowbite-angular-sidebar.mjs +400 -776
  89. package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
  90. package/fesm2022/flowbite-angular-tab.mjs +465 -0
  91. package/fesm2022/flowbite-angular-tab.mjs.map +1 -0
  92. package/fesm2022/flowbite-angular-theme-toggle.mjs +263 -0
  93. package/fesm2022/flowbite-angular-theme-toggle.mjs.map +1 -0
  94. package/fesm2022/flowbite-angular-tooltip.mjs +117 -0
  95. package/fesm2022/flowbite-angular-tooltip.mjs.map +1 -0
  96. package/fesm2022/flowbite-angular.mjs +53 -66
  97. package/fesm2022/flowbite-angular.mjs.map +1 -1
  98. package/flowbite-angular.css +2 -0
  99. package/{alert → form}/README.md +2 -2
  100. package/form/index.d.ts +684 -0
  101. package/{breadcrumb → icon/brand}/README.md +2 -2
  102. package/icon/brand/index.d.ts +66 -0
  103. package/icon/index.d.ts +322 -5
  104. package/icon/outline/README.md +4 -0
  105. package/icon/outline/arrows/index.d.ts +46 -0
  106. package/icon/outline/e-commerce/index.d.ts +18 -0
  107. package/icon/outline/emoji/index.d.ts +8 -0
  108. package/icon/outline/files-folders/index.d.ts +37 -0
  109. package/icon/outline/general/index.d.ts +140 -0
  110. package/icon/outline/index.d.ts +2 -0
  111. package/icon/outline/media/index.d.ts +20 -0
  112. package/icon/outline/text/index.d.ts +15 -0
  113. package/icon/outline/user/index.d.ts +12 -0
  114. package/icon/outline/weather/index.d.ts +4 -0
  115. package/icon/solid/README.md +4 -0
  116. package/icon/solid/arrows/index.d.ts +12 -0
  117. package/icon/solid/brands/index.d.ts +28 -0
  118. package/icon/solid/e-commerce/index.d.ts +16 -0
  119. package/icon/solid/emoji/index.d.ts +8 -0
  120. package/icon/solid/files-folder/index.d.ts +37 -0
  121. package/icon/solid/general/index.d.ts +118 -0
  122. package/icon/solid/index.d.ts +2 -0
  123. package/icon/solid/media/index.d.ts +19 -0
  124. package/icon/solid/text/index.d.ts +6 -0
  125. package/icon/solid/user/index.d.ts +12 -0
  126. package/icon/solid/weather/index.d.ts +4 -0
  127. package/index.d.ts +126 -3
  128. package/indicator/index.d.ts +242 -4
  129. package/modal/index.d.ts +458 -16
  130. package/navbar/index.d.ts +1467 -24
  131. package/package.json +133 -38
  132. package/pagination/README.md +4 -0
  133. package/pagination/index.d.ts +1135 -0
  134. package/sidebar/index.d.ts +880 -24
  135. package/styles/flowbite-angular.css +8 -0
  136. package/styles/part/animation.css +0 -0
  137. package/styles/part/color.css +125 -0
  138. package/styles/part/font-size.css +67 -0
  139. package/styles/part/rounded.css +11 -0
  140. package/styles/part/shadow.css +9 -0
  141. package/styles/part/spacing.css +38 -0
  142. package/{badge → tab}/README.md +2 -2
  143. package/tab/index.d.ts +791 -0
  144. package/theme-toggle/README.md +4 -0
  145. package/theme-toggle/index.d.ts +342 -0
  146. package/{button → tooltip}/README.md +2 -2
  147. package/tooltip/index.d.ts +158 -0
  148. package/accordion/accordion-content.component.d.ts +0 -69
  149. package/accordion/accordion-content.theme.d.ts +0 -28
  150. package/accordion/accordion-content.theme.service.d.ts +0 -19
  151. package/accordion/accordion-panel.component.d.ts +0 -67
  152. package/accordion/accordion-panel.theme.d.ts +0 -23
  153. package/accordion/accordion-panel.theme.service.d.ts +0 -20
  154. package/accordion/accordion-title.component.d.ts +0 -106
  155. package/accordion/accordion-title.theme.d.ts +0 -35
  156. package/accordion/accordion-title.theme.service.d.ts +0 -19
  157. package/accordion/accordion.component.d.ts +0 -61
  158. package/accordion/accordion.theme.d.ts +0 -29
  159. package/accordion/accordion.theme.service.d.ts +0 -19
  160. package/alert/alert.component.d.ts +0 -150
  161. package/alert/alert.theme.d.ts +0 -39
  162. package/alert/alert.theme.service.d.ts +0 -19
  163. package/badge/badge.component.d.ts +0 -196
  164. package/badge/badge.theme.d.ts +0 -53
  165. package/badge/badge.theme.service.d.ts +0 -19
  166. package/base-component.directive.d.ts +0 -51
  167. package/breadcrumb/breadcrumb-item.component.d.ts +0 -84
  168. package/breadcrumb/breadcrumb-item.theme.d.ts +0 -33
  169. package/breadcrumb/breadcrumb-item.theme.service.d.ts +0 -19
  170. package/breadcrumb/breadcrumb.component.d.ts +0 -43
  171. package/breadcrumb/breadcrumb.theme.d.ts +0 -29
  172. package/breadcrumb/breadcrumb.theme.service.d.ts +0 -19
  173. package/button/button.component.d.ts +0 -250
  174. package/button/button.theme.d.ts +0 -79
  175. package/button/button.theme.service.d.ts +0 -19
  176. package/core/flowbite.theme.init.d.ts +0 -9
  177. package/core/index.d.ts +0 -1
  178. package/dark-theme-toggle/README.md +0 -4
  179. package/dark-theme-toggle/dark-theme-toggle.component.d.ts +0 -51
  180. package/dark-theme-toggle/dark-theme-toggle.theme.d.ts +0 -23
  181. package/dark-theme-toggle/dark-theme-toggle.theme.service.d.ts +0 -19
  182. package/dark-theme-toggle/index.d.ts +0 -3
  183. package/dropdown/README.md +0 -4
  184. package/dropdown/dropdown-divider.component.d.ts +0 -36
  185. package/dropdown/dropdown-divider.theme.d.ts +0 -23
  186. package/dropdown/dropdown-divider.theme.service.d.ts +0 -19
  187. package/dropdown/dropdown-header.component.d.ts +0 -42
  188. package/dropdown/dropdown-header.theme.d.ts +0 -28
  189. package/dropdown/dropdown-header.theme.service.d.ts +0 -19
  190. package/dropdown/dropdown-item.component.d.ts +0 -36
  191. package/dropdown/dropdown-item.theme.d.ts +0 -23
  192. package/dropdown/dropdown-item.theme.service.d.ts +0 -19
  193. package/dropdown/dropdown.component.d.ts +0 -136
  194. package/dropdown/dropdown.theme.d.ts +0 -56
  195. package/dropdown/dropdown.theme.service.d.ts +0 -19
  196. package/fesm2022/flowbite-angular-core.mjs +0 -322
  197. package/fesm2022/flowbite-angular-core.mjs.map +0 -1
  198. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +0 -139
  199. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +0 -1
  200. package/fesm2022/flowbite-angular-router-link-active.mjs +0 -68
  201. package/fesm2022/flowbite-angular-router-link-active.mjs.map +0 -1
  202. package/fesm2022/flowbite-angular-router-link.mjs +0 -73
  203. package/fesm2022/flowbite-angular-router-link.mjs.map +0 -1
  204. package/fesm2022/flowbite-angular-sanitize-html.mjs +0 -39
  205. package/fesm2022/flowbite-angular-sanitize-html.mjs.map +0 -1
  206. package/fesm2022/flowbite-angular-scroll-top.mjs +0 -193
  207. package/fesm2022/flowbite-angular-scroll-top.mjs.map +0 -1
  208. package/fesm2022/flowbite-angular-theme.mjs +0 -78
  209. package/fesm2022/flowbite-angular-theme.mjs.map +0 -1
  210. package/fesm2022/flowbite-angular-utils.mjs +0 -210
  211. package/fesm2022/flowbite-angular-utils.mjs.map +0 -1
  212. package/flowbite.theme.service.d.ts +0 -12
  213. package/icon/icon-registry.d.ts +0 -45
  214. package/icon/icon.component.d.ts +0 -22
  215. package/icon/trusted-types.d.ts +0 -15
  216. package/indicator/indicators.component.d.ts +0 -224
  217. package/indicator/indicators.theme.d.ts +0 -59
  218. package/indicator/indicators.theme.service.d.ts +0 -19
  219. package/modal/modal-body.component.d.ts +0 -36
  220. package/modal/modal-body.theme.d.ts +0 -23
  221. package/modal/modal-body.theme.service.d.ts +0 -19
  222. package/modal/modal-footer.component.d.ts +0 -36
  223. package/modal/modal-footer.theme.d.ts +0 -23
  224. package/modal/modal-footer.theme.service.d.ts +0 -19
  225. package/modal/modal-header.component.d.ts +0 -60
  226. package/modal/modal-header.theme.d.ts +0 -32
  227. package/modal/modal-header.theme.service.d.ts +0 -19
  228. package/modal/modal.component.d.ts +0 -146
  229. package/modal/modal.theme.d.ts +0 -35
  230. package/modal/modal.theme.service.d.ts +0 -19
  231. package/navbar/navbar-brand.component.d.ts +0 -36
  232. package/navbar/navbar-brand.theme.d.ts +0 -23
  233. package/navbar/navbar-brand.theme.service.d.ts +0 -19
  234. package/navbar/navbar-content.component.d.ts +0 -50
  235. package/navbar/navbar-content.theme.d.ts +0 -28
  236. package/navbar/navbar-content.theme.service.d.ts +0 -19
  237. package/navbar/navbar-icon-button.component.d.ts +0 -59
  238. package/navbar/navbar-icon-button.theme.d.ts +0 -26
  239. package/navbar/navbar-icon-button.theme.service.d.ts +0 -19
  240. package/navbar/navbar-item.component.d.ts +0 -67
  241. package/navbar/navbar-item.theme.d.ts +0 -26
  242. package/navbar/navbar-item.theme.service.d.ts +0 -19
  243. package/navbar/navbar-toggle.component.d.ts +0 -51
  244. package/navbar/navbar-toggle.theme.d.ts +0 -23
  245. package/navbar/navbar-toggle.theme.service.d.ts +0 -19
  246. package/navbar/navbar.component.d.ts +0 -121
  247. package/navbar/navbar.theme.d.ts +0 -21
  248. package/navbar/navbar.theme.service.d.ts +0 -19
  249. package/router-link/README.md +0 -4
  250. package/router-link/flowbite-router-link.directive.d.ts +0 -28
  251. package/router-link/index.d.ts +0 -1
  252. package/router-link-active/README.md +0 -4
  253. package/router-link-active/flowbite-router-link-active.directive.d.ts +0 -37
  254. package/router-link-active/index.d.ts +0 -1
  255. package/sanitize-html/README.md +0 -4
  256. package/sanitize-html/index.d.ts +0 -1
  257. package/sanitize-html/sanitize-html.pipe.d.ts +0 -20
  258. package/scroll-top/README.md +0 -4
  259. package/scroll-top/index.d.ts +0 -4
  260. package/scroll-top/scroll-top.component.d.ts +0 -114
  261. package/scroll-top/scroll-top.theme.d.ts +0 -39
  262. package/scroll-top/scroll-top.theme.service.d.ts +0 -19
  263. package/sidebar/sidebar-item-group.component.d.ts +0 -100
  264. package/sidebar/sidebar-item-group.theme.d.ts +0 -31
  265. package/sidebar/sidebar-item-group.theme.service.d.ts +0 -19
  266. package/sidebar/sidebar-item.component.d.ts +0 -101
  267. package/sidebar/sidebar-item.theme.d.ts +0 -33
  268. package/sidebar/sidebar-item.theme.service.d.ts +0 -19
  269. package/sidebar/sidebar-menu.component.d.ts +0 -93
  270. package/sidebar/sidebar-menu.theme.d.ts +0 -30
  271. package/sidebar/sidebar-menu.theme.service.d.ts +0 -19
  272. package/sidebar/sidebar-page-content.component.d.ts +0 -46
  273. package/sidebar/sidebar-page-content.theme.d.ts +0 -27
  274. package/sidebar/sidebar-page-content.theme.service.d.ts +0 -19
  275. package/sidebar/sidebar-toggle.component.d.ts +0 -95
  276. package/sidebar/sidebar-toggle.theme.d.ts +0 -34
  277. package/sidebar/sidebar-toggle.theme.service.d.ts +0 -19
  278. package/sidebar/sidebar.component.d.ts +0 -84
  279. package/sidebar/sidebar.theme.d.ts +0 -22
  280. package/sidebar/sidebar.theme.service.d.ts +0 -19
  281. package/tailwind.config.js +0 -303
  282. package/theme/README.md +0 -4
  283. package/theme/flowbite-theme.directive.d.ts +0 -36
  284. package/theme/index.d.ts +0 -1
  285. package/type-definitions/colors/flowbite.colors.d.ts +0 -19
  286. package/type-definitions/colors/flowbite.gradient-colors.d.ts +0 -11
  287. package/type-definitions/colors/flowbite.gradient-duo-tone-colors.d.ts +0 -12
  288. package/type-definitions/colors/index.d.ts +0 -3
  289. package/type-definitions/flowbite.boolean.d.ts +0 -14
  290. package/type-definitions/flowbite.class.d.ts +0 -6
  291. package/type-definitions/flowbite.combination.d.ts +0 -8
  292. package/type-definitions/flowbite.content-positions.d.ts +0 -6
  293. package/type-definitions/flowbite.deep-partial.d.ts +0 -6
  294. package/type-definitions/flowbite.heading-levels.d.ts +0 -4
  295. package/type-definitions/flowbite.positions.d.ts +0 -14
  296. package/type-definitions/flowbite.router-link-parameter.d.ts +0 -5
  297. package/type-definitions/flowbite.sizes.d.ts +0 -10
  298. package/type-definitions/flowbite.themes.d.ts +0 -4
  299. package/type-definitions/index.d.ts +0 -12
  300. package/utils/README.md +0 -4
  301. package/utils/icon.list.d.ts +0 -7
  302. package/utils/id.generator.d.ts +0 -59
  303. package/utils/index.d.ts +0 -8
  304. package/utils/theme/clone-deep.d.ts +0 -7
  305. package/utils/theme/create-class.d.ts +0 -7
  306. package/utils/theme/create-theme.d.ts +0 -7
  307. package/utils/theme/is-object.d.ts +0 -7
  308. package/utils/theme/merge-theme.d.ts +0 -8
  309. package/utils/theme/to-string.d.ts +0 -7
@@ -1,249 +1,320 @@
1
- import { mergeTheme, CHEVRON_RIGHT_SVG_ICON, createTheme } from 'flowbite-angular/utils';
1
+ import { createTheme, mergeDeep, colorToTheme } from 'flowbite-angular';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, inject, Injectable, makeEnvironmentProviders, model, Component, ViewEncapsulation, ChangeDetectionStrategy, contentChildren } from '@angular/core';
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 { BaseComponent } from 'flowbite-angular';
6
- import { IconRegistry, IconComponent } from 'flowbite-angular/icon';
7
- import { FlowbiteRouterLinkDirective } from 'flowbite-angular/router-link';
8
- import { DomSanitizer } from '@angular/platform-browser';
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
- * `InjectionToken` used to import `BreadcrumbItemTheme` value
12
- *
13
- * @example
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 FLOWBITE_BREADCRUMB_ITEM_THEME_TOKEN = new InjectionToken('FLOWBITE_BREADCRUMB_ITEM_THEME_TOKEN');
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: FLOWBITE_BREADCRUMB_ITEM_CUSTOM_STYLE_DEFAULT_VALUE,
45
- useValue: {},
62
+ provide: FlowbiteBreadcrumbConfigToken,
63
+ useValue: { ...defaultFlowbiteBreadcrumbConfig, ...config },
46
64
  },
47
- ]);
65
+ ];
48
66
  /**
49
- * @see https://flowbite.com/docs/components/breadcrumb/
67
+ * Inject the Breadcrumb configuration
68
+ * @see {@link defaultFlowbiteBreadcrumbConfig}
69
+ * @returns The configuration
50
70
  */
51
- class BreadcrumbItemComponent extends BaseComponent {
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
- super(...arguments);
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
- * Optional `FlowbiteRouterLinkDirective` injected
82
+ * @see {@link injectFlowbiteBreadcrumbConfig}
64
83
  */
65
- this.flowbiteRouterLink = inject(FlowbiteRouterLinkDirective, { optional: true });
84
+ this.color = input(this.config.color);
66
85
  /**
67
- * `IconRegistry` service
86
+ * @see {@link injectFlowbiteBreadcrumbConfig}
68
87
  */
69
- this.iconRegistry = inject(IconRegistry);
88
+ this.solid = input(this.config.solid, { transform: booleanAttribute });
70
89
  /**
71
- * `DomSanitizer` service
90
+ * @see {@link injectFlowbiteBreadcrumbConfig}
72
91
  */
73
- this.domSanitizer = inject(DomSanitizer);
74
- //#region properties
75
- /**
76
- * Set the breadcrumb item color
77
- *
78
- * @default `BreadcrumbComponent`'s color
79
- */
80
- this.color = model(this.breadcrumbComponent.color());
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
- * Set the custom style for this breadcrumb item
104
+ * @internal
83
105
  */
84
- this.customStyle = model(inject(FLOWBITE_BREADCRUMB_ITEM_CUSTOM_STYLE_DEFAULT_VALUE));
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
- init() {
96
- this.iconRegistry.addRawSvgIconInNamepsace('flowbite-angular', 'chevron-right', this.domSanitizer.bypassSecurityTrustHtml(CHEVRON_RIGHT_SVG_ICON));
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: "19.0.4", ngImport: i0, type: BreadcrumbItemComponent, decorators: [{
107
- type: Component,
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
- imports: [IconComponent],
111
- selector: 'flowbite-breadcrumb-item',
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
- encapsulation: ViewEncapsulation.None,
119
- changeDetection: ChangeDetectionStrategy.OnPush,
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
- * `InjectionToken` used to import `BreadcrumbTheme` value
125
- *
126
- * @example
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 FLOWBITE_BREADCRUMB_THEME_TOKEN = new InjectionToken('FLOWBITE_BREADCRUMB_THEME_TOKEN');
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: FLOWBITE_BREADCRUMB_COLOR_DEFAULT_VALUE,
158
- useValue: 'primary',
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
- * @see https://flowbite.com/docs/components/breadcrumb/
177
+ * Inject the Breadcrumb Item configuration
178
+ * @see {@link defaultFlowbiteBreadcrumbItemConfig}
179
+ * @returns The configuration
167
180
  */
168
- class BreadcrumbComponent extends BaseComponent {
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
- super(...arguments);
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
- * Set the breacrumb color
182
- *
183
- * @default primary
194
+ * @see {@link injectFlowbiteBreadcrumbItemConfig}
184
195
  */
185
- this.color = model(inject(FLOWBITE_BREADCRUMB_COLOR_DEFAULT_VALUE));
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
- * Set the custom style for this breadcrumb
206
+ * @internal
188
207
  */
189
- this.customStyle = model(inject(FLOWBITE_BREADCRUMB_CUSTOM_STYLE_DEFAULT_VALUE));
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: "19.0.4", ngImport: i0, type: BreadcrumbComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
199
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.4", type: BreadcrumbComponent, isStandalone: true, selector: "flowbite-breadcrumb", 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" }, host: { properties: { "attr.aria-label": "breadcrumb" } }, queries: [{ propertyName: "breadcrumbItemChildren", predicate: BreadcrumbItemComponent, isSignal: true }], usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
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: "19.0.4", ngImport: i0, type: BreadcrumbComponent, decorators: [{
202
- type: Component,
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: 'flowbite-breadcrumb',
206
- template: `<ng-content />`,
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
- '[attr.aria-label]': 'breadcrumb',
235
+ '[class]': `theme().host.root`,
209
236
  },
210
- encapsulation: ViewEncapsulation.None,
211
- changeDetection: ChangeDetectionStrategy.OnPush,
212
237
  }]
213
238
  }] });
214
239
 
215
- /**
216
- * Default theme for `BreadcrumbComponent`
217
- */
218
- const breadcrumbTheme = createTheme({
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
- * Default theme for `BreadcrumbItemComponent`
253
+ * Provide the default BreadcrumbContent configuration
254
+ * @param config The BreadcrumbContent configuration
255
+ * @returns The provider
226
256
  */
227
- const breadcrumbItemTheme = createTheme({
228
- root: {
229
- base: 'group flex items-center text-sm font-medium cursor-pointer',
230
- color: {
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 { BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbItemThemeService, BreadcrumbThemeService, FLOWBITE_BREADCRUMB_COLOR_DEFAULT_VALUE, FLOWBITE_BREADCRUMB_CUSTOM_STYLE_DEFAULT_VALUE, FLOWBITE_BREADCRUMB_ITEM_CUSTOM_STYLE_DEFAULT_VALUE, FLOWBITE_BREADCRUMB_ITEM_THEME_TOKEN, FLOWBITE_BREADCRUMB_THEME_TOKEN, breadcrumbDefaultValueProvider, breadcrumbItemDefaultValueProvider, breadcrumbItemTheme, breadcrumbTheme };
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