flowbite-angular 1.0.0 → 1.1.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 (138) hide show
  1. package/README.md +15 -15
  2. package/accordion/accordion-content.component.d.ts +20 -4
  3. package/accordion/accordion-content.theme.d.ts +0 -2
  4. package/accordion/accordion-panel.component.d.ts +10 -3
  5. package/accordion/accordion-title.component.d.ts +27 -0
  6. package/accordion/accordion.component.d.ts +10 -1
  7. package/accordion/index.d.ts +4 -4
  8. package/alert/alert.component.d.ts +42 -1
  9. package/alert/index.d.ts +1 -1
  10. package/badge/badge.component.d.ts +40 -0
  11. package/badge/index.d.ts +1 -1
  12. package/base-component.directive.d.ts +0 -4
  13. package/breadcrumb/breadcrumb-item.component.d.ts +19 -0
  14. package/breadcrumb/breadcrumb.component.d.ts +8 -1
  15. package/breadcrumb/index.d.ts +2 -2
  16. package/button/button.component.d.ts +100 -1
  17. package/button/index.d.ts +1 -1
  18. package/dark-theme-toggle/dark-theme-toggle.component.d.ts +12 -17
  19. package/dark-theme-toggle/index.d.ts +1 -1
  20. package/dropdown/dropdown-divider.component.d.ts +13 -2
  21. package/dropdown/dropdown-divider.theme.d.ts +2 -2
  22. package/dropdown/dropdown-header.component.d.ts +19 -2
  23. package/dropdown/dropdown-item.component.d.ts +7 -0
  24. package/dropdown/dropdown.component.d.ts +39 -13
  25. package/dropdown/index.d.ts +4 -4
  26. package/esm2022/accordion/accordion-content.component.mjs +29 -16
  27. package/esm2022/accordion/accordion-content.theme.mjs +2 -6
  28. package/esm2022/accordion/accordion-content.theme.service.mjs +2 -2
  29. package/esm2022/accordion/accordion-panel.component.mjs +18 -15
  30. package/esm2022/accordion/accordion-title.component.mjs +14 -8
  31. package/esm2022/accordion/accordion.component.mjs +28 -13
  32. package/esm2022/accordion/index.mjs +5 -5
  33. package/esm2022/alert/alert.component.mjs +93 -37
  34. package/esm2022/alert/index.mjs +2 -2
  35. package/esm2022/badge/badge.component.mjs +34 -9
  36. package/esm2022/badge/index.mjs +2 -2
  37. package/esm2022/base-component.directive.mjs +1 -7
  38. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +14 -8
  39. package/esm2022/breadcrumb/breadcrumb.component.mjs +16 -11
  40. package/esm2022/breadcrumb/index.mjs +3 -3
  41. package/esm2022/button/button.component.mjs +72 -34
  42. package/esm2022/button/index.mjs +2 -2
  43. package/esm2022/core/flowbite.theme.init.mjs +48 -14
  44. package/esm2022/dark-theme-toggle/dark-theme-toggle.component.mjs +17 -42
  45. package/esm2022/dark-theme-toggle/index.mjs +2 -2
  46. package/esm2022/dropdown/dropdown-divider.component.mjs +10 -5
  47. package/esm2022/dropdown/dropdown-divider.theme.mjs +1 -1
  48. package/esm2022/dropdown/dropdown-header.component.mjs +13 -10
  49. package/esm2022/dropdown/dropdown-item.component.mjs +10 -5
  50. package/esm2022/dropdown/dropdown.component.mjs +51 -72
  51. package/esm2022/dropdown/dropdown.theme.mjs +6 -6
  52. package/esm2022/dropdown/index.mjs +5 -5
  53. package/esm2022/indicator/index.mjs +2 -2
  54. package/esm2022/indicator/indicators.component.mjs +64 -14
  55. package/esm2022/modal/index.mjs +5 -5
  56. package/esm2022/modal/modal-body.component.mjs +10 -5
  57. package/esm2022/modal/modal-footer.component.mjs +10 -5
  58. package/esm2022/modal/modal-header.component.mjs +16 -10
  59. package/esm2022/modal/modal.component.mjs +42 -23
  60. package/esm2022/navbar/index.mjs +7 -7
  61. package/esm2022/navbar/navbar-brand.component.mjs +10 -5
  62. package/esm2022/navbar/navbar-content.component.mjs +35 -11
  63. package/esm2022/navbar/navbar-content.theme.mjs +2 -6
  64. package/esm2022/navbar/navbar-content.theme.service.mjs +2 -2
  65. package/esm2022/navbar/navbar-icon-button.component.mjs +10 -9
  66. package/esm2022/navbar/navbar-item.component.mjs +10 -5
  67. package/esm2022/navbar/navbar-toggle.component.mjs +12 -6
  68. package/esm2022/navbar/navbar.component.mjs +41 -16
  69. package/esm2022/scroll-top/index.mjs +2 -2
  70. package/esm2022/scroll-top/scroll-top.component.mjs +22 -5
  71. package/esm2022/sidebar/index.mjs +7 -7
  72. package/esm2022/sidebar/sidebar-item-group.component.mjs +19 -14
  73. package/esm2022/sidebar/sidebar-item.component.mjs +45 -26
  74. package/esm2022/sidebar/sidebar-menu.component.mjs +10 -9
  75. package/esm2022/sidebar/sidebar-page-content.component.mjs +10 -4
  76. package/esm2022/sidebar/sidebar-toggle.component.mjs +22 -5
  77. package/esm2022/sidebar/sidebar.component.mjs +36 -19
  78. package/esm2022/theme/flowbite-angular-theme.mjs +5 -0
  79. package/esm2022/theme/flowbite-theme.directive.mjs +71 -0
  80. package/esm2022/theme/index.mjs +2 -0
  81. package/fesm2022/flowbite-angular-accordion.mjs +85 -50
  82. package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
  83. package/fesm2022/flowbite-angular-alert.mjs +93 -37
  84. package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
  85. package/fesm2022/flowbite-angular-badge.mjs +34 -9
  86. package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
  87. package/fesm2022/flowbite-angular-breadcrumb.mjs +28 -16
  88. package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
  89. package/fesm2022/flowbite-angular-button.mjs +72 -34
  90. package/fesm2022/flowbite-angular-button.mjs.map +1 -1
  91. package/fesm2022/flowbite-angular-core.mjs +47 -13
  92. package/fesm2022/flowbite-angular-core.mjs.map +1 -1
  93. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +17 -42
  94. package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +1 -1
  95. package/fesm2022/flowbite-angular-dropdown.mjs +83 -88
  96. package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
  97. package/fesm2022/flowbite-angular-indicator.mjs +64 -14
  98. package/fesm2022/flowbite-angular-indicator.mjs.map +1 -1
  99. package/fesm2022/flowbite-angular-modal.mjs +72 -34
  100. package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
  101. package/fesm2022/flowbite-angular-navbar.mjs +109 -43
  102. package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
  103. package/fesm2022/flowbite-angular-scroll-top.mjs +22 -5
  104. package/fesm2022/flowbite-angular-scroll-top.mjs.map +1 -1
  105. package/fesm2022/flowbite-angular-sidebar.mjs +132 -65
  106. package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
  107. package/fesm2022/flowbite-angular-theme.mjs +78 -0
  108. package/fesm2022/flowbite-angular-theme.mjs.map +1 -0
  109. package/fesm2022/flowbite-angular.mjs +0 -6
  110. package/fesm2022/flowbite-angular.mjs.map +1 -1
  111. package/indicator/index.d.ts +1 -1
  112. package/indicator/indicators.component.d.ts +81 -0
  113. package/modal/index.d.ts +4 -4
  114. package/modal/modal-body.component.d.ts +7 -0
  115. package/modal/modal-footer.component.d.ts +7 -0
  116. package/modal/modal-header.component.d.ts +13 -0
  117. package/modal/modal.component.d.ts +40 -2
  118. package/navbar/index.d.ts +6 -6
  119. package/navbar/navbar-brand.component.d.ts +7 -0
  120. package/navbar/navbar-content.component.d.ts +13 -4
  121. package/navbar/navbar-content.theme.d.ts +1 -3
  122. package/navbar/navbar-icon-button.component.d.ts +12 -1
  123. package/navbar/navbar-item.component.d.ts +12 -0
  124. package/navbar/navbar-toggle.component.d.ts +7 -0
  125. package/navbar/navbar.component.d.ts +30 -2
  126. package/package.json +7 -2
  127. package/scroll-top/index.d.ts +1 -1
  128. package/scroll-top/scroll-top.component.d.ts +31 -0
  129. package/sidebar/index.d.ts +6 -6
  130. package/sidebar/sidebar-item-group.component.d.ts +19 -1
  131. package/sidebar/sidebar-item.component.d.ts +21 -1
  132. package/sidebar/sidebar-menu.component.d.ts +25 -1
  133. package/sidebar/sidebar-page-content.component.d.ts +12 -0
  134. package/sidebar/sidebar-toggle.component.d.ts +22 -0
  135. package/sidebar/sidebar.component.d.ts +17 -3
  136. package/theme/README.md +4 -0
  137. package/theme/flowbite-theme.directive.d.ts +36 -0
  138. package/theme/index.d.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-dropdown.mjs","sources":["../../../../libs/flowbite-angular/dropdown/dropdown-divider.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-divider.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-divider.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.theme.ts","../../../../libs/flowbite-angular/dropdown/flowbite-angular-dropdown.ts"],"sourcesContent":["import type {\n DropdownDividerClass,\n DropdownDividerProperties,\n DropdownDividerTheme,\n} from './dropdown-divider.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 `DropdownDividerTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN = new InjectionToken<DropdownDividerTheme>(\n 'FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownDividerThemeService\n implements FlowbiteThemeService<DropdownDividerProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN);\n\n public getClasses(properties: DropdownDividerProperties): DropdownDividerClass {\n const theme: DropdownDividerTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownDividerClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DropdownDividerClass, DropdownDividerTheme } from './dropdown-divider.theme';\nimport { DropdownDividerThemeService } from './dropdown-divider.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport { BaseComponent } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-dropdown-divider',\n template: ``,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownDividerComponent extends BaseComponent<DropdownDividerClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownDividerThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown divider\n */\n public customStyle = model<Partial<DropdownDividerTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownDividerClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DropdownHeaderClass,\n DropdownHeaderProperties,\n DropdownHeaderTheme,\n} from './dropdown-header.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 `DropdownHeaderTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN = new InjectionToken<DropdownHeaderTheme>(\n 'FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownHeaderThemeService implements FlowbiteThemeService<DropdownHeaderProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN);\n\n public getClasses(properties: DropdownHeaderProperties): DropdownHeaderClass {\n const theme: DropdownHeaderTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownHeaderClass = {\n rootClass: twMerge(theme.root.base),\n root: twMerge(theme.content.base),\n };\n\n return output;\n }\n}\n","import type { DropdownHeaderClass, DropdownHeaderTheme } from './dropdown-header.theme';\nimport { DropdownHeaderThemeService } from './dropdown-header.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport { BaseComponent } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-dropdown-header',\n template: `\n <div [ngClass]=\"contentClasses().root\">\n <ng-content />\n </div>\n <div class=\"my-1 h-px bg-gray-100 dark:bg-gray-600\"></div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownHeaderComponent extends BaseComponent<DropdownHeaderClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownHeaderThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown header\n */\n public customStyle = model<Partial<DropdownHeaderTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownHeaderClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DropdownItemClass,\n DropdownItemProperties,\n DropdownItemTheme,\n} from './dropdown-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 `DropdownItemTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN = new InjectionToken<DropdownItemTheme>(\n 'FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownItemThemeService implements FlowbiteThemeService<DropdownItemProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN);\n\n public getClasses(properties: DropdownItemProperties): DropdownItemClass {\n const theme: DropdownItemTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownItemClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DropdownItemClass, DropdownItemTheme } from './dropdown-item.theme';\nimport { DropdownItemThemeService } from './dropdown-item.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-dropdown-item',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownItemComponent extends BaseComponent<DropdownItemClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownItemThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown item\n */\n public customStyle = model<DeepPartial<DropdownItemTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownItemClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type { DropdownClass, DropdownProperties, DropdownTheme } from './dropdown.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 `DropdownTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_THEME_TOKEN = new InjectionToken<DropdownTheme>(\n 'FLOWBITE_DROPDOWN_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownThemeService implements FlowbiteThemeService<DropdownProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_THEME_TOKEN);\n\n public getClasses(properties: DropdownProperties): DropdownClass {\n const theme: DropdownTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownClass = {\n rootClass: twMerge(theme.root.base),\n dropdownClass: twMerge(theme.dropdown.base),\n spanClass: twMerge(theme.span.base),\n containerClass: twMerge(\n theme.container.base,\n theme.container.isOpen[properties.isOpen],\n theme.container.placement[properties.placement]\n ),\n contentClass: twMerge(theme.content.base),\n subContentClass: twMerge(theme.subContent.base),\n };\n\n return output;\n }\n}\n","import { DropdownDividerComponent } from './dropdown-divider.component';\nimport { DropdownHeaderComponent } from './dropdown-header.component';\nimport { DropdownItemComponent } from './dropdown-item.component';\nimport type { DropdownClass, DropdownPositions, DropdownTheme } from './dropdown.theme';\nimport { DropdownThemeService } from './dropdown.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport { NgClass } from '@angular/common';\nimport type { AfterViewInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n ElementRef,\n inject,\n model,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport type { Placement } from '@floating-ui/dom';\nimport { autoUpdate, computePosition, flip, offset, shift } from '@floating-ui/dom';\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n imports: [NgClass, IconComponent],\n selector: 'flowbite-dropdown',\n template: `\n <button\n type=\"button\"\n [ngClass]=\"contentClasses().dropdownClass\"\n (click)=\"toggle()\"\n #button>\n <span [ngClass]=\"contentClasses().spanClass\">\n {{ label() }}\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"ml-2 h-4 w-4\" />\n </span>\n </button>\n <div\n [ngClass]=\"contentClasses().containerClass\"\n #dropdown\n [style.display]=\"isOpen() ? 'block' : 'none'\">\n <div [ngClass]=\"contentClasses().contentClass\">\n <ul [ngClass]=\"contentClasses().subContentClass\">\n <ng-content />\n </ul>\n </div>\n </div>\n `,\n host: {\n '(document:click)': 'clickout($event)',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownComponent extends BaseComponent<DropdownClass> implements AfterViewInit {\n @ViewChild('dropdown') dropdown!: ElementRef;\n @ViewChild('button') button!: ElementRef;\n\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * List of `DropdownItemComponent`\n */\n public readonly dropdownItemChildren = contentChildren(DropdownItemComponent);\n /**\n * List of `DropdownHeaderComponent`\n */\n public readonly dropdownHeaderChildren = contentChildren(DropdownHeaderComponent);\n /**\n * List of `DropdownDividerComponent`\n */\n public readonly dropdownDividerChildren = contentChildren(DropdownDividerComponent);\n\n //#region properties\n /**\n * Set the dropdown label\n *\n * @default Dropdown\n */\n public label = model('Dropdown');\n /**\n * Set if the dropdown is open\n *\n * @default false\n */\n public isOpen = model<boolean>(false);\n /**\n * Set the dropdown position\n *\n * @default bottom-center\n */\n public position = model<keyof DropdownPositions>('bottom-center');\n /**\n * Set the custom style for this dropdown\n */\n public customStyle = model<DeepPartial<DropdownTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownClass {\n return this.themeService.getClasses({\n label: this.label(),\n isOpen: booleanToFlowbiteBoolean(this.isOpen()),\n placement: this.position(),\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\n public override verify(): void {\n if (this.dropdownItemChildren().length === 0) {\n throw new Error('No DropdownItemComponent available');\n }\n }\n //#endregion\n\n x = 0;\n y = 0;\n width = 0;\n\n /**\n * Toggle dropdown isOpen\n */\n public toggle() {\n this.isOpen.set(!this.isOpen());\n }\n\n calculatePosition() {\n computePosition(this.button.nativeElement, this.dropdown.nativeElement, {\n placement: this.convertPosition(this.position()),\n middleware: [offset(8), flip(), shift()],\n }).then(({ x, y }: { x: number; y: number }) => {\n this.dropdown.nativeElement.style.left = x + 'px';\n this.dropdown.nativeElement.style.top = y + 'px';\n this.width = this.button.nativeElement.offsetWidth;\n });\n }\n\n ngAfterViewInit() {\n // todo : Fix ERROR ReferenceError: ResizeObserver is not defined\n // Append when runing command 'pnpm lib:build'\n autoUpdate(this.button.nativeElement, this.dropdown.nativeElement, () => {\n if (!this.isOpen()) return;\n this.calculatePosition();\n });\n }\n\n // Onclick outside the dropdown, close it\n clickout(event: Event) {\n if (\n !this.dropdown.nativeElement.contains(event.target) &&\n this.isOpen() &&\n !this.button.nativeElement.contains(event.target)\n ) {\n this.isOpen.set(false);\n }\n }\n\n convertPosition(pos: keyof DropdownPositions): Placement {\n switch (pos) {\n case 'top-center':\n return 'top';\n case 'bottom-center':\n return 'bottom';\n case 'left-center':\n return 'left';\n case 'right-center':\n return 'right';\n }\n }\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbitePositions,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\n/**\n * Available positions for `DropdownComponent`\n */\nexport interface DropdownPositions extends Pick<FlowbitePositions, 'bottom-center' | 'top-center'> {\n 'left-center': string;\n 'right-center': string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `DropdownComponent`\n */\nexport interface DropdownProperties {\n label: string;\n isOpen: keyof FlowbiteBoolean;\n placement: keyof DropdownPositions;\n customStyle: DeepPartial<DropdownTheme>;\n}\n\n/**\n * Theme definition for `DropdownComponent`\n */\nexport interface DropdownTheme {\n root: {\n base: string;\n };\n dropdown: {\n base: string;\n };\n span: {\n base: string;\n };\n container: {\n base: string;\n isOpen: FlowbiteBoolean;\n placement: DropdownPositions;\n };\n content: {\n base: string;\n };\n subContent: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownComponent`\n */\nexport const dropdownTheme: DropdownTheme = createTheme({\n root: {\n base: '',\n },\n dropdown: {\n base: 'text-white bg-blue-700 border border-transparent hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 disabled:hover:bg-blue-700 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800 dark:disabled:hover:bg-blue-600 group flex h-min items-center justify-center p-0.5 text-center font-medium focus:z-10 rounded-lg',\n },\n span: {\n base: 'flex items-center rounded-md text-sm px-4 py-2',\n },\n container: {\n base: 'z-10 bg-white divide-y divide-gray-100 rounded-lg shadow dark:bg-gray-700 min-w-fit absolute',\n isOpen: {\n enabled: 'block',\n disabled: 'hidden',\n },\n placement: {\n 'top-center': '',\n 'bottom-center': '',\n 'left-center': '',\n 'right-center': '',\n },\n },\n content: {\n base: 'py-1 text-sm text-gray-700 dark:text-gray-200 shadow-md',\n },\n subContent: {\n base: 'py-1',\n },\n});\n\n/**\n * Generated class definition for `DropdownComponent`\n */\nexport interface DropdownClass extends FlowbiteClass {\n dropdownClass: string;\n spanClass: string;\n containerClass: string;\n contentClass: string;\n subContentClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\n\n/**\n * Required properties for the cmass generation of `DropdownItemComponent`\n */\nexport interface DropdownItemProperties {\n customStyle: DeepPartial<DropdownItemTheme>;\n}\n\n/**\n * Theme definition for `DropdownItemComponent`\n */\nexport interface DropdownItemTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme value for `DropdownItemComponent`\n */\nexport const dropdownItemTheme: DropdownItemTheme = {\n root: {\n base: 'flex items-center justify-start py-2 px-4 text-sm text-gray-700 cursor-pointer hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-gray-600 dark:hover:text-white',\n },\n};\n\n/**\n * Generated class definition for `DropdownItemComponent`\n */\nexport type DropdownItemClass = FlowbiteClass;\n","import type { FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DropdownDividerComponent`\n */\nexport interface DropdownDividerProperties {\n customStyle: Partial<DropdownDividerTheme>;\n}\n\n/**\n * Theme definition for `DropdownDividerComponent`\n */\nexport interface DropdownDividerTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownDividerComponent`\n */\nexport const dropdownDividerTheme: DropdownDividerTheme = createTheme({\n root: {\n base: 'block my-1 h-px bg-gray-100 dark:bg-gray-600',\n },\n});\n\n/**\n * Generated class definition for `DropdownDividerComponent`\n */\nexport type DropdownDividerClass = FlowbiteClass;\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderProperties {\n customStyle: DeepPartial<DropdownHeaderTheme>;\n}\n\n/**\n * Theme definition of `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderTheme {\n root: {\n base: string;\n };\n content: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownHeaderComponent`\n */\nexport const dropdownHeaderTheme: DropdownHeaderTheme = createTheme({\n root: {\n base: '',\n },\n content: {\n base: 'block py-2 px-4 text-sm text-gray-700 dark:text-gray-200',\n },\n});\n\n/**\n * Generated class definition for `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderClass extends FlowbiteClass {\n root: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flowbite-angular-dropdown.mjs","sources":["../../../../libs/flowbite-angular/dropdown/dropdown-divider.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-divider.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown.theme.service.ts","../../../../libs/flowbite-angular/dropdown/dropdown.component.ts","../../../../libs/flowbite-angular/dropdown/dropdown.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-item.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-divider.theme.ts","../../../../libs/flowbite-angular/dropdown/dropdown-header.theme.ts","../../../../libs/flowbite-angular/dropdown/flowbite-angular-dropdown.ts"],"sourcesContent":["import type {\n DropdownDividerClass,\n DropdownDividerProperties,\n DropdownDividerTheme,\n} from './dropdown-divider.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 `DropdownDividerTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN = new InjectionToken<DropdownDividerTheme>(\n 'FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownDividerThemeService\n implements FlowbiteThemeService<DropdownDividerProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_DIVIDER_THEME_TOKEN);\n\n public getClasses(properties: DropdownDividerProperties): DropdownDividerClass {\n const theme: DropdownDividerTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownDividerClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DropdownDividerClass, DropdownDividerTheme } from './dropdown-divider.theme';\nimport { DropdownDividerThemeService } from './dropdown-divider.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } 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_DROPDOWN_DIVIDER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DropdownDividerTheme>\n>('FLOWBITE_DROPDOWN_DIVIDER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const dropdownDividerDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DROPDOWN_DIVIDER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-dropdown-divider',\n template: ``,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownDividerComponent extends BaseComponent<DropdownDividerClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownDividerThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown divider\n */\n public customStyle = model(inject(FLOWBITE_DROPDOWN_DIVIDER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownDividerClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DropdownHeaderClass,\n DropdownHeaderProperties,\n DropdownHeaderTheme,\n} from './dropdown-header.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 `DropdownHeaderTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN = new InjectionToken<DropdownHeaderTheme>(\n 'FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownHeaderThemeService implements FlowbiteThemeService<DropdownHeaderProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_HEADER_THEME_TOKEN);\n\n public getClasses(properties: DropdownHeaderProperties): DropdownHeaderClass {\n const theme: DropdownHeaderTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownHeaderClass = {\n rootClass: twMerge(theme.root.base),\n root: twMerge(theme.content.base),\n };\n\n return output;\n }\n}\n","import type { DropdownHeaderClass, DropdownHeaderTheme } from './dropdown-header.theme';\nimport { DropdownHeaderThemeService } from './dropdown-header.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } 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_DROPDOWN_HEADER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DropdownHeaderTheme>\n>('FLOWBITE_DROPDOWN_HEADER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const dropdownHeaderDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DROPDOWN_HEADER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-dropdown-header',\n template: `\n <div [class]=\"contentClasses().root\">\n <ng-content />\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownHeaderComponent extends BaseComponent<DropdownHeaderClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownHeaderThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown header\n */\n public customStyle = model(inject(FLOWBITE_DROPDOWN_HEADER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownHeaderClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DropdownItemClass,\n DropdownItemProperties,\n DropdownItemTheme,\n} from './dropdown-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 `DropdownItemTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN = new InjectionToken<DropdownItemTheme>(\n 'FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownItemThemeService implements FlowbiteThemeService<DropdownItemProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_ITEM_THEME_TOKEN);\n\n public getClasses(properties: DropdownItemProperties): DropdownItemClass {\n const theme: DropdownItemTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownItemClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DropdownItemClass, DropdownItemTheme } from './dropdown-item.theme';\nimport { DropdownItemThemeService } from './dropdown-item.theme.service';\nimport { DropdownComponent } from './dropdown.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } 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_DROPDOWN_ITEM_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DropdownItemTheme>\n>('FLOWBITE_DROPDOWN_ITEM_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const dropdownItemDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DROPDOWN_ITEM_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-dropdown-item',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownItemComponent extends BaseComponent<DropdownItemClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownItemThemeService);\n /**\n * The parent `DropdownComponent`\n */\n public readonly dropdownComponent = inject(DropdownComponent);\n\n //#region properties\n /**\n * Set the custom style for this dropdown item\n */\n public customStyle = model(inject(FLOWBITE_DROPDOWN_ITEM_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownItemClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type { DropdownClass, DropdownProperties, DropdownTheme } from './dropdown.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 `DropdownTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DROPDOWN_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DROPDOWN_THEME_TOKEN = new InjectionToken<DropdownTheme>(\n 'FLOWBITE_DROPDOWN_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DropdownThemeService implements FlowbiteThemeService<DropdownProperties> {\n private readonly baseTheme = inject(FLOWBITE_DROPDOWN_THEME_TOKEN);\n\n public getClasses(properties: DropdownProperties): DropdownClass {\n const theme: DropdownTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DropdownClass = {\n rootClass: twMerge(theme.root.base),\n dropdownClass: twMerge(theme.dropdown.base),\n spanClass: twMerge(theme.span.base),\n containerClass: twMerge(\n theme.container.base,\n theme.container.isOpen[properties.isOpen],\n theme.container.placement[properties.placement]\n ),\n contentClass: twMerge(theme.content.base),\n subContentClass: twMerge(theme.subContent.base),\n };\n\n return output;\n }\n}\n","import { DropdownDividerComponent } from './dropdown-divider.component';\nimport { DropdownHeaderComponent } from './dropdown-header.component';\nimport { DropdownItemComponent } from './dropdown-item.component';\nimport type { DropdownClass, DropdownPositions, DropdownTheme } from './dropdown.theme';\nimport { DropdownThemeService } from './dropdown.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CHEVRON_DOWN_SVG_ICON } from 'flowbite-angular/utils';\n\nimport type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport const FLOWBITE_DROPDOWN_LABEL_DEFAULT_VALUE = new InjectionToken<string>(\n 'FLOWBITE_DROPDOWN_LABEL_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_DROPDOWN_IS_OPEN_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_DROPDOWN_IS_OPEN_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_DROPDOWN_POSITION_DEFAULT_VALUE = new InjectionToken<keyof DropdownPositions>(\n 'FLOWBITE_DROPDOWN_POSITION_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_DROPDOWN_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DropdownTheme>\n>('FLOWBITE_DROPDOWN_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const dropdownDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DROPDOWN_LABEL_DEFAULT_VALUE,\n useValue: 'Dropdown',\n },\n {\n provide: FLOWBITE_DROPDOWN_IS_OPEN_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_DROPDOWN_POSITION_DEFAULT_VALUE,\n useValue: 'bottom-center',\n },\n {\n provide: FLOWBITE_DROPDOWN_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/dropdowns/\n */\n@Component({\n standalone: true,\n imports: [IconComponent],\n selector: 'flowbite-dropdown',\n template: `\n <button\n type=\"button\"\n [class]=\"contentClasses().dropdownClass\"\n (click)=\"toggle()\"\n #button>\n <span [class]=\"contentClasses().spanClass\">\n {{ label() }}\n <flowbite-icon\n svgIcon=\"flowbite-angular:chevron-down\"\n class=\"ml-2 h-4 w-4\" />\n </span>\n </button>\n <div\n [class]=\"contentClasses().containerClass\"\n #dropdown\n [style.display]=\"isOpen() ? 'block' : 'none'\"\n [style.minWidth.px]=\"button.clientWidth\">\n <div [class]=\"contentClasses().contentClass\">\n <ul [class]=\"contentClasses().subContentClass\">\n <ng-content />\n </ul>\n </div>\n </div>\n `,\n host: {\n '(document:click)': 'clickout($event)',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DropdownComponent extends BaseComponent<DropdownClass> {\n dropdown = viewChild.required<ElementRef>('dropdown');\n button = viewChild.required<ElementRef>('button');\n\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DropdownThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * List of `DropdownItemComponent`\n */\n public readonly dropdownItemChildren = contentChildren(DropdownItemComponent);\n /**\n * List of `DropdownHeaderComponent`\n */\n public readonly dropdownHeaderChildren = contentChildren(DropdownHeaderComponent);\n /**\n * List of `DropdownDividerComponent`\n */\n public readonly dropdownDividerChildren = contentChildren(DropdownDividerComponent);\n\n //#region properties\n /**\n * Set the dropdown label\n *\n * @default Dropdown\n */\n public label = model(inject(FLOWBITE_DROPDOWN_LABEL_DEFAULT_VALUE));\n /**\n * Set if the dropdown is open\n *\n * @default false\n */\n public isOpen = model(inject(FLOWBITE_DROPDOWN_IS_OPEN_DEFAULT_VALUE));\n /**\n * Set the dropdown position\n *\n * @default bottom-center\n */\n public position = model(inject(FLOWBITE_DROPDOWN_POSITION_DEFAULT_VALUE));\n /**\n * Set the custom style for this dropdown\n */\n public customStyle = model(inject(FLOWBITE_DROPDOWN_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DropdownClass {\n return this.themeService.getClasses({\n label: this.label(),\n isOpen: booleanToFlowbiteBoolean(this.isOpen()),\n placement: this.position(),\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 dropdown isOpen\n */\n public toggle() {\n this.isOpen.set(!this.isOpen());\n }\n\n // Onclick outside the dropdown, close it\n clickout(event: Event) {\n if (\n !this.dropdown().nativeElement.contains(event.target) &&\n this.isOpen() &&\n !this.button().nativeElement.contains(event.target)\n ) {\n this.isOpen.set(false);\n }\n }\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbitePositions,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\n/**\n * Available positions for `DropdownComponent`\n */\nexport interface DropdownPositions extends Pick<FlowbitePositions, 'bottom-center' | 'top-center'> {\n 'left-center': string;\n 'right-center': string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `DropdownComponent`\n */\nexport interface DropdownProperties {\n label: string;\n isOpen: keyof FlowbiteBoolean;\n placement: keyof DropdownPositions;\n customStyle: DeepPartial<DropdownTheme>;\n}\n\n/**\n * Theme definition for `DropdownComponent`\n */\nexport interface DropdownTheme {\n root: {\n base: string;\n };\n dropdown: {\n base: string;\n };\n span: {\n base: string;\n };\n container: {\n base: string;\n isOpen: FlowbiteBoolean;\n placement: DropdownPositions;\n };\n content: {\n base: string;\n };\n subContent: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownComponent`\n */\nexport const dropdownTheme: DropdownTheme = createTheme({\n root: {\n base: 'relative inline w-fit',\n },\n dropdown: {\n base: 'text-white bg-blue-700 border border-transparent hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 disabled:hover:bg-blue-700 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800 dark:disabled:hover:bg-blue-600 group flex h-min items-center justify-center p-0.5 text-center font-medium focus:z-10 rounded-lg',\n },\n span: {\n base: 'flex items-center rounded-md text-sm px-4 py-2',\n },\n container: {\n base: 'z-10 bg-white divide-y divide-gray-100 rounded-lg shadow dark:bg-gray-700 min-w-fit absolute',\n isOpen: {\n enabled: 'block',\n disabled: 'hidden',\n },\n placement: {\n 'top-center': 'bottom-full mb-2.5 left-1/2 -translate-x-1/2',\n 'bottom-center': 'top-full mt-2.5 left-1/2 -translate-x-1/2',\n 'left-center': 'left-full ml-2.5 top-1/2 -translate-y-1/2',\n 'right-center': 'right-full mr-2.5 top-1/2 -translate-y-1/2',\n },\n },\n content: {\n base: 'py-1 text-sm text-gray-700 dark:text-gray-200 shadow-md',\n },\n subContent: {\n base: 'py-1',\n },\n});\n\n/**\n * Generated class definition for `DropdownComponent`\n */\nexport interface DropdownClass extends FlowbiteClass {\n dropdownClass: string;\n spanClass: string;\n containerClass: string;\n contentClass: string;\n subContentClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\n\n/**\n * Required properties for the cmass generation of `DropdownItemComponent`\n */\nexport interface DropdownItemProperties {\n customStyle: DeepPartial<DropdownItemTheme>;\n}\n\n/**\n * Theme definition for `DropdownItemComponent`\n */\nexport interface DropdownItemTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme value for `DropdownItemComponent`\n */\nexport const dropdownItemTheme: DropdownItemTheme = {\n root: {\n base: 'flex items-center justify-start py-2 px-4 text-sm text-gray-700 cursor-pointer hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-gray-600 dark:hover:text-white',\n },\n};\n\n/**\n * Generated class definition for `DropdownItemComponent`\n */\nexport type DropdownItemClass = FlowbiteClass;\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DropdownDividerComponent`\n */\nexport interface DropdownDividerProperties {\n customStyle: DeepPartial<DropdownDividerTheme>;\n}\n\n/**\n * Theme definition for `DropdownDividerComponent`\n */\nexport interface DropdownDividerTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownDividerComponent`\n */\nexport const dropdownDividerTheme: DropdownDividerTheme = createTheme({\n root: {\n base: 'block my-1 h-px bg-gray-100 dark:bg-gray-600',\n },\n});\n\n/**\n * Generated class definition for `DropdownDividerComponent`\n */\nexport type DropdownDividerClass = FlowbiteClass;\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderProperties {\n customStyle: DeepPartial<DropdownHeaderTheme>;\n}\n\n/**\n * Theme definition of `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderTheme {\n root: {\n base: string;\n };\n content: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DropdownHeaderComponent`\n */\nexport const dropdownHeaderTheme: DropdownHeaderTheme = createTheme({\n root: {\n base: '',\n },\n content: {\n base: 'block py-2 px-4 text-sm text-gray-700 dark:text-gray-200',\n },\n});\n\n/**\n * Generated class definition for `DropdownHeaderComponent`\n */\nexport interface DropdownHeaderClass extends FlowbiteClass {\n root: string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { mergeTheme, createTheme } from 'flowbite-angular/utils';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, inject, Injectable, model, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
3
+ import { InjectionToken, inject, Injectable, makeEnvironmentProviders, model, Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';
4
4
  import { twMerge } from 'tailwind-merge';
5
5
  import { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';
6
- import { NgClass } from '@angular/common';
7
6
 
8
7
  /**
9
8
  * `InjectionToken` used to import `IndicatorTheme` value
@@ -37,6 +36,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
37
36
  }]
38
37
  }] });
39
38
 
39
+ const FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE');
40
+ const FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE');
41
+ const FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE');
42
+ const FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE');
43
+ const FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE');
44
+ const FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE');
45
+ const FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE');
46
+ const FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE');
47
+ const FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE');
48
+ const FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken('FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE');
49
+ const indicatorDefaultValueProvider = makeEnvironmentProviders([
50
+ {
51
+ provide: FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE,
52
+ useValue: false,
53
+ },
54
+ {
55
+ provide: FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE,
56
+ useValue: false,
57
+ },
58
+ {
59
+ provide: FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE,
60
+ useValue: false,
61
+ },
62
+ {
63
+ provide: FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE,
64
+ useValue: false,
65
+ },
66
+ {
67
+ provide: FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE,
68
+ useValue: false,
69
+ },
70
+ {
71
+ provide: FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE,
72
+ useValue: false,
73
+ },
74
+ {
75
+ provide: FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE,
76
+ useValue: 'primary',
77
+ },
78
+ {
79
+ provide: FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE,
80
+ useValue: 'md',
81
+ },
82
+ {
83
+ provide: FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE,
84
+ useValue: undefined,
85
+ },
86
+ {
87
+ provide: FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE,
88
+ useValue: {},
89
+ },
90
+ ]);
40
91
  /**
41
92
  * @see https://flowbite.com/docs/components/indicators/
42
93
  */
@@ -53,59 +104,59 @@ class IndicatorComponent extends BaseComponent {
53
104
  *
54
105
  * @default false
55
106
  */
56
- this.isPill = model(false);
107
+ this.isPill = model(inject(FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE));
57
108
  /**
58
109
  * Set if the indicator is outline
59
110
  *
60
111
  * @default false
61
112
  */
62
- this.isOutline = model(false);
113
+ this.isOutline = model(inject(FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE));
63
114
  /**
64
115
  * Set if the indicator is disable
65
116
  *
66
117
  * @default false
67
118
  */
68
- this.isDisabled = model(false);
119
+ this.isDisabled = model(inject(FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE));
69
120
  /**
70
121
  * Set if the indicator has offset
71
122
  *
72
123
  * @default false
73
124
  */
74
- this.hasOffset = model(false);
125
+ this.hasOffset = model(inject(FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE));
75
126
  /**
76
127
  * Set if the indicator is rounded
77
128
  *
78
129
  * @default false
79
130
  */
80
- this.isRounded = model(false);
131
+ this.isRounded = model(inject(FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE));
81
132
  /**
82
133
  * Set if the indicator has border
83
134
  *
84
135
  * @default false
85
136
  */
86
- this.hasBorder = model(false);
137
+ this.hasBorder = model(inject(FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE));
87
138
  /**
88
139
  * Set the indicator color
89
140
  *
90
141
  * @default primary
91
142
  */
92
- this.color = model('primary');
143
+ this.color = model(inject(FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE));
93
144
  /**
94
145
  * Set the indicator size
95
146
  *
96
147
  * @default md
97
148
  */
98
- this.size = model('md');
149
+ this.size = model(inject(FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE));
99
150
  /**
100
151
  * Set the indicator placement
101
152
  *
102
153
  * @default undefined
103
154
  */
104
- this.placement = model(undefined);
155
+ this.placement = model(inject(FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE));
105
156
  /**
106
157
  * Set the custom style for this indicator
107
158
  */
108
- this.customStyle = model({});
159
+ this.customStyle = model(inject(FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE));
109
160
  }
110
161
  //#endregion
111
162
  //#region BaseComponent implementation
@@ -130,7 +181,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
130
181
  type: Component,
131
182
  args: [{
132
183
  standalone: true,
133
- imports: [NgClass],
134
184
  selector: 'flowbite-indicator',
135
185
  template: `<ng-content />`,
136
186
  encapsulation: ViewEncapsulation.None,
@@ -212,5 +262,5 @@ const indicatorTheme = createTheme({
212
262
  * Generated bundle index. Do not edit.
213
263
  */
214
264
 
215
- export { FLOWBITE_INDICATOR_THEME_TOKEN, IndicatorComponent, IndicatorThemeService, indicatorTheme };
265
+ export { FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE, FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE, FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE, FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE, FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE, FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE, FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE, FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE, FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE, FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE, FLOWBITE_INDICATOR_THEME_TOKEN, IndicatorComponent, IndicatorThemeService, indicatorDefaultValueProvider, indicatorTheme };
216
266
  //# sourceMappingURL=flowbite-angular-indicator.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"flowbite-angular-indicator.mjs","sources":["../../../../libs/flowbite-angular/indicator/indicators.theme.service.ts","../../../../libs/flowbite-angular/indicator/indicators.component.ts","../../../../libs/flowbite-angular/indicator/indicators.theme.ts","../../../../libs/flowbite-angular/indicator/flowbite-angular-indicator.ts"],"sourcesContent":["import type { indicatorClass, IndicatorProperties, IndicatorTheme } from './indicators.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 `IndicatorTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_INDICATOR_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_INDICATOR_THEME_TOKEN = new InjectionToken<IndicatorTheme>(\n 'FLOWBITE_INDICATOR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IndicatorThemeService implements FlowbiteThemeService<IndicatorProperties> {\n private readonly baseTheme = inject(FLOWBITE_INDICATOR_THEME_TOKEN);\n\n public getClasses(properties: IndicatorProperties): indicatorClass {\n const theme: IndicatorTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: indicatorClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.hasBorder[properties.hasBorder],\n theme.root.color[properties.color],\n theme.root.isDisabled[properties.isDisabled],\n properties.placement &&\n properties.hasOffset == 'enabled' &&\n theme.root.hasOffset[properties.placement],\n theme.root.isOutline[properties.isOutline],\n theme.root.isPill[properties.isPill],\n properties.placement && 'absolute ' + theme.root.placement[properties.placement],\n theme.root.isRounded[properties.isRounded],\n theme.root.size[properties.size]\n ),\n };\n\n return output;\n }\n}\n","import type {\n indicatorClass,\n IndicatorColors,\n IndicatorPositions,\n IndicatorSizes,\n IndicatorTheme,\n} from './indicators.theme';\nimport { IndicatorThemeService } from './indicators.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @see https://flowbite.com/docs/components/indicators/\n */\n@Component({\n standalone: true,\n imports: [NgClass],\n selector: 'flowbite-indicator',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IndicatorComponent extends BaseComponent<indicatorClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(IndicatorThemeService);\n\n //#region properties\n /**\n * Set if the indicator is pill\n *\n * @default false\n */\n public isPill = model<boolean>(false);\n /**\n * Set if the indicator is outline\n *\n * @default false\n */\n public isOutline = model<boolean>(false);\n /**\n * Set if the indicator is disable\n *\n * @default false\n */\n public isDisabled = model<boolean>(false);\n /**\n * Set if the indicator has offset\n *\n * @default false\n */\n public hasOffset = model<boolean>(false);\n /**\n * Set if the indicator is rounded\n *\n * @default false\n */\n public isRounded = model<boolean>(false);\n /**\n * Set if the indicator has border\n *\n * @default false\n */\n public hasBorder = model<boolean>(false);\n /**\n * Set the indicator color\n *\n * @default primary\n */\n public color = model<keyof IndicatorColors>('primary');\n /**\n * Set the indicator size\n *\n * @default md\n */\n public size = model<keyof IndicatorSizes>('md');\n /**\n * Set the indicator placement\n *\n * @default undefined\n */\n public placement = model<keyof IndicatorPositions | undefined>(undefined);\n /**\n * Set the custom style for this indicator\n */\n public customStyle = model<DeepPartial<IndicatorTheme>>({});\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): indicatorClass {\n return this.themeService.getClasses({\n hasBorder: booleanToFlowbiteBoolean(this.hasBorder()),\n color: this.color(),\n isDisabled: booleanToFlowbiteBoolean(this.isDisabled()),\n hasOffset: booleanToFlowbiteBoolean(this.hasOffset()),\n isOutline: booleanToFlowbiteBoolean(this.isOutline()),\n isPill: booleanToFlowbiteBoolean(this.isPill()),\n isRounded: booleanToFlowbiteBoolean(this.isRounded()),\n size: this.size(),\n placement: this.placement(),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbiteColors,\n FlowbitePositions,\n FlowbiteSizes,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\n/**\n * Available colors for `IndicatorComponent`\n */\nexport interface IndicatorColors\n extends Pick<\n FlowbiteColors,\n 'primary' | 'dark' | 'gray' | 'blue' | 'green' | 'red' | 'purple' | 'indigo' | 'yellow' | 'teal'\n > {\n [key: string]: string;\n}\n\n/**\n * Available sizes for `IndicatorComponent`\n */\nexport interface IndicatorSizes extends Pick<FlowbiteSizes, 'xs' | 'sm' | 'md' | 'lg' | 'xl'> {\n [key: string]: string;\n}\n\n/**\n * Available positions for `IndicatorComponent`\n */\nexport interface IndicatorPositions\n extends Pick<\n FlowbitePositions,\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'center-left'\n | 'center'\n | 'center-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n > {\n [key: string]: string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `IndicatorComponent`\n */\nexport interface IndicatorProperties {\n isPill: keyof FlowbiteBoolean;\n isOutline: keyof FlowbiteBoolean;\n isDisabled: keyof FlowbiteBoolean;\n hasOffset: keyof FlowbiteBoolean;\n isRounded: keyof FlowbiteBoolean;\n hasBorder: keyof FlowbiteBoolean;\n color: keyof IndicatorColors;\n size: keyof IndicatorSizes;\n placement?: keyof IndicatorPositions;\n customStyle: DeepPartial<IndicatorTheme>;\n}\n\n/**\n * Theme definition for `IndicatorComponent`\n */\nexport interface IndicatorTheme {\n root: {\n base: string;\n isPill: FlowbiteBoolean;\n isOutline: FlowbiteBoolean;\n isDisabled: FlowbiteBoolean;\n hasOffset: IndicatorPositions;\n isRounded: FlowbiteBoolean;\n hasBorder: FlowbiteBoolean;\n color: IndicatorColors;\n size: IndicatorSizes;\n placement: IndicatorPositions;\n };\n}\n\n/**\n * Default theme for `IndicatorComponent`\n */\nexport const indicatorTheme: IndicatorTheme = createTheme({\n root: {\n base: 'inline-flex items-center justify-center shrink-0 font-bold',\n hasBorder: {\n enabled: 'border-2',\n disabled: '',\n },\n color: {\n dark: 'bg-gray-900 dark:bg-gray-700 border-white dark:border-gray-800 text-white',\n primary: 'bg-primary-500 border-white dark:border-gray-800 text-white',\n gray: 'bg-gray-200 border-white dark:border-gray-800 text-gray-900',\n blue: 'bg-blue-600 border-white dark:border-gray-800 text-white',\n green: 'bg-green-500 border-white dark:border-gray-800 text-white',\n red: 'bg-red-500 border-white dark:border-gray-800 text-white',\n purple: 'bg-purple-500 border-white dark:border-gray-800 text-white',\n indigo: 'bg-indigo-500 border-white dark:border-gray-800 text-white',\n yellow: 'bg-yellow-300 border-white dark:border-gray-800 text-gray-900',\n teal: 'bg-teal-500 border-white dark:border-gray-800 text-white',\n },\n isDisabled: {\n enabled: 'opacity-50',\n disabled: '',\n },\n hasOffset: {\n 'top-left': '-translate-x-1/3 -translate-y-1/3',\n 'top-center': '-translate-y-1/3',\n 'top-right': 'translate-x-1/3 -translate-y-1/3',\n 'center-left': '-translate-x-1/3',\n center: '',\n 'center-right': 'translate-x-1/3',\n 'bottom-left': '-translate-x-1/3 translate-y-1/3',\n 'bottom-center': 'translate-y-1/3',\n 'bottom-right': 'translate-x-1/3 translate-y-1/3',\n },\n placement: {\n 'top-left': 'top-0 left-0',\n 'top-center': 'top-0 left-1/2 -translate-x-1/2',\n 'top-right': 'top-0 right-0',\n 'center-left': 'top-1/2 -translate-y-1/2 left-0',\n center: 'top-1/2 -translate-y-1/2 left-1/2 -translate-x-1/2',\n 'center-right': 'top-1/2 -translate-y-1/2 right-0',\n 'bottom-left': 'bottom-0 left-0',\n 'bottom-center': 'bottom-0 left-1/2 -translate-x-1/2',\n 'bottom-right': 'bottom-0 right-0',\n },\n isOutline: {\n enabled: '',\n disabled: '',\n },\n isPill: {\n enabled: '',\n disabled: '',\n },\n isRounded: {\n enabled: 'rounded',\n disabled: 'rounded-full',\n },\n size: {\n xs: 'w-2 h-2 text-xs',\n sm: 'w-2.5 h-2.5 text-sm',\n md: 'w-3 h-3 text-sm',\n lg: 'w-3.5 h-3.5 text-sm',\n xl: 'w-6 h-6 text-sm',\n },\n },\n});\n\n/**\n * Generated class definition for `IndicatorComponent`\n */\nexport type indicatorClass = 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-indicator.mjs","sources":["../../../../libs/flowbite-angular/indicator/indicators.theme.service.ts","../../../../libs/flowbite-angular/indicator/indicators.component.ts","../../../../libs/flowbite-angular/indicator/indicators.theme.ts","../../../../libs/flowbite-angular/indicator/flowbite-angular-indicator.ts"],"sourcesContent":["import type { indicatorClass, IndicatorProperties, IndicatorTheme } from './indicators.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 `IndicatorTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_INDICATOR_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_INDICATOR_THEME_TOKEN = new InjectionToken<IndicatorTheme>(\n 'FLOWBITE_INDICATOR_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IndicatorThemeService implements FlowbiteThemeService<IndicatorProperties> {\n private readonly baseTheme = inject(FLOWBITE_INDICATOR_THEME_TOKEN);\n\n public getClasses(properties: IndicatorProperties): indicatorClass {\n const theme: IndicatorTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: indicatorClass = {\n rootClass: twMerge(\n theme.root.base,\n theme.root.hasBorder[properties.hasBorder],\n theme.root.color[properties.color],\n theme.root.isDisabled[properties.isDisabled],\n properties.placement &&\n properties.hasOffset == 'enabled' &&\n theme.root.hasOffset[properties.placement],\n theme.root.isOutline[properties.isOutline],\n theme.root.isPill[properties.isPill],\n properties.placement && 'absolute ' + theme.root.placement[properties.placement],\n theme.root.isRounded[properties.isRounded],\n theme.root.size[properties.size]\n ),\n };\n\n return output;\n }\n}\n","import type {\n indicatorClass,\n IndicatorColors,\n IndicatorPositions,\n IndicatorSizes,\n IndicatorTheme,\n} from './indicators.theme';\nimport { IndicatorThemeService } from './indicators.theme.service';\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_INDICATOR_IS_PILL_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE = new InjectionToken<keyof IndicatorColors>(\n 'FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE = new InjectionToken<keyof IndicatorSizes>(\n 'FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE = new InjectionToken<\n keyof IndicatorPositions | undefined\n>('FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE');\n\nexport const FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<IndicatorTheme>\n>('FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const indicatorDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE,\n useValue: 'primary',\n },\n {\n provide: FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE,\n useValue: 'md',\n },\n {\n provide: FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE,\n useValue: undefined,\n },\n {\n provide: FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/indicators/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-indicator',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IndicatorComponent extends BaseComponent<indicatorClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(IndicatorThemeService);\n\n //#region properties\n /**\n * Set if the indicator is pill\n *\n * @default false\n */\n public isPill = model(inject(FLOWBITE_INDICATOR_IS_PILL_DEFAULT_VALUE));\n /**\n * Set if the indicator is outline\n *\n * @default false\n */\n public isOutline = model(inject(FLOWBITE_INDICATOR_IS_OUTLINE_DEFAULT_VALUE));\n /**\n * Set if the indicator is disable\n *\n * @default false\n */\n public isDisabled = model(inject(FLOWBITE_INDICATOR_IS_DISABLED_DEFAULT_VALUE));\n /**\n * Set if the indicator has offset\n *\n * @default false\n */\n public hasOffset = model(inject(FLOWBITE_INDICATOR_HAS_OFFSET_DEFAULT_VALUE));\n /**\n * Set if the indicator is rounded\n *\n * @default false\n */\n public isRounded = model(inject(FLOWBITE_INDICATOR_IS_ROUNDED_DEFAULT_VALUE));\n /**\n * Set if the indicator has border\n *\n * @default false\n */\n public hasBorder = model(inject(FLOWBITE_INDICATOR_HAS_BORDER_DEFAULT_VALUE));\n /**\n * Set the indicator color\n *\n * @default primary\n */\n public color = model(inject(FLOWBITE_INDICATOR_COLOR_DEFAULT_VALUE));\n /**\n * Set the indicator size\n *\n * @default md\n */\n public size = model(inject(FLOWBITE_INDICATOR_SIZE_DEFAULT_VALUE));\n /**\n * Set the indicator placement\n *\n * @default undefined\n */\n public placement = model(inject(FLOWBITE_INDICATOR_PLACEMENT_DEFAULT_VALUE));\n /**\n * Set the custom style for this indicator\n */\n public customStyle = model(inject(FLOWBITE_INDICATOR_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): indicatorClass {\n return this.themeService.getClasses({\n hasBorder: booleanToFlowbiteBoolean(this.hasBorder()),\n color: this.color(),\n isDisabled: booleanToFlowbiteBoolean(this.isDisabled()),\n hasOffset: booleanToFlowbiteBoolean(this.hasOffset()),\n isOutline: booleanToFlowbiteBoolean(this.isOutline()),\n isPill: booleanToFlowbiteBoolean(this.isPill()),\n isRounded: booleanToFlowbiteBoolean(this.isRounded()),\n size: this.size(),\n placement: this.placement(),\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbiteColors,\n FlowbitePositions,\n FlowbiteSizes,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\n/**\n * Available colors for `IndicatorComponent`\n */\nexport interface IndicatorColors\n extends Pick<\n FlowbiteColors,\n 'primary' | 'dark' | 'gray' | 'blue' | 'green' | 'red' | 'purple' | 'indigo' | 'yellow' | 'teal'\n > {\n [key: string]: string;\n}\n\n/**\n * Available sizes for `IndicatorComponent`\n */\nexport interface IndicatorSizes extends Pick<FlowbiteSizes, 'xs' | 'sm' | 'md' | 'lg' | 'xl'> {\n [key: string]: string;\n}\n\n/**\n * Available positions for `IndicatorComponent`\n */\nexport interface IndicatorPositions\n extends Pick<\n FlowbitePositions,\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'center-left'\n | 'center'\n | 'center-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n > {\n [key: string]: string;\n}\n//#endregion\n\n/**\n * Required properties for the class generation of `IndicatorComponent`\n */\nexport interface IndicatorProperties {\n isPill: keyof FlowbiteBoolean;\n isOutline: keyof FlowbiteBoolean;\n isDisabled: keyof FlowbiteBoolean;\n hasOffset: keyof FlowbiteBoolean;\n isRounded: keyof FlowbiteBoolean;\n hasBorder: keyof FlowbiteBoolean;\n color: keyof IndicatorColors;\n size: keyof IndicatorSizes;\n placement?: keyof IndicatorPositions;\n customStyle: DeepPartial<IndicatorTheme>;\n}\n\n/**\n * Theme definition for `IndicatorComponent`\n */\nexport interface IndicatorTheme {\n root: {\n base: string;\n isPill: FlowbiteBoolean;\n isOutline: FlowbiteBoolean;\n isDisabled: FlowbiteBoolean;\n hasOffset: IndicatorPositions;\n isRounded: FlowbiteBoolean;\n hasBorder: FlowbiteBoolean;\n color: IndicatorColors;\n size: IndicatorSizes;\n placement: IndicatorPositions;\n };\n}\n\n/**\n * Default theme for `IndicatorComponent`\n */\nexport const indicatorTheme: IndicatorTheme = createTheme({\n root: {\n base: 'inline-flex items-center justify-center shrink-0 font-bold',\n hasBorder: {\n enabled: 'border-2',\n disabled: '',\n },\n color: {\n dark: 'bg-gray-900 dark:bg-gray-700 border-white dark:border-gray-800 text-white',\n primary: 'bg-primary-500 border-white dark:border-gray-800 text-white',\n gray: 'bg-gray-200 border-white dark:border-gray-800 text-gray-900',\n blue: 'bg-blue-600 border-white dark:border-gray-800 text-white',\n green: 'bg-green-500 border-white dark:border-gray-800 text-white',\n red: 'bg-red-500 border-white dark:border-gray-800 text-white',\n purple: 'bg-purple-500 border-white dark:border-gray-800 text-white',\n indigo: 'bg-indigo-500 border-white dark:border-gray-800 text-white',\n yellow: 'bg-yellow-300 border-white dark:border-gray-800 text-gray-900',\n teal: 'bg-teal-500 border-white dark:border-gray-800 text-white',\n },\n isDisabled: {\n enabled: 'opacity-50',\n disabled: '',\n },\n hasOffset: {\n 'top-left': '-translate-x-1/3 -translate-y-1/3',\n 'top-center': '-translate-y-1/3',\n 'top-right': 'translate-x-1/3 -translate-y-1/3',\n 'center-left': '-translate-x-1/3',\n center: '',\n 'center-right': 'translate-x-1/3',\n 'bottom-left': '-translate-x-1/3 translate-y-1/3',\n 'bottom-center': 'translate-y-1/3',\n 'bottom-right': 'translate-x-1/3 translate-y-1/3',\n },\n placement: {\n 'top-left': 'top-0 left-0',\n 'top-center': 'top-0 left-1/2 -translate-x-1/2',\n 'top-right': 'top-0 right-0',\n 'center-left': 'top-1/2 -translate-y-1/2 left-0',\n center: 'top-1/2 -translate-y-1/2 left-1/2 -translate-x-1/2',\n 'center-right': 'top-1/2 -translate-y-1/2 right-0',\n 'bottom-left': 'bottom-0 left-0',\n 'bottom-center': 'bottom-0 left-1/2 -translate-x-1/2',\n 'bottom-right': 'bottom-0 right-0',\n },\n isOutline: {\n enabled: '',\n disabled: '',\n },\n isPill: {\n enabled: '',\n disabled: '',\n },\n isRounded: {\n enabled: 'rounded',\n disabled: 'rounded-full',\n },\n size: {\n xs: 'w-2 h-2 text-xs',\n sm: 'w-2.5 h-2.5 text-sm',\n md: 'w-3 h-3 text-sm',\n lg: 'w-3.5 h-3.5 text-sm',\n xl: 'w-6 h-6 text-sm',\n },\n },\n});\n\n/**\n * Generated class definition for `IndicatorComponent`\n */\nexport type indicatorClass = FlowbiteClass;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}