@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.
Files changed (176) hide show
  1. package/auto-complete/package.json +4 -0
  2. package/avatar/package.json +4 -0
  3. package/breadcrumb/package.json +4 -0
  4. package/button/package.json +4 -0
  5. package/button-group/package.json +4 -0
  6. package/calendar/package.json +4 -0
  7. package/check-box/package.json +4 -0
  8. package/chip/package.json +4 -0
  9. package/circular-progress-bar/package.json +4 -0
  10. package/color-gradient/package.json +4 -0
  11. package/color-palette/package.json +4 -0
  12. package/color-picker/package.json +4 -0
  13. package/combo-box/package.json +4 -0
  14. package/common/package.json +4 -0
  15. package/contextmenu/package.json +4 -0
  16. package/date-input/package.json +4 -0
  17. package/date-picker/package.json +4 -0
  18. package/datetime-picker/package.json +4 -0
  19. package/dialog/package.json +4 -0
  20. package/dropdown-button/package.json +4 -0
  21. package/dropdown-list/package.json +4 -0
  22. package/dropdowns/package.json +4 -0
  23. package/editor/package.json +4 -0
  24. package/expansion-panel/package.json +4 -0
  25. package/fesm2022/nanahoshi-mona-ui-auto-complete.mjs +40 -55
  26. package/fesm2022/nanahoshi-mona-ui-breadcrumb.mjs +24 -58
  27. package/fesm2022/nanahoshi-mona-ui-button-group.mjs +37 -48
  28. package/fesm2022/nanahoshi-mona-ui-button.mjs +130 -129
  29. package/fesm2022/nanahoshi-mona-ui-calendar.mjs +69 -165
  30. package/fesm2022/nanahoshi-mona-ui-check-box.mjs +81 -128
  31. package/fesm2022/nanahoshi-mona-ui-chip.mjs +102 -112
  32. package/fesm2022/nanahoshi-mona-ui-circular-progress-bar.mjs +11 -25
  33. package/fesm2022/nanahoshi-mona-ui-color-gradient.mjs +41 -92
  34. package/fesm2022/nanahoshi-mona-ui-color-palette.mjs +27 -49
  35. package/fesm2022/nanahoshi-mona-ui-color-picker.mjs +64 -65
  36. package/fesm2022/nanahoshi-mona-ui-combo-box.mjs +39 -61
  37. package/fesm2022/nanahoshi-mona-ui-date-input.mjs +12 -15
  38. package/fesm2022/nanahoshi-mona-ui-date-picker.mjs +44 -33
  39. package/fesm2022/nanahoshi-mona-ui-datetime-picker.mjs +58 -60
  40. package/fesm2022/nanahoshi-mona-ui-dialog.mjs +52 -165
  41. package/fesm2022/nanahoshi-mona-ui-dropdown-list.mjs +36 -59
  42. package/fesm2022/nanahoshi-mona-ui-dropdowns.mjs +56 -61
  43. package/fesm2022/nanahoshi-mona-ui-editor.mjs +302 -81
  44. package/fesm2022/nanahoshi-mona-ui-expansion-panel.mjs +33 -84
  45. package/fesm2022/nanahoshi-mona-ui-fieldset.mjs +12 -45
  46. package/fesm2022/nanahoshi-mona-ui-filter.mjs +18 -48
  47. package/fesm2022/{nanahoshi-mona-ui-grid-grid-footer-cell.component-B9SQH5N-.mjs → nanahoshi-mona-ui-grid-grid-footer-cell.component-B6FBLtrr.mjs} +14 -14
  48. 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
  49. package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-DCd8K6ng.mjs +121 -0
  50. package/fesm2022/{nanahoshi-mona-ui-grid-grid-toggle.component-DIUutx9s.mjs → nanahoshi-mona-ui-grid-grid-toggle.component-Dl8Hlkhj.mjs} +26 -55
  51. package/fesm2022/nanahoshi-mona-ui-grid-grid-virtual-list.component-C5FRZlvv.mjs +231 -0
  52. package/fesm2022/{nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-C3eZIaJK.mjs → nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-BRZUd8cE.mjs} +167 -451
  53. package/fesm2022/nanahoshi-mona-ui-grid.mjs +1 -1
  54. package/fesm2022/nanahoshi-mona-ui-internal-indicator-icon.mjs +10 -28
  55. package/fesm2022/nanahoshi-mona-ui-internal-list.mjs +57 -87
  56. package/fesm2022/nanahoshi-mona-ui-internal-tree.mjs +48 -139
  57. package/fesm2022/nanahoshi-mona-ui-internal.mjs +29 -1
  58. package/fesm2022/nanahoshi-mona-ui-list-box.mjs +10 -32
  59. package/fesm2022/nanahoshi-mona-ui-list-view.mjs +8 -21
  60. package/fesm2022/nanahoshi-mona-ui-menubar.mjs +50 -156
  61. package/fesm2022/nanahoshi-mona-ui-multi-select.mjs +40 -69
  62. package/fesm2022/nanahoshi-mona-ui-notification.mjs +32 -116
  63. package/fesm2022/nanahoshi-mona-ui-numeric-text-box.mjs +81 -107
  64. package/fesm2022/nanahoshi-mona-ui-pager.mjs +33 -85
  65. package/fesm2022/nanahoshi-mona-ui-placeholder.mjs +12 -34
  66. package/fesm2022/nanahoshi-mona-ui-popover.mjs +31 -52
  67. package/fesm2022/nanahoshi-mona-ui-popup-menu.mjs +38 -110
  68. package/fesm2022/nanahoshi-mona-ui-popup.mjs +4 -4
  69. package/fesm2022/nanahoshi-mona-ui-progress-bar.mjs +21 -62
  70. package/fesm2022/nanahoshi-mona-ui-radio-button.mjs +66 -111
  71. package/fesm2022/nanahoshi-mona-ui-scroll-view.mjs +60 -151
  72. package/fesm2022/nanahoshi-mona-ui-slider.mjs +117 -173
  73. package/fesm2022/nanahoshi-mona-ui-split-button.mjs +32 -45
  74. package/fesm2022/nanahoshi-mona-ui-splitter.mjs +29 -64
  75. package/fesm2022/nanahoshi-mona-ui-stepper.mjs +38 -101
  76. package/fesm2022/nanahoshi-mona-ui-switch.mjs +58 -79
  77. package/fesm2022/nanahoshi-mona-ui-tabs.mjs +42 -118
  78. package/fesm2022/nanahoshi-mona-ui-text-area.mjs +29 -37
  79. package/fesm2022/nanahoshi-mona-ui-text-box.mjs +60 -81
  80. package/fesm2022/nanahoshi-mona-ui-theme.mjs +1111 -269
  81. package/fesm2022/nanahoshi-mona-ui-time-picker.mjs +45 -39
  82. package/fesm2022/nanahoshi-mona-ui-time-selector.mjs +45 -109
  83. package/fesm2022/nanahoshi-mona-ui-tooltip.mjs +54 -82
  84. package/fesm2022/nanahoshi-mona-ui-tree-view.mjs +2 -2
  85. package/fesm2022/nanahoshi-mona-ui-window.mjs +35 -115
  86. package/fieldset/package.json +4 -0
  87. package/filter/package.json +4 -0
  88. package/grid/package.json +4 -0
  89. package/internal/filter-input/package.json +4 -0
  90. package/internal/indicator-icon/package.json +4 -0
  91. package/internal/list/package.json +4 -0
  92. package/internal/package.json +4 -0
  93. package/internal/tree/package.json +4 -0
  94. package/list/package.json +4 -0
  95. package/list-box/package.json +4 -0
  96. package/list-view/package.json +4 -0
  97. package/menubar/package.json +4 -0
  98. package/multi-select/package.json +4 -0
  99. package/notification/package.json +4 -0
  100. package/numeric-text-box/package.json +4 -0
  101. package/package.json +31 -5
  102. package/pager/package.json +4 -0
  103. package/placeholder/package.json +4 -0
  104. package/popover/package.json +4 -0
  105. package/popup/package.json +4 -0
  106. package/popup-menu/package.json +4 -0
  107. package/progress-bar/package.json +4 -0
  108. package/query/package.json +4 -0
  109. package/radio-button/package.json +4 -0
  110. package/scroll-view/package.json +4 -0
  111. package/slider/package.json +4 -0
  112. package/split-button/package.json +4 -0
  113. package/splitter/package.json +4 -0
  114. package/stepper/package.json +4 -0
  115. package/switch/package.json +4 -0
  116. package/tabs/package.json +4 -0
  117. package/text-area/package.json +4 -0
  118. package/text-box/package.json +4 -0
  119. package/theme/package.json +4 -0
  120. package/time-picker/package.json +4 -0
  121. package/time-selector/package.json +4 -0
  122. package/tooltip/package.json +4 -0
  123. package/tree-view/package.json +4 -0
  124. package/types/nanahoshi-mona-ui-auto-complete.d.ts +6 -7
  125. package/types/nanahoshi-mona-ui-breadcrumb.d.ts +4 -6
  126. package/types/nanahoshi-mona-ui-button-group.d.ts +2 -3
  127. package/types/nanahoshi-mona-ui-button.d.ts +6 -6
  128. package/types/nanahoshi-mona-ui-calendar.d.ts +21 -22
  129. package/types/nanahoshi-mona-ui-check-box.d.ts +6 -9
  130. package/types/nanahoshi-mona-ui-chip.d.ts +2 -3
  131. package/types/nanahoshi-mona-ui-circular-progress-bar.d.ts +2 -4
  132. package/types/nanahoshi-mona-ui-color-gradient.d.ts +10 -11
  133. package/types/nanahoshi-mona-ui-color-palette.d.ts +4 -5
  134. package/types/nanahoshi-mona-ui-color-picker.d.ts +6 -8
  135. package/types/nanahoshi-mona-ui-combo-box.d.ts +6 -7
  136. package/types/nanahoshi-mona-ui-date-input.d.ts +2 -3
  137. package/types/nanahoshi-mona-ui-date-picker.d.ts +2 -3
  138. package/types/nanahoshi-mona-ui-dialog.d.ts +7 -8
  139. package/types/nanahoshi-mona-ui-dropdown-list.d.ts +6 -7
  140. package/types/nanahoshi-mona-ui-dropdowns.d.ts +2 -3
  141. package/types/nanahoshi-mona-ui-editor.d.ts +17 -17
  142. package/types/nanahoshi-mona-ui-expansion-panel.d.ts +8 -10
  143. package/types/nanahoshi-mona-ui-fieldset.d.ts +6 -8
  144. package/types/nanahoshi-mona-ui-filter.d.ts +3 -4
  145. package/types/nanahoshi-mona-ui-grid.d.ts +16 -17
  146. package/types/nanahoshi-mona-ui-internal-indicator-icon.d.ts +0 -1
  147. package/types/nanahoshi-mona-ui-internal-tree.d.ts +16 -16
  148. package/types/nanahoshi-mona-ui-internal.d.ts +8 -1
  149. package/types/nanahoshi-mona-ui-list-box.d.ts +4 -5
  150. package/types/nanahoshi-mona-ui-list-view.d.ts +2 -3
  151. package/types/nanahoshi-mona-ui-menubar.d.ts +7 -8
  152. package/types/nanahoshi-mona-ui-multi-select.d.ts +8 -9
  153. package/types/nanahoshi-mona-ui-numeric-text-box.d.ts +2 -3
  154. package/types/nanahoshi-mona-ui-pager.d.ts +6 -7
  155. package/types/nanahoshi-mona-ui-placeholder.d.ts +4 -6
  156. package/types/nanahoshi-mona-ui-popover.d.ts +8 -9
  157. package/types/nanahoshi-mona-ui-popup-menu.d.ts +12 -13
  158. package/types/nanahoshi-mona-ui-progress-bar.d.ts +8 -9
  159. package/types/nanahoshi-mona-ui-radio-button.d.ts +8 -11
  160. package/types/nanahoshi-mona-ui-scroll-view.d.ts +18 -20
  161. package/types/nanahoshi-mona-ui-slider.d.ts +18 -18
  162. package/types/nanahoshi-mona-ui-split-button.d.ts +2 -3
  163. package/types/nanahoshi-mona-ui-splitter.d.ts +6 -8
  164. package/types/nanahoshi-mona-ui-stepper.d.ts +13 -14
  165. package/types/nanahoshi-mona-ui-switch.d.ts +6 -7
  166. package/types/nanahoshi-mona-ui-tabs.d.ts +15 -17
  167. package/types/nanahoshi-mona-ui-text-area.d.ts +2 -4
  168. package/types/nanahoshi-mona-ui-text-box.d.ts +4 -6
  169. package/types/nanahoshi-mona-ui-theme.d.ts +111 -12
  170. package/types/nanahoshi-mona-ui-time-picker.d.ts +2 -3
  171. package/types/nanahoshi-mona-ui-time-selector.d.ts +10 -11
  172. package/types/nanahoshi-mona-ui-tooltip.d.ts +4 -5
  173. package/types/nanahoshi-mona-ui-window.d.ts +16 -17
  174. package/window/package.json +4 -0
  175. package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-Dgea-O0X.mjs +0 -130
  176. 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, inject, contentChildren, TemplateRef, computed, contentChild, input, model, Component } from '@angular/core';
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 expansionPanelBaseVariants = cva(`
44
- block w-full bg-background overflow-hidden
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 expansionPanelHeaderVariants = cva(`
59
- w-full flex items-center justify-between
60
- px-2 py-1
61
- bg-background-dark
62
- cursor-pointer
63
- font-medium
64
- text-foreground
65
- select-none
66
- transition-border-b duration-200
67
- focus-visible:outline-primary/40 focus-visible:border-b-transparent
68
- focus-visible:ring-1 focus-visible:ring-primary/40
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 border-solid"
71
+ false: "border-0 border-b border-border-subtle"
75
72
  },
76
73
  disabled: {
77
- true: "pointer-events-none opacity-50 cursor-not-allowed select-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 expansionPanelHeaderTitleVariants = cva(`
83
- p-1 flex-1
79
+ const expansionPanelHeaderTitleThemeVariants = cva(`
80
+ p-1 flex-1
84
81
  `);
85
- const expansionPanelIconContainerVariants = cva(``, {
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 expansionPanelContentVariants = cva(`
94
- text-foreground
95
- grid
96
- transition-[grid-template-rows] duration-300 ease-out
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(theme)({ rounded });
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(theme)({ expanded });
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(theme)({ collapsed, disabled });
122
+ return expansionPanelHeaderThemeVariants({ collapsed, disabled });
171
123
  }, /* @ts-ignore */
172
124
  ...(ngDevMode ? [{ debugName: "headerClass" }] : /* istanbul ignore next */ []));
173
125
  this.headerTitleClass = computed(() => {
174
- const theme = this.#themeService.theme();
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(theme)({ hasTemplate });
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\r\n [class]=\"headerClass()\"\r\n role=\"button\"\r\n [attr.tabindex]=\"disabled() ? -1 : 0\"\r\n [attr.aria-expanded]=\"expanded()\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-disabled]=\"disabled() ? 'true' : undefined\"\r\n (click)=\"toggle()\"\r\n (keydown.enter)=\"$event.preventDefault(); toggle()\"\r\n (keydown.space)=\"$event.preventDefault(); toggle()\">\r\n <div [class]=\"headerTitleClass()\">\r\n @if (titleTemplate()) {\r\n <ng-container [ngTemplateOutlet]=\"titleTemplate()\"></ng-container>\r\n } @else {\r\n {{ title() }}\r\n }\r\n </div>\r\n <div>\r\n @for (action of actionsTemplateList(); track $index) {\r\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\r\n }\r\n </div>\r\n <div [class]=\"iconContainerClass()\">\r\n @if (iconTemplate()) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"iconTemplate()\"\r\n [ngTemplateOutletContext]=\"{ $implicit: expanded() }\"></ng-container>\r\n } @else {\r\n @if (expanded()) {\r\n <svg lucideMinus [size]=\"14\"></svg>\r\n } @else {\r\n <svg lucidePlus [size]=\"14\"></svg>\r\n }\r\n }\r\n </div>\r\n</div>\r\n<div\r\n [id]=\"contentId\"\r\n [class]=\"contentClass()\"\r\n [attr.aria-hidden]=\"!expanded()\"\r\n [attr.inert]=\"!expanded() ? true : undefined\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\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]" }] }); }
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\r\n [class]=\"headerClass()\"\r\n role=\"button\"\r\n [attr.tabindex]=\"disabled() ? -1 : 0\"\r\n [attr.aria-expanded]=\"expanded()\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-disabled]=\"disabled() ? 'true' : undefined\"\r\n (click)=\"toggle()\"\r\n (keydown.enter)=\"$event.preventDefault(); toggle()\"\r\n (keydown.space)=\"$event.preventDefault(); toggle()\">\r\n <div [class]=\"headerTitleClass()\">\r\n @if (titleTemplate()) {\r\n <ng-container [ngTemplateOutlet]=\"titleTemplate()\"></ng-container>\r\n } @else {\r\n {{ title() }}\r\n }\r\n </div>\r\n <div>\r\n @for (action of actionsTemplateList(); track $index) {\r\n <ng-container [ngTemplateOutlet]=\"action\"></ng-container>\r\n }\r\n </div>\r\n <div [class]=\"iconContainerClass()\">\r\n @if (iconTemplate()) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"iconTemplate()\"\r\n [ngTemplateOutletContext]=\"{ $implicit: expanded() }\"></ng-container>\r\n } @else {\r\n @if (expanded()) {\r\n <svg lucideMinus [size]=\"14\"></svg>\r\n } @else {\r\n <svg lucidePlus [size]=\"14\"></svg>\r\n }\r\n }\r\n </div>\r\n</div>\r\n<div\r\n [id]=\"contentId\"\r\n [class]=\"contentClass()\"\r\n [attr.aria-hidden]=\"!expanded()\"\r\n [attr.inert]=\"!expanded() ? true : undefined\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
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, inject, computed, contentChild, TemplateRef, input, Component } from '@angular/core';
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 fieldsetBaseVariants = cva(`
20
- block
18
+ const fieldsetBaseThemeVariants = cva(`
19
+ block
21
20
  `);
22
- const fieldsetVariants = cva(`
23
- bg-background
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 opacity-50 cursor-not-allowed select-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 fieldsetLegendVariants = cva(`
45
- ml-2
41
+ const fieldsetLegendThemeVariants = cva(`
42
+ ms-2
46
43
  `, {
47
44
  variants: {
48
45
  hasTemplate: {
49
46
  true: "",
50
- false: "bg-background-dark text-foreground border border-border px-2"
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
- const theme = this.#themeService.theme();
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(theme)({ rounded, disabled }), userClass);
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(theme)({ hasTemplate, rounded });
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 filterMenuBaseVariants = cva(`
223
- w-full flex flex-col
224
- p-1 gap-2
225
- bg-background-dark border border-border
226
- shadow-lg
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 filterMenuItemVariants = cva(`
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 filterMenuActionVariants = cva(`
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
- const theme = this.#themeService.theme();
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
- const theme = this.#themeService.theme();
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
- const theme = this.#themeService.theme();
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()\">\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" }]
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-C3eZIaJK.mjs';
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-B9SQH5N-.mjs.map
105
+ //# sourceMappingURL=nanahoshi-mona-ui-grid-grid-footer-cell.component-B6FBLtrr.mjs.map