xaml-ui 1.0.1

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.
@@ -0,0 +1,927 @@
1
+ import * as i0 from '@angular/core';
2
+ import { HostBinding, Input, Component, HostListener, ContentChildren, EventEmitter, Output, TemplateRef, ContentChild, Directive, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+
6
+ class FrameworkElement {
7
+ constructor() {
8
+ this.HorizontalAlignment = 'Stretch';
9
+ this.VerticalAlignment = 'Stretch';
10
+ }
11
+ get justifySelf() {
12
+ return this.HorizontalAlignment.toLowerCase();
13
+ }
14
+ 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';
28
+ }
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 }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FrameworkElement, decorators: [{
33
+ type: Component,
34
+ args: [{
35
+ selector: 'FrameworkElement',
36
+ template: `<ng-container/>`
37
+ }]
38
+ }], propDecorators: { Width: [{
39
+ type: Input
40
+ }, {
41
+ type: HostBinding,
42
+ args: ['style.width']
43
+ }], Height: [{
44
+ type: Input
45
+ }, {
46
+ type: HostBinding,
47
+ args: ['style.height']
48
+ }], HorizontalAlignment: [{
49
+ type: Input
50
+ }], VerticalAlignment: [{
51
+ type: Input
52
+ }], Margin: [{
53
+ type: Input
54
+ }, {
55
+ type: HostBinding,
56
+ args: ['style.margin']
57
+ }], Padding: [{
58
+ type: Input
59
+ }, {
60
+ type: HostBinding,
61
+ args: ['style.padding']
62
+ }], justifySelf: [{
63
+ type: HostBinding,
64
+ args: ['style.justify-self']
65
+ }], alignSelf: [{
66
+ type: HostBinding,
67
+ args: ['style.align-self']
68
+ }], overflow: [{
69
+ type: HostBinding,
70
+ args: ['style.overflow']
71
+ }] } });
72
+
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
+ }
142
+ }
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"] }] }); }
148
+ }
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBlock, decorators: [{
150
+ 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: [{
167
+ type: Input
168
+ }, {
169
+ type: HostBinding,
170
+ args: ['style.font-size']
171
+ }], FontStyle: [{
172
+ type: Input
173
+ }, {
174
+ type: HostBinding,
175
+ args: ['style.font-style']
176
+ }], FontWeight: [{
177
+ type: Input
178
+ }], Foreground: [{
179
+ type: Input
180
+ }, {
181
+ type: HostBinding,
182
+ args: ['style.color']
183
+ }], TextAlignment: [{
184
+ type: Input
185
+ }, {
186
+ 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: [{
209
+ type: HostBinding,
210
+ args: ['style.white-space']
211
+ }] } });
212
+
213
+ class FontIcon extends FrameworkElement {
214
+ constructor() {
215
+ super(...arguments);
216
+ this.FontWeight = 'Normal';
217
+ }
218
+ get fontWeight() {
219
+ return TextBlock.ToFontWeight(this.FontWeight);
220
+ }
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"] }); }
223
+ }
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FontIcon, decorators: [{
225
+ type: Component,
226
+ args: [{ selector: 'FontIcon', template: `{{Glyph}}`, styles: [":host{font-family:Segoe Fluent Icons,Segoe MDL2 Assets}\n"] }]
227
+ }], propDecorators: { FontFamily: [{
228
+ type: Input
229
+ }, {
230
+ type: HostBinding,
231
+ args: ['style.font-family']
232
+ }], FontSize: [{
233
+ type: Input
234
+ }, {
235
+ type: HostBinding,
236
+ args: ['style.font-size']
237
+ }], FontStyle: [{
238
+ type: Input
239
+ }, {
240
+ type: HostBinding,
241
+ args: ['style.font-style']
242
+ }], FontWeight: [{
243
+ type: Input
244
+ }], Glyph: [{
245
+ type: Input
246
+ }], fontWeight: [{
247
+ type: HostBinding,
248
+ args: ['style.font-weight']
249
+ }] } });
250
+
251
+ class Border extends FrameworkElement {
252
+ get borderStyle() {
253
+ return this.BorderThickness !== undefined ? 'solid' : undefined;
254
+ }
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 }] }); }
257
+ }
258
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Border, decorators: [{
259
+ 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: [{
272
+ type: Input
273
+ }, {
274
+ type: HostBinding,
275
+ args: ['style.border-width']
276
+ }], BorderBrush: [{
277
+ type: Input
278
+ }, {
279
+ type: HostBinding,
280
+ args: ['style.border-color']
281
+ }], borderStyle: [{
282
+ type: HostBinding,
283
+ args: ['style.border-style']
284
+ }] } });
285
+
286
+ class Flyout {
287
+ constructor() {
288
+ this.PlacementMode = 'Top';
289
+ this.Id = 'xaml-flyout-' + Flyout._nextId++;
290
+ this._popover = '';
291
+ }
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
+ };
376
+ }
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
+ }
396
+ }
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"] }); }
399
+ }
400
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Flyout, decorators: [{
401
+ 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: [{
404
+ 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: [{
415
+ type: HostBinding,
416
+ args: ['class']
417
+ }] } });
418
+
419
+ class Button extends Border {
420
+ constructor() {
421
+ super(...arguments);
422
+ this.IsEnabled = true;
423
+ this.type = 'button';
424
+ this._popover = null;
425
+ this._flyoutOpen = false;
426
+ }
427
+ get disabled() {
428
+ return this.IsEnabled ? undefined : true;
429
+ }
430
+ ngAfterContentInit() {
431
+ if (this._children.length === 0)
432
+ return;
433
+ this._popoverTarget = this._children.first.Id;
434
+ }
435
+ ngAfterViewInit() {
436
+ this._popover = document.querySelector('#' + this._popoverTarget);
437
+ }
438
+ onHostPointerEvent(event) {
439
+ this._flyoutOpen = this._popover?.matches(':popover-open') ?? false;
440
+ }
441
+ get anchorName() {
442
+ return this._popoverTarget ? `--${this._popoverTarget}-host` : undefined;
443
+ }
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"] }); }
446
+ }
447
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Button, decorators: [{
448
+ 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: [{
451
+ 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: [{
477
+ type: HostBinding,
478
+ args: ['style.anchor-name']
479
+ }] } });
480
+
481
+ class CheckBox extends Border {
482
+ constructor() {
483
+ super(...arguments);
484
+ this.IsEnabled = true;
485
+ this.IsChecked = false;
486
+ this.IsCheckedChange = new EventEmitter();
487
+ }
488
+ onIsCheckedChange(event) {
489
+ this.IsChecked = (event.target).checked;
490
+ this.IsCheckedChange.emit(this.IsChecked);
491
+ }
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"] }); }
502
+ }
503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: CheckBox, decorators: [{
504
+ 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: [{
515
+ type: Input
516
+ }], IsChecked: [{
517
+ type: Input
518
+ }], IsCheckedChange: [{
519
+ type: Output
520
+ }] } });
521
+
522
+ class ListBox extends FrameworkElement {
523
+ constructor() {
524
+ super(...arguments);
525
+ this.SelectedIndex = -1;
526
+ this.SelectedIndexChange = new EventEmitter();
527
+ this.SelectedValue = null;
528
+ this.SelectedValueChange = new EventEmitter();
529
+ }
530
+ getValue(index, item) {
531
+ return this.SelectedValuePath ? item[this.SelectedValuePath] : item;
532
+ }
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: [{
551
+ 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: [{
564
+ type: Input
565
+ }], SelectedIndexChange: [{
566
+ type: Output
567
+ }], SelectedValue: [{
568
+ type: Input
569
+ }], SelectedValueChange: [{
570
+ type: Output
571
+ }], DisplayMemberPath: [{
572
+ type: Input
573
+ }], SelectedValuePath: [{
574
+ type: Input
575
+ }] } });
576
+
577
+ class StackPanel extends Border {
578
+ constructor() {
579
+ super(...arguments);
580
+ this.Orientation = 'Vertical';
581
+ this.Spacing = 0;
582
+ }
583
+ get flexDirection() {
584
+ return this.Orientation === 'Horizontal' ? 'row' : 'column';
585
+ }
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"] }); }
588
+ }
589
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: StackPanel, decorators: [{
590
+ 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']
602
+ }] } });
603
+
604
+ class RadioButton extends Border {
605
+ constructor() {
606
+ super(...arguments);
607
+ this.IsEnabled = true;
608
+ this.IsChecked = false;
609
+ this.IsCheckedChange = new EventEmitter();
610
+ this.Group = "";
611
+ }
612
+ onIsCheckedChange(event) {
613
+ this.IsChecked = (event.target).checked;
614
+ this.IsCheckedChange.emit(this.IsChecked);
615
+ }
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">
618
+ <input type="radio" [name]="Group" [value]="Value" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
619
+ <div class="radioButton">
620
+ <div class="circle"></div>
621
+ </div>
622
+ <div class="content">
623
+ <ng-content/>
624
+ </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"] }); }
626
+ }
627
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButton, decorators: [{
628
+ type: Component,
629
+ args: [{ selector: 'RadioButton', template: `<label class="container">
630
+ <input type="radio" [name]="Group" [value]="Value" [checked]="IsChecked" (change)="onIsCheckedChange($event)" [disabled]="!IsEnabled">
631
+ <div class="radioButton">
632
+ <div class="circle"></div>
633
+ </div>
634
+ <div class="content">
635
+ <ng-content/>
636
+ </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"] }]
638
+ }], propDecorators: { IsEnabled: [{
639
+ type: Input
640
+ }], IsChecked: [{
641
+ type: Input
642
+ }], IsCheckedChange: [{
643
+ type: Output
644
+ }], Group: [{
645
+ type: Input
646
+ }], Value: [{
647
+ type: Input
648
+ }] } });
649
+ class RadioButtonGroup extends StackPanel {
650
+ constructor() {
651
+ super(...arguments);
652
+ this.ValueChange = new EventEmitter();
653
+ this._id = RadioButtonGroup._nextId++;
654
+ }
655
+ set Value(value) {
656
+ if (this._children) {
657
+ for (let item of this._children) {
658
+ if (item.Value = value) {
659
+ item.IsChecked = true;
660
+ break;
661
+ }
662
+ }
663
+ }
664
+ else {
665
+ this._value = value;
666
+ }
667
+ }
668
+ get Value() {
669
+ return this._value;
670
+ }
671
+ static { this._nextId = 1; }
672
+ ngAfterContentInit() {
673
+ let index = 0;
674
+ for (let item of this._children) {
675
+ item.Group = 'xaml-radio-button-group-' + this._id;
676
+ if (item.Value === undefined)
677
+ item.Value = index++;
678
+ if (item.Value === this.Value)
679
+ item.IsChecked = true;
680
+ item.IsCheckedChange.subscribe(p => {
681
+ this.Value = item.Value;
682
+ this.ValueChange.emit(item.Value);
683
+ });
684
+ }
685
+ }
686
+ 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"] }); }
688
+ }
689
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: RadioButtonGroup, decorators: [{
690
+ type: Component,
691
+ args: [{ selector: 'RadioButtonGroup', template: `<ng-container><ng-content/></ng-container>`, styles: [":host{display:flex}\n"] }]
692
+ }], propDecorators: { Value: [{
693
+ type: Input
694
+ }], ValueChange: [{
695
+ type: Output
696
+ }], _children: [{
697
+ type: ContentChildren,
698
+ args: [RadioButton]
699
+ }] } });
700
+
701
+ class Slider extends FrameworkElement {
702
+ constructor() {
703
+ super(...arguments);
704
+ this.Minimum = 0.0;
705
+ this.Maximum = 1.0;
706
+ this.StepFrequency = 0.01;
707
+ this.Value = 0.0;
708
+ this.ValueChange = new EventEmitter();
709
+ this.IsEnabled = true;
710
+ this.Orientation = 'Horizontal';
711
+ }
712
+ onValueChange(event) {
713
+ this.Value = parseFloat(event.target.value);
714
+ this.ValueChange.emit(this.Value);
715
+ }
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"] }); }
725
+ }
726
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: Slider, decorators: [{
727
+ 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: [{
737
+ type: Input
738
+ }], Maximum: [{
739
+ type: Input
740
+ }], StepFrequency: [{
741
+ type: Input
742
+ }], Value: [{
743
+ type: Input
744
+ }], ValueChange: [{
745
+ type: Output
746
+ }], IsEnabled: [{
747
+ type: Input
748
+ }], Orientation: [{
749
+ type: Input
750
+ }] } });
751
+
752
+ class TextBox extends FrameworkElement {
753
+ constructor() {
754
+ 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';
761
+ }
762
+ onChange(event) {
763
+ this.Text = (event.target).value;
764
+ this.TextChange.emit(this.Text);
765
+ }
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"] }] }); }
770
+ }
771
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: TextBox, decorators: [{
772
+ 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: [{
777
+ type: Input
778
+ }], PlaceholderText: [{
779
+ type: Input
780
+ }], Text: [{
781
+ type: Input
782
+ }], TextChange: [{
783
+ type: Output
784
+ }], TextAlignment: [{
785
+ type: Input
786
+ }], TextWrapping: [{
787
+ type: Input
788
+ }] } });
789
+
790
+ class ToggleButton extends Button {
791
+ constructor() {
792
+ super(...arguments);
793
+ this.IsChecked = false;
794
+ this.IsCheckedChange = new EventEmitter();
795
+ }
796
+ onPointerUp(event) {
797
+ this.IsChecked = !this.IsChecked;
798
+ this.IsCheckedChange.emit(this.IsChecked);
799
+ }
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"] }); }
802
+ }
803
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToggleButton, decorators: [{
804
+ 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: [{
807
+ type: Input
808
+ }, {
809
+ type: HostBinding,
810
+ args: ['class.checked']
811
+ }], IsCheckedChange: [{
812
+ type: Output
813
+ }], onPointerUp: [{
814
+ type: HostListener,
815
+ args: ['pointerup', ['$event']]
816
+ }] } });
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"] }); }
827
+ }
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 {
840
+ constructor() {
841
+ super(...arguments);
842
+ this.HorizontalScrollMode = 'Enabled';
843
+ this.VerticalScrollMode = 'Enabled';
844
+ }
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
+ }
854
+ }
855
+ get overflowX() {
856
+ return ScrollViewer.toOverflow(this.HorizontalScrollMode);
857
+ }
858
+ get overflowY() {
859
+ return ScrollViewer.toOverflow(this.VerticalScrollMode);
860
+ }
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"] }); }
863
+ }
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: [{
870
+ type: Input
871
+ }], overflowX: [{
872
+ type: HostBinding,
873
+ args: ['style.overflow-x']
874
+ }], overflowY: [{
875
+ type: HostBinding,
876
+ args: ['style.overflow-y']
877
+ }] } });
878
+
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 }); }
882
+ }
883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipProperty, decorators: [{
884
+ type: Directive,
885
+ args: [{
886
+ selector: '[ToolTipService-ToolTip]',
887
+ standalone: false
888
+ }]
889
+ }], propDecorators: { ToolTip: [{
890
+ type: Input,
891
+ args: ['ToolTipService-ToolTip']
892
+ }, {
893
+ type: HostBinding,
894
+ args: ['attr.title']
895
+ }] } });
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 }); }
900
+ }
901
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ToolTipService, decorators: [{
902
+ type: NgModule,
903
+ args: [{
904
+ declarations: [ToolTipProperty],
905
+ exports: [ToolTipProperty]
906
+ }]
907
+ }] });
908
+
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"] }); }
912
+ }
913
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: XamlRoot, decorators: [{
914
+ 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
+ }] });
917
+
918
+ /*
919
+ * Public API Surface of xaml-ui
920
+ */
921
+
922
+ /**
923
+ * Generated bundle index. Do not edit.
924
+ */
925
+
926
+ export { Border, Button, CheckBox, Flyout, FontIcon, FrameworkElement, ListBox, RadioButton, RadioButtonGroup, ScrollViewer, Slider, StackPanel, TextBlock, TextBox, ToggleButton, ToggleSwitch, ToolTipProperty, ToolTipService, XamlRoot };
927
+ //# sourceMappingURL=xaml-ui.mjs.map