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