xaml-ui 1.0.1 → 1.0.3

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 (45) hide show
  1. package/fesm2022/xaml-ui.mjs +1324 -612
  2. package/fesm2022/xaml-ui.mjs.map +1 -1
  3. package/lib/{layout/Common.d.ts → Common.d.ts} +3 -0
  4. package/lib/FrameworkElement.d.ts +22 -0
  5. package/lib/XamlRoot.d.ts +6 -0
  6. package/lib/basic-input/Button.d.ts +19 -0
  7. package/lib/basic-input/CheckBox.d.ts +11 -0
  8. package/lib/basic-input/ComboBox.d.ts +17 -0
  9. package/lib/basic-input/DropDownButton.d.ts +6 -0
  10. package/lib/basic-input/RadioButton.d.ts +24 -0
  11. package/lib/basic-input/Slider.d.ts +16 -0
  12. package/lib/basic-input/ToggleButton.d.ts +10 -0
  13. package/lib/basic-input/ToggleSwitch.d.ts +6 -0
  14. package/lib/collections/ListBox.d.ts +6 -0
  15. package/lib/collections/ListView.d.ts +6 -0
  16. package/lib/dialogs-and-flyouts/Flyout.d.ts +21 -0
  17. package/lib/icons/FontIcon.d.ts +13 -0
  18. package/lib/layout/Border.d.ts +4 -9
  19. package/lib/layout/Grid.d.ts +57 -0
  20. package/lib/layout/Panel.d.ts +11 -0
  21. package/lib/layout/StackPanel.d.ts +5 -5
  22. package/lib/primitives/Popup.d.ts +19 -0
  23. package/lib/primitives/Selector.d.ts +34 -0
  24. package/lib/scrolling/ScrollBar.d.ts +51 -0
  25. package/lib/scrolling/ScrollViewer.d.ts +30 -0
  26. package/lib/status-and-info/ToolTipService.d.ts +11 -0
  27. package/lib/text/TextBlock.d.ts +24 -0
  28. package/lib/text/TextBox.d.ts +18 -0
  29. package/package.json +1 -1
  30. package/public-api.d.ts +24 -16
  31. package/lib/indicators/FontIcon.d.ts +0 -13
  32. package/lib/indicators/TextBlock.d.ts +0 -24
  33. package/lib/inputs/Button.d.ts +0 -18
  34. package/lib/inputs/CheckBox.d.ts +0 -11
  35. package/lib/inputs/ListBox.d.ts +0 -18
  36. package/lib/inputs/RadioButton.d.ts +0 -26
  37. package/lib/inputs/Slider.d.ts +0 -16
  38. package/lib/inputs/TextBox.d.ts +0 -15
  39. package/lib/inputs/ToggleButton.d.ts +0 -10
  40. package/lib/inputs/ToggleSwitch.d.ts +0 -6
  41. package/lib/layout/FrameworkElement.d.ts +0 -15
  42. package/lib/layout/ScrollViewer.d.ts +0 -12
  43. package/lib/layout/ToolTipService.d.ts +0 -11
  44. package/lib/layout/XamlRoot.d.ts +0 -5
  45. package/lib/overlays/Flyout.d.ts +0 -12
@@ -1,35 +1,51 @@
1
1
  import * as i0 from '@angular/core';
2
- import { HostBinding, Input, Component, HostListener, ContentChildren, EventEmitter, Output, TemplateRef, ContentChild, Directive, NgModule } from '@angular/core';
2
+ import { HostBinding, Input, Component, EventEmitter, HostListener, ContentChild, Output, TemplateRef, ViewChild, ContentChildren, Directive, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
 
6
- class FrameworkElement {
6
+ function toJustification(value) {
7
+ return value.toLowerCase();
8
+ }
9
+ function toAlignment(value) {
10
+ switch (value) {
11
+ case 'Top':
12
+ return 'flex-start';
13
+ case 'Center':
14
+ return 'center';
15
+ case 'Bottom':
16
+ return 'flex-end';
17
+ case 'Stretch':
18
+ return 'stretch';
19
+ }
20
+ }
21
+
22
+ class FrameworkElementComponent {
7
23
  constructor() {
8
24
  this.HorizontalAlignment = 'Stretch';
9
25
  this.VerticalAlignment = 'Stretch';
26
+ this._id = FrameworkElementComponent._nextId++;
27
+ }
28
+ get width() {
29
+ if (this.Width !== undefined)
30
+ return this.Width;
31
+ return this.HorizontalAlignment === 'Stretch' ? undefined : 'min-content';
32
+ }
33
+ get height() {
34
+ if (this.Height !== undefined)
35
+ return this.Height;
36
+ return this.VerticalAlignment === 'Stretch' ? undefined : 'min-content';
10
37
  }
11
38
  get justifySelf() {
12
- return this.HorizontalAlignment.toLowerCase();
39
+ return toJustification(this.HorizontalAlignment);
13
40
  }
14
41
  get alignSelf() {
15
- switch (this.VerticalAlignment) {
16
- case 'Top':
17
- return 'flex-start';
18
- case 'Center':
19
- return 'center';
20
- case 'Bottom':
21
- return 'flex-end';
22
- case 'Stretch':
23
- return 'stretch';
24
- }
25
- }
26
- get overflow() {
27
- return 'clip';
42
+ return toAlignment(this.VerticalAlignment);
28
43
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FrameworkElement, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FrameworkElement, isStandalone: true, selector: "FrameworkElement", inputs: { Width: "Width", Height: "Height", HorizontalAlignment: "HorizontalAlignment", VerticalAlignment: "VerticalAlignment", Margin: "Margin", Padding: "Padding" }, host: { properties: { "style.width": "this.Width", "style.height": "this.Height", "style.margin": "this.Margin", "style.padding": "this.Padding", "style.justify-self": "this.justifySelf", "style.align-self": "this.alignSelf", "style.overflow": "this.overflow" } }, ngImport: i0, template: `<ng-container/>`, isInline: true }); }
44
+ static { this._nextId = 1; }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FrameworkElementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
46
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FrameworkElementComponent, isStandalone: true, selector: "FrameworkElement", inputs: { Width: "Width", MinWidth: "MinWidth", MaxWidth: "MaxWidth", Height: "Height", MinHeight: "MinHeight", MaxHeight: "MaxHeight", HorizontalAlignment: "HorizontalAlignment", VerticalAlignment: "VerticalAlignment", Margin: "Margin", Padding: "Padding" }, host: { properties: { "style.min-width": "this.MinWidth", "style.max-width": "this.MaxWidth", "style.min-height": "this.MinHeight", "style.max-height": "this.MaxHeight", "style.margin": "this.Margin", "style.padding": "this.Padding", "style.width": "this.width", "style.height": "this.height", "style.justify-self": "this.justifySelf", "style.align-self": "this.alignSelf" } }, ngImport: i0, template: `<ng-container/>`, isInline: true }); }
31
47
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FrameworkElement, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FrameworkElementComponent, decorators: [{
33
49
  type: Component,
34
50
  args: [{
35
51
  selector: 'FrameworkElement',
@@ -37,14 +53,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
37
53
  }]
38
54
  }], propDecorators: { Width: [{
39
55
  type: Input
56
+ }], MinWidth: [{
57
+ type: Input
40
58
  }, {
41
59
  type: HostBinding,
42
- args: ['style.width']
60
+ args: ['style.min-width']
61
+ }], MaxWidth: [{
62
+ type: Input
63
+ }, {
64
+ type: HostBinding,
65
+ args: ['style.max-width']
43
66
  }], Height: [{
44
67
  type: Input
68
+ }], MinHeight: [{
69
+ type: Input
45
70
  }, {
46
71
  type: HostBinding,
47
- args: ['style.height']
72
+ args: ['style.min-height']
73
+ }], MaxHeight: [{
74
+ type: Input
75
+ }, {
76
+ type: HostBinding,
77
+ args: ['style.max-height']
48
78
  }], HorizontalAlignment: [{
49
79
  type: Input
50
80
  }], VerticalAlignment: [{
@@ -59,549 +89,728 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
59
89
  }, {
60
90
  type: HostBinding,
61
91
  args: ['style.padding']
92
+ }], width: [{
93
+ type: HostBinding,
94
+ args: ['style.width']
95
+ }], height: [{
96
+ type: HostBinding,
97
+ args: ['style.height']
62
98
  }], justifySelf: [{
63
99
  type: HostBinding,
64
100
  args: ['style.justify-self']
65
101
  }], alignSelf: [{
66
102
  type: HostBinding,
67
103
  args: ['style.align-self']
68
- }], overflow: [{
69
- type: HostBinding,
70
- args: ['style.overflow']
71
104
  }] } });
72
105
 
73
- class TextBlock extends FrameworkElement {
74
- constructor() {
75
- super(...arguments);
76
- this.FontWeight = 'Normal';
77
- this.TextAlignment = 'Left';
78
- this.TextWrapping = 'NoWrap';
79
- }
80
- get fontWeight() {
81
- return TextBlock.ToFontWeight(this.FontWeight);
82
- }
83
- static ToFontWeight(value) {
84
- switch (value) {
85
- case 'Black':
86
- return 900;
87
- case 'Bold':
88
- return 700;
89
- case 'ExtraBlack':
90
- return 950;
91
- case 'ExtraBold':
92
- return 800;
93
- case 'ExtraLight':
94
- return 200;
95
- case 'Light':
96
- return 300;
97
- case 'Medium':
98
- return 500;
99
- case 'Normal':
100
- return 400;
101
- case 'SemiBold':
102
- return 600;
103
- case 'SemiLight':
104
- return 350;
105
- case 'Thin':
106
- return 100;
107
- }
108
- }
109
- get userSelect() {
110
- return this.IsTextSelectionEnabled === 'True' ? 'text' : 'none';
111
- }
112
- get textDecorationLine() {
113
- switch (this.TextDecorations) {
114
- case 'None':
115
- return 'none';
116
- case 'Strikethrough':
117
- return 'line-through';
118
- case 'Underline':
119
- return 'underline';
120
- default:
121
- return undefined;
122
- }
123
- }
124
- get textOverflow() {
125
- switch (this.TextTrimming) {
126
- case 'None':
127
- case 'Clip':
128
- return 'clip';
129
- case 'CharacterEllipsis':
130
- return 'Ellipsis';
131
- default:
132
- return undefined;
133
- }
134
- }
135
- get whiteSpace() {
136
- switch (this.TextWrapping) {
137
- case 'NoWrap':
138
- return 'nowrap';
139
- case 'Wrap':
140
- return 'normal';
141
- }
106
+ class PanelComponent extends FrameworkElementComponent {
107
+ get borderStyle() {
108
+ return this.BorderThickness !== undefined ? 'solid' : undefined;
142
109
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBlock, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
144
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: TextBlock, isStandalone: true, selector: "TextBlock", inputs: { FontFamily: "FontFamily", Text: "Text", FontSize: "FontSize", FontStyle: "FontStyle", FontWeight: "FontWeight", Foreground: "Foreground", TextAlignment: "TextAlignment", IsTextSelectionEnabled: "IsTextSelectionEnabled", TextDecorations: "TextDecorations", TextTrimming: "TextTrimming", TextWrapping: "TextWrapping" }, host: { properties: { "style.font-family": "this.FontFamily", "style.font-size": "this.FontSize", "style.font-style": "this.FontStyle", "style.color": "this.Foreground", "style.text-align": "this.TextAlignment", "style.font-weight": "this.fontWeight", "style.user-select": "this.userSelect", "style.text-decoration-line": "this.textDecorationLine", "style.text-overflow": "this.textOverflow", "style.white-space": "this.whiteSpace" } }, usesInheritance: true, ngImport: i0, template: `<ng-container>
145
- <ng-content *ngIf="Text === undefined"/>
146
- <ng-container *ngIf="Text !== undefined">{{Text}}</ng-container>
147
- </ng-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: PanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: PanelComponent, isStandalone: true, selector: "Border", inputs: { Background: "Background", CornerRadius: "CornerRadius", BorderThickness: "BorderThickness", BorderBrush: "BorderBrush" }, host: { properties: { "style.background": "this.Background", "style.border-radius": "this.CornerRadius", "style.border-width": "this.BorderThickness", "style.border-color": "this.BorderBrush", "style.border-style": "this.borderStyle" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid}\n"] }); }
148
112
  }
149
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBlock, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: PanelComponent, decorators: [{
150
114
  type: Component,
151
- args: [{
152
- selector: 'TextBlock',
153
- imports: [CommonModule],
154
- template: `<ng-container>
155
- <ng-content *ngIf="Text === undefined"/>
156
- <ng-container *ngIf="Text !== undefined">{{Text}}</ng-container>
157
- </ng-container>`
158
- }]
159
- }], propDecorators: { FontFamily: [{
160
- type: Input
161
- }, {
162
- type: HostBinding,
163
- args: ['style.font-family']
164
- }], Text: [{
165
- type: Input
166
- }], FontSize: [{
115
+ args: [{ selector: 'Border', template: `<ng-content/>`, styles: [":host{display:grid}\n"] }]
116
+ }], propDecorators: { Background: [{
167
117
  type: Input
168
118
  }, {
169
119
  type: HostBinding,
170
- args: ['style.font-size']
171
- }], FontStyle: [{
120
+ args: ['style.background']
121
+ }], CornerRadius: [{
172
122
  type: Input
173
123
  }, {
174
124
  type: HostBinding,
175
- args: ['style.font-style']
176
- }], FontWeight: [{
177
- type: Input
178
- }], Foreground: [{
125
+ args: ['style.border-radius']
126
+ }], BorderThickness: [{
179
127
  type: Input
180
128
  }, {
181
129
  type: HostBinding,
182
- args: ['style.color']
183
- }], TextAlignment: [{
130
+ args: ['style.border-width']
131
+ }], BorderBrush: [{
184
132
  type: Input
185
133
  }, {
186
134
  type: HostBinding,
187
- args: ['style.text-align']
188
- }], IsTextSelectionEnabled: [{
189
- type: Input
190
- }], TextDecorations: [{
191
- type: Input
192
- }], TextTrimming: [{
193
- type: Input
194
- }], TextWrapping: [{
195
- type: Input
196
- }], fontWeight: [{
197
- type: HostBinding,
198
- args: ['style.font-weight']
199
- }], userSelect: [{
200
- type: HostBinding,
201
- args: ['style.user-select']
202
- }], textDecorationLine: [{
203
- type: HostBinding,
204
- args: ['style.text-decoration-line']
205
- }], textOverflow: [{
206
- type: HostBinding,
207
- args: ['style.text-overflow']
208
- }], whiteSpace: [{
135
+ args: ['style.border-color']
136
+ }], borderStyle: [{
209
137
  type: HostBinding,
210
- args: ['style.white-space']
138
+ args: ['style.border-style']
211
139
  }] } });
212
140
 
213
- class FontIcon extends FrameworkElement {
141
+ class BorderComponent extends PanelComponent {
142
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: BorderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
143
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: BorderComponent, isStandalone: true, selector: "Border", usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid}\n"] }); }
144
+ }
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: BorderComponent, decorators: [{
146
+ type: Component,
147
+ args: [{ selector: 'Border', template: `<ng-content/>`, styles: [":host{display:grid}\n"] }]
148
+ }] });
149
+
150
+ class ButtonComponent extends BorderComponent {
214
151
  constructor() {
215
152
  super(...arguments);
216
- this.FontWeight = 'Normal';
153
+ this.IsEnabled = true;
154
+ this.Click = new EventEmitter();
155
+ this.HorizontalContentAlignment = 'Center';
156
+ this.VerticalContentAlignment = 'Center';
157
+ this.type = 'button';
217
158
  }
218
- get fontWeight() {
219
- return TextBlock.ToFontWeight(this.FontWeight);
159
+ get alignContent() {
160
+ return toAlignment(this.VerticalContentAlignment);
161
+ }
162
+ get justifyContent() {
163
+ return toJustification(this.HorizontalContentAlignment);
164
+ }
165
+ get disabled() {
166
+ return this.IsEnabled ? undefined : true;
167
+ }
168
+ get flyoutOpen() {
169
+ return this._popup?.IsOpen;
220
170
  }
221
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FontIcon, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
222
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FontIcon, isStandalone: true, selector: "FontIcon", inputs: { FontFamily: "FontFamily", FontSize: "FontSize", FontStyle: "FontStyle", FontWeight: "FontWeight", Glyph: "Glyph" }, host: { properties: { "style.font-family": "this.FontFamily", "style.font-size": "this.FontSize", "style.font-style": "this.FontStyle", "style.font-weight": "this.fontWeight" } }, usesInheritance: true, ngImport: i0, template: `{{Glyph}}`, isInline: true, styles: [":host{font-family:Segoe Fluent Icons,Segoe MDL2 Assets}\n"] }); }
171
+ onHostPointerEvent(event) {
172
+ if (!this.IsEnabled)
173
+ return;
174
+ this.Click.emit();
175
+ this._popup?.Show();
176
+ }
177
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
178
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ButtonComponent, isStandalone: true, selector: "Button", inputs: { IsEnabled: "IsEnabled", HorizontalContentAlignment: "HorizontalContentAlignment", VerticalContentAlignment: "VerticalContentAlignment" }, outputs: { Click: "Click" }, host: { listeners: { "click": "onHostPointerEvent($event)" }, properties: { "style.align-content": "this.alignContent", "style.justify-content": "this.justifyContent", "attr.type": "this.type", "attr.disabled": "this.disabled", "class.disabled": "this.disabled", "class.popup-open": "this.flyoutOpen" } }, queries: [{ propertyName: "_popup", first: true, predicate: ["ButtonFlyout"], descendants: true }], usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n"] }); }
223
179
  }
224
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FontIcon, decorators: [{
180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ButtonComponent, decorators: [{
225
181
  type: Component,
226
- args: [{ selector: 'FontIcon', template: `{{Glyph}}`, styles: [":host{font-family:Segoe Fluent Icons,Segoe MDL2 Assets}\n"] }]
227
- }], propDecorators: { FontFamily: [{
182
+ args: [{ selector: 'Button', template: `<ng-content/>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n"] }]
183
+ }], propDecorators: { IsEnabled: [{
228
184
  type: Input
229
- }, {
230
- type: HostBinding,
231
- args: ['style.font-family']
232
- }], FontSize: [{
185
+ }], Click: [{
186
+ type: Output
187
+ }], HorizontalContentAlignment: [{
233
188
  type: Input
234
- }, {
235
- type: HostBinding,
236
- args: ['style.font-size']
237
- }], FontStyle: [{
189
+ }], VerticalContentAlignment: [{
238
190
  type: Input
191
+ }], alignContent: [{
192
+ type: HostBinding,
193
+ args: ['style.align-content']
194
+ }], justifyContent: [{
195
+ type: HostBinding,
196
+ args: ['style.justify-content']
197
+ }], type: [{
198
+ type: HostBinding,
199
+ args: ['attr.type']
200
+ }], disabled: [{
201
+ type: HostBinding,
202
+ args: ['attr.disabled']
239
203
  }, {
240
204
  type: HostBinding,
241
- args: ['style.font-style']
242
- }], FontWeight: [{
243
- type: Input
244
- }], Glyph: [{
245
- type: Input
246
- }], fontWeight: [{
205
+ args: ['class.disabled']
206
+ }], flyoutOpen: [{
247
207
  type: HostBinding,
248
- args: ['style.font-weight']
208
+ args: ['class.popup-open']
209
+ }], _popup: [{
210
+ type: ContentChild,
211
+ args: ['ButtonFlyout']
212
+ }], onHostPointerEvent: [{
213
+ type: HostListener,
214
+ args: ['click', ['$event']]
249
215
  }] } });
250
216
 
251
- class Border extends FrameworkElement {
252
- get borderStyle() {
253
- return this.BorderThickness !== undefined ? 'solid' : undefined;
217
+ class CheckBoxComponent extends BorderComponent {
218
+ constructor() {
219
+ super(...arguments);
220
+ this.IsEnabled = true;
221
+ this.IsChecked = false;
222
+ this.IsCheckedChange = new EventEmitter();
254
223
  }
255
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Border, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
256
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: Border, isStandalone: true, selector: "Border", inputs: { Background: "Background", CornerRadius: "CornerRadius", BorderThickness: "BorderThickness", BorderBrush: "BorderBrush" }, host: { properties: { "style.background": "this.Background", "style.border-radius": "this.CornerRadius", "style.border-width": "this.BorderThickness", "style.border-color": "this.BorderBrush", "style.border-style": "this.borderStyle" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
224
+ onIsCheckedChange(event) {
225
+ this.IsChecked = (event.target).checked;
226
+ this.IsCheckedChange.emit(this.IsChecked);
227
+ }
228
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: CheckBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
229
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: CheckBoxComponent, isStandalone: true, selector: "CheckBox", inputs: { IsEnabled: "IsEnabled", IsChecked: "IsChecked" }, outputs: { IsCheckedChange: "IsCheckedChange" }, usesInheritance: true, ngImport: i0, template: `<label class="container">
230
+ <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
231
+ <div class="checkBox">
232
+ <div class="checkMark">&#xE73E;</div>
233
+ </div>
234
+ <div class="content">
235
+ <ng-content/>
236
+ </div>
237
+ </label>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=checkbox]:checked+.checkBox>.checkMark{display:grid;color:var(--TextOnAccentFillColorPrimary);animation:fade-in-animation var(--ControlNormalAnimationDuration) ease-out forwards}@keyframes fade-in-animation{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=checkbox]:not(:checked):active+.checkBox{background-color:var(--SubtleFillColorTransparent);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:var(--TextOnAccentFillColorSecondary)}input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:disabled+.checkBox{background-color:var(--AccentFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:var(--TextOnAccentFillColorDisabled)}.checkBox{display:grid;width:20px;height:20px;border-radius:var(--ControlCornerRadius);border-style:solid;border-width:var(--ControlBorderThickness)}.checkMark{display:none;font-family:var(--SymbolFontFamily);font-size:12pt;align-self:center;justify-self:center;color:var(--TextOnAccentFillColorPrimary)}@media (prefers-color-scheme: dark){.checkMark{color:var(--TextOnAccentFillColorPrimaryDark)}}.content{align-self:center}\n"] }); }
257
238
  }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Border, decorators: [{
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: CheckBoxComponent, decorators: [{
259
240
  type: Component,
260
- args: [{ selector: 'Border', imports: [CommonModule], template: `<ng-content/>`, styles: [":host{display:grid}\n"] }]
261
- }], propDecorators: { Background: [{
262
- type: Input
263
- }, {
264
- type: HostBinding,
265
- args: ['style.background']
266
- }], CornerRadius: [{
267
- type: Input
268
- }, {
269
- type: HostBinding,
270
- args: ['style.border-radius']
271
- }], BorderThickness: [{
241
+ args: [{ selector: 'CheckBox', template: `<label class="container">
242
+ <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
243
+ <div class="checkBox">
244
+ <div class="checkMark">&#xE73E;</div>
245
+ </div>
246
+ <div class="content">
247
+ <ng-content/>
248
+ </div>
249
+ </label>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=checkbox]:checked+.checkBox>.checkMark{display:grid;color:var(--TextOnAccentFillColorPrimary);animation:fade-in-animation var(--ControlNormalAnimationDuration) ease-out forwards}@keyframes fade-in-animation{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=checkbox]:not(:checked):active+.checkBox{background-color:var(--SubtleFillColorTransparent);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:var(--TextOnAccentFillColorSecondary)}input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:disabled+.checkBox{background-color:var(--AccentFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:var(--TextOnAccentFillColorDisabled)}.checkBox{display:grid;width:20px;height:20px;border-radius:var(--ControlCornerRadius);border-style:solid;border-width:var(--ControlBorderThickness)}.checkMark{display:none;font-family:var(--SymbolFontFamily);font-size:12pt;align-self:center;justify-self:center;color:var(--TextOnAccentFillColorPrimary)}@media (prefers-color-scheme: dark){.checkMark{color:var(--TextOnAccentFillColorPrimaryDark)}}.content{align-self:center}\n"] }]
250
+ }], propDecorators: { IsEnabled: [{
272
251
  type: Input
273
- }, {
274
- type: HostBinding,
275
- args: ['style.border-width']
276
- }], BorderBrush: [{
252
+ }], IsChecked: [{
277
253
  type: Input
278
- }, {
279
- type: HostBinding,
280
- args: ['style.border-color']
281
- }], borderStyle: [{
282
- type: HostBinding,
283
- args: ['style.border-style']
254
+ }], IsCheckedChange: [{
255
+ type: Output
284
256
  }] } });
285
257
 
286
- class Flyout {
258
+ const SelectorItemTemplate = `<ng-container *ngIf="ItemTemplate">
259
+ <ng-container *ngTemplateOutlet="ItemTemplate; context: { $implicit: item }"/>
260
+ </ng-container>
261
+ <ng-container *ngIf="!ItemTemplate">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container>`;
262
+ class SelectorComponent extends FrameworkElementComponent {
287
263
  constructor() {
288
- this.PlacementMode = 'Top';
289
- this.Id = 'xaml-flyout-' + Flyout._nextId++;
290
- this._popover = '';
264
+ super(...arguments);
265
+ this.IsEnabled = true;
266
+ this.HorizontalContentAlignment = 'Left';
267
+ this.VerticalContentAlignment = 'Center';
268
+ //ItemSource
269
+ this._itemSource = [];
270
+ //Selected index
271
+ this._selectedIndex = -1;
272
+ this.SelectedIndexChange = new EventEmitter();
273
+ this.SelectedValueChange = new EventEmitter();
274
+ this.SelectedItemChange = new EventEmitter();
291
275
  }
292
- static { this._nextId = 1; }
293
- get styles() {
294
- let anchor = `--${this.Id}-host`;
295
- let top;
296
- let left;
297
- let right;
298
- let bottom;
299
- let alignSelf;
300
- let justifySelf;
301
- let margin;
302
- switch (this.PlacementMode) {
303
- case 'Top':
304
- case 'TopEdgeAlignedLeft':
305
- case 'TopEdgeAlignedRight':
306
- bottom = `anchor(${anchor} top)`;
307
- left = `anchor(${anchor} left)`;
308
- right = `anchor(${anchor} right)`;
309
- alignSelf = 'flex-end';
310
- break;
311
- case 'Bottom':
312
- case 'BottomEdgeAlignedLeft':
313
- case 'BottomEdgeAlignedRight':
314
- top = `anchor(${anchor} bottom)`;
315
- left = `anchor(${anchor} left)`;
316
- right = `anchor(${anchor} right)`;
317
- alignSelf = 'flex-start';
318
- break;
319
- case 'Left':
320
- case 'LeftEdgeAlignedBottom':
321
- case 'LeftEdgeAlignedTop':
322
- right = `anchor(${anchor} left)`;
323
- top = `anchor(${anchor} top)`;
324
- bottom = `anchor(${anchor} bottom)`;
325
- justifySelf = 'right';
326
- break;
327
- case 'Right':
328
- case 'RightEdgeAlignedBottom':
329
- case 'RightEdgeAlignedTop':
330
- left = `anchor(${anchor} right)`;
331
- top = `anchor(${anchor} top)`;
332
- bottom = `anchor(${anchor} bottom)`;
333
- justifySelf = 'left';
334
- break;
335
- }
336
- switch (this.PlacementMode) {
337
- case 'Top':
338
- case 'Bottom':
339
- justifySelf = 'center';
340
- margin = '0 -100% 0 -100%';
341
- break;
342
- case 'TopEdgeAlignedLeft':
343
- case 'BottomEdgeAlignedLeft':
344
- justifySelf = 'left';
345
- margin = '0 -100% 0 0';
346
- break;
347
- case 'TopEdgeAlignedRight':
348
- case 'BottomEdgeAlignedRight':
349
- justifySelf = 'right';
350
- margin = '0 0 0 -100%';
351
- break;
352
- case 'Left':
353
- case 'Right':
354
- alignSelf = 'center';
355
- margin = '-100% 0 -100% 0';
356
- break;
357
- case 'LeftEdgeAlignedTop':
358
- case 'RightEdgeAlignedTop':
359
- alignSelf = 'flex-start';
360
- break;
361
- case 'LeftEdgeAlignedBottom':
362
- case 'RightEdgeAlignedBottom':
363
- alignSelf = 'flex-end';
364
- break;
365
- }
366
- return {
367
- 'position-anchor': anchor,
368
- 'top': top,
369
- 'left': left,
370
- 'right': right,
371
- 'bottom': bottom,
372
- 'align-self': alignSelf,
373
- 'justify-self': justifySelf,
374
- 'margin': margin
375
- };
276
+ get alignContent() {
277
+ return toAlignment(this.VerticalContentAlignment);
376
278
  }
377
- get class() {
378
- switch (this.PlacementMode) {
379
- case 'Top':
380
- case 'TopEdgeAlignedLeft':
381
- case 'TopEdgeAlignedRight':
382
- return "roll-up";
383
- case 'Bottom':
384
- case 'BottomEdgeAlignedLeft':
385
- case 'BottomEdgeAlignedRight':
386
- return "roll-down";
387
- case 'Left':
388
- case 'LeftEdgeAlignedBottom':
389
- case 'LeftEdgeAlignedTop':
390
- return "roll-left";
391
- case 'Right':
392
- case 'RightEdgeAlignedBottom':
393
- case 'RightEdgeAlignedTop':
394
- return "roll-right";
395
- }
279
+ get justifyContent() {
280
+ return toJustification(this.HorizontalContentAlignment);
281
+ }
282
+ get disabled() {
283
+ return !this.IsEnabled;
396
284
  }
397
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Flyout, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
398
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: Flyout, isStandalone: true, selector: "Flyout", inputs: { PlacementMode: "PlacementMode" }, host: { properties: { "attr.id": "this.Id", "attr.popover": "this._popover", "style": "this.styles", "class": "this.class" } }, ngImport: i0, template: `<div class="content"><ng-content/></div>`, isInline: true, styles: [":host{background-color:transparent;display:grid;padding:0;margin:0;border:0;overflow:hidden;pointer-events:none}:host>.content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:8px;opacity:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .25s,opacity .25s;border-color:#0000000f;background-color:#fcfcfc26}@media (prefers-color-scheme: dark){:host>.content{border-color:#0003;background-color:#2c2c2c26}}:host.roll-up>.content{transform:translateY(25%)}:host.roll-down>.content{transform:translateY(-25%)}:host.roll-left>.content{transform:translate(25%)}:host.roll-right>.content{transform:translate(-25%)}:host:popover-open{pointer-events:all}:host:popover-open>.content{transform:translate(0);opacity:1}\n"] }); }
285
+ get ItemSource() {
286
+ return this._itemSource;
287
+ }
288
+ set ItemSource(value) {
289
+ this._itemSource = value;
290
+ this.SelectedIndex = this.SelectedIndex;
291
+ }
292
+ get SelectedIndex() {
293
+ return this._selectedIndex;
294
+ }
295
+ set SelectedIndex(value) {
296
+ if (value < 0 && this.ItemSource.length > 0)
297
+ value = 0;
298
+ if (value >= this.ItemSource.length)
299
+ value = this.ItemSource.length - 1;
300
+ if (value == this._selectedIndex)
301
+ return;
302
+ this._selectedIndex = value;
303
+ this.SelectedIndexChange.emit(this.SelectedIndex);
304
+ this.SelectedValueChange.emit(this.SelectedValue);
305
+ this.SelectedItemChange.emit(this.SelectedItem);
306
+ }
307
+ //Selected value
308
+ get SelectedValue() {
309
+ if (this.SelectedIndex < 0 || this.SelectedIndex >= this.ItemSource.length)
310
+ return null;
311
+ return this.getValue(-1, this.ItemSource[this.SelectedIndex]);
312
+ }
313
+ set SelectedValue(value) {
314
+ this.SelectedIndex = this.ItemSource.findIndex(p => this.getValue(-1, p) == value);
315
+ }
316
+ //Selected item
317
+ get SelectedItem() {
318
+ if (this.SelectedIndex < 0 || this.SelectedIndex >= this.ItemSource.length)
319
+ return null;
320
+ return this.ItemSource[this.SelectedIndex];
321
+ }
322
+ set SelectedItem(value) {
323
+ this.SelectedIndex = this.ItemSource.findIndex(value);
324
+ }
325
+ getValue(index, item) {
326
+ return this.SelectedValuePath ? item[this.SelectedValuePath] : item;
327
+ }
328
+ onItemClick(event, index, item) {
329
+ if (this.SelectedIndex === index || !this.IsEnabled)
330
+ return;
331
+ this.SelectedIndex = index;
332
+ event.stopPropagation();
333
+ }
334
+ GetElement(index) {
335
+ return document.querySelector(`#xaml-selector-${this._id}-item-${index}`);
336
+ }
337
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: SelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
338
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: SelectorComponent, isStandalone: true, selector: "Selector", inputs: { IsEnabled: "IsEnabled", HorizontalContentAlignment: "HorizontalContentAlignment", VerticalContentAlignment: "VerticalContentAlignment", ItemSource: "ItemSource", SelectedIndex: "SelectedIndex", SelectedValue: "SelectedValue", SelectedItem: "SelectedItem", DisplayMemberPath: "DisplayMemberPath", SelectedValuePath: "SelectedValuePath" }, outputs: { SelectedIndexChange: "SelectedIndexChange", SelectedValueChange: "SelectedValueChange", SelectedItemChange: "SelectedItemChange" }, host: { properties: { "class.disabled": "this.disabled" } }, queries: [{ propertyName: "ItemTemplate", first: true, predicate: TemplateRef, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
399
339
  }
400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Flyout, decorators: [{
340
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: SelectorComponent, decorators: [{
401
341
  type: Component,
402
- args: [{ selector: 'Flyout', template: `<div class="content"><ng-content/></div>`, styles: [":host{background-color:transparent;display:grid;padding:0;margin:0;border:0;overflow:hidden;pointer-events:none}:host>.content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:8px;opacity:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .25s,opacity .25s;border-color:#0000000f;background-color:#fcfcfc26}@media (prefers-color-scheme: dark){:host>.content{border-color:#0003;background-color:#2c2c2c26}}:host.roll-up>.content{transform:translateY(25%)}:host.roll-down>.content{transform:translateY(-25%)}:host.roll-left>.content{transform:translate(25%)}:host.roll-right>.content{transform:translate(-25%)}:host:popover-open{pointer-events:all}:host:popover-open>.content{transform:translate(0);opacity:1}\n"] }]
403
- }], propDecorators: { PlacementMode: [{
342
+ args: [{
343
+ selector: 'Selector',
344
+ template: '',
345
+ }]
346
+ }], propDecorators: { ItemTemplate: [{
347
+ type: ContentChild,
348
+ args: [TemplateRef]
349
+ }], IsEnabled: [{
404
350
  type: Input
405
- }], Id: [{
406
- type: HostBinding,
407
- args: ['attr.id']
408
- }], _popover: [{
409
- type: HostBinding,
410
- args: ['attr.popover']
411
- }], styles: [{
412
- type: HostBinding,
413
- args: ['style']
414
- }], class: [{
351
+ }], HorizontalContentAlignment: [{
352
+ type: Input
353
+ }], VerticalContentAlignment: [{
354
+ type: Input
355
+ }], disabled: [{
415
356
  type: HostBinding,
416
- args: ['class']
357
+ args: ['class.disabled']
358
+ }], ItemSource: [{
359
+ type: Input
360
+ }], SelectedIndex: [{
361
+ type: Input
362
+ }], SelectedIndexChange: [{
363
+ type: Output
364
+ }], SelectedValue: [{
365
+ type: Input
366
+ }], SelectedValueChange: [{
367
+ type: Output
368
+ }], SelectedItem: [{
369
+ type: Input
370
+ }], SelectedItemChange: [{
371
+ type: Output
372
+ }], DisplayMemberPath: [{
373
+ type: Input
374
+ }], SelectedValuePath: [{
375
+ type: Input
417
376
  }] } });
418
377
 
419
- class Button extends Border {
378
+ class ScrollBarComponent extends FrameworkElementComponent {
420
379
  constructor() {
421
380
  super(...arguments);
381
+ this.Orientation = 'Vertical';
382
+ this.ViewportSize = 0;
383
+ this.ScrollSize = 0;
384
+ this.StepSize = 5;
385
+ this._value = 0;
386
+ this.ValueChange = new EventEmitter();
422
387
  this.IsEnabled = true;
423
- this.type = 'button';
424
- this._popover = null;
425
- this._flyoutOpen = false;
388
+ this._isScrolling = false;
389
+ this._startPointerPosition = 0;
390
+ this._startScrollPosition = 0;
426
391
  }
427
- get disabled() {
428
- return this.IsEnabled ? undefined : true;
392
+ get Value() {
393
+ return this._value;
429
394
  }
430
- ngAfterContentInit() {
431
- if (this._children.length === 0)
395
+ ;
396
+ set Value(value) {
397
+ let scrollRange = this.ScrollSize - this.ViewportSize;
398
+ if (value > scrollRange)
399
+ value = scrollRange;
400
+ if (value < 0)
401
+ value = 0;
402
+ this._value = value;
403
+ this.ValueChange.emit(value);
404
+ }
405
+ get decreaseGlyph() {
406
+ return this.Orientation === 'Vertical' ? '\ueddb' : '\uedd9';
407
+ }
408
+ get increaseGlyph() {
409
+ return this.Orientation === 'Vertical' ? '\ueddc' : '\uedda';
410
+ }
411
+ get class() {
412
+ return this.Orientation.toLowerCase();
413
+ }
414
+ getElementSize(element) {
415
+ return this.Orientation === 'Vertical' ? element.offsetHeight : element.offsetWidth;
416
+ }
417
+ getPointerPosition(event) {
418
+ return this.Orientation === 'Vertical' ? event.clientY : event.clientX;
419
+ }
420
+ get thumbStyle() {
421
+ if (!this._track)
422
+ return {};
423
+ let trackLength = this.getElementSize(this._track.nativeElement);
424
+ let scrollPosition = this.Value / (this.ScrollSize - this.ViewportSize);
425
+ let size = trackLength * (this.ViewportSize / this.ScrollSize);
426
+ let position = scrollPosition * (trackLength - size);
427
+ switch (this.Orientation) {
428
+ case 'Vertical':
429
+ return {
430
+ 'height': size + 'px',
431
+ 'top': position + 'px'
432
+ };
433
+ case 'Horizontal':
434
+ return {
435
+ 'width': size + 'px',
436
+ 'left': position + 'px'
437
+ };
438
+ }
439
+ }
440
+ onButtonDown(event, direction) {
441
+ event.target.setPointerCapture(event.pointerId);
442
+ this._interval = setInterval(() => {
443
+ this.Value += direction ? this.StepSize : -this.StepSize;
444
+ }, 50);
445
+ }
446
+ onButtonUp(event) {
447
+ event.target.releasePointerCapture(event.pointerId);
448
+ clearInterval(this._interval);
449
+ }
450
+ onTrackDown(event) {
451
+ let direction;
452
+ if (this.Orientation === 'Vertical') {
453
+ if (event.offsetY < this._thumb.nativeElement.offsetTop) {
454
+ direction = false;
455
+ }
456
+ if (this._thumb.nativeElement.offsetTop + this._thumb.nativeElement.offsetHeight < event.offsetY) {
457
+ direction = true;
458
+ }
459
+ }
460
+ else {
461
+ if (event.offsetX < this._thumb.nativeElement.offsetLeft) {
462
+ direction = false;
463
+ }
464
+ if (this._thumb.nativeElement.offsetLeft + this._thumb.nativeElement.offsetWidth < event.offsetX) {
465
+ direction = true;
466
+ }
467
+ }
468
+ if (direction === undefined)
432
469
  return;
433
- this._popoverTarget = this._children.first.Id;
470
+ event.target.setPointerCapture(event.pointerId);
471
+ this.Value += direction ? this.ViewportSize : -this.ViewportSize;
472
+ this._interval = setInterval(() => {
473
+ this.Value += direction ? this.ViewportSize : -this.ViewportSize;
474
+ }, 250);
434
475
  }
435
- ngAfterViewInit() {
436
- this._popover = document.querySelector('#' + this._popoverTarget);
476
+ onTrackUp(event) {
477
+ event.target.releasePointerCapture(event.pointerId);
478
+ clearInterval(this._interval);
437
479
  }
438
- onHostPointerEvent(event) {
439
- this._flyoutOpen = this._popover?.matches(':popover-open') ?? false;
480
+ onPointerDown(event) {
481
+ if (event.buttons !== 1)
482
+ return;
483
+ this._thumb.nativeElement.setPointerCapture(event.pointerId);
484
+ this._isScrolling = true;
485
+ this._startPointerPosition = this.getPointerPosition(event);
486
+ this._startScrollPosition = this.Value;
487
+ event.stopPropagation();
440
488
  }
441
- get anchorName() {
442
- return this._popoverTarget ? `--${this._popoverTarget}-host` : undefined;
489
+ onPointerMove(event) {
490
+ if (!this._isScrolling)
491
+ return;
492
+ if (event.buttons !== 1) {
493
+ this._isScrolling = false;
494
+ return;
495
+ }
496
+ let delta = this.getPointerPosition(event) - this._startPointerPosition;
497
+ let trackLength = this.getElementSize(this._track.nativeElement);
498
+ let thumbLength = this.getElementSize(this._thumb.nativeElement);
499
+ let scrollPercent = delta / (trackLength - thumbLength);
500
+ this.Value = this._startScrollPosition + scrollPercent * (this.ScrollSize - this.ViewportSize);
501
+ event.stopPropagation();
502
+ }
503
+ onPointerUp(event) {
504
+ if (event.buttons !== 1)
505
+ return;
506
+ this._isScrolling = false;
507
+ this._thumb.nativeElement.releasePointerCapture(event.pointerId);
508
+ event.stopPropagation();
443
509
  }
444
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Button, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
445
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: Button, isStandalone: true, selector: "Button", inputs: { IsEnabled: "IsEnabled" }, host: { listeners: { "pointerdown": "onHostPointerEvent($event)", "pointerenter": "onHostPointerEvent($event)", "pointerup": "onHostPointerEvent($event)" }, properties: { "attr.type": "this.type", "attr.disabled": "this.disabled", "attr.popovertarget": "this._popoverTarget", "class.flyout-open": "this._flyoutOpen", "style.anchor-name": "this.anchorName" } }, queries: [{ propertyName: "_children", predicate: Flyout }], usesInheritance: true, ngImport: i0, template: `<ng-content/><ng-content select="flyout"/>`, isInline: true, styles: [":host{display:grid;align-content:center;justify-content:center;padding:5px 11px;border-width:1px;border-style:solid;border-radius:4px;background:#ffffffb3;border-color:#0000000f;color:#000000e4;transition:all .167s}:host::ng-deep *{color:#000000e4}@media (prefers-color-scheme: dark){:host{background:#ffffff0f;border-color:#ffffff12;color:#fff}:host::ng-deep *{color:#fff}}:host:hover:not(.checked):not(.flyout-open){background:#f9f9f980}@media (prefers-color-scheme: dark){:host:hover:not(.checked):not(.flyout-open){background:#ffffff15}}:host:active:not(.checked):not(.flyout-open){background:#f9f9f94d;color:#0000009e}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#0000009e}@media (prefers-color-scheme: dark){:host:active:not(.checked):not(.flyout-open){background:#ffffff08;color:#ffffffc5}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#ffffffc5}}:host:disabled:not(.checked){background:#f9f9f94d;color:#0000005c}:host:disabled:not(.checked)::ng-deep *{color:#0000005c}@media (prefers-color-scheme: dark){:host:disabled:not(.checked){background:#ffffff0b;color:#ffffff5d}:host:disabled:not(.checked)::ng-deep *{color:#ffffff5d}}:host.checked{background:#0067c0;border-color:#0067c0;color:#fff}:host.checked::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host.checked{background:#4cc2ff;border-color:#4cc2ff;color:#000}:host.checked::ng-deep *{color:#000}}:host:hover.checked:not(.flyout-open){background:#0067c0e6;border-color:#0067c0e6;color:#fff}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host:hover.checked:not(.flyout-open){background:#4cc2ffe6;border-color:#4cc2ffe6;color:#000}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#000}}:host:active.checked:not(.flyout-open){background:#0067c0cc;border-color:#fff0;color:#ffffffb3}:host:active.checked:not(.flyout-open)::ng-deep *{color:#ffffffb3}@media (prefers-color-scheme: dark){:host:active.checked:not(.flyout-open){background:#4cc2ffcc;border-color:#fff0;color:#00000080}:host:active.checked:not(.flyout-open)::ng-deep *{color:#00000080}}\n"] }); }
510
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollBarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
511
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ScrollBarComponent, isStandalone: true, selector: "ScrollBar", inputs: { Orientation: "Orientation", ViewportSize: "ViewportSize", ScrollSize: "ScrollSize", StepSize: "StepSize", Value: "Value", IsEnabled: "IsEnabled" }, outputs: { ValueChange: "ValueChange" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "_track", first: true, predicate: ["track"], descendants: true }, { propertyName: "_thumb", first: true, predicate: ["thumb"], descendants: true }], usesInheritance: true, ngImport: i0, template: `<div class="buttons" (pointerdown)="onButtonDown($event, false)" (pointerup)="onButtonUp($event)">{{decreaseGlyph}}</div>
512
+ <div #track class="track" (pointerdown)="onTrackDown($event)" (pointerup)="onTrackUp($event)">
513
+ <div #thumb class="thumb" [ngStyle]="thumbStyle" (pointerdown)="onPointerDown($event)" (pointermove)="onPointerMove($event)" (pointerup)="onPointerUp($event)"></div>
514
+ </div>
515
+ <div class="buttons" (pointerdown)="onButtonDown($event, true)" (pointerup)="onButtonUp($event)">{{increaseGlyph}}</div>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;background-color:var(--SubtleFillColorTransparent)}:host.horizontal{grid-template-columns:auto 1fr auto}:host.horizontal>.buttons{align-self:center}:host.horizontal>.track{transform:translateY(-.75px);align-self:center;margin:0 -2px 0 -3px}:host.horizontal>.track>.thumb{transform:translateY(3px)}:host.vertical{grid-template-rows:auto 1fr auto}:host.vertical>.buttons{justify-self:center}:host.vertical>.track{transform:translate(-.75px);justify-self:center;margin:-3px 0 -2px}:host.vertical>.track>.thumb{transform:translate(3px)}:host:hover{background-color:var(--AcrylicInAppFillColorDefault);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}:host:hover>.buttons{display:grid;opacity:1}:host:hover>.track>.thumb{min-width:10px;min-height:10px;transform:translate(0)}:host>.buttons{display:hidden;font-family:var(--SymbolFontFamily);font-size:8pt;min-width:12px;min-height:12px;margin:4px;transform-origin:center;opacity:0;transition:opacity var(--ControlNormalAnimationDuration);color:var(--ControlStrongFillColorDefault)}:host>.buttons:hover{color:var(--TextFillColorSecondary)}:host>.buttons:active{color:var(--TextFillColorSecondary);transform:scale(.875)}:host>.track{display:grid;position:relative}:host>.track>.thumb{background-color:var(--ControlStrongFillColorDefault);position:relative;border-radius:3px;transition:transform var(--ControlNormalAnimationDuration),min-width var(--ControlNormalAnimationDuration),min-height var(--ControlNormalAnimationDuration);min-width:2px;min-height:2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
446
516
  }
447
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Button, decorators: [{
517
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollBarComponent, decorators: [{
448
518
  type: Component,
449
- args: [{ selector: 'Button', template: `<ng-content/><ng-content select="flyout"/>`, styles: [":host{display:grid;align-content:center;justify-content:center;padding:5px 11px;border-width:1px;border-style:solid;border-radius:4px;background:#ffffffb3;border-color:#0000000f;color:#000000e4;transition:all .167s}:host::ng-deep *{color:#000000e4}@media (prefers-color-scheme: dark){:host{background:#ffffff0f;border-color:#ffffff12;color:#fff}:host::ng-deep *{color:#fff}}:host:hover:not(.checked):not(.flyout-open){background:#f9f9f980}@media (prefers-color-scheme: dark){:host:hover:not(.checked):not(.flyout-open){background:#ffffff15}}:host:active:not(.checked):not(.flyout-open){background:#f9f9f94d;color:#0000009e}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#0000009e}@media (prefers-color-scheme: dark){:host:active:not(.checked):not(.flyout-open){background:#ffffff08;color:#ffffffc5}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#ffffffc5}}:host:disabled:not(.checked){background:#f9f9f94d;color:#0000005c}:host:disabled:not(.checked)::ng-deep *{color:#0000005c}@media (prefers-color-scheme: dark){:host:disabled:not(.checked){background:#ffffff0b;color:#ffffff5d}:host:disabled:not(.checked)::ng-deep *{color:#ffffff5d}}:host.checked{background:#0067c0;border-color:#0067c0;color:#fff}:host.checked::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host.checked{background:#4cc2ff;border-color:#4cc2ff;color:#000}:host.checked::ng-deep *{color:#000}}:host:hover.checked:not(.flyout-open){background:#0067c0e6;border-color:#0067c0e6;color:#fff}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host:hover.checked:not(.flyout-open){background:#4cc2ffe6;border-color:#4cc2ffe6;color:#000}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#000}}:host:active.checked:not(.flyout-open){background:#0067c0cc;border-color:#fff0;color:#ffffffb3}:host:active.checked:not(.flyout-open)::ng-deep *{color:#ffffffb3}@media (prefers-color-scheme: dark){:host:active.checked:not(.flyout-open){background:#4cc2ffcc;border-color:#fff0;color:#00000080}:host:active.checked:not(.flyout-open)::ng-deep *{color:#00000080}}\n"] }]
450
- }], propDecorators: { IsEnabled: [{
519
+ args: [{ selector: 'ScrollBar', imports: [CommonModule], template: `<div class="buttons" (pointerdown)="onButtonDown($event, false)" (pointerup)="onButtonUp($event)">{{decreaseGlyph}}</div>
520
+ <div #track class="track" (pointerdown)="onTrackDown($event)" (pointerup)="onTrackUp($event)">
521
+ <div #thumb class="thumb" [ngStyle]="thumbStyle" (pointerdown)="onPointerDown($event)" (pointermove)="onPointerMove($event)" (pointerup)="onPointerUp($event)"></div>
522
+ </div>
523
+ <div class="buttons" (pointerdown)="onButtonDown($event, true)" (pointerup)="onButtonUp($event)">{{increaseGlyph}}</div>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;background-color:var(--SubtleFillColorTransparent)}:host.horizontal{grid-template-columns:auto 1fr auto}:host.horizontal>.buttons{align-self:center}:host.horizontal>.track{transform:translateY(-.75px);align-self:center;margin:0 -2px 0 -3px}:host.horizontal>.track>.thumb{transform:translateY(3px)}:host.vertical{grid-template-rows:auto 1fr auto}:host.vertical>.buttons{justify-self:center}:host.vertical>.track{transform:translate(-.75px);justify-self:center;margin:-3px 0 -2px}:host.vertical>.track>.thumb{transform:translate(3px)}:host:hover{background-color:var(--AcrylicInAppFillColorDefault);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}:host:hover>.buttons{display:grid;opacity:1}:host:hover>.track>.thumb{min-width:10px;min-height:10px;transform:translate(0)}:host>.buttons{display:hidden;font-family:var(--SymbolFontFamily);font-size:8pt;min-width:12px;min-height:12px;margin:4px;transform-origin:center;opacity:0;transition:opacity var(--ControlNormalAnimationDuration);color:var(--ControlStrongFillColorDefault)}:host>.buttons:hover{color:var(--TextFillColorSecondary)}:host>.buttons:active{color:var(--TextFillColorSecondary);transform:scale(.875)}:host>.track{display:grid;position:relative}:host>.track>.thumb{background-color:var(--ControlStrongFillColorDefault);position:relative;border-radius:3px;transition:transform var(--ControlNormalAnimationDuration),min-width var(--ControlNormalAnimationDuration),min-height var(--ControlNormalAnimationDuration);min-width:2px;min-height:2px}\n"] }]
524
+ }], propDecorators: { Orientation: [{
451
525
  type: Input
452
- }], type: [{
453
- type: HostBinding,
454
- args: ['attr.type']
455
- }], disabled: [{
456
- type: HostBinding,
457
- args: ['attr.disabled']
458
- }], _popoverTarget: [{
459
- type: HostBinding,
460
- args: ['attr.popovertarget']
461
- }], _flyoutOpen: [{
462
- type: HostBinding,
463
- args: ['class.flyout-open']
464
- }], _children: [{
465
- type: ContentChildren,
466
- args: [Flyout]
467
- }], onHostPointerEvent: [{
468
- type: HostListener,
469
- args: ['pointerdown', ['$event']]
470
- }, {
471
- type: HostListener,
472
- args: ['pointerenter', ['$event']]
473
- }, {
474
- type: HostListener,
475
- args: ['pointerup', ['$event']]
476
- }], anchorName: [{
526
+ }], ViewportSize: [{
527
+ type: Input
528
+ }], ScrollSize: [{
529
+ type: Input
530
+ }], StepSize: [{
531
+ type: Input
532
+ }], Value: [{
533
+ type: Input
534
+ }], ValueChange: [{
535
+ type: Output
536
+ }], IsEnabled: [{
537
+ type: Input
538
+ }], _track: [{
539
+ type: ViewChild,
540
+ args: ['track']
541
+ }], _thumb: [{
542
+ type: ViewChild,
543
+ args: ['thumb']
544
+ }], class: [{
477
545
  type: HostBinding,
478
- args: ['style.anchor-name']
546
+ args: ['class']
479
547
  }] } });
480
548
 
481
- class CheckBox extends Border {
482
- constructor() {
483
- super(...arguments);
484
- this.IsEnabled = true;
485
- this.IsChecked = false;
486
- this.IsCheckedChange = new EventEmitter();
549
+ class ScrollViewerComponent extends FrameworkElementComponent {
550
+ get IsHorizontalScrollBarVisible() {
551
+ switch (this.HorizontalScrollMode) {
552
+ case 'Disabled':
553
+ return false;
554
+ case 'Auto':
555
+ return this.ViewportWidth < this.ExtentWidth;
556
+ case 'Enabled':
557
+ return true;
558
+ }
487
559
  }
488
- onIsCheckedChange(event) {
489
- this.IsChecked = (event.target).checked;
490
- this.IsCheckedChange.emit(this.IsChecked);
560
+ get IsVerticalScrollBarVisible() {
561
+ switch (this.VerticalScrollMode) {
562
+ case 'Disabled':
563
+ return false;
564
+ case 'Auto':
565
+ return this.ViewportHeight < this.ExtentHeight;
566
+ case 'Enabled':
567
+ return true;
568
+ }
491
569
  }
492
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: CheckBox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
493
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: CheckBox, isStandalone: true, selector: "CheckBox", inputs: { IsEnabled: "IsEnabled", IsChecked: "IsChecked" }, outputs: { IsCheckedChange: "IsCheckedChange" }, usesInheritance: true, ngImport: i0, template: `<label class="container">
494
- <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
495
- <div class="checkBox">
496
- <div class="checkMark">&#xE73E;</div>
497
- </div>
498
- <div class="content">
499
- <ng-content/>
500
- </div>
501
- </label>`, isInline: true, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=checkbox]:checked+.checkBox>.checkMark{display:grid}input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:#00000019;border-color:#ffffff8b}}input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:#ffffff0b;border-color:#ffffff8b}}input[type=checkbox]:not(:checked):active+.checkBox{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):active+.checkBox{background-color:#fff0;border-color:#ffffff28}}input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:#4cc2ff;border-color:#4cc2ff}}input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:#0067c0cc;border-color:#0067c0cc}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:#ffffffb3}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:#4cc2ffcc;border-color:#4cc2ffcc}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:#00000080}}input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:#fff0;border-color:#ffffff28}}input[type=checkbox]:checked:disabled+.checkBox{background-color:#ffffff37;border-color:#00000037}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:#fff}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:disabled+.checkBox{background-color:#ffffff28;border-color:#ffffff28}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:#ffffff87}}.checkBox{display:grid;width:20px;height:20px;border-radius:4px;border-style:solid;border-width:1px}.checkMark{display:none;font-family:Segoe Fluent Icons,Segoe MDL2 Assets;font-size:12pt;align-self:center;justify-self:center;color:#fff}@media (prefers-color-scheme: dark){.checkMark{color:#000}}.content{align-self:center}\n"] }); }
570
+ get ExtentWidth() {
571
+ return this._content?.nativeElement.scrollWidth;
572
+ }
573
+ get ExtentHeight() {
574
+ return this._content?.nativeElement.scrollHeight;
575
+ }
576
+ get ViewportWidth() {
577
+ return this._content?.nativeElement.clientWidth;
578
+ }
579
+ get ViewportHeight() {
580
+ return this._content?.nativeElement.clientHeight;
581
+ }
582
+ get HorizontalOffset() {
583
+ return this._content?.nativeElement.scrollLeft;
584
+ }
585
+ set HorizontalOffset(value) {
586
+ if (this._content)
587
+ this._content.nativeElement.scrollLeft = value;
588
+ }
589
+ get VerticalOffset() {
590
+ return this._content?.nativeElement.scrollTop;
591
+ }
592
+ set VerticalOffset(value) {
593
+ if (this._content)
594
+ this._content.nativeElement.scrollTop = value;
595
+ }
596
+ static toOverflow(value) {
597
+ switch (value) {
598
+ case 'Disabled':
599
+ return 'hidden';
600
+ case 'Enabled':
601
+ return 'scroll';
602
+ case 'Auto':
603
+ return 'auto';
604
+ }
605
+ }
606
+ get contentStyle() {
607
+ return {
608
+ 'overflow-x': ScrollViewerComponent.toOverflow(this.HorizontalScrollMode),
609
+ 'overflow-y': ScrollViewerComponent.toOverflow(this.VerticalScrollMode)
610
+ };
611
+ }
612
+ constructor(_changeDetector) {
613
+ super();
614
+ this._changeDetector = _changeDetector;
615
+ this.HorizontalScrollMode = 'Auto';
616
+ this.VerticalScrollMode = 'Auto';
617
+ }
618
+ onScroll() {
619
+ //trigger change detect on scroll
620
+ }
621
+ ngAfterViewInit() {
622
+ //help the layout finish itself
623
+ this._changeDetector.detectChanges();
624
+ }
625
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollViewerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
626
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ScrollViewerComponent, isStandalone: true, selector: "ScrollViewer", inputs: { HorizontalScrollMode: "HorizontalScrollMode", VerticalScrollMode: "VerticalScrollMode" }, viewQueries: [{ propertyName: "_content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, ngImport: i0, template: `<div #content class="content" [ngStyle]="contentStyle" (scroll)="onScroll()"><ng-content/></div>
627
+ <ScrollBar *ngIf="IsVerticalScrollBarVisible" HorizontalAlignment="Right" class="scrollbar" Orientation="Vertical" [ScrollSize]="ExtentHeight" [ViewportSize]="ViewportHeight" [(Value)]="VerticalOffset"/>
628
+ <ScrollBar *ngIf="IsHorizontalScrollBarVisible" VerticalAlignment="Bottom" class="scrollbar" Orientation="Horizontal" [ScrollSize]="ExtentWidth" [ViewportSize]="ViewportWidth" [(Value)]="HorizontalOffset"/>`, isInline: true, styles: [":host{display:grid;overflow:auto}:host>.content{overflow:-moz-scrollbars-none;-ms-overflow-style:none;scrollbar-width:none;display:grid;grid-row-start:1;grid-column-start:1;justify-self:stretch;align-self:stretch}:host>.content::-webkit-scrollbar{display:none}:host>.scrollbar{display:grid;grid-row-start:1;grid-column-start:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ScrollBarComponent, selector: "ScrollBar", inputs: ["Orientation", "ViewportSize", "ScrollSize", "StepSize", "Value", "IsEnabled"], outputs: ["ValueChange"] }] }); }
502
629
  }
503
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: CheckBox, decorators: [{
630
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollViewerComponent, decorators: [{
504
631
  type: Component,
505
- args: [{ selector: 'CheckBox', template: `<label class="container">
506
- <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
507
- <div class="checkBox">
508
- <div class="checkMark">&#xE73E;</div>
509
- </div>
510
- <div class="content">
511
- <ng-content/>
512
- </div>
513
- </label>`, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=checkbox]:checked+.checkBox>.checkMark{display:grid}input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):not(:hover):not(:active):not(:disabled)+.checkBox{background-color:#00000019;border-color:#ffffff8b}}input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):hover:not(:active):not(:disabled)+.checkBox{background-color:#ffffff0b;border-color:#ffffff8b}}input[type=checkbox]:not(:checked):active+.checkBox{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):active+.checkBox{background-color:#fff0;border-color:#ffffff28}}input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:not(:hover):not(:disabled)+.checkBox{background-color:#4cc2ff;border-color:#4cc2ff}}input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:hover:not(:disabled)+.checkBox{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:#0067c0cc;border-color:#0067c0cc}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:#ffffffb3}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:active:not(:disabled)+.checkBox{background-color:#4cc2ffcc;border-color:#4cc2ffcc}input[type=checkbox]:checked:active:not(:disabled)+.checkBox>.checkMark{color:#00000080}}input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=checkbox]:not(:checked):disabled+.checkBox{background-color:#fff0;border-color:#ffffff28}}input[type=checkbox]:checked:disabled+.checkBox{background-color:#ffffff37;border-color:#00000037}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:#fff}@media (prefers-color-scheme: dark){input[type=checkbox]:checked:disabled+.checkBox{background-color:#ffffff28;border-color:#ffffff28}input[type=checkbox]:checked:disabled+.checkBox>.checkMark{color:#ffffff87}}.checkBox{display:grid;width:20px;height:20px;border-radius:4px;border-style:solid;border-width:1px}.checkMark{display:none;font-family:Segoe Fluent Icons,Segoe MDL2 Assets;font-size:12pt;align-self:center;justify-self:center;color:#fff}@media (prefers-color-scheme: dark){.checkMark{color:#000}}.content{align-self:center}\n"] }]
514
- }], propDecorators: { IsEnabled: [{
632
+ args: [{ selector: 'ScrollViewer', imports: [CommonModule, ScrollBarComponent], template: `<div #content class="content" [ngStyle]="contentStyle" (scroll)="onScroll()"><ng-content/></div>
633
+ <ScrollBar *ngIf="IsVerticalScrollBarVisible" HorizontalAlignment="Right" class="scrollbar" Orientation="Vertical" [ScrollSize]="ExtentHeight" [ViewportSize]="ViewportHeight" [(Value)]="VerticalOffset"/>
634
+ <ScrollBar *ngIf="IsHorizontalScrollBarVisible" VerticalAlignment="Bottom" class="scrollbar" Orientation="Horizontal" [ScrollSize]="ExtentWidth" [ViewportSize]="ViewportWidth" [(Value)]="HorizontalOffset"/>`, styles: [":host{display:grid;overflow:auto}:host>.content{overflow:-moz-scrollbars-none;-ms-overflow-style:none;scrollbar-width:none;display:grid;grid-row-start:1;grid-column-start:1;justify-self:stretch;align-self:stretch}:host>.content::-webkit-scrollbar{display:none}:host>.scrollbar{display:grid;grid-row-start:1;grid-column-start:1}\n"] }]
635
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { HorizontalScrollMode: [{
515
636
  type: Input
516
- }], IsChecked: [{
637
+ }], VerticalScrollMode: [{
517
638
  type: Input
518
- }], IsCheckedChange: [{
519
- type: Output
639
+ }], _content: [{
640
+ type: ViewChild,
641
+ args: ['content']
520
642
  }] } });
521
643
 
522
- class ListBox extends FrameworkElement {
644
+ class StackPanelComponent extends PanelComponent {
523
645
  constructor() {
524
646
  super(...arguments);
525
- this.SelectedIndex = -1;
526
- this.SelectedIndexChange = new EventEmitter();
527
- this.SelectedValue = null;
528
- this.SelectedValueChange = new EventEmitter();
647
+ this.Orientation = 'Vertical';
648
+ this.Spacing = 0;
529
649
  }
530
- getValue(index, item) {
531
- return this.SelectedValuePath ? item[this.SelectedValuePath] : item;
650
+ get flexDirection() {
651
+ return this.Orientation === 'Horizontal' ? 'row' : 'column';
532
652
  }
533
- onItemClick(index, item) {
534
- this.SelectedIndex = index;
535
- this.SelectedIndexChange.emit(index);
536
- this.SelectedValue = this.getValue(index, item);
537
- this.SelectedValueChange.emit(index);
538
- }
539
- get overflow() {
540
- return 'auto';
541
- }
542
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListBox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
543
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ListBox, isStandalone: true, selector: "ListBox", inputs: { ItemSource: "ItemSource", SelectedIndex: "SelectedIndex", SelectedValue: "SelectedValue", DisplayMemberPath: "DisplayMemberPath", SelectedValuePath: "SelectedValuePath" }, outputs: { SelectedIndexChange: "SelectedIndexChange", SelectedValueChange: "SelectedValueChange" }, queries: [{ propertyName: "ItemTemplate", first: true, predicate: TemplateRef, descendants: true }], usesInheritance: true, ngImport: i0, template: `<div *ngFor="let item of ItemSource; index as index; trackBy: getValue" class="item" [ngClass]="{'selected': index == SelectedIndex}" (click)="onItemClick(index, item)">
544
- <ng-container *ngIf="ItemTemplate">
545
- <ng-container *ngTemplateOutlet="ItemTemplate; context: { $implicit: item }"/>
546
- </ng-container>
547
- <ng-container *ngIf="!ItemTemplate">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container>
548
- </div>`, isInline: true, styles: [":host{display:flex;flex-direction:column;background-color:#f2f2f2}@media (prefers-color-scheme: dark){:host{background-color:#2b2b2b}}.item{display:grid;padding:12px;margin:0}.item:not(:hover):not(:active):not(.selected){background-color:transparent;color:#000000e4}@media (prefers-color-scheme: dark){.item:not(:hover):not(:active):not(.selected){color:#fff}}.item:hover:not(.active):not(.selected){background-color:#00000009}@media (prefers-color-scheme: dark){.item:hover:not(.active):not(.selected){background-color:#ffffff0f}}.item:active:not(.selected){background-color:#00000006}@media (prefers-color-scheme: dark){.item:active:not(.selected){background-color:#ffffff0a}}.item:not(:hover):not(:active).selected{background-color:#0078d466}@media (prefers-color-scheme: dark){.item:not(:hover):not(:active).selected{background-color:#0078d499}}.item:hover:not(:active).selected{background-color:#0078d499}@media (prefers-color-scheme: dark){.item:hover:not(:active).selected{background-color:#0078d4cc}}.item:active.selected{background-color:#0078d4b3}@media (prefers-color-scheme: dark){.item:active.selected{background-color:#0078d4e6}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
549
- }
550
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListBox, decorators: [{
653
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: StackPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
654
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: StackPanelComponent, isStandalone: true, selector: "StackPanel", inputs: { Orientation: "Orientation", Spacing: "Spacing" }, host: { properties: { "style.gap": "this.Spacing", "style.flex-direction": "this.flexDirection" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:flex}\n"] }); }
655
+ }
656
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: StackPanelComponent, decorators: [{
551
657
  type: Component,
552
- args: [{ selector: 'ListBox', imports: [CommonModule], template: `<div *ngFor="let item of ItemSource; index as index; trackBy: getValue" class="item" [ngClass]="{'selected': index == SelectedIndex}" (click)="onItemClick(index, item)">
553
- <ng-container *ngIf="ItemTemplate">
554
- <ng-container *ngTemplateOutlet="ItemTemplate; context: { $implicit: item }"/>
555
- </ng-container>
556
- <ng-container *ngIf="!ItemTemplate">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container>
557
- </div>`, styles: [":host{display:flex;flex-direction:column;background-color:#f2f2f2}@media (prefers-color-scheme: dark){:host{background-color:#2b2b2b}}.item{display:grid;padding:12px;margin:0}.item:not(:hover):not(:active):not(.selected){background-color:transparent;color:#000000e4}@media (prefers-color-scheme: dark){.item:not(:hover):not(:active):not(.selected){color:#fff}}.item:hover:not(.active):not(.selected){background-color:#00000009}@media (prefers-color-scheme: dark){.item:hover:not(.active):not(.selected){background-color:#ffffff0f}}.item:active:not(.selected){background-color:#00000006}@media (prefers-color-scheme: dark){.item:active:not(.selected){background-color:#ffffff0a}}.item:not(:hover):not(:active).selected{background-color:#0078d466}@media (prefers-color-scheme: dark){.item:not(:hover):not(:active).selected{background-color:#0078d499}}.item:hover:not(:active).selected{background-color:#0078d499}@media (prefers-color-scheme: dark){.item:hover:not(:active).selected{background-color:#0078d4cc}}.item:active.selected{background-color:#0078d4b3}@media (prefers-color-scheme: dark){.item:active.selected{background-color:#0078d4e6}}\n"] }]
558
- }], propDecorators: { ItemSource: [{
559
- type: Input
560
- }], ItemTemplate: [{
561
- type: ContentChild,
562
- args: [TemplateRef]
563
- }], SelectedIndex: [{
658
+ args: [{ selector: 'StackPanel', template: `<ng-content/>`, styles: [":host{display:flex}\n"] }]
659
+ }], propDecorators: { Orientation: [{
564
660
  type: Input
565
- }], SelectedIndexChange: [{
566
- type: Output
567
- }], SelectedValue: [{
661
+ }], Spacing: [{
568
662
  type: Input
569
- }], SelectedValueChange: [{
663
+ }, {
664
+ type: HostBinding,
665
+ args: ['style.gap']
666
+ }], flexDirection: [{
667
+ type: HostBinding,
668
+ args: ['style.flex-direction']
669
+ }] } });
670
+
671
+ class ListViewComponent extends SelectorComponent {
672
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
673
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ListViewComponent, isStandalone: true, selector: "ListView", usesInheritance: true, ngImport: i0, template: "<ScrollViewer>\n <StackPanel Padding=\"2px 0\">\n <div *ngFor=\"let item of ItemSource; index as index; trackBy: getValue\" class=\"item\" [ngClass]=\"{'selected': index == SelectedIndex}\" (click)=\"onItemClick($event, index, item)\" [id]=\"'xaml-selector-'+_id+'-item-'+index\">\n <div class=\"item-selector\"></div>\n <div class=\"item-content\" [ngStyle]=\"{'align-content': alignContent, 'justify-content': justifyContent}\"><ng-container *ngIf=\"ItemTemplate\">\n <ng-container *ngTemplateOutlet=\"ItemTemplate; context: { $implicit: item }\"/>\n </ng-container>\n <ng-container *ngIf=\"!ItemTemplate\">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container></div>\n </div>\n </StackPanel>\n </ScrollViewer>", isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}:host .item{display:grid;margin:2px 4px;border-radius:4px}:host .item>.item-selector,:host .item>.item-content{display:grid;grid-row-start:1;grid-column-start:1;justify-self:stretch}:host .item>.item-selector{justify-self:left;align-self:center;width:4px;height:12px;border-radius:2px;transition:height var(--ControlNormalAnimationDuration)}:host .item>.item-content{padding:8px 12px}:host .item.selected>.item-selector{height:18px}:host:not(.disabled) .item:not(:hover):not(:active):not(.selected){background-color:transparent;color:var(--TextFillColorPrimary)}:host:not(.disabled) .item:hover:not(.active):not(.selected){background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:active:not(.selected){background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:not(:hover):not(:active).selected{background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:hover:not(:active).selected{background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:active.selected{background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item.selected>.item-selector{background-color:var(--AccentFillColorDefault)}:host.disabled .item>.item-content{color:var(--TextFillColorDisabled)}:host.disabled .item:not(.selected){background-color:transparent}:host.disabled .item.selected{background-color:var(--SubtleFillColorSecondary)}:host.disabled .item.selected>.item-selector{background-color:var(--AccentFillColorDisabled)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ScrollViewerComponent, selector: "ScrollViewer", inputs: ["HorizontalScrollMode", "VerticalScrollMode"] }, { kind: "component", type: StackPanelComponent, selector: "StackPanel", inputs: ["Orientation", "Spacing"] }] }); }
674
+ }
675
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListViewComponent, decorators: [{
676
+ type: Component,
677
+ args: [{ selector: 'ListView', imports: [CommonModule, ScrollViewerComponent, StackPanelComponent], template: `<ScrollViewer>
678
+ <StackPanel Padding="2px 0">
679
+ <div *ngFor="let item of ItemSource; index as index; trackBy: getValue" class="item" [ngClass]="{'selected': index == SelectedIndex}" (click)="onItemClick($event, index, item)" [id]="'xaml-selector-'+_id+'-item-'+index">
680
+ <div class="item-selector"></div>
681
+ <div class="item-content" [ngStyle]="{'align-content': alignContent, 'justify-content': justifyContent}">${SelectorItemTemplate}</div>
682
+ </div>
683
+ </StackPanel>
684
+ </ScrollViewer>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}:host .item{display:grid;margin:2px 4px;border-radius:4px}:host .item>.item-selector,:host .item>.item-content{display:grid;grid-row-start:1;grid-column-start:1;justify-self:stretch}:host .item>.item-selector{justify-self:left;align-self:center;width:4px;height:12px;border-radius:2px;transition:height var(--ControlNormalAnimationDuration)}:host .item>.item-content{padding:8px 12px}:host .item.selected>.item-selector{height:18px}:host:not(.disabled) .item:not(:hover):not(:active):not(.selected){background-color:transparent;color:var(--TextFillColorPrimary)}:host:not(.disabled) .item:hover:not(.active):not(.selected){background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:active:not(.selected){background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:not(:hover):not(:active).selected{background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:hover:not(:active).selected{background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:active.selected{background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item.selected>.item-selector{background-color:var(--AccentFillColorDefault)}:host.disabled .item>.item-content{color:var(--TextFillColorDisabled)}:host.disabled .item:not(.selected){background-color:transparent}:host.disabled .item.selected{background-color:var(--SubtleFillColorSecondary)}:host.disabled .item.selected>.item-selector{background-color:var(--AccentFillColorDisabled)}\n"] }]
685
+ }] });
686
+
687
+ class PopupComponent {
688
+ constructor() {
689
+ this.isRendered = false;
690
+ this._isOpen = false;
691
+ this.IsOpenChange = new EventEmitter();
692
+ this.VerticalOffset = 0;
693
+ this.HorizontalOffset = 0;
694
+ }
695
+ get IsOpen() {
696
+ return this._isOpen;
697
+ }
698
+ ;
699
+ set IsOpen(value) {
700
+ this._isOpen = value;
701
+ if (this._isRenderedTimeout !== undefined) {
702
+ clearTimeout(this._isRenderedTimeout);
703
+ }
704
+ if (value) {
705
+ this.isRendered = true;
706
+ }
707
+ else {
708
+ this._isRenderedTimeout = setTimeout(() => {
709
+ this.isRendered = false;
710
+ }, 250);
711
+ }
712
+ if (value && this._container) {
713
+ this._container.nativeElement.style.transform = `translate(${this.HorizontalOffset}px, ${this.VerticalOffset - 4}px)`;
714
+ }
715
+ }
716
+ ;
717
+ Show() {
718
+ this.IsOpen = true;
719
+ }
720
+ Hide() {
721
+ this.IsOpen = false;
722
+ }
723
+ get containerClass() {
724
+ return this.IsOpen ? 'popup-open' : undefined;
725
+ }
726
+ onBackdropClick(event) {
727
+ this.Hide();
728
+ event.stopPropagation();
729
+ }
730
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: PopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
731
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: PopupComponent, isStandalone: true, selector: "Popup", inputs: { IsOpen: "IsOpen", VerticalOffset: "VerticalOffset", HorizontalOffset: "HorizontalOffset" }, outputs: { IsOpenChange: "IsOpenChange" }, host: { classAttribute: "popup" }, viewQueries: [{ propertyName: "_container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: `<div class="popup-backdrop" (click)="onBackdropClick($event)" (contextmenu)="onBackdropClick($event)" *ngIf="IsOpen"></div>
732
+ <div #container class="popup-container" [ngClass]="containerClass">
733
+ <div class="popup-content" *ngIf="isRendered"><ng-content/></div>
734
+ </div>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{z-index:900}.popup-container{background-color:transparent;display:grid;padding:0;margin:0;border:0;position:absolute;pointer-events:none;z-index:1000}.popup-container>.popup-content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:var(--OverlayCornerRadius);opacity:0;transition:opacity var(--ControlNormalAnimationDuration);-webkit-backdrop-filter:var(--AcrylicBlur);backdrop-filter:var(--AcrylicBlur);box-shadow:0 0 15px #0000001a;border-color:var(--SurfaceStrokeColorFlyout);background-color:var(--AcrylicInAppFillColorDefault)}.popup-container.popup-open>.popup-content{opacity:1;pointer-events:all}.popup-backdrop{position:fixed;inset:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
735
+ }
736
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: PopupComponent, decorators: [{
737
+ type: Component,
738
+ args: [{ selector: 'Popup', imports: [CommonModule], template: `<div class="popup-backdrop" (click)="onBackdropClick($event)" (contextmenu)="onBackdropClick($event)" *ngIf="IsOpen"></div>
739
+ <div #container class="popup-container" [ngClass]="containerClass">
740
+ <div class="popup-content" *ngIf="isRendered"><ng-content/></div>
741
+ </div>`, host: {
742
+ class: 'popup'
743
+ }, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{z-index:900}.popup-container{background-color:transparent;display:grid;padding:0;margin:0;border:0;position:absolute;pointer-events:none;z-index:1000}.popup-container>.popup-content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:var(--OverlayCornerRadius);opacity:0;transition:opacity var(--ControlNormalAnimationDuration);-webkit-backdrop-filter:var(--AcrylicBlur);backdrop-filter:var(--AcrylicBlur);box-shadow:0 0 15px #0000001a;border-color:var(--SurfaceStrokeColorFlyout);background-color:var(--AcrylicInAppFillColorDefault)}.popup-container.popup-open>.popup-content{opacity:1;pointer-events:all}.popup-backdrop{position:fixed;inset:0}\n"] }]
744
+ }], propDecorators: { IsOpen: [{
745
+ type: Input
746
+ }], IsOpenChange: [{
570
747
  type: Output
571
- }], DisplayMemberPath: [{
748
+ }], VerticalOffset: [{
572
749
  type: Input
573
- }], SelectedValuePath: [{
750
+ }], HorizontalOffset: [{
574
751
  type: Input
752
+ }], _container: [{
753
+ type: ViewChild,
754
+ args: ['container']
575
755
  }] } });
576
756
 
577
- class StackPanel extends Border {
578
- constructor() {
579
- super(...arguments);
580
- this.Orientation = 'Vertical';
581
- this.Spacing = 0;
757
+ class DropDownButtonComponent extends ButtonComponent {
758
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: DropDownButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
759
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: DropDownButtonComponent, isStandalone: true, selector: "DropDownButton", usesInheritance: true, ngImport: i0, template: `<div class="drop-down-glyph">&#xE70D;</div><ng-content/>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n", ".drop-down-glyph{display:grid;font-family:var(--SymbolFontFamily);font-size:8pt;position:absolute;right:12px;top:0;bottom:0;align-content:center;transition:transform var(--ControlNormalAnimationDuration)}:host:active:not(.popup-open):not(.disabled) .drop-down-glyph{transform:translateY(3px)}\n"] }); }
760
+ }
761
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: DropDownButtonComponent, decorators: [{
762
+ type: Component,
763
+ args: [{ selector: 'DropDownButton', template: `<div class="drop-down-glyph">&#xE70D;</div><ng-content/>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n", ".drop-down-glyph{display:grid;font-family:var(--SymbolFontFamily);font-size:8pt;position:absolute;right:12px;top:0;bottom:0;align-content:center;transition:transform var(--ControlNormalAnimationDuration)}:host:active:not(.popup-open):not(.disabled) .drop-down-glyph{transform:translateY(3px)}\n"] }]
764
+ }] });
765
+
766
+ class ComboBoxComponent extends SelectorComponent {
767
+ get item() {
768
+ return this.SelectedItem;
582
769
  }
583
- get flexDirection() {
584
- return this.Orientation === 'Horizontal' ? 'row' : 'column';
770
+ get index() {
771
+ return this.SelectedIndex;
772
+ }
773
+ constructor(_changeDetector) {
774
+ super();
775
+ this._changeDetector = _changeDetector;
776
+ this._popupOffset = -4;
777
+ this.SelectedIndexChange.subscribe(() => this.onSelectionChanged());
778
+ }
779
+ ngAfterViewInit() {
780
+ //help the layout finish itself
781
+ this._changeDetector.detectChanges();
585
782
  }
586
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: StackPanel, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
587
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: StackPanel, isStandalone: true, selector: "StackPanel", inputs: { Orientation: "Orientation", Spacing: "Spacing" }, host: { properties: { "style.gap": "this.Spacing", "style.flex-direction": "this.flexDirection" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:flex}\n"] }); }
783
+ get popupOffset() {
784
+ //Cache the value so the change detector will not complain
785
+ let popupOffset = -(this._selector?.GetElement(this.SelectedIndex)?.offsetTop ?? 0);
786
+ if (popupOffset !== 0)
787
+ this._popupOffset = popupOffset;
788
+ return this._popupOffset;
789
+ }
790
+ onSelectionChanged() {
791
+ if (this._popup)
792
+ this._popup.IsOpen = false;
793
+ }
794
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
795
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ComboBoxComponent, isStandalone: true, selector: "ComboBox", viewQueries: [{ propertyName: "_selector", first: true, predicate: ListViewComponent, descendants: true }, { propertyName: "_popup", first: true, predicate: PopupComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<DropDownButton [HorizontalContentAlignment]=\"HorizontalContentAlignment\" [VerticalContentAlignment]=\"VerticalContentAlignment\" [IsEnabled]=\"IsEnabled\">\n <ng-container *ngIf=\"ItemTemplate\">\n <ng-container *ngTemplateOutlet=\"ItemTemplate; context: { $implicit: item }\"/>\n </ng-container>\n <ng-container *ngIf=\"!ItemTemplate\">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container>\n <Popup #ButtonFlyout [VerticalOffset]=\"popupOffset\">\n <ListView [ItemSource]=\"ItemSource\" [(SelectedIndex)]=\"SelectedIndex\" [HorizontalContentAlignment]=\"HorizontalContentAlignment\" [VerticalContentAlignment]=\"VerticalContentAlignment\"/>\n </Popup>\n </DropDownButton>", isInline: true, styles: [":host ::ng-deep .popup>.popup-container{left:0;right:0;top:0}:host ::ng-deep .popup>.popup-container>.popup-content{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DropDownButtonComponent, selector: "DropDownButton" }, { kind: "component", type: PopupComponent, selector: "Popup", inputs: ["IsOpen", "VerticalOffset", "HorizontalOffset"], outputs: ["IsOpenChange"] }, { kind: "component", type: ListViewComponent, selector: "ListView" }] }); }
588
796
  }
589
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: StackPanel, decorators: [{
797
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ComboBoxComponent, decorators: [{
590
798
  type: Component,
591
- args: [{ selector: 'StackPanel', template: `<ng-content/>`, styles: [":host{display:flex}\n"] }]
592
- }], propDecorators: { Orientation: [{
593
- type: Input
594
- }], Spacing: [{
595
- type: Input
596
- }, {
597
- type: HostBinding,
598
- args: ['style.gap']
599
- }], flexDirection: [{
600
- type: HostBinding,
601
- args: ['style.flex-direction']
799
+ args: [{ selector: 'ComboBox', imports: [CommonModule, DropDownButtonComponent, PopupComponent, ListViewComponent], template: `<DropDownButton [HorizontalContentAlignment]="HorizontalContentAlignment" [VerticalContentAlignment]="VerticalContentAlignment" [IsEnabled]="IsEnabled">
800
+ ${SelectorItemTemplate}
801
+ <Popup #ButtonFlyout [VerticalOffset]="popupOffset">
802
+ <ListView [ItemSource]="ItemSource" [(SelectedIndex)]="SelectedIndex" [HorizontalContentAlignment]="HorizontalContentAlignment" [VerticalContentAlignment]="VerticalContentAlignment"/>
803
+ </Popup>
804
+ </DropDownButton>`, styles: [":host ::ng-deep .popup>.popup-container{left:0;right:0;top:0}:host ::ng-deep .popup>.popup-container>.popup-content{padding:0!important}\n"] }]
805
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { _selector: [{
806
+ type: ViewChild,
807
+ args: [ListViewComponent]
808
+ }], _popup: [{
809
+ type: ViewChild,
810
+ args: [PopupComponent]
602
811
  }] } });
603
812
 
604
- class RadioButton extends Border {
813
+ class RadioButtonComponent extends BorderComponent {
605
814
  constructor() {
606
815
  super(...arguments);
607
816
  this.IsEnabled = true;
@@ -613,8 +822,8 @@ class RadioButton extends Border {
613
822
  this.IsChecked = (event.target).checked;
614
823
  this.IsCheckedChange.emit(this.IsChecked);
615
824
  }
616
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButton, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
617
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: RadioButton, isStandalone: true, selector: "RadioButton", inputs: { IsEnabled: "IsEnabled", IsChecked: "IsChecked", Group: "Group", Value: "Value" }, outputs: { IsCheckedChange: "IsCheckedChange" }, usesInheritance: true, ngImport: i0, template: `<label class="container">
825
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
826
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: RadioButtonComponent, isStandalone: true, selector: "RadioButton", inputs: { IsEnabled: "IsEnabled", IsChecked: "IsChecked", Group: "Group", Value: "Value" }, outputs: { IsCheckedChange: "IsCheckedChange" }, usesInheritance: true, ngImport: i0, template: `<label class="container">
618
827
  <input type="radio" [name]="Group" [value]="Value" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
619
828
  <div class="radioButton">
620
829
  <div class="circle"></div>
@@ -622,9 +831,9 @@ class RadioButton extends Border {
622
831
  <div class="content">
623
832
  <ng-content/>
624
833
  </div>
625
- </label>`, isInline: true, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=radio]:checked+.radioButton>.circle{display:grid}input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#00000019;border-color:#ffffff8b}}input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:#ffffff0b;border-color:#ffffff8b}}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:#fff0;border-color:#ffffff28}}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#4cc2ff;border-color:#4cc2ff}}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1.2)}input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:#0067c0cc;border-color:#0067c0cc}input[type=radio]:checked:active:not(:disabled)+.radioButton>.circle{transform:scale(1)}@media (prefers-color-scheme: dark){input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:#4cc2ffcc;border-color:#4cc2ffcc}}input[type=radio]:not(:checked):disabled+.radioButton{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):disabled+.radioButton{background-color:#fff0;border-color:#ffffff28}}input[type=radio]:checked:disabled+.radioButton{background-color:#ffffff37;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:checked:disabled+.radioButton{background-color:#ffffff28;border-color:#ffffff28}}.radioButton{display:grid;width:20px;height:20px;border-radius:11px;border-style:solid;border-width:1px;transition:border-color .167s;transition:background-color .167s}.circle{width:11px;height:11px;border-radius:6.5px;align-self:center;justify-self:center;background-color:#fff;transition:transform .25s;transform:scale(0)}@media (prefers-color-scheme: dark){.circle{background-color:#000}}.content{align-self:center}\n"] }); }
834
+ </label>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=radio]:checked+.radioButton>.circle{display:grid}input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:var(--SubtleFillColorTransparent);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1.2)}input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input[type=radio]:checked:active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:not(:checked):disabled+.radioButton{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=radio]:checked:disabled+.radioButton{background-color:var(--AccentFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}.radioButton{display:grid;width:20px;height:20px;border-radius:11px;border-style:solid;border-width:var(--ControlBorderThickness);transition:border-color var(--ControlFastAnimationDuration);transition:background-color var(--ControlFastAnimationDuration)}.circle{width:11px;height:11px;border-radius:6.5px;align-self:center;justify-self:center;background-color:var(--TextOnAccentFillColorPrimary);transition:transform var(--ControlNormalAnimationDuration);transform:scale(0)}.content{align-self:center}\n"] }); }
626
835
  }
627
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButton, decorators: [{
836
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButtonComponent, decorators: [{
628
837
  type: Component,
629
838
  args: [{ selector: 'RadioButton', template: `<label class="container">
630
839
  <input type="radio" [name]="Group" [value]="Value" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
@@ -634,7 +843,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
634
843
  <div class="content">
635
844
  <ng-content/>
636
845
  </div>
637
- </label>`, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=radio]:checked+.radioButton>.circle{display:grid}input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#00000019;border-color:#ffffff8b}}input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:#ffffff0b;border-color:#ffffff8b}}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:#fff0;border-color:#ffffff28}}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:#4cc2ff;border-color:#4cc2ff}}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1.2)}input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:#0067c0cc;border-color:#0067c0cc}input[type=radio]:checked:active:not(:disabled)+.radioButton>.circle{transform:scale(1)}@media (prefers-color-scheme: dark){input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:#4cc2ffcc;border-color:#4cc2ffcc}}input[type=radio]:not(:checked):disabled+.radioButton{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:not(:checked):disabled+.radioButton{background-color:#fff0;border-color:#ffffff28}}input[type=radio]:checked:disabled+.radioButton{background-color:#ffffff37;border-color:#00000037}@media (prefers-color-scheme: dark){input[type=radio]:checked:disabled+.radioButton{background-color:#ffffff28;border-color:#ffffff28}}.radioButton{display:grid;width:20px;height:20px;border-radius:11px;border-style:solid;border-width:1px;transition:border-color .167s;transition:background-color .167s}.circle{width:11px;height:11px;border-radius:6.5px;align-self:center;justify-self:center;background-color:#fff;transition:transform .25s;transform:scale(0)}@media (prefers-color-scheme: dark){.circle{background-color:#000}}.content{align-self:center}\n"] }]
846
+ </label>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input[type=radio]:checked+.radioButton>.circle{display:grid}input[type=radio]:not(:checked):not(:hover):not(:active):not(:disabled)+.radioButton{background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=radio]:not(:checked):hover:not(:active):not(:disabled)+.radioButton{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton{background-color:var(--SubtleFillColorTransparent);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=radio]:not(:checked):active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton{background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input[type=radio]:checked:not(:hover):not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input[type=radio]:checked:hover:not(:active):not(:disabled)+.radioButton>.circle{transform:scale(1.2)}input[type=radio]:checked:active:not(:disabled)+.radioButton{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input[type=radio]:checked:active:not(:disabled)+.radioButton>.circle{transform:scale(1)}input[type=radio]:not(:checked):disabled+.radioButton{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input[type=radio]:checked:disabled+.radioButton{background-color:var(--AccentFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}.radioButton{display:grid;width:20px;height:20px;border-radius:11px;border-style:solid;border-width:var(--ControlBorderThickness);transition:border-color var(--ControlFastAnimationDuration);transition:background-color var(--ControlFastAnimationDuration)}.circle{width:11px;height:11px;border-radius:6.5px;align-self:center;justify-self:center;background-color:var(--TextOnAccentFillColorPrimary);transition:transform var(--ControlNormalAnimationDuration);transform:scale(0)}.content{align-self:center}\n"] }]
638
847
  }], propDecorators: { IsEnabled: [{
639
848
  type: Input
640
849
  }], IsChecked: [{
@@ -646,11 +855,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
646
855
  }], Value: [{
647
856
  type: Input
648
857
  }] } });
649
- class RadioButtonGroup extends StackPanel {
858
+ class RadioButtonGroup extends StackPanelComponent {
650
859
  constructor() {
651
860
  super(...arguments);
652
861
  this.ValueChange = new EventEmitter();
653
- this._id = RadioButtonGroup._nextId++;
654
862
  }
655
863
  set Value(value) {
656
864
  if (this._children) {
@@ -668,7 +876,6 @@ class RadioButtonGroup extends StackPanel {
668
876
  get Value() {
669
877
  return this._value;
670
878
  }
671
- static { this._nextId = 1; }
672
879
  ngAfterContentInit() {
673
880
  let index = 0;
674
881
  for (let item of this._children) {
@@ -684,7 +891,7 @@ class RadioButtonGroup extends StackPanel {
684
891
  }
685
892
  }
686
893
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButtonGroup, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
687
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: RadioButtonGroup, isStandalone: true, selector: "RadioButtonGroup", inputs: { Value: "Value" }, outputs: { ValueChange: "ValueChange" }, queries: [{ propertyName: "_children", predicate: RadioButton }], usesInheritance: true, ngImport: i0, template: `<ng-container><ng-content/></ng-container>`, isInline: true, styles: [":host{display:flex}\n"] }); }
894
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: RadioButtonGroup, isStandalone: true, selector: "RadioButtonGroup", inputs: { Value: "Value" }, outputs: { ValueChange: "ValueChange" }, queries: [{ propertyName: "_children", predicate: RadioButtonComponent }], usesInheritance: true, ngImport: i0, template: `<ng-container><ng-content/></ng-container>`, isInline: true, styles: [":host{display:flex}\n"] }); }
688
895
  }
689
896
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButtonGroup, decorators: [{
690
897
  type: Component,
@@ -695,10 +902,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
695
902
  type: Output
696
903
  }], _children: [{
697
904
  type: ContentChildren,
698
- args: [RadioButton]
905
+ args: [RadioButtonComponent]
699
906
  }] } });
700
907
 
701
- class Slider extends FrameworkElement {
908
+ class SliderComponent extends FrameworkElementComponent {
702
909
  constructor() {
703
910
  super(...arguments);
704
911
  this.Minimum = 0.0;
@@ -713,174 +920,622 @@ class Slider extends FrameworkElement {
713
920
  this.Value = parseFloat(event.target.value);
714
921
  this.ValueChange.emit(this.Value);
715
922
  }
716
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Slider, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
717
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: Slider, isStandalone: true, selector: "Slider", inputs: { Minimum: "Minimum", Maximum: "Maximum", StepFrequency: "StepFrequency", Value: "Value", IsEnabled: "IsEnabled", Orientation: "Orientation" }, outputs: { ValueChange: "ValueChange" }, usesInheritance: true, ngImport: i0, template: `<input type="range"
718
- [min]="Minimum"
719
- [max]="Maximum"
720
- [value]="Value"
721
- [step]="StepFrequency"
722
- (change)="onValueChange($event)"
723
- [disabled]="!IsEnabled"
724
- [className]="Orientation.toLowerCase()">`, isInline: true, styles: [":host{display:grid}input{display:grid;-webkit-appearance:none;appearance:none;background-color:#00000072;border-radius:2px;outline:none}input.horizontal{height:4px;margin:7px 0}input.vertical{width:4px;margin:0 7px;writing-mode:vertical-lr;direction:rtl;vertical-align:middle}@media (prefers-color-scheme: dark){input{background-color:#ffffff8b}}input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid rgba(255,255,255,.0784313725);border-color:#fff;background-color:#0067c0;transition:border-width .167s}@media (prefers-color-scheme: dark){input::-webkit-slider-thumb{border-color:#454545;background-color:#4cc2ff}}input::-moz-range-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid rgba(255,255,255,.0784313725);border-color:#fff;background-color:#0067c0;transition:border-width .167s}@media (prefers-color-scheme: dark){input::-moz-range-thumb{border-color:#454545;background-color:#4cc2ff}}input:not(:disabled)::-webkit-slider-thumb:hover{border-width:3px;background-color:#0067c0e6}@media (prefers-color-scheme: dark){input:not(:disabled)::-webkit-slider-thumb:hover{background-color:#4cc2ffe6}}input:not(:disabled)::-webkit-slider-thumb:active{border-width:5px;background-color:#0067c0cc}@media (prefers-color-scheme: dark){input:not(:disabled)::-webkit-slider-thumb:active{background-color:#4cc2ffcc}}input:not(:disabled)::-moz-range-thumb:hover{border-width:3px;background-color:#0067c0e6}@media (prefers-color-scheme: dark){input:not(:disabled)::-moz-range-thumb:hover{background-color:#4cc2ffe6}}input:not(:disabled)::-moz-range-thumb:active{border-width:5px;background-color:#0067c0cc}@media (prefers-color-scheme: dark){input:not(:disabled)::-moz-range-thumb:active{background-color:#4cc2ffcc}}input:disabled{background-color:#00000051}@media (prefers-color-scheme: dark){input:disabled{background-color:#ffffff3f}}input:disabled::-webkit-slider-thumb{border-width:2px;background-color:#ffffff37}@media (prefers-color-scheme: dark){input:disabled::-webkit-slider-thumb{background-color:#ffffff28}}input:disabled::-moz-range-thumb{border-width:2px;background-color:#ffffff37}@media (prefers-color-scheme: dark){input:disabled::-moz-range-thumb{background-color:#ffffff28}}\n"] }); }
923
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: SliderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
924
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: SliderComponent, isStandalone: true, selector: "Slider", inputs: { Minimum: "Minimum", Maximum: "Maximum", StepFrequency: "StepFrequency", Value: "Value", IsEnabled: "IsEnabled", Orientation: "Orientation" }, outputs: { ValueChange: "ValueChange" }, usesInheritance: true, ngImport: i0, template: `<input type="range"
925
+ [min]="Minimum"
926
+ [max]="Maximum"
927
+ [value]="Value"
928
+ [step]="StepFrequency"
929
+ (change)="onValueChange($event)"
930
+ [disabled]="!IsEnabled"
931
+ [className]="Orientation.toLowerCase()">`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}input{display:grid;-webkit-appearance:none;appearance:none;background-color:var(--ControlStrongFillColorDefault);border-radius:2px;outline:none}input.horizontal{height:4px;margin:7px 0}input.vertical{width:4px;margin:0 7px;writing-mode:vertical-lr;direction:rtl;vertical-align:middle}input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid var(--ControlStrokeColorOnAccentDefaultDark);border-color:var(--ControlSolidFillColorDefault);background-color:var(--AccentFillColorDefault);transition:border-width var(--ControlFastAnimationDuration)}input::-moz-range-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid var(--ControlStrokeColorOnAccentDefaultDark);border-color:var(--ControlSolidFillColorDefault);background-color:var(--AccentFillColorDefault);transition:border-width var(--ControlFastAnimationDuration)}input:not(:disabled)::-webkit-slider-thumb:hover{border-width:3px;background-color:var(--AccentFillColorSecondary)}input:not(:disabled)::-webkit-slider-thumb:active{border-width:5px;background-color:var(--AccentFillColorTertiary)}input:not(:disabled)::-moz-range-thumb:hover{border-width:3px;background-color:var(--AccentFillColorSecondary)}input:not(:disabled)::-moz-range-thumb:active{border-width:5px;background-color:var(--AccentFillColorTertiary)}input:disabled{background-color:var(--ControlStrongFillColorDisabled)}input:disabled::-webkit-slider-thumb{border-width:2px;background-color:var(--AccentFillColorDisabled)}input:disabled::-moz-range-thumb{border-width:2px;background-color:var(--AccentFillColorDisabled)}\n"] }); }
932
+ }
933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: SliderComponent, decorators: [{
934
+ type: Component,
935
+ args: [{ selector: 'Slider', template: `<input type="range"
936
+ [min]="Minimum"
937
+ [max]="Maximum"
938
+ [value]="Value"
939
+ [step]="StepFrequency"
940
+ (change)="onValueChange($event)"
941
+ [disabled]="!IsEnabled"
942
+ [className]="Orientation.toLowerCase()">`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}input{display:grid;-webkit-appearance:none;appearance:none;background-color:var(--ControlStrongFillColorDefault);border-radius:2px;outline:none}input.horizontal{height:4px;margin:7px 0}input.vertical{width:4px;margin:0 7px;writing-mode:vertical-lr;direction:rtl;vertical-align:middle}input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid var(--ControlStrokeColorOnAccentDefaultDark);border-color:var(--ControlSolidFillColorDefault);background-color:var(--AccentFillColorDefault);transition:border-width var(--ControlFastAnimationDuration)}input::-moz-range-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid var(--ControlStrokeColorOnAccentDefaultDark);border-color:var(--ControlSolidFillColorDefault);background-color:var(--AccentFillColorDefault);transition:border-width var(--ControlFastAnimationDuration)}input:not(:disabled)::-webkit-slider-thumb:hover{border-width:3px;background-color:var(--AccentFillColorSecondary)}input:not(:disabled)::-webkit-slider-thumb:active{border-width:5px;background-color:var(--AccentFillColorTertiary)}input:not(:disabled)::-moz-range-thumb:hover{border-width:3px;background-color:var(--AccentFillColorSecondary)}input:not(:disabled)::-moz-range-thumb:active{border-width:5px;background-color:var(--AccentFillColorTertiary)}input:disabled{background-color:var(--ControlStrongFillColorDisabled)}input:disabled::-webkit-slider-thumb{border-width:2px;background-color:var(--AccentFillColorDisabled)}input:disabled::-moz-range-thumb{border-width:2px;background-color:var(--AccentFillColorDisabled)}\n"] }]
943
+ }], propDecorators: { Minimum: [{
944
+ type: Input
945
+ }], Maximum: [{
946
+ type: Input
947
+ }], StepFrequency: [{
948
+ type: Input
949
+ }], Value: [{
950
+ type: Input
951
+ }], ValueChange: [{
952
+ type: Output
953
+ }], IsEnabled: [{
954
+ type: Input
955
+ }], Orientation: [{
956
+ type: Input
957
+ }] } });
958
+
959
+ class ToggleButtonComponent extends ButtonComponent {
960
+ constructor() {
961
+ super(...arguments);
962
+ this.IsChecked = false;
963
+ this.IsCheckedChange = new EventEmitter();
964
+ }
965
+ onPointerUp(event) {
966
+ if (!this.IsEnabled)
967
+ return;
968
+ this.IsChecked = !this.IsChecked;
969
+ this.IsCheckedChange.emit(this.IsChecked);
970
+ }
971
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
972
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ToggleButtonComponent, isStandalone: true, selector: "ToggleButton", inputs: { IsChecked: "IsChecked" }, outputs: { IsCheckedChange: "IsCheckedChange" }, host: { listeners: { "pointerup": "onPointerUp($event)" }, properties: { "class.checked": "this.IsChecked" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n"] }); }
973
+ }
974
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleButtonComponent, decorators: [{
975
+ type: Component,
976
+ args: [{ selector: 'ToggleButton', template: `<ng-content/>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid;padding:5px 11px;border-width:var(--ControlBorderThickness);border-style:solid;border-radius:var(--ControlCornerRadius);position:relative;background:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorPrimary);transition:all var(--ControlFastAnimationDuration)}:host::ng-deep *{color:var(--TextFillColorPrimary)}:host:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled){background:var(--ControlFillColorTertiary);color:var(--TextFillColorSecondary)}:host:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.disabled:not(.checked){background:var(--ControlFillColorDisabled);color:var(--TextFillColorDisabled)}:host.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}:host.checked:not(.disabled){background:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault);color:var(--TextOnAccentFillColorPrimary)}:host.checked:not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary);color:var(--TextOnAccentFillColorPrimary)}:host:hover.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorPrimary)}:host:active.checked:not(.popup-open):not(.disabled){background:var(--AccentFillColorTertiary);border-color:var(--ControlFillColorTransparent);color:var(--TextOnAccentFillColorSecondary)}:host:active.checked:not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextOnAccentFillColorSecondary)}:host.checked.disabled{background:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled);color:var(--TextOnAccentFillColorDisabled)}:host.checked.disabled::ng-deep *{color:var(--TextOnAccentFillColorDisabled)}:host.InlineButtonStyle{border-style:none;border-width:0;background-color:transparent}:host.InlineButtonStyle:hover:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled){background:var(--SubtleFillColorTertiary);color:var(--TextFillColorSecondary)}:host.InlineButtonStyle:active:not(.checked):not(.popup-open):not(.disabled)::ng-deep *{color:var(--TextFillColorSecondary)}:host.InlineButtonStyle.disabled:not(.checked){background:var(--SubtleFillColorDisabled);color:var(--TextFillColorDisabled)}:host.InlineButtonStyle.disabled:not(.checked)::ng-deep *{color:var(--TextFillColorDisabled)}\n"] }]
977
+ }], propDecorators: { IsChecked: [{
978
+ type: Input
979
+ }, {
980
+ type: HostBinding,
981
+ args: ['class.checked']
982
+ }], IsCheckedChange: [{
983
+ type: Output
984
+ }], onPointerUp: [{
985
+ type: HostListener,
986
+ args: ['pointerup', ['$event']]
987
+ }] } });
988
+
989
+ class ToggleSwitchComponent extends CheckBoxComponent {
990
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleSwitchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
991
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ToggleSwitchComponent, isStandalone: true, selector: "ToggleSwitch", usesInheritance: true, ngImport: i0, template: `<label class="container">
992
+ <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
993
+ <div class="slider">
994
+ <div class="thumb"></div>
995
+ </div>
996
+ <div class="content"><ng-content/></div>
997
+ </label>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):active:not(:disabled)+.slider{background-color:var(--ControlAltFillColorQuarternary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):disabled+.slider{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input:not(:checked):disabled+.slider>.thumb{background-color:var(--TextFillColorDisabled)}input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:not(:active):not(:disabled)+.slider:hover{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:active:not(:disabled)+.slider{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input:checked:active:not(:disabled)+.slider>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:disabled+.slider{background-color:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled)}input:checked:disabled+.slider>.thumb{background-color:var(--TextOnAccentFillColorDisabled)}input:checked+.slider>.thumb{transform:translate(22px)}input:not(:disabled):active+.slider>.thumb{width:17px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):hover+.slider>.thumb{width:14px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):checked:hover+.slider>.thumb{transform:translate(21px)}input:not(:disabled):checked:active+.slider>.thumb{transform:translate(18px);width:17px;height:14px}.slider{display:grid;width:40px;height:18px;border-radius:10px;border-style:solid;border-width:1.5px;transition:background-color var(--ControlNormalAnimationDuration);background-color:var(--ControlAltFillColorSecondary)}.thumb{display:grid;width:12px;height:12px;border-radius:7px;align-self:center;margin:0 3px;transition:transform var(--ControlNormalAnimationDuration);transition:width var(--ControlFastAnimationDuration);transition:margin-left var(--ControlFastAnimationDuration)}\n"] }); }
998
+ }
999
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleSwitchComponent, decorators: [{
1000
+ type: Component,
1001
+ args: [{ selector: 'ToggleSwitch', template: `<label class="container">
1002
+ <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
1003
+ <div class="slider">
1004
+ <div class="thumb"></div>
1005
+ </div>
1006
+ <div class="content"><ng-content/></div>
1007
+ </label>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}.container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:var(--ControlAltFillColorSecondary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:var(--ControlAltFillColorTertiary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):active:not(:disabled)+.slider{background-color:var(--ControlAltFillColorQuarternary);border-color:var(--ControlStrongStrokeColorDefault)}input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:var(--TextFillColorSecondary)}input:not(:checked):disabled+.slider{background-color:var(--ControlAltFillColorDisabled);border-color:var(--ControlStrongStrokeColorDisabled)}input:not(:checked):disabled+.slider>.thumb{background-color:var(--TextFillColorDisabled)}input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:var(--AccentFillColorDefault);border-color:var(--AccentFillColorDefault)}input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:not(:active):not(:disabled)+.slider:hover{background-color:var(--AccentFillColorSecondary);border-color:var(--AccentFillColorSecondary)}input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:active:not(:disabled)+.slider{background-color:var(--AccentFillColorTertiary);border-color:var(--AccentFillColorTertiary)}input:checked:active:not(:disabled)+.slider>.thumb{background-color:var(--TextOnAccentFillColorPrimary)}input:checked:disabled+.slider{background-color:var(--AccentFillColorDisabled);border-color:var(--AccentFillColorDisabled)}input:checked:disabled+.slider>.thumb{background-color:var(--TextOnAccentFillColorDisabled)}input:checked+.slider>.thumb{transform:translate(22px)}input:not(:disabled):active+.slider>.thumb{width:17px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):hover+.slider>.thumb{width:14px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):checked:hover+.slider>.thumb{transform:translate(21px)}input:not(:disabled):checked:active+.slider>.thumb{transform:translate(18px);width:17px;height:14px}.slider{display:grid;width:40px;height:18px;border-radius:10px;border-style:solid;border-width:1.5px;transition:background-color var(--ControlNormalAnimationDuration);background-color:var(--ControlAltFillColorSecondary)}.thumb{display:grid;width:12px;height:12px;border-radius:7px;align-self:center;margin:0 3px;transition:transform var(--ControlNormalAnimationDuration);transition:width var(--ControlFastAnimationDuration);transition:margin-left var(--ControlFastAnimationDuration)}\n"] }]
1008
+ }] });
1009
+
1010
+ class ListBoxComponent extends SelectorComponent {
1011
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1012
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ListBoxComponent, isStandalone: true, selector: "ListBox", usesInheritance: true, ngImport: i0, template: "<div *ngFor=\"let item of ItemSource; index as index; trackBy: getValue\" class=\"item\" [ngClass]=\"{'selected': index == SelectedIndex}\" (click)=\"onItemClick($event, index, item)\" [id]=\"'xaml-selector-'+_id+'-item-'+index\" [ngStyle]=\"{'align-content': alignContent, 'justify-content': justifyContent}\">\n <ng-container *ngIf=\"ItemTemplate\">\n <ng-container *ngTemplateOutlet=\"ItemTemplate; context: { $implicit: item }\"/>\n </ng-container>\n <ng-container *ngIf=\"!ItemTemplate\">{{ DisplayMemberPath ? item[DisplayMemberPath] : item }}</ng-container>\n </div>", isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:flex;flex-direction:column;background-color:var(--SystemChromeMediumLowColor)}:host .item{display:grid;padding:12px;margin:0}:host:not(.disabled) .item:not(:hover):not(:active):not(.selected){color:var(--TextFillColorPrimary)}:host:not(.disabled) .item:hover:not(.active):not(.selected){background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:active:not(.selected){background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:not(:hover):not(:active).selected{background-color:var(--SystemControlHighlightListAccentLow)}:host:not(.disabled) .item:hover:not(:active).selected{background-color:var(--SystemControlHighlightListAccentMedium)}:host:not(.disabled) .item:active.selected{background-color:var(--SystemControlHighlightListAccentHigh)}:host.disabled .item:not(.selected){color:var(--TextFillColorDisabled)}:host.disabled .item.selected{background-color:var(--SubtleFillColorSecondary);color:var(--AccentFillColorDisabled)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
1013
+ }
1014
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ListBoxComponent, decorators: [{
1015
+ type: Component,
1016
+ args: [{ selector: 'ListBox', imports: [CommonModule], template: `<div *ngFor="let item of ItemSource; index as index; trackBy: getValue" class="item" [ngClass]="{'selected': index == SelectedIndex}" (click)="onItemClick($event, index, item)" [id]="'xaml-selector-'+_id+'-item-'+index" [ngStyle]="{'align-content': alignContent, 'justify-content': justifyContent}">
1017
+ ${SelectorItemTemplate}
1018
+ </div>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:flex;flex-direction:column;background-color:var(--SystemChromeMediumLowColor)}:host .item{display:grid;padding:12px;margin:0}:host:not(.disabled) .item:not(:hover):not(:active):not(.selected){color:var(--TextFillColorPrimary)}:host:not(.disabled) .item:hover:not(.active):not(.selected){background-color:var(--SubtleFillColorSecondary)}:host:not(.disabled) .item:active:not(.selected){background-color:var(--SubtleFillColorTertiary)}:host:not(.disabled) .item:not(:hover):not(:active).selected{background-color:var(--SystemControlHighlightListAccentLow)}:host:not(.disabled) .item:hover:not(:active).selected{background-color:var(--SystemControlHighlightListAccentMedium)}:host:not(.disabled) .item:active.selected{background-color:var(--SystemControlHighlightListAccentHigh)}:host.disabled .item:not(.selected){color:var(--TextFillColorDisabled)}:host.disabled .item.selected{background-color:var(--SubtleFillColorSecondary);color:var(--AccentFillColorDisabled)}\n"] }]
1019
+ }] });
1020
+
1021
+ class FlyoutComponent extends PopupComponent {
1022
+ constructor() {
1023
+ super(...arguments);
1024
+ this.Placement = 'Top';
1025
+ }
1026
+ get contentStyle() {
1027
+ let alignSelf;
1028
+ let justifySelf;
1029
+ switch (this.Placement) {
1030
+ case 'Top':
1031
+ case 'Bottom':
1032
+ justifySelf = 'center';
1033
+ break;
1034
+ case 'TopEdgeAlignedLeft':
1035
+ case 'BottomEdgeAlignedLeft':
1036
+ justifySelf = 'left';
1037
+ break;
1038
+ case 'TopEdgeAlignedRight':
1039
+ case 'BottomEdgeAlignedRight':
1040
+ justifySelf = 'right';
1041
+ break;
1042
+ case 'Left':
1043
+ case 'Right':
1044
+ alignSelf = 'center';
1045
+ break;
1046
+ case 'LeftEdgeAlignedTop':
1047
+ case 'RightEdgeAlignedTop':
1048
+ alignSelf = 'flex-start';
1049
+ break;
1050
+ case 'LeftEdgeAlignedBottom':
1051
+ case 'RightEdgeAlignedBottom':
1052
+ alignSelf = 'flex-end';
1053
+ break;
1054
+ }
1055
+ return {
1056
+ 'align-self': alignSelf,
1057
+ 'justify-self': justifySelf,
1058
+ };
1059
+ }
1060
+ get containerStyle() {
1061
+ let top = '0';
1062
+ let left = '0';
1063
+ let right = '0';
1064
+ let bottom = '0';
1065
+ let transform;
1066
+ function translate(x, y, isOpen) {
1067
+ let result = '';
1068
+ if (x !== 0) {
1069
+ result += `translateX(${x > 0 ? '' : '-'}100%)`;
1070
+ if (!isOpen) {
1071
+ result += `translateX(${x > 0 ? '-' : ''}10px)`;
1072
+ }
1073
+ }
1074
+ if (y !== 0) {
1075
+ result += `translateY(${y > 0 ? '' : '-'}100%)`;
1076
+ if (!isOpen) {
1077
+ result += `translateY(${y > 0 ? '-' : ''}10px)`;
1078
+ }
1079
+ }
1080
+ return result;
1081
+ }
1082
+ switch (this.Placement) {
1083
+ case 'Top':
1084
+ case 'TopEdgeAlignedLeft':
1085
+ case 'TopEdgeAlignedRight':
1086
+ bottom = undefined;
1087
+ transform = translate(0, -1, this.IsOpen);
1088
+ break;
1089
+ case 'Bottom':
1090
+ case 'BottomEdgeAlignedLeft':
1091
+ case 'BottomEdgeAlignedRight':
1092
+ top = undefined;
1093
+ transform = translate(0, 1, this.IsOpen);
1094
+ break;
1095
+ case 'Left':
1096
+ case 'LeftEdgeAlignedBottom':
1097
+ case 'LeftEdgeAlignedTop':
1098
+ right = undefined;
1099
+ transform = translate(-1, 0, this.IsOpen);
1100
+ break;
1101
+ case 'Right':
1102
+ case 'RightEdgeAlignedBottom':
1103
+ case 'RightEdgeAlignedTop':
1104
+ left = undefined;
1105
+ transform = translate(1, 0, this.IsOpen);
1106
+ break;
1107
+ }
1108
+ let margin;
1109
+ switch (this.Placement) {
1110
+ case 'Top':
1111
+ margin = '0 -100vw -100vh -100vw';
1112
+ break;
1113
+ case 'TopEdgeAlignedLeft':
1114
+ margin = '0 -100vw -100vh 0';
1115
+ break;
1116
+ case 'TopEdgeAlignedRight':
1117
+ margin = '0 0 -100vh -100vw';
1118
+ break;
1119
+ case 'Bottom':
1120
+ margin = '-100vh -100vw 0 -100vw';
1121
+ break;
1122
+ case 'BottomEdgeAlignedLeft':
1123
+ margin = '0 -100vw 0 0';
1124
+ break;
1125
+ case 'BottomEdgeAlignedRight':
1126
+ margin = '0 0 0 -100vw';
1127
+ break;
1128
+ case 'Left':
1129
+ margin = '-100vh -100vw -100vh 0';
1130
+ break;
1131
+ case 'LeftEdgeAlignedTop':
1132
+ margin = '0 -100vw -100vh 0';
1133
+ break;
1134
+ case 'LeftEdgeAlignedBottom':
1135
+ margin = '-100vh -100vw 0 0';
1136
+ break;
1137
+ case 'Right':
1138
+ margin = '-100vh 0 -100vh -100vw';
1139
+ break;
1140
+ case 'RightEdgeAlignedTop':
1141
+ margin = '0 0 -100vh -100vw';
1142
+ break;
1143
+ case 'RightEdgeAlignedBottom':
1144
+ margin = '-100vh 0 0 -100vw';
1145
+ break;
1146
+ }
1147
+ return {
1148
+ 'top': top,
1149
+ 'left': left,
1150
+ 'right': right,
1151
+ 'bottom': bottom,
1152
+ 'transform': transform,
1153
+ 'margin': margin,
1154
+ 'transition': 'transform var(--ControlNormalAnimationDuration)'
1155
+ };
1156
+ }
1157
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FlyoutComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1158
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FlyoutComponent, isStandalone: true, selector: "Flyout", inputs: { Placement: "Placement" }, usesInheritance: true, ngImport: i0, template: `<div class="popup-backdrop" (click)="onBackdropClick($event)" *ngIf="IsOpen"></div>
1159
+ <div class="popup-container" [ngStyle]="containerStyle" [ngClass]="containerClass">
1160
+ <div class="popup-content" [ngStyle]="contentStyle" *ngIf="isRendered"><ng-content/></div>
1161
+ </div>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{z-index:900}.popup-container{background-color:transparent;display:grid;padding:0;margin:0;border:0;position:absolute;pointer-events:none;z-index:1000}.popup-container>.popup-content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:var(--OverlayCornerRadius);opacity:0;transition:opacity var(--ControlNormalAnimationDuration);-webkit-backdrop-filter:var(--AcrylicBlur);backdrop-filter:var(--AcrylicBlur);box-shadow:0 0 15px #0000001a;border-color:var(--SurfaceStrokeColorFlyout);background-color:var(--AcrylicInAppFillColorDefault)}.popup-container.popup-open>.popup-content{opacity:1;pointer-events:all}.popup-backdrop{position:fixed;inset:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
1162
+ }
1163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FlyoutComponent, decorators: [{
1164
+ type: Component,
1165
+ args: [{ selector: 'Flyout', imports: [CommonModule], template: `<div class="popup-backdrop" (click)="onBackdropClick($event)" *ngIf="IsOpen"></div>
1166
+ <div class="popup-container" [ngStyle]="containerStyle" [ngClass]="containerClass">
1167
+ <div class="popup-content" [ngStyle]="contentStyle" *ngIf="isRendered"><ng-content/></div>
1168
+ </div>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{z-index:900}.popup-container{background-color:transparent;display:grid;padding:0;margin:0;border:0;position:absolute;pointer-events:none;z-index:1000}.popup-container>.popup-content{display:grid;padding:16px;border-width:1px;border-style:solid;border-radius:var(--OverlayCornerRadius);opacity:0;transition:opacity var(--ControlNormalAnimationDuration);-webkit-backdrop-filter:var(--AcrylicBlur);backdrop-filter:var(--AcrylicBlur);box-shadow:0 0 15px #0000001a;border-color:var(--SurfaceStrokeColorFlyout);background-color:var(--AcrylicInAppFillColorDefault)}.popup-container.popup-open>.popup-content{opacity:1;pointer-events:all}.popup-backdrop{position:fixed;inset:0}\n"] }]
1169
+ }], propDecorators: { Placement: [{
1170
+ type: Input
1171
+ }] } });
1172
+
1173
+ class TextBlockComponent extends FrameworkElementComponent {
1174
+ constructor() {
1175
+ super(...arguments);
1176
+ this.FontWeight = 'Normal';
1177
+ this.TextAlignment = 'Left';
1178
+ this.TextWrapping = 'NoWrap';
1179
+ }
1180
+ get fontWeight() {
1181
+ return TextBlockComponent.ToFontWeight(this.FontWeight);
1182
+ }
1183
+ static ToFontWeight(value) {
1184
+ switch (value) {
1185
+ case 'Black':
1186
+ return 900;
1187
+ case 'Bold':
1188
+ return 700;
1189
+ case 'ExtraBlack':
1190
+ return 950;
1191
+ case 'ExtraBold':
1192
+ return 800;
1193
+ case 'ExtraLight':
1194
+ return 200;
1195
+ case 'Light':
1196
+ return 300;
1197
+ case 'Medium':
1198
+ return 500;
1199
+ case 'Normal':
1200
+ return 400;
1201
+ case 'SemiBold':
1202
+ return 600;
1203
+ case 'SemiLight':
1204
+ return 350;
1205
+ case 'Thin':
1206
+ return 100;
1207
+ }
1208
+ }
1209
+ get userSelect() {
1210
+ return this.IsTextSelectionEnabled === 'True' ? 'text' : 'none';
1211
+ }
1212
+ get textDecorationLine() {
1213
+ switch (this.TextDecorations) {
1214
+ case 'None':
1215
+ return 'none';
1216
+ case 'Strikethrough':
1217
+ return 'line-through';
1218
+ case 'Underline':
1219
+ return 'underline';
1220
+ default:
1221
+ return undefined;
1222
+ }
1223
+ }
1224
+ get textOverflow() {
1225
+ switch (this.TextTrimming) {
1226
+ case 'None':
1227
+ case 'Clip':
1228
+ return 'clip';
1229
+ case 'CharacterEllipsis':
1230
+ return 'Ellipsis';
1231
+ default:
1232
+ return undefined;
1233
+ }
1234
+ }
1235
+ get whiteSpace() {
1236
+ switch (this.TextWrapping) {
1237
+ case 'NoWrap':
1238
+ return 'nowrap';
1239
+ case 'Wrap':
1240
+ return 'normal';
1241
+ }
1242
+ }
1243
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBlockComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1244
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: TextBlockComponent, isStandalone: true, selector: "TextBlock", inputs: { FontFamily: "FontFamily", Text: "Text", FontSize: "FontSize", FontStyle: "FontStyle", FontWeight: "FontWeight", Foreground: "Foreground", TextAlignment: "TextAlignment", IsTextSelectionEnabled: "IsTextSelectionEnabled", TextDecorations: "TextDecorations", TextTrimming: "TextTrimming", TextWrapping: "TextWrapping" }, host: { properties: { "style.font-family": "this.FontFamily", "style.font-size": "this.FontSize", "style.font-style": "this.FontStyle", "style.color": "this.Foreground", "style.text-align": "this.TextAlignment", "style.font-weight": "this.fontWeight", "style.user-select": "this.userSelect", "style.text-decoration-line": "this.textDecorationLine", "style.text-overflow": "this.textOverflow", "style.white-space": "this.whiteSpace" } }, usesInheritance: true, ngImport: i0, template: `<ng-container>
1245
+ <ng-content *ngIf="Text === undefined"/>
1246
+ <ng-container *ngIf="Text !== undefined">{{Text}}</ng-container>
1247
+ </ng-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
725
1248
  }
726
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Slider, decorators: [{
1249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBlockComponent, decorators: [{
727
1250
  type: Component,
728
- args: [{ selector: 'Slider', template: `<input type="range"
729
- [min]="Minimum"
730
- [max]="Maximum"
731
- [value]="Value"
732
- [step]="StepFrequency"
733
- (change)="onValueChange($event)"
734
- [disabled]="!IsEnabled"
735
- [className]="Orientation.toLowerCase()">`, styles: [":host{display:grid}input{display:grid;-webkit-appearance:none;appearance:none;background-color:#00000072;border-radius:2px;outline:none}input.horizontal{height:4px;margin:7px 0}input.vertical{width:4px;margin:0 7px;writing-mode:vertical-lr;direction:rtl;vertical-align:middle}@media (prefers-color-scheme: dark){input{background-color:#ffffff8b}}input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid rgba(255,255,255,.0784313725);border-color:#fff;background-color:#0067c0;transition:border-width .167s}@media (prefers-color-scheme: dark){input::-webkit-slider-thumb{border-color:#454545;background-color:#4cc2ff}}input::-moz-range-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:50%;width:16px;height:16px;border-style:solid;border-width:4px;outline:1px solid rgba(255,255,255,.0784313725);border-color:#fff;background-color:#0067c0;transition:border-width .167s}@media (prefers-color-scheme: dark){input::-moz-range-thumb{border-color:#454545;background-color:#4cc2ff}}input:not(:disabled)::-webkit-slider-thumb:hover{border-width:3px;background-color:#0067c0e6}@media (prefers-color-scheme: dark){input:not(:disabled)::-webkit-slider-thumb:hover{background-color:#4cc2ffe6}}input:not(:disabled)::-webkit-slider-thumb:active{border-width:5px;background-color:#0067c0cc}@media (prefers-color-scheme: dark){input:not(:disabled)::-webkit-slider-thumb:active{background-color:#4cc2ffcc}}input:not(:disabled)::-moz-range-thumb:hover{border-width:3px;background-color:#0067c0e6}@media (prefers-color-scheme: dark){input:not(:disabled)::-moz-range-thumb:hover{background-color:#4cc2ffe6}}input:not(:disabled)::-moz-range-thumb:active{border-width:5px;background-color:#0067c0cc}@media (prefers-color-scheme: dark){input:not(:disabled)::-moz-range-thumb:active{background-color:#4cc2ffcc}}input:disabled{background-color:#00000051}@media (prefers-color-scheme: dark){input:disabled{background-color:#ffffff3f}}input:disabled::-webkit-slider-thumb{border-width:2px;background-color:#ffffff37}@media (prefers-color-scheme: dark){input:disabled::-webkit-slider-thumb{background-color:#ffffff28}}input:disabled::-moz-range-thumb{border-width:2px;background-color:#ffffff37}@media (prefers-color-scheme: dark){input:disabled::-moz-range-thumb{background-color:#ffffff28}}\n"] }]
736
- }], propDecorators: { Minimum: [{
1251
+ args: [{
1252
+ selector: 'TextBlock',
1253
+ imports: [CommonModule],
1254
+ template: `<ng-container>
1255
+ <ng-content *ngIf="Text === undefined"/>
1256
+ <ng-container *ngIf="Text !== undefined">{{Text}}</ng-container>
1257
+ </ng-container>`
1258
+ }]
1259
+ }], propDecorators: { FontFamily: [{
737
1260
  type: Input
738
- }], Maximum: [{
1261
+ }, {
1262
+ type: HostBinding,
1263
+ args: ['style.font-family']
1264
+ }], Text: [{
739
1265
  type: Input
740
- }], StepFrequency: [{
1266
+ }], FontSize: [{
741
1267
  type: Input
742
- }], Value: [{
1268
+ }, {
1269
+ type: HostBinding,
1270
+ args: ['style.font-size']
1271
+ }], FontStyle: [{
743
1272
  type: Input
744
- }], ValueChange: [{
745
- type: Output
746
- }], IsEnabled: [{
1273
+ }, {
1274
+ type: HostBinding,
1275
+ args: ['style.font-style']
1276
+ }], FontWeight: [{
747
1277
  type: Input
748
- }], Orientation: [{
1278
+ }], Foreground: [{
1279
+ type: Input
1280
+ }, {
1281
+ type: HostBinding,
1282
+ args: ['style.color']
1283
+ }], TextAlignment: [{
1284
+ type: Input
1285
+ }, {
1286
+ type: HostBinding,
1287
+ args: ['style.text-align']
1288
+ }], IsTextSelectionEnabled: [{
749
1289
  type: Input
1290
+ }], TextDecorations: [{
1291
+ type: Input
1292
+ }], TextTrimming: [{
1293
+ type: Input
1294
+ }], TextWrapping: [{
1295
+ type: Input
1296
+ }], fontWeight: [{
1297
+ type: HostBinding,
1298
+ args: ['style.font-weight']
1299
+ }], userSelect: [{
1300
+ type: HostBinding,
1301
+ args: ['style.user-select']
1302
+ }], textDecorationLine: [{
1303
+ type: HostBinding,
1304
+ args: ['style.text-decoration-line']
1305
+ }], textOverflow: [{
1306
+ type: HostBinding,
1307
+ args: ['style.text-overflow']
1308
+ }], whiteSpace: [{
1309
+ type: HostBinding,
1310
+ args: ['style.white-space']
750
1311
  }] } });
751
1312
 
752
- class TextBox extends FrameworkElement {
1313
+ class FontIconComponent extends FrameworkElementComponent {
753
1314
  constructor() {
754
1315
  super(...arguments);
755
- this.IsEnabled = true;
756
- this.PlaceholderText = '';
757
- this.Text = '';
758
- this.TextChange = new EventEmitter();
759
- this.TextAlignment = 'Left';
760
- this.TextWrapping = 'NoWrap';
1316
+ this.FontWeight = 'Normal';
761
1317
  }
762
- onChange(event) {
763
- this.Text = (event.target).value;
764
- this.TextChange.emit(this.Text);
1318
+ get fontWeight() {
1319
+ return TextBlockComponent.ToFontWeight(this.FontWeight);
765
1320
  }
766
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
767
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: TextBox, isStandalone: true, selector: "TextBox", inputs: { IsEnabled: "IsEnabled", PlaceholderText: "PlaceholderText", Text: "Text", TextAlignment: "TextAlignment", TextWrapping: "TextWrapping" }, outputs: { TextChange: "TextChange" }, usesInheritance: true, ngImport: i0, template: `
768
- <input *ngIf="TextWrapping === 'NoWrap'" type="text" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"/>
769
- <textarea *ngIf="TextWrapping === 'Wrap'" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"></textarea>`, isInline: true, styles: [":host{display:grid}textarea{resize:none}input,textarea{outline-style:none;border-style:solid;border-width:1px;border-radius:4px;padding:6px;background-color:#ffffffb3;border-color:#0000000f;border-bottom-color:#00000072;color:#000000e4}@media (prefers-color-scheme: dark){input,textarea{background-color:#ffffff0f;border-color:#ffffff12;border-bottom-color:#ffffff8b;color:#fff}}input::placeholder,textarea::placeholder{color:#0000009e;opacity:1}@media (prefers-color-scheme: dark){input::placeholder,textarea::placeholder{color:#ffffffc5}}input:hover,textarea:hover{background-color:#f9f9f980}@media (prefers-color-scheme: dark){input:hover,textarea:hover{background-color:#ffffff15}}input:focus,textarea:focus{background-color:#fff;border-bottom-color:#0067c0}@media (prefers-color-scheme: dark){input:focus,textarea:focus{background-color:#1e1e1eb3;border-bottom-color:#4cc2ff}}input:disabled,textarea:disabled{background-color:#f9f9f94d;border-bottom-color:#0000000f;color:#0000005c}@media (prefers-color-scheme: dark){input:disabled,textarea:disabled{background-color:#ffffff0b;border-bottom-color:#ffffff12;color:#ffffff5d}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1321
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FontIconComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1322
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FontIconComponent, isStandalone: true, selector: "FontIcon", inputs: { FontFamily: "FontFamily", FontSize: "FontSize", FontStyle: "FontStyle", FontWeight: "FontWeight", Glyph: "Glyph" }, host: { properties: { "style.font-family": "this.FontFamily", "style.font-size": "this.FontSize", "style.font-style": "this.FontStyle", "style.font-weight": "this.fontWeight" } }, usesInheritance: true, ngImport: i0, template: `{{Glyph}}`, isInline: true, styles: [":host{font-family:Segoe Fluent Icons,Segoe MDL2 Assets}\n"] }); }
770
1323
  }
771
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBox, decorators: [{
1324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FontIconComponent, decorators: [{
772
1325
  type: Component,
773
- args: [{ selector: 'TextBox', imports: [CommonModule], template: `
774
- <input *ngIf="TextWrapping === 'NoWrap'" type="text" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"/>
775
- <textarea *ngIf="TextWrapping === 'Wrap'" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"></textarea>`, styles: [":host{display:grid}textarea{resize:none}input,textarea{outline-style:none;border-style:solid;border-width:1px;border-radius:4px;padding:6px;background-color:#ffffffb3;border-color:#0000000f;border-bottom-color:#00000072;color:#000000e4}@media (prefers-color-scheme: dark){input,textarea{background-color:#ffffff0f;border-color:#ffffff12;border-bottom-color:#ffffff8b;color:#fff}}input::placeholder,textarea::placeholder{color:#0000009e;opacity:1}@media (prefers-color-scheme: dark){input::placeholder,textarea::placeholder{color:#ffffffc5}}input:hover,textarea:hover{background-color:#f9f9f980}@media (prefers-color-scheme: dark){input:hover,textarea:hover{background-color:#ffffff15}}input:focus,textarea:focus{background-color:#fff;border-bottom-color:#0067c0}@media (prefers-color-scheme: dark){input:focus,textarea:focus{background-color:#1e1e1eb3;border-bottom-color:#4cc2ff}}input:disabled,textarea:disabled{background-color:#f9f9f94d;border-bottom-color:#0000000f;color:#0000005c}@media (prefers-color-scheme: dark){input:disabled,textarea:disabled{background-color:#ffffff0b;border-bottom-color:#ffffff12;color:#ffffff5d}}\n"] }]
776
- }], propDecorators: { IsEnabled: [{
1326
+ args: [{ selector: 'FontIcon', template: `{{Glyph}}`, styles: [":host{font-family:Segoe Fluent Icons,Segoe MDL2 Assets}\n"] }]
1327
+ }], propDecorators: { FontFamily: [{
777
1328
  type: Input
778
- }], PlaceholderText: [{
1329
+ }, {
1330
+ type: HostBinding,
1331
+ args: ['style.font-family']
1332
+ }], FontSize: [{
779
1333
  type: Input
780
- }], Text: [{
1334
+ }, {
1335
+ type: HostBinding,
1336
+ args: ['style.font-size']
1337
+ }], FontStyle: [{
781
1338
  type: Input
782
- }], TextChange: [{
783
- type: Output
784
- }], TextAlignment: [{
1339
+ }, {
1340
+ type: HostBinding,
1341
+ args: ['style.font-style']
1342
+ }], FontWeight: [{
785
1343
  type: Input
786
- }], TextWrapping: [{
1344
+ }], Glyph: [{
787
1345
  type: Input
1346
+ }], fontWeight: [{
1347
+ type: HostBinding,
1348
+ args: ['style.font-weight']
788
1349
  }] } });
789
1350
 
790
- class ToggleButton extends Button {
1351
+ class GridComponent extends PanelComponent {
791
1352
  constructor() {
792
1353
  super(...arguments);
793
- this.IsChecked = false;
794
- this.IsCheckedChange = new EventEmitter();
1354
+ this.Orientation = 'Horizontal';
795
1355
  }
796
- onPointerUp(event) {
797
- this.IsChecked = !this.IsChecked;
798
- this.IsCheckedChange.emit(this.IsChecked);
1356
+ get gridAutoFlow() {
1357
+ return this.Orientation == 'Horizontal' ? 'row' : 'column';
799
1358
  }
800
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleButton, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
801
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ToggleButton, isStandalone: true, selector: "ToggleButton", inputs: { IsChecked: "IsChecked" }, outputs: { IsCheckedChange: "IsCheckedChange" }, host: { listeners: { "pointerup": "onPointerUp($event)" }, properties: { "class.checked": "this.IsChecked" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid;align-content:center;justify-content:center;padding:5px 11px;border-width:1px;border-style:solid;border-radius:4px;background:#ffffffb3;border-color:#0000000f;color:#000000e4;transition:all .167s}:host::ng-deep *{color:#000000e4}@media (prefers-color-scheme: dark){:host{background:#ffffff0f;border-color:#ffffff12;color:#fff}:host::ng-deep *{color:#fff}}:host:hover:not(.checked):not(.flyout-open){background:#f9f9f980}@media (prefers-color-scheme: dark){:host:hover:not(.checked):not(.flyout-open){background:#ffffff15}}:host:active:not(.checked):not(.flyout-open){background:#f9f9f94d;color:#0000009e}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#0000009e}@media (prefers-color-scheme: dark){:host:active:not(.checked):not(.flyout-open){background:#ffffff08;color:#ffffffc5}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#ffffffc5}}:host:disabled:not(.checked){background:#f9f9f94d;color:#0000005c}:host:disabled:not(.checked)::ng-deep *{color:#0000005c}@media (prefers-color-scheme: dark){:host:disabled:not(.checked){background:#ffffff0b;color:#ffffff5d}:host:disabled:not(.checked)::ng-deep *{color:#ffffff5d}}:host.checked{background:#0067c0;border-color:#0067c0;color:#fff}:host.checked::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host.checked{background:#4cc2ff;border-color:#4cc2ff;color:#000}:host.checked::ng-deep *{color:#000}}:host:hover.checked:not(.flyout-open){background:#0067c0e6;border-color:#0067c0e6;color:#fff}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host:hover.checked:not(.flyout-open){background:#4cc2ffe6;border-color:#4cc2ffe6;color:#000}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#000}}:host:active.checked:not(.flyout-open){background:#0067c0cc;border-color:#fff0;color:#ffffffb3}:host:active.checked:not(.flyout-open)::ng-deep *{color:#ffffffb3}@media (prefers-color-scheme: dark){:host:active.checked:not(.flyout-open){background:#4cc2ffcc;border-color:#fff0;color:#00000080}:host:active.checked:not(.flyout-open)::ng-deep *{color:#00000080}}\n"] }); }
1359
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1360
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: GridComponent, isStandalone: false, selector: "Grid", inputs: { ColumnDefinitions: "ColumnDefinitions", RowDefinitions: "RowDefinitions", ColumnSpacing: "ColumnSpacing", RowSpacing: "RowSpacing", Orientation: "Orientation" }, host: { properties: { "style.grid-template-columns": "this.ColumnDefinitions", "style.grid-template-rows": "this.RowDefinitions", "style.column-gap": "this.ColumnSpacing", "style.row-gap": "this.RowSpacing", "style.grid-auto-flow": "this.gridAutoFlow" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid}\n"] }); }
802
1361
  }
803
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleButton, decorators: [{
1362
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridComponent, decorators: [{
804
1363
  type: Component,
805
- args: [{ selector: 'ToggleButton', template: `<ng-content/>`, styles: [":host{display:grid;align-content:center;justify-content:center;padding:5px 11px;border-width:1px;border-style:solid;border-radius:4px;background:#ffffffb3;border-color:#0000000f;color:#000000e4;transition:all .167s}:host::ng-deep *{color:#000000e4}@media (prefers-color-scheme: dark){:host{background:#ffffff0f;border-color:#ffffff12;color:#fff}:host::ng-deep *{color:#fff}}:host:hover:not(.checked):not(.flyout-open){background:#f9f9f980}@media (prefers-color-scheme: dark){:host:hover:not(.checked):not(.flyout-open){background:#ffffff15}}:host:active:not(.checked):not(.flyout-open){background:#f9f9f94d;color:#0000009e}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#0000009e}@media (prefers-color-scheme: dark){:host:active:not(.checked):not(.flyout-open){background:#ffffff08;color:#ffffffc5}:host:active:not(.checked):not(.flyout-open)::ng-deep *{color:#ffffffc5}}:host:disabled:not(.checked){background:#f9f9f94d;color:#0000005c}:host:disabled:not(.checked)::ng-deep *{color:#0000005c}@media (prefers-color-scheme: dark){:host:disabled:not(.checked){background:#ffffff0b;color:#ffffff5d}:host:disabled:not(.checked)::ng-deep *{color:#ffffff5d}}:host.checked{background:#0067c0;border-color:#0067c0;color:#fff}:host.checked::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host.checked{background:#4cc2ff;border-color:#4cc2ff;color:#000}:host.checked::ng-deep *{color:#000}}:host:hover.checked:not(.flyout-open){background:#0067c0e6;border-color:#0067c0e6;color:#fff}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#fff}@media (prefers-color-scheme: dark){:host:hover.checked:not(.flyout-open){background:#4cc2ffe6;border-color:#4cc2ffe6;color:#000}:host:hover.checked:not(.flyout-open)::ng-deep *{color:#000}}:host:active.checked:not(.flyout-open){background:#0067c0cc;border-color:#fff0;color:#ffffffb3}:host:active.checked:not(.flyout-open)::ng-deep *{color:#ffffffb3}@media (prefers-color-scheme: dark){:host:active.checked:not(.flyout-open){background:#4cc2ffcc;border-color:#fff0;color:#00000080}:host:active.checked:not(.flyout-open)::ng-deep *{color:#00000080}}\n"] }]
806
- }], propDecorators: { IsChecked: [{
1364
+ args: [{ selector: 'Grid', template: `<ng-content/>`, standalone: false, styles: [":host{display:grid}\n"] }]
1365
+ }], propDecorators: { ColumnDefinitions: [{
807
1366
  type: Input
808
1367
  }, {
809
1368
  type: HostBinding,
810
- args: ['class.checked']
811
- }], IsCheckedChange: [{
812
- type: Output
813
- }], onPointerUp: [{
814
- type: HostListener,
815
- args: ['pointerup', ['$event']]
1369
+ args: ['style.grid-template-columns']
1370
+ }], RowDefinitions: [{
1371
+ type: Input
1372
+ }, {
1373
+ type: HostBinding,
1374
+ args: ['style.grid-template-rows']
1375
+ }], ColumnSpacing: [{
1376
+ type: Input
1377
+ }, {
1378
+ type: HostBinding,
1379
+ args: ['style.column-gap']
1380
+ }], RowSpacing: [{
1381
+ type: Input
1382
+ }, {
1383
+ type: HostBinding,
1384
+ args: ['style.row-gap']
1385
+ }], Orientation: [{
1386
+ type: Input
1387
+ }], gridAutoFlow: [{
1388
+ type: HostBinding,
1389
+ args: ['style.grid-auto-flow']
816
1390
  }] } });
817
-
818
- class ToggleSwitch extends CheckBox {
819
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleSwitch, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
820
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ToggleSwitch, isStandalone: true, selector: "ToggleSwitch", usesInheritance: true, ngImport: i0, template: `<label class="container">
821
- <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
822
- <div class="slider">
823
- <div class="thumb"></div>
824
- </div>
825
- <div class="content"><ng-content/></div>
826
- </label>`, isInline: true, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:#00000019;border-color:#ffffff8b}}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#ffffffc5}}input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:#ffffff0b;border-color:#ffffff8b}}input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#ffffffc5}}input:not(:checked):active:not(:disabled)+.slider{background-color:#00000018;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):active:not(:disabled)+.slider{background-color:#ffffff12;border-color:#ffffff8b}}input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:#ffffffc5}}input:not(:checked):disabled+.slider{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input:not(:checked):disabled+.slider{background-color:#fff0;border-color:#ffffff28}}input:not(:checked):disabled+.slider>.thumb{background-color:#0000005c}@media (prefers-color-scheme: dark){input:not(:checked):disabled+.slider>.thumb{background-color:#ffffff5d}}input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:#4cc2ff;border-color:#4cc2ff}}input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#000}}input:checked:not(:active):not(:disabled)+.slider:hover{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:hover{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#000}}input:checked:active:not(:disabled)+.slider{background-color:#0067c0cc;border-color:#0067c0cc}@media (prefers-color-scheme: dark){input:checked:active:not(:disabled)+.slider{background-color:#4cc2ffcc;border-color:#4cc2ffcc}}input:checked:active:not(:disabled)+.slider>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:active:not(:disabled)+.slider>.thumb{background-color:#000}}input:checked:disabled+.slider{background-color:#ffffff37;border-color:#ffffff37}@media (prefers-color-scheme: dark){input:checked:disabled+.slider{background-color:#ffffff28;border-color:#ffffff28}}input:checked:disabled+.slider>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:disabled+.slider>.thumb{background-color:#ffffff87}}input:checked+.slider>.thumb{transform:translate(22px)}input:not(:disabled):active+.slider>.thumb{width:17px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):hover+.slider>.thumb{width:14px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):checked:hover+.slider>.thumb{transform:translate(21px)}input:not(:disabled):checked:active+.slider>.thumb{transform:translate(18px);width:17px;height:14px}.slider{display:grid;width:40px;height:18px;border-radius:10px;border-style:solid;border-width:1.5px;transition:background-color .25s;background-color:#00000006}@media (prefers-color-scheme: dark){.slider{background-color:#00000019}}.thumb{display:grid;width:12px;height:12px;border-radius:7px;align-self:center;margin:0 3px;transition:transform .25s;transition:width .167s;transition:margin-left .167s}\n"] }); }
1391
+ class GridProperty {
827
1392
  }
828
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleSwitch, decorators: [{
829
- type: Component,
830
- args: [{ selector: 'ToggleSwitch', template: `<label class="container">
831
- <input type="checkbox" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
832
- <div class="slider">
833
- <div class="thumb"></div>
834
- </div>
835
- <div class="content"><ng-content/></div>
836
- </label>`, styles: [".container{display:grid;grid-template-columns:auto 1fr;column-gap:6px}input{display:none}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:#00000006;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover){background-color:#00000019;border-color:#ffffff8b}}input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#ffffffc5}}input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:#0000000f;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:hover{background-color:#ffffff0b;border-color:#ffffff8b}}input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#ffffffc5}}input:not(:checked):active:not(:disabled)+.slider{background-color:#00000018;border-color:#00000072}@media (prefers-color-scheme: dark){input:not(:checked):active:not(:disabled)+.slider{background-color:#ffffff12;border-color:#ffffff8b}}input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:#0000009e}@media (prefers-color-scheme: dark){input:not(:checked):active:not(:disabled)+.slider>.thumb{background-color:#ffffffc5}}input:not(:checked):disabled+.slider{background-color:#fff0;border-color:#00000037}@media (prefers-color-scheme: dark){input:not(:checked):disabled+.slider{background-color:#fff0;border-color:#ffffff28}}input:not(:checked):disabled+.slider>.thumb{background-color:#0000005c}@media (prefers-color-scheme: dark){input:not(:checked):disabled+.slider>.thumb{background-color:#ffffff5d}}input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:#0067c0;border-color:#0067c0}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:not(:hover){background-color:#4cc2ff;border-color:#4cc2ff}}input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:not(:hover)>.thumb{background-color:#000}}input:checked:not(:active):not(:disabled)+.slider:hover{background-color:#0067c0e6;border-color:#0067c0e6}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:hover{background-color:#4cc2ffe6;border-color:#4cc2ffe6}}input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:not(:active):not(:disabled)+.slider:hover>.thumb{background-color:#000}}input:checked:active:not(:disabled)+.slider{background-color:#0067c0cc;border-color:#0067c0cc}@media (prefers-color-scheme: dark){input:checked:active:not(:disabled)+.slider{background-color:#4cc2ffcc;border-color:#4cc2ffcc}}input:checked:active:not(:disabled)+.slider>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:active:not(:disabled)+.slider>.thumb{background-color:#000}}input:checked:disabled+.slider{background-color:#ffffff37;border-color:#ffffff37}@media (prefers-color-scheme: dark){input:checked:disabled+.slider{background-color:#ffffff28;border-color:#ffffff28}}input:checked:disabled+.slider>.thumb{background-color:#fff}@media (prefers-color-scheme: dark){input:checked:disabled+.slider>.thumb{background-color:#ffffff87}}input:checked+.slider>.thumb{transform:translate(22px)}input:not(:disabled):active+.slider>.thumb{width:17px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):hover+.slider>.thumb{width:14px;height:14px;transform:translate(-1px)}input:not(:disabled):not(:active):checked:hover+.slider>.thumb{transform:translate(21px)}input:not(:disabled):checked:active+.slider>.thumb{transform:translate(18px);width:17px;height:14px}.slider{display:grid;width:40px;height:18px;border-radius:10px;border-style:solid;border-width:1.5px;transition:background-color .25s;background-color:#00000006}@media (prefers-color-scheme: dark){.slider{background-color:#00000019}}.thumb{display:grid;width:12px;height:12px;border-radius:7px;align-self:center;margin:0 3px;transition:transform .25s;transition:width .167s;transition:margin-left .167s}\n"] }]
837
- }] });
838
-
839
- class ScrollViewer extends FrameworkElement {
1393
+ class GridDirective {
840
1394
  constructor() {
841
- super(...arguments);
842
- this.HorizontalScrollMode = 'Enabled';
843
- this.VerticalScrollMode = 'Enabled';
1395
+ this.Grid = new GridProperty();
844
1396
  }
845
- static toOverflow(value) {
846
- switch (value) {
847
- case 'Disabled':
848
- return 'hidden';
849
- case 'Enabled':
850
- return 'scroll';
851
- case 'Auto':
852
- return 'auto';
853
- }
1397
+ get gridColumnStart() {
1398
+ return this.Grid.Column !== undefined ? this.Grid.Column + 1 : undefined;
1399
+ }
1400
+ get gridRowStart() {
1401
+ return this.Grid.Row !== undefined ? this.Grid.Row + 1 : undefined;
854
1402
  }
855
- get overflowX() {
856
- return ScrollViewer.toOverflow(this.HorizontalScrollMode);
1403
+ get gridColumnEnd() {
1404
+ return this.Grid.ColumnSpan !== undefined ? ('span ' + this.Grid.ColumnSpan) : undefined;
857
1405
  }
858
- get overflowY() {
859
- return ScrollViewer.toOverflow(this.VerticalScrollMode);
1406
+ get gridRowEnd() {
1407
+ return this.Grid.RowSpan !== undefined ? ('span ' + this.Grid.RowSpan) : undefined;
860
1408
  }
861
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollViewer, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
862
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ScrollViewer, isStandalone: true, selector: "ScrollViewer", inputs: { HorizontalScrollMode: "HorizontalScrollMode", VerticalScrollMode: "VerticalScrollMode" }, host: { properties: { "style.overflow-x": "this.overflowX", "style.overflow-y": "this.overflowY" } }, usesInheritance: true, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid}\n"] }); }
1409
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1410
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: GridDirective, isStandalone: false, selector: "[Grid]", inputs: { Grid: "Grid" }, host: { properties: { "style.grid-column-start": "this.gridColumnStart", "style.grid-row-start": "this.gridRowStart", "style.grid-column-end": "this.gridColumnEnd", "style.grid-row-end": "this.gridRowEnd" } }, ngImport: i0 }); }
863
1411
  }
864
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ScrollViewer, decorators: [{
865
- type: Component,
866
- args: [{ selector: 'ScrollViewer', template: `<ng-content/>`, styles: [":host{display:grid}\n"] }]
867
- }], propDecorators: { HorizontalScrollMode: [{
868
- type: Input
869
- }], VerticalScrollMode: [{
1412
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridDirective, decorators: [{
1413
+ type: Directive,
1414
+ args: [{
1415
+ selector: '[Grid]',
1416
+ standalone: false
1417
+ }]
1418
+ }], propDecorators: { Grid: [{
870
1419
  type: Input
871
- }], overflowX: [{
1420
+ }], gridColumnStart: [{
1421
+ type: HostBinding,
1422
+ args: ['style.grid-column-start']
1423
+ }], gridRowStart: [{
1424
+ type: HostBinding,
1425
+ args: ['style.grid-row-start']
1426
+ }], gridColumnEnd: [{
1427
+ type: HostBinding,
1428
+ args: ['style.grid-column-end']
1429
+ }], gridRowEnd: [{
1430
+ type: HostBinding,
1431
+ args: ['style.grid-row-end']
1432
+ }] } });
1433
+ class GridRowDirective {
1434
+ get gridRowStart() {
1435
+ return this.Row !== undefined ? parseInt(this.Row) + 1 : undefined;
1436
+ }
1437
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridRowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1438
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: GridRowDirective, isStandalone: false, selector: "[Grid-Row]", inputs: { Row: ["Grid-Row", "Row"] }, host: { properties: { "style.grid-row-start": "this.gridRowStart" } }, ngImport: i0 }); }
1439
+ }
1440
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridRowDirective, decorators: [{
1441
+ type: Directive,
1442
+ args: [{
1443
+ selector: '[Grid-Row]',
1444
+ standalone: false
1445
+ }]
1446
+ }], propDecorators: { Row: [{
1447
+ type: Input,
1448
+ args: ['Grid-Row']
1449
+ }], gridRowStart: [{
1450
+ type: HostBinding,
1451
+ args: ['style.grid-row-start']
1452
+ }] } });
1453
+ class GridColumnDirective {
1454
+ get gridColumnStart() {
1455
+ return this.Column !== undefined ? parseInt(this.Column) + 1 : undefined;
1456
+ }
1457
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1458
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: GridColumnDirective, isStandalone: false, selector: "[Grid-Column]", inputs: { Column: ["Grid-Column", "Column"] }, host: { properties: { "style.grid-column-start": "this.gridColumnStart" } }, ngImport: i0 }); }
1459
+ }
1460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridColumnDirective, decorators: [{
1461
+ type: Directive,
1462
+ args: [{
1463
+ selector: '[Grid-Column]',
1464
+ standalone: false
1465
+ }]
1466
+ }], propDecorators: { Column: [{
1467
+ type: Input,
1468
+ args: ['Grid-Column']
1469
+ }], gridColumnStart: [{
1470
+ type: HostBinding,
1471
+ args: ['style.grid-column-start']
1472
+ }] } });
1473
+ class GridRowSpanDirective {
1474
+ get gridRowEnd() {
1475
+ return this.RowSpan !== undefined ? ('span ' + this.RowSpan) : undefined;
1476
+ }
1477
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridRowSpanDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1478
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: GridRowSpanDirective, isStandalone: false, selector: "[Grid-RowSpan]", inputs: { RowSpan: ["Grid-RowSpan", "RowSpan"] }, host: { properties: { "style.grid-row-end": "this.gridRowEnd" } }, ngImport: i0 }); }
1479
+ }
1480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridRowSpanDirective, decorators: [{
1481
+ type: Directive,
1482
+ args: [{
1483
+ selector: '[Grid-RowSpan]',
1484
+ standalone: false
1485
+ }]
1486
+ }], propDecorators: { RowSpan: [{
1487
+ type: Input,
1488
+ args: ['Grid-RowSpan']
1489
+ }], gridRowEnd: [{
872
1490
  type: HostBinding,
873
- args: ['style.overflow-x']
874
- }], overflowY: [{
1491
+ args: ['style.grid-row-end']
1492
+ }] } });
1493
+ class GridColumnSpanDirective {
1494
+ get gridColumnEnd() {
1495
+ return this.ColumnSpan !== undefined ? ('span ' + this.ColumnSpan) : undefined;
1496
+ }
1497
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridColumnSpanDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1498
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: GridColumnSpanDirective, isStandalone: false, selector: "[Grid-ColumnSpan]", inputs: { ColumnSpan: ["Grid-ColumnSpan", "ColumnSpan"] }, host: { properties: { "style.grid-column-end": "this.gridColumnEnd" } }, ngImport: i0 }); }
1499
+ }
1500
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridColumnSpanDirective, decorators: [{
1501
+ type: Directive,
1502
+ args: [{
1503
+ selector: '[Grid-ColumnSpan]',
1504
+ standalone: false
1505
+ }]
1506
+ }], propDecorators: { ColumnSpan: [{
1507
+ type: Input,
1508
+ args: ['Grid-ColumnSpan']
1509
+ }], gridColumnEnd: [{
875
1510
  type: HostBinding,
876
- args: ['style.overflow-y']
1511
+ args: ['style.grid-column-end']
877
1512
  }] } });
1513
+ const GridComponents = [
1514
+ GridComponent,
1515
+ GridDirective,
1516
+ GridRowDirective,
1517
+ GridRowSpanDirective,
1518
+ GridColumnDirective,
1519
+ GridColumnSpanDirective
1520
+ ];
1521
+ class GridModule {
1522
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1523
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.6", ngImport: i0, type: GridModule, declarations: [GridComponent, GridDirective, GridRowDirective, GridRowSpanDirective, GridColumnDirective, GridColumnSpanDirective], exports: [GridComponent, GridDirective, GridRowDirective, GridRowSpanDirective, GridColumnDirective, GridColumnSpanDirective] }); }
1524
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridModule }); }
1525
+ }
1526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: GridModule, decorators: [{
1527
+ type: NgModule,
1528
+ args: [{
1529
+ declarations: GridComponents,
1530
+ exports: GridComponents
1531
+ }]
1532
+ }] });
878
1533
 
879
- class ToolTipProperty {
880
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipProperty, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
881
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: ToolTipProperty, isStandalone: false, selector: "[ToolTipService-ToolTip]", inputs: { ToolTip: ["ToolTipService-ToolTip", "ToolTip"] }, host: { properties: { "attr.title": "this.ToolTip" } }, ngImport: i0 }); }
1534
+ class ToolTipDirective {
1535
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1536
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: ToolTipDirective, isStandalone: false, selector: "[ToolTipService-ToolTip]", inputs: { ToolTip: ["ToolTipService-ToolTip", "ToolTip"] }, host: { properties: { "attr.title": "this.ToolTip" } }, ngImport: i0 }); }
882
1537
  }
883
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipProperty, decorators: [{
1538
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipDirective, decorators: [{
884
1539
  type: Directive,
885
1540
  args: [{
886
1541
  selector: '[ToolTipService-ToolTip]',
@@ -893,35 +1548,92 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
893
1548
  type: HostBinding,
894
1549
  args: ['attr.title']
895
1550
  }] } });
896
- class ToolTipService {
897
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipService, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
898
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.6", ngImport: i0, type: ToolTipService, declarations: [ToolTipProperty], exports: [ToolTipProperty] }); }
899
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipService }); }
1551
+ class ToolTipServiceModule {
1552
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipServiceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1553
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.6", ngImport: i0, type: ToolTipServiceModule, declarations: [ToolTipDirective], exports: [ToolTipDirective] }); }
1554
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipServiceModule }); }
900
1555
  }
901
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipService, decorators: [{
1556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipServiceModule, decorators: [{
902
1557
  type: NgModule,
903
1558
  args: [{
904
- declarations: [ToolTipProperty],
905
- exports: [ToolTipProperty]
1559
+ declarations: [ToolTipDirective],
1560
+ exports: [ToolTipDirective]
906
1561
  }]
907
1562
  }] });
908
1563
 
909
- class XamlRoot {
910
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: XamlRoot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
911
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: XamlRoot, isStandalone: true, selector: "XamlRoot", ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid;background-color:#f3f3f3}:host::ng-deep *{font-family:Segoe UI,Arial,sans-serif;font-size:10pt;color:#000}@media (prefers-color-scheme: dark){:host{background-color:#202020}:host::ng-deep *{color:#fff}}\n"] }); }
1564
+ class TextBoxComponent extends FrameworkElementComponent {
1565
+ constructor() {
1566
+ super(...arguments);
1567
+ this.IsEnabled = true;
1568
+ this.PlaceholderText = '';
1569
+ this.TextChange = new EventEmitter();
1570
+ this.TextAlignment = 'Left';
1571
+ this.TextWrapping = 'NoWrap';
1572
+ this._text = '';
1573
+ }
1574
+ get Text() {
1575
+ return this._text;
1576
+ }
1577
+ set Text(value) {
1578
+ if (value == this._text)
1579
+ return;
1580
+ this._text = value;
1581
+ this.TextChange.emit(value);
1582
+ }
1583
+ onChange(event) {
1584
+ this.Text = (event.target).value;
1585
+ }
1586
+ onContextMenu(event) {
1587
+ event.stopPropagation();
1588
+ }
1589
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1590
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: TextBoxComponent, isStandalone: true, selector: "TextBox", inputs: { IsEnabled: "IsEnabled", PlaceholderText: "PlaceholderText", TextAlignment: "TextAlignment", TextWrapping: "TextWrapping", Text: "Text" }, outputs: { TextChange: "TextChange" }, host: { listeners: { "contextmenu": "onContextMenu($event)" } }, usesInheritance: true, ngImport: i0, template: `<input *ngIf="TextWrapping === 'NoWrap'" type="text" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"/>
1591
+ <textarea *ngIf="TextWrapping === 'Wrap'" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"></textarea>`, isInline: true, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}textarea{resize:none}input,textarea{outline-style:none;border-style:solid;border-width:1px;border-radius:var(--ControlCornerRadius);padding:6px;background-color:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);border-bottom-color:var(--ControlStrongStrokeColorDefault);color:var(--TextFillColorPrimary)}input::placeholder,textarea::placeholder{color:var(--TextFillColorSecondary);opacity:1}input:hover,textarea:hover{background-color:var(--ControlFillColorSecondary)}input:focus,input:active,textarea:focus,textarea:active{background-color:var(--ControlFillColorInputActive);border-bottom-color:var(--AccentFillColorDefault)}input:disabled,textarea:disabled{background-color:var(--ControlFillColorDisabled);border-bottom-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorDisabled)}::selection{background-color:var(--SystemAccentColor);color:var(--TextOnAccentFillColorPrimary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1592
+ }
1593
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBoxComponent, decorators: [{
1594
+ type: Component,
1595
+ args: [{ selector: 'TextBox', imports: [CommonModule], template: `<input *ngIf="TextWrapping === 'NoWrap'" type="text" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"/>
1596
+ <textarea *ngIf="TextWrapping === 'Wrap'" [disabled]="!IsEnabled" [value]="Text" (change)="onChange($event)" [placeholder]="PlaceholderText" [style]="{'text-align': TextAlignment}"></textarea>`, styles: [":host{--ControlBorderThickness: 1px;--ControlCornerRadius: 4px;--OverlayCornerRadius: 8px;--AcrylicBlur: blur(12px);--SymbolFontFamily: \"Segoe Fluent Icons\", \"Segoe MDL2 Assets\";--SystemAccentColor: #0078d4;--ControlNormalAnimationDuration: .25s;--ControlFastAnimationDuration: .167s;--ControlFasterAnimationDuration: 83ms;--ControlFillColorDefault: #FFFFFF0F;--ControlFillColorSecondary: #FFFFFF15;--ControlFillColorTertiary: #FFFFFF08;--ControlFillColorDisabled: #FFFFFF0B;--ControlFillColorInputActive: #1E1E1EB3;--ControlSolidFillColorDefault: #454545FF;--ControlAltFillColorSecondary: #00000019;--ControlAltFillColorTertiary: #FFFFFF0B;--ControlAltFillColorQuarternary: #FFFFFF12;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #FFFFFF8B;--ControlStrongFillColorDisabled: #FFFFFF3F;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #FFFFFF0F;--SubtleFillColorTertiary: #FFFFFF0A;--AccentFillColorDefault: #4CC2FFFF;--AccentFillColorSecondary: #4CC2FFE6;--AccentFillColorTertiary: #4CC2FFCC;--AccentFillColorDisabled: #FFFFFF28;--SystemControlHighlightListAccentLow: #0078D499;--SystemControlHighlightListAccentMedium: #0078D4CC;--SystemControlHighlightListAccentHigh: #0078D4E6;--ControlStrokeColorDefault: #FFFFFF12;--ControlStrongStrokeColorDefault: #FFFFFF8B;--ControlStrongStrokeColorDisabled: #FFFFFF28;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #FFFFFFFF;--TextFillColorSecondary: #FFFFFFC5;--TextFillColorDisabled: #FFFFFF5D;--TextOnAccentFillColorPrimary: #000000;--TextOnAccentFillColorSecondary: #00000080;--TextOnAccentFillColorDisabled: #FFFFFF87;--SurfaceStrokeColorFlyout: #00000033;--AcrylicInAppFillColorDefault: #2C2C2C26;--SystemChromeMediumLowColor: #2B2B2BFF;--DividerStrokeColorDefault: #FFFFFF15}@media (prefers-color-scheme: light){:host{--ControlFillColorDefault: #FFFFFFB3;--ControlFillColorSecondary: #F9F9F980;--ControlFillColorTertiary: #F9F9F94D;--ControlFillColorDisabled: #F9F9F94D;--ControlFillColorInputActive: #FFFFFF;--ControlSolidFillColorDefault: #FFFFFFFF;--ControlAltFillColorSecondary: #00000006;--ControlAltFillColorTertiary: #0000000F;--ControlAltFillColorQuarternary: #00000018;--ControlAltFillColorDisabled: #FFFFFF00;--ControlStrongFillColorDefault: #00000072;--ControlStrongFillColorDisabled: #00000051;--ControlFillColorTransparent: #FFFFFF00;--SubtleFillColorTransparent: #FFFFFF00;--SubtleFillColorSecondary: #00000009;--SubtleFillColorTertiary: #00000006;--AccentFillColorDefault: #0067C0FF;--AccentFillColorSecondary: #0067C0E6;--AccentFillColorTertiary: #0067C0CC;--AccentFillColorDisabled: #FFFFFF37;--SystemControlHighlightListAccentLow: #0078D466;--SystemControlHighlightListAccentMedium: #0078D499;--SystemControlHighlightListAccentHigh: #0078D4B3;--ControlStrokeColorDefault: #0000000F;--ControlStrongStrokeColorDefault: #00000072;--ControlStrongStrokeColorDisabled: #00000037;--ControlStrokeColorOnAccentDefault: #FFFFFF14;--TextFillColorPrimary: #000000E4;--TextFillColorSecondary: #0000009E;--TextFillColorDisabled: #0000005C;--TextOnAccentFillColorPrimary: #FFFFFF;--TextOnAccentFillColorSecondary: #FFFFFFB3;--TextOnAccentFillColorDisabled: #FFFFFF;--SurfaceStrokeColorFlyout: #0000000F;--AcrylicInAppFillColorDefault: #FCFCFC26;--SystemChromeMediumLowColor: #F2F2F2FF;--DividerStrokeColorDefault: #0000000F}}:host{display:grid}textarea{resize:none}input,textarea{outline-style:none;border-style:solid;border-width:1px;border-radius:var(--ControlCornerRadius);padding:6px;background-color:var(--ControlFillColorDefault);border-color:var(--ControlStrokeColorDefault);border-bottom-color:var(--ControlStrongStrokeColorDefault);color:var(--TextFillColorPrimary)}input::placeholder,textarea::placeholder{color:var(--TextFillColorSecondary);opacity:1}input:hover,textarea:hover{background-color:var(--ControlFillColorSecondary)}input:focus,input:active,textarea:focus,textarea:active{background-color:var(--ControlFillColorInputActive);border-bottom-color:var(--AccentFillColorDefault)}input:disabled,textarea:disabled{background-color:var(--ControlFillColorDisabled);border-bottom-color:var(--ControlStrokeColorDefault);color:var(--TextFillColorDisabled)}::selection{background-color:var(--SystemAccentColor);color:var(--TextOnAccentFillColorPrimary)}\n"] }]
1597
+ }], propDecorators: { IsEnabled: [{
1598
+ type: Input
1599
+ }], PlaceholderText: [{
1600
+ type: Input
1601
+ }], TextChange: [{
1602
+ type: Output
1603
+ }], TextAlignment: [{
1604
+ type: Input
1605
+ }], TextWrapping: [{
1606
+ type: Input
1607
+ }], Text: [{
1608
+ type: Input
1609
+ }], onContextMenu: [{
1610
+ type: HostListener,
1611
+ args: ['contextmenu', ['$event']]
1612
+ }] } });
1613
+
1614
+ class XamlRootComponent {
1615
+ onContextMenu(event) {
1616
+ event.preventDefault();
1617
+ }
1618
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: XamlRootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1619
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: XamlRootComponent, isStandalone: true, selector: "XamlRoot", host: { listeners: { "contextmenu": "onContextMenu($event)" } }, ngImport: i0, template: `<ng-content/>`, isInline: true, styles: [":host{display:grid;background-color:#f3f3f3;overflow:hidden;-webkit-user-select:none;user-select:none}:host::ng-deep *{font-family:Segoe UI,Arial,sans-serif;font-size:10pt;color:#000}@media (prefers-color-scheme: dark){:host{background-color:#202020}:host::ng-deep *{color:#fff}}\n"] }); }
912
1620
  }
913
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: XamlRoot, decorators: [{
1621
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: XamlRootComponent, decorators: [{
914
1622
  type: Component,
915
- args: [{ selector: 'XamlRoot', template: `<ng-content/>`, styles: [":host{display:grid;background-color:#f3f3f3}:host::ng-deep *{font-family:Segoe UI,Arial,sans-serif;font-size:10pt;color:#000}@media (prefers-color-scheme: dark){:host{background-color:#202020}:host::ng-deep *{color:#fff}}\n"] }]
916
- }] });
1623
+ args: [{ selector: 'XamlRoot', template: `<ng-content/>`, styles: [":host{display:grid;background-color:#f3f3f3;overflow:hidden;-webkit-user-select:none;user-select:none}:host::ng-deep *{font-family:Segoe UI,Arial,sans-serif;font-size:10pt;color:#000}@media (prefers-color-scheme: dark){:host{background-color:#202020}:host::ng-deep *{color:#fff}}\n"] }]
1624
+ }], propDecorators: { onContextMenu: [{
1625
+ type: HostListener,
1626
+ args: ['contextmenu', ['$event']]
1627
+ }] } });
917
1628
 
918
1629
  /*
919
1630
  * Public API Surface of xaml-ui
920
1631
  */
1632
+ //Basic input
921
1633
 
922
1634
  /**
923
1635
  * Generated bundle index. Do not edit.
924
1636
  */
925
1637
 
926
- export { Border, Button, CheckBox, Flyout, FontIcon, FrameworkElement, ListBox, RadioButton, RadioButtonGroup, ScrollViewer, Slider, StackPanel, TextBlock, TextBox, ToggleButton, ToggleSwitch, ToolTipProperty, ToolTipService, XamlRoot };
1638
+ export { BorderComponent, ButtonComponent, CheckBoxComponent, ComboBoxComponent, DropDownButtonComponent, FlyoutComponent, FontIconComponent, FrameworkElementComponent, GridColumnDirective, GridColumnSpanDirective, GridComponent, GridDirective, GridModule, GridProperty, GridRowDirective, GridRowSpanDirective, ListBoxComponent, ListViewComponent, PanelComponent, PopupComponent, RadioButtonComponent, RadioButtonGroup, ScrollBarComponent, ScrollViewerComponent, SelectorComponent, SelectorItemTemplate, SliderComponent, StackPanelComponent, TextBlockComponent, TextBoxComponent, ToggleButtonComponent, ToggleSwitchComponent, ToolTipDirective, ToolTipServiceModule, XamlRootComponent, toAlignment, toJustification };
927
1639
  //# sourceMappingURL=xaml-ui.mjs.map