flowbite-angular 1.2.0 → 1.3.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.
- package/badge/badge.component.d.ts +75 -1
- package/badge/badge.theme.d.ts +9 -1
- package/fesm2022/flowbite-angular-accordion.mjs +1 -0
- package/fesm2022/flowbite-angular-accordion.mjs.map +1 -1
- package/fesm2022/flowbite-angular-alert.mjs +1 -0
- package/fesm2022/flowbite-angular-alert.mjs.map +1 -1
- package/fesm2022/flowbite-angular-badge.mjs +117 -13
- package/fesm2022/flowbite-angular-badge.mjs.map +1 -1
- package/fesm2022/flowbite-angular-breadcrumb.mjs +1 -0
- package/fesm2022/flowbite-angular-breadcrumb.mjs.map +1 -1
- package/fesm2022/flowbite-angular-button.mjs +1 -0
- package/fesm2022/flowbite-angular-button.mjs.map +1 -1
- package/fesm2022/flowbite-angular-dark-theme-toggle.mjs +1 -0
- package/fesm2022/flowbite-angular-dark-theme-toggle.mjs.map +1 -1
- package/fesm2022/flowbite-angular-dropdown.mjs +1 -0
- package/fesm2022/flowbite-angular-dropdown.mjs.map +1 -1
- package/fesm2022/flowbite-angular-icon.mjs +1 -1
- package/fesm2022/flowbite-angular-icon.mjs.map +1 -1
- package/fesm2022/flowbite-angular-modal.mjs +1 -0
- package/fesm2022/flowbite-angular-modal.mjs.map +1 -1
- package/fesm2022/flowbite-angular-navbar.mjs +5 -4
- package/fesm2022/flowbite-angular-navbar.mjs.map +1 -1
- package/fesm2022/flowbite-angular-scroll-top.mjs +1 -0
- package/fesm2022/flowbite-angular-scroll-top.mjs.map +1 -1
- package/fesm2022/flowbite-angular-sidebar.mjs +4 -1
- package/fesm2022/flowbite-angular-sidebar.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowbite-angular-dark-theme-toggle.mjs","sources":["../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.theme.service.ts","../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.component.ts","../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.theme.ts","../../../../libs/flowbite-angular/dark-theme-toggle/flowbite-angular-dark-theme-toggle.ts"],"sourcesContent":["import type {\n DarkThemeToggleClass,\n DarkThemeToggleProperties,\n DarkThemeToggleTheme,\n} from './dark-theme-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 `DarkThemeToggleTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN = new InjectionToken<DarkThemeToggleTheme>(\n 'FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DarkThemeToggleThemeService\n implements FlowbiteThemeService<DarkThemeToggleProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN);\n\n public getClasses(properties: DarkThemeToggleProperties): DarkThemeToggleClass {\n const theme: DarkThemeToggleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DarkThemeToggleClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DarkThemeToggleClass, DarkThemeToggleTheme } from './dark-theme-toggle.theme';\nimport { DarkThemeToggleThemeService } from './dark-theme-toggle.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { FlowbiteThemeDirective } from 'flowbite-angular/theme';\nimport { MOON_SVG_ICON, SUN_SVG_ICON } from 'flowbite-angular/utils';\n\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_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DarkThemeToggleTheme>\n>('FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const darkThemeToggleDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * Use to toggle light/dark mode accross the site\n */\n@Component({\n imports: [IconComponent],\n selector: 'flowbite-dark-theme-toggle',\n template: `\n <flowbite-icon\n svgIcon=\"flowbite-angular:moon\"\n class=\"h-5 w-5 block dark:hidden\" />\n <flowbite-icon\n svgIcon=\"flowbite-angular:sun\"\n class=\"h-5 w-5 hidden dark:block\" />\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DarkThemeToggleComponent extends BaseComponent<DarkThemeToggleClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DarkThemeToggleThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * `FlowbiteThemeDirective` directive\n */\n public readonly themeDirective = inject(FlowbiteThemeDirective);\n\n //#region properties\n /**\n * Set the custom style for this dark-theme-toggle\n */\n public customStyle = model(inject(FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DarkThemeToggleClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'sun',\n this.domSanitizer.bypassSecurityTrustHtml(SUN_SVG_ICON)\n );\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'moon',\n this.domSanitizer.bypassSecurityTrustHtml(MOON_SVG_ICON)\n );\n }\n //#endregion\n\n /**\n * Toggle between dark and light mode\n */\n public onClick() {\n this.themeDirective.toggleTheme();\n }\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DarkThemeToggleComponent`\n */\nexport interface DarkThemeToggleProperties {\n customStyle: DeepPartial<DarkThemeToggleTheme>;\n}\n\n/**\n * Theme definition for `DarkThemeToggleComponent`\n */\nexport interface DarkThemeToggleTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DarkThemeToggleComponent`\n */\nexport const darkThemeToggleTheme: DarkThemeToggleTheme = createTheme({\n root: {\n base: 'cursor-pointer rounded-lg p-2.5 text-sm text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-700 dark:focus:ring-gray-700',\n },\n});\n\n/**\n * Generated class definition for `DarkThemeToggleComponent`\n */\nexport type DarkThemeToggleClass = FlowbiteClass;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAYA;;;;;;;AAOG;MACU,sCAAsC,GAAG,IAAI,cAAc,CACtE,wCAAwC;MAM7B,2BAA2B,CAAA;AAHxC,IAAA,WAAA,GAAA;AAMmB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,sCAAsC,CAAC;AAW5E;AATQ,IAAA,UAAU,CAAC,UAAqC,EAAA;AACrD,QAAA,MAAM,KAAK,GAAyB,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;AAEtF,QAAA,MAAM,MAAM,GAAyB;YACnC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACpC;AAED,QAAA,OAAO,MAAM;;8GAZJ,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cAF1B,MAAM,EAAA,CAAA,CAAA;;2FAEP,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAHvC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCNY,qDAAqD,GAAG,IAAI,cAAc,CAErF,uDAAuD;AAElD,MAAM,mCAAmC,GAAG,wBAAwB,CAAC;AAC1E,IAAA;AACE,QAAA,OAAO,EAAE,qDAAqD;AAC9D,QAAA,QAAQ,EAAE,EAAE;AACb,KAAA;AACF,CAAA;AAED;;AAEG;
|
|
1
|
+
{"version":3,"file":"flowbite-angular-dark-theme-toggle.mjs","sources":["../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.theme.service.ts","../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.component.ts","../../../../libs/flowbite-angular/dark-theme-toggle/dark-theme-toggle.theme.ts","../../../../libs/flowbite-angular/dark-theme-toggle/flowbite-angular-dark-theme-toggle.ts"],"sourcesContent":["import type {\n DarkThemeToggleClass,\n DarkThemeToggleProperties,\n DarkThemeToggleTheme,\n} from './dark-theme-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 `DarkThemeToggleTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN = new InjectionToken<DarkThemeToggleTheme>(\n 'FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DarkThemeToggleThemeService\n implements FlowbiteThemeService<DarkThemeToggleProperties>\n{\n private readonly baseTheme = inject(FLOWBITE_DARK_THEME_TOGGLE_THEME_TOKEN);\n\n public getClasses(properties: DarkThemeToggleProperties): DarkThemeToggleClass {\n const theme: DarkThemeToggleTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: DarkThemeToggleClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { DarkThemeToggleClass, DarkThemeToggleTheme } from './dark-theme-toggle.theme';\nimport { DarkThemeToggleThemeService } from './dark-theme-toggle.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { FlowbiteThemeDirective } from 'flowbite-angular/theme';\nimport { MOON_SVG_ICON, SUN_SVG_ICON } from 'flowbite-angular/utils';\n\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_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<DarkThemeToggleTheme>\n>('FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const darkThemeToggleDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * Use to toggle light/dark mode accross the site\n */\n@Component({\n standalone: true,\n imports: [IconComponent],\n selector: 'flowbite-dark-theme-toggle',\n template: `\n <flowbite-icon\n svgIcon=\"flowbite-angular:moon\"\n class=\"h-5 w-5 block dark:hidden\" />\n <flowbite-icon\n svgIcon=\"flowbite-angular:sun\"\n class=\"h-5 w-5 hidden dark:block\" />\n `,\n host: {\n '(click)': 'onClick()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DarkThemeToggleComponent extends BaseComponent<DarkThemeToggleClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(DarkThemeToggleThemeService);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n /**\n * `FlowbiteThemeDirective` directive\n */\n public readonly themeDirective = inject(FlowbiteThemeDirective);\n\n //#region properties\n /**\n * Set the custom style for this dark-theme-toggle\n */\n public customStyle = model(inject(FLOWBITE_DARK_THEME_TOGGLE_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): DarkThemeToggleClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'sun',\n this.domSanitizer.bypassSecurityTrustHtml(SUN_SVG_ICON)\n );\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'moon',\n this.domSanitizer.bypassSecurityTrustHtml(MOON_SVG_ICON)\n );\n }\n //#endregion\n\n /**\n * Toggle between dark and light mode\n */\n public onClick() {\n this.themeDirective.toggleTheme();\n }\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `DarkThemeToggleComponent`\n */\nexport interface DarkThemeToggleProperties {\n customStyle: DeepPartial<DarkThemeToggleTheme>;\n}\n\n/**\n * Theme definition for `DarkThemeToggleComponent`\n */\nexport interface DarkThemeToggleTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `DarkThemeToggleComponent`\n */\nexport const darkThemeToggleTheme: DarkThemeToggleTheme = createTheme({\n root: {\n base: 'cursor-pointer rounded-lg p-2.5 text-sm text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-700 dark:focus:ring-gray-700',\n },\n});\n\n/**\n * Generated class definition for `DarkThemeToggleComponent`\n */\nexport type DarkThemeToggleClass = FlowbiteClass;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -420,6 +420,7 @@ class DropdownComponent extends BaseComponent {
|
|
|
420
420
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: DropdownComponent, decorators: [{
|
|
421
421
|
type: Component,
|
|
422
422
|
args: [{
|
|
423
|
+
standalone: true,
|
|
423
424
|
imports: [IconComponent],
|
|
424
425
|
selector: 'flowbite-dropdown',
|
|
425
426
|
template: `
|
|
@@ -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 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 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
|
+
{"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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"}
|
|
@@ -238,8 +238,8 @@ class IconComponent extends BaseComponent {
|
|
|
238
238
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: IconComponent, decorators: [{
|
|
239
239
|
type: Component,
|
|
240
240
|
args: [{
|
|
241
|
-
selector: 'flowbite-icon',
|
|
242
241
|
standalone: true,
|
|
242
|
+
selector: 'flowbite-icon',
|
|
243
243
|
template: `<ng-content />`,
|
|
244
244
|
encapsulation: ViewEncapsulation.None,
|
|
245
245
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowbite-angular-icon.mjs","sources":["../../../../libs/flowbite-angular/icon/trusted-types.ts","../../../../libs/flowbite-angular/icon/icon-registry.ts","../../../../libs/flowbite-angular/icon/icon.component.ts","../../../../libs/flowbite-angular/icon/flowbite-angular-icon.ts"],"sourcesContent":["/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nexport declare interface TrustedHTML {\n __brand__: 'TrustedHTML';\n}\n\nexport declare interface TrustedTypePolicyFactory {\n createPolicy(\n policyName: string,\n policyOptions: {\n createHTML?: (input: string) => string;\n }\n ): TrustedTypePolicy;\n}\n\nexport declare interface TrustedTypePolicy {\n createHTML(input: string): TrustedHTML;\n}\n\nlet policy: TrustedTypePolicy | undefined;\n\nfunction getPolicy(): TrustedTypePolicy | undefined {\n if (!policy) {\n if (typeof window !== 'undefined') {\n const tWindow = window as unknown as { trustedTypes?: TrustedTypePolicyFactory };\n\n if (tWindow.trustedTypes !== undefined) {\n policy = tWindow.trustedTypes.createPolicy('angular#components', {\n createHTML: (s: string) => s,\n });\n }\n }\n }\n\n return policy;\n}\n\nexport function trustedHTMLFromString(raw: string): TrustedHTML {\n return getPolicy()?.createHTML(raw) || (raw as unknown as TrustedHTML);\n}\n","/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nimport { trustedHTMLFromString } from './trusted-types';\nimport type { TrustedHTML } from './trusted-types';\n\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport type { OnDestroy } from '@angular/core';\nimport { inject, Injectable, PLATFORM_ID, SecurityContext } from '@angular/core';\nimport type { SafeHtml } from '@angular/platform-browser';\nimport { DomSanitizer, type SafeResourceUrl } from '@angular/platform-browser';\nimport { finalize, map, of, share, tap, throwError, type Observable } from 'rxjs';\n\nexport function getSvgIconFromNamedError(iconName: string): Error {\n return Error(`Unable to find icon with name ${iconName}`);\n}\n\nexport function getSvgIconFailedToSanitizeRawError(raw: SafeHtml): Error {\n return Error(\n `The raw provided to IconRegistry was not trusted as safe HTML by ANGULAR's DOMSanitizer. Attempted raw was : ${raw as string}`\n );\n}\n\nexport function getSvgIconFailedToSanitizeUrlError(url: SafeResourceUrl): Error {\n return Error(\n `The URL provided to IconRegistry was not trusted as a resource URL via Angular's DOMSanitizer. Attempted URL was : ${url as string}`\n );\n}\n\nexport function getSvgIconNoHttpClientProvidedError(): Error {\n return Error(\n `Could not fid HttpClient provider for use with flowbite-angular icons. Please include the HttpClientModule from @angular/common/http in your app imports`\n );\n}\n\nexport interface SvgIconOptions {\n viewBox: string;\n}\n\nexport class SvgIconConfig {\n svgElement: SVGElement | null = null;\n\n constructor(\n public url: SafeResourceUrl,\n public svgText: TrustedHTML | undefined,\n public options?: SvgIconOptions\n ) {}\n}\n\ntype LoadedSvgIconConfig = SvgIconConfig & { svgText: TrustedHTML };\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IconRegistry implements OnDestroy {\n private platformId = inject(PLATFORM_ID);\n\n private _httpClient = inject(HttpClient, { optional: true });\n private _sanitizer = inject(DomSanitizer);\n private _document = inject(DOCUMENT);\n\n private _svgIconConfig = new Map<string, SvgIconConfig>();\n private _cachedSvgIconByUrl = new Map<string, SVGElement>();\n private _inProgressSvgIconFetch = new Map<string, Observable<TrustedHTML>>();\n\n public addSvgIcon(iconName: string, url: SafeResourceUrl, options?: SvgIconOptions): this {\n return this.addSvgIconInNamespace('', iconName, url, options);\n }\n\n public addRawSvgIcon(iconName: string, raw: SafeHtml, options?: SvgIconOptions): this {\n return this.addRawSvgIconInNamepsace('', iconName, raw, options);\n }\n\n public addSvgIconInNamespace(\n namespace: string,\n iconName: string,\n url: SafeResourceUrl,\n options?: SvgIconOptions\n ): this {\n return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig(url, undefined, options));\n }\n\n public addRawSvgIconInNamepsace(\n namespace: string,\n iconName: string,\n raw: SafeHtml,\n options?: SvgIconOptions\n ): this {\n const cleanRaw = this._sanitizer.sanitize(SecurityContext.HTML, raw);\n\n if (!cleanRaw) {\n throw getSvgIconFailedToSanitizeRawError(raw);\n }\n\n const trustedRaw = trustedHTMLFromString(cleanRaw);\n return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig('', trustedRaw, options));\n }\n\n public getSvgIconFromUrl(safeUrl: SafeResourceUrl): Observable<SVGElement> {\n const url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, safeUrl);\n\n if (!url) {\n throw getSvgIconFailedToSanitizeUrlError(safeUrl);\n }\n\n const cachedIcon = this._cachedSvgIconByUrl.get(url);\n\n if (cachedIcon) {\n return of(cloneSvg(cachedIcon));\n }\n\n return this._loadSvgIconFromConfig(new SvgIconConfig(safeUrl, undefined));\n }\n\n public getSvgIconFromName(iconName: string, namespace: string): Observable<SVGElement> {\n const key = iconKey(namespace, iconName);\n const config = this._svgIconConfig.get(key);\n\n if (config) {\n return this._getSvgIconFromConfig(config);\n }\n\n return throwError(() => getSvgIconFromNamedError(key));\n }\n\n public ngOnDestroy(): void {\n this._svgIconConfig.clear();\n this._cachedSvgIconByUrl.clear();\n }\n\n private _addSvgIconConfig(namespace: string, iconName: string, config: SvgIconConfig): this {\n this._svgIconConfig.set(iconKey(namespace, iconName), config);\n\n return this;\n }\n\n private _getSvgIconFromConfig(config: SvgIconConfig): Observable<SVGElement> {\n if (config.svgText) {\n return of(cloneSvg(this._svgElementFromConfig(config as LoadedSvgIconConfig)));\n } else {\n return this._loadSvgIconFromConfig(config).pipe(map((svg) => cloneSvg(svg)));\n }\n }\n\n private _loadSvgIconFromConfig(config: SvgIconConfig): Observable<SVGElement> {\n return this._fetchIcon(config).pipe(\n tap((svgText) => (config.svgText = svgText)),\n map(() => this._svgElementFromConfig(config as LoadedSvgIconConfig))\n );\n }\n\n private _setSvgAttributes(svg: SVGElement, options?: SvgIconOptions): SVGElement {\n svg.setAttribute('fit', '');\n svg.setAttribute('height', '100%');\n svg.setAttribute('width', '100%');\n svg.setAttribute('preserveAspectRatio', 'xMidYMid meet');\n svg.setAttribute('focusable', 'false');\n\n if (options?.viewBox) {\n svg.setAttribute('viewBox', options.viewBox);\n }\n\n return svg;\n }\n\n private _svgElementFromConfig(config: LoadedSvgIconConfig): SVGElement {\n if (!config.svgElement) {\n const svg = this._svgElementFromString(config.svgText);\n\n this._setSvgAttributes(svg, config.options);\n config.svgElement = svg;\n }\n\n return config.svgElement;\n }\n\n private _svgElementFromString(str: TrustedHTML): SVGElement {\n const div = this._document.createElement('div');\n div.innerHTML = str as unknown as string;\n\n const svg = div.querySelector('svg') as SVGElement;\n\n return svg;\n }\n\n private _fetchIcon(iconConfig: SvgIconConfig): Observable<TrustedHTML> {\n if (isPlatformBrowser(this.platformId)) {\n if (!this._httpClient) {\n throw getSvgIconNoHttpClientProvidedError();\n }\n\n const url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, iconConfig.url);\n\n if (!url) {\n throw getSvgIconFailedToSanitizeUrlError(iconConfig.url);\n }\n\n const inProgressFetch = this._inProgressSvgIconFetch.get(url);\n\n if (inProgressFetch) {\n return inProgressFetch;\n }\n\n const req = this._httpClient.get(url, { responseType: 'text' }).pipe(\n map((svg) => {\n return trustedHTMLFromString(svg);\n }),\n finalize(() => this._inProgressSvgIconFetch.delete(url)),\n share()\n );\n\n this._inProgressSvgIconFetch.set(url, req);\n return req;\n } else {\n return of(trustedHTMLFromString('<svg></svg>'));\n }\n }\n}\n\nfunction cloneSvg(svg: SVGElement): SVGElement {\n return svg.cloneNode(true) as SVGElement;\n}\n\nfunction iconKey(namespace: string, iconName: string): string {\n return `${namespace}:${iconName}`;\n}\n","/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nimport { IconRegistry } from './icon-registry';\n\nimport type { FlowbiteClass } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n ElementRef,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { take } from 'rxjs';\n\n@Component({\n selector: 'flowbite-icon',\n standalone: true,\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconComponent extends BaseComponent<FlowbiteClass> implements OnInit {\n public _elementRef = inject<ElementRef<HTMLElement>>(ElementRef<HTMLElement>);\n public _iconRegistry = inject(IconRegistry);\n\n public svgIcon = model.required<string>();\n\n public override init(): void {\n effect(\n () => {\n this._updateSvgIcon();\n },\n { injector: this.injector }\n );\n }\n\n public override fetchClass(): FlowbiteClass {\n return { rootClass: '' };\n }\n\n private _splitIconName(iconName: string): [string, string] {\n if (!iconName) {\n return ['', ''];\n }\n\n const parts = iconName.split(':');\n switch (parts.length) {\n case 1:\n return ['', parts[0]];\n case 2:\n return <[string, string]>parts;\n default:\n throw Error(`Invalid icon name: \"${iconName}\"`);\n }\n }\n\n private _updateSvgIcon() {\n const [namespace, iconName] = this._splitIconName(this.svgIcon());\n\n this._iconRegistry\n .getSvgIconFromName(iconName, namespace)\n .pipe(take(1))\n .subscribe((svg) => this._setSvgElement(svg));\n }\n\n private _setSvgElement(svg: SVGElement) {\n this._clearSvgElements();\n\n this._elementRef.nativeElement.appendChild(svg);\n }\n\n private _clearSvgElements() {\n const layoutElement: HTMLElement = this._elementRef.nativeElement;\n let childCount = layoutElement.childNodes.length;\n\n while (childCount--) {\n const child = layoutElement.childNodes[childCount];\n\n if (child.nodeType !== 1 || child.nodeName.toLowerCase() === 'svg') {\n child.remove();\n }\n }\n }\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-icon.mjs","sources":["../../../../libs/flowbite-angular/icon/trusted-types.ts","../../../../libs/flowbite-angular/icon/icon-registry.ts","../../../../libs/flowbite-angular/icon/icon.component.ts","../../../../libs/flowbite-angular/icon/flowbite-angular-icon.ts"],"sourcesContent":["/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nexport declare interface TrustedHTML {\n __brand__: 'TrustedHTML';\n}\n\nexport declare interface TrustedTypePolicyFactory {\n createPolicy(\n policyName: string,\n policyOptions: {\n createHTML?: (input: string) => string;\n }\n ): TrustedTypePolicy;\n}\n\nexport declare interface TrustedTypePolicy {\n createHTML(input: string): TrustedHTML;\n}\n\nlet policy: TrustedTypePolicy | undefined;\n\nfunction getPolicy(): TrustedTypePolicy | undefined {\n if (!policy) {\n if (typeof window !== 'undefined') {\n const tWindow = window as unknown as { trustedTypes?: TrustedTypePolicyFactory };\n\n if (tWindow.trustedTypes !== undefined) {\n policy = tWindow.trustedTypes.createPolicy('angular#components', {\n createHTML: (s: string) => s,\n });\n }\n }\n }\n\n return policy;\n}\n\nexport function trustedHTMLFromString(raw: string): TrustedHTML {\n return getPolicy()?.createHTML(raw) || (raw as unknown as TrustedHTML);\n}\n","/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nimport { trustedHTMLFromString } from './trusted-types';\nimport type { TrustedHTML } from './trusted-types';\n\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport type { OnDestroy } from '@angular/core';\nimport { inject, Injectable, PLATFORM_ID, SecurityContext } from '@angular/core';\nimport type { SafeHtml } from '@angular/platform-browser';\nimport { DomSanitizer, type SafeResourceUrl } from '@angular/platform-browser';\nimport { finalize, map, of, share, tap, throwError, type Observable } from 'rxjs';\n\nexport function getSvgIconFromNamedError(iconName: string): Error {\n return Error(`Unable to find icon with name ${iconName}`);\n}\n\nexport function getSvgIconFailedToSanitizeRawError(raw: SafeHtml): Error {\n return Error(\n `The raw provided to IconRegistry was not trusted as safe HTML by ANGULAR's DOMSanitizer. Attempted raw was : ${raw as string}`\n );\n}\n\nexport function getSvgIconFailedToSanitizeUrlError(url: SafeResourceUrl): Error {\n return Error(\n `The URL provided to IconRegistry was not trusted as a resource URL via Angular's DOMSanitizer. Attempted URL was : ${url as string}`\n );\n}\n\nexport function getSvgIconNoHttpClientProvidedError(): Error {\n return Error(\n `Could not fid HttpClient provider for use with flowbite-angular icons. Please include the HttpClientModule from @angular/common/http in your app imports`\n );\n}\n\nexport interface SvgIconOptions {\n viewBox: string;\n}\n\nexport class SvgIconConfig {\n svgElement: SVGElement | null = null;\n\n constructor(\n public url: SafeResourceUrl,\n public svgText: TrustedHTML | undefined,\n public options?: SvgIconOptions\n ) {}\n}\n\ntype LoadedSvgIconConfig = SvgIconConfig & { svgText: TrustedHTML };\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IconRegistry implements OnDestroy {\n private platformId = inject(PLATFORM_ID);\n\n private _httpClient = inject(HttpClient, { optional: true });\n private _sanitizer = inject(DomSanitizer);\n private _document = inject(DOCUMENT);\n\n private _svgIconConfig = new Map<string, SvgIconConfig>();\n private _cachedSvgIconByUrl = new Map<string, SVGElement>();\n private _inProgressSvgIconFetch = new Map<string, Observable<TrustedHTML>>();\n\n public addSvgIcon(iconName: string, url: SafeResourceUrl, options?: SvgIconOptions): this {\n return this.addSvgIconInNamespace('', iconName, url, options);\n }\n\n public addRawSvgIcon(iconName: string, raw: SafeHtml, options?: SvgIconOptions): this {\n return this.addRawSvgIconInNamepsace('', iconName, raw, options);\n }\n\n public addSvgIconInNamespace(\n namespace: string,\n iconName: string,\n url: SafeResourceUrl,\n options?: SvgIconOptions\n ): this {\n return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig(url, undefined, options));\n }\n\n public addRawSvgIconInNamepsace(\n namespace: string,\n iconName: string,\n raw: SafeHtml,\n options?: SvgIconOptions\n ): this {\n const cleanRaw = this._sanitizer.sanitize(SecurityContext.HTML, raw);\n\n if (!cleanRaw) {\n throw getSvgIconFailedToSanitizeRawError(raw);\n }\n\n const trustedRaw = trustedHTMLFromString(cleanRaw);\n return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig('', trustedRaw, options));\n }\n\n public getSvgIconFromUrl(safeUrl: SafeResourceUrl): Observable<SVGElement> {\n const url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, safeUrl);\n\n if (!url) {\n throw getSvgIconFailedToSanitizeUrlError(safeUrl);\n }\n\n const cachedIcon = this._cachedSvgIconByUrl.get(url);\n\n if (cachedIcon) {\n return of(cloneSvg(cachedIcon));\n }\n\n return this._loadSvgIconFromConfig(new SvgIconConfig(safeUrl, undefined));\n }\n\n public getSvgIconFromName(iconName: string, namespace: string): Observable<SVGElement> {\n const key = iconKey(namespace, iconName);\n const config = this._svgIconConfig.get(key);\n\n if (config) {\n return this._getSvgIconFromConfig(config);\n }\n\n return throwError(() => getSvgIconFromNamedError(key));\n }\n\n public ngOnDestroy(): void {\n this._svgIconConfig.clear();\n this._cachedSvgIconByUrl.clear();\n }\n\n private _addSvgIconConfig(namespace: string, iconName: string, config: SvgIconConfig): this {\n this._svgIconConfig.set(iconKey(namespace, iconName), config);\n\n return this;\n }\n\n private _getSvgIconFromConfig(config: SvgIconConfig): Observable<SVGElement> {\n if (config.svgText) {\n return of(cloneSvg(this._svgElementFromConfig(config as LoadedSvgIconConfig)));\n } else {\n return this._loadSvgIconFromConfig(config).pipe(map((svg) => cloneSvg(svg)));\n }\n }\n\n private _loadSvgIconFromConfig(config: SvgIconConfig): Observable<SVGElement> {\n return this._fetchIcon(config).pipe(\n tap((svgText) => (config.svgText = svgText)),\n map(() => this._svgElementFromConfig(config as LoadedSvgIconConfig))\n );\n }\n\n private _setSvgAttributes(svg: SVGElement, options?: SvgIconOptions): SVGElement {\n svg.setAttribute('fit', '');\n svg.setAttribute('height', '100%');\n svg.setAttribute('width', '100%');\n svg.setAttribute('preserveAspectRatio', 'xMidYMid meet');\n svg.setAttribute('focusable', 'false');\n\n if (options?.viewBox) {\n svg.setAttribute('viewBox', options.viewBox);\n }\n\n return svg;\n }\n\n private _svgElementFromConfig(config: LoadedSvgIconConfig): SVGElement {\n if (!config.svgElement) {\n const svg = this._svgElementFromString(config.svgText);\n\n this._setSvgAttributes(svg, config.options);\n config.svgElement = svg;\n }\n\n return config.svgElement;\n }\n\n private _svgElementFromString(str: TrustedHTML): SVGElement {\n const div = this._document.createElement('div');\n div.innerHTML = str as unknown as string;\n\n const svg = div.querySelector('svg') as SVGElement;\n\n return svg;\n }\n\n private _fetchIcon(iconConfig: SvgIconConfig): Observable<TrustedHTML> {\n if (isPlatformBrowser(this.platformId)) {\n if (!this._httpClient) {\n throw getSvgIconNoHttpClientProvidedError();\n }\n\n const url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, iconConfig.url);\n\n if (!url) {\n throw getSvgIconFailedToSanitizeUrlError(iconConfig.url);\n }\n\n const inProgressFetch = this._inProgressSvgIconFetch.get(url);\n\n if (inProgressFetch) {\n return inProgressFetch;\n }\n\n const req = this._httpClient.get(url, { responseType: 'text' }).pipe(\n map((svg) => {\n return trustedHTMLFromString(svg);\n }),\n finalize(() => this._inProgressSvgIconFetch.delete(url)),\n share()\n );\n\n this._inProgressSvgIconFetch.set(url, req);\n return req;\n } else {\n return of(trustedHTMLFromString('<svg></svg>'));\n }\n }\n}\n\nfunction cloneSvg(svg: SVGElement): SVGElement {\n return svg.cloneNode(true) as SVGElement;\n}\n\nfunction iconKey(namespace: string, iconName: string): string {\n return `${namespace}:${iconName}`;\n}\n","/**\n * Thanks to Angular Material for Icon part of this library : https://github.com/angular/components\n */\n\nimport { IconRegistry } from './icon-registry';\n\nimport type { FlowbiteClass } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\n\nimport type { OnInit } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n ElementRef,\n inject,\n model,\n ViewEncapsulation,\n} from '@angular/core';\nimport { take } from 'rxjs';\n\n@Component({\n standalone: true,\n selector: 'flowbite-icon',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconComponent extends BaseComponent<FlowbiteClass> implements OnInit {\n public _elementRef = inject<ElementRef<HTMLElement>>(ElementRef<HTMLElement>);\n public _iconRegistry = inject(IconRegistry);\n\n public svgIcon = model.required<string>();\n\n public override init(): void {\n effect(\n () => {\n this._updateSvgIcon();\n },\n { injector: this.injector }\n );\n }\n\n public override fetchClass(): FlowbiteClass {\n return { rootClass: '' };\n }\n\n private _splitIconName(iconName: string): [string, string] {\n if (!iconName) {\n return ['', ''];\n }\n\n const parts = iconName.split(':');\n switch (parts.length) {\n case 1:\n return ['', parts[0]];\n case 2:\n return <[string, string]>parts;\n default:\n throw Error(`Invalid icon name: \"${iconName}\"`);\n }\n }\n\n private _updateSvgIcon() {\n const [namespace, iconName] = this._splitIconName(this.svgIcon());\n\n this._iconRegistry\n .getSvgIconFromName(iconName, namespace)\n .pipe(take(1))\n .subscribe((svg) => this._setSvgElement(svg));\n }\n\n private _setSvgElement(svg: SVGElement) {\n this._clearSvgElements();\n\n this._elementRef.nativeElement.appendChild(svg);\n }\n\n private _clearSvgElements() {\n const layoutElement: HTMLElement = this._elementRef.nativeElement;\n let childCount = layoutElement.childNodes.length;\n\n while (childCount--) {\n const child = layoutElement.childNodes[childCount];\n\n if (child.nodeType !== 1 || child.nodeName.toLowerCase() === 'svg') {\n child.remove();\n }\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -261,6 +261,7 @@ class ModalHeaderComponent extends BaseComponent {
|
|
|
261
261
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: ModalHeaderComponent, decorators: [{
|
|
262
262
|
type: Component,
|
|
263
263
|
args: [{
|
|
264
|
+
standalone: true,
|
|
264
265
|
imports: [IconComponent],
|
|
265
266
|
selector: 'flowbite-modal-header',
|
|
266
267
|
template: `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowbite-angular-modal.mjs","sources":["../../../../libs/flowbite-angular/modal/modal-body.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-body.component.ts","../../../../libs/flowbite-angular/modal/modal-footer.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-footer.component.ts","../../../../libs/flowbite-angular/modal/modal-header.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-header.component.ts","../../../../libs/flowbite-angular/modal/modal.theme.service.ts","../../../../libs/flowbite-angular/modal/modal.component.ts","../../../../libs/flowbite-angular/modal/modal.theme.ts","../../../../libs/flowbite-angular/modal/modal-header.theme.ts","../../../../libs/flowbite-angular/modal/modal-body.theme.ts","../../../../libs/flowbite-angular/modal/modal-footer.theme.ts","../../../../libs/flowbite-angular/modal/flowbite-angular-modal.ts"],"sourcesContent":["import type { ModalBodyClass, ModalBodyProperties, ModalBodyTheme } from './modal-body.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 `ModalBodyTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_BODY_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_BODY_THEME_TOKEN = new InjectionToken<ModalBodyTheme>(\n 'FLOWBITE_MODAL_BODY_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalBodyThemeService implements FlowbiteThemeService<ModalBodyProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_BODY_THEME_TOKEN);\n\n public getClasses(properties: ModalBodyProperties): ModalBodyClass {\n const theme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalBodyClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { ModalBodyClass, ModalBodyTheme } from './modal-body.theme';\nimport { ModalBodyThemeService } from './modal-body.theme.service';\nimport { ModalComponent } from './modal.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_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalBodyTheme>\n>('FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalBodyDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal-body',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalBodyComponent extends BaseComponent<ModalBodyClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalBodyThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n\n //#region properties\n /**\n * Set the custom style for this modal body\n */\n public customStyle = model(inject(FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalBodyClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n ModalFooterClass,\n ModalFooterProperties,\n ModalFooterTheme,\n} from './modal-footer.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 `ModalFooterTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_FOOTER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_FOOTER_THEME_TOKEN = new InjectionToken<ModalFooterTheme>(\n 'FLOWBITE_MODAL_FOOTER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalFooterThemeService implements FlowbiteThemeService<ModalFooterProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_FOOTER_THEME_TOKEN);\n\n public getClasses(properties: ModalFooterProperties): ModalFooterClass {\n const theme: ModalFooterTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalFooterClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { ModalFooterClass, ModalFooterTheme } from './modal-footer.theme';\nimport { ModalFooterThemeService } from './modal-footer.theme.service';\nimport { ModalComponent } from './modal.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_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalFooterTheme>\n>('FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalFooterDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal-footer',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalFooterComponent extends BaseComponent<ModalFooterClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalFooterThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n\n //#region properties\n /**\n * Set the custom style for this modal footer\n */\n public customStyle = model(inject(FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalFooterClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n ModalHeaderClass,\n ModalHeaderProperties,\n ModalHeaderTheme,\n} from './modal-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 `ModalHeaderTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_HEADER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_HEADER_THEME_TOKEN = new InjectionToken<ModalHeaderTheme>(\n 'FLOWBITE_MODAL_HEADER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalHeaderThemeService implements FlowbiteThemeService<ModalHeaderProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_HEADER_THEME_TOKEN);\n\n public getClasses(properties: ModalHeaderProperties): ModalHeaderClass {\n const theme: ModalHeaderTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalHeaderClass = {\n rootClass: twMerge(theme.root.base),\n modalHeaderTitleClass: twMerge(theme.title.base),\n modalHeaderButtonClass: twMerge(theme.button.base),\n };\n\n return output;\n }\n}\n","import type { ModalHeaderClass, ModalHeaderTheme } from './modal-header.theme';\nimport { ModalHeaderThemeService } from './modal-header.theme.service';\nimport { ModalComponent } from './modal.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CLOSE_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_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalHeaderTheme>\n>('FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalHeaderDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n imports: [IconComponent],\n selector: 'flowbite-modal-header',\n template: `\n <h3 [class]=\"contentClasses().modalHeaderTitleClass\">\n <ng-content />\n </h3>\n <button\n type=\"button\"\n [class]=\"contentClasses().modalHeaderButtonClass\"\n data-modal-hide=\"medium-modal\"\n (click)=\"modalComponent.close()\">\n <flowbite-icon\n svgIcon=\"flowbite-angular:close\"\n class=\"w-5 h-5\" />\n <span class=\"sr-only\">Close modal</span>\n </button>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalHeaderComponent extends BaseComponent<ModalHeaderClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly stateService = inject(ModalHeaderThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n\n //#region properties\n /**\n * Set the custom style for this modal header\n */\n public customStyle = model(inject(FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalHeaderClass {\n return this.stateService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'close',\n this.domSanitizer.bypassSecurityTrustHtml(CLOSE_SVG_ICON)\n );\n }\n //#endregion\n}\n","import type { ModalClass, ModalProperties, ModalTheme } from './modal.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 `ModalTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_THEME_TOKEN = new InjectionToken<ModalTheme>(\n 'FLOWBITE_MODAL_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalThemeService implements FlowbiteThemeService<ModalProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_THEME_TOKEN);\n\n public getClasses(properties: ModalProperties): ModalClass {\n const theme: ModalTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalClass = {\n rootClass: twMerge(theme.root.base),\n modalWrapperClass: twMerge(theme.wrapper.base, theme.wrapper.position[properties.position]),\n modalContainerClass: twMerge(theme.container.base, theme.container.size[properties.size]),\n modalContentClass: twMerge(theme.content.base),\n };\n\n return output;\n }\n}\n","import { ModalBodyComponent } from './modal-body.component';\nimport { ModalFooterComponent } from './modal-footer.component';\nimport { ModalHeaderComponent } from './modal-header.component';\nimport type { ModalClass, ModalPositions, ModalSizes, ModalTheme } from './modal.theme';\nimport { ModalThemeService } from './modal.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport type { EmbeddedViewRef, OnDestroy } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n TemplateRef,\n viewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NavigationStart, Router } from '@angular/router';\nimport { filter, Subject, takeUntil } from 'rxjs';\n\nexport const FLOWBITE_MODAL_SIZE_DEFAULT_VALUE = new InjectionToken<keyof ModalSizes>(\n 'FLOWBITE_MODAL_SIZE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_POSITION_DEFAULT_VALUE = new InjectionToken<keyof ModalPositions>(\n 'FLOWBITE_MODAL_POSITION_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalTheme>\n>('FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_SIZE_DEFAULT_VALUE,\n useValue: 'md',\n },\n {\n provide: FLOWBITE_MODAL_POSITION_DEFAULT_VALUE,\n useValue: 'center',\n },\n {\n provide: FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal',\n template: `\n <ng-template #modal>\n <div class=\"bg-gray-900 bg-opacity-50 dark:bg-opacity-80 fixed inset-0 z-[99]\"></div>\n\n <div\n [class]=\"contentClasses().modalWrapperClass\"\n (click)=\"onBackdropClick($event)\">\n <div [class]=\"contentClasses().modalContainerClass\">\n <div [class]=\"contentClasses().modalContentClass\">\n <ng-content />\n </div>\n </div>\n </div>\n </ng-template>\n `,\n host: {\n tabindex: '-1',\n '(document:keydown)': 'onKeydownHandler($event)',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalComponent extends BaseComponent<ModalClass> implements OnDestroy {\n private readonly destroyed = new Subject<void>();\n\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalThemeService);\n /**\n * The child `ModalHeaderComponent`\n */\n public readonly modalHeaderChild = contentChild(ModalHeaderComponent);\n /**\n * The child `ModalBodyComponent`\n */\n public readonly modalBodyChild = contentChild.required(ModalBodyComponent);\n /**\n * The child `ModalFooterComponent`\n */\n public readonly modalFooterChild = contentChild(ModalFooterComponent);\n\n //#region template properties\n private readonly template = viewChild.required('modal', { read: TemplateRef });\n\n private readonly viewContainer = inject(ViewContainerRef);\n private readonly router = inject(Router);\n\n private embeddedView?: EmbeddedViewRef<unknown>;\n //#endregion\n\n //#region properties\n /**\n * Set the modal size\n *\n * @default md\n */\n public size = model(inject(FLOWBITE_MODAL_SIZE_DEFAULT_VALUE));\n /**\n * Set the modal position\n *\n * @default center\n */\n public position = model(inject(FLOWBITE_MODAL_POSITION_DEFAULT_VALUE));\n /**\n * Set if the modal is dismissable\n *\n * @default false\n */\n public isDismissable = model(inject(FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE));\n /**\n * Set if the modal is open\n *\n * @default false\n */\n public isOpen = model(inject(FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE));\n /**\n * Set the custom style for this modal\n */\n public customStyle = model(inject(FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.isOpen()),\n size: this.size(),\n position: this.position(),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n // close modal if it's not destroyed on route change\n this.router.events\n .pipe(\n takeUntil(this.destroyed),\n filter(() => this.isOpen()),\n filter((event) => event instanceof NavigationStart)\n )\n .subscribe(() => this.close());\n }\n //#endregion\n\n ngOnDestroy(): void {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n open() {\n this.isOpen.set(true);\n this.changeBackdrop();\n }\n\n close() {\n this.isOpen.set(false);\n this.changeBackdrop();\n }\n\n toggle() {\n this.isOpen.set(!this.isOpen());\n this.changeBackdrop();\n }\n\n // If isOpen changes, add or remove template\n changeBackdrop() {\n if (this.isOpen()) {\n this.createTemplate();\n } else {\n this.destroyTemplate();\n }\n }\n\n private createTemplate() {\n if (this.embeddedView) {\n this.destroyTemplate();\n }\n\n this.embeddedView = this.viewContainer.createEmbeddedView(this.template());\n }\n\n private destroyTemplate() {\n this.embeddedView?.destroy();\n }\n\n onKeydownHandler(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n this.close();\n }\n }\n\n onBackdropClick(event: MouseEvent) {\n if (event.target == event.currentTarget && this.isDismissable()) {\n this.close();\n }\n }\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbitePositions,\n FlowbiteSizes,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\nexport interface ModalSizes extends Pick<FlowbiteSizes, 'sm' | 'md' | 'lg' | 'xl'> {\n [key: string]: string;\n}\n\nexport interface ModalPositions\n extends Pick<\n FlowbitePositions,\n | 'center'\n | 'top-left'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-right'\n | 'top-center'\n | 'bottom-center'\n | 'center-left'\n | 'center-right'\n > {\n [key: string]: string;\n}\n//#endregion\n\nexport interface ModalProperties {\n isOpen: keyof FlowbiteBoolean;\n size: keyof ModalSizes;\n position: keyof ModalPositions;\n customStyle: DeepPartial<ModalTheme>;\n}\n\nexport interface ModalTheme {\n root: {\n base: string;\n };\n wrapper: {\n base: string;\n position: ModalPositions;\n };\n container: {\n base: string;\n size: ModalSizes;\n };\n content: {\n base: string;\n };\n}\n\nexport const modalTheme: ModalTheme = createTheme({\n root: {\n base: '',\n },\n wrapper: {\n base: 'fixed top-0 left-0 right-0 z-[100] w-full p-4 overflow-x-hidden overflow-y-auto md:inset-0 h-[calc(100%-1rem)] md:h-full flex',\n position: {\n 'top-left': 'items-start justify-start',\n 'top-center': 'items-start justify-center',\n 'top-right': 'items-start justify-end',\n 'center-left': 'items-center justify-start',\n center: 'items-center justify-center',\n 'center-right': 'items-center justify-end',\n 'bottom-left': 'items-end justify-start',\n 'bottom-center': 'items-end justify-center',\n 'bottom-right': 'items-end justify-end',\n },\n },\n container: {\n base: 'relative w-full h-full md:h-auto',\n size: {\n sm: 'max-w-md',\n md: 'max-w-lg',\n lg: 'max-w-4xl',\n xl: 'max-w-7xl',\n },\n },\n content: {\n base: 'relative bg-white rounded-lg shadow dark:bg-gray-700',\n },\n});\n\nexport interface ModalClass extends FlowbiteClass {\n modalWrapperClass: string;\n modalContainerClass: string;\n modalContentClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `ModalComponent`\n */\nexport interface ModalHeaderProperties {\n customStyle: DeepPartial<ModalHeaderTheme>;\n}\n\n/**\n * Theme definition for `ModalComponent`\n */\nexport interface ModalHeaderTheme {\n root: {\n base: string;\n };\n title: {\n base: string;\n };\n button: {\n base: string;\n };\n}\n\n/**\n * Default theme for `ModalComponent`\n */\nexport const modalHeaderTheme: ModalHeaderTheme = createTheme({\n root: {\n base: 'flex items-center justify-between p-5 border-b rounded-t dark:border-gray-600',\n },\n title: {\n base: 'text-xl font-medium text-gray-900 dark:text-white',\n },\n button: {\n base: 'text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-600 dark:hover:text-white',\n },\n});\n\n/**\n * Generated class definition for `ModalComponent`\n */\nexport interface ModalHeaderClass extends FlowbiteClass {\n modalHeaderTitleClass: string;\n modalHeaderButtonClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `ModalBodyComponent`\n */\nexport interface ModalBodyProperties {\n customStyle: DeepPartial<ModalBodyTheme>;\n}\n\n/**\n * Theme definition for `ModalBodyComponent`\n */\nexport interface ModalBodyTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme value for `ModalBodyComponent`\n */\nexport const modalBodyTheme: ModalBodyTheme = createTheme({\n root: {\n base: 'block p-6 space-y-6',\n },\n});\n\n/**\n * Generated class definition for `ModalBodyComponent`\n */\nexport type ModalBodyClass = 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 `ModalFooterComponent`\n */\nexport interface ModalFooterProperties {\n customStyle: DeepPartial<ModalFooterTheme>;\n}\n\n/**\n * Theme definition for `ModalFooteromponent`\n */\nexport interface ModalFooterTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `ModalFooterComponent`\n */\nexport const modalFooterTheme: ModalFooterTheme = createTheme({\n root: {\n base: 'flex items-center p-6 space-x-2 border-t border-gray-200 rounded-b dark:border-gray-600',\n },\n});\n\n/**\n * Generated class definition for `ModalFooterComponent`\n */\nexport type ModalFooterClass = 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-modal.mjs","sources":["../../../../libs/flowbite-angular/modal/modal-body.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-body.component.ts","../../../../libs/flowbite-angular/modal/modal-footer.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-footer.component.ts","../../../../libs/flowbite-angular/modal/modal-header.theme.service.ts","../../../../libs/flowbite-angular/modal/modal-header.component.ts","../../../../libs/flowbite-angular/modal/modal.theme.service.ts","../../../../libs/flowbite-angular/modal/modal.component.ts","../../../../libs/flowbite-angular/modal/modal.theme.ts","../../../../libs/flowbite-angular/modal/modal-header.theme.ts","../../../../libs/flowbite-angular/modal/modal-body.theme.ts","../../../../libs/flowbite-angular/modal/modal-footer.theme.ts","../../../../libs/flowbite-angular/modal/flowbite-angular-modal.ts"],"sourcesContent":["import type { ModalBodyClass, ModalBodyProperties, ModalBodyTheme } from './modal-body.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 `ModalBodyTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_BODY_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_BODY_THEME_TOKEN = new InjectionToken<ModalBodyTheme>(\n 'FLOWBITE_MODAL_BODY_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalBodyThemeService implements FlowbiteThemeService<ModalBodyProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_BODY_THEME_TOKEN);\n\n public getClasses(properties: ModalBodyProperties): ModalBodyClass {\n const theme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalBodyClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { ModalBodyClass, ModalBodyTheme } from './modal-body.theme';\nimport { ModalBodyThemeService } from './modal-body.theme.service';\nimport { ModalComponent } from './modal.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_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalBodyTheme>\n>('FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalBodyDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal-body',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalBodyComponent extends BaseComponent<ModalBodyClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalBodyThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n\n //#region properties\n /**\n * Set the custom style for this modal body\n */\n public customStyle = model(inject(FLOWBITE_MODAL_BODY_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalBodyClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n ModalFooterClass,\n ModalFooterProperties,\n ModalFooterTheme,\n} from './modal-footer.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 `ModalFooterTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_FOOTER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_FOOTER_THEME_TOKEN = new InjectionToken<ModalFooterTheme>(\n 'FLOWBITE_MODAL_FOOTER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalFooterThemeService implements FlowbiteThemeService<ModalFooterProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_FOOTER_THEME_TOKEN);\n\n public getClasses(properties: ModalFooterProperties): ModalFooterClass {\n const theme: ModalFooterTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalFooterClass = {\n rootClass: twMerge(theme.root.base),\n };\n\n return output;\n }\n}\n","import type { ModalFooterClass, ModalFooterTheme } from './modal-footer.theme';\nimport { ModalFooterThemeService } from './modal-footer.theme.service';\nimport { ModalComponent } from './modal.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_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalFooterTheme>\n>('FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalFooterDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal-footer',\n template: `<ng-content />`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalFooterComponent extends BaseComponent<ModalFooterClass> {\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalFooterThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n\n //#region properties\n /**\n * Set the custom style for this modal footer\n */\n public customStyle = model(inject(FLOWBITE_MODAL_FOOTER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalFooterClass {\n return this.themeService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n //#endregion\n}\n","import type {\n ModalHeaderClass,\n ModalHeaderProperties,\n ModalHeaderTheme,\n} from './modal-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 `ModalHeaderTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_HEADER_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_HEADER_THEME_TOKEN = new InjectionToken<ModalHeaderTheme>(\n 'FLOWBITE_MODAL_HEADER_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalHeaderThemeService implements FlowbiteThemeService<ModalHeaderProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_HEADER_THEME_TOKEN);\n\n public getClasses(properties: ModalHeaderProperties): ModalHeaderClass {\n const theme: ModalHeaderTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalHeaderClass = {\n rootClass: twMerge(theme.root.base),\n modalHeaderTitleClass: twMerge(theme.title.base),\n modalHeaderButtonClass: twMerge(theme.button.base),\n };\n\n return output;\n }\n}\n","import type { ModalHeaderClass, ModalHeaderTheme } from './modal-header.theme';\nimport { ModalHeaderThemeService } from './modal-header.theme.service';\nimport { ModalComponent } from './modal.component';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent } from 'flowbite-angular';\nimport { IconComponent, IconRegistry } from 'flowbite-angular/icon';\nimport { CLOSE_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_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalHeaderTheme>\n>('FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalHeaderDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n imports: [IconComponent],\n selector: 'flowbite-modal-header',\n template: `\n <h3 [class]=\"contentClasses().modalHeaderTitleClass\">\n <ng-content />\n </h3>\n <button\n type=\"button\"\n [class]=\"contentClasses().modalHeaderButtonClass\"\n data-modal-hide=\"medium-modal\"\n (click)=\"modalComponent.close()\">\n <flowbite-icon\n svgIcon=\"flowbite-angular:close\"\n class=\"w-5 h-5\" />\n <span class=\"sr-only\">Close modal</span>\n </button>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalHeaderComponent extends BaseComponent<ModalHeaderClass> implements OnInit {\n /**\n * Service injected used to generate class\n */\n public readonly stateService = inject(ModalHeaderThemeService);\n /**\n * The parent `ModalComponent`\n */\n public readonly modalComponent = inject(ModalComponent);\n /**\n * `IconRegistry` service\n */\n public readonly iconRegistry = inject(IconRegistry);\n /**\n * `DomSanitizer` service\n */\n public readonly domSanitizer = inject(DomSanitizer);\n\n //#region properties\n /**\n * Set the custom style for this modal header\n */\n public customStyle = model(inject(FLOWBITE_MODAL_HEADER_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalHeaderClass {\n return this.stateService.getClasses({\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n this.iconRegistry.addRawSvgIconInNamepsace(\n 'flowbite-angular',\n 'close',\n this.domSanitizer.bypassSecurityTrustHtml(CLOSE_SVG_ICON)\n );\n }\n //#endregion\n}\n","import type { ModalClass, ModalProperties, ModalTheme } from './modal.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 `ModalTheme` value\n *\n * @example\n * ```\n * var theme = inject(FLOWBITE_MODAL_THEME_TOKEN)\n * ```\n */\nexport const FLOWBITE_MODAL_THEME_TOKEN = new InjectionToken<ModalTheme>(\n 'FLOWBITE_MODAL_THEME_TOKEN'\n);\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalThemeService implements FlowbiteThemeService<ModalProperties> {\n private readonly baseTheme = inject(FLOWBITE_MODAL_THEME_TOKEN);\n\n public getClasses(properties: ModalProperties): ModalClass {\n const theme: ModalTheme = mergeTheme(this.baseTheme, properties.customStyle);\n\n const output: ModalClass = {\n rootClass: twMerge(theme.root.base),\n modalWrapperClass: twMerge(theme.wrapper.base, theme.wrapper.position[properties.position]),\n modalContainerClass: twMerge(theme.container.base, theme.container.size[properties.size]),\n modalContentClass: twMerge(theme.content.base),\n };\n\n return output;\n }\n}\n","import { ModalBodyComponent } from './modal-body.component';\nimport { ModalFooterComponent } from './modal-footer.component';\nimport { ModalHeaderComponent } from './modal-header.component';\nimport type { ModalClass, ModalPositions, ModalSizes, ModalTheme } from './modal.theme';\nimport { ModalThemeService } from './modal.theme.service';\n\nimport type { DeepPartial } from 'flowbite-angular';\nimport { BaseComponent, booleanToFlowbiteBoolean } from 'flowbite-angular';\n\nimport type { EmbeddedViewRef, OnDestroy } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n inject,\n InjectionToken,\n makeEnvironmentProviders,\n model,\n TemplateRef,\n viewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NavigationStart, Router } from '@angular/router';\nimport { filter, Subject, takeUntil } from 'rxjs';\n\nexport const FLOWBITE_MODAL_SIZE_DEFAULT_VALUE = new InjectionToken<keyof ModalSizes>(\n 'FLOWBITE_MODAL_SIZE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_POSITION_DEFAULT_VALUE = new InjectionToken<keyof ModalPositions>(\n 'FLOWBITE_MODAL_POSITION_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE = new InjectionToken<boolean>(\n 'FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE'\n);\n\nexport const FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE = new InjectionToken<\n DeepPartial<ModalTheme>\n>('FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE');\n\nexport const modalDefaultValueProvider = makeEnvironmentProviders([\n {\n provide: FLOWBITE_MODAL_SIZE_DEFAULT_VALUE,\n useValue: 'md',\n },\n {\n provide: FLOWBITE_MODAL_POSITION_DEFAULT_VALUE,\n useValue: 'center',\n },\n {\n provide: FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE,\n useValue: false,\n },\n {\n provide: FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE,\n useValue: {},\n },\n]);\n\n/**\n * @see https://flowbite.com/docs/components/modal/\n */\n@Component({\n standalone: true,\n selector: 'flowbite-modal',\n template: `\n <ng-template #modal>\n <div class=\"bg-gray-900 bg-opacity-50 dark:bg-opacity-80 fixed inset-0 z-[99]\"></div>\n\n <div\n [class]=\"contentClasses().modalWrapperClass\"\n (click)=\"onBackdropClick($event)\">\n <div [class]=\"contentClasses().modalContainerClass\">\n <div [class]=\"contentClasses().modalContentClass\">\n <ng-content />\n </div>\n </div>\n </div>\n </ng-template>\n `,\n host: {\n tabindex: '-1',\n '(document:keydown)': 'onKeydownHandler($event)',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ModalComponent extends BaseComponent<ModalClass> implements OnDestroy {\n private readonly destroyed = new Subject<void>();\n\n /**\n * Service injected used to generate class\n */\n public readonly themeService = inject(ModalThemeService);\n /**\n * The child `ModalHeaderComponent`\n */\n public readonly modalHeaderChild = contentChild(ModalHeaderComponent);\n /**\n * The child `ModalBodyComponent`\n */\n public readonly modalBodyChild = contentChild.required(ModalBodyComponent);\n /**\n * The child `ModalFooterComponent`\n */\n public readonly modalFooterChild = contentChild(ModalFooterComponent);\n\n //#region template properties\n private readonly template = viewChild.required('modal', { read: TemplateRef });\n\n private readonly viewContainer = inject(ViewContainerRef);\n private readonly router = inject(Router);\n\n private embeddedView?: EmbeddedViewRef<unknown>;\n //#endregion\n\n //#region properties\n /**\n * Set the modal size\n *\n * @default md\n */\n public size = model(inject(FLOWBITE_MODAL_SIZE_DEFAULT_VALUE));\n /**\n * Set the modal position\n *\n * @default center\n */\n public position = model(inject(FLOWBITE_MODAL_POSITION_DEFAULT_VALUE));\n /**\n * Set if the modal is dismissable\n *\n * @default false\n */\n public isDismissable = model(inject(FLOWBITE_MODAL_IS_DISMISSABLE_DEFAULT_VALUE));\n /**\n * Set if the modal is open\n *\n * @default false\n */\n public isOpen = model(inject(FLOWBITE_MODAL_IS_OPEN_DEFAULT_VALUE));\n /**\n * Set the custom style for this modal\n */\n public customStyle = model(inject(FLOWBITE_MODAL_CUSTOM_STYLE_DEFAULT_VALUE));\n //#endregion\n\n //#region BaseComponent implementation\n public override fetchClass(): ModalClass {\n return this.themeService.getClasses({\n isOpen: booleanToFlowbiteBoolean(this.isOpen()),\n size: this.size(),\n position: this.position(),\n customStyle: this.customStyle(),\n });\n }\n\n public override init(): void {\n // close modal if it's not destroyed on route change\n this.router.events\n .pipe(\n takeUntil(this.destroyed),\n filter(() => this.isOpen()),\n filter((event) => event instanceof NavigationStart)\n )\n .subscribe(() => this.close());\n }\n //#endregion\n\n ngOnDestroy(): void {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n open() {\n this.isOpen.set(true);\n this.changeBackdrop();\n }\n\n close() {\n this.isOpen.set(false);\n this.changeBackdrop();\n }\n\n toggle() {\n this.isOpen.set(!this.isOpen());\n this.changeBackdrop();\n }\n\n // If isOpen changes, add or remove template\n changeBackdrop() {\n if (this.isOpen()) {\n this.createTemplate();\n } else {\n this.destroyTemplate();\n }\n }\n\n private createTemplate() {\n if (this.embeddedView) {\n this.destroyTemplate();\n }\n\n this.embeddedView = this.viewContainer.createEmbeddedView(this.template());\n }\n\n private destroyTemplate() {\n this.embeddedView?.destroy();\n }\n\n onKeydownHandler(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n this.close();\n }\n }\n\n onBackdropClick(event: MouseEvent) {\n if (event.target == event.currentTarget && this.isDismissable()) {\n this.close();\n }\n }\n}\n","import type {\n DeepPartial,\n FlowbiteBoolean,\n FlowbiteClass,\n FlowbitePositions,\n FlowbiteSizes,\n} from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n//#region Component theme option\nexport interface ModalSizes extends Pick<FlowbiteSizes, 'sm' | 'md' | 'lg' | 'xl'> {\n [key: string]: string;\n}\n\nexport interface ModalPositions\n extends Pick<\n FlowbitePositions,\n | 'center'\n | 'top-left'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-right'\n | 'top-center'\n | 'bottom-center'\n | 'center-left'\n | 'center-right'\n > {\n [key: string]: string;\n}\n//#endregion\n\nexport interface ModalProperties {\n isOpen: keyof FlowbiteBoolean;\n size: keyof ModalSizes;\n position: keyof ModalPositions;\n customStyle: DeepPartial<ModalTheme>;\n}\n\nexport interface ModalTheme {\n root: {\n base: string;\n };\n wrapper: {\n base: string;\n position: ModalPositions;\n };\n container: {\n base: string;\n size: ModalSizes;\n };\n content: {\n base: string;\n };\n}\n\nexport const modalTheme: ModalTheme = createTheme({\n root: {\n base: '',\n },\n wrapper: {\n base: 'fixed top-0 left-0 right-0 z-[100] w-full p-4 overflow-x-hidden overflow-y-auto md:inset-0 h-[calc(100%-1rem)] md:h-full flex',\n position: {\n 'top-left': 'items-start justify-start',\n 'top-center': 'items-start justify-center',\n 'top-right': 'items-start justify-end',\n 'center-left': 'items-center justify-start',\n center: 'items-center justify-center',\n 'center-right': 'items-center justify-end',\n 'bottom-left': 'items-end justify-start',\n 'bottom-center': 'items-end justify-center',\n 'bottom-right': 'items-end justify-end',\n },\n },\n container: {\n base: 'relative w-full h-full md:h-auto',\n size: {\n sm: 'max-w-md',\n md: 'max-w-lg',\n lg: 'max-w-4xl',\n xl: 'max-w-7xl',\n },\n },\n content: {\n base: 'relative bg-white rounded-lg shadow dark:bg-gray-700',\n },\n});\n\nexport interface ModalClass extends FlowbiteClass {\n modalWrapperClass: string;\n modalContainerClass: string;\n modalContentClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `ModalComponent`\n */\nexport interface ModalHeaderProperties {\n customStyle: DeepPartial<ModalHeaderTheme>;\n}\n\n/**\n * Theme definition for `ModalComponent`\n */\nexport interface ModalHeaderTheme {\n root: {\n base: string;\n };\n title: {\n base: string;\n };\n button: {\n base: string;\n };\n}\n\n/**\n * Default theme for `ModalComponent`\n */\nexport const modalHeaderTheme: ModalHeaderTheme = createTheme({\n root: {\n base: 'flex items-center justify-between p-5 border-b rounded-t dark:border-gray-600',\n },\n title: {\n base: 'text-xl font-medium text-gray-900 dark:text-white',\n },\n button: {\n base: 'text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm p-1.5 ml-auto inline-flex items-center dark:hover:bg-gray-600 dark:hover:text-white',\n },\n});\n\n/**\n * Generated class definition for `ModalComponent`\n */\nexport interface ModalHeaderClass extends FlowbiteClass {\n modalHeaderTitleClass: string;\n modalHeaderButtonClass: string;\n}\n","import type { DeepPartial, FlowbiteClass } from 'flowbite-angular';\nimport { createTheme } from 'flowbite-angular/utils';\n\n/**\n * Required properties for the class generation of `ModalBodyComponent`\n */\nexport interface ModalBodyProperties {\n customStyle: DeepPartial<ModalBodyTheme>;\n}\n\n/**\n * Theme definition for `ModalBodyComponent`\n */\nexport interface ModalBodyTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme value for `ModalBodyComponent`\n */\nexport const modalBodyTheme: ModalBodyTheme = createTheme({\n root: {\n base: 'block p-6 space-y-6',\n },\n});\n\n/**\n * Generated class definition for `ModalBodyComponent`\n */\nexport type ModalBodyClass = 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 `ModalFooterComponent`\n */\nexport interface ModalFooterProperties {\n customStyle: DeepPartial<ModalFooterTheme>;\n}\n\n/**\n * Theme definition for `ModalFooteromponent`\n */\nexport interface ModalFooterTheme {\n root: {\n base: string;\n };\n}\n\n/**\n * Default theme for `ModalFooterComponent`\n */\nexport const modalFooterTheme: ModalFooterTheme = createTheme({\n root: {\n base: 'flex items-center p-6 space-x-2 border-t border-gray-200 rounded-b dark:border-gray-600',\n },\n});\n\n/**\n * Generated class definition for `ModalFooterComponent`\n */\nexport type ModalFooterClass = FlowbiteClass;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAQA;;;;;;;AAOG;MACU,+BAA+B,GAAG,IAAI,cAAc,CAC/D,iCAAiC;MAMtB,qBAAqB,CAAA;AAHlC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,+BAA+B,CAAC;AAWrE;AATQ,IAAA,UAAU,CAAC,UAA+B,EAAA;AAC/C,QAAA,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;AAEhE,QAAA,MAAM,MAAM,GAAmB;YAC7B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACpC;AAED,QAAA,OAAO,MAAM;;8GAVJ,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,cAFpB,MAAM,EAAA,CAAA,CAAA;;2FAEP,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCLY,8CAA8C,GAAG,IAAI,cAAc,CAE9E,gDAAgD;AAE3C,MAAM,6BAA6B,GAAG,wBAAwB,CAAC;AACpE,IAAA;AACE,QAAA,OAAO,EAAE,8CAA8C;AACvD,QAAA,QAAQ,EAAE,EAAE;AACb,KAAA;AACF,CAAA;AAED;;AAEG;AAQG,MAAO,kBAAmB,SAAQ,aAA6B,CAAA;AAPrE,IAAA,WAAA,GAAA;;AAQE;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,qBAAqB,CAAC;AAC5D;;AAEG;AACa,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;;AAGvD;;AAEG;QACI,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC;AAUnF;;;IANiB,UAAU,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;AAClC,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAChC,SAAA,CAAC;;8GArBO,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,2SAJnB,CAAgB,cAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAIf,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,CAAgB,cAAA,CAAA;oBAC1B,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACzBD;;;;;;;AAOG;MACU,iCAAiC,GAAG,IAAI,cAAc,CACjE,mCAAmC;MAMxB,uBAAuB,CAAA;AAHpC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,iCAAiC,CAAC;AAWvE;AATQ,IAAA,UAAU,CAAC,UAAiC,EAAA;AACjD,QAAA,MAAM,KAAK,GAAqB,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;AAElF,QAAA,MAAM,MAAM,GAAqB;YAC/B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACpC;AAED,QAAA,OAAO,MAAM;;8GAVJ,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;;2FAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCTY,gDAAgD,GAAG,IAAI,cAAc,CAEhF,kDAAkD;AAE7C,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AACtE,IAAA;AACE,QAAA,OAAO,EAAE,gDAAgD;AACzD,QAAA,QAAQ,EAAE,EAAE;AACb,KAAA;AACF,CAAA;AAED;;AAEG;AAQG,MAAO,oBAAqB,SAAQ,aAA+B,CAAA;AAPzE,IAAA,WAAA,GAAA;;AAQE;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,uBAAuB,CAAC;AAC9D;;AAEG;AACa,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;;AAGvD;;AAEG;QACI,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC;AAUrF;;;IANiB,UAAU,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;AAClC,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAChC,SAAA,CAAC;;8GArBO,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,6SAJrB,CAAgB,cAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAIf,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,QAAQ,EAAE,CAAgB,cAAA,CAAA;oBAC1B,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACzBD;;;;;;;AAOG;MACU,iCAAiC,GAAG,IAAI,cAAc,CACjE,mCAAmC;MAMxB,uBAAuB,CAAA;AAHpC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,iCAAiC,CAAC;AAavE;AAXQ,IAAA,UAAU,CAAC,UAAiC,EAAA;AACjD,QAAA,MAAM,KAAK,GAAqB,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;AAElF,QAAA,MAAM,MAAM,GAAqB;YAC/B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YAChD,sBAAsB,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;SACnD;AAED,QAAA,OAAO,MAAM;;8GAZJ,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;;2FAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCLY,gDAAgD,GAAG,IAAI,cAAc,CAEhF,kDAAkD;AAE7C,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AACtE,IAAA;AACE,QAAA,OAAO,EAAE,gDAAgD;AACzD,QAAA,QAAQ,EAAE,EAAE;AACb,KAAA;AACF,CAAA;AAED;;AAEG;AAuBG,MAAO,oBAAqB,SAAQ,aAA+B,CAAA;AAtBzE,IAAA,WAAA,GAAA;;AAuBE;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,uBAAuB,CAAC;AAC9D;;AAEG;AACa,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AACvD;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;AACnD;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;;AAGnD;;AAEG;QACI,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC;AAkBrF;;;IAdiB,UAAU,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;AAClC,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAChC,SAAA,CAAC;;IAGY,IAAI,GAAA;AAClB,QAAA,IAAI,CAAC,YAAY,CAAC,wBAAwB,CACxC,kBAAkB,EAClB,OAAO,EACP,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAC1D;;8GArCQ,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAlBrB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAhBS,aAAa,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAoBZ,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAtBhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcT,EAAA,CAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;AChDD;;;;;;;AAOG;MACU,0BAA0B,GAAG,IAAI,cAAc,CAC1D,4BAA4B;MAMjB,iBAAiB,CAAA;AAH9B,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,0BAA0B,CAAC;AAchE;AAZQ,IAAA,UAAU,CAAC,UAA2B,EAAA;AAC3C,QAAA,MAAM,KAAK,GAAe,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;AAE5E,QAAA,MAAM,MAAM,GAAe;YACzB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACnC,YAAA,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC3F,YAAA,mBAAmB,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACzF,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/C;AAED,QAAA,OAAO,MAAM;;8GAbJ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cAFhB,MAAM,EAAA,CAAA,CAAA;;2FAEP,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCIY,iCAAiC,GAAG,IAAI,cAAc,CACjE,mCAAmC;MAGxB,qCAAqC,GAAG,IAAI,cAAc,CACrE,uCAAuC;MAG5B,2CAA2C,GAAG,IAAI,cAAc,CAC3E,6CAA6C;MAGlC,oCAAoC,GAAG,IAAI,cAAc,CACpE,sCAAsC;MAG3B,yCAAyC,GAAG,IAAI,cAAc,CAEzE,2CAA2C;AAEtC,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAChE,IAAA;AACE,QAAA,OAAO,EAAE,iCAAiC;AAC1C,QAAA,QAAQ,EAAE,IAAI;AACf,KAAA;AACD,IAAA;AACE,QAAA,OAAO,EAAE,qCAAqC;AAC9C,QAAA,QAAQ,EAAE,QAAQ;AACnB,KAAA;AACD,IAAA;AACE,QAAA,OAAO,EAAE,2CAA2C;AACpD,QAAA,QAAQ,EAAE,KAAK;AAChB,KAAA;AACD,IAAA;AACE,QAAA,OAAO,EAAE,oCAAoC;AAC7C,QAAA,QAAQ,EAAE,KAAK;AAChB,KAAA;AACD,IAAA;AACE,QAAA,OAAO,EAAE,yCAAyC;AAClD,QAAA,QAAQ,EAAE,EAAE;AACb,KAAA;AACF,CAAA;AAED;;AAEG;AA0BG,MAAO,cAAe,SAAQ,aAAyB,CAAA;AAzB7D,IAAA,WAAA,GAAA;;AA0BmB,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,OAAO,EAAQ;AAEhD;;AAEG;AACa,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;AACxD;;AAEG;AACa,QAAA,IAAA,CAAA,gBAAgB,GAAG,YAAY,CAAC,oBAAoB,CAAC;AACrE;;AAEG;AACa,QAAA,IAAA,CAAA,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC;AAC1E;;AAEG;AACa,QAAA,IAAA,CAAA,gBAAgB,GAAG,YAAY,CAAC,oBAAoB,CAAC;;AAGpD,QAAA,IAAA,CAAA,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAE7D,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;;;AAMxC;;;;AAIG;QACI,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;AAC9D;;;;AAIG;QACI,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC;AACtE;;;;AAIG;QACI,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC;AACjF;;;;AAIG;QACI,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;AACnE;;AAEG;QACI,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC;AA6E9E;;;IAzEiB,UAAU,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;AAClC,YAAA,MAAM,EAAE,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;AAC/C,YAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;AACjB,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAChC,SAAA,CAAC;;IAGY,IAAI,GAAA;;QAElB,IAAI,CAAC,MAAM,CAAC;AACT,aAAA,IAAI,CACH,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EACzB,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,EAC3B,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,eAAe,CAAC;aAEpD,SAAS,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;;;IAIlC,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACrB,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;;IAG3B,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE;;IAGvB,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE;;IAGvB,MAAM,GAAA;QACJ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE;;;IAIvB,cAAc,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACjB,IAAI,CAAC,cAAc,EAAE;;aAChB;YACL,IAAI,CAAC,eAAe,EAAE;;;IAIlB,cAAc,GAAA;AACpB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE;;AAGxB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;;IAGpE,eAAe,GAAA;AACrB,QAAA,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE;;AAG9B,IAAA,gBAAgB,CAAC,KAAoB,EAAA;AACnC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,KAAK,EAAE;;;AAIhB,IAAA,eAAe,CAAC,KAAiB,EAAA;AAC/B,QAAA,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YAC/D,IAAI,CAAC,KAAK,EAAE;;;8GAnIL,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,cAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAUuB,oBAAoB,EAIb,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,kBAAkB,mGAIzB,oBAAoB,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAGJ,WAAW,EA3CjE,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAQU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAzB1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,QAAQ,EAAE,IAAI;AACd,wBAAA,oBAAoB,EAAE,0BAA0B;AACjD,qBAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACzCM,MAAM,UAAU,GAAe,WAAW,CAAC;AAChD,IAAA,IAAI,EAAE;AACJ,QAAA,IAAI,EAAE,EAAE;AACT,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,IAAI,EAAE,+HAA+H;AACrI,QAAA,QAAQ,EAAE;AACR,YAAA,UAAU,EAAE,2BAA2B;AACvC,YAAA,YAAY,EAAE,4BAA4B;AAC1C,YAAA,WAAW,EAAE,yBAAyB;AACtC,YAAA,aAAa,EAAE,4BAA4B;AAC3C,YAAA,MAAM,EAAE,6BAA6B;AACrC,YAAA,cAAc,EAAE,0BAA0B;AAC1C,YAAA,aAAa,EAAE,yBAAyB;AACxC,YAAA,eAAe,EAAE,0BAA0B;AAC3C,YAAA,cAAc,EAAE,uBAAuB;AACxC,SAAA;AACF,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,IAAI,EAAE,kCAAkC;AACxC,QAAA,IAAI,EAAE;AACJ,YAAA,EAAE,EAAE,UAAU;AACd,YAAA,EAAE,EAAE,UAAU;AACd,YAAA,EAAE,EAAE,WAAW;AACf,YAAA,EAAE,EAAE,WAAW;AAChB,SAAA;AACF,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,IAAI,EAAE,sDAAsD;AAC7D,KAAA;AACF,CAAA;;AC5DD;;AAEG;AACI,MAAM,gBAAgB,GAAqB,WAAW,CAAC;AAC5D,IAAA,IAAI,EAAE;AACJ,QAAA,IAAI,EAAE,+EAA+E;AACtF,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE,mDAAmD;AAC1D,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,2KAA2K;AAClL,KAAA;AACF,CAAA;;ACnBD;;AAEG;AACI,MAAM,cAAc,GAAmB,WAAW,CAAC;AACxD,IAAA,IAAI,EAAE;AACJ,QAAA,IAAI,EAAE,qBAAqB;AAC5B,KAAA;AACF,CAAA;;ACPD;;AAEG;AACI,MAAM,gBAAgB,GAAqB,WAAW,CAAC;AAC5D,IAAA,IAAI,EAAE;AACJ,QAAA,IAAI,EAAE,yFAAyF;AAChG,KAAA;AACF,CAAA;;AC1BD;;AAEG;;;;"}
|
|
@@ -79,8 +79,8 @@ class NavbarBrandComponent extends BaseComponent {
|
|
|
79
79
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: NavbarBrandComponent, decorators: [{
|
|
80
80
|
type: Component,
|
|
81
81
|
args: [{
|
|
82
|
-
selector: 'flowbite-navbar-brand',
|
|
83
82
|
standalone: true,
|
|
83
|
+
selector: 'flowbite-navbar-brand',
|
|
84
84
|
template: `<ng-content />`,
|
|
85
85
|
encapsulation: ViewEncapsulation.None,
|
|
86
86
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -174,8 +174,8 @@ class NavbarContentComponent extends BaseComponent {
|
|
|
174
174
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: NavbarContentComponent, decorators: [{
|
|
175
175
|
type: Component,
|
|
176
176
|
args: [{
|
|
177
|
-
selector: 'flowbite-navbar-content',
|
|
178
177
|
standalone: true,
|
|
178
|
+
selector: 'flowbite-navbar-content',
|
|
179
179
|
template: `
|
|
180
180
|
<div [class]="contentClasses().navbarContentListClass">
|
|
181
181
|
<ng-content />
|
|
@@ -289,6 +289,7 @@ class NavbarToggleComponent extends BaseComponent {
|
|
|
289
289
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: NavbarToggleComponent, decorators: [{
|
|
290
290
|
type: Component,
|
|
291
291
|
args: [{
|
|
292
|
+
standalone: true,
|
|
292
293
|
selector: 'flowbite-navbar-toggle',
|
|
293
294
|
imports: [IconComponent],
|
|
294
295
|
template: `
|
|
@@ -597,8 +598,8 @@ class NavbarItemComponent extends BaseComponent {
|
|
|
597
598
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: NavbarItemComponent, decorators: [{
|
|
598
599
|
type: Component,
|
|
599
600
|
args: [{
|
|
600
|
-
selector: 'flowbite-navbar-item',
|
|
601
601
|
standalone: true,
|
|
602
|
+
selector: 'flowbite-navbar-item',
|
|
602
603
|
template: `<ng-content />`,
|
|
603
604
|
host: {
|
|
604
605
|
'(click)': 'onClick()',
|
|
@@ -712,8 +713,8 @@ class NavbarIconButtonComponent extends BaseComponent {
|
|
|
712
713
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: NavbarIconButtonComponent, decorators: [{
|
|
713
714
|
type: Component,
|
|
714
715
|
args: [{
|
|
715
|
-
selector: 'flowbite-navbar-icon-button',
|
|
716
716
|
standalone: true,
|
|
717
|
+
selector: 'flowbite-navbar-icon-button',
|
|
717
718
|
template: `<ng-content />`,
|
|
718
719
|
encapsulation: ViewEncapsulation.None,
|
|
719
720
|
changeDetection: ChangeDetectionStrategy.OnPush,
|