@nanahoshi/mona-ui 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auto-complete/package.json +4 -0
- package/avatar/package.json +4 -0
- package/breadcrumb/package.json +4 -0
- package/button/package.json +4 -0
- package/button-group/package.json +4 -0
- package/calendar/package.json +4 -0
- package/check-box/package.json +4 -0
- package/chip/package.json +4 -0
- package/circular-progress-bar/package.json +4 -0
- package/color-gradient/package.json +4 -0
- package/color-palette/package.json +4 -0
- package/color-picker/package.json +4 -0
- package/combo-box/package.json +4 -0
- package/common/package.json +4 -0
- package/contextmenu/package.json +4 -0
- package/date-input/package.json +4 -0
- package/date-picker/package.json +4 -0
- package/datetime-picker/package.json +4 -0
- package/dialog/package.json +4 -0
- package/dropdown-button/package.json +4 -0
- package/dropdown-list/package.json +4 -0
- package/dropdowns/package.json +4 -0
- package/editor/package.json +4 -0
- package/expansion-panel/package.json +4 -0
- package/fesm2022/nanahoshi-mona-ui-auto-complete.mjs +40 -55
- package/fesm2022/nanahoshi-mona-ui-breadcrumb.mjs +24 -58
- package/fesm2022/nanahoshi-mona-ui-button-group.mjs +37 -48
- package/fesm2022/nanahoshi-mona-ui-button.mjs +130 -129
- package/fesm2022/nanahoshi-mona-ui-calendar.mjs +69 -165
- package/fesm2022/nanahoshi-mona-ui-check-box.mjs +81 -128
- package/fesm2022/nanahoshi-mona-ui-chip.mjs +102 -112
- package/fesm2022/nanahoshi-mona-ui-circular-progress-bar.mjs +11 -25
- package/fesm2022/nanahoshi-mona-ui-color-gradient.mjs +41 -92
- package/fesm2022/nanahoshi-mona-ui-color-palette.mjs +27 -49
- package/fesm2022/nanahoshi-mona-ui-color-picker.mjs +64 -65
- package/fesm2022/nanahoshi-mona-ui-combo-box.mjs +39 -61
- package/fesm2022/nanahoshi-mona-ui-date-input.mjs +12 -15
- package/fesm2022/nanahoshi-mona-ui-date-picker.mjs +44 -33
- package/fesm2022/nanahoshi-mona-ui-datetime-picker.mjs +58 -60
- package/fesm2022/nanahoshi-mona-ui-dialog.mjs +52 -165
- package/fesm2022/nanahoshi-mona-ui-dropdown-list.mjs +36 -59
- package/fesm2022/nanahoshi-mona-ui-dropdowns.mjs +56 -61
- package/fesm2022/nanahoshi-mona-ui-editor.mjs +302 -81
- package/fesm2022/nanahoshi-mona-ui-expansion-panel.mjs +33 -84
- package/fesm2022/nanahoshi-mona-ui-fieldset.mjs +12 -45
- package/fesm2022/nanahoshi-mona-ui-filter.mjs +18 -48
- package/fesm2022/{nanahoshi-mona-ui-grid-grid-footer-cell.component-B9SQH5N-.mjs → nanahoshi-mona-ui-grid-grid-footer-cell.component-B6FBLtrr.mjs} +14 -14
- package/fesm2022/{nanahoshi-mona-ui-grid-grid-footer-table-cell.directive-DlLwcCFT.mjs → nanahoshi-mona-ui-grid-grid-footer-table-cell.directive-OJe4UYuw.mjs} +4 -8
- package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-DCd8K6ng.mjs +121 -0
- package/fesm2022/{nanahoshi-mona-ui-grid-grid-toggle.component-DIUutx9s.mjs → nanahoshi-mona-ui-grid-grid-toggle.component-Dl8Hlkhj.mjs} +26 -55
- package/fesm2022/nanahoshi-mona-ui-grid-grid-virtual-list.component-C5FRZlvv.mjs +231 -0
- package/fesm2022/{nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-C3eZIaJK.mjs → nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-BRZUd8cE.mjs} +167 -451
- package/fesm2022/nanahoshi-mona-ui-grid.mjs +1 -1
- package/fesm2022/nanahoshi-mona-ui-internal-indicator-icon.mjs +10 -28
- package/fesm2022/nanahoshi-mona-ui-internal-list.mjs +57 -87
- package/fesm2022/nanahoshi-mona-ui-internal-tree.mjs +48 -139
- package/fesm2022/nanahoshi-mona-ui-internal.mjs +29 -1
- package/fesm2022/nanahoshi-mona-ui-list-box.mjs +10 -32
- package/fesm2022/nanahoshi-mona-ui-list-view.mjs +8 -21
- package/fesm2022/nanahoshi-mona-ui-menubar.mjs +50 -156
- package/fesm2022/nanahoshi-mona-ui-multi-select.mjs +40 -69
- package/fesm2022/nanahoshi-mona-ui-notification.mjs +32 -116
- package/fesm2022/nanahoshi-mona-ui-numeric-text-box.mjs +81 -107
- package/fesm2022/nanahoshi-mona-ui-pager.mjs +33 -85
- package/fesm2022/nanahoshi-mona-ui-placeholder.mjs +12 -34
- package/fesm2022/nanahoshi-mona-ui-popover.mjs +31 -52
- package/fesm2022/nanahoshi-mona-ui-popup-menu.mjs +38 -110
- package/fesm2022/nanahoshi-mona-ui-popup.mjs +4 -4
- package/fesm2022/nanahoshi-mona-ui-progress-bar.mjs +21 -62
- package/fesm2022/nanahoshi-mona-ui-radio-button.mjs +66 -111
- package/fesm2022/nanahoshi-mona-ui-scroll-view.mjs +60 -151
- package/fesm2022/nanahoshi-mona-ui-slider.mjs +117 -173
- package/fesm2022/nanahoshi-mona-ui-split-button.mjs +32 -45
- package/fesm2022/nanahoshi-mona-ui-splitter.mjs +29 -64
- package/fesm2022/nanahoshi-mona-ui-stepper.mjs +38 -101
- package/fesm2022/nanahoshi-mona-ui-switch.mjs +58 -79
- package/fesm2022/nanahoshi-mona-ui-tabs.mjs +42 -118
- package/fesm2022/nanahoshi-mona-ui-text-area.mjs +29 -37
- package/fesm2022/nanahoshi-mona-ui-text-box.mjs +60 -81
- package/fesm2022/nanahoshi-mona-ui-theme.mjs +1111 -269
- package/fesm2022/nanahoshi-mona-ui-time-picker.mjs +45 -39
- package/fesm2022/nanahoshi-mona-ui-time-selector.mjs +45 -109
- package/fesm2022/nanahoshi-mona-ui-tooltip.mjs +54 -82
- package/fesm2022/nanahoshi-mona-ui-tree-view.mjs +2 -2
- package/fesm2022/nanahoshi-mona-ui-window.mjs +35 -115
- package/fieldset/package.json +4 -0
- package/filter/package.json +4 -0
- package/grid/package.json +4 -0
- package/internal/filter-input/package.json +4 -0
- package/internal/indicator-icon/package.json +4 -0
- package/internal/list/package.json +4 -0
- package/internal/package.json +4 -0
- package/internal/tree/package.json +4 -0
- package/list/package.json +4 -0
- package/list-box/package.json +4 -0
- package/list-view/package.json +4 -0
- package/menubar/package.json +4 -0
- package/multi-select/package.json +4 -0
- package/notification/package.json +4 -0
- package/numeric-text-box/package.json +4 -0
- package/package.json +31 -5
- package/pager/package.json +4 -0
- package/placeholder/package.json +4 -0
- package/popover/package.json +4 -0
- package/popup/package.json +4 -0
- package/popup-menu/package.json +4 -0
- package/progress-bar/package.json +4 -0
- package/query/package.json +4 -0
- package/radio-button/package.json +4 -0
- package/scroll-view/package.json +4 -0
- package/slider/package.json +4 -0
- package/split-button/package.json +4 -0
- package/splitter/package.json +4 -0
- package/stepper/package.json +4 -0
- package/switch/package.json +4 -0
- package/tabs/package.json +4 -0
- package/text-area/package.json +4 -0
- package/text-box/package.json +4 -0
- package/theme/package.json +4 -0
- package/time-picker/package.json +4 -0
- package/time-selector/package.json +4 -0
- package/tooltip/package.json +4 -0
- package/tree-view/package.json +4 -0
- package/types/nanahoshi-mona-ui-auto-complete.d.ts +6 -7
- package/types/nanahoshi-mona-ui-breadcrumb.d.ts +4 -6
- package/types/nanahoshi-mona-ui-button-group.d.ts +2 -3
- package/types/nanahoshi-mona-ui-button.d.ts +6 -6
- package/types/nanahoshi-mona-ui-calendar.d.ts +21 -22
- package/types/nanahoshi-mona-ui-check-box.d.ts +6 -9
- package/types/nanahoshi-mona-ui-chip.d.ts +2 -3
- package/types/nanahoshi-mona-ui-circular-progress-bar.d.ts +2 -4
- package/types/nanahoshi-mona-ui-color-gradient.d.ts +10 -11
- package/types/nanahoshi-mona-ui-color-palette.d.ts +4 -5
- package/types/nanahoshi-mona-ui-color-picker.d.ts +6 -8
- package/types/nanahoshi-mona-ui-combo-box.d.ts +6 -7
- package/types/nanahoshi-mona-ui-date-input.d.ts +2 -3
- package/types/nanahoshi-mona-ui-date-picker.d.ts +2 -3
- package/types/nanahoshi-mona-ui-dialog.d.ts +7 -8
- package/types/nanahoshi-mona-ui-dropdown-list.d.ts +6 -7
- package/types/nanahoshi-mona-ui-dropdowns.d.ts +2 -3
- package/types/nanahoshi-mona-ui-editor.d.ts +17 -17
- package/types/nanahoshi-mona-ui-expansion-panel.d.ts +8 -10
- package/types/nanahoshi-mona-ui-fieldset.d.ts +6 -8
- package/types/nanahoshi-mona-ui-filter.d.ts +3 -4
- package/types/nanahoshi-mona-ui-grid.d.ts +16 -17
- package/types/nanahoshi-mona-ui-internal-indicator-icon.d.ts +0 -1
- package/types/nanahoshi-mona-ui-internal-tree.d.ts +16 -16
- package/types/nanahoshi-mona-ui-internal.d.ts +8 -1
- package/types/nanahoshi-mona-ui-list-box.d.ts +4 -5
- package/types/nanahoshi-mona-ui-list-view.d.ts +2 -3
- package/types/nanahoshi-mona-ui-menubar.d.ts +7 -8
- package/types/nanahoshi-mona-ui-multi-select.d.ts +8 -9
- package/types/nanahoshi-mona-ui-numeric-text-box.d.ts +2 -3
- package/types/nanahoshi-mona-ui-pager.d.ts +6 -7
- package/types/nanahoshi-mona-ui-placeholder.d.ts +4 -6
- package/types/nanahoshi-mona-ui-popover.d.ts +8 -9
- package/types/nanahoshi-mona-ui-popup-menu.d.ts +12 -13
- package/types/nanahoshi-mona-ui-progress-bar.d.ts +8 -9
- package/types/nanahoshi-mona-ui-radio-button.d.ts +8 -11
- package/types/nanahoshi-mona-ui-scroll-view.d.ts +18 -20
- package/types/nanahoshi-mona-ui-slider.d.ts +18 -18
- package/types/nanahoshi-mona-ui-split-button.d.ts +2 -3
- package/types/nanahoshi-mona-ui-splitter.d.ts +6 -8
- package/types/nanahoshi-mona-ui-stepper.d.ts +13 -14
- package/types/nanahoshi-mona-ui-switch.d.ts +6 -7
- package/types/nanahoshi-mona-ui-tabs.d.ts +15 -17
- package/types/nanahoshi-mona-ui-text-area.d.ts +2 -4
- package/types/nanahoshi-mona-ui-text-box.d.ts +4 -6
- package/types/nanahoshi-mona-ui-theme.d.ts +111 -12
- package/types/nanahoshi-mona-ui-time-picker.d.ts +2 -3
- package/types/nanahoshi-mona-ui-time-selector.d.ts +10 -11
- package/types/nanahoshi-mona-ui-tooltip.d.ts +4 -5
- package/types/nanahoshi-mona-ui-window.d.ts +16 -17
- package/window/package.json +4 -0
- package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-Dgea-O0X.mjs +0 -130
- package/fesm2022/nanahoshi-mona-ui-grid-grid-virtual-list.component-DRHycGIh.mjs +0 -240
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { NgTemplateOutlet } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Directive,
|
|
3
|
+
import { Directive, contentChildren, TemplateRef, computed, contentChild, input, model, Component } from '@angular/core';
|
|
4
4
|
import { LucideMinus, LucidePlus } from '@lucide/angular';
|
|
5
|
-
import { ThemeService } from '@nanahoshi/mona-ui/theme';
|
|
6
5
|
import { createElementControlId } from '@nanahoshi/mona-ui/internal';
|
|
7
6
|
import { twMerge } from 'tailwind-merge';
|
|
8
7
|
import { cva } from 'class-variance-authority';
|
|
@@ -40,11 +39,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
|
|
|
40
39
|
}]
|
|
41
40
|
}] });
|
|
42
41
|
|
|
43
|
-
const
|
|
44
|
-
block w-full
|
|
45
|
-
border border-border
|
|
46
|
-
not-last:border-b-transparent not-last:rounded-b-none
|
|
47
|
-
not-first:rounded-t-none relative
|
|
42
|
+
const expansionPanelBaseThemeVariants = cva(`
|
|
43
|
+
relative block w-full overflow-hidden
|
|
44
|
+
bg-surface text-foreground border border-border
|
|
45
|
+
not-last:border-b-transparent not-last:rounded-b-none not-first:rounded-t-none
|
|
48
46
|
`, {
|
|
49
47
|
variants: {
|
|
50
48
|
rounded: {
|
|
@@ -55,34 +53,33 @@ const expansionPanelBaseVariants = cva(`
|
|
|
55
53
|
}
|
|
56
54
|
}
|
|
57
55
|
});
|
|
58
|
-
const
|
|
59
|
-
w-full
|
|
60
|
-
px-2 py-1
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
font-medium
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
focus-visible:
|
|
68
|
-
focus-visible:ring-
|
|
69
|
-
focus-visible:z-10 focus-visible:relative
|
|
56
|
+
const expansionPanelHeaderThemeVariants = cva(`
|
|
57
|
+
relative flex w-full items-center justify-between
|
|
58
|
+
px-2 py-1
|
|
59
|
+
cursor-pointer
|
|
60
|
+
select-none
|
|
61
|
+
font-medium text-foreground
|
|
62
|
+
bg-surface-muted
|
|
63
|
+
transition-colors duration-(--mona-motion-fast)
|
|
64
|
+
hover:bg-hover active:bg-active
|
|
65
|
+
focus-visible:z-10 focus-visible:outline-none
|
|
66
|
+
focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-focus-indicator/35
|
|
70
67
|
`, {
|
|
71
68
|
variants: {
|
|
72
69
|
collapsed: {
|
|
73
70
|
true: "border-b-transparent",
|
|
74
|
-
false: "border-0 border-b border-border
|
|
71
|
+
false: "border-0 border-b border-border-subtle"
|
|
75
72
|
},
|
|
76
73
|
disabled: {
|
|
77
|
-
true: "pointer-events-none
|
|
74
|
+
true: "pointer-events-none cursor-not-allowed select-none bg-disabled-background text-disabled-foreground",
|
|
78
75
|
false: ""
|
|
79
76
|
}
|
|
80
77
|
}
|
|
81
78
|
});
|
|
82
|
-
const
|
|
83
|
-
p-1 flex-1
|
|
79
|
+
const expansionPanelHeaderTitleThemeVariants = cva(`
|
|
80
|
+
p-1 flex-1
|
|
84
81
|
`);
|
|
85
|
-
const
|
|
82
|
+
const expansionPanelIconContainerThemeVariants = cva(``, {
|
|
86
83
|
variants: {
|
|
87
84
|
hasTemplate: {
|
|
88
85
|
true: "",
|
|
@@ -90,11 +87,11 @@ const expansionPanelIconContainerVariants = cva(``, {
|
|
|
90
87
|
}
|
|
91
88
|
}
|
|
92
89
|
});
|
|
93
|
-
const
|
|
94
|
-
text-foreground
|
|
95
|
-
grid
|
|
96
|
-
transition-[grid-template-rows] duration-
|
|
97
|
-
[&>div]:overflow-hidden
|
|
90
|
+
const expansionPanelContentThemeVariants = cva(`
|
|
91
|
+
text-foreground
|
|
92
|
+
grid
|
|
93
|
+
transition-[grid-template-rows] duration-(--mona-motion-standard) ease-out
|
|
94
|
+
[&>div]:overflow-hidden
|
|
98
95
|
`, {
|
|
99
96
|
variants: {
|
|
100
97
|
expanded: {
|
|
@@ -104,81 +101,34 @@ const expansionPanelContentVariants = cva(`
|
|
|
104
101
|
}
|
|
105
102
|
});
|
|
106
103
|
|
|
107
|
-
const expansionPanelBaseThemeVariants = (theme) => {
|
|
108
|
-
switch (theme) {
|
|
109
|
-
case "mona":
|
|
110
|
-
return expansionPanelBaseVariants;
|
|
111
|
-
default:
|
|
112
|
-
return expansionPanelBaseVariants;
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
const expansionPanelHeaderThemeVariants = (theme) => {
|
|
116
|
-
switch (theme) {
|
|
117
|
-
case "mona":
|
|
118
|
-
return expansionPanelHeaderVariants;
|
|
119
|
-
default:
|
|
120
|
-
return expansionPanelHeaderVariants;
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
const expansionPanelHeaderTitleThemeVariants = (theme) => {
|
|
124
|
-
switch (theme) {
|
|
125
|
-
case "mona":
|
|
126
|
-
return expansionPanelHeaderTitleVariants;
|
|
127
|
-
default:
|
|
128
|
-
return expansionPanelHeaderTitleVariants;
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
const expansionPanelIconContainerThemeVariants = (theme) => {
|
|
132
|
-
switch (theme) {
|
|
133
|
-
case "mona":
|
|
134
|
-
return expansionPanelIconContainerVariants;
|
|
135
|
-
default:
|
|
136
|
-
return expansionPanelIconContainerVariants;
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
|
-
const expansionPanelContentThemeVariants = (theme) => {
|
|
140
|
-
switch (theme) {
|
|
141
|
-
case "mona":
|
|
142
|
-
return expansionPanelContentVariants;
|
|
143
|
-
default:
|
|
144
|
-
return expansionPanelContentVariants;
|
|
145
|
-
}
|
|
146
|
-
};
|
|
147
|
-
|
|
148
104
|
class ExpansionPanelComponent {
|
|
149
105
|
constructor() {
|
|
150
|
-
this.#themeService = inject(ThemeService);
|
|
151
106
|
this.actionsTemplateList = contentChildren(ExpansionPanelActionsTemplateDirective, { ...(ngDevMode ? { debugName: "actionsTemplateList" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
152
107
|
this.baseClass = computed(() => {
|
|
153
|
-
const theme = this.#themeService.theme();
|
|
154
108
|
const rounded = this.rounded();
|
|
155
|
-
const variantClass = expansionPanelBaseThemeVariants(
|
|
109
|
+
const variantClass = expansionPanelBaseThemeVariants({ rounded });
|
|
156
110
|
return twMerge(variantClass, this.userClass());
|
|
157
111
|
}, /* @ts-ignore */
|
|
158
112
|
...(ngDevMode ? [{ debugName: "baseClass" }] : /* istanbul ignore next */ []));
|
|
159
113
|
this.contentClass = computed(() => {
|
|
160
|
-
const theme = this.#themeService.theme();
|
|
161
114
|
const expanded = this.expanded();
|
|
162
|
-
return expansionPanelContentThemeVariants(
|
|
115
|
+
return expansionPanelContentThemeVariants({ expanded });
|
|
163
116
|
}, /* @ts-ignore */
|
|
164
117
|
...(ngDevMode ? [{ debugName: "contentClass" }] : /* istanbul ignore next */ []));
|
|
165
118
|
this.contentId = createElementControlId();
|
|
166
119
|
this.headerClass = computed(() => {
|
|
167
|
-
const theme = this.#themeService.theme();
|
|
168
120
|
const collapsed = !this.expanded();
|
|
169
121
|
const disabled = this.disabled();
|
|
170
|
-
return expansionPanelHeaderThemeVariants(
|
|
122
|
+
return expansionPanelHeaderThemeVariants({ collapsed, disabled });
|
|
171
123
|
}, /* @ts-ignore */
|
|
172
124
|
...(ngDevMode ? [{ debugName: "headerClass" }] : /* istanbul ignore next */ []));
|
|
173
125
|
this.headerTitleClass = computed(() => {
|
|
174
|
-
|
|
175
|
-
return expansionPanelHeaderTitleThemeVariants(theme)();
|
|
126
|
+
return expansionPanelHeaderTitleThemeVariants();
|
|
176
127
|
}, /* @ts-ignore */
|
|
177
128
|
...(ngDevMode ? [{ debugName: "headerTitleClass" }] : /* istanbul ignore next */ []));
|
|
178
129
|
this.iconContainerClass = computed(() => {
|
|
179
|
-
const theme = this.#themeService.theme();
|
|
180
130
|
const hasTemplate = !!this.iconTemplate();
|
|
181
|
-
return expansionPanelIconContainerThemeVariants(
|
|
131
|
+
return expansionPanelIconContainerThemeVariants({ hasTemplate });
|
|
182
132
|
}, /* @ts-ignore */
|
|
183
133
|
...(ngDevMode ? [{ debugName: "iconContainerClass" }] : /* istanbul ignore next */ []));
|
|
184
134
|
this.iconTemplate = contentChild(ExpansionPanelIconTemplateDirective, { ...(ngDevMode ? { debugName: "iconTemplate" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
@@ -214,7 +164,6 @@ class ExpansionPanelComponent {
|
|
|
214
164
|
this.userClass = input("", /* @ts-ignore */
|
|
215
165
|
...(ngDevMode ? [{ debugName: "userClass" }] : /* istanbul ignore next */ []));
|
|
216
166
|
}
|
|
217
|
-
#themeService;
|
|
218
167
|
toggle() {
|
|
219
168
|
if (this.disabled()) {
|
|
220
169
|
return;
|
|
@@ -222,13 +171,13 @@ class ExpansionPanelComponent {
|
|
|
222
171
|
this.expanded.update(expanded => !expanded);
|
|
223
172
|
}
|
|
224
173
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: ExpansionPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
225
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: ExpansionPanelComponent, isStandalone: true, selector: "mona-expansion-panel", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "userClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, host: { properties: { "class": "baseClass()" } }, queries: [{ propertyName: "actionsTemplateList", predicate: ExpansionPanelActionsTemplateDirective, read: TemplateRef, isSignal: true }, { propertyName: "iconTemplate", first: true, predicate: ExpansionPanelIconTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }, { propertyName: "titleTemplate", first: true, predicate: ExpansionPanelTitleTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }], ngImport: i0, template: "<div\
|
|
174
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: ExpansionPanelComponent, isStandalone: true, selector: "mona-expansion-panel", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "userClass", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expanded: "expandedChange" }, host: { properties: { "class": "baseClass()" } }, queries: [{ propertyName: "actionsTemplateList", predicate: ExpansionPanelActionsTemplateDirective, read: TemplateRef, isSignal: true }, { propertyName: "iconTemplate", first: true, predicate: ExpansionPanelIconTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }, { propertyName: "titleTemplate", first: true, predicate: ExpansionPanelTitleTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }], ngImport: i0, template: "<div\n [class]=\"headerClass()\"\n role=\"button\"\n [attr.tabindex]=\"disabled() ? -1 : 0\"\n [attr.aria-expanded]=\"expanded()\"\n [attr.aria-controls]=\"contentId\"\n [attr.aria-disabled]=\"disabled() ? 'true' : undefined\"\n (click)=\"toggle()\"\n (keydown.enter)=\"$event.preventDefault(); toggle()\"\n (keydown.space)=\"$event.preventDefault(); toggle()\">\n <div [class]=\"headerTitleClass()\">\n @if (titleTemplate()) {\n <ng-container [ngTemplateOutlet]=\"titleTemplate()\"></ng-container>\n } @else {\n {{ title() }}\n }\n </div>\n <div>\n @for (action of actionsTemplateList(); track $index) {\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\n }\n </div>\n <div [class]=\"iconContainerClass()\">\n @if (iconTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"iconTemplate()\"\n [ngTemplateOutletContext]=\"{ $implicit: expanded() }\"></ng-container>\n } @else {\n @if (expanded()) {\n <svg lucideMinus [size]=\"14\"></svg>\n } @else {\n <svg lucidePlus [size]=\"14\"></svg>\n }\n }\n </div>\n</div>\n<div\n [id]=\"contentId\"\n [class]=\"contentClass()\"\n [attr.aria-hidden]=\"!expanded()\"\n [attr.inert]=\"!expanded() ? true : undefined\">\n <div>\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LucideMinus, selector: "svg[lucideMinus]" }, { kind: "component", type: LucidePlus, selector: "svg[lucidePlus]" }] }); }
|
|
226
175
|
}
|
|
227
176
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: ExpansionPanelComponent, decorators: [{
|
|
228
177
|
type: Component,
|
|
229
178
|
args: [{ selector: "mona-expansion-panel", imports: [NgTemplateOutlet, LucideMinus, LucidePlus], host: {
|
|
230
179
|
"[class]": "baseClass()"
|
|
231
|
-
}, template: "<div\
|
|
180
|
+
}, template: "<div\n [class]=\"headerClass()\"\n role=\"button\"\n [attr.tabindex]=\"disabled() ? -1 : 0\"\n [attr.aria-expanded]=\"expanded()\"\n [attr.aria-controls]=\"contentId\"\n [attr.aria-disabled]=\"disabled() ? 'true' : undefined\"\n (click)=\"toggle()\"\n (keydown.enter)=\"$event.preventDefault(); toggle()\"\n (keydown.space)=\"$event.preventDefault(); toggle()\">\n <div [class]=\"headerTitleClass()\">\n @if (titleTemplate()) {\n <ng-container [ngTemplateOutlet]=\"titleTemplate()\"></ng-container>\n } @else {\n {{ title() }}\n }\n </div>\n <div>\n @for (action of actionsTemplateList(); track $index) {\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\n }\n </div>\n <div [class]=\"iconContainerClass()\">\n @if (iconTemplate()) {\n <ng-container\n [ngTemplateOutlet]=\"iconTemplate()\"\n [ngTemplateOutletContext]=\"{ $implicit: expanded() }\"></ng-container>\n } @else {\n @if (expanded()) {\n <svg lucideMinus [size]=\"14\"></svg>\n } @else {\n <svg lucidePlus [size]=\"14\"></svg>\n }\n }\n </div>\n</div>\n<div\n [id]=\"contentId\"\n [class]=\"contentClass()\"\n [attr.aria-hidden]=\"!expanded()\"\n [attr.inert]=\"!expanded() ? true : undefined\">\n <div>\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
232
181
|
}], propDecorators: { actionsTemplateList: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => ExpansionPanelActionsTemplateDirective), { ...{
|
|
233
182
|
read: TemplateRef
|
|
234
183
|
}, isSignal: true }] }], iconTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ExpansionPanelIconTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], titleTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ExpansionPanelTitleTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], expanded: [{ type: i0.Input, args: [{ isSignal: true, alias: "expanded", required: false }] }, { type: i0.Output, args: ["expandedChange"] }], rounded: [{ type: i0.Input, args: [{ isSignal: true, alias: "rounded", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "userClass", required: false }] }] } });
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive,
|
|
2
|
+
import { Directive, computed, contentChild, TemplateRef, input, Component } from '@angular/core';
|
|
3
3
|
import { NgTemplateOutlet } from '@angular/common';
|
|
4
|
-
import { ThemeService } from '@nanahoshi/mona-ui/theme';
|
|
5
4
|
import { twMerge } from 'tailwind-merge';
|
|
6
5
|
import { cva } from 'class-variance-authority';
|
|
7
6
|
|
|
@@ -16,13 +15,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
|
|
|
16
15
|
}]
|
|
17
16
|
}] });
|
|
18
17
|
|
|
19
|
-
const
|
|
20
|
-
block
|
|
18
|
+
const fieldsetBaseThemeVariants = cva(`
|
|
19
|
+
block
|
|
21
20
|
`);
|
|
22
|
-
const
|
|
23
|
-
bg-
|
|
24
|
-
border border-border
|
|
25
|
-
text-foreground
|
|
21
|
+
const fieldsetThemeVariants = cva(`
|
|
22
|
+
bg-surface text-foreground border border-border
|
|
26
23
|
`, {
|
|
27
24
|
variants: {
|
|
28
25
|
rounded: {
|
|
@@ -33,7 +30,7 @@ const fieldsetVariants = cva(`
|
|
|
33
30
|
none: "rounded-none"
|
|
34
31
|
},
|
|
35
32
|
disabled: {
|
|
36
|
-
true: "pointer-events-none
|
|
33
|
+
true: "pointer-events-none cursor-not-allowed select-none bg-disabled-background text-disabled-foreground border-disabled-border",
|
|
37
34
|
false: ""
|
|
38
35
|
}
|
|
39
36
|
},
|
|
@@ -41,13 +38,13 @@ const fieldsetVariants = cva(`
|
|
|
41
38
|
disabled: false
|
|
42
39
|
}
|
|
43
40
|
});
|
|
44
|
-
const
|
|
45
|
-
|
|
41
|
+
const fieldsetLegendThemeVariants = cva(`
|
|
42
|
+
ms-2
|
|
46
43
|
`, {
|
|
47
44
|
variants: {
|
|
48
45
|
hasTemplate: {
|
|
49
46
|
true: "",
|
|
50
|
-
false: "bg-
|
|
47
|
+
false: "px-2 bg-surface-raised text-foreground border border-border-subtle"
|
|
51
48
|
},
|
|
52
49
|
rounded: {
|
|
53
50
|
small: "rounded-sm",
|
|
@@ -62,52 +59,23 @@ const fieldsetLegendVariants = cva(`
|
|
|
62
59
|
}
|
|
63
60
|
});
|
|
64
61
|
|
|
65
|
-
const fieldsetBaseThemeVariants = (theme) => {
|
|
66
|
-
switch (theme) {
|
|
67
|
-
case "mona":
|
|
68
|
-
return fieldsetBaseVariants;
|
|
69
|
-
default:
|
|
70
|
-
return fieldsetBaseVariants;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
const fieldsetThemeVariants = (theme) => {
|
|
74
|
-
switch (theme) {
|
|
75
|
-
case "mona":
|
|
76
|
-
return fieldsetVariants;
|
|
77
|
-
default:
|
|
78
|
-
return fieldsetVariants;
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
const fieldsetLegendThemeVariants = (theme) => {
|
|
82
|
-
switch (theme) {
|
|
83
|
-
case "mona":
|
|
84
|
-
return fieldsetLegendVariants;
|
|
85
|
-
default:
|
|
86
|
-
return fieldsetLegendVariants;
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
|
|
90
62
|
class FieldsetComponent {
|
|
91
63
|
constructor() {
|
|
92
|
-
this.#themeService = inject(ThemeService);
|
|
93
64
|
this.baseClass = computed(() => {
|
|
94
|
-
|
|
95
|
-
return fieldsetBaseThemeVariants(theme)();
|
|
65
|
+
return fieldsetBaseThemeVariants();
|
|
96
66
|
}, /* @ts-ignore */
|
|
97
67
|
...(ngDevMode ? [{ debugName: "baseClass" }] : /* istanbul ignore next */ []));
|
|
98
68
|
this.fieldsetClass = computed(() => {
|
|
99
|
-
const theme = this.#themeService.theme();
|
|
100
69
|
const rounded = this.rounded();
|
|
101
70
|
const disabled = this.disabled();
|
|
102
71
|
const userClass = this.userClass();
|
|
103
|
-
return twMerge(fieldsetThemeVariants(
|
|
72
|
+
return twMerge(fieldsetThemeVariants({ rounded, disabled }), userClass);
|
|
104
73
|
}, /* @ts-ignore */
|
|
105
74
|
...(ngDevMode ? [{ debugName: "fieldsetClass" }] : /* istanbul ignore next */ []));
|
|
106
75
|
this.legendClass = computed(() => {
|
|
107
|
-
const theme = this.#themeService.theme();
|
|
108
76
|
const rounded = this.rounded();
|
|
109
77
|
const hasTemplate = !!this.legendTemplate();
|
|
110
|
-
return fieldsetLegendThemeVariants(
|
|
78
|
+
return fieldsetLegendThemeVariants({ hasTemplate, rounded });
|
|
111
79
|
}, /* @ts-ignore */
|
|
112
80
|
...(ngDevMode ? [{ debugName: "legendClass" }] : /* istanbul ignore next */ []));
|
|
113
81
|
this.legendTemplate = contentChild(FieldsetLegendTemplateDirective, { ...(ngDevMode ? { debugName: "legendTemplate" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
@@ -147,7 +115,6 @@ class FieldsetComponent {
|
|
|
147
115
|
*/
|
|
148
116
|
this.userClass = input("", { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: "class" });
|
|
149
117
|
}
|
|
150
|
-
#themeService;
|
|
151
118
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: FieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
152
119
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: FieldsetComponent, isStandalone: true, selector: "mona-fieldset", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, legend: { classPropertyName: "legend", publicName: "legend", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "baseClass()" } }, queries: [{ propertyName: "legendTemplate", first: true, predicate: FieldsetLegendTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }], ngImport: i0, template: "<fieldset [class]=\"fieldsetClass()\" [disabled]=\"disabled()\" [attr.name]=\"name()\">\n @if (legendVisible()) {\n <legend [class]=\"legendClass()\">\n @if (legendTemplate()) {\n <ng-container [ngTemplateOutlet]=\"legendTemplate()\"></ng-container>\n } @else {\n <span>{{ legend() }}</span>\n }\n </legend>\n }\n <ng-content></ng-content>\n</fieldset>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
153
120
|
}
|
|
@@ -8,8 +8,8 @@ import { DatePickerComponent } from '@nanahoshi/mona-ui/date-picker';
|
|
|
8
8
|
import { DropdownListComponent } from '@nanahoshi/mona-ui/dropdown-list';
|
|
9
9
|
import { NumericTextBoxComponent } from '@nanahoshi/mona-ui/numeric-text-box';
|
|
10
10
|
import { TextBoxComponent } from '@nanahoshi/mona-ui/text-box';
|
|
11
|
-
import { ThemeService } from '@nanahoshi/mona-ui/theme';
|
|
12
11
|
import { cva } from 'class-variance-authority';
|
|
12
|
+
import { themeOverlaySurfaceClasses } from '@nanahoshi/mona-ui/internal';
|
|
13
13
|
|
|
14
14
|
class OperatorFilterPipe {
|
|
15
15
|
transform(value, visibleOperators) {
|
|
@@ -219,11 +219,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
|
|
|
219
219
|
type: Injectable
|
|
220
220
|
}] });
|
|
221
221
|
|
|
222
|
-
const
|
|
223
|
-
w-full flex
|
|
224
|
-
p-1
|
|
225
|
-
|
|
226
|
-
shadow-
|
|
222
|
+
const filterMenuBaseThemeVariants = cva(`
|
|
223
|
+
flex w-full flex-col
|
|
224
|
+
gap-2 p-1
|
|
225
|
+
${themeOverlaySurfaceClasses} text-foreground
|
|
226
|
+
border border-border shadow-(--shadow-overlay)
|
|
227
227
|
`, {
|
|
228
228
|
variants: {
|
|
229
229
|
rounded: {
|
|
@@ -239,49 +239,22 @@ const filterMenuBaseVariants = cva(`
|
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
241
|
});
|
|
242
|
-
const
|
|
243
|
-
flex flex-col gap-1
|
|
244
|
-
[&>mona-button-group>button]:flex-1
|
|
242
|
+
const filterMenuItemThemeVariants = cva(`
|
|
243
|
+
flex flex-col gap-1
|
|
244
|
+
[&>mona-button-group>button]:flex-1
|
|
245
245
|
`);
|
|
246
|
-
const
|
|
247
|
-
flex flex-row
|
|
248
|
-
items-center justify-center
|
|
249
|
-
gap-1 [&>button]:flex-1
|
|
246
|
+
const filterMenuActionsThemeVariants = cva(`
|
|
247
|
+
flex flex-row
|
|
248
|
+
items-center justify-center
|
|
249
|
+
gap-1 [&>button]:flex-1
|
|
250
250
|
`);
|
|
251
251
|
|
|
252
|
-
const filterMenuBaseThemeVariants = (theme) => {
|
|
253
|
-
switch (theme) {
|
|
254
|
-
case "mona":
|
|
255
|
-
return filterMenuBaseVariants;
|
|
256
|
-
default:
|
|
257
|
-
return filterMenuBaseVariants;
|
|
258
|
-
}
|
|
259
|
-
};
|
|
260
|
-
const filterMenuActionsThemeVariants = (theme) => {
|
|
261
|
-
switch (theme) {
|
|
262
|
-
case "mona":
|
|
263
|
-
return filterMenuActionVariants;
|
|
264
|
-
default:
|
|
265
|
-
return filterMenuActionVariants;
|
|
266
|
-
}
|
|
267
|
-
};
|
|
268
|
-
const filterMenuItemThemeVariants = (theme) => {
|
|
269
|
-
switch (theme) {
|
|
270
|
-
case "mona":
|
|
271
|
-
return filterMenuItemVariants;
|
|
272
|
-
default:
|
|
273
|
-
return filterMenuItemVariants;
|
|
274
|
-
}
|
|
275
|
-
};
|
|
276
|
-
|
|
277
252
|
class FilterMenuComponent {
|
|
278
253
|
#booleanFilterValues;
|
|
279
254
|
#filterService;
|
|
280
|
-
#themeService;
|
|
281
255
|
constructor() {
|
|
282
256
|
this.#booleanFilterValues = [null, null];
|
|
283
257
|
this.#filterService = inject(FilterService);
|
|
284
|
-
this.#themeService = inject(ThemeService);
|
|
285
258
|
this.applyDisabled = computed(() => {
|
|
286
259
|
if (!this.firstFilterValid()) {
|
|
287
260
|
return true;
|
|
@@ -290,8 +263,7 @@ class FilterMenuComponent {
|
|
|
290
263
|
}, /* @ts-ignore */
|
|
291
264
|
...(ngDevMode ? [{ debugName: "applyDisabled" }] : /* istanbul ignore next */ []));
|
|
292
265
|
this.baseClass = computed(() => {
|
|
293
|
-
|
|
294
|
-
return filterMenuBaseThemeVariants(theme)();
|
|
266
|
+
return filterMenuBaseThemeVariants();
|
|
295
267
|
}, /* @ts-ignore */
|
|
296
268
|
...(ngDevMode ? [{ debugName: "baseClass" }] : /* istanbul ignore next */ []));
|
|
297
269
|
this.booleanFilterMenuDataItems = this.#filterService.booleanFilterMenuItems;
|
|
@@ -318,13 +290,11 @@ class FilterMenuComponent {
|
|
|
318
290
|
}, /* @ts-ignore */
|
|
319
291
|
...(ngDevMode ? [{ debugName: "effectiveDateOptions" }] : /* istanbul ignore next */ []));
|
|
320
292
|
this.filterMenuActionsClass = computed(() => {
|
|
321
|
-
|
|
322
|
-
return filterMenuActionsThemeVariants(theme)();
|
|
293
|
+
return filterMenuActionsThemeVariants();
|
|
323
294
|
}, /* @ts-ignore */
|
|
324
295
|
...(ngDevMode ? [{ debugName: "filterMenuActionsClass" }] : /* istanbul ignore next */ []));
|
|
325
296
|
this.filterMenuItemClass = computed(() => {
|
|
326
|
-
|
|
327
|
-
return filterMenuItemThemeVariants(theme)();
|
|
297
|
+
return filterMenuItemThemeVariants();
|
|
328
298
|
}, /* @ts-ignore */
|
|
329
299
|
...(ngDevMode ? [{ debugName: "filterMenuItemClass" }] : /* istanbul ignore next */ []));
|
|
330
300
|
this.firstFilterValid = computed(() => {
|
|
@@ -649,7 +619,7 @@ class FilterMenuComponent {
|
|
|
649
619
|
}
|
|
650
620
|
}
|
|
651
621
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: FilterMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
652
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: FilterMenuComponent, isStandalone: true, selector: "mona-filter-menu", inputs: { dateOptions: { classPropertyName: "dateOptions", publicName: "dateOptions", isSignal: true, isRequired: false, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, operators: { classPropertyName: "operators", publicName: "operators", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { apply: "apply", field: "fieldChange", operators: "operatorsChange", type: "typeChange", value: "valueChange" }, host: { properties: { "class": "baseClass()" } }, ngImport: i0, template: "<div [class]=\"filterMenuItemClass()\">\r\n @if (type() === \"string\") {\r\n <mona-dropdown-list\r\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\r\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\r\n <mona-text-box\r\n [ngModel]=\"stringFilterValues()[0]\"\r\n (ngModelChange)=\"stringFilterValues.set([$event, stringFilterValues()[1]])\"\r\n [size]=\"size()\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-text-box>\r\n }\r\n\r\n @if (type() === \"number\") {\r\n <mona-dropdown-list\r\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\r\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\r\n <mona-numeric-text-box\r\n [ngModel]=\"numberFilterValues()[0]\"\r\n (ngModelChange)=\"numberFilterValues.set([$event, numberFilterValues()[1]])\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-numeric-text-box>\r\n }\r\n\r\n @if (type() === \"date\") {\r\n <mona-dropdown-list\r\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\r\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\r\n\r\n @if (type() === \"date\") {\r\n <mona-date-picker\r\n [ngModel]=\"dateFilterValues()[0]\"\r\n (ngModelChange)=\"dateFilterValues.set([$event, dateFilterValues()[1]])\"\r\n [format]=\"effectiveDateOptions().format\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-date-picker>\r\n }\r\n }\r\n\r\n @if (type() === \"boolean\") {\r\n <mona-dropdown-list\r\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\r\n }\r\n</div>\r\n@if (firstFilterValid()) {\r\n <div [class]=\"filterMenuItemClass()\">\r\n <mona-button-group selection=\"single\" [size]=\"size()\" [rounded]=\"rounded()\" [disabled]=\"!firstFilterValid()\">\r\n @for (item of connectorDataItems; track item) {\r\n <button\r\n monaButton\r\n [selected]=\"item.value === selectedConnectorItem()?.value\"\r\n (selectedChange)=\"onConnectorChange(item, $event)\">\r\n {{ item.text }}\r\n </button>\r\n }\r\n </mona-button-group>\r\n </div>\r\n}\r\n@if (!!selectedConnectorItem()) {\r\n <div [class]=\"filterMenuItemClass()\">\r\n @if (type() === \"string\") {\r\n <mona-dropdown-list\r\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\r\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\r\n <mona-text-box\r\n [ngModel]=\"stringFilterValues()[1]\"\r\n (ngModelChange)=\"stringFilterValues.set([stringFilterValues()[0], $event])\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-text-box>\r\n }\r\n\r\n @if (type() === \"number\") {\r\n <mona-dropdown-list\r\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\r\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\r\n\r\n <mona-numeric-text-box\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"numberFilterValues()[1]\"\r\n (ngModelChange)=\"numberFilterValues.set([numberFilterValues()[0], $event])\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-numeric-text-box>\r\n }\r\n\r\n @if (type() === \"date\") {\r\n <mona-dropdown-list\r\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\r\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\r\n\r\n @if (type() === \"date\") {\r\n <mona-date-picker\r\n [ngModel]=\"dateFilterValues()[1]\"\r\n (ngModelChange)=\"dateFilterValues.set([dateFilterValues()[0], $event])\"\r\n [format]=\"effectiveDateOptions().format\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-date-picker>\r\n }\r\n }\r\n\r\n @if (type() === \"boolean\") {\r\n <mona-dropdown-list\r\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\r\n textField=\"text\"\r\n valueField=\"value\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\r\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\r\n }\r\n </div>\r\n}\r\n<div [class]=\"`${filterMenuItemClass()} ${filterMenuActionsClass()}`\">\r\n <button\r\n monaButton\r\n (click)=\"onFilterApply()\"\r\n [look]=\"'primary'\"\r\n [size]=\"size()\"\r\n [rounded]=\"rounded()\"\r\n [disabled]=\"applyDisabled()\">\r\n Apply\r\n </button>\r\n <button monaButton (click)=\"onFilterClear()\" [look]=\"'default'\" [size]=\"size()\" [rounded]=\"rounded()\">Clear</button>\r\n</div>\r\n", dependencies: [{ kind: "component", type: DropdownListComponent, selector: "mona-dropdown-list", inputs: ["aria-label", "aria-labelledby", "data", "disabled", "itemDisabled", "invalid", "loading", "placeholder", "popupClass", "popupHeight", "popupWidth", "readonly", "required", "rounded", "showClearButton", "size", "textField", "touched", "class", "valueField", "value"], outputs: ["close", "closed", "disabledChange", "open", "opened", "touch", "valueChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TextBoxComponent, selector: "mona-text-box", inputs: ["clearButton", "disabled", "inputAttributes", "inputClass", "inputStyle", "invalid", "placeholder", "readonly", "required", "rounded", "size", "touched", "type", "class", "value"], outputs: ["inputBlur", "inputFocus", "touch", "valueChange"] }, { kind: "component", type: NumericTextBoxComponent, selector: "mona-numeric-text-box", inputs: ["aria-label", "decimals", "disabled", "formatter", "maxValue", "minValue", "nullable", "readonly", "required", "invalid", "rounded", "size", "spinners", "step", "tabindex", "touched", "class", "value"], outputs: ["inputBlur", "inputFocus", "inputFocusOut", "touch", "valueChange"] }, { kind: "component", type: DatePickerComponent, selector: "mona-date-picker", inputs: ["disabled", "disabledDates", "firstDay", "format", "invalid", "max", "min", "placeholder", "popupClass", "popupHeight", "popupWidth", "readonly", "readonlyInput", "required", "rounded", "showClearButton", "size", "touched", "class", "value", "weekNumber"], outputs: ["close", "closed", "open", "opened", "touch", "valueChange"] }, { kind: "component", type: ButtonGroupComponent, selector: "mona-button-group", inputs: ["allowEmpty", "aria-label", "disabled", "look", "rounded", "selection", "size", "class"], outputs: ["buttonClick", "disabledChange", "selectionChange"] }, { kind: "directive", type: ButtonDirective, selector: "button[monaButton]", inputs: ["aria-haspopup", "disabled", "iconOnly", "loading", "look", "rounded", "selected", "size", "tabindex", "toggleable", "class"], outputs: ["disabledChange", "loadingChange", "lookChange", "selectedChange"] }, { kind: "pipe", type: ValuelessOperatorPipe, name: "valuelessOperator" }, { kind: "pipe", type: OperatorFilterPipe, name: "operatorFilter" }] }); }
|
|
622
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: FilterMenuComponent, isStandalone: true, selector: "mona-filter-menu", inputs: { dateOptions: { classPropertyName: "dateOptions", publicName: "dateOptions", isSignal: true, isRequired: false, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, operators: { classPropertyName: "operators", publicName: "operators", isSignal: true, isRequired: false, transformFunction: null }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { apply: "apply", field: "fieldChange", operators: "operatorsChange", type: "typeChange", value: "valueChange" }, host: { properties: { "class": "baseClass()" } }, ngImport: i0, template: "<div [class]=\"filterMenuItemClass()\">\n @if (type() === \"string\") {\n <mona-dropdown-list\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n <mona-text-box\n [ngModel]=\"stringFilterValues()[0]\"\n (ngModelChange)=\"stringFilterValues.set([$event, stringFilterValues()[1]])\"\n [size]=\"size()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-text-box>\n }\n\n @if (type() === \"number\") {\n <mona-dropdown-list\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n <mona-numeric-text-box\n [ngModel]=\"numberFilterValues()[0]\"\n (ngModelChange)=\"numberFilterValues.set([$event, numberFilterValues()[1]])\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-numeric-text-box>\n }\n\n @if (type() === \"date\") {\n <mona-dropdown-list\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n\n @if (type() === \"date\") {\n <mona-date-picker\n [ngModel]=\"dateFilterValues()[0]\"\n (ngModelChange)=\"dateFilterValues.set([$event, dateFilterValues()[1]])\"\n [format]=\"effectiveDateOptions().format\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-date-picker>\n }\n }\n\n @if (type() === \"boolean\") {\n <mona-dropdown-list\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n }\n</div>\n@if (firstFilterValid()) {\n <div [class]=\"filterMenuItemClass()\">\n <mona-button-group selection=\"single\" [size]=\"size()\" [rounded]=\"rounded()\" [disabled]=\"!firstFilterValid()\">\n @for (item of connectorDataItems; track item) {\n <button\n monaButton\n [selected]=\"item.value === selectedConnectorItem()?.value\"\n (selectedChange)=\"onConnectorChange(item, $event)\">\n {{ item.text }}\n </button>\n }\n </mona-button-group>\n </div>\n}\n@if (!!selectedConnectorItem()) {\n <div [class]=\"filterMenuItemClass()\">\n @if (type() === \"string\") {\n <mona-dropdown-list\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n <mona-text-box\n [ngModel]=\"stringFilterValues()[1]\"\n (ngModelChange)=\"stringFilterValues.set([stringFilterValues()[0], $event])\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-text-box>\n }\n\n @if (type() === \"number\") {\n <mona-dropdown-list\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n\n <mona-numeric-text-box\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"numberFilterValues()[1]\"\n (ngModelChange)=\"numberFilterValues.set([numberFilterValues()[0], $event])\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-numeric-text-box>\n }\n\n @if (type() === \"date\") {\n <mona-dropdown-list\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n\n @if (type() === \"date\") {\n <mona-date-picker\n [ngModel]=\"dateFilterValues()[1]\"\n (ngModelChange)=\"dateFilterValues.set([dateFilterValues()[0], $event])\"\n [format]=\"effectiveDateOptions().format\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-date-picker>\n }\n }\n\n @if (type() === \"boolean\") {\n <mona-dropdown-list\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n }\n </div>\n}\n<div [class]=\"`${filterMenuItemClass()} ${filterMenuActionsClass()}`\">\n <button\n monaButton\n (click)=\"onFilterApply()\"\n [look]=\"'primary'\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"applyDisabled()\">\n Apply\n </button>\n <button monaButton (click)=\"onFilterClear()\" [look]=\"'default'\" [size]=\"size()\" [rounded]=\"rounded()\">Clear</button>\n</div>\n", dependencies: [{ kind: "component", type: DropdownListComponent, selector: "mona-dropdown-list", inputs: ["aria-label", "aria-labelledby", "data", "disabled", "itemDisabled", "invalid", "loading", "placeholder", "popupClass", "popupHeight", "popupWidth", "readonly", "required", "rounded", "showClearButton", "size", "textField", "touched", "class", "valueField", "value"], outputs: ["close", "closed", "disabledChange", "open", "opened", "touch", "valueChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TextBoxComponent, selector: "mona-text-box", inputs: ["clearButton", "disabled", "inputAttributes", "inputClass", "inputStyle", "invalid", "placeholder", "readonly", "required", "rounded", "size", "touched", "type", "class", "value"], outputs: ["inputBlur", "inputFocus", "touch", "valueChange"] }, { kind: "component", type: NumericTextBoxComponent, selector: "mona-numeric-text-box", inputs: ["aria-label", "decimals", "disabled", "formatter", "maxValue", "minValue", "nullable", "readonly", "required", "invalid", "rounded", "size", "spinners", "step", "tabindex", "touched", "class", "value"], outputs: ["inputBlur", "inputFocus", "inputFocusOut", "touch", "valueChange"] }, { kind: "component", type: DatePickerComponent, selector: "mona-date-picker", inputs: ["disabled", "disabledDates", "firstDay", "format", "invalid", "max", "min", "placeholder", "popupClass", "popupHeight", "popupWidth", "readonly", "readonlyInput", "required", "rounded", "showClearButton", "size", "touched", "class", "value", "weekNumber"], outputs: ["close", "closed", "open", "opened", "touch", "valueChange"] }, { kind: "component", type: ButtonGroupComponent, selector: "mona-button-group", inputs: ["allowEmpty", "aria-label", "disabled", "look", "rounded", "selection", "size", "class"], outputs: ["buttonClick", "disabledChange", "selectionChange"] }, { kind: "directive", type: ButtonDirective, selector: "button[monaButton]", inputs: ["aria-haspopup", "disabled", "iconOnly", "loading", "look", "rounded", "selected", "size", "tabindex", "toggleable", "class"], outputs: ["disabledChange", "loadingChange", "lookChange", "selectedChange"] }, { kind: "pipe", type: ValuelessOperatorPipe, name: "valuelessOperator" }, { kind: "pipe", type: OperatorFilterPipe, name: "operatorFilter" }] }); }
|
|
653
623
|
}
|
|
654
624
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: FilterMenuComponent, decorators: [{
|
|
655
625
|
type: Component,
|
|
@@ -665,7 +635,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
|
|
|
665
635
|
OperatorFilterPipe
|
|
666
636
|
], host: {
|
|
667
637
|
"[class]": "baseClass()"
|
|
668
|
-
}, template: "<div [class]=\"filterMenuItemClass()\">\
|
|
638
|
+
}, template: "<div [class]=\"filterMenuItemClass()\">\n @if (type() === \"string\") {\n <mona-dropdown-list\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n <mona-text-box\n [ngModel]=\"stringFilterValues()[0]\"\n (ngModelChange)=\"stringFilterValues.set([$event, stringFilterValues()[1]])\"\n [size]=\"size()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-text-box>\n }\n\n @if (type() === \"number\") {\n <mona-dropdown-list\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n <mona-numeric-text-box\n [ngModel]=\"numberFilterValues()[0]\"\n (ngModelChange)=\"numberFilterValues.set([$event, numberFilterValues()[1]])\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-numeric-text-box>\n }\n\n @if (type() === \"date\") {\n <mona-dropdown-list\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n\n @if (type() === \"date\") {\n <mona-date-picker\n [ngModel]=\"dateFilterValues()[0]\"\n (ngModelChange)=\"dateFilterValues.set([$event, dateFilterValues()[1]])\"\n [format]=\"effectiveDateOptions().format\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[0]?.value | valuelessOperator\"></mona-date-picker>\n }\n }\n\n @if (type() === \"boolean\") {\n <mona-dropdown-list\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [ngModel]=\"selectedFilterMenuDataItemList()[0]\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n (ngModelChange)=\"onFilterOperatorChange(0, $event)\"></mona-dropdown-list>\n }\n</div>\n@if (firstFilterValid()) {\n <div [class]=\"filterMenuItemClass()\">\n <mona-button-group selection=\"single\" [size]=\"size()\" [rounded]=\"rounded()\" [disabled]=\"!firstFilterValid()\">\n @for (item of connectorDataItems; track item) {\n <button\n monaButton\n [selected]=\"item.value === selectedConnectorItem()?.value\"\n (selectedChange)=\"onConnectorChange(item, $event)\">\n {{ item.text }}\n </button>\n }\n </mona-button-group>\n </div>\n}\n@if (!!selectedConnectorItem()) {\n <div [class]=\"filterMenuItemClass()\">\n @if (type() === \"string\") {\n <mona-dropdown-list\n [data]=\"stringFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n <mona-text-box\n [ngModel]=\"stringFilterValues()[1]\"\n (ngModelChange)=\"stringFilterValues.set([stringFilterValues()[0], $event])\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-text-box>\n }\n\n @if (type() === \"number\") {\n <mona-dropdown-list\n [data]=\"numericFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n\n <mona-numeric-text-box\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"numberFilterValues()[1]\"\n (ngModelChange)=\"numberFilterValues.set([numberFilterValues()[0], $event])\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-numeric-text-box>\n }\n\n @if (type() === \"date\") {\n <mona-dropdown-list\n [data]=\"dateFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n\n @if (type() === \"date\") {\n <mona-date-picker\n [ngModel]=\"dateFilterValues()[1]\"\n (ngModelChange)=\"dateFilterValues.set([dateFilterValues()[0], $event])\"\n [format]=\"effectiveDateOptions().format\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"selectedFilterMenuDataItemList()[1]?.value | valuelessOperator\"></mona-date-picker>\n }\n }\n\n @if (type() === \"boolean\") {\n <mona-dropdown-list\n [data]=\"booleanFilterMenuDataItems | operatorFilter: operators()\"\n textField=\"text\"\n valueField=\"value\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [ngModel]=\"selectedFilterMenuDataItemList()[1]\"\n (ngModelChange)=\"onFilterOperatorChange(1, $event)\"></mona-dropdown-list>\n }\n </div>\n}\n<div [class]=\"`${filterMenuItemClass()} ${filterMenuActionsClass()}`\">\n <button\n monaButton\n (click)=\"onFilterApply()\"\n [look]=\"'primary'\"\n [size]=\"size()\"\n [rounded]=\"rounded()\"\n [disabled]=\"applyDisabled()\">\n Apply\n </button>\n <button monaButton (click)=\"onFilterClear()\" [look]=\"'default'\" [size]=\"size()\" [rounded]=\"rounded()\">Clear</button>\n</div>\n" }]
|
|
669
639
|
}], ctorParameters: () => [], propDecorators: { apply: [{ type: i0.Output, args: ["apply"] }], dateOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "dateOptions", required: false }] }], field: [{ type: i0.Input, args: [{ isSignal: true, alias: "field", required: false }] }, { type: i0.Output, args: ["fieldChange"] }], operators: [{ type: i0.Input, args: [{ isSignal: true, alias: "operators", required: false }] }, { type: i0.Output, args: ["operatorsChange"] }], rounded: [{ type: i0.Input, args: [{ isSignal: true, alias: "rounded", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }, { type: i0.Output, args: ["typeChange"] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }] } });
|
|
670
640
|
|
|
671
641
|
/*
|
|
@@ -2,7 +2,7 @@ import { NgTemplateOutlet } from '@angular/common';
|
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { inject, computed, input, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
4
4
|
import { ImmutableDictionary } from '@mirei/ts-collections';
|
|
5
|
-
import { c as GridService } from './nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-
|
|
5
|
+
import { c as GridService } from './nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-BRZUd8cE.mjs';
|
|
6
6
|
|
|
7
7
|
class GridFooterCellComponent {
|
|
8
8
|
constructor() {
|
|
@@ -77,24 +77,24 @@ class GridFooterCellComponent {
|
|
|
77
77
|
}
|
|
78
78
|
#gridService;
|
|
79
79
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: GridFooterCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: GridFooterCellComponent, isStandalone: true, selector: "mona-grid-footer-cell", inputs: { column: { classPropertyName: "column", publicName: "column", isSignal: true, isRequired: true, transformFunction: null }, columnIndex: { classPropertyName: "columnIndex", publicName: "columnIndex", isSignal: true, isRequired: true, transformFunction: null }, groupKey: { classPropertyName: "groupKey", publicName: "groupKey", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
81
|
-
@if (templateRef(); as templateRef) {
|
|
82
|
-
<ng-container [ngTemplateOutlet]="templateRef" [ngTemplateOutletContext]="templateContext()"></ng-container>
|
|
83
|
-
} @else if (displayValue() != null) {
|
|
84
|
-
<span class="block truncate font-medium">{{ displayValue() }}</span>
|
|
85
|
-
}
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.6", type: GridFooterCellComponent, isStandalone: true, selector: "mona-grid-footer-cell", inputs: { column: { classPropertyName: "column", publicName: "column", isSignal: true, isRequired: true, transformFunction: null }, columnIndex: { classPropertyName: "columnIndex", publicName: "columnIndex", isSignal: true, isRequired: true, transformFunction: null }, groupKey: { classPropertyName: "groupKey", publicName: "groupKey", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
81
|
+
@if (templateRef(); as templateRef) {
|
|
82
|
+
<ng-container [ngTemplateOutlet]="templateRef" [ngTemplateOutletContext]="templateContext()"></ng-container>
|
|
83
|
+
} @else if (displayValue() != null) {
|
|
84
|
+
<span class="block truncate font-medium">{{ displayValue() }}</span>
|
|
85
|
+
}
|
|
86
86
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
87
87
|
}
|
|
88
88
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: GridFooterCellComponent, decorators: [{
|
|
89
89
|
type: Component,
|
|
90
90
|
args: [{
|
|
91
91
|
selector: "mona-grid-footer-cell",
|
|
92
|
-
template: `
|
|
93
|
-
@if (templateRef(); as templateRef) {
|
|
94
|
-
<ng-container [ngTemplateOutlet]="templateRef" [ngTemplateOutletContext]="templateContext()"></ng-container>
|
|
95
|
-
} @else if (displayValue() != null) {
|
|
96
|
-
<span class="block truncate font-medium">{{ displayValue() }}</span>
|
|
97
|
-
}
|
|
92
|
+
template: `
|
|
93
|
+
@if (templateRef(); as templateRef) {
|
|
94
|
+
<ng-container [ngTemplateOutlet]="templateRef" [ngTemplateOutletContext]="templateContext()"></ng-container>
|
|
95
|
+
} @else if (displayValue() != null) {
|
|
96
|
+
<span class="block truncate font-medium">{{ displayValue() }}</span>
|
|
97
|
+
}
|
|
98
98
|
`,
|
|
99
99
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
100
100
|
imports: [NgTemplateOutlet]
|
|
@@ -102,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
|
|
|
102
102
|
}], propDecorators: { column: [{ type: i0.Input, args: [{ isSignal: true, alias: "column", required: true }] }], columnIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "columnIndex", required: true }] }], groupKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupKey", required: false }] }] } });
|
|
103
103
|
|
|
104
104
|
export { GridFooterCellComponent };
|
|
105
|
-
//# sourceMappingURL=nanahoshi-mona-ui-grid-grid-footer-cell.component-
|
|
105
|
+
//# sourceMappingURL=nanahoshi-mona-ui-grid-grid-footer-cell.component-B6FBLtrr.mjs.map
|