flowbite-angular 1.0.0-alpha.4 → 1.0.0-alpha.6

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 (236) hide show
  1. package/accordion/accordion-content.component.d.ts +17 -0
  2. package/accordion/accordion-content.theme.d.ts +12 -0
  3. package/accordion/accordion-content.theme.service.d.ts +11 -0
  4. package/accordion/accordion-panel.component.d.ts +33 -0
  5. package/accordion/accordion-panel.theme.d.ts +12 -0
  6. package/accordion/accordion-panel.theme.service.d.ts +11 -0
  7. package/accordion/accordion-title.component.d.ts +26 -0
  8. package/accordion/accordion-title.theme.d.ts +12 -0
  9. package/accordion/accordion-title.theme.service.d.ts +11 -0
  10. package/accordion/accordion.component.d.ts +30 -0
  11. package/accordion/accordion.theme.d.ts +15 -0
  12. package/accordion/accordion.theme.service.d.ts +11 -0
  13. package/alert/alert.component.d.ts +53 -0
  14. package/alert/alert.theme.d.ts +15 -0
  15. package/alert/alert.theme.service.d.ts +11 -0
  16. package/badge/badge.component.d.ts +29 -0
  17. package/badge/badge.theme.d.ts +18 -0
  18. package/badge/badge.theme.service.d.ts +11 -0
  19. package/base-component.directive.d.ts +36 -0
  20. package/breadcrumb/breadcrumb-item.component.d.ts +26 -0
  21. package/breadcrumb/breadcrumb-item.theme.d.ts +12 -0
  22. package/breadcrumb/breadcrumb-item.theme.service.d.ts +11 -0
  23. package/breadcrumb/breadcrumb.component.d.ts +14 -0
  24. package/breadcrumb/breadcrumb.theme.d.ts +15 -0
  25. package/breadcrumb/breadcrumb.theme.service.d.ts +11 -0
  26. package/button/button.component.d.ts +41 -0
  27. package/button/button.theme.d.ts +30 -0
  28. package/button/button.theme.service.d.ts +11 -0
  29. package/dark-theme-toggle/dark-theme-toggle.component.d.ts +32 -0
  30. package/dark-theme-toggle/dark-theme-toggle.theme.d.ts +12 -0
  31. package/dark-theme-toggle/dark-theme-toggle.theme.service.d.ts +11 -0
  32. package/dropdown/dropdown-divider.component.d.ts +12 -0
  33. package/dropdown/dropdown-divider.theme.d.ts +12 -0
  34. package/dropdown/dropdown-divider.theme.service.d.ts +11 -0
  35. package/dropdown/dropdown-header.component.d.ts +12 -0
  36. package/dropdown/dropdown-header.theme.d.ts +12 -0
  37. package/dropdown/dropdown-header.theme.service.d.ts +11 -0
  38. package/dropdown/dropdown-item.component.d.ts +12 -0
  39. package/dropdown/dropdown-item.theme.d.ts +12 -0
  40. package/dropdown/dropdown-item.theme.service.d.ts +11 -0
  41. package/dropdown/dropdown.component.d.ts +39 -0
  42. package/dropdown/dropdown.theme.d.ts +15 -0
  43. package/dropdown/dropdown.theme.service.d.ts +11 -0
  44. package/esm2022/accordion/accordion-content.component.mjs +18 -1
  45. package/esm2022/accordion/accordion-content.theme.mjs +4 -1
  46. package/esm2022/accordion/accordion-content.theme.service.mjs +19 -2
  47. package/esm2022/accordion/accordion-panel.component.mjs +34 -1
  48. package/esm2022/accordion/accordion-panel.theme.mjs +4 -1
  49. package/esm2022/accordion/accordion-panel.theme.service.mjs +19 -2
  50. package/esm2022/accordion/accordion-title.component.mjs +27 -1
  51. package/esm2022/accordion/accordion-title.theme.mjs +4 -1
  52. package/esm2022/accordion/accordion-title.theme.service.mjs +19 -2
  53. package/esm2022/accordion/accordion.component.mjs +31 -1
  54. package/esm2022/accordion/accordion.theme.mjs +4 -1
  55. package/esm2022/accordion/accordion.theme.service.mjs +19 -2
  56. package/esm2022/alert/alert.component.mjs +54 -1
  57. package/esm2022/alert/alert.theme.mjs +4 -1
  58. package/esm2022/alert/alert.theme.service.mjs +19 -2
  59. package/esm2022/badge/badge.component.mjs +30 -1
  60. package/esm2022/badge/badge.theme.mjs +4 -1
  61. package/esm2022/badge/badge.theme.service.mjs +19 -2
  62. package/esm2022/base-component.directive.mjs +37 -1
  63. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +27 -1
  64. package/esm2022/breadcrumb/breadcrumb-item.theme.mjs +4 -1
  65. package/esm2022/breadcrumb/breadcrumb-item.theme.service.mjs +19 -2
  66. package/esm2022/breadcrumb/breadcrumb.component.mjs +15 -1
  67. package/esm2022/breadcrumb/breadcrumb.theme.mjs +4 -1
  68. package/esm2022/breadcrumb/breadcrumb.theme.service.mjs +19 -2
  69. package/esm2022/button/button.component.mjs +42 -1
  70. package/esm2022/button/button.theme.mjs +4 -1
  71. package/esm2022/button/button.theme.service.mjs +19 -2
  72. package/esm2022/core/flowbite.theme.init.mjs +3 -3
  73. package/esm2022/dark-theme-toggle/dark-theme-toggle.component.mjs +33 -1
  74. package/esm2022/dark-theme-toggle/dark-theme-toggle.theme.mjs +4 -1
  75. package/esm2022/dark-theme-toggle/dark-theme-toggle.theme.service.mjs +19 -2
  76. package/esm2022/dropdown/dropdown-divider.component.mjs +13 -1
  77. package/esm2022/dropdown/dropdown-divider.theme.mjs +4 -1
  78. package/esm2022/dropdown/dropdown-divider.theme.service.mjs +19 -2
  79. package/esm2022/dropdown/dropdown-header.component.mjs +13 -1
  80. package/esm2022/dropdown/dropdown-header.theme.mjs +4 -1
  81. package/esm2022/dropdown/dropdown-header.theme.service.mjs +19 -2
  82. package/esm2022/dropdown/dropdown-item.component.mjs +13 -1
  83. package/esm2022/dropdown/dropdown-item.theme.mjs +4 -1
  84. package/esm2022/dropdown/dropdown-item.theme.service.mjs +19 -2
  85. package/esm2022/dropdown/dropdown.component.mjs +40 -1
  86. package/esm2022/dropdown/dropdown.theme.mjs +4 -1
  87. package/esm2022/dropdown/dropdown.theme.service.mjs +19 -2
  88. package/esm2022/flowbite.theme.service.mjs +2 -12
  89. package/esm2022/indicator/indicators.component.mjs +52 -1
  90. package/esm2022/indicator/indicators.theme.mjs +4 -1
  91. package/esm2022/indicator/indicators.theme.service.mjs +19 -2
  92. package/esm2022/modal/modal-body.component.mjs +13 -1
  93. package/esm2022/modal/modal-body.theme.mjs +4 -1
  94. package/esm2022/modal/modal-body.theme.service.mjs +19 -2
  95. package/esm2022/modal/modal-footer.component.mjs +13 -1
  96. package/esm2022/modal/modal-footer.theme.mjs +4 -1
  97. package/esm2022/modal/modal-footer.theme.service.mjs +19 -2
  98. package/esm2022/modal/modal-header.component.mjs +19 -1
  99. package/esm2022/modal/modal-header.theme.mjs +4 -1
  100. package/esm2022/modal/modal-header.theme.service.mjs +19 -2
  101. package/esm2022/modal/modal.component.mjs +36 -1
  102. package/esm2022/modal/modal.theme.service.mjs +19 -2
  103. package/esm2022/navbar/index.mjs +2 -2
  104. package/esm2022/navbar/navbar-brand.component.mjs +13 -1
  105. package/esm2022/navbar/navbar-brand.theme.mjs +4 -1
  106. package/esm2022/navbar/navbar-brand.theme.service.mjs +19 -2
  107. package/esm2022/navbar/navbar-content.component.mjs +15 -1
  108. package/esm2022/navbar/navbar-content.theme.mjs +4 -1
  109. package/esm2022/navbar/navbar-content.theme.service.mjs +19 -2
  110. package/esm2022/navbar/navbar-icon-button.component.mjs +22 -1
  111. package/esm2022/navbar/navbar-icon-button.theme.mjs +4 -1
  112. package/esm2022/navbar/navbar-icon-button.theme.service.mjs +20 -3
  113. package/esm2022/navbar/navbar-item.component.mjs +27 -1
  114. package/esm2022/navbar/navbar-item.theme.mjs +4 -1
  115. package/esm2022/navbar/navbar-item.theme.service.mjs +19 -2
  116. package/esm2022/navbar/navbar-toggle.component.mjs +22 -1
  117. package/esm2022/navbar/navbar-toggle.theme.mjs +5 -2
  118. package/esm2022/navbar/navbar-toggle.theme.service.mjs +19 -2
  119. package/esm2022/navbar/navbar.component.mjs +46 -1
  120. package/esm2022/navbar/navbar.theme.service.mjs +19 -2
  121. package/esm2022/router-link/flowbite-router-link.directive.mjs +13 -1
  122. package/esm2022/router-link-active/flowbite-router-link-active.directive.mjs +13 -1
  123. package/esm2022/sanitize-html/sanitize-html.pipe.mjs +3 -3
  124. package/esm2022/scroll-top/scroll-top.component.mjs +29 -1
  125. package/esm2022/scroll-top/scroll-top.theme.mjs +4 -1
  126. package/esm2022/scroll-top/scroll-top.theme.service.mjs +19 -2
  127. package/esm2022/sidebar/sidebar-item-group.component.mjs +43 -6
  128. package/esm2022/sidebar/sidebar-item-group.theme.mjs +4 -1
  129. package/esm2022/sidebar/sidebar-item-group.theme.service.mjs +19 -2
  130. package/esm2022/sidebar/sidebar-item.component.mjs +43 -5
  131. package/esm2022/sidebar/sidebar-item.theme.mjs +4 -1
  132. package/esm2022/sidebar/sidebar-item.theme.service.mjs +19 -2
  133. package/esm2022/sidebar/sidebar-menu.component.mjs +27 -1
  134. package/esm2022/sidebar/sidebar-menu.theme.mjs +4 -1
  135. package/esm2022/sidebar/sidebar-menu.theme.service.mjs +19 -2
  136. package/esm2022/sidebar/sidebar-page-content.component.mjs +13 -1
  137. package/esm2022/sidebar/sidebar-page-content.theme.mjs +4 -1
  138. package/esm2022/sidebar/sidebar-page-content.theme.service.mjs +19 -2
  139. package/esm2022/sidebar/sidebar-toggle.component.mjs +34 -1
  140. package/esm2022/sidebar/sidebar-toggle.theme.mjs +4 -1
  141. package/esm2022/sidebar/sidebar-toggle.theme.service.mjs +19 -2
  142. package/esm2022/sidebar/sidebar.component.mjs +38 -1
  143. package/esm2022/sidebar/sidebar.theme.service.mjs +19 -2
  144. package/esm2022/type-definitions/colors/flowbite.gradient-colors.mjs +1 -1
  145. package/fesm2022/flowbite-angular-accordion.mjs +183 -1
  146. package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
  147. package/fesm2022/flowbite-angular-alert.mjs +73 -1
  148. package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
  149. package/fesm2022/flowbite-angular-badge.mjs +49 -1
  150. package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
  151. package/fesm2022/flowbite-angular-breadcrumb.mjs +79 -1
  152. package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
  153. package/fesm2022/flowbite-angular-button.mjs +61 -1
  154. package/fesm2022/flowbite-angular-button.mjs.map +1 -1
  155. package/fesm2022/flowbite-angular-core.mjs +2 -2
  156. package/fesm2022/flowbite-angular-core.mjs.map +1 -1
  157. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +52 -1
  158. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +1 -1
  159. package/fesm2022/flowbite-angular-dropdown.mjs +152 -1
  160. package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
  161. package/fesm2022/flowbite-angular-indicator.mjs +71 -1
  162. package/fesm2022/flowbite-angular-indicator.mjs.map +1 -1
  163. package/fesm2022/flowbite-angular-modal.mjs +151 -1
  164. package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
  165. package/fesm2022/flowbite-angular-navbar.mjs +254 -4
  166. package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
  167. package/fesm2022/flowbite-angular-router-link-active.mjs +12 -0
  168. package/fesm2022/flowbite-angular-router-link-active.mjs.map +1 -1
  169. package/fesm2022/flowbite-angular-router-link.mjs +12 -0
  170. package/fesm2022/flowbite-angular-router-link.mjs.map +1 -1
  171. package/fesm2022/flowbite-angular-sanitize-html.mjs +2 -2
  172. package/fesm2022/flowbite-angular-sanitize-html.mjs.map +1 -1
  173. package/fesm2022/flowbite-angular-scroll-top.mjs +48 -1
  174. package/fesm2022/flowbite-angular-scroll-top.mjs.map +1 -1
  175. package/fesm2022/flowbite-angular-sidebar.mjs +304 -10
  176. package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
  177. package/fesm2022/flowbite-angular.mjs +39 -11
  178. package/fesm2022/flowbite-angular.mjs.map +1 -1
  179. package/flowbite.theme.service.d.ts +6 -4
  180. package/indicator/indicators.component.d.ts +51 -0
  181. package/indicator/indicators.theme.d.ts +21 -0
  182. package/indicator/indicators.theme.service.d.ts +11 -0
  183. package/modal/modal-body.component.d.ts +12 -0
  184. package/modal/modal-body.theme.d.ts +12 -0
  185. package/modal/modal-body.theme.service.d.ts +11 -0
  186. package/modal/modal-footer.component.d.ts +12 -0
  187. package/modal/modal-footer.theme.d.ts +12 -0
  188. package/modal/modal-footer.theme.service.d.ts +11 -0
  189. package/modal/modal-header.component.d.ts +18 -0
  190. package/modal/modal-header.theme.d.ts +12 -0
  191. package/modal/modal-header.theme.service.d.ts +11 -0
  192. package/modal/modal.component.d.ts +35 -0
  193. package/modal/modal.theme.service.d.ts +11 -0
  194. package/navbar/index.d.ts +1 -1
  195. package/navbar/navbar-brand.component.d.ts +12 -0
  196. package/navbar/navbar-brand.theme.d.ts +12 -0
  197. package/navbar/navbar-brand.theme.service.d.ts +11 -0
  198. package/navbar/navbar-content.component.d.ts +14 -0
  199. package/navbar/navbar-content.theme.d.ts +12 -0
  200. package/navbar/navbar-content.theme.service.d.ts +11 -0
  201. package/navbar/navbar-icon-button.component.d.ts +21 -0
  202. package/navbar/navbar-icon-button.theme.d.ts +12 -0
  203. package/navbar/navbar-icon-button.theme.service.d.ts +11 -0
  204. package/navbar/navbar-item.component.d.ts +26 -0
  205. package/navbar/navbar-item.theme.d.ts +12 -0
  206. package/navbar/navbar-item.theme.service.d.ts +11 -0
  207. package/navbar/navbar-toggle.component.d.ts +21 -0
  208. package/navbar/navbar-toggle.theme.d.ts +13 -1
  209. package/navbar/navbar-toggle.theme.service.d.ts +11 -0
  210. package/navbar/navbar.component.d.ts +45 -0
  211. package/navbar/navbar.theme.service.d.ts +11 -0
  212. package/package.json +8 -3
  213. package/router-link/flowbite-router-link.directive.d.ts +12 -0
  214. package/router-link-active/flowbite-router-link-active.directive.d.ts +12 -0
  215. package/sanitize-html/sanitize-html.pipe.d.ts +2 -2
  216. package/scroll-top/scroll-top.component.d.ts +28 -0
  217. package/scroll-top/scroll-top.theme.d.ts +19 -1
  218. package/scroll-top/scroll-top.theme.service.d.ts +11 -0
  219. package/sidebar/sidebar-item-group.component.d.ts +41 -3
  220. package/sidebar/sidebar-item-group.theme.d.ts +12 -0
  221. package/sidebar/sidebar-item-group.theme.service.d.ts +11 -0
  222. package/sidebar/sidebar-item.component.d.ts +42 -2
  223. package/sidebar/sidebar-item.theme.d.ts +12 -0
  224. package/sidebar/sidebar-item.theme.service.d.ts +11 -0
  225. package/sidebar/sidebar-menu.component.d.ts +26 -0
  226. package/sidebar/sidebar-menu.theme.d.ts +12 -0
  227. package/sidebar/sidebar-menu.theme.service.d.ts +11 -0
  228. package/sidebar/sidebar-page-content.component.d.ts +12 -0
  229. package/sidebar/sidebar-page-content.theme.d.ts +12 -0
  230. package/sidebar/sidebar-page-content.theme.service.d.ts +11 -0
  231. package/sidebar/sidebar-toggle.component.d.ts +33 -0
  232. package/sidebar/sidebar-toggle.theme.d.ts +15 -0
  233. package/sidebar/sidebar-toggle.theme.service.d.ts +11 -0
  234. package/sidebar/sidebar.component.d.ts +37 -0
  235. package/sidebar/sidebar.theme.service.d.ts +11 -0
  236. package/tailwind.config.js +0 -3
@@ -1,12 +1,20 @@
1
1
  import { mergeTheme, CHEVRON_DOWN_SVG_ICON, createTheme } from 'flowbite-angular/utils';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, inject, model, Component, ViewEncapsulation, ChangeDetectionStrategy, contentChild, untracked, contentChildren } from '@angular/core';
3
+ import { InjectionToken, inject, Injectable, model, Component, ViewEncapsulation, ChangeDetectionStrategy, contentChild, untracked, contentChildren } from '@angular/core';
4
4
  import { twMerge } from 'tailwind-merge';
5
5
  import { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';
6
6
  import { NgIf, NgClass } from '@angular/common';
7
7
  import { IconRegistry, IconComponent } from 'flowbite-angular/icon';
8
8
  import { DomSanitizer } from '@angular/platform-browser';
9
9
 
10
+ /**
11
+ * `InjectionToken` used to import `AccordionContentTheme` value
12
+ *
13
+ * @example
14
+ * ```
15
+ * var theme = inject(FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN)
16
+ * ```
17
+ */
10
18
  const FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN = new InjectionToken('FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN');
11
19
  class AccordionContentThemeService {
12
20
  constructor() {
@@ -19,15 +27,40 @@ class AccordionContentThemeService {
19
27
  };
20
28
  return output;
21
29
  }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionContentThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
31
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionContentThemeService, providedIn: 'root' }); }
22
32
  }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionContentThemeService, decorators: [{
34
+ type: Injectable,
35
+ args: [{
36
+ providedIn: 'root',
37
+ }]
38
+ }] });
23
39
 
40
+ /**
41
+ * @see https://flowbite.com/docs/components/accordion/
42
+ */
24
43
  class AccordionContentComponent extends BaseComponent {
25
44
  constructor() {
26
45
  super(...arguments);
46
+ /**
47
+ * Service injected used to generate class
48
+ */
27
49
  this.themeService = inject(AccordionContentThemeService);
50
+ /**
51
+ * The parent `AccordionPanelComponent`
52
+ */
28
53
  this.accordionPanelComponent = inject(AccordionPanelComponent);
29
54
  //#region properties
55
+ /**
56
+ * Set the accordion content color
57
+ *
58
+ @default `AccordionPanelComponent`'s color
59
+ */
30
60
  this.color = model(this.accordionPanelComponent.color());
61
+ /**
62
+ * Set the custom style for this accordion content
63
+ */
31
64
  this.customStyle = model({});
32
65
  }
33
66
  //#endregion
@@ -62,6 +95,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
62
95
  }]
63
96
  }] });
64
97
 
98
+ /**
99
+ * `InjectionToken` used to import `AccordionPanelTheme` value
100
+ *
101
+ * @example
102
+ * ```
103
+ * var theme = inject(FLOWBITE_ACCORDION_PANEL_THEME_TOKEN)
104
+ * ```
105
+ */
65
106
  const FLOWBITE_ACCORDION_PANEL_THEME_TOKEN = new InjectionToken('FLOWBITE_ACCORDION_PANEL_THEME_TOKEN');
66
107
  class AccordionPanelThemeService {
67
108
  constructor() {
@@ -74,8 +115,24 @@ class AccordionPanelThemeService {
74
115
  };
75
116
  return output;
76
117
  }
118
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionPanelThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
119
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionPanelThemeService, providedIn: 'root' }); }
77
120
  }
121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionPanelThemeService, decorators: [{
122
+ type: Injectable,
123
+ args: [{
124
+ providedIn: 'root',
125
+ }]
126
+ }] });
78
127
 
128
+ /**
129
+ * `InjectionToken` used to import `AccordionTitleTheme` value
130
+ *
131
+ * @example
132
+ * ```
133
+ * var theme = inject(FLOWBITE_ACCORDION_TITLE_THEME_TOKEN)
134
+ * ```
135
+ */
79
136
  const FLOWBITE_ACCORDION_TITLE_THEME_TOKEN = new InjectionToken('FLOWBITE_ACCORDION_TITLE_THEME_TOKEN');
80
137
  class AccordionTitleThemeService {
81
138
  constructor() {
@@ -89,17 +146,48 @@ class AccordionTitleThemeService {
89
146
  };
90
147
  return output;
91
148
  }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionTitleThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
150
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionTitleThemeService, providedIn: 'root' }); }
92
151
  }
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionTitleThemeService, decorators: [{
153
+ type: Injectable,
154
+ args: [{
155
+ providedIn: 'root',
156
+ }]
157
+ }] });
93
158
 
159
+ /**
160
+ * @see https://flowbite.com/docs/components/accordion/
161
+ */
94
162
  class AccordionTitleComponent extends BaseComponent {
95
163
  constructor() {
96
164
  super(...arguments);
165
+ /**
166
+ * Service injected used to generate class
167
+ */
97
168
  this.themeService = inject(AccordionTitleThemeService);
169
+ /**
170
+ * The parent `AccordionPanelComponent`
171
+ */
98
172
  this.accordionPanelComponent = inject(AccordionPanelComponent);
173
+ /**
174
+ * `IconRegistry` service
175
+ */
99
176
  this.iconRegistry = inject(IconRegistry);
177
+ /**
178
+ * `DomSanitizer` service
179
+ */
100
180
  this.domSanitizer = inject(DomSanitizer);
101
181
  //#region properties
182
+ /**
183
+ * Set the accordion title color
184
+ *
185
+ * @default `AccordionPanelComponents`'s color
186
+ */
102
187
  this.color = model(this.accordionPanelComponent.color());
188
+ /**
189
+ * Set the custom style for this accordion title
190
+ */
103
191
  this.customStyle = model({});
104
192
  }
105
193
  //#endregion
@@ -116,6 +204,9 @@ class AccordionTitleComponent extends BaseComponent {
116
204
  this.iconRegistry.addRawSvgIconInNamepsace('flowbite-angular', 'chevron-down', this.domSanitizer.bypassSecurityTrustHtml(CHEVRON_DOWN_SVG_ICON));
117
205
  }
118
206
  //#endregion
207
+ /**
208
+ * Toggle the parent `AccordionPanelComponent`'s isOpen
209
+ */
119
210
  onClick() {
120
211
  this.accordionPanelComponent.toggleVisibility();
121
212
  }
@@ -153,16 +244,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
153
244
  }]
154
245
  }] });
155
246
 
247
+ /**
248
+ * @see https://flowbite.com/docs/components/accordion/
249
+ */
156
250
  class AccordionPanelComponent extends BaseComponent {
157
251
  constructor() {
158
252
  super(...arguments);
253
+ /**
254
+ * Service injected used to generate class
255
+ */
159
256
  this.themeService = inject(AccordionPanelThemeService);
257
+ /**
258
+ * The parent `AccordionComponent`
259
+ */
160
260
  this.accordionComponent = inject(AccordionComponent);
261
+ /**
262
+ * The child `AccordionTitleComponent`
263
+ */
161
264
  this.accordionTitleChild = contentChild(AccordionTitleComponent);
265
+ /**
266
+ * The child `AccordionContentComponent`
267
+ */
162
268
  this.accordionContentChild = contentChild(AccordionContentComponent);
163
269
  //#region properties
270
+ /**
271
+ * Set the accordion panel color
272
+ *
273
+ * @default `AccordionComponent`'s color
274
+ */
164
275
  this.color = model(this.accordionComponent.color());
276
+ /**
277
+ * Set if the accordion panel is open or not
278
+ *
279
+ * @default false
280
+ */
165
281
  this.isOpen = model(false);
282
+ /**
283
+ * Set the custom style for this accordion panel
284
+ */
166
285
  this.customStyle = model({});
167
286
  }
168
287
  //#endregion
@@ -181,6 +300,11 @@ class AccordionPanelComponent extends BaseComponent {
181
300
  }
182
301
  }
183
302
  //#endregion
303
+ /**
304
+ * Toggle isOpen for itself and close every other `AccordionPanelComponent` if the parent `AccordionComponent`'s isAlwaysOpen is false
305
+ *
306
+ * @param isOpen Instead of toggle, it can set the value provided
307
+ */
184
308
  toggleVisibility(isOpen) {
185
309
  if (isOpen === undefined) {
186
310
  isOpen = untracked(() => !this.isOpen());
@@ -205,6 +329,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
205
329
  }]
206
330
  }] });
207
331
 
332
+ /**
333
+ * `InjectionToken` used to import `AccordionTheme` value
334
+ *
335
+ * @example
336
+ * ```
337
+ * var theme = inject(FLOWBITE_ACCORDION_THEME_TOKEN)
338
+ * ```
339
+ */
208
340
  const FLOWBITE_ACCORDION_THEME_TOKEN = new InjectionToken('FLOWBITE_ACCORDION_THEME_TOKEN');
209
341
  class AccordionThemeService {
210
342
  constructor() {
@@ -217,17 +349,52 @@ class AccordionThemeService {
217
349
  };
218
350
  return output;
219
351
  }
352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
353
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionThemeService, providedIn: 'root' }); }
220
354
  }
355
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AccordionThemeService, decorators: [{
356
+ type: Injectable,
357
+ args: [{
358
+ providedIn: 'root',
359
+ }]
360
+ }] });
221
361
 
362
+ /**
363
+ * @see https://flowbite.com/docs/components/accordion/
364
+ */
222
365
  class AccordionComponent extends BaseComponent {
223
366
  constructor() {
224
367
  super(...arguments);
368
+ /**
369
+ * Service injected used to generated class
370
+ */
225
371
  this.themeService = inject(AccordionThemeService);
372
+ /**
373
+ * List of `AccordionPanelComponent`
374
+ */
226
375
  this.accordionPanelChildren = contentChildren(AccordionPanelComponent);
227
376
  //#region properties
377
+ /**
378
+ * Does the opened `AccordionPanelComponent` stay open if another one is opening
379
+ *
380
+ * @default false
381
+ */
228
382
  this.isAlwaysOpen = model(false);
383
+ /**
384
+ * Set the accordion color and every child default color
385
+ *
386
+ * @default primary
387
+ */
229
388
  this.color = model('primary');
389
+ /**
390
+ * Set the accordion as flush or not
391
+ *
392
+ * @default false
393
+ */
230
394
  this.isFlush = model(false);
395
+ /**
396
+ * Set the custom style for this accordion
397
+ */
231
398
  this.customStyle = model({});
232
399
  }
233
400
  //#endregion
@@ -245,6 +412,9 @@ class AccordionComponent extends BaseComponent {
245
412
  }
246
413
  }
247
414
  //#endregion
415
+ /**
416
+ * Close every `AccordionPanelComponent`
417
+ */
248
418
  closeAll() {
249
419
  this.accordionPanelChildren().forEach((child) => child.toggleVisibility(false));
250
420
  }
@@ -263,6 +433,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
263
433
  }]
264
434
  }] });
265
435
 
436
+ /**
437
+ * Default theme for `AccordionComponent`
438
+ */
266
439
  const accordionTheme = createTheme({
267
440
  root: {
268
441
  base: '',
@@ -281,6 +454,9 @@ const accordionTheme = createTheme({
281
454
  },
282
455
  });
283
456
 
457
+ /**
458
+ * Default theme for `AccordionContentComponent`
459
+ */
284
460
  const accordionContentTheme = createTheme({
285
461
  root: {
286
462
  base: 'flex flex-col gap-2',
@@ -299,12 +475,18 @@ const accordionContentTheme = createTheme({
299
475
  },
300
476
  });
301
477
 
478
+ /**
479
+ * Default theme for `AccordionPanelComponent`
480
+ */
302
481
  const accordionPanelTheme = createTheme({
303
482
  root: {
304
483
  base: 'group',
305
484
  },
306
485
  });
307
486
 
487
+ /**
488
+ * Default theme for `AccordionTitleComponent`
489
+ */
308
490
  const accordionTitleTheme = createTheme({
309
491
  root: {
310
492
  base: 'cursor-pointer flex items-center p-5 justify-between group-first:rounded-t-lg',
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-accordion.mjs","sources":["../../../../libs/flowbite-angular/accordion/accordion-content.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-content.component.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-title.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-title.component.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.component.ts","../../../../libs/flowbite-angular/accordion/accordion.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion.component.ts","../../../../libs/flowbite-angular/accordion/accordion.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-content.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-title.theme.ts","../../../../libs/flowbite-angular/accordion/flowbite-angular-accordion.ts"],"sourcesContent":["import type {\n AccordionContentClass,\n AccordionContentProperties,\n AccordionContentTheme,\n} from './accordion-content.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\nexport const FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN = new InjectionToken<AccordionContentTheme>(\n 'FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN'\n);\n\nexport class AccordionContentThemeService\n implements FlowbiteThemeService<AccordionContentProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN);\n\n public getClasses(properties: AccordionContentProperties): AccordionContentClass {\n const theme: AccordionContentTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionContentClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.isOpen[properties.isOpen]\n ),\n };\n\n return output;\n }\n}\n","import type { AccordionContentClass, AccordionContentTheme } from './accordion-content.theme';\nimport { AccordionContentThemeService } from './accordion-content.theme.service';\nimport { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionColors } from './accordion.theme';\n\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport type { DeepPartial } from 'flowbite-angular';\n\nimport { NgClass, NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n standalone: true,\n imports: [NgIf, NgClass],\n selector: 'flowbite-accordion-content',\n template: `\n <ng-container *ngIf=\"accordionPanelComponent.isOpen()\">\n <ng-content />\n </ng-container>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionContentComponent extends BaseComponent<AccordionContentClass> {\n public readonly themeService = inject(AccordionContentThemeService);\n public readonly accordionPanelComponent = inject(AccordionPanelComponent);\n\n //#region properties\n public color = model<keyof AccordionColors>(this.accordionPanelComponent.color());\n public customStyle = model<DeepPartial<AccordionContentTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionContentClass {\n return this.themeService.getClasses({\n color: this.accordionPanelComponent.accordionComponent.color(),\n isOpen: booleanToFlowbiteBoolean(this.accordionPanelComponent.isOpen()),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n AccordionPanelClass,\n AccordionPanelProperties,\n AccordionPanelTheme,\n} from './accordion-panel.theme';\nimport type { AccordionClass } from './accordion.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\nexport const FLOWBITE_ACCORDION_PANEL_THEME_TOKEN = new InjectionToken<AccordionPanelTheme>(\n 'FLOWBITE_ACCORDION_PANEL_THEME_TOKEN'\n);\n\nexport class AccordionPanelThemeService implements FlowbiteThemeService<AccordionPanelProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_PANEL_THEME_TOKEN);\n\n public getClasses(properties: AccordionPanelProperties): AccordionClass {\n const theme: AccordionPanelTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionPanelClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type {\n AccordionTitleClass,\n AccordionTitleProperties,\n AccordionTitleTheme,\n} from './accordion-title.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\nexport const FLOWBITE_ACCORDION_TITLE_THEME_TOKEN = new InjectionToken<AccordionTitleTheme>(\n 'FLOWBITE_ACCORDION_TITLE_THEME_TOKEN'\n);\n\nexport class AccordionTitleThemeService implements FlowbiteThemeService<AccordionTitleProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_TITLE_THEME_TOKEN);\n\n public getClasses(properties: AccordionTitleProperties): AccordionTitleClass {\n const theme: AccordionTitleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionTitleClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.isFlush[properties.isFlush],\n theme.root.isOpen[properties.isOpen]\n ),\n textClass: twMerge(theme.text.base),\n };\n\n return output;\n }\n}\n","import { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionTitleClass, AccordionTitleTheme } from './accordion-title.theme';\nimport { AccordionTitleThemeService } from './accordion-title.theme.service';\nimport type { AccordionColors } from './accordion.theme';\n\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport type { DeepPartial } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport { NgClass } from '@angular/common';\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n standalone: true,\n imports: [NgClass, IconComponent],\n selector: 'flowbite-accordion-title',\n template: `\n <h2 [ngClass]=\"contentClasses().textClass\">\n <ng-content />\n </h2>\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"h-6 w-6 shrink-0 duration-200\"\n [class.rotate-180]=\"accordionPanelComponent.isOpen()\" />\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionTitleComponent extends BaseComponent<AccordionTitleClass> implements OnInit {\n public readonly themeService = inject(AccordionTitleThemeService);\n public readonly accordionPanelComponent = inject(AccordionPanelComponent);\n public readonly iconRegistry = inject(IconRegistry);\n public readonly domSanitizer = inject(DomSanitizer);\n\n //#region properties\n public color = model<keyof AccordionColors>(this.accordionPanelComponent.color());\n public customStyle = model<DeepPartial<AccordionTitleTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionTitleClass {\n return this.themeService.getClasses({\n color: this.accordionPanelComponent.accordionComponent.color(),\n isFlush: booleanToFlowbiteBoolean(this.accordionPanelComponent.accordionComponent.isFlush()),\n isOpen: booleanToFlowbiteBoolean(this.accordionPanelComponent.isOpen()),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'chevron-down',\n this.domSanitizer.bypassSecurityTrustHtml(CHEVRON_DOWN_SVG_ICON)\n );\n }\n //#endregion\n\n public onClick(): void {\n this.accordionPanelComponent.toggleVisibility();\n }\n}\n","import { AccordionContentComponent } from './accordion-content.component';\nimport type { AccordionPanelClass, AccordionPanelTheme } from './accordion-panel.theme';\nimport { AccordionPanelThemeService } from './accordion-panel.theme.service';\nimport { AccordionTitleComponent } from './accordion-title.component';\nimport { AccordionComponent } from './accordion.component';\nimport type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n standalone: true,\n imports: [],\n selector: 'flowbite-accordion-panel',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionPanelComponent extends BaseComponent<AccordionPanelClass> implements OnInit {\n public readonly themeService = inject(AccordionPanelThemeService);\n public readonly accordionComponent = inject(AccordionComponent);\n public readonly accordionTitleChild = contentChild(AccordionTitleComponent);\n public readonly accordionContentChild = contentChild(AccordionContentComponent);\n\n //#region properties\n public color = model<keyof AccordionColors>(this.accordionComponent.color());\n public isOpen = model<boolean>(false);\n public customStyle = model<DeepPartial<AccordionPanelTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionPanelClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override verify(): void {\n if (this.accordionTitleChild() === undefined) {\n throw new Error('No AccordionTitleComponent available');\n }\n if (this.accordionContentChild() == undefined) {\n throw new Error('No AccordionContentComponent available');\n }\n }\n //#endregion\n\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n if (isOpen && untracked(() => !this.accordionComponent.isAlwaysOpen())) {\n this.accordionComponent.closeAll();\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type { AccordionClass, AccordionProperties, AccordionTheme } from './accordion.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\nexport const FLOWBITE_ACCORDION_THEME_TOKEN = new InjectionToken<AccordionTheme>(\n 'FLOWBITE_ACCORDION_THEME_TOKEN'\n);\n\nexport class AccordionThemeService implements FlowbiteThemeService<AccordionProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_THEME_TOKEN);\n\n public getClasses(properties: AccordionProperties): AccordionClass {\n const theme: AccordionTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.isFlush[properties.isFlush],\n theme.root.color[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionClass, AccordionColors, AccordionTheme } from './accordion.theme';\nimport { AccordionThemeService } from './accordion.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-accordion',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionComponent extends BaseComponent<AccordionClass> {\n public readonly themeService = inject(AccordionThemeService);\n public readonly accordionPanelChildren = contentChildren(AccordionPanelComponent);\n\n //#region properties\n public isAlwaysOpen = model<boolean>(false);\n public color = model<keyof AccordionColors>('primary');\n public isFlush = model<boolean>(false);\n public customStyle = model<DeepPartial<AccordionTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionClass {\n return this.themeService.getClasses({\n color: this.color(),\n isFlush: booleanToFlowbiteBoolean(this.isFlush()),\n customStyle: this.customStyle(),\n });\n }\n\n public override verify(): void {\n if (this.accordionPanelChildren().length === 0) {\n throw new Error('No AccordionPanelComponent available');\n }\n }\n //#endregion\n\n public closeAll(): void {\n this.accordionPanelChildren().forEach((child) => child.toggleVisibility(false));\n }\n}\n","import type { DeepPartial, FlowbiteBoolean, FlowbiteClass, FlowbiteColors } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region region Component theme option\nexport interface AccordionColors\n extends Pick<FlowbiteColors, 'primary' | 'light' | 'blue' | 'red' | 'green' | 'yellow'> {\n [key: string]: string;\n}\n//#endregion\n\nexport interface AccordionProperties {\n color: keyof AccordionColors;\n isFlush: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionTheme>;\n}\n\nexport interface AccordionTheme {\n root: {\n base: string;\n color: AccordionColors;\n isFlush: FlowbiteBoolean;\n };\n}\n\nexport const accordionTheme: AccordionTheme = createTheme({\n root: {\n base: '',\n color: {\n primary:\n 'border-primary-200 dark:border-primary-700 divide-primary-200 dark:divide-primary-700',\n light: 'border-gray-300 dark:border-gray-700 divide-gray-200 dark:divide-gray-700',\n blue: 'border-blue-200 dark:border-blue-700 divide-blue-200 dark:divide-blue-700',\n red: 'border-red-200 dark:border-red-700 divide-red-200 dark:divide-red-700',\n green: 'border-green-200 dark:border-green-700 divide-green-200 dark:divide-green-700',\n yellow: 'border-yellow-200 dark:border-yellow-700 divide-yellow-200 dark:divide-yellow-700',\n },\n isFlush: {\n enabled: '',\n disabled: 'rounded-lg border shadow-sm',\n },\n },\n});\n\nexport type AccordionClass = FlowbiteClass;\n","import type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\nexport interface AccordionContentProperties {\n color: keyof AccordionColors;\n isOpen: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionContentTheme>;\n}\n\nexport interface AccordionContentTheme {\n root: {\n base: string;\n color: AccordionColors;\n isOpen: FlowbiteBoolean;\n };\n}\n\nexport const accordionContentTheme: AccordionContentTheme = createTheme({\n root: {\n base: 'flex flex-col gap-2',\n color: {\n primary: 'border-primary-200 dark:border-primary-700',\n light: 'border-gray-200 dark:border-gray-700',\n blue: 'border-blue-200 dark:border-blue-700',\n red: 'border-red-200 dark:border-red-700',\n green: 'border-green-200 dark:border-green-700',\n yellow: 'border-yellow-200 dark:border-yellow-700',\n },\n isOpen: {\n enabled: 'p-5',\n disabled: '',\n },\n },\n});\n\nexport type AccordionContentClass = FlowbiteClass;\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\nexport interface AccordionPanelProperties {\n customStyle: DeepPartial<AccordionPanelTheme>;\n}\n\nexport interface AccordionPanelTheme {\n root: {\n base: string;\n };\n}\n\nexport const accordionPanelTheme: AccordionPanelTheme = createTheme({\n root: {\n base: 'group',\n },\n});\n\nexport type AccordionPanelClass = FlowbiteClass;\n","import type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\nexport interface AccordionTitleProperties {\n color: keyof AccordionColors;\n isOpen: keyof FlowbiteBoolean;\n isFlush: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionTitleTheme>;\n}\n\nexport interface AccordionTitleTheme {\n root: {\n base: string;\n color: AccordionColors;\n isFlush: FlowbiteBoolean;\n isOpen: FlowbiteBoolean;\n };\n text: {\n base: string;\n };\n}\n\nexport const accordionTitleTheme: AccordionTitleTheme = createTheme({\n root: {\n base: 'cursor-pointer flex items-center p-5 justify-between group-first:rounded-t-lg',\n color: {\n primary:\n 'text-primary-900 dark:text-primary-50 border-primary-200 dark:border-primary-700 bg-primary-100 hover:bg-primary-100 dark:bg-primary-800 dark:hover:bg-primary-800',\n light:\n 'text-gray-900 dark:text-gray-50 border-gray-200 dark:border-gray-700 bg-gray-100 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-800',\n blue: 'text-blue-900 dark:text-blue-50 border-blue-200 dark:border-blue-700 bg-blue-100 hover:bg-blue-100 dark:bg-blue-800 dark:hover:bg-blue-800',\n red: 'text-red-900 dark:text-red-50 border-red-200 dark:border-red-700 bg-red-100 hover:bg-red-100 dark:bg-red-800 dark:hover:bg-red-800',\n green:\n 'text-green-900 dark:text-green-50 border-green-200 dark:border-green-700 bg-green-100 hover:bg-green-100 dark:bg-green-800 dark:hover:bg-green-800',\n yellow:\n 'text-yellow-900 dark:text-yellow-50 border-yellow-200 dark:border-yellow-700 bg-yellow-100 hover:bg-yellow-100 dark:bg-yellow-800 dark:hover:bg-yellow-800',\n },\n isFlush: {\n enabled: 'border-b bg-transparent hover:bg-transparent',\n disabled: '',\n },\n isOpen: {\n enabled: '',\n disabled: 'bg-transparent dark:bg-transparent text-gray-500 ',\n },\n },\n text: {\n base: 'font-semibold text-base',\n },\n});\n\nexport interface AccordionTitleClass extends FlowbiteClass {\n textClass: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flowbite-angular-accordion.mjs","sources":["../../../../libs/flowbite-angular/accordion/accordion-content.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-content.component.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-title.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion-title.component.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.component.ts","../../../../libs/flowbite-angular/accordion/accordion.theme.service.ts","../../../../libs/flowbite-angular/accordion/accordion.component.ts","../../../../libs/flowbite-angular/accordion/accordion.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-content.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-panel.theme.ts","../../../../libs/flowbite-angular/accordion/accordion-title.theme.ts","../../../../libs/flowbite-angular/accordion/flowbite-angular-accordion.ts"],"sourcesContent":["import type {\n AccordionContentClass,\n AccordionContentProperties,\n AccordionContentTheme,\n} from './accordion-content.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\n/**\n * `InjectionToken` used to import `AccordionContentTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN = new InjectionToken<AccordionContentTheme>(\n 'FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccordionContentThemeService\n implements FlowbiteThemeService<AccordionContentProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_CONTENT_THEME_TOKEN);\n\n public getClasses(properties: AccordionContentProperties): AccordionContentClass {\n const theme: AccordionContentTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionContentClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.isOpen[properties.isOpen]\n ),\n };\n\n return output;\n }\n}\n","import type { AccordionContentClass, AccordionContentTheme } from './accordion-content.theme';\nimport { AccordionContentThemeService } from './accordion-content.theme.service';\nimport { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionColors } from './accordion.theme';\n\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport type { DeepPartial } from 'flowbite-angular';\n\nimport { NgClass, NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/accordion/\n */\n@Component({\n standalone: true,\n imports: [NgIf, NgClass],\n selector: 'flowbite-accordion-content',\n template: `\n <ng-container *ngIf=\"accordionPanelComponent.isOpen()\">\n <ng-content />\n </ng-container>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionContentComponent extends BaseComponent<AccordionContentClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(AccordionContentThemeService);\n /**\n * The parent `AccordionPanelComponent`\n */\n public readonly accordionPanelComponent = inject(AccordionPanelComponent);\n\n //#region properties\n /**\n * Set the accordion content color\n * \n @default `AccordionPanelComponent`'s color\n */\n public color = model<keyof AccordionColors>(this.accordionPanelComponent.color());\n /**\n * Set the custom style for this accordion content\n */\n public customStyle = model<DeepPartial<AccordionContentTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionContentClass {\n return this.themeService.getClasses({\n color: this.accordionPanelComponent.accordionComponent.color(),\n isOpen: booleanToFlowbiteBoolean(this.accordionPanelComponent.isOpen()),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n AccordionPanelClass,\n AccordionPanelProperties,\n AccordionPanelTheme,\n} from './accordion-panel.theme';\nimport type { AccordionClass } from './accordion.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\n/**\n * `InjectionToken` used to import `AccordionPanelTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_ACCORDION_PANEL_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_ACCORDION_PANEL_THEME_TOKEN = new InjectionToken<AccordionPanelTheme>(\n 'FLOWBITE_ACCORDION_PANEL_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccordionPanelThemeService implements FlowbiteThemeService<AccordionPanelProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_PANEL_THEME_TOKEN);\n\n public getClasses(properties: AccordionPanelProperties): AccordionClass {\n const theme: AccordionPanelTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionPanelClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type {\n AccordionTitleClass,\n AccordionTitleProperties,\n AccordionTitleTheme,\n} from './accordion-title.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\n/**\n * `InjectionToken` used to import `AccordionTitleTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_ACCORDION_TITLE_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_ACCORDION_TITLE_THEME_TOKEN = new InjectionToken<AccordionTitleTheme>(\n 'FLOWBITE_ACCORDION_TITLE_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccordionTitleThemeService implements FlowbiteThemeService<AccordionTitleProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_TITLE_THEME_TOKEN);\n\n public getClasses(properties: AccordionTitleProperties): AccordionTitleClass {\n const theme: AccordionTitleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionTitleClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.isFlush[properties.isFlush],\n theme.root.isOpen[properties.isOpen]\n ),\n textClass: twMerge(theme.text.base),\n };\n\n return output;\n }\n}\n","import { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionTitleClass, AccordionTitleTheme } from './accordion-title.theme';\nimport { AccordionTitleThemeService } from './accordion-title.theme.service';\nimport type { AccordionColors } from './accordion.theme';\n\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport type { DeepPartial } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport { NgClass } from '@angular/common';\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n/**\n * @see https://flowbite.com/docs/components/accordion/\n */\n@Component({\n standalone: true,\n imports: [NgClass, IconComponent],\n selector: 'flowbite-accordion-title',\n template: `\n <h2 [ngClass]=\"contentClasses().textClass\">\n <ng-content />\n </h2>\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"h-6 w-6 shrink-0 duration-200\"\n [class.rotate-180]=\"accordionPanelComponent.isOpen()\" />\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionTitleComponent extends BaseComponent<AccordionTitleClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(AccordionTitleThemeService);\n /**\n * The parent `AccordionPanelComponent`\n */\n public readonly accordionPanelComponent = inject(AccordionPanelComponent);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n\n //#region properties\n /**\n * Set the accordion title color\n *\n * @default `AccordionPanelComponents`'s color\n */\n public color = model<keyof AccordionColors>(this.accordionPanelComponent.color());\n /**\n * Set the custom style for this accordion title\n */\n public customStyle = model<DeepPartial<AccordionTitleTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionTitleClass {\n return this.themeService.getClasses({\n color: this.accordionPanelComponent.accordionComponent.color(),\n isFlush: booleanToFlowbiteBoolean(this.accordionPanelComponent.accordionComponent.isFlush()),\n isOpen: booleanToFlowbiteBoolean(this.accordionPanelComponent.isOpen()),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'chevron-down',\n this.domSanitizer.bypassSecurityTrustHtml(CHEVRON_DOWN_SVG_ICON)\n );\n }\n //#endregion\n\n /**\n * Toggle the parent `AccordionPanelComponent`'s isOpen\n */\n public onClick(): void {\n this.accordionPanelComponent.toggleVisibility();\n }\n}\n","import { AccordionContentComponent } from './accordion-content.component';\nimport type { AccordionPanelClass, AccordionPanelTheme } from './accordion-panel.theme';\nimport { AccordionPanelThemeService } from './accordion-panel.theme.service';\nimport { AccordionTitleComponent } from './accordion-title.component';\nimport { AccordionComponent } from './accordion.component';\nimport type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/accordion/\n */\n@Component({\n standalone: true,\n imports: [],\n selector: 'flowbite-accordion-panel',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionPanelComponent extends BaseComponent<AccordionPanelClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(AccordionPanelThemeService);\n /**\n * The parent `AccordionComponent`\n */\n public readonly accordionComponent = inject(AccordionComponent);\n /**\n * The child `AccordionTitleComponent`\n */\n public readonly accordionTitleChild = contentChild(AccordionTitleComponent);\n /**\n * The child `AccordionContentComponent`\n */\n public readonly accordionContentChild = contentChild(AccordionContentComponent);\n\n //#region properties\n /**\n * Set the accordion panel color\n *\n * @default `AccordionComponent`'s color\n */\n public color = model<keyof AccordionColors>(this.accordionComponent.color());\n /**\n * Set if the accordion panel is open or not\n *\n * @default false\n */\n public isOpen = model<boolean>(false);\n /**\n * Set the custom style for this accordion panel\n */\n public customStyle = model<DeepPartial<AccordionPanelTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionPanelClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override verify(): void {\n if (this.accordionTitleChild() === undefined) {\n throw new Error('No AccordionTitleComponent available');\n }\n if (this.accordionContentChild() == undefined) {\n throw new Error('No AccordionContentComponent available');\n }\n }\n //#endregion\n\n /**\n * Toggle isOpen for itself and close every other `AccordionPanelComponent` if the parent `AccordionComponent`'s isAlwaysOpen is false\n *\n * @param isOpen Instead of toggle, it can set the value provided\n */\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n if (isOpen && untracked(() => !this.accordionComponent.isAlwaysOpen())) {\n this.accordionComponent.closeAll();\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type { AccordionClass, AccordionProperties, AccordionTheme } from './accordion.theme';\n\nimport type { FlowbiteThemeService } from 'flowbite-angular';\nimport { mergeTheme } from 'flowbite-angular/utils';\n\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { twMerge } from 'tailwind-merge';\n\n/**\n * `InjectionToken` used to import `AccordionTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_ACCORDION_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_ACCORDION_THEME_TOKEN = new InjectionToken<AccordionTheme>(\n 'FLOWBITE_ACCORDION_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccordionThemeService implements FlowbiteThemeService<AccordionProperties> {\n private readonly baseTheme = inject(FLOWBITE_ACCORDION_THEME_TOKEN);\n\n public getClasses(properties: AccordionProperties): AccordionClass {\n const theme: AccordionTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: AccordionClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.isFlush[properties.isFlush],\n theme.root.color[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import { AccordionPanelComponent } from './accordion-panel.component';\nimport type { AccordionClass, AccordionColors, AccordionTheme } from './accordion.theme';\nimport { AccordionThemeService } from './accordion.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/accordion/\n */\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-accordion',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionComponent extends BaseComponent<AccordionClass> {\n /**\n * Service injected used to generated class\n */\n public readonly themeService = inject(AccordionThemeService);\n /**\n * List of `AccordionPanelComponent`\n */\n public readonly accordionPanelChildren = contentChildren(AccordionPanelComponent);\n\n //#region properties\n /**\n * Does the opened `AccordionPanelComponent` stay open if another one is opening\n *\n * @default false\n */\n public isAlwaysOpen = model<boolean>(false);\n /**\n * Set the accordion color and every child default color\n *\n * @default primary\n */\n public color = model<keyof AccordionColors>('primary');\n /**\n * Set the accordion as flush or not\n *\n * @default false\n */\n public isFlush = model<boolean>(false);\n /**\n * Set the custom style for this accordion\n */\n public customStyle = model<DeepPartial<AccordionTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): AccordionClass {\n return this.themeService.getClasses({\n color: this.color(),\n isFlush: booleanToFlowbiteBoolean(this.isFlush()),\n customStyle: this.customStyle(),\n });\n }\n\n public override verify(): void {\n if (this.accordionPanelChildren().length === 0) {\n throw new Error('No AccordionPanelComponent available');\n }\n }\n //#endregion\n\n /**\n * Close every `AccordionPanelComponent`\n */\n public closeAll(): void {\n this.accordionPanelChildren().forEach((child) => child.toggleVisibility(false));\n }\n}\n","import type { DeepPartial, FlowbiteBoolean, FlowbiteClass, FlowbiteColors } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\n/**\n * Available colors for `AccordionComponent`\n */\nexport interface AccordionColors\n extends Pick<FlowbiteColors, 'primary' | 'light' | 'blue' | 'red' | 'green' | 'yellow'> {\n [key: string]: string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `AccordionComponent`\n */\nexport interface AccordionProperties {\n color: keyof AccordionColors;\n isFlush: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionTheme>;\n}\n\n/**\n * Theme definition for `AccordionComponent`\n */\nexport interface AccordionTheme {\n root: {\n base: string;\n color: AccordionColors;\n isFlush: FlowbiteBoolean;\n };\n}\n\n/**\n * Default theme for `AccordionComponent`\n */\nexport const accordionTheme: AccordionTheme = createTheme({\n root: {\n base: '',\n color: {\n primary:\n 'border-primary-200 dark:border-primary-700 divide-primary-200 dark:divide-primary-700',\n light: 'border-gray-300 dark:border-gray-700 divide-gray-200 dark:divide-gray-700',\n blue: 'border-blue-200 dark:border-blue-700 divide-blue-200 dark:divide-blue-700',\n red: 'border-red-200 dark:border-red-700 divide-red-200 dark:divide-red-700',\n green: 'border-green-200 dark:border-green-700 divide-green-200 dark:divide-green-700',\n yellow: 'border-yellow-200 dark:border-yellow-700 divide-yellow-200 dark:divide-yellow-700',\n },\n isFlush: {\n enabled: '',\n disabled: 'rounded-lg border shadow-sm',\n },\n },\n});\n\n/**\n * Generated class definition for `AccordionComponent`\n */\nexport type AccordionClass = FlowbiteClass;\n","import type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `AccordionContentComponent`\n */\nexport interface AccordionContentProperties {\n color: keyof AccordionColors;\n isOpen: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionContentTheme>;\n}\n\n/**\n * Theme definition for `AccordionContentComponent`\n */\nexport interface AccordionContentTheme {\n root: {\n base: string;\n color: AccordionColors;\n isOpen: FlowbiteBoolean;\n };\n}\n\n/**\n * Default theme for `AccordionContentComponent`\n */\nexport const accordionContentTheme: AccordionContentTheme = createTheme({\n root: {\n base: 'flex flex-col gap-2',\n color: {\n primary: 'border-primary-200 dark:border-primary-700',\n light: 'border-gray-200 dark:border-gray-700',\n blue: 'border-blue-200 dark:border-blue-700',\n red: 'border-red-200 dark:border-red-700',\n green: 'border-green-200 dark:border-green-700',\n yellow: 'border-yellow-200 dark:border-yellow-700',\n },\n isOpen: {\n enabled: 'p-5',\n disabled: '',\n },\n },\n});\n\n/**\n * Generated class definition for `AccordionContentComponent`\n */\nexport type AccordionContentClass = FlowbiteClass;\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for th class generation of `AccordionPanelComponent`\n */\nexport interface AccordionPanelProperties {\n customStyle: DeepPartial<AccordionPanelTheme>;\n}\n\n/**\n * Theme definition for `AccordionPanelComponent`\n */\nexport interface AccordionPanelTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `AccordionPanelComponent`\n */\nexport const accordionPanelTheme: AccordionPanelTheme = createTheme({\n root: {\n base: 'group',\n },\n});\n\n/**\n * Generated class definition for `AccordionPanelComponent`\n */\nexport type AccordionPanelClass = FlowbiteClass;\n","import type { AccordionColors } from './accordion.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `AccordionTitleComponent`\n */\nexport interface AccordionTitleProperties {\n color: keyof AccordionColors;\n isOpen: keyof FlowbiteBoolean;\n isFlush: keyof FlowbiteBoolean;\n customStyle: DeepPartial<AccordionTitleTheme>;\n}\n\n/**\n * Theme definition for `AccordionTitleComponent`\n */\nexport interface AccordionTitleTheme {\n root: {\n base: string;\n color: AccordionColors;\n isFlush: FlowbiteBoolean;\n isOpen: FlowbiteBoolean;\n };\n text: {\n base: string;\n };\n}\n\n/**\n * Default theme for `AccordionTitleComponent`\n */\nexport const accordionTitleTheme: AccordionTitleTheme = createTheme({\n root: {\n base: 'cursor-pointer flex items-center p-5 justify-between group-first:rounded-t-lg',\n color: {\n primary:\n 'text-primary-900 dark:text-primary-50 border-primary-200 dark:border-primary-700 bg-primary-100 hover:bg-primary-100 dark:bg-primary-800 dark:hover:bg-primary-800',\n light:\n 'text-gray-900 dark:text-gray-50 border-gray-200 dark:border-gray-700 bg-gray-100 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-800',\n blue: 'text-blue-900 dark:text-blue-50 border-blue-200 dark:border-blue-700 bg-blue-100 hover:bg-blue-100 dark:bg-blue-800 dark:hover:bg-blue-800',\n red: 'text-red-900 dark:text-red-50 border-red-200 dark:border-red-700 bg-red-100 hover:bg-red-100 dark:bg-red-800 dark:hover:bg-red-800',\n green:\n 'text-green-900 dark:text-green-50 border-green-200 dark:border-green-700 bg-green-100 hover:bg-green-100 dark:bg-green-800 dark:hover:bg-green-800',\n yellow:\n 'text-yellow-900 dark:text-yellow-50 border-yellow-200 dark:border-yellow-700 bg-yellow-100 hover:bg-yellow-100 dark:bg-yellow-800 dark:hover:bg-yellow-800',\n },\n isFlush: {\n enabled: 'border-b bg-transparent hover:bg-transparent',\n disabled: '',\n },\n isOpen: {\n enabled: '',\n disabled: 'bg-transparent dark:bg-transparent text-gray-500 ',\n },\n },\n text: {\n base: 'font-semibold text-base',\n },\n});\n\n/**\n * Generated class definition for `AccordionTitleComponent`\n */\nexport interface AccordionTitleClass extends FlowbiteClass {\n textClass: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { mergeTheme, CLOSE_SVG_ICON, createTheme } from 'flowbite-angular/utils';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, inject, model, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
3
+ import { InjectionToken, inject, Injectable, model, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
4
4
  import { twMerge } from 'tailwind-merge';
5
5
  import { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';
6
6
  import { ButtonComponent } from 'flowbite-angular/button';
@@ -8,6 +8,14 @@ import { IconRegistry, IconComponent } from 'flowbite-angular/icon';
8
8
  import { NgIf, NgClass, NgTemplateOutlet } from '@angular/common';
9
9
  import { DomSanitizer } from '@angular/platform-browser';
10
10
 
11
+ /**
12
+ * `InjectionToken` used to import `AlertTheme` value
13
+ *
14
+ * @example
15
+ * ```
16
+ * var theme = inject(FLOWBITE_ALERT_THEME_TOKEN)
17
+ * ```
18
+ */
11
19
  const FLOWBITE_ALERT_THEME_TOKEN = new InjectionToken('FLOWBITE_ALERT_THEME_TOKEN');
12
20
  class AlertThemeService {
13
21
  constructor() {
@@ -21,22 +29,80 @@ class AlertThemeService {
21
29
  };
22
30
  return output;
23
31
  }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AlertThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
33
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AlertThemeService, providedIn: 'root' }); }
24
34
  }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AlertThemeService, decorators: [{
36
+ type: Injectable,
37
+ args: [{
38
+ providedIn: 'root',
39
+ }]
40
+ }] });
25
41
 
42
+ /**
43
+ * @see https://flowbite.com/docs/components/alerts/
44
+ */
26
45
  class AlertComponent extends BaseComponent {
27
46
  constructor() {
28
47
  super(...arguments);
48
+ /**
49
+ * Service injected used to generate class
50
+ */
29
51
  this.themeService = inject(AlertThemeService);
52
+ /**
53
+ * `IcoRegistry` service
54
+ */
30
55
  this.iconRegistry = inject(IconRegistry);
56
+ /**
57
+ * `DomSanitizer` service
58
+ */
31
59
  this.domSanitizer = inject(DomSanitizer);
32
60
  //#region properties
61
+ /**
62
+ * Set the indicator color
63
+ *
64
+ * @default primary
65
+ */
33
66
  this.color = model('primary');
67
+ /**
68
+ * Set if the alert has border
69
+ *
70
+ * @default false
71
+ */
34
72
  this.hasBorder = model(false);
73
+ /**
74
+ * Set if the alert has border accent
75
+ *
76
+ * @default false
77
+ */
35
78
  this.hasBorderAccent = model(false);
79
+ /**
80
+ * Set the custom style for this alert
81
+ */
36
82
  this.customStyle = model({});
83
+ /**
84
+ * Set the custom icon
85
+ *
86
+ * @default null
87
+ */
37
88
  this.icon = model(null);
89
+ /**
90
+ * Set the additional content
91
+ *
92
+ * @default null
93
+ */
38
94
  this.additionalContent = model(null);
95
+ /**
96
+ * Set if the alert is dismissable
97
+ *
98
+ * @default false
99
+ */
39
100
  this.isDismissable = model(false);
101
+ /**
102
+ * Set the function called when the alert is dismissed
103
+ *
104
+ * @default undefined
105
+ */
40
106
  this.onDismiss = model();
41
107
  }
42
108
  //#endregion
@@ -53,6 +119,9 @@ class AlertComponent extends BaseComponent {
53
119
  this.iconRegistry.addRawSvgIconInNamepsace('flowbite-angular', 'close', this.domSanitizer.bypassSecurityTrustHtml(CLOSE_SVG_ICON));
54
120
  }
55
121
  //#endregion
122
+ /**
123
+ * Call the onDismiss function if it's not undefined
124
+ */
56
125
  onDismissClick() {
57
126
  const func = this.onDismiss();
58
127
  if (func)
@@ -110,6 +179,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
110
179
  }]
111
180
  }] });
112
181
 
182
+ /**
183
+ * Default theme for `AlertComponent`
184
+ */
113
185
  const alertTheme = createTheme({
114
186
  root: {
115
187
  base: 'flex flex-col gap-2 p-4 text-sm rounded-lg',