flowbite-angular 1.2.0 → 20.0.1

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 (308) 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 +340 -479
  15. package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
  16. package/fesm2022/flowbite-angular-alert.mjs +309 -240
  17. package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
  18. package/fesm2022/flowbite-angular-badge.mjs +334 -136
  19. package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
  20. package/fesm2022/flowbite-angular-breadcrumb.mjs +263 -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 +190 -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 +273 -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 +338 -486
  83. package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
  84. package/fesm2022/flowbite-angular-navbar.mjs +601 -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 +403 -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/{alert → form}/README.md +2 -2
  99. package/form/index.d.ts +684 -0
  100. package/{breadcrumb → icon/brand}/README.md +2 -2
  101. package/icon/brand/index.d.ts +66 -0
  102. package/icon/index.d.ts +322 -5
  103. package/icon/outline/README.md +4 -0
  104. package/icon/outline/arrows/index.d.ts +46 -0
  105. package/icon/outline/e-commerce/index.d.ts +18 -0
  106. package/icon/outline/emoji/index.d.ts +8 -0
  107. package/icon/outline/files-folders/index.d.ts +37 -0
  108. package/icon/outline/general/index.d.ts +140 -0
  109. package/icon/outline/index.d.ts +2 -0
  110. package/icon/outline/media/index.d.ts +20 -0
  111. package/icon/outline/text/index.d.ts +15 -0
  112. package/icon/outline/user/index.d.ts +12 -0
  113. package/icon/outline/weather/index.d.ts +4 -0
  114. package/icon/solid/README.md +4 -0
  115. package/icon/solid/arrows/index.d.ts +12 -0
  116. package/icon/solid/brands/index.d.ts +28 -0
  117. package/icon/solid/e-commerce/index.d.ts +16 -0
  118. package/icon/solid/emoji/index.d.ts +8 -0
  119. package/icon/solid/files-folder/index.d.ts +37 -0
  120. package/icon/solid/general/index.d.ts +118 -0
  121. package/icon/solid/index.d.ts +2 -0
  122. package/icon/solid/media/index.d.ts +19 -0
  123. package/icon/solid/text/index.d.ts +6 -0
  124. package/icon/solid/user/index.d.ts +12 -0
  125. package/icon/solid/weather/index.d.ts +4 -0
  126. package/index.d.ts +126 -3
  127. package/indicator/index.d.ts +242 -4
  128. package/modal/index.d.ts +458 -16
  129. package/navbar/index.d.ts +1467 -24
  130. package/package.json +137 -42
  131. package/pagination/README.md +4 -0
  132. package/pagination/index.d.ts +1135 -0
  133. package/sidebar/index.d.ts +880 -24
  134. package/styles/flowbite-angular.css +8 -0
  135. package/styles/part/animation.css +0 -0
  136. package/styles/part/color.css +125 -0
  137. package/styles/part/font-size.css +67 -0
  138. package/styles/part/rounded.css +11 -0
  139. package/styles/part/shadow.css +9 -0
  140. package/styles/part/spacing.css +38 -0
  141. package/{badge → tab}/README.md +2 -2
  142. package/tab/index.d.ts +791 -0
  143. package/theme-toggle/README.md +4 -0
  144. package/theme-toggle/index.d.ts +342 -0
  145. package/{button → tooltip}/README.md +2 -2
  146. package/tooltip/index.d.ts +158 -0
  147. package/accordion/accordion-content.component.d.ts +0 -69
  148. package/accordion/accordion-content.theme.d.ts +0 -28
  149. package/accordion/accordion-content.theme.service.d.ts +0 -19
  150. package/accordion/accordion-panel.component.d.ts +0 -67
  151. package/accordion/accordion-panel.theme.d.ts +0 -23
  152. package/accordion/accordion-panel.theme.service.d.ts +0 -20
  153. package/accordion/accordion-title.component.d.ts +0 -106
  154. package/accordion/accordion-title.theme.d.ts +0 -35
  155. package/accordion/accordion-title.theme.service.d.ts +0 -19
  156. package/accordion/accordion.component.d.ts +0 -61
  157. package/accordion/accordion.theme.d.ts +0 -29
  158. package/accordion/accordion.theme.service.d.ts +0 -19
  159. package/alert/alert.component.d.ts +0 -150
  160. package/alert/alert.theme.d.ts +0 -39
  161. package/alert/alert.theme.service.d.ts +0 -19
  162. package/badge/badge.component.d.ts +0 -122
  163. package/badge/badge.theme.d.ts +0 -45
  164. package/badge/badge.theme.service.d.ts +0 -19
  165. package/base-component.directive.d.ts +0 -51
  166. package/breadcrumb/breadcrumb-item.component.d.ts +0 -84
  167. package/breadcrumb/breadcrumb-item.theme.d.ts +0 -33
  168. package/breadcrumb/breadcrumb-item.theme.service.d.ts +0 -19
  169. package/breadcrumb/breadcrumb.component.d.ts +0 -43
  170. package/breadcrumb/breadcrumb.theme.d.ts +0 -29
  171. package/breadcrumb/breadcrumb.theme.service.d.ts +0 -19
  172. package/button/button.component.d.ts +0 -250
  173. package/button/button.theme.d.ts +0 -79
  174. package/button/button.theme.service.d.ts +0 -19
  175. package/core/flowbite.theme.init.d.ts +0 -9
  176. package/core/index.d.ts +0 -1
  177. package/dark-theme-toggle/README.md +0 -4
  178. package/dark-theme-toggle/dark-theme-toggle.component.d.ts +0 -51
  179. package/dark-theme-toggle/dark-theme-toggle.theme.d.ts +0 -23
  180. package/dark-theme-toggle/dark-theme-toggle.theme.service.d.ts +0 -19
  181. package/dark-theme-toggle/index.d.ts +0 -3
  182. package/dropdown/README.md +0 -4
  183. package/dropdown/dropdown-divider.component.d.ts +0 -36
  184. package/dropdown/dropdown-divider.theme.d.ts +0 -23
  185. package/dropdown/dropdown-divider.theme.service.d.ts +0 -19
  186. package/dropdown/dropdown-header.component.d.ts +0 -42
  187. package/dropdown/dropdown-header.theme.d.ts +0 -28
  188. package/dropdown/dropdown-header.theme.service.d.ts +0 -19
  189. package/dropdown/dropdown-item.component.d.ts +0 -36
  190. package/dropdown/dropdown-item.theme.d.ts +0 -23
  191. package/dropdown/dropdown-item.theme.service.d.ts +0 -19
  192. package/dropdown/dropdown.component.d.ts +0 -136
  193. package/dropdown/dropdown.theme.d.ts +0 -56
  194. package/dropdown/dropdown.theme.service.d.ts +0 -19
  195. package/fesm2022/flowbite-angular-core.mjs +0 -322
  196. package/fesm2022/flowbite-angular-core.mjs.map +0 -1
  197. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +0 -138
  198. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +0 -1
  199. package/fesm2022/flowbite-angular-router-link-active.mjs +0 -68
  200. package/fesm2022/flowbite-angular-router-link-active.mjs.map +0 -1
  201. package/fesm2022/flowbite-angular-router-link.mjs +0 -73
  202. package/fesm2022/flowbite-angular-router-link.mjs.map +0 -1
  203. package/fesm2022/flowbite-angular-sanitize-html.mjs +0 -39
  204. package/fesm2022/flowbite-angular-sanitize-html.mjs.map +0 -1
  205. package/fesm2022/flowbite-angular-scroll-top.mjs +0 -192
  206. package/fesm2022/flowbite-angular-scroll-top.mjs.map +0 -1
  207. package/fesm2022/flowbite-angular-theme.mjs +0 -78
  208. package/fesm2022/flowbite-angular-theme.mjs.map +0 -1
  209. package/fesm2022/flowbite-angular-utils.mjs +0 -210
  210. package/fesm2022/flowbite-angular-utils.mjs.map +0 -1
  211. package/flowbite.theme.service.d.ts +0 -12
  212. package/icon/icon-registry.d.ts +0 -45
  213. package/icon/icon.component.d.ts +0 -22
  214. package/icon/trusted-types.d.ts +0 -15
  215. package/indicator/indicators.component.d.ts +0 -224
  216. package/indicator/indicators.theme.d.ts +0 -59
  217. package/indicator/indicators.theme.service.d.ts +0 -19
  218. package/modal/modal-body.component.d.ts +0 -36
  219. package/modal/modal-body.theme.d.ts +0 -23
  220. package/modal/modal-body.theme.service.d.ts +0 -19
  221. package/modal/modal-footer.component.d.ts +0 -36
  222. package/modal/modal-footer.theme.d.ts +0 -23
  223. package/modal/modal-footer.theme.service.d.ts +0 -19
  224. package/modal/modal-header.component.d.ts +0 -60
  225. package/modal/modal-header.theme.d.ts +0 -32
  226. package/modal/modal-header.theme.service.d.ts +0 -19
  227. package/modal/modal.component.d.ts +0 -146
  228. package/modal/modal.theme.d.ts +0 -35
  229. package/modal/modal.theme.service.d.ts +0 -19
  230. package/navbar/navbar-brand.component.d.ts +0 -36
  231. package/navbar/navbar-brand.theme.d.ts +0 -23
  232. package/navbar/navbar-brand.theme.service.d.ts +0 -19
  233. package/navbar/navbar-content.component.d.ts +0 -50
  234. package/navbar/navbar-content.theme.d.ts +0 -28
  235. package/navbar/navbar-content.theme.service.d.ts +0 -19
  236. package/navbar/navbar-icon-button.component.d.ts +0 -59
  237. package/navbar/navbar-icon-button.theme.d.ts +0 -26
  238. package/navbar/navbar-icon-button.theme.service.d.ts +0 -19
  239. package/navbar/navbar-item.component.d.ts +0 -67
  240. package/navbar/navbar-item.theme.d.ts +0 -26
  241. package/navbar/navbar-item.theme.service.d.ts +0 -19
  242. package/navbar/navbar-toggle.component.d.ts +0 -51
  243. package/navbar/navbar-toggle.theme.d.ts +0 -23
  244. package/navbar/navbar-toggle.theme.service.d.ts +0 -19
  245. package/navbar/navbar.component.d.ts +0 -121
  246. package/navbar/navbar.theme.d.ts +0 -21
  247. package/navbar/navbar.theme.service.d.ts +0 -19
  248. package/router-link/README.md +0 -4
  249. package/router-link/flowbite-router-link.directive.d.ts +0 -28
  250. package/router-link/index.d.ts +0 -1
  251. package/router-link-active/README.md +0 -4
  252. package/router-link-active/flowbite-router-link-active.directive.d.ts +0 -37
  253. package/router-link-active/index.d.ts +0 -1
  254. package/sanitize-html/README.md +0 -4
  255. package/sanitize-html/index.d.ts +0 -1
  256. package/sanitize-html/sanitize-html.pipe.d.ts +0 -20
  257. package/scroll-top/README.md +0 -4
  258. package/scroll-top/index.d.ts +0 -4
  259. package/scroll-top/scroll-top.component.d.ts +0 -114
  260. package/scroll-top/scroll-top.theme.d.ts +0 -39
  261. package/scroll-top/scroll-top.theme.service.d.ts +0 -19
  262. package/sidebar/sidebar-item-group.component.d.ts +0 -100
  263. package/sidebar/sidebar-item-group.theme.d.ts +0 -31
  264. package/sidebar/sidebar-item-group.theme.service.d.ts +0 -19
  265. package/sidebar/sidebar-item.component.d.ts +0 -101
  266. package/sidebar/sidebar-item.theme.d.ts +0 -33
  267. package/sidebar/sidebar-item.theme.service.d.ts +0 -19
  268. package/sidebar/sidebar-menu.component.d.ts +0 -93
  269. package/sidebar/sidebar-menu.theme.d.ts +0 -30
  270. package/sidebar/sidebar-menu.theme.service.d.ts +0 -19
  271. package/sidebar/sidebar-page-content.component.d.ts +0 -46
  272. package/sidebar/sidebar-page-content.theme.d.ts +0 -27
  273. package/sidebar/sidebar-page-content.theme.service.d.ts +0 -19
  274. package/sidebar/sidebar-toggle.component.d.ts +0 -95
  275. package/sidebar/sidebar-toggle.theme.d.ts +0 -34
  276. package/sidebar/sidebar-toggle.theme.service.d.ts +0 -19
  277. package/sidebar/sidebar.component.d.ts +0 -84
  278. package/sidebar/sidebar.theme.d.ts +0 -22
  279. package/sidebar/sidebar.theme.service.d.ts +0 -19
  280. package/tailwind.config.js +0 -303
  281. package/theme/README.md +0 -4
  282. package/theme/flowbite-theme.directive.d.ts +0 -36
  283. package/theme/index.d.ts +0 -1
  284. package/type-definitions/colors/flowbite.colors.d.ts +0 -19
  285. package/type-definitions/colors/flowbite.gradient-colors.d.ts +0 -11
  286. package/type-definitions/colors/flowbite.gradient-duo-tone-colors.d.ts +0 -12
  287. package/type-definitions/colors/index.d.ts +0 -3
  288. package/type-definitions/flowbite.boolean.d.ts +0 -14
  289. package/type-definitions/flowbite.class.d.ts +0 -6
  290. package/type-definitions/flowbite.combination.d.ts +0 -8
  291. package/type-definitions/flowbite.content-positions.d.ts +0 -6
  292. package/type-definitions/flowbite.deep-partial.d.ts +0 -6
  293. package/type-definitions/flowbite.heading-levels.d.ts +0 -4
  294. package/type-definitions/flowbite.positions.d.ts +0 -14
  295. package/type-definitions/flowbite.router-link-parameter.d.ts +0 -5
  296. package/type-definitions/flowbite.sizes.d.ts +0 -10
  297. package/type-definitions/flowbite.themes.d.ts +0 -4
  298. package/type-definitions/index.d.ts +0 -12
  299. package/utils/README.md +0 -4
  300. package/utils/icon.list.d.ts +0 -7
  301. package/utils/id.generator.d.ts +0 -59
  302. package/utils/index.d.ts +0 -8
  303. package/utils/theme/clone-deep.d.ts +0 -7
  304. package/utils/theme/create-class.d.ts +0 -7
  305. package/utils/theme/create-theme.d.ts +0 -7
  306. package/utils/theme/is-object.d.ts +0 -7
  307. package/utils/theme/merge-theme.d.ts +0 -8
  308. package/utils/theme/to-string.d.ts +0 -7
@@ -1,178 +1,376 @@
1
- import { mergeTheme, 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 } 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, booleanToFlowbiteBoolean } from 'flowbite-angular';
6
- import { FlowbiteRouterLinkDirective } from 'flowbite-angular/router-link';
6
+ import * as i2 from 'ng-primitives/button';
7
+ import { NgpButton } from 'ng-primitives/button';
8
+ import * as i3 from 'ng-primitives/interactions';
9
+ import { NgpFocus } from 'ng-primitives/interactions';
7
10
 
11
+ const flowbiteBadgeTheme = createTheme({
12
+ host: {
13
+ base: 'inline-flex items-center justify-center font-medium',
14
+ transition: '',
15
+ border: {
16
+ on: 'border',
17
+ off: 'border-0',
18
+ },
19
+ color: {
20
+ default: {
21
+ light: 'border-gray-300 bg-gray-100 text-gray-800',
22
+ dark: 'dark:border-gray-900 dark:bg-gray-800 dark:text-gray-100',
23
+ },
24
+ info: {
25
+ light: 'border-blue-300 bg-blue-100 text-blue-800',
26
+ dark: 'dark:border-blue-900 dark:bg-blue-800 dark:text-blue-100',
27
+ },
28
+ failure: {
29
+ light: 'border-red-300 bg-red-100 text-red-800',
30
+ dark: 'dark:border-red-900 dark:bg-red-800 dark:text-red-100',
31
+ },
32
+ success: {
33
+ light: 'border-green-300 bg-green-100 text-green-800',
34
+ dark: 'dark:border-green-900 dark:bg-green-800 dark:text-green-100',
35
+ },
36
+ warning: {
37
+ light: 'border-yellow-300 bg-yellow-100 text-yellow-800',
38
+ dark: 'dark:border-yellow-900 dark:bg-yellow-800 dark:text-yellow-100',
39
+ },
40
+ primary: {
41
+ light: 'bg-primary-100 text-primary-800 border-primary-300',
42
+ dark: 'dark:text-primary-100 dark:bg-primary-800 dark:border-primary-900',
43
+ },
44
+ },
45
+ pill: {
46
+ on: 'rounded-full',
47
+ off: 'rounded',
48
+ },
49
+ size: {
50
+ xs: 'p-1 text-xs',
51
+ sm: 'p-1.5 text-sm',
52
+ },
53
+ },
54
+ });
55
+
56
+ const defaultFlowbiteBadgeConfig = {
57
+ baseTheme: flowbiteBadgeTheme,
58
+ color: 'default',
59
+ border: false,
60
+ pill: false,
61
+ size: 'sm',
62
+ customTheme: {},
63
+ };
64
+ const FlowbiteBadgeConfigToken = new InjectionToken('FlowbiteBadgeConfigToken');
8
65
  /**
9
- * `InjectionToken` used to import `BadgeTheme` value
10
- *
11
- * @example
12
- * ```
13
- * var theme = inject(FLOWBITE_BADGE_THEME_TOKEN)
14
- * ```
66
+ * Provide the default Badge configuration
67
+ * @param config The Badge configuration
68
+ * @returns The provider
15
69
  */
16
- const FLOWBITE_BADGE_THEME_TOKEN = new InjectionToken('FLOWBITE_BADGE_THEME_TOKEN');
17
- class BadgeThemeService {
18
- constructor() {
19
- this.baseTheme = inject(FLOWBITE_BADGE_THEME_TOKEN);
20
- }
21
- getClasses(properties) {
22
- const theme = mergeTheme(this.baseTheme, properties.customStyle);
23
- const output = {
24
- rootClass: twMerge(theme.root.base, theme.root.color[properties.color], theme.root.size[properties.size], theme.root.isPill[properties.isPill == 'enabled' || properties.isIconOnly == 'enabled'
25
- ? 'enabled'
26
- : properties.isPill], theme.root.isIconOnly[properties.isIconOnly], theme.root.link[properties.link ? 'enabled' : 'disabled']),
27
- };
28
- return output;
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BadgeThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
31
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BadgeThemeService, providedIn: 'root' }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BadgeThemeService, decorators: [{
34
- type: Injectable,
35
- args: [{
36
- providedIn: 'root',
37
- }]
38
- }] });
39
-
40
- const FLOWBITE_BADGE_COLOR_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BADGE_COLOR_DEFAULT_VALUE');
41
- const FLOWBITE_BADGE_SIZE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BADGE_SIZE_DEFAULT_VALUE');
42
- const FLOWBITE_BADGE_IS_ICON_ONLY_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BADGE_IS_ICON_ONLY_DEFAULT_VALUE');
43
- const FLOWBITE_BADGE_IS_PILL_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BADGE_IS_PILL_DEFAULT_VALUE');
44
- const FLOWBITE_BADGE_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_BADGE_CUSTOM_STYLE_DEFAULT_VALUE');
45
- const badgeDefaultValueProvider = makeEnvironmentProviders([
46
- {
47
- provide: FLOWBITE_BADGE_COLOR_DEFAULT_VALUE,
48
- useValue: 'primary',
49
- },
50
- {
51
- provide: FLOWBITE_BADGE_SIZE_DEFAULT_VALUE,
52
- useValue: 'xs',
53
- },
70
+ const provideFlowbiteBadgeConfig = (config) => [
54
71
  {
55
- provide: FLOWBITE_BADGE_IS_ICON_ONLY_DEFAULT_VALUE,
56
- useValue: false,
72
+ provide: FlowbiteBadgeConfigToken,
73
+ useValue: { ...defaultFlowbiteBadgeConfig, ...config },
57
74
  },
58
- {
59
- provide: FLOWBITE_BADGE_IS_PILL_DEFAULT_VALUE,
60
- useValue: false,
61
- },
62
- {
63
- provide: FLOWBITE_BADGE_CUSTOM_STYLE_DEFAULT_VALUE,
64
- useValue: {},
65
- },
66
- ]);
75
+ ];
67
76
  /**
68
- * @see https://flowbite.com/docs/components/badge/
77
+ * Inject the Badge configuration
78
+ * @see {@link defaultFlowbiteBadgeConfig}
79
+ * @returns The configuration
69
80
  */
70
- class BadgeComponent extends BaseComponent {
81
+ const injectFlowbiteBadgeConfig = () => inject(FlowbiteBadgeConfigToken, { optional: true }) ?? defaultFlowbiteBadgeConfig;
82
+
83
+ const FlowbiteBadgeStateToken = createStateToken('Flowbite Badge');
84
+ const provideFlowbiteBadgeState = createStateProvider(FlowbiteBadgeStateToken);
85
+ const injectFlowbiteBadgeState = createStateInjector(FlowbiteBadgeStateToken);
86
+ const flowbiteBadgeState = createState(FlowbiteBadgeStateToken);
87
+
88
+ class Badge {
71
89
  constructor() {
72
- super(...arguments);
90
+ this.config = injectFlowbiteBadgeConfig();
73
91
  /**
74
- * Optional `FlowbiteRouterLinkDirective` injected
92
+ * @see {@link injectFlowbiteBadgeConfig}
75
93
  */
76
- this.flowbiteRouterLink = inject(FlowbiteRouterLinkDirective, { optional: true });
94
+ this.color = input(this.config.color);
77
95
  /**
78
- * Service injected used to generate class
96
+ * @see {@link injectFlowbiteBadgeConfig}
79
97
  */
80
- this.themeService = inject(BadgeThemeService);
81
- //#region properties
98
+ this.border = input(this.config.border, { transform: booleanAttribute });
82
99
  /**
83
- * Set the badge color
84
- *
85
- * @default primary
100
+ * @see {@link injectFlowbiteBadgeConfig}
86
101
  */
87
- this.color = model(inject(FLOWBITE_BADGE_COLOR_DEFAULT_VALUE));
102
+ this.pill = input(this.config.pill, { transform: booleanAttribute });
88
103
  /**
89
- * Set the badge size
90
- *
91
- * @default xs
104
+ * @see {@link injectFlowbiteBadgeConfig}
92
105
  */
93
- this.size = model(inject(FLOWBITE_BADGE_SIZE_DEFAULT_VALUE));
106
+ this.size = input(this.config.size);
94
107
  /**
95
- * Set if the badge is icon only
96
- *
97
- * @default false
108
+ * @see {@link injectFlowbiteBadgeConfig}
98
109
  */
99
- this.isIconOnly = model(inject(FLOWBITE_BADGE_IS_ICON_ONLY_DEFAULT_VALUE));
110
+ this.customTheme = input(this.config.customTheme);
111
+ this.theme = computed(() => {
112
+ const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
113
+ return {
114
+ host: {
115
+ root: twMerge(mergedTheme.host.base, mergedTheme.host.transition, colorToTheme(mergedTheme.host.color, this.state.color()), mergedTheme.host.border[this.state.border() ? 'on' : 'off'], mergedTheme.host.pill[this.state.pill() ? 'on' : 'off'], mergedTheme.host.size[this.state.size()]),
116
+ },
117
+ };
118
+ });
100
119
  /**
101
- * Set if the badge is pill
102
- *
103
- * @default false
120
+ * @internal
104
121
  */
105
- this.isPill = model(inject(FLOWBITE_BADGE_IS_PILL_DEFAULT_VALUE));
122
+ this.state = flowbiteBadgeState(this);
123
+ }
124
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Badge, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
125
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: Badge, isStandalone: true, selector: "\n span[flowbiteBadge]\n ", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, border: { classPropertyName: "border", publicName: "border", isSignal: true, isRequired: false, transformFunction: null }, pill: { classPropertyName: "pill", publicName: "pill", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBadgeState()], exportAs: ["flowbiteBadge"], ngImport: i0 }); }
126
+ }
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Badge, decorators: [{
128
+ type: Directive,
129
+ args: [{
130
+ standalone: true,
131
+ selector: `
132
+ span[flowbiteBadge]
133
+ `,
134
+ exportAs: 'flowbiteBadge',
135
+ hostDirectives: [],
136
+ providers: [provideFlowbiteBadgeState()],
137
+ host: {
138
+ '[class]': `theme().host.root`,
139
+ },
140
+ }]
141
+ }] });
142
+
143
+ const flowbiteBadgeLinkTheme = createTheme({
144
+ host: {
145
+ base: 'data-hover:cursor-pointer',
146
+ transition: '',
147
+ color: {
148
+ default: {
149
+ light: 'data-hover:bg-gray-200',
150
+ dark: 'dark:data-hover:bg-gray-700',
151
+ },
152
+ info: {
153
+ light: 'data-hover:bg-blue-200',
154
+ dark: 'dark:data-hover:bg-blue-900',
155
+ },
156
+ failure: {
157
+ light: 'data-hover:bg-red-200',
158
+ dark: 'dark:data-hover:bg-red-900',
159
+ },
160
+ success: {
161
+ light: 'data-hover:bg-green-200',
162
+ dark: 'dark:data-hover:bg-green-900',
163
+ },
164
+ warning: {
165
+ light: 'data-hover:bg-yellow-200',
166
+ dark: 'dark:data-hover:bg-yellow-900',
167
+ },
168
+ primary: {
169
+ light: 'data-hover:bg-primary-200',
170
+ dark: 'dark:data-hover:bg-primary-900',
171
+ },
172
+ },
173
+ },
174
+ });
175
+
176
+ const defaultFlowbiteBadgeLinkConfig = {
177
+ baseTheme: flowbiteBadgeLinkTheme,
178
+ customTheme: {},
179
+ };
180
+ const FlowbiteBadgeLinkConfigToken = new InjectionToken('FlowbiteBadgeLinkConfigToken');
181
+ /**
182
+ * Provide the default BadgeLink configuration
183
+ * @param config The BadgeLink configuration
184
+ * @returns The provider
185
+ */
186
+ const provideFlowbiteBadgeLinkConfig = (config) => [
187
+ {
188
+ provide: FlowbiteBadgeLinkConfigToken,
189
+ useValue: { ...defaultFlowbiteBadgeLinkConfig, ...config },
190
+ },
191
+ ];
192
+ /**
193
+ * Inject the BadgeLink configuration
194
+ * @see {@link defaultFlowbiteBadgeLinkConfig}
195
+ * @returns The configuration
196
+ */
197
+ const injectFlowbiteBadgeLinkConfig = () => inject(FlowbiteBadgeLinkConfigToken, { optional: true }) ?? defaultFlowbiteBadgeLinkConfig;
198
+
199
+ const FlowbiteBadgeLinkStateToken = createStateToken('Flowbite BadgeLink');
200
+ const provideFlowbiteBadgeLinkState = createStateProvider(FlowbiteBadgeLinkStateToken);
201
+ const injectFlowbiteBadgeLinkState = createStateInjector(FlowbiteBadgeLinkStateToken);
202
+ const flowbiteBadgeLinkState = createState(FlowbiteBadgeLinkStateToken);
203
+
204
+ class BadgeLink {
205
+ constructor() {
206
+ this.config = injectFlowbiteBadgeLinkConfig();
207
+ this.badgeState = injectFlowbiteBadgeState();
106
208
  /**
107
- * Set the custom style for this badge
209
+ * @see {@link injectFlowbiteBadgeLinkConfig}
108
210
  */
109
- this.customStyle = model(inject(FLOWBITE_BADGE_CUSTOM_STYLE_DEFAULT_VALUE));
110
- }
111
- //#endregion
112
- //#region BaseComponent implementation
113
- fetchClass() {
114
- return this.themeService.getClasses({
115
- color: this.color(),
116
- size: this.size(),
117
- isIconOnly: booleanToFlowbiteBoolean(this.isIconOnly()),
118
- isPill: booleanToFlowbiteBoolean(this.isPill()),
119
- link: this.flowbiteRouterLink?.routerLink.urlTree ?? null,
120
- customStyle: this.customStyle(),
211
+ this.customTheme = input(this.config.customTheme);
212
+ this.theme = computed(() => {
213
+ const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
214
+ return {
215
+ host: {
216
+ root: twMerge(mergedTheme.host.base, mergedTheme.host.transition, colorToTheme(mergedTheme.host.color, this.badgeState().color())),
217
+ },
218
+ };
121
219
  });
220
+ /**
221
+ * @internal
222
+ */
223
+ this.state = flowbiteBadgeLinkState(this);
122
224
  }
123
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BadgeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
124
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.4", type: BadgeComponent, isStandalone: true, selector: "flowbite-badge", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, isIconOnly: { classPropertyName: "isIconOnly", publicName: "isIconOnly", isSignal: true, isRequired: false, transformFunction: null }, isPill: { classPropertyName: "isPill", publicName: "isPill", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: "colorChange", size: "sizeChange", isIconOnly: "isIconOnlyChange", isPill: "isPillChange", customStyle: "customStyleChange" }, usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
225
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BadgeLink, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
226
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: BadgeLink, isStandalone: true, selector: "\n button[flowbiteBadgeLink],\n a[flowbiteBadgeLink]\n ", inputs: { customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBadgeLinkState()], exportAs: ["flowbiteBadgeLink"], hostDirectives: [{ directive: Badge, inputs: ["color", "color", "border", "border", "pill", "pill", "size", "size", "customTheme", "badgeCustomTheme"] }, { directive: i2.NgpButton, inputs: ["disabled", "disabled"] }, { directive: i3.NgpFocus }], ngImport: i0 }); }
125
227
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BadgeComponent, decorators: [{
127
- type: Component,
228
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BadgeLink, decorators: [{
229
+ type: Directive,
128
230
  args: [{
129
231
  standalone: true,
130
- selector: 'flowbite-badge',
131
- template: `<ng-content />`,
132
- encapsulation: ViewEncapsulation.None,
133
- changeDetection: ChangeDetectionStrategy.OnPush,
232
+ selector: `
233
+ button[flowbiteBadgeLink],
234
+ a[flowbiteBadgeLink]
235
+ `,
236
+ exportAs: 'flowbiteBadgeLink',
237
+ hostDirectives: [
238
+ {
239
+ directive: Badge,
240
+ inputs: ['color', 'border', 'pill', 'size', 'customTheme:badgeCustomTheme'],
241
+ outputs: [],
242
+ },
243
+ {
244
+ directive: NgpButton,
245
+ inputs: ['disabled:disabled'],
246
+ outputs: [],
247
+ },
248
+ {
249
+ directive: NgpFocus,
250
+ inputs: [],
251
+ outputs: [],
252
+ },
253
+ ],
254
+ providers: [provideFlowbiteBadgeLinkState()],
255
+ host: { '[class]': `theme().host.root` },
134
256
  }]
135
257
  }] });
136
258
 
137
- /**
138
- * Default theme for `BadgeComponent`
139
- */
140
- const badgeTheme = createTheme({
141
- root: {
142
- base: 'flex h-fit items-center gap-1 font-semibold',
259
+ const flowbiteBadgeButtonTheme = createTheme({
260
+ host: {
261
+ base: 'flex rounded-lg p-1 first:mr-2 last:ml-2 data-hover:cursor-pointer',
143
262
  color: {
144
- primary: 'bg-primary-100 dark:bg-primary-700 text-primary-800 dark:text-primary-300 group-hover:bg-primary-200 dark:group-hover:bg-primary-600',
145
- dark: 'bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-300 group-hover:bg-gray-200 dark:group-hover:bg-gray-600',
146
- blue: 'bg-blue-100 dark:bg-blue-200 text-blue-800 dark:text-blue-800 group-hover:bg-blue-200 dark:group-hover:bg-blue-300',
147
- red: 'bg-red-100 dark:bg-red-200 text-red-800 dark:text-red-900 group-hover:bg-red-200 dark:group-hover:bg-red-300',
148
- green: 'bg-green-100 dark:bg-green-200 text-green-800 dark:text-green-900 group-hover:bg-green-200 dark:group-hover:bg-green-300',
149
- yellow: 'bg-yellow-100 dark:bg-yellow-200 text-yellow-800 dark:text-yellow-900 group-hover:bg-yellow-200 dark:group-hover:bg-yellow-300',
150
- indigo: 'bg-indigo-100 dark:bg-indigo-200 text-indigo-800 dark:text-indigo-900 group-hover:bg-indigo-200 dark:group-hover:bg-indigo-300',
151
- purple: 'bg-purple-100 dark:bg-purple-200 text-purple-800 dark:text-purple-900 group-hover:bg-purple-200 dark:group-hover:bg-purple-300',
152
- pink: 'bg-pink-100 dark:bg-pink-200 text-pink-800 dark:text-pink-900 group-hover:bg-pink-200 dark:group-hover:bg-pink-300',
153
- },
154
- size: {
155
- xs: 'text-xs p-1',
156
- sm: 'text-sm p-1.5',
157
- },
158
- isPill: {
159
- enabled: 'rounded-full',
160
- disabled: 'rounded',
161
- },
162
- link: {
163
- enabled: 'group cursor-pointer',
164
- disabled: '',
165
- },
166
- isIconOnly: {
167
- enabled: '',
168
- disabled: 'px-2 py-0.5',
263
+ default: {
264
+ light: 'data-hover:bg-gray-300',
265
+ dark: 'dark:data-hover:bg-gray-700',
266
+ },
267
+ info: {
268
+ light: 'data-hover:bg-blue-300',
269
+ dark: 'dark:data-hover:bg-blue-400',
270
+ },
271
+ failure: {
272
+ light: 'data-hover:bg-red-300',
273
+ dark: 'dark:data-hover:bg-red-400',
274
+ },
275
+ success: {
276
+ light: 'data-hover:bg-green-300',
277
+ dark: 'dark:data-hover:bg-green-400',
278
+ },
279
+ warning: {
280
+ light: 'data-hover:bg-yellow-300',
281
+ dark: 'dark:data-hover:bg-yellow-400',
282
+ },
283
+ primary: {
284
+ light: 'data-hover:bg-primary-300',
285
+ dark: 'dark:data-hover:bg-primary-400',
286
+ },
169
287
  },
170
288
  },
171
289
  });
172
290
 
291
+ const defaultFlowbiteBadgeButtonConfig = {
292
+ baseTheme: flowbiteBadgeButtonTheme,
293
+ customTheme: {},
294
+ };
295
+ const FlowbiteBadgeButtonConfigToken = new InjectionToken('FlowbiteBadgeButtonConfigToken');
296
+ /**
297
+ * Provide the default BadgeButton configuration
298
+ * @param config The BadgeButton configuration
299
+ * @returns The provider
300
+ */
301
+ const provideFlowbiteBadgeButtonConfig = (config) => [
302
+ {
303
+ provide: FlowbiteBadgeButtonConfigToken,
304
+ useValue: { ...defaultFlowbiteBadgeButtonConfig, ...config },
305
+ },
306
+ ];
307
+ /**
308
+ * Inject the BadgeButton configuration
309
+ * @see {@link defaultFlowbiteBadgeButtonConfig}
310
+ * @returns The configuration
311
+ */
312
+ const injectFlowbiteBadgeButtonConfig = () => inject(FlowbiteBadgeButtonConfigToken, { optional: true }) ?? defaultFlowbiteBadgeButtonConfig;
313
+
314
+ const FlowbiteBadgeButtonStateToken = createStateToken('Flowbite BadgeButton');
315
+ const provideFlowbiteBadgeButtonState = createStateProvider(FlowbiteBadgeButtonStateToken);
316
+ const injectFlowbiteBadgeButtonState = createStateInjector(FlowbiteBadgeButtonStateToken);
317
+ const flowbiteBadgeButtonState = createState(FlowbiteBadgeButtonStateToken);
318
+
319
+ class BadgeButton {
320
+ constructor() {
321
+ this.config = injectFlowbiteBadgeButtonConfig();
322
+ this.badgeState = injectFlowbiteBadgeState();
323
+ /**
324
+ * @see {@link injectFlowbiteBadgeButtonConfig}
325
+ */
326
+ this.customTheme = input(this.config.customTheme);
327
+ this.theme = computed(() => {
328
+ const mergedTheme = mergeDeep(this.config.baseTheme, this.state.customTheme());
329
+ return {
330
+ host: {
331
+ root: twMerge(mergedTheme.host.base, colorToTheme(mergedTheme.host.color, this.badgeState().color())),
332
+ },
333
+ };
334
+ });
335
+ /**
336
+ * @internal
337
+ */
338
+ this.state = flowbiteBadgeButtonState(this);
339
+ }
340
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BadgeButton, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
341
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: BadgeButton, isStandalone: true, selector: "\n button[flowbiteBadgeButton],\n a[flowbiteBadgeButton]\n ", inputs: { customTheme: { classPropertyName: "customTheme", publicName: "customTheme", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "theme().host.root" } }, providers: [provideFlowbiteBadgeButtonState()], exportAs: ["flowbiteBadgeButton"], hostDirectives: [{ directive: i2.NgpButton, inputs: ["disabled", "disabled"] }, { directive: i3.NgpFocus }], ngImport: i0 }); }
342
+ }
343
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BadgeButton, decorators: [{
344
+ type: Directive,
345
+ args: [{
346
+ standalone: true,
347
+ selector: `
348
+ button[flowbiteBadgeButton],
349
+ a[flowbiteBadgeButton]
350
+ `,
351
+ exportAs: 'flowbiteBadgeButton',
352
+ hostDirectives: [
353
+ {
354
+ directive: NgpButton,
355
+ inputs: ['disabled:disabled'],
356
+ outputs: [],
357
+ },
358
+ {
359
+ directive: NgpFocus,
360
+ inputs: [],
361
+ outputs: [],
362
+ },
363
+ ],
364
+ providers: [provideFlowbiteBadgeButtonState()],
365
+ host: { '[class]': `theme().host.root` },
366
+ }]
367
+ }] });
368
+
369
+ /* Badge */
370
+
173
371
  /**
174
372
  * Generated bundle index. Do not edit.
175
373
  */
176
374
 
177
- export { BadgeComponent, BadgeThemeService, FLOWBITE_BADGE_COLOR_DEFAULT_VALUE, FLOWBITE_BADGE_CUSTOM_STYLE_DEFAULT_VALUE, FLOWBITE_BADGE_IS_ICON_ONLY_DEFAULT_VALUE, FLOWBITE_BADGE_IS_PILL_DEFAULT_VALUE, FLOWBITE_BADGE_SIZE_DEFAULT_VALUE, FLOWBITE_BADGE_THEME_TOKEN, badgeDefaultValueProvider, badgeTheme };
375
+ export { Badge, BadgeButton, BadgeLink, FlowbiteBadgeButtonConfigToken, FlowbiteBadgeButtonStateToken, FlowbiteBadgeConfigToken, FlowbiteBadgeLinkConfigToken, FlowbiteBadgeLinkStateToken, FlowbiteBadgeStateToken, defaultFlowbiteBadgeButtonConfig, defaultFlowbiteBadgeConfig, defaultFlowbiteBadgeLinkConfig, flowbiteBadgeButtonState, flowbiteBadgeButtonTheme, flowbiteBadgeLinkState, flowbiteBadgeLinkTheme, flowbiteBadgeState, flowbiteBadgeTheme, injectFlowbiteBadgeButtonConfig, injectFlowbiteBadgeButtonState, injectFlowbiteBadgeConfig, injectFlowbiteBadgeLinkConfig, injectFlowbiteBadgeLinkState, injectFlowbiteBadgeState, provideFlowbiteBadgeButtonConfig, provideFlowbiteBadgeButtonState, provideFlowbiteBadgeConfig, provideFlowbiteBadgeLinkConfig, provideFlowbiteBadgeLinkState, provideFlowbiteBadgeState };
178
376
  //# sourceMappingURL=flowbite-angular-badge.mjs.map