flowbite-angular 1.1.0 → 1.2.0

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 (210) hide show
  1. package/accordion/accordion-title.component.d.ts +9 -2
  2. package/fesm2022/flowbite-angular-accordion.mjs +54 -35
  3. package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
  4. package/fesm2022/flowbite-angular-alert.mjs +6 -7
  5. package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
  6. package/fesm2022/flowbite-angular-badge.mjs +6 -6
  7. package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
  8. package/fesm2022/flowbite-angular-breadcrumb.mjs +12 -13
  9. package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
  10. package/fesm2022/flowbite-angular-button.mjs +6 -7
  11. package/fesm2022/flowbite-angular-button.mjs.map +1 -1
  12. package/fesm2022/flowbite-angular-core.mjs.map +1 -1
  13. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +6 -7
  14. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +1 -1
  15. package/fesm2022/flowbite-angular-dropdown.mjs +24 -25
  16. package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
  17. package/fesm2022/flowbite-angular-icon.mjs +6 -6
  18. package/fesm2022/flowbite-angular-icon.mjs.map +1 -1
  19. package/fesm2022/flowbite-angular-indicator.mjs +6 -6
  20. package/fesm2022/flowbite-angular-indicator.mjs.map +1 -1
  21. package/fesm2022/flowbite-angular-modal.mjs +24 -25
  22. package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
  23. package/fesm2022/flowbite-angular-navbar.mjs +37 -38
  24. package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
  25. package/fesm2022/flowbite-angular-router-link-active.mjs +3 -3
  26. package/fesm2022/flowbite-angular-router-link-active.mjs.map +1 -1
  27. package/fesm2022/flowbite-angular-router-link.mjs +3 -3
  28. package/fesm2022/flowbite-angular-router-link.mjs.map +1 -1
  29. package/fesm2022/flowbite-angular-sanitize-html.mjs +3 -3
  30. package/fesm2022/flowbite-angular-sanitize-html.mjs.map +1 -1
  31. package/fesm2022/flowbite-angular-scroll-top.mjs +38 -13
  32. package/fesm2022/flowbite-angular-scroll-top.mjs.map +1 -1
  33. package/fesm2022/flowbite-angular-sidebar.mjs +36 -39
  34. package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
  35. package/fesm2022/flowbite-angular-theme.mjs +3 -3
  36. package/fesm2022/flowbite-angular-theme.mjs.map +1 -1
  37. package/fesm2022/flowbite-angular-utils.mjs.map +1 -1
  38. package/fesm2022/flowbite-angular.mjs +3 -3
  39. package/fesm2022/flowbite-angular.mjs.map +1 -1
  40. package/package.json +12 -45
  41. package/scroll-top/scroll-top.component.d.ts +11 -2
  42. package/esm2022/accordion/accordion-content.component.mjs +0 -78
  43. package/esm2022/accordion/accordion-content.theme.mjs +0 -22
  44. package/esm2022/accordion/accordion-content.theme.service.mjs +0 -34
  45. package/esm2022/accordion/accordion-panel.component.mjs +0 -95
  46. package/esm2022/accordion/accordion-panel.theme.mjs +0 -10
  47. package/esm2022/accordion/accordion-panel.theme.service.mjs +0 -34
  48. package/esm2022/accordion/accordion-title.component.mjs +0 -103
  49. package/esm2022/accordion/accordion-title.theme.mjs +0 -29
  50. package/esm2022/accordion/accordion-title.theme.service.mjs +0 -35
  51. package/esm2022/accordion/accordion.component.mjs +0 -93
  52. package/esm2022/accordion/accordion.theme.mjs +0 -10
  53. package/esm2022/accordion/accordion.theme.service.mjs +0 -34
  54. package/esm2022/accordion/flowbite-angular-accordion.mjs +0 -5
  55. package/esm2022/accordion/index.mjs +0 -13
  56. package/esm2022/alert/alert.component.mjs +0 -209
  57. package/esm2022/alert/alert.theme.mjs +0 -37
  58. package/esm2022/alert/alert.theme.service.mjs +0 -35
  59. package/esm2022/alert/flowbite-angular-alert.mjs +0 -5
  60. package/esm2022/alert/index.mjs +0 -4
  61. package/esm2022/badge/badge.component.mjs +0 -102
  62. package/esm2022/badge/badge.theme.mjs +0 -37
  63. package/esm2022/badge/badge.theme.service.mjs +0 -36
  64. package/esm2022/badge/flowbite-angular-badge.mjs +0 -5
  65. package/esm2022/badge/index.mjs +0 -4
  66. package/esm2022/base-component.directive.mjs +0 -64
  67. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +0 -91
  68. package/esm2022/breadcrumb/breadcrumb-item.theme.mjs +0 -21
  69. package/esm2022/breadcrumb/breadcrumb-item.theme.service.mjs +0 -35
  70. package/esm2022/breadcrumb/breadcrumb.component.mjs +0 -67
  71. package/esm2022/breadcrumb/breadcrumb.theme.mjs +0 -10
  72. package/esm2022/breadcrumb/breadcrumb.theme.service.mjs +0 -34
  73. package/esm2022/breadcrumb/flowbite-angular-breadcrumb.mjs +0 -5
  74. package/esm2022/breadcrumb/index.mjs +0 -7
  75. package/esm2022/button/button.component.mjs +0 -161
  76. package/esm2022/button/button.theme.mjs +0 -116
  77. package/esm2022/button/button.theme.service.mjs +0 -41
  78. package/esm2022/button/flowbite-angular-button.mjs +0 -5
  79. package/esm2022/button/index.mjs +0 -4
  80. package/esm2022/core/flowbite-angular-core.mjs +0 -5
  81. package/esm2022/core/flowbite.theme.init.mjs +0 -315
  82. package/esm2022/core/index.mjs +0 -2
  83. package/esm2022/dark-theme-toggle/dark-theme-toggle.component.mjs +0 -93
  84. package/esm2022/dark-theme-toggle/dark-theme-toggle.theme.mjs +0 -10
  85. package/esm2022/dark-theme-toggle/dark-theme-toggle.theme.service.mjs +0 -34
  86. package/esm2022/dark-theme-toggle/flowbite-angular-dark-theme-toggle.mjs +0 -5
  87. package/esm2022/dark-theme-toggle/index.mjs +0 -4
  88. package/esm2022/dropdown/dropdown-divider.component.mjs +0 -53
  89. package/esm2022/dropdown/dropdown-divider.theme.mjs +0 -10
  90. package/esm2022/dropdown/dropdown-divider.theme.service.mjs +0 -34
  91. package/esm2022/dropdown/dropdown-header.component.mjs +0 -61
  92. package/esm2022/dropdown/dropdown-header.theme.mjs +0 -13
  93. package/esm2022/dropdown/dropdown-header.theme.service.mjs +0 -35
  94. package/esm2022/dropdown/dropdown-item.component.mjs +0 -53
  95. package/esm2022/dropdown/dropdown-item.theme.mjs +0 -9
  96. package/esm2022/dropdown/dropdown-item.theme.service.mjs +0 -34
  97. package/esm2022/dropdown/dropdown.component.mjs +0 -182
  98. package/esm2022/dropdown/dropdown.theme.mjs +0 -35
  99. package/esm2022/dropdown/dropdown.theme.service.mjs +0 -39
  100. package/esm2022/dropdown/flowbite-angular-dropdown.mjs +0 -5
  101. package/esm2022/dropdown/index.mjs +0 -13
  102. package/esm2022/flowbite-angular.mjs +0 -5
  103. package/esm2022/flowbite.theme.service.mjs +0 -6
  104. package/esm2022/icon/flowbite-angular-icon.mjs +0 -5
  105. package/esm2022/icon/icon-registry.mjs +0 -159
  106. package/esm2022/icon/icon.component.mjs +0 -72
  107. package/esm2022/icon/index.mjs +0 -4
  108. package/esm2022/icon/trusted-types.mjs +0 -21
  109. package/esm2022/index.mjs +0 -4
  110. package/esm2022/indicator/flowbite-angular-indicator.mjs +0 -5
  111. package/esm2022/indicator/index.mjs +0 -4
  112. package/esm2022/indicator/indicators.component.mjs +0 -156
  113. package/esm2022/indicator/indicators.theme.mjs +0 -71
  114. package/esm2022/indicator/indicators.theme.service.mjs +0 -36
  115. package/esm2022/modal/flowbite-angular-modal.mjs +0 -5
  116. package/esm2022/modal/index.mjs +0 -13
  117. package/esm2022/modal/modal-body.component.mjs +0 -53
  118. package/esm2022/modal/modal-body.theme.mjs +0 -10
  119. package/esm2022/modal/modal-body.theme.service.mjs +0 -34
  120. package/esm2022/modal/modal-footer.component.mjs +0 -53
  121. package/esm2022/modal/modal-footer.theme.mjs +0 -10
  122. package/esm2022/modal/modal-footer.theme.service.mjs +0 -34
  123. package/esm2022/modal/modal-header.component.mjs +0 -96
  124. package/esm2022/modal/modal-header.theme.mjs +0 -16
  125. package/esm2022/modal/modal-header.theme.service.mjs +0 -36
  126. package/esm2022/modal/modal.component.mjs +0 -201
  127. package/esm2022/modal/modal.theme.mjs +0 -33
  128. package/esm2022/modal/modal.theme.service.mjs +0 -37
  129. package/esm2022/navbar/flowbite-angular-navbar.mjs +0 -5
  130. package/esm2022/navbar/index.mjs +0 -19
  131. package/esm2022/navbar/navbar-brand.component.mjs +0 -53
  132. package/esm2022/navbar/navbar-brand.theme.mjs +0 -10
  133. package/esm2022/navbar/navbar-brand.theme.service.mjs +0 -34
  134. package/esm2022/navbar/navbar-content.component.mjs +0 -84
  135. package/esm2022/navbar/navbar-content.theme.mjs +0 -13
  136. package/esm2022/navbar/navbar-content.theme.service.mjs +0 -35
  137. package/esm2022/navbar/navbar-icon-button.component.mjs +0 -66
  138. package/esm2022/navbar/navbar-icon-button.theme.mjs +0 -18
  139. package/esm2022/navbar/navbar-icon-button.theme.service.mjs +0 -34
  140. package/esm2022/navbar/navbar-item.component.mjs +0 -82
  141. package/esm2022/navbar/navbar-item.theme.mjs +0 -14
  142. package/esm2022/navbar/navbar-item.theme.service.mjs +0 -34
  143. package/esm2022/navbar/navbar-toggle.component.mjs +0 -87
  144. package/esm2022/navbar/navbar-toggle.theme.mjs +0 -10
  145. package/esm2022/navbar/navbar-toggle.theme.service.mjs +0 -34
  146. package/esm2022/navbar/navbar.component.mjs +0 -133
  147. package/esm2022/navbar/navbar.theme.mjs +0 -23
  148. package/esm2022/navbar/navbar.theme.service.mjs +0 -34
  149. package/esm2022/router-link/flowbite-angular-router-link.mjs +0 -5
  150. package/esm2022/router-link/flowbite-router-link.directive.mjs +0 -66
  151. package/esm2022/router-link/index.mjs +0 -2
  152. package/esm2022/router-link-active/flowbite-angular-router-link-active.mjs +0 -5
  153. package/esm2022/router-link-active/flowbite-router-link-active.directive.mjs +0 -61
  154. package/esm2022/router-link-active/index.mjs +0 -2
  155. package/esm2022/sanitize-html/flowbite-angular-sanitize-html.mjs +0 -5
  156. package/esm2022/sanitize-html/index.mjs +0 -2
  157. package/esm2022/sanitize-html/sanitize-html.pipe.mjs +0 -32
  158. package/esm2022/scroll-top/flowbite-angular-scroll-top.mjs +0 -5
  159. package/esm2022/scroll-top/index.mjs +0 -4
  160. package/esm2022/scroll-top/scroll-top.component.mjs +0 -101
  161. package/esm2022/scroll-top/scroll-top.theme.mjs +0 -30
  162. package/esm2022/scroll-top/scroll-top.theme.service.mjs +0 -34
  163. package/esm2022/sidebar/flowbite-angular-sidebar.mjs +0 -5
  164. package/esm2022/sidebar/index.mjs +0 -19
  165. package/esm2022/sidebar/sidebar-item-group.component.mjs +0 -129
  166. package/esm2022/sidebar/sidebar-item-group.theme.mjs +0 -21
  167. package/esm2022/sidebar/sidebar-item-group.theme.service.mjs +0 -35
  168. package/esm2022/sidebar/sidebar-item.component.mjs +0 -146
  169. package/esm2022/sidebar/sidebar-item.theme.mjs +0 -21
  170. package/esm2022/sidebar/sidebar-item.theme.service.mjs +0 -35
  171. package/esm2022/sidebar/sidebar-menu.component.mjs +0 -77
  172. package/esm2022/sidebar/sidebar-menu.theme.mjs +0 -27
  173. package/esm2022/sidebar/sidebar-menu.theme.service.mjs +0 -34
  174. package/esm2022/sidebar/sidebar-page-content.component.mjs +0 -55
  175. package/esm2022/sidebar/sidebar-page-content.theme.mjs +0 -15
  176. package/esm2022/sidebar/sidebar-page-content.theme.service.mjs +0 -34
  177. package/esm2022/sidebar/sidebar-toggle.component.mjs +0 -105
  178. package/esm2022/sidebar/sidebar-toggle.theme.mjs +0 -21
  179. package/esm2022/sidebar/sidebar-toggle.theme.service.mjs +0 -34
  180. package/esm2022/sidebar/sidebar.component.mjs +0 -116
  181. package/esm2022/sidebar/sidebar.theme.mjs +0 -11
  182. package/esm2022/sidebar/sidebar.theme.service.mjs +0 -34
  183. package/esm2022/theme/flowbite-angular-theme.mjs +0 -5
  184. package/esm2022/theme/flowbite-theme.directive.mjs +0 -71
  185. package/esm2022/theme/index.mjs +0 -2
  186. package/esm2022/type-definitions/colors/flowbite.colors.mjs +0 -2
  187. package/esm2022/type-definitions/colors/flowbite.gradient-colors.mjs +0 -2
  188. package/esm2022/type-definitions/colors/flowbite.gradient-duo-tone-colors.mjs +0 -2
  189. package/esm2022/type-definitions/colors/index.mjs +0 -2
  190. package/esm2022/type-definitions/flowbite.boolean.mjs +0 -10
  191. package/esm2022/type-definitions/flowbite.class.mjs +0 -2
  192. package/esm2022/type-definitions/flowbite.combination.mjs +0 -5
  193. package/esm2022/type-definitions/flowbite.content-positions.mjs +0 -2
  194. package/esm2022/type-definitions/flowbite.deep-partial.mjs +0 -2
  195. package/esm2022/type-definitions/flowbite.heading-levels.mjs +0 -2
  196. package/esm2022/type-definitions/flowbite.positions.mjs +0 -2
  197. package/esm2022/type-definitions/flowbite.router-link-parameter.mjs +0 -2
  198. package/esm2022/type-definitions/flowbite.sizes.mjs +0 -2
  199. package/esm2022/type-definitions/flowbite.themes.mjs +0 -2
  200. package/esm2022/type-definitions/index.mjs +0 -3
  201. package/esm2022/utils/flowbite-angular-utils.mjs +0 -5
  202. package/esm2022/utils/icon.list.mjs +0 -39
  203. package/esm2022/utils/id.generator.mjs +0 -81
  204. package/esm2022/utils/index.mjs +0 -9
  205. package/esm2022/utils/theme/clone-deep.mjs +0 -18
  206. package/esm2022/utils/theme/create-class.mjs +0 -10
  207. package/esm2022/utils/theme/create-theme.mjs +0 -10
  208. package/esm2022/utils/theme/is-object.mjs +0 -10
  209. package/esm2022/utils/theme/merge-theme.mjs +0 -29
  210. package/esm2022/utils/theme/to-string.mjs +0 -10
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-sidebar.mjs","sources":["../../../../libs/flowbite-angular/sidebar/sidebar-item-group.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item-group.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item-group.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.theme.ts","../../../../libs/flowbite-angular/sidebar/flowbite-angular-sidebar.ts"],"sourcesContent":["import type {\n SidebarItemGroupClass,\n SidebarItemGroupProperties,\n SidebarItemGroupTheme,\n} from './sidebar-item-group.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 `SidebarItemGroupTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN = new InjectionToken<SidebarItemGroupTheme>(\n 'FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarItemGroupThemeService\n implements FlowbiteThemeService<SidebarItemGroupProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN);\n\n public getClasses(properties: SidebarItemGroupProperties): SidebarItemGroupClass {\n const theme: SidebarItemGroupTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarItemGroupClass = {\n rootClass: twMerge(theme.root.base),\n spanClass: twMerge(theme.spanText.base, theme.spanText.color[properties.color]),\n };\n\n return output;\n }\n}\n","import type {\n SidebarItemClass,\n SidebarItemProperties,\n SidebarItemTheme,\n} from './sidebar-item.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 `SidebarItemTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN = new InjectionToken<SidebarItemTheme>(\n 'FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarItemThemeService implements FlowbiteThemeService<SidebarItemProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN);\n\n public getClasses(properties: SidebarItemProperties): SidebarItemClass {\n const theme: SidebarItemTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarItemClass = {\n rootClass: twMerge(theme.root.base, theme.root.color[properties.color]),\n sidebarIconClass: twMerge(theme.icon.base),\n };\n\n return output;\n }\n}\n","import { SidebarItemGroupComponent } from './sidebar-item-group.component';\nimport type { SidebarItemClass, SidebarItemTheme } from './sidebar-item.theme';\nimport { SidebarItemThemeService } from './sidebar-item.theme.service';\nimport { SidebarMenuComponent } from './sidebar-menu.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { BadgeComponent } from 'flowbite-angular/badge';\nimport { FlowbiteRouterLinkDirective } from 'flowbite-angular/router-link';\nimport { FlowbiteRouterLinkActiveDirective } from 'flowbite-angular/router-link-active';\nimport { SanitizeHtmlPipe } from 'flowbite-angular/sanitize-html';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE = new InjectionToken<string | undefined>(\n 'FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE = new InjectionToken<string | undefined>(\n 'FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarItemTheme>\n>('FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarItemDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE,\n useValue: undefined,\n },\n {\n provide: FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE,\n useValue: undefined,\n },\n {\n provide: FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n imports: [SanitizeHtmlPipe, BadgeComponent],\n selector: 'flowbite-sidebar-item',\n template: `\n @if (icon()) {\n <span\n class=\"flex-shrink-0\"\n [innerHTML]=\"icon()! | sanitizeHtml\"></span>\n }\n\n <span\n [class]=\"contentClasses().sidebarIconClass\"\n [class.ml-3]=\"icon()\">\n <ng-content />\n </span>\n @if (label()) {\n <flowbite-badge>{{ label() }}</flowbite-badge>\n }\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarItemComponent extends BaseComponent<SidebarItemClass> {\n /**\n * Optional `FlowbiteRouterLinkDirective` injected\n */\n public readonly flowbiteRouterLink = inject(FlowbiteRouterLinkDirective, { optional: true });\n /**\n * Optional `FlowbiteRouterLinkActiveDirective` injected\n */\n public readonly flowbiteRouterLinkActive = inject(FlowbiteRouterLinkActiveDirective, {\n optional: true,\n });\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarItemThemeService);\n /**\n * The optional parent `SidebarItemGroupComponent`\n */\n public readonly sidebarItemGroupComponent = inject(SidebarItemGroupComponent, { optional: true });\n /**\n * The optional parent `SidebarMenuComponent`\n */\n public readonly sidebarMenuComponent = inject(SidebarMenuComponent, { optional: true });\n\n //#region properties\n /**\n * Set the sidebar item icon\n *\n * @default undefined\n */\n public icon = model(inject(FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE));\n /**\n * Set the sidebar item color\n *\n * @default `SidebarItemGroupComponent`'s color\n * @default `SidebarMenuComponent`'s color\n */\n public color = model<keyof SidebarColors>(\n (this.sidebarItemGroupComponent ?? this.sidebarMenuComponent)!.color()\n );\n /**\n * Set the sidebar item label\n *\n * @default undefined\n */\n public label = model(inject(FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar item\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarItemClass {\n return this.themeService.getClasses({\n icon: this.icon(),\n color: this.color(),\n label: this.label(),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n\n /**\n * Toggle sidebar menu visibility\n */\n onClick(): void {\n (this.sidebarMenuComponent || this.sidebarItemGroupComponent?.sidebarMenuComponent)?.closeAll();\n (\n this.sidebarMenuComponent || this.sidebarItemGroupComponent?.sidebarMenuComponent\n )?.sidebarComponent.toggleVisibility(false);\n }\n}\n","import type { SidebarItemGroupClass, SidebarItemGroupTheme } from './sidebar-item-group.theme';\nimport { SidebarItemGroupThemeService } from './sidebar-item-group.theme.service';\nimport { SidebarItemComponent } from './sidebar-item.component';\nimport { SidebarMenuComponent } from './sidebar-menu.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport const FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarItemGroupTheme>\n>('FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarItemGroupDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n imports: [IconComponent],\n selector: 'flowbite-sidebar-item-group',\n template: `\n <span\n [class]=\"contentClasses().spanClass\"\n (click)=\"toggleVisibility()\">\n <h4>{{ title() }}</h4>\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"h-6 w-6 shrink-0 duration-200\"\n [class.rotate-180]=\"!isOpen()\" />\n </span>\n @if (isOpen()) {\n <ng-content />\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarItemGroupComponent extends BaseComponent<SidebarItemGroupClass> {\n /**\n * Service injecteed used to generate class\n */\n public readonly themeService = inject(SidebarItemGroupThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * The parent `SidebarMenuComponent`\n */\n public readonly sidebarMenuComponent = inject(SidebarMenuComponent);\n /**\n * List of `SidebarItemComponent`\n */\n public readonly sidebarItemChildren = contentChildren(SidebarItemComponent);\n\n //#region properties\n /**\n * Set if the sidebar item group is open\n *\n * @default One of children is active\n * @default false\n */\n public isOpen = model<boolean>(\n this.sidebarItemChildren().some((x) => x.flowbiteRouterLinkActive?.isActive() ?? false)\n );\n /**\n * Set the sidebar item group color\n *\n * @default `SidebarMenuComponent`'s color\n */\n public color = model<keyof SidebarColors>(this.sidebarMenuComponent.color());\n /**\n * Set the sidebar item group title\n */\n public title = model.required<string>();\n /**\n * Set the custom style for this sidebar item group\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarItemGroupClass {\n return this.themeService.getClasses({\n color: this.color(),\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 isOpen value\n *\n * @param isOpen If provided force isOpen value\n */\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type {\n SidebarMenuClass,\n SidebarMenuProperties,\n SidebarMenuTheme,\n} from './sidebar-menu.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 `SidebarMenuTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_MENU_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_MENU_THEME_TOKEN = new InjectionToken<SidebarMenuTheme>(\n 'FLOWBITE_SIDEBAR_MENU_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarMenuThemeService implements FlowbiteThemeService<SidebarMenuProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_MENU_THEME_TOKEN);\n\n public getClasses(properties: SidebarMenuProperties): SidebarMenuClass {\n const theme: SidebarMenuTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarMenuClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.isOpen[properties.isOpen],\n properties.isOpen === 'enabled' && theme.root.displayMode[properties.displayMode],\n theme.root.color[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import { SidebarItemGroupComponent } from './sidebar-item-group.component';\nimport { SidebarItemComponent } from './sidebar-item.component';\nimport type { SidebarMenuClass, SidebarMenuTheme } from './sidebar-menu.theme';\nimport { SidebarMenuThemeService } from './sidebar-menu.theme.service';\nimport { SidebarComponent } from './sidebar.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarMenuTheme>\n>('FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarMenuDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar-menu',\n template: '<ng-content />',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarMenuComponent extends BaseComponent<SidebarMenuClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarMenuThemeService);\n /**\n * The parent `SidebarComponent`\n */\n public readonly sidebarComponent = inject(SidebarComponent);\n /**\n * List of `SidebarItemGroupComponent`\n */\n public readonly sidebarItemGroupChildren = contentChildren(SidebarItemGroupComponent);\n /**\n * List of `SidebarItemComponent`\n */\n public readonly sidebarItemChildren = contentChildren(SidebarItemComponent);\n\n //#region properties\n /**\n * Set the sidebar menu color\n *\n * @default `SidebarComponent`'s color\n */\n public color = model<keyof SidebarColors>(this.sidebarComponent.color());\n /**\n * Set the custom style for this sidebar menu\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n public override fetchClass(): SidebarMenuClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.sidebarComponent.isOpen()),\n color: this.color(),\n displayMode: this.sidebarComponent.displayMode(),\n customStyle: this.customStyle(),\n });\n }\n\n /**\n * Toggle visibility of ll children to false\n */\n public closeAll(): void {\n this.sidebarItemGroupChildren().forEach((x) => x.toggleVisibility(false));\n }\n}\n","import type {\n SidebarPageContentClass,\n SidebarPageContentProperties,\n SidebarPageContentTheme,\n} from './sidebar-page-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 `SidebarPageContentTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN =\n new InjectionToken<SidebarPageContentTheme>('FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN');\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarPageContentThemeService\n implements FlowbiteThemeService<SidebarPageContentProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN);\n\n public getClasses(properties: SidebarPageContentProperties): SidebarPageContentClass {\n const theme: SidebarPageContentTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarPageContentClass = {\n rootClass: twMerge(\n theme.root.base,\n properties.isOpen === 'enabled' && theme.root.displayMode[properties.displayMode]\n ),\n };\n\n return output;\n }\n}\n","import type {\n SidebarPageContentClass,\n SidebarPageContentTheme,\n} from './sidebar-page-content.theme';\nimport { SidebarPageContentThemeService } from './sidebar-page-content.theme.service';\nimport { SidebarComponent } from './sidebar.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarPageContentTheme>\n>('FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarPageContentDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar-page-content',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarPageContentComponent extends BaseComponent<SidebarPageContentClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarPageContentThemeService);\n /**\n * The parent `SidebarComponent`\n */\n public readonly sidebarComponent = inject(SidebarComponent);\n\n //#region properties\n /**\n * Set the custom style for this sidebar page content\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE));\n //endregion\n\n //region BaseComponent implementation\n public override fetchClass(): SidebarPageContentClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.sidebarComponent.isOpen()),\n displayMode: this.sidebarComponent.displayMode(),\n customStyle: this.customStyle(),\n });\n }\n //endregion\n}\n","import type { SidebarClass, SidebarProperties, SidebarTheme } from './sidebar.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 `SidebarTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_THEME_TOKEN = new InjectionToken<SidebarTheme>(\n 'FLOWBITE_SIDEBAR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarThemeService implements FlowbiteThemeService<SidebarProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_THEME_TOKEN);\n\n public getClasses(properties: SidebarProperties): SidebarClass {\n const theme: SidebarTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarClass = {\n rootClass: twMerge(theme.root.base, theme.root.isRounded[properties.isRounded]),\n };\n\n return output;\n }\n}\n","import { SidebarMenuComponent } from './sidebar-menu.component';\nimport { SidebarPageContentComponent } from './sidebar-page-content.component';\nimport type {\n SidebarClass,\n SidebarColors,\n SidebarDisplayMode,\n SidebarTheme,\n} from './sidebar.theme';\nimport { SidebarThemeService } from './sidebar.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE = new InjectionToken<keyof SidebarColors>(\n 'FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE = new InjectionToken<\n keyof SidebarDisplayMode\n>('FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE');\n\nexport const FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarTheme>\n>('FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE,\n useValue: 'primary',\n },\n {\n provide: FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE,\n useValue: 'push',\n },\n {\n provide: FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarComponent extends BaseComponent<SidebarClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarThemeService);\n /**\n * The child `SidebarMenuComponent`\n */\n public readonly sidebarMenuChild = contentChild.required(SidebarMenuComponent);\n /**\n * The child `SidebarPageContentComponent`\n */\n public readonly sidebarPageContentChild = contentChild.required(SidebarPageContentComponent);\n\n //#region properties\n /**\n * Set the sidebar color\n *\n * @default primary\n */\n public color = model(inject(FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE));\n /**\n * Set the sidebar display mode\n *\n * @default push\n */\n public displayMode = model(inject(FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE));\n /**\n * Set is the sidebar is open\n *\n * @default false\n */\n public isOpen = model(inject(FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE));\n /**\n * Set is the sidebar is rounded\n *\n * @default false\n */\n public isRounded = model(inject(FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarClass {\n return this.themeService.getClasses({\n displayMode: this.displayMode(),\n isRounded: booleanToFlowbiteBoolean(this.isRounded()),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n\n /**\n * Toggle sidebar visibility\n *\n * @param isOpen If provided force isOpen value\n */\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type { DeepPartial, FlowbiteBoolean, FlowbiteClass, FlowbiteColors } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\nexport interface SidebarColors\n extends Pick<FlowbiteColors, 'primary' | 'dark' | 'blue' | 'red' | 'green' | 'yellow'> {\n [key: string]: string;\n}\n\nexport interface SidebarDisplayMode {\n push: string;\n over: string;\n backdrop: string;\n}\n//endregion\n\nexport interface SidebarProperties {\n displayMode: keyof SidebarDisplayMode;\n isRounded: keyof FlowbiteBoolean;\n customStyle: DeepPartial<SidebarTheme>;\n}\n\nexport interface SidebarTheme {\n root: {\n base: string;\n isRounded: FlowbiteBoolean;\n };\n}\n\nexport const sidebarTheme: SidebarTheme = createTheme({\n root: {\n base: 'flex flex-row min-h-full',\n isRounded: {\n enabled: 'rounded',\n disabled: '',\n },\n },\n});\n\nexport type SidebarClass = FlowbiteClass;\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `SidebarItemComponent`\n */\nexport interface SidebarItemProperties {\n icon: string | undefined;\n color: keyof SidebarColors;\n label: string | undefined;\n customStyle: DeepPartial<SidebarItemTheme>;\n}\n\n/**\n * Theme definition for `SidebarItemComponent`\n */\nexport interface SidebarItemTheme {\n root: {\n base: string;\n color: SidebarColors;\n };\n icon: {\n base: string;\n };\n}\n\n/**\n * Default theme for `SidebarItemComponent`\n */\nexport const sidebarItemTheme: SidebarItemTheme = createTheme({\n root: {\n base: 'group flex cursor-pointer items-center rounded-lg p-2 text-base font-normal text-gray-900 dark:text-white',\n color: {\n primary:\n 'aria-current:text-primary-500 dark:aria-current:text-primary-300 hover:bg-primary-200/35 dark:hover:bg-primary-700/35',\n dark: 'aria-current:text-gray-500 dark:aria-current:text-gray-300 hover:bg-gray-200/35 dark:hover:bg-gray-700/35',\n blue: 'aria-current:text-blue-500 dark:aria-current:text-blue-300 hover:bg-blue-200/35 dark:hover:bg-blue-700/35',\n red: 'aria-current:text-red-500 dark:aria-current:text-red-300 hover:bg-red-200/35 dark:hover:bg-red-700/35',\n green:\n 'aria-current:text-green-500 dark:aria-current:text-green-300 hover:bg-green-200/35 dark:hover:bg-green-700/35',\n yellow:\n 'aria-current:text-yellow-500 dark:aria-current:text-yellow-300 hover:bg-yellow-200/35 dark:hover:bg-yellow-700/35',\n },\n },\n icon: {\n base: 'flex-1 whitespace-nowrap',\n },\n});\n\n/**\n * Generated class definition for `SidebarItemComponent`\n */\nexport interface SidebarItemClass extends FlowbiteClass {\n sidebarIconClass: string;\n}\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupProperties {\n color: keyof SidebarColors;\n customStyle: DeepPartial<SidebarItemGroupTheme>;\n}\n\n/**\n * Theme definition for `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupTheme {\n root: {\n base: string;\n };\n spanText: {\n base: string;\n color: SidebarColors;\n };\n}\n\n/**\n * Default theme for `SidebarItemGroupComponent`\n */\nexport const sidebarItemGroupTheme: SidebarItemGroupTheme = createTheme({\n root: {\n base: 'flex flex-col py-2 font-semibold cursor-pointer',\n },\n spanText: {\n base: 'flex flex-row justify-between m-2',\n color: {\n primary: 'text-primary-600',\n dark: 'text-gray-600',\n blue: 'text-blue-600',\n red: 'text-red-600',\n green: 'text-green-600',\n yellow: 'text-yellow-600',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupClass extends FlowbiteClass {\n spanClass: string;\n}\n","import type {\n SidebarToggleClass,\n SidebarToggleProperties,\n SidebarToggleTheme,\n} from './sidebar-toggle.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 `SidebarToggleTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN = new InjectionToken<SidebarToggleTheme>(\n 'FLOWBITE_TOGGLE_SIDEBAR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarToggleThemeService implements FlowbiteThemeService<SidebarToggleProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN);\n\n public getClasses(properties: SidebarToggleProperties): SidebarToggleClass {\n const theme: SidebarToggleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarToggleClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.size[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import type {\n SidebarToggleClass,\n SidebarToggleSizes,\n SidebarToggleTheme,\n} from './sidebar-toggle.theme';\nimport { SidebarToggleThemeService } from './sidebar-toggle.theme.service';\nimport { SidebarComponent } from './sidebar.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { BARS_SVG_ICON } from 'flowbite-angular/utils';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE = new InjectionToken<keyof SidebarColors>(\n 'FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE = new InjectionToken<\n keyof SidebarToggleSizes\n>('FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE');\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarToggleTheme>\n>('FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarToggleDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE,\n useValue: 'primary',\n },\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE,\n useValue: 'sm',\n },\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n imports: [IconComponent],\n selector: 'flowbite-sidebar-toggle',\n template: `<flowbite-icon svgIcon=\"flowbite-angular:bars\" />`,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarToggleComponent extends BaseComponent<SidebarToggleClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarToggleThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * The `SidebarComponent` to use\n *\n * @default The injected `SidebarComponent`\n */\n public readonly sidebarComponent = model(inject(SidebarComponent));\n\n //#region properties\n /**\n * Set the sidebar toggle color\n *\n * @default primary\n */\n public color = model(inject(FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE));\n /**\n * Set the sidebar toggle size\n *\n * @default sm\n */\n public size = model(inject(FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar toggle\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarToggleClass {\n return this.themeService.getClasses({\n color: this.color(),\n size: this.size(),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'tabs',\n this.domSanitizer.bypassSecurityTrustHtml(BARS_SVG_ICON)\n );\n }\n //#endregion\n\n /**\n * Toggle sidebar visibility\n */\n public onClick(): void {\n const isOpen = this.sidebarComponent().isOpen();\n\n this.sidebarComponent().isOpen.set(!isOpen);\n }\n}\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass, FlowbiteSizes } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region region Component theme option\n/**\n * Available sizes for `SidebarToggleComponent`\n */\nexport interface SidebarToggleSizes extends Pick<FlowbiteSizes, 'sm'> {\n [key: string]: string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `SidebarToggleComponent`\n */\nexport interface SidebarToggleProperties {\n color: keyof SidebarColors;\n size: keyof SidebarToggleSizes;\n customStyle: DeepPartial<SidebarToggleTheme>;\n}\n\n/**\n * Theme definitions for `SidebarToggleComponent`\n */\nexport interface SidebarToggleTheme {\n root: {\n base: string;\n color: SidebarColors;\n size: SidebarToggleSizes;\n };\n}\n\n/**\n * Default theme for `SidebarToggleComponent`\n */\nexport const sidebarToggleTheme: SidebarToggleTheme = createTheme({\n root: {\n base: 'cursor-pointer inline-flex items-center p-2 justify-center rounded-lg focus:outline-none focus:ring-2',\n color: {\n primary:\n 'text-primary-500 dark:text-primary-400 hover:bg-primary-100 dark:hover:bg-gray-700 focus:ring-primary-200 dark:focus:ring-primary-600',\n dark: 'text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:ring-gray-200 dark:focus:ring-gray-600',\n blue: 'text-blue-500 dark:text-blue-400 hover:bg-blue-100 dark:hover:bg-blue-700 focus:ring-blue-200 dark:focus:ring-blue-600',\n red: 'text-red-500 dark:text-red-400 hover:bg-red-100 dark:hover:bg-red-700 focus:ring-red-200 dark:focus:ring-red-600',\n green:\n 'text-green-500 dark:text-green-400 hover:bg-green-100 dark:hover:bg-green-700 focus:ring-green-200 dark:focus:ring-green-600',\n yellow:\n 'text-yellow-500 dark:text-yellow-400 hover:bg-yellow-100 dark:hover:bg-yellow-700 focus:ring-yellow-200 dark:focus:ring-yellow-600',\n },\n size: {\n sm: 'text-sm',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarToggleComponent`\n */\nexport type SidebarToggleClass = FlowbiteClass;\n","import type { SidebarDisplayMode } from './sidebar.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 `SidebarPageContentComponent`\n */\nexport interface SidebarPageContentProperties {\n isOpen: keyof FlowbiteBoolean;\n displayMode: keyof SidebarDisplayMode;\n customStyle: DeepPartial<SidebarPageContentTheme>;\n}\n\n/**\n * Theme definition for `SidebarPageContentComponent`\n */\nexport interface SidebarPageContentTheme {\n root: {\n base: string;\n displayMode: SidebarDisplayMode;\n };\n}\n\n/**\n * Default theme for `SidebarPageContentComponent`\n */\nexport const sidebarPageContentTheme: SidebarPageContentTheme = createTheme({\n root: {\n base: 'flex flex-1',\n displayMode: {\n push: '',\n over: '',\n backdrop: 'sticky left-0 right-0 z-30 bg-gray-500 bg-opacity-50 blur-md',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarPageContentComponent`\n */\nexport type SidebarPageContentClass = FlowbiteClass;\n","import type { SidebarColors, SidebarDisplayMode } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class definition of `SidebarMenuComponent`\n */\nexport interface SidebarMenuProperties {\n isOpen: keyof FlowbiteBoolean;\n color: keyof SidebarColors;\n displayMode: keyof SidebarDisplayMode;\n customStyle: DeepPartial<SidebarMenuTheme>;\n}\n\n/**\n * Theme definition for `SidebarMenuComponent`\n */\nexport interface SidebarMenuTheme {\n root: {\n base: string;\n displayMode: SidebarDisplayMode;\n isOpen: FlowbiteBoolean;\n color: SidebarColors;\n };\n}\n\n/**\n * Default theme for `SidebarMenuComponent`\n */\nexport const sidebarMenuTheme: SidebarMenuTheme = createTheme({\n root: {\n base: 'flex-col min-h-full overflow-y-auto shrink-0 pr-1 border-r bg-white dark:bg-gray-800',\n displayMode: {\n push: '',\n over: 'sticky top-0 z-50',\n backdrop: 'sticky top-0 z-50',\n },\n isOpen: {\n enabled: 'flex',\n disabled: 'hidden',\n },\n color: {\n primary: 'border-primary-200 dark:border-primary-700',\n dark: 'border-gray-200 dark:border-gray-800',\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 },\n});\n\n/**\n * Generated class definition for `SidebarMenuComponent`\n */\nexport type SidebarMenuClass = FlowbiteClass;\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-sidebar.mjs","sources":["../../../../libs/flowbite-angular/sidebar/sidebar-item-group.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item-group.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-item-group.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.theme.service.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.component.ts","../../../../libs/flowbite-angular/sidebar/sidebar-toggle.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-page-content.theme.ts","../../../../libs/flowbite-angular/sidebar/sidebar-menu.theme.ts","../../../../libs/flowbite-angular/sidebar/flowbite-angular-sidebar.ts"],"sourcesContent":["import type {\n SidebarItemGroupClass,\n SidebarItemGroupProperties,\n SidebarItemGroupTheme,\n} from './sidebar-item-group.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 `SidebarItemGroupTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN = new InjectionToken<SidebarItemGroupTheme>(\n 'FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarItemGroupThemeService\n implements FlowbiteThemeService<SidebarItemGroupProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_ITEM_GROUP_THEME_TOKEN);\n\n public getClasses(properties: SidebarItemGroupProperties): SidebarItemGroupClass {\n const theme: SidebarItemGroupTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarItemGroupClass = {\n rootClass: twMerge(theme.root.base),\n spanClass: twMerge(theme.spanText.base, theme.spanText.color[properties.color]),\n };\n\n return output;\n }\n}\n","import type {\n SidebarItemClass,\n SidebarItemProperties,\n SidebarItemTheme,\n} from './sidebar-item.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 `SidebarItemTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN = new InjectionToken<SidebarItemTheme>(\n 'FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarItemThemeService implements FlowbiteThemeService<SidebarItemProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_ITEM_THEME_TOKEN);\n\n public getClasses(properties: SidebarItemProperties): SidebarItemClass {\n const theme: SidebarItemTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarItemClass = {\n rootClass: twMerge(theme.root.base, theme.root.color[properties.color]),\n sidebarIconClass: twMerge(theme.icon.base),\n };\n\n return output;\n }\n}\n","import { SidebarItemGroupComponent } from './sidebar-item-group.component';\nimport type { SidebarItemClass, SidebarItemTheme } from './sidebar-item.theme';\nimport { SidebarItemThemeService } from './sidebar-item.theme.service';\nimport { SidebarMenuComponent } from './sidebar-menu.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { BadgeComponent } from 'flowbite-angular/badge';\nimport { FlowbiteRouterLinkDirective } from 'flowbite-angular/router-link';\nimport { FlowbiteRouterLinkActiveDirective } from 'flowbite-angular/router-link-active';\nimport { SanitizeHtmlPipe } from 'flowbite-angular/sanitize-html';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE = new InjectionToken<string | undefined>(\n 'FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE = new InjectionToken<string | undefined>(\n 'FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarItemTheme>\n>('FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarItemDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE,\n useValue: undefined,\n },\n {\n provide: FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE,\n useValue: undefined,\n },\n {\n provide: FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n imports: [SanitizeHtmlPipe, BadgeComponent],\n selector: 'flowbite-sidebar-item',\n template: `\n @if (icon()) {\n <span\n class=\"flex-shrink-0\"\n [innerHTML]=\"icon()! | sanitizeHtml\"></span>\n }\n\n <span\n [class]=\"contentClasses().sidebarIconClass\"\n [class.ml-3]=\"icon()\">\n <ng-content />\n </span>\n @if (label()) {\n <flowbite-badge>{{ label() }}</flowbite-badge>\n }\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarItemComponent extends BaseComponent<SidebarItemClass> {\n /**\n * Optional `FlowbiteRouterLinkDirective` injected\n */\n public readonly flowbiteRouterLink = inject(FlowbiteRouterLinkDirective, { optional: true });\n /**\n * Optional `FlowbiteRouterLinkActiveDirective` injected\n */\n public readonly flowbiteRouterLinkActive = inject(FlowbiteRouterLinkActiveDirective, {\n optional: true,\n });\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarItemThemeService);\n /**\n * The optional parent `SidebarItemGroupComponent`\n */\n public readonly sidebarItemGroupComponent = inject(SidebarItemGroupComponent, { optional: true });\n /**\n * The optional parent `SidebarMenuComponent`\n */\n public readonly sidebarMenuComponent = inject(SidebarMenuComponent, { optional: true });\n\n //#region properties\n /**\n * Set the sidebar item icon\n *\n * @default undefined\n */\n public icon = model(inject(FLOWBITE_SIDEBAR_ITEM_ICON_DEFAULT_VALUE));\n /**\n * Set the sidebar item color\n *\n * @default `SidebarItemGroupComponent`'s color\n * @default `SidebarMenuComponent`'s color\n */\n public color = model<keyof SidebarColors>(\n (this.sidebarItemGroupComponent ?? this.sidebarMenuComponent)!.color()\n );\n /**\n * Set the sidebar item label\n *\n * @default undefined\n */\n public label = model(inject(FLOWBITE_SIDEBAR_ITEM_LABEL_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar item\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_ITEM_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarItemClass {\n return this.themeService.getClasses({\n icon: this.icon(),\n color: this.color(),\n label: this.label(),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n\n /**\n * Toggle sidebar menu visibility\n */\n onClick(): void {\n (this.sidebarMenuComponent || this.sidebarItemGroupComponent?.sidebarMenuComponent)?.closeAll();\n (\n this.sidebarMenuComponent || this.sidebarItemGroupComponent?.sidebarMenuComponent\n )?.sidebarComponent.toggleVisibility(false);\n }\n}\n","import type { SidebarItemGroupClass, SidebarItemGroupTheme } from './sidebar-item-group.theme';\nimport { SidebarItemGroupThemeService } from './sidebar-item-group.theme.service';\nimport { SidebarItemComponent } from './sidebar-item.component';\nimport { SidebarMenuComponent } from './sidebar-menu.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport const FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarItemGroupTheme>\n>('FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarItemGroupDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n imports: [IconComponent],\n selector: 'flowbite-sidebar-item-group',\n template: `\n <span\n [class]=\"contentClasses().spanClass\"\n (click)=\"toggleVisibility()\">\n <h4>{{ title() }}</h4>\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"h-6 w-6 shrink-0 duration-200\"\n [class.rotate-180]=\"!isOpen()\" />\n </span>\n @if (isOpen()) {\n <ng-content />\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarItemGroupComponent extends BaseComponent<SidebarItemGroupClass> {\n /**\n * Service injecteed used to generate class\n */\n public readonly themeService = inject(SidebarItemGroupThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * The parent `SidebarMenuComponent`\n */\n public readonly sidebarMenuComponent = inject(SidebarMenuComponent);\n /**\n * List of `SidebarItemComponent`\n */\n public readonly sidebarItemChildren = contentChildren(SidebarItemComponent);\n\n //#region properties\n /**\n * Set if the sidebar item group is open\n *\n * @default One of children is active\n * @default false\n */\n public isOpen = model<boolean>(\n this.sidebarItemChildren().some((x) => x.flowbiteRouterLinkActive?.isActive() ?? false)\n );\n /**\n * Set the sidebar item group color\n *\n * @default `SidebarMenuComponent`'s color\n */\n public color = model<keyof SidebarColors>(this.sidebarMenuComponent.color());\n /**\n * Set the sidebar item group title\n */\n public title = model.required<string>();\n /**\n * Set the custom style for this sidebar item group\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_ITEM_GROUP_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarItemGroupClass {\n return this.themeService.getClasses({\n color: this.color(),\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 isOpen value\n *\n * @param isOpen If provided force isOpen value\n */\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type {\n SidebarMenuClass,\n SidebarMenuProperties,\n SidebarMenuTheme,\n} from './sidebar-menu.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 `SidebarMenuTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_MENU_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_MENU_THEME_TOKEN = new InjectionToken<SidebarMenuTheme>(\n 'FLOWBITE_SIDEBAR_MENU_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarMenuThemeService implements FlowbiteThemeService<SidebarMenuProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_MENU_THEME_TOKEN);\n\n public getClasses(properties: SidebarMenuProperties): SidebarMenuClass {\n const theme: SidebarMenuTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarMenuClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.isOpen[properties.isOpen],\n properties.isOpen === 'enabled' && theme.root.displayMode[properties.displayMode],\n theme.root.color[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import { SidebarItemGroupComponent } from './sidebar-item-group.component';\nimport { SidebarItemComponent } from './sidebar-item.component';\nimport type { SidebarMenuClass, SidebarMenuTheme } from './sidebar-menu.theme';\nimport { SidebarMenuThemeService } from './sidebar-menu.theme.service';\nimport { SidebarComponent } from './sidebar.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarMenuTheme>\n>('FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarMenuDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar-menu',\n template: '<ng-content />',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarMenuComponent extends BaseComponent<SidebarMenuClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarMenuThemeService);\n /**\n * The parent `SidebarComponent`\n */\n public readonly sidebarComponent = inject(SidebarComponent);\n /**\n * List of `SidebarItemGroupComponent`\n */\n public readonly sidebarItemGroupChildren = contentChildren(SidebarItemGroupComponent);\n /**\n * List of `SidebarItemComponent`\n */\n public readonly sidebarItemChildren = contentChildren(SidebarItemComponent);\n\n //#region properties\n /**\n * Set the sidebar menu color\n *\n * @default `SidebarComponent`'s color\n */\n public color = model<keyof SidebarColors>(this.sidebarComponent.color());\n /**\n * Set the custom style for this sidebar menu\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_MENU_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n public override fetchClass(): SidebarMenuClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.sidebarComponent.isOpen()),\n color: this.color(),\n displayMode: this.sidebarComponent.displayMode(),\n customStyle: this.customStyle(),\n });\n }\n\n /**\n * Toggle visibility of ll children to false\n */\n public closeAll(): void {\n this.sidebarItemGroupChildren().forEach((x) => x.toggleVisibility(false));\n }\n}\n","import type {\n SidebarPageContentClass,\n SidebarPageContentProperties,\n SidebarPageContentTheme,\n} from './sidebar-page-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 `SidebarPageContentTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN =\n new InjectionToken<SidebarPageContentTheme>('FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN');\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarPageContentThemeService\n implements FlowbiteThemeService<SidebarPageContentProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_THEME_TOKEN);\n\n public getClasses(properties: SidebarPageContentProperties): SidebarPageContentClass {\n const theme: SidebarPageContentTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarPageContentClass = {\n rootClass: twMerge(\n theme.root.base,\n properties.isOpen === 'enabled' && theme.root.displayMode[properties.displayMode]\n ),\n };\n\n return output;\n }\n}\n","import type {\n SidebarPageContentClass,\n SidebarPageContentTheme,\n} from './sidebar-page-content.theme';\nimport { SidebarPageContentThemeService } from './sidebar-page-content.theme.service';\nimport { SidebarComponent } from './sidebar.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarPageContentTheme>\n>('FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarPageContentDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar-page-content',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarPageContentComponent extends BaseComponent<SidebarPageContentClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarPageContentThemeService);\n /**\n * The parent `SidebarComponent`\n */\n public readonly sidebarComponent = inject(SidebarComponent);\n\n //#region properties\n /**\n * Set the custom style for this sidebar page content\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_PAGE_CONTENT_CUSTOM_STYLE_DEFAULT_VALUE));\n //endregion\n\n //region BaseComponent implementation\n public override fetchClass(): SidebarPageContentClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.sidebarComponent.isOpen()),\n displayMode: this.sidebarComponent.displayMode(),\n customStyle: this.customStyle(),\n });\n }\n //endregion\n}\n","import type { SidebarClass, SidebarProperties, SidebarTheme } from './sidebar.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 `SidebarTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_THEME_TOKEN = new InjectionToken<SidebarTheme>(\n 'FLOWBITE_SIDEBAR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarThemeService implements FlowbiteThemeService<SidebarProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_THEME_TOKEN);\n\n public getClasses(properties: SidebarProperties): SidebarClass {\n const theme: SidebarTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarClass = {\n rootClass: twMerge(theme.root.base, theme.root.isRounded[properties.isRounded]),\n };\n\n return output;\n }\n}\n","import { SidebarMenuComponent } from './sidebar-menu.component';\nimport { SidebarPageContentComponent } from './sidebar-page-content.component';\nimport type {\n SidebarClass,\n SidebarColors,\n SidebarDisplayMode,\n SidebarTheme,\n} from './sidebar.theme';\nimport { SidebarThemeService } from './sidebar.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\n\nexport const FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE = new InjectionToken<keyof SidebarColors>(\n 'FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE = new InjectionToken<\n keyof SidebarDisplayMode\n>('FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE');\n\nexport const FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarTheme>\n>('FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE,\n useValue: 'primary',\n },\n {\n provide: FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE,\n useValue: 'push',\n },\n {\n provide: FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-sidebar',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarComponent extends BaseComponent<SidebarClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarThemeService);\n /**\n * The child `SidebarMenuComponent`\n */\n public readonly sidebarMenuChild = contentChild.required(SidebarMenuComponent);\n /**\n * The child `SidebarPageContentComponent`\n */\n public readonly sidebarPageContentChild = contentChild.required(SidebarPageContentComponent);\n\n //#region properties\n /**\n * Set the sidebar color\n *\n * @default primary\n */\n public color = model(inject(FLOWBITE_SIDEBAR_COLOR_DEFAULT_VALUE));\n /**\n * Set the sidebar display mode\n *\n * @default push\n */\n public displayMode = model(inject(FLOWBITE_SIDEBAR_DISPLAY_MODE_DEFAULT_VALUE));\n /**\n * Set is the sidebar is open\n *\n * @default false\n */\n public isOpen = model(inject(FLOWBITE_SIDEBAR_IS_OPEN_DEFAULT_VALUE));\n /**\n * Set is the sidebar is rounded\n *\n * @default false\n */\n public isRounded = model(inject(FLOWBITE_SIDEBAR_IS_ROUNDED_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarClass {\n return this.themeService.getClasses({\n displayMode: this.displayMode(),\n isRounded: booleanToFlowbiteBoolean(this.isRounded()),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n\n /**\n * Toggle sidebar visibility\n *\n * @param isOpen If provided force isOpen value\n */\n public toggleVisibility(isOpen?: boolean): void {\n if (isOpen === undefined) {\n isOpen = untracked(() => !this.isOpen());\n }\n\n this.isOpen.set(isOpen);\n }\n}\n","import type { DeepPartial, FlowbiteBoolean, FlowbiteClass, FlowbiteColors } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\nexport interface SidebarColors\n extends Pick<FlowbiteColors, 'primary' | 'dark' | 'blue' | 'red' | 'green' | 'yellow'> {\n [key: string]: string;\n}\n\nexport interface SidebarDisplayMode {\n push: string;\n over: string;\n backdrop: string;\n}\n//endregion\n\nexport interface SidebarProperties {\n displayMode: keyof SidebarDisplayMode;\n isRounded: keyof FlowbiteBoolean;\n customStyle: DeepPartial<SidebarTheme>;\n}\n\nexport interface SidebarTheme {\n root: {\n base: string;\n isRounded: FlowbiteBoolean;\n };\n}\n\nexport const sidebarTheme: SidebarTheme = createTheme({\n root: {\n base: 'flex flex-row min-h-full',\n isRounded: {\n enabled: 'rounded',\n disabled: '',\n },\n },\n});\n\nexport type SidebarClass = FlowbiteClass;\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `SidebarItemComponent`\n */\nexport interface SidebarItemProperties {\n icon: string | undefined;\n color: keyof SidebarColors;\n label: string | undefined;\n customStyle: DeepPartial<SidebarItemTheme>;\n}\n\n/**\n * Theme definition for `SidebarItemComponent`\n */\nexport interface SidebarItemTheme {\n root: {\n base: string;\n color: SidebarColors;\n };\n icon: {\n base: string;\n };\n}\n\n/**\n * Default theme for `SidebarItemComponent`\n */\nexport const sidebarItemTheme: SidebarItemTheme = createTheme({\n root: {\n base: 'group flex cursor-pointer items-center rounded-lg p-2 text-base font-normal text-gray-900 dark:text-white',\n color: {\n primary:\n 'aria-current:text-primary-500 dark:aria-current:text-primary-300 hover:bg-primary-200/35 dark:hover:bg-primary-700/35',\n dark: 'aria-current:text-gray-500 dark:aria-current:text-gray-300 hover:bg-gray-200/35 dark:hover:bg-gray-700/35',\n blue: 'aria-current:text-blue-500 dark:aria-current:text-blue-300 hover:bg-blue-200/35 dark:hover:bg-blue-700/35',\n red: 'aria-current:text-red-500 dark:aria-current:text-red-300 hover:bg-red-200/35 dark:hover:bg-red-700/35',\n green:\n 'aria-current:text-green-500 dark:aria-current:text-green-300 hover:bg-green-200/35 dark:hover:bg-green-700/35',\n yellow:\n 'aria-current:text-yellow-500 dark:aria-current:text-yellow-300 hover:bg-yellow-200/35 dark:hover:bg-yellow-700/35',\n },\n },\n icon: {\n base: 'flex-1 whitespace-nowrap',\n },\n});\n\n/**\n * Generated class definition for `SidebarItemComponent`\n */\nexport interface SidebarItemClass extends FlowbiteClass {\n sidebarIconClass: string;\n}\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupProperties {\n color: keyof SidebarColors;\n customStyle: DeepPartial<SidebarItemGroupTheme>;\n}\n\n/**\n * Theme definition for `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupTheme {\n root: {\n base: string;\n };\n spanText: {\n base: string;\n color: SidebarColors;\n };\n}\n\n/**\n * Default theme for `SidebarItemGroupComponent`\n */\nexport const sidebarItemGroupTheme: SidebarItemGroupTheme = createTheme({\n root: {\n base: 'flex flex-col py-2 font-semibold cursor-pointer',\n },\n spanText: {\n base: 'flex flex-row justify-between m-2',\n color: {\n primary: 'text-primary-600',\n dark: 'text-gray-600',\n blue: 'text-blue-600',\n red: 'text-red-600',\n green: 'text-green-600',\n yellow: 'text-yellow-600',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarItemGroupComponent`\n */\nexport interface SidebarItemGroupClass extends FlowbiteClass {\n spanClass: string;\n}\n","import type {\n SidebarToggleClass,\n SidebarToggleProperties,\n SidebarToggleTheme,\n} from './sidebar-toggle.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 `SidebarToggleTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN = new InjectionToken<SidebarToggleTheme>(\n 'FLOWBITE_TOGGLE_SIDEBAR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SidebarToggleThemeService implements FlowbiteThemeService<SidebarToggleProperties> {\n private readonly baseTheme = inject(FLOWBITE_SIDEBAR_TOGGLE_THEME_TOKEN);\n\n public getClasses(properties: SidebarToggleProperties): SidebarToggleClass {\n const theme: SidebarToggleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: SidebarToggleClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.color[properties.color],\n theme.root.size[properties.color]\n ),\n };\n\n return output;\n }\n}\n","import type {\n SidebarToggleClass,\n SidebarToggleSizes,\n SidebarToggleTheme,\n} from './sidebar-toggle.theme';\nimport { SidebarToggleThemeService } from './sidebar-toggle.theme.service';\nimport { SidebarComponent } from './sidebar.component';\nimport type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { BARS_SVG_ICON } from 'flowbite-angular/utils';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE = new InjectionToken<keyof SidebarColors>(\n 'FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE = new InjectionToken<\n keyof SidebarToggleSizes\n>('FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE');\n\nexport const FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<SidebarToggleTheme>\n>('FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const sidebarToggleDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE,\n useValue: 'primary',\n },\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE,\n useValue: 'sm',\n },\n {\n provide: FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/sidebar/\n */\n@Component({\n imports: [IconComponent],\n selector: 'flowbite-sidebar-toggle',\n template: `<flowbite-icon svgIcon=\"flowbite-angular:bars\" />`,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SidebarToggleComponent extends BaseComponent<SidebarToggleClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(SidebarToggleThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * The `SidebarComponent` to use\n *\n * @default The injected `SidebarComponent`\n */\n public readonly sidebarComponent = model(inject(SidebarComponent));\n\n //#region properties\n /**\n * Set the sidebar toggle color\n *\n * @default primary\n */\n public color = model(inject(FLOWBITE_SIDEBAR_TOGGLE_COLOR_DEFAULT_VALUE));\n /**\n * Set the sidebar toggle size\n *\n * @default sm\n */\n public size = model(inject(FLOWBITE_SIDEBAR_TOGGLE_SIZE_DEFAULT_VALUE));\n /**\n * Set the custom style for this sidebar toggle\n */\n public customStyle = model(inject(FLOWBITE_SIDEBAR_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): SidebarToggleClass {\n return this.themeService.getClasses({\n color: this.color(),\n size: this.size(),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'tabs',\n this.domSanitizer.bypassSecurityTrustHtml(BARS_SVG_ICON)\n );\n }\n //#endregion\n\n /**\n * Toggle sidebar visibility\n */\n public onClick(): void {\n const isOpen = this.sidebarComponent().isOpen();\n\n this.sidebarComponent().isOpen.set(!isOpen);\n }\n}\n","import type { SidebarColors } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteClass, FlowbiteSizes } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region region Component theme option\n/**\n * Available sizes for `SidebarToggleComponent`\n */\nexport interface SidebarToggleSizes extends Pick<FlowbiteSizes, 'sm'> {\n [key: string]: string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `SidebarToggleComponent`\n */\nexport interface SidebarToggleProperties {\n color: keyof SidebarColors;\n size: keyof SidebarToggleSizes;\n customStyle: DeepPartial<SidebarToggleTheme>;\n}\n\n/**\n * Theme definitions for `SidebarToggleComponent`\n */\nexport interface SidebarToggleTheme {\n root: {\n base: string;\n color: SidebarColors;\n size: SidebarToggleSizes;\n };\n}\n\n/**\n * Default theme for `SidebarToggleComponent`\n */\nexport const sidebarToggleTheme: SidebarToggleTheme = createTheme({\n root: {\n base: 'cursor-pointer inline-flex items-center p-2 justify-center rounded-lg focus:outline-none focus:ring-2',\n color: {\n primary:\n 'text-primary-500 dark:text-primary-400 hover:bg-primary-100 dark:hover:bg-gray-700 focus:ring-primary-200 dark:focus:ring-primary-600',\n dark: 'text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700 focus:ring-gray-200 dark:focus:ring-gray-600',\n blue: 'text-blue-500 dark:text-blue-400 hover:bg-blue-100 dark:hover:bg-blue-700 focus:ring-blue-200 dark:focus:ring-blue-600',\n red: 'text-red-500 dark:text-red-400 hover:bg-red-100 dark:hover:bg-red-700 focus:ring-red-200 dark:focus:ring-red-600',\n green:\n 'text-green-500 dark:text-green-400 hover:bg-green-100 dark:hover:bg-green-700 focus:ring-green-200 dark:focus:ring-green-600',\n yellow:\n 'text-yellow-500 dark:text-yellow-400 hover:bg-yellow-100 dark:hover:bg-yellow-700 focus:ring-yellow-200 dark:focus:ring-yellow-600',\n },\n size: {\n sm: 'text-sm',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarToggleComponent`\n */\nexport type SidebarToggleClass = FlowbiteClass;\n","import type { SidebarDisplayMode } from './sidebar.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 `SidebarPageContentComponent`\n */\nexport interface SidebarPageContentProperties {\n isOpen: keyof FlowbiteBoolean;\n displayMode: keyof SidebarDisplayMode;\n customStyle: DeepPartial<SidebarPageContentTheme>;\n}\n\n/**\n * Theme definition for `SidebarPageContentComponent`\n */\nexport interface SidebarPageContentTheme {\n root: {\n base: string;\n displayMode: SidebarDisplayMode;\n };\n}\n\n/**\n * Default theme for `SidebarPageContentComponent`\n */\nexport const sidebarPageContentTheme: SidebarPageContentTheme = createTheme({\n root: {\n base: 'flex flex-1',\n displayMode: {\n push: '',\n over: '',\n backdrop: 'sticky left-0 right-0 z-30 bg-gray-500 bg-opacity-50 blur-md',\n },\n },\n});\n\n/**\n * Generated class definition for `SidebarPageContentComponent`\n */\nexport type SidebarPageContentClass = FlowbiteClass;\n","import type { SidebarColors, SidebarDisplayMode } from './sidebar.theme';\n\nimport type { DeepPartial, FlowbiteBoolean, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class definition of `SidebarMenuComponent`\n */\nexport interface SidebarMenuProperties {\n isOpen: keyof FlowbiteBoolean;\n color: keyof SidebarColors;\n displayMode: keyof SidebarDisplayMode;\n customStyle: DeepPartial<SidebarMenuTheme>;\n}\n\n/**\n * Theme definition for `SidebarMenuComponent`\n */\nexport interface SidebarMenuTheme {\n root: {\n base: string;\n displayMode: SidebarDisplayMode;\n isOpen: FlowbiteBoolean;\n color: SidebarColors;\n };\n}\n\n/**\n * Default theme for `SidebarMenuComponent`\n */\nexport const sidebarMenuTheme: SidebarMenuTheme = createTheme({\n root: {\n base: 'flex-col min-h-full overflow-y-auto shrink-0 pr-1 border-r bg-white dark:bg-gray-800',\n displayMode: {\n push: '',\n over: 'sticky top-0 z-50',\n backdrop: 'sticky top-0 z-50',\n },\n isOpen: {\n enabled: 'flex',\n disabled: 'hidden',\n },\n color: {\n primary: 'border-primary-200 dark:border-primary-700',\n dark: 'border-gray-200 dark:border-gray-800',\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 },\n});\n\n/**\n * Generated class definition for `SidebarMenuComponent`\n */\nexport type SidebarMenuClass = FlowbiteClass;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -59,10 +59,10 @@ class FlowbiteThemeDirective {
59
59
  ? document.documentElement.classList.add('dark')
60
60
  : document.documentElement.classList.remove('dark');
61
61
  }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: FlowbiteThemeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
63
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: FlowbiteThemeDirective, isStandalone: true, selector: "[flowbiteTheme]", ngImport: i0 }); }
62
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: FlowbiteThemeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
63
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.4", type: FlowbiteThemeDirective, isStandalone: true, selector: "[flowbiteTheme]", ngImport: i0 }); }
64
64
  }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: FlowbiteThemeDirective, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: FlowbiteThemeDirective, decorators: [{
66
66
  type: Directive,
67
67
  args: [{
68
68
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-theme.mjs","sources":["../../../../libs/flowbite-angular/theme/flowbite-theme.directive.ts","../../../../libs/flowbite-angular/theme/flowbite-angular-theme.ts"],"sourcesContent":["import type { FlowbiteTheme } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport { afterNextRender, Directive, inject, Injector, signal, untracked } from '@angular/core';\n\n/**\n * Use to give a clean API on the current application theme\n */\n@Directive({\n standalone: true,\n selector: '[flowbiteTheme]',\n})\nexport class FlowbiteThemeDirective implements OnInit {\n private readonly injector = inject(Injector);\n\n private readonly localStorageKey = 'color-theme';\n private readonly _currentTheme = signal<FlowbiteTheme>('light');\n\n public ngOnInit(): void {\n afterNextRender(\n () => {\n this.toggleTheme(this.getLocalStorageTheme());\n },\n { injector: this.injector }\n );\n }\n\n /**\n * Get the application theme based on `signals`\n */\n public readonly currentTheme = this._currentTheme.asReadonly();\n\n /**\n * Get theme from the `localStorage`\n *\n * @returns The current theme saved in the `localStorage` with the key `color-theme`\n */\n public getLocalStorageTheme(): FlowbiteTheme {\n return localStorage.getItem(this.localStorageKey) === 'dark' ? 'dark' : 'light';\n }\n\n /**\n * Toggle the theme saved in the `localStorage` and available in `currentTheme`\n *\n * @param theme If provided, force the theme instead of toggling it between light and dark mode\n */\n public toggleTheme(theme?: FlowbiteTheme): void {\n if (!theme) {\n const tmpTheme = untracked(() => this.currentTheme());\n\n if (tmpTheme === 'dark') theme = 'light';\n else theme = 'dark';\n }\n\n this.setTheme(theme);\n }\n\n /**\n * Set the theme inside the page\n *\n * @param theme Theme to apply\n */\n public setTheme(theme: FlowbiteTheme): void {\n try {\n localStorage.setItem(this.localStorageKey, theme);\n } catch (error) {\n console.warn('Failed to save theme to localStorage:', error);\n }\n this._currentTheme.set(theme);\n\n theme === 'dark'\n ? document.documentElement.classList.add('dark')\n : document.documentElement.classList.remove('dark');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAKA;;AAEG;MAKU,sBAAsB,CAAA;AAJnC,IAAA,WAAA,GAAA;AAKmB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE5B,IAAe,CAAA,eAAA,GAAG,aAAa,CAAC;AAChC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAgB,OAAO,CAAC,CAAC;AAWhE;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;AA4ChE,KAAA;IAxDQ,QAAQ,GAAA;QACb,eAAe,CACb,MAAK;YACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;SAC/C,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B,CAAC;KACH;AAOD;;;;AAIG;IACI,oBAAoB,GAAA;AACzB,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KACjF;AAED;;;;AAIG;AACI,IAAA,WAAW,CAAC,KAAqB,EAAA;QACtC,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YAEtD,IAAI,QAAQ,KAAK,MAAM;gBAAE,KAAK,GAAG,OAAO,CAAC;;gBACpC,KAAK,GAAG,MAAM,CAAC;SACrB;AAED,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACtB;AAED;;;;AAIG;AACI,IAAA,QAAQ,CAAC,KAAoB,EAAA;AAClC,QAAA,IAAI;YACF,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;SACnD;QAAC,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;SAC9D;AACD,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAE9B,QAAA,KAAK,KAAK,MAAM;cACZ,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;cAC9C,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACvD;8GA7DU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA,CAAA;;;ACXD;;AAEG;;;;"}
1
+ {"version":3,"file":"flowbite-angular-theme.mjs","sources":["../../../../libs/flowbite-angular/theme/flowbite-theme.directive.ts","../../../../libs/flowbite-angular/theme/flowbite-angular-theme.ts"],"sourcesContent":["import type { FlowbiteTheme } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport { afterNextRender, Directive, inject, Injector, signal, untracked } from '@angular/core';\n\n/**\n * Use to give a clean API on the current application theme\n */\n@Directive({\n standalone: true,\n selector: '[flowbiteTheme]',\n})\nexport class FlowbiteThemeDirective implements OnInit {\n private readonly injector = inject(Injector);\n\n private readonly localStorageKey = 'color-theme';\n private readonly _currentTheme = signal<FlowbiteTheme>('light');\n\n public ngOnInit(): void {\n afterNextRender(\n () => {\n this.toggleTheme(this.getLocalStorageTheme());\n },\n { injector: this.injector }\n );\n }\n\n /**\n * Get the application theme based on `signals`\n */\n public readonly currentTheme = this._currentTheme.asReadonly();\n\n /**\n * Get theme from the `localStorage`\n *\n * @returns The current theme saved in the `localStorage` with the key `color-theme`\n */\n public getLocalStorageTheme(): FlowbiteTheme {\n return localStorage.getItem(this.localStorageKey) === 'dark' ? 'dark' : 'light';\n }\n\n /**\n * Toggle the theme saved in the `localStorage` and available in `currentTheme`\n *\n * @param theme If provided, force the theme instead of toggling it between light and dark mode\n */\n public toggleTheme(theme?: FlowbiteTheme): void {\n if (!theme) {\n const tmpTheme = untracked(() => this.currentTheme());\n\n if (tmpTheme === 'dark') theme = 'light';\n else theme = 'dark';\n }\n\n this.setTheme(theme);\n }\n\n /**\n * Set the theme inside the page\n *\n * @param theme Theme to apply\n */\n public setTheme(theme: FlowbiteTheme): void {\n try {\n localStorage.setItem(this.localStorageKey, theme);\n } catch (error) {\n console.warn('Failed to save theme to localStorage:', error);\n }\n this._currentTheme.set(theme);\n\n theme === 'dark'\n ? document.documentElement.classList.add('dark')\n : document.documentElement.classList.remove('dark');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAKA;;AAEG;MAKU,sBAAsB,CAAA;AAJnC,IAAA,WAAA,GAAA;AAKmB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAE3B,IAAe,CAAA,eAAA,GAAG,aAAa;AAC/B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAgB,OAAO,CAAC;AAW/D;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE;AA4C/D;IAxDQ,QAAQ,GAAA;QACb,eAAe,CACb,MAAK;YACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC9C,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B;;AAQH;;;;AAIG;IACI,oBAAoB,GAAA;AACzB,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO;;AAGjF;;;;AAIG;AACI,IAAA,WAAW,CAAC,KAAqB,EAAA;QACtC,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAErD,IAAI,QAAQ,KAAK,MAAM;gBAAE,KAAK,GAAG,OAAO;;gBACnC,KAAK,GAAG,MAAM;;AAGrB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;;AAGtB;;;;AAIG;AACI,IAAA,QAAQ,CAAC,KAAoB,EAAA;AAClC,QAAA,IAAI;YACF,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC;;QACjD,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC;;AAE9D,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;AAE7B,QAAA,KAAK,KAAK;cACN,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM;cAC7C,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;;8GA5D5C,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA;;;ACXD;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-utils.mjs","sources":["../../../../libs/flowbite-angular/utils/theme/is-object.ts","../../../../libs/flowbite-angular/utils/theme/clone-deep.ts","../../../../libs/flowbite-angular/utils/theme/create-class.ts","../../../../libs/flowbite-angular/utils/theme/create-theme.ts","../../../../libs/flowbite-angular/utils/theme/merge-theme.ts","../../../../libs/flowbite-angular/utils/theme/to-string.ts","../../../../libs/flowbite-angular/utils/icon.list.ts","../../../../libs/flowbite-angular/utils/id.generator.ts","../../../../libs/flowbite-angular/utils/flowbite-angular-utils.ts"],"sourcesContent":["/**\n * Check if the provided parameter is an object or not.\n *\n * @param item The unknown type parameter.\n * @returns true if it's an ibject ; false otherwise.\n */\nexport function isObject(item: unknown): item is Record<string, unknown> {\n return item !== null && typeof item === 'object' && item.constructor === Object;\n}\n","import { isObject } from './is-object';\n\n/**\n * Function that return the cloned type of the provided generic type.\n *\n * @param source Generic object to be cloned.\n * @returns The clone type of th eprovided type.\n */\nexport function cloneDeep<T>(source: T): T {\n if (!isObject(source)) {\n return source;\n }\n\n const output: Record<string, unknown> = {};\n\n for (const key in source) {\n output[key] = cloneDeep(source[key]);\n }\n\n return output as T;\n}\n","/**\n * This function is used to create classes for component's while keeping the intellisens up for TailwindCSS and other extensions.\n *\n * @param input Generic type to be created.\n * @returns The generic type's definition.\n */\nexport function createClass<T>(input: T) {\n return input;\n}\n","/**\n * This function is used to create themes for component's while keeping the intellisens up for TailwindCSS and other extensions.\n *\n * @param input Generic type to be created.\n * @returns The generic type's definition.\n */\nexport function createTheme<T>(input: T) {\n return input;\n}\n","import { cloneDeep } from './clone-deep';\nimport { isObject } from './is-object';\n\n/**\n * Merge two objects into one.\n *\n * @param target Object to be merged.\n * @param source Object to be merged.\n * @returns The merged object.\n */\nexport function mergeTheme<T extends object, S extends object>(target: T, source: S): T & S {\n if (isObject(source) && Object.keys(source).length === 0) {\n return cloneDeep({ ...target, ...source });\n }\n\n const output = { ...target, ...source };\n\n if (isObject(source) && isObject(target)) {\n for (const key in source) {\n if (isObject(source[key]) && key in target && isObject(target[key])) {\n (output as Record<string, unknown>)[key] = mergeTheme(\n target[key] as object,\n source[key] as object\n );\n } else {\n (output as Record<string, unknown>)[key] = isObject(source[key])\n ? cloneDeep(source[key])\n : source[key];\n }\n }\n }\n\n return output;\n}\n","/**\n * Return theme value to an indented string.\n *\n * @param value The theme to be stringify.\n * @returns The theme as string.\n */\nexport function themeToString(value: unknown): string {\n return JSON.stringify(value, undefined, 2);\n}\n","export const CLOSE_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M6 18 17.94 6M18 18 6.06 6\" />\n</svg>\n`;\n\nexport const CHEVRON_UP_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m16 14-4-4-4 4\" />\n</svg>\n`;\n\nexport const CHEVRON_DOWN_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m8 10 4 4 4-4\" />\n</svg>\n`;\n\nexport const CHEVRON_RIGHT_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m10 16 4-4-4-4\" />\n</svg>\n`;\n\nexport const SUN_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M12 5V3m0 18v-2M7.05 7.05 5.636 5.636m12.728 12.728L16.95 16.95M5 12H3m18 0h-2M7.05 16.95l-1.414 1.414M18.364 5.636 16.95 7.05M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z\" />\n</svg>\n`;\n\nexport const MOON_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M12 21a9 9 0 0 1-.5-17.986V3c-.354.966-.5 1.911-.5 3a9 9 0 0 0 9 9c.239 0 .254.018.488 0A9.004 9.004 0 0 1 12 21Z\" />\n</svg>\n`;\n\nexport const BARS_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-width=\"2\" d=\"M5 7h14M5 12h14M5 17h14\" />\n</svg>\n`;\n","/**\n * This class provide an implementation of Guid used as id for flowbite-angular components.\n *\n * @see https://gist.github.com/emptyother/1fd97db034ef848f38eca3354fa9ee90\n */\nexport class Guid {\n private value: string = this.empty;\n\n /**\n * If value is given and if the value is a valid Guid, then return a Guid from the string ; Otherwise or if no value is given, create a Guid class without value.\n *\n * @param value Guid as string if you want to get a Guid type from string\n */\n constructor(value?: string) {\n if (value) {\n if (Guid.isValid(value)) {\n this.value = value;\n }\n }\n }\n\n /**\n * Function that generate new Guid.\n *\n * @returns New Guid.\n */\n public static newGuid(): Guid {\n return new Guid(crypto.randomUUID());\n }\n\n /**\n * Function that generate an empty Guid.\n *\n * @return \"00000000-0000-0000-0000-000000000000\".\n */\n public static get empty(): string {\n return '00000000-0000-0000-0000-000000000000';\n }\n\n /**\n * Function that generate an empty Guid.\n *\n * @return \"00000000-0000-0000-0000-000000000000\".\n */\n public get empty(): string {\n return Guid.empty;\n }\n\n /**\n * Check if the provided Guid is valid.\n *\n * @param str The Guid to check.\n * @returns true if the Guid is valid ; false otherwise.\n */\n public static isValid(str: string): boolean {\n const validRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n return validRegex.test(str);\n }\n\n /**\n * ToString base method.\n *\n * @returns Value as string.\n */\n public toString() {\n return this.value;\n }\n\n /**\n * ToJson base method.\n *\n * @returns Value as Json compatible string.\n */\n public toJSON(): string {\n return this.value;\n }\n}\n\n/**\n * Function that return a new Guid.\n *\n * @returns New {@link Guid}.\n *\n * @see `Guid`\n */\nexport function generateId(): Guid {\n return Guid.newGuid();\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-utils.mjs","sources":["../../../../libs/flowbite-angular/utils/theme/is-object.ts","../../../../libs/flowbite-angular/utils/theme/clone-deep.ts","../../../../libs/flowbite-angular/utils/theme/create-class.ts","../../../../libs/flowbite-angular/utils/theme/create-theme.ts","../../../../libs/flowbite-angular/utils/theme/merge-theme.ts","../../../../libs/flowbite-angular/utils/theme/to-string.ts","../../../../libs/flowbite-angular/utils/icon.list.ts","../../../../libs/flowbite-angular/utils/id.generator.ts","../../../../libs/flowbite-angular/utils/flowbite-angular-utils.ts"],"sourcesContent":["/**\n * Check if the provided parameter is an object or not.\n *\n * @param item The unknown type parameter.\n * @returns true if it's an ibject ; false otherwise.\n */\nexport function isObject(item: unknown): item is Record<string, unknown> {\n return item !== null && typeof item === 'object' && item.constructor === Object;\n}\n","import { isObject } from './is-object';\n\n/**\n * Function that return the cloned type of the provided generic type.\n *\n * @param source Generic object to be cloned.\n * @returns The clone type of th eprovided type.\n */\nexport function cloneDeep<T>(source: T): T {\n if (!isObject(source)) {\n return source;\n }\n\n const output: Record<string, unknown> = {};\n\n for (const key in source) {\n output[key] = cloneDeep(source[key]);\n }\n\n return output as T;\n}\n","/**\n * This function is used to create classes for component's while keeping the intellisens up for TailwindCSS and other extensions.\n *\n * @param input Generic type to be created.\n * @returns The generic type's definition.\n */\nexport function createClass<T>(input: T) {\n return input;\n}\n","/**\n * This function is used to create themes for component's while keeping the intellisens up for TailwindCSS and other extensions.\n *\n * @param input Generic type to be created.\n * @returns The generic type's definition.\n */\nexport function createTheme<T>(input: T) {\n return input;\n}\n","import { cloneDeep } from './clone-deep';\nimport { isObject } from './is-object';\n\n/**\n * Merge two objects into one.\n *\n * @param target Object to be merged.\n * @param source Object to be merged.\n * @returns The merged object.\n */\nexport function mergeTheme<T extends object, S extends object>(target: T, source: S): T & S {\n if (isObject(source) && Object.keys(source).length === 0) {\n return cloneDeep({ ...target, ...source });\n }\n\n const output = { ...target, ...source };\n\n if (isObject(source) && isObject(target)) {\n for (const key in source) {\n if (isObject(source[key]) && key in target && isObject(target[key])) {\n (output as Record<string, unknown>)[key] = mergeTheme(\n target[key] as object,\n source[key] as object\n );\n } else {\n (output as Record<string, unknown>)[key] = isObject(source[key])\n ? cloneDeep(source[key])\n : source[key];\n }\n }\n }\n\n return output;\n}\n","/**\n * Return theme value to an indented string.\n *\n * @param value The theme to be stringify.\n * @returns The theme as string.\n */\nexport function themeToString(value: unknown): string {\n return JSON.stringify(value, undefined, 2);\n}\n","export const CLOSE_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M6 18 17.94 6M18 18 6.06 6\" />\n</svg>\n`;\n\nexport const CHEVRON_UP_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m16 14-4-4-4 4\" />\n</svg>\n`;\n\nexport const CHEVRON_DOWN_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m8 10 4 4 4-4\" />\n</svg>\n`;\n\nexport const CHEVRON_RIGHT_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m10 16 4-4-4-4\" />\n</svg>\n`;\n\nexport const SUN_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M12 5V3m0 18v-2M7.05 7.05 5.636 5.636m12.728 12.728L16.95 16.95M5 12H3m18 0h-2M7.05 16.95l-1.414 1.414M18.364 5.636 16.95 7.05M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z\" />\n</svg>\n`;\n\nexport const MOON_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n d=\"M12 21a9 9 0 0 1-.5-17.986V3c-.354.966-.5 1.911-.5 3a9 9 0 0 0 9 9c.239 0 .254.018.488 0A9.004 9.004 0 0 1 12 21Z\" />\n</svg>\n`;\n\nexport const BARS_SVG_ICON = `\n<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-width=\"2\" d=\"M5 7h14M5 12h14M5 17h14\" />\n</svg>\n`;\n","/**\n * This class provide an implementation of Guid used as id for flowbite-angular components.\n *\n * @see https://gist.github.com/emptyother/1fd97db034ef848f38eca3354fa9ee90\n */\nexport class Guid {\n private value: string = this.empty;\n\n /**\n * If value is given and if the value is a valid Guid, then return a Guid from the string ; Otherwise or if no value is given, create a Guid class without value.\n *\n * @param value Guid as string if you want to get a Guid type from string\n */\n constructor(value?: string) {\n if (value) {\n if (Guid.isValid(value)) {\n this.value = value;\n }\n }\n }\n\n /**\n * Function that generate new Guid.\n *\n * @returns New Guid.\n */\n public static newGuid(): Guid {\n return new Guid(crypto.randomUUID());\n }\n\n /**\n * Function that generate an empty Guid.\n *\n * @return \"00000000-0000-0000-0000-000000000000\".\n */\n public static get empty(): string {\n return '00000000-0000-0000-0000-000000000000';\n }\n\n /**\n * Function that generate an empty Guid.\n *\n * @return \"00000000-0000-0000-0000-000000000000\".\n */\n public get empty(): string {\n return Guid.empty;\n }\n\n /**\n * Check if the provided Guid is valid.\n *\n * @param str The Guid to check.\n * @returns true if the Guid is valid ; false otherwise.\n */\n public static isValid(str: string): boolean {\n const validRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n return validRegex.test(str);\n }\n\n /**\n * ToString base method.\n *\n * @returns Value as string.\n */\n public toString() {\n return this.value;\n }\n\n /**\n * ToJson base method.\n *\n * @returns Value as Json compatible string.\n */\n public toJSON(): string {\n return this.value;\n }\n}\n\n/**\n * Function that return a new Guid.\n *\n * @returns New {@link Guid}.\n *\n * @see `Guid`\n */\nexport function generateId(): Guid {\n return Guid.newGuid();\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -65,10 +65,10 @@ class BaseComponent {
65
65
  */
66
66
  // eslint-disable-next-line @typescript-eslint/no-empty-function
67
67
  init() { }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
69
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: BaseComponent, isStandalone: true, host: { properties: { "class": "this.contentClasses().rootClass", "attr.flowbite-id": "this.flowbiteId()" } }, ngImport: i0 }); }
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
69
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.4", type: BaseComponent, isStandalone: true, host: { properties: { "class": "this.contentClasses().rootClass", "attr.flowbite-id": "this.flowbiteId()" } }, ngImport: i0 }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: BaseComponent, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: BaseComponent, decorators: [{
72
72
  type: Directive,
73
73
  args: [{
74
74
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular.mjs","sources":["../../../../libs/flowbite-angular/common/type-definitions/flowbite.boolean.ts","../../../../libs/flowbite-angular/common/flowbite.theme.service.ts","../../../../libs/flowbite-angular/common/base-component.directive.ts","../../../../libs/flowbite-angular/common/flowbite-angular.ts"],"sourcesContent":["/**\n * Base definition of boolean used in flowbite-angular.\n */\nexport interface FlowbiteBoolean {\n enabled: string;\n disabled: string;\n}\n\n/**\n * This function cast a boolean to the internal flowbute-angular boolean type.\n *\n * @param value The input to be cast.\n * @returns enabled if value is true ; disabled if value is false.\n */\nexport function booleanToFlowbiteBoolean(value: boolean): keyof FlowbiteBoolean {\n return value ? 'enabled' : 'disabled';\n}\n","import type { FlowbiteClass } from './type-definitions';\n\n/**\n * Provide an abstract class used in theming system of flowbite-angular.\n */\nexport abstract class FlowbiteThemeService<TProperties> {\n /**\n * This function prepare the component's classes, based on properties, used in the template of the component.\n *\n * @param properties Properties of the component being styled.\n */\n public abstract getClasses(properties: TProperties): FlowbiteClass;\n}\n","import type { FlowbiteClass } from './type-definitions/flowbite.class';\n\nimport { generateId, Guid } from 'flowbite-angular/utils';\n\nimport type { OnInit } from '@angular/core';\nimport { afterNextRender, computed, Directive, inject, Injector, signal } from '@angular/core';\n\n/**\n * Base abstract component.\n * Every flowbite-angular components has to extends on this one.\n */\n@Directive({\n standalone: true,\n host: {\n '[class]': 'this.contentClasses().rootClass',\n '[attr.flowbite-id]': 'this.flowbiteId()',\n },\n})\nexport abstract class BaseComponent<TClass extends FlowbiteClass> implements OnInit {\n /**\n * `Injector` instance injected to be used as an injector context where there is no default one.\n *\n * @example\n * ```\n * public ngOnInit(): void {\n * afterNextRender(\n * () => {},\n * { injector: this.injector }\n * );\n * }\n * ```\n */\n public readonly injector = inject(Injector);\n\n /**\n * Auto generated GUID for each flowbite-angular component\n *\n * Its default value is 00000000-0000-0000-0000-000000000000, and is set to a random GUID inside the `afterNextRender` hook\n */\n public readonly flowbiteId = signal<Guid>(new Guid(Guid.empty));\n\n /**\n * Computed signal storing the component classes used in its template\n */\n public contentClasses = computed<TClass>(() => this.fetchClass());\n\n /**\n * Initialize component.\n *\n * A call to verify and init function is done. Then a new Guid is set in the `afterNextRender` hook.\n */\n public ngOnInit(): void {\n this.init();\n\n afterNextRender(\n () => {\n this.flowbiteId.set(generateId());\n },\n { injector: this.injector }\n );\n }\n\n /**\n * Function loaded during `OnInit` lifecycle hook. It initialize requirments for the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public init(): void {}\n\n /**\n * Function to load component's classes\n */\n public abstract fetchClass(): TClass;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAQA;;;;;AAKG;AACG,SAAU,wBAAwB,CAAC,KAAc,EAAA;IACrD,OAAO,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AACxC;;ACdA;;AAEG;MACmB,oBAAoB,CAAA;AAOzC;;ACLD;;;AAGG;MAQmB,aAAa,CAAA;AAPnC,IAAA,WAAA,GAAA;AAQE;;;;;;;;;;;;AAYG;AACa,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE5C;;;;AAIG;QACa,IAAU,CAAA,UAAA,GAAG,MAAM,CAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAEhE;;AAEG;QACI,IAAc,CAAA,cAAA,GAAG,QAAQ,CAAS,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;AA4BnE,KAAA;AA1BC;;;;AAIG;IACI,QAAQ,GAAA;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,eAAe,CACb,MAAK;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;SACnC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B,CAAC;KACH;AAED;;AAEG;;AAEI,IAAA,IAAI,MAAW;8GAhDF,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iCAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE,iCAAiC;AAC5C,wBAAA,oBAAoB,EAAE,mBAAmB;AAC1C,qBAAA;AACF,iBAAA,CAAA;;;ACjBD;;AAEG;;;;"}
1
+ {"version":3,"file":"flowbite-angular.mjs","sources":["../../../../libs/flowbite-angular/common/type-definitions/flowbite.boolean.ts","../../../../libs/flowbite-angular/common/flowbite.theme.service.ts","../../../../libs/flowbite-angular/common/base-component.directive.ts","../../../../libs/flowbite-angular/common/flowbite-angular.ts"],"sourcesContent":["/**\n * Base definition of boolean used in flowbite-angular.\n */\nexport interface FlowbiteBoolean {\n enabled: string;\n disabled: string;\n}\n\n/**\n * This function cast a boolean to the internal flowbute-angular boolean type.\n *\n * @param value The input to be cast.\n * @returns enabled if value is true ; disabled if value is false.\n */\nexport function booleanToFlowbiteBoolean(value: boolean): keyof FlowbiteBoolean {\n return value ? 'enabled' : 'disabled';\n}\n","import type { FlowbiteClass } from './type-definitions';\n\n/**\n * Provide an abstract class used in theming system of flowbite-angular.\n */\nexport abstract class FlowbiteThemeService<TProperties> {\n /**\n * This function prepare the component's classes, based on properties, used in the template of the component.\n *\n * @param properties Properties of the component being styled.\n */\n public abstract getClasses(properties: TProperties): FlowbiteClass;\n}\n","import type { FlowbiteClass } from './type-definitions/flowbite.class';\n\nimport { generateId, Guid } from 'flowbite-angular/utils';\n\nimport type { OnInit } from '@angular/core';\nimport { afterNextRender, computed, Directive, inject, Injector, signal } from '@angular/core';\n\n/**\n * Base abstract component.\n * Every flowbite-angular components has to extends on this one.\n */\n@Directive({\n standalone: true,\n host: {\n '[class]': 'this.contentClasses().rootClass',\n '[attr.flowbite-id]': 'this.flowbiteId()',\n },\n})\nexport abstract class BaseComponent<TClass extends FlowbiteClass> implements OnInit {\n /**\n * `Injector` instance injected to be used as an injector context where there is no default one.\n *\n * @example\n * ```\n * public ngOnInit(): void {\n * afterNextRender(\n * () => {},\n * { injector: this.injector }\n * );\n * }\n * ```\n */\n public readonly injector = inject(Injector);\n\n /**\n * Auto generated GUID for each flowbite-angular component\n *\n * Its default value is 00000000-0000-0000-0000-000000000000, and is set to a random GUID inside the `afterNextRender` hook\n */\n public readonly flowbiteId = signal<Guid>(new Guid(Guid.empty));\n\n /**\n * Computed signal storing the component classes used in its template\n */\n public contentClasses = computed<TClass>(() => this.fetchClass());\n\n /**\n * Initialize component.\n *\n * A call to verify and init function is done. Then a new Guid is set in the `afterNextRender` hook.\n */\n public ngOnInit(): void {\n this.init();\n\n afterNextRender(\n () => {\n this.flowbiteId.set(generateId());\n },\n { injector: this.injector }\n );\n }\n\n /**\n * Function loaded during `OnInit` lifecycle hook. It initialize requirments for the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public init(): void {}\n\n /**\n * Function to load component's classes\n */\n public abstract fetchClass(): TClass;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAQA;;;;;AAKG;AACG,SAAU,wBAAwB,CAAC,KAAc,EAAA;IACrD,OAAO,KAAK,GAAG,SAAS,GAAG,UAAU;AACvC;;ACdA;;AAEG;MACmB,oBAAoB,CAAA;AAOzC;;ACLD;;;AAGG;MAQmB,aAAa,CAAA;AAPnC,IAAA,WAAA,GAAA;AAQE;;;;;;;;;;;;AAYG;AACa,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE3C;;;;AAIG;QACa,IAAU,CAAA,UAAA,GAAG,MAAM,CAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAE/D;;AAEG;QACI,IAAc,CAAA,cAAA,GAAG,QAAQ,CAAS,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AA4BlE;AA1BC;;;;AAIG;IACI,QAAQ,GAAA;QACb,IAAI,CAAC,IAAI,EAAE;QAEX,eAAe,CACb,MAAK;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;SAClC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B;;AAGH;;AAEG;;AAEI,IAAA,IAAI;8GAhDS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iCAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE,iCAAiC;AAC5C,wBAAA,oBAAoB,EAAE,mBAAmB;AAC1C,qBAAA;AACF,iBAAA;;;ACjBD;;AAEG;;;;"}