@fluentui/web-components 3.0.0-alpha.11 → 3.0.0-alpha.13

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 (55) hide show
  1. package/CHANGELOG.json +37 -1
  2. package/CHANGELOG.md +21 -2
  3. package/dist/dts/button/button.d.ts +55 -0
  4. package/dist/dts/button/button.definition.d.ts +10 -0
  5. package/dist/dts/button/button.options.d.ts +46 -0
  6. package/dist/dts/button/button.styles.d.ts +1 -0
  7. package/dist/dts/button/button.template.d.ts +7 -0
  8. package/dist/dts/button/define.d.ts +1 -0
  9. package/dist/dts/button/index.d.ts +5 -0
  10. package/dist/dts/index.d.ts +2 -0
  11. package/dist/dts/progress-bar/progress-bar.styles.d.ts +1 -1
  12. package/dist/dts/slider/define.d.ts +1 -0
  13. package/dist/dts/slider/index.d.ts +5 -0
  14. package/dist/dts/slider/slider.d.ts +24 -0
  15. package/dist/dts/slider/slider.definition.d.ts +10 -0
  16. package/dist/dts/slider/slider.options.d.ts +15 -0
  17. package/dist/dts/slider/slider.styles.d.ts +4 -0
  18. package/dist/dts/slider/slider.template.d.ts +3 -0
  19. package/dist/esm/button/button.definition.js +21 -0
  20. package/dist/esm/button/button.definition.js.map +1 -0
  21. package/dist/esm/button/button.js +72 -0
  22. package/dist/esm/button/button.js.map +1 -0
  23. package/dist/esm/button/button.options.js +30 -0
  24. package/dist/esm/button/button.options.js.map +1 -0
  25. package/dist/esm/button/button.styles.js +253 -0
  26. package/dist/esm/button/button.styles.js.map +1 -0
  27. package/dist/esm/button/button.template.js +7 -0
  28. package/dist/esm/button/button.template.js.map +1 -0
  29. package/dist/esm/button/define.js +4 -0
  30. package/dist/esm/button/define.js.map +1 -0
  31. package/dist/esm/button/index.js +6 -0
  32. package/dist/esm/button/index.js.map +1 -0
  33. package/dist/esm/index.js +2 -0
  34. package/dist/esm/index.js.map +1 -1
  35. package/dist/esm/progress-bar/progress-bar.styles.js +1 -1
  36. package/dist/esm/slider/define.js +4 -0
  37. package/dist/esm/slider/define.js.map +1 -0
  38. package/dist/esm/slider/index.js +6 -0
  39. package/dist/esm/slider/index.js.map +1 -0
  40. package/dist/esm/slider/slider.definition.js +18 -0
  41. package/dist/esm/slider/slider.definition.js.map +1 -0
  42. package/dist/esm/slider/slider.js +59 -0
  43. package/dist/esm/slider/slider.js.map +1 -0
  44. package/dist/esm/slider/slider.options.js +10 -0
  45. package/dist/esm/slider/slider.options.js.map +1 -0
  46. package/dist/esm/slider/slider.styles.js +186 -0
  47. package/dist/esm/slider/slider.styles.js.map +1 -0
  48. package/dist/esm/slider/slider.template.js +5 -0
  49. package/dist/esm/slider/slider.template.js.map +1 -0
  50. package/dist/fluent-web-components.api.json +1022 -80
  51. package/dist/web-components.d.ts +186 -1
  52. package/dist/web-components.js +939 -40
  53. package/dist/web-components.min.js +136 -128
  54. package/docs/api-report.md +93 -0
  55. package/package.json +14 -6
package/CHANGELOG.json CHANGED
@@ -2,7 +2,43 @@
2
2
  "name": "@fluentui/web-components",
3
3
  "entries": [
4
4
  {
5
- "date": "Tue, 14 Mar 2023 04:21:16 GMT",
5
+ "date": "Fri, 31 Mar 2023 04:19:36 GMT",
6
+ "tag": "@fluentui/web-components_v3.0.0-alpha.13",
7
+ "version": "3.0.0-alpha.13",
8
+ "comments": {
9
+ "prerelease": [
10
+ {
11
+ "author": "chhol@microsoft.com",
12
+ "package": "@fluentui/web-components",
13
+ "commit": "7f5a5e507a3902a9703d5198a13cc96335c82eaa",
14
+ "comment": "update fast-element and fast-foundation dependencies"
15
+ },
16
+ {
17
+ "author": "chhol@microsoft.com",
18
+ "package": "@fluentui/web-components",
19
+ "commit": "d901fa95e8f90c1b5dabda8602a72ecb77288f0c",
20
+ "comment": "feat(button): add button web component"
21
+ }
22
+ ]
23
+ }
24
+ },
25
+ {
26
+ "date": "Tue, 28 Mar 2023 04:20:01 GMT",
27
+ "tag": "@fluentui/web-components_v3.0.0-alpha.12",
28
+ "version": "3.0.0-alpha.12",
29
+ "comments": {
30
+ "prerelease": [
31
+ {
32
+ "author": "ryan@ryanmerrill.net",
33
+ "package": "@fluentui/web-components",
34
+ "commit": "d63779409cf8b7565b415fdac51e09cf4dbc6e08",
35
+ "comment": "Adds Slider as a web component"
36
+ }
37
+ ]
38
+ }
39
+ },
40
+ {
41
+ "date": "Tue, 14 Mar 2023 04:21:22 GMT",
6
42
  "tag": "@fluentui/web-components_v3.0.0-alpha.11",
7
43
  "version": "3.0.0-alpha.11",
8
44
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,31 @@
1
1
  # Change Log - @fluentui/web-components
2
2
 
3
- This log was last generated on Tue, 14 Mar 2023 04:21:16 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 31 Mar 2023 04:19:36 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## [3.0.0-alpha.13](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-alpha.13)
8
+
9
+ Fri, 31 Mar 2023 04:19:36 GMT
10
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-alpha.12..@fluentui/web-components_v3.0.0-alpha.13)
11
+
12
+ ### Changes
13
+
14
+ - update fast-element and fast-foundation dependencies ([PR #27392](https://github.com/microsoft/fluentui/pull/27392) by chhol@microsoft.com)
15
+ - feat(button): add button web component ([PR #27278](https://github.com/microsoft/fluentui/pull/27278) by chhol@microsoft.com)
16
+
17
+ ## [3.0.0-alpha.12](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-alpha.12)
18
+
19
+ Tue, 28 Mar 2023 04:20:01 GMT
20
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-alpha.11..@fluentui/web-components_v3.0.0-alpha.12)
21
+
22
+ ### Changes
23
+
24
+ - Adds Slider as a web component ([PR #27165](https://github.com/microsoft/fluentui/pull/27165) by ryan@ryanmerrill.net)
25
+
7
26
  ## [3.0.0-alpha.11](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-alpha.11)
8
27
 
9
- Tue, 14 Mar 2023 04:21:16 GMT
28
+ Tue, 14 Mar 2023 04:21:22 GMT
10
29
  [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-alpha.10..@fluentui/web-components_v3.0.0-alpha.11)
11
30
 
12
31
  ### Changes
@@ -0,0 +1,55 @@
1
+ import { FASTButton } from '@microsoft/fast-foundation';
2
+ import { ButtonAppearance, ButtonShape, ButtonSize } from './button.options.js';
3
+ /**
4
+ * The base class used for constructing a fluent-button custom element
5
+ * @public
6
+ */
7
+ export declare class Button extends FASTButton {
8
+ /**
9
+ * The appearance the button should have.
10
+ *
11
+ * @public
12
+ * @remarks
13
+ * HTML Attribute: appearance
14
+ */
15
+ appearance?: ButtonAppearance | undefined;
16
+ /**
17
+ * The shape the button should have.
18
+ *
19
+ * @public
20
+ * @remarks
21
+ * HTML Attribute: shape
22
+ */
23
+ shape?: ButtonShape | undefined;
24
+ /**
25
+ * The size the button should have.
26
+ *
27
+ * @public
28
+ * @remarks
29
+ * HTML Attribute: size
30
+ */
31
+ size?: ButtonSize;
32
+ /**
33
+ * The button has an icon only, no text content
34
+ *
35
+ * @public
36
+ * @remarks
37
+ * HTML Attribute: icon-only
38
+ */
39
+ iconOnly: boolean;
40
+ /**
41
+ * The button is disabled but focusable
42
+ *
43
+ * @public
44
+ * @remarks
45
+ * HTML Attribute: disabled-focusable
46
+ */
47
+ disabledFocusable?: boolean;
48
+ protected disabledFocusableChanged(prev: boolean, next: boolean): void;
49
+ /**
50
+ * Prevents disabledFocusable click events
51
+ */
52
+ private handleDisabledFocusableClick;
53
+ connectedCallback(): void;
54
+ disconnectedCallback(): void;
55
+ }
@@ -0,0 +1,10 @@
1
+ import { Button } from './button.js';
2
+ /**
3
+ * The Fluent Button Element. Implements {@link @microsoft/fast-foundation#Button },
4
+ * {@link @microsoft/fast-foundation#buttonTemplate}
5
+ *
6
+ * @public
7
+ * @remarks
8
+ * HTML Element: \<fluent-button\>
9
+ */
10
+ export declare const definition: import("@microsoft/fast-element").FASTElementDefinition<typeof Button>;
@@ -0,0 +1,46 @@
1
+ import { ButtonOptions, ValuesOf } from '@microsoft/fast-foundation';
2
+ /**
3
+ * ButtonAppearance constants
4
+ * @public
5
+ */
6
+ export declare const ButtonAppearance: {
7
+ readonly primary: "primary";
8
+ readonly outline: "outline";
9
+ readonly subtle: "subtle";
10
+ readonly secondary: "secondary";
11
+ readonly transparent: "transparent";
12
+ };
13
+ /**
14
+ * A Button can be secondary, primary, outline, subtle, transparent
15
+ * @public
16
+ */
17
+ export declare type ButtonAppearance = ValuesOf<typeof ButtonAppearance>;
18
+ /**
19
+ * A Button can be square, circular or rounded.
20
+ * @public
21
+ */
22
+ export declare const ButtonShape: {
23
+ readonly circular: "circular";
24
+ readonly rounded: "rounded";
25
+ readonly square: "square";
26
+ };
27
+ /**
28
+ * A Button can be square, circular or rounded
29
+ * @public
30
+ */
31
+ export declare type ButtonShape = ValuesOf<typeof ButtonShape>;
32
+ /**
33
+ * A Button can be a size of small, medium or large.
34
+ * @public
35
+ */
36
+ export declare const ButtonSize: {
37
+ readonly small: "small";
38
+ readonly medium: "medium";
39
+ readonly large: "large";
40
+ };
41
+ /**
42
+ * A Button can be on of several preset sizes.
43
+ * @public
44
+ */
45
+ export declare type ButtonSize = ValuesOf<typeof ButtonSize>;
46
+ export { ButtonOptions };
@@ -0,0 +1 @@
1
+ export declare const styles: import("@microsoft/fast-element").ElementStyles;
@@ -0,0 +1,7 @@
1
+ import { ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { Button } from './button.js';
3
+ /**
4
+ * The template for the Button component.
5
+ * @public
6
+ */
7
+ export declare const template: ElementViewTemplate<Button>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export * from './button.js';
2
+ export * from './button.options.js';
3
+ export { template as ButtonTemplate } from './button.template.js';
4
+ export { styles as ButtonStyles } from './button.styles.js';
5
+ export { definition as ButtonDefinition } from './button.definition.js';
@@ -2,10 +2,12 @@ export * from './accordion/index.js';
2
2
  export * from './accordion-item/index.js';
3
3
  export * from './avatar/index.js';
4
4
  export * from './badge/index.js';
5
+ export * from './button/index.js';
5
6
  export * from './counter-badge/index.js';
6
7
  export * from './divider/index.js';
7
8
  export * from './image/index.js';
8
9
  export * from './progress-bar/index.js';
10
+ export * from './slider/index.js';
9
11
  export * from './spinner/index.js';
10
12
  export * from './switch/index.js';
11
13
  export * from './text/index.js';
@@ -1,4 +1,4 @@
1
- /** Text styles
1
+ /** ProgressBar styles
2
2
  * @public
3
3
  */
4
4
  export declare const styles: import("@microsoft/fast-element").ElementStyles;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export * from './slider.js';
2
+ export * from './slider.options.js';
3
+ export { definition as SliderDefinition } from './slider.definition.js';
4
+ export { styles as SliderStyles } from './slider.styles.js';
5
+ export { template as SliderTemplate } from './slider.template.js';
@@ -0,0 +1,24 @@
1
+ import { FASTSlider } from '@microsoft/fast-foundation';
2
+ import type { SliderSize } from './slider.options.js';
3
+ /**
4
+ * The base class used for constructing a fluent-slider custom element
5
+ * @public
6
+ */
7
+ export declare class Slider extends FASTSlider {
8
+ /**
9
+ * The size of the slider
10
+ * @public
11
+ * @remarks
12
+ * HTML Attribute: size
13
+ */
14
+ size?: SliderSize;
15
+ handleChange(source: any, propertyName: string): void;
16
+ connectedCallback(): void;
17
+ disconnectedCallback(): void;
18
+ private stepStyles?;
19
+ /**
20
+ * Handles changes to step styling based on the step value
21
+ * NOTE: This function is not a changed callback, stepStyles is not observable
22
+ */
23
+ private handleStepStyles;
24
+ }
@@ -0,0 +1,10 @@
1
+ import { Slider } from './slider.js';
2
+ /**
3
+ * The Fluent Slider Element.
4
+ *
5
+ *
6
+ * @public
7
+ * @remarks
8
+ * HTML Element: \<fluent-slider\>
9
+ */
10
+ export declare const definition: import("@microsoft/fast-element").FASTElementDefinition<typeof Slider>;
@@ -0,0 +1,15 @@
1
+ import { ValuesOf } from '@microsoft/fast-foundation';
2
+ export { SliderOrientation } from '@microsoft/fast-foundation';
3
+ /**
4
+ * SliderSize Constants
5
+ * @public
6
+ */
7
+ export declare const SliderSize: {
8
+ readonly small: "small";
9
+ readonly medium: "medium";
10
+ };
11
+ /**
12
+ * Applies bar height to the slider rail and diameter to the slider thumbs
13
+ * @public
14
+ */
15
+ export declare type SliderSize = ValuesOf<typeof SliderSize>;
@@ -0,0 +1,4 @@
1
+ /** Text styles
2
+ * @public
3
+ */
4
+ export declare const styles: import("@microsoft/fast-element").ElementStyles;
@@ -0,0 +1,3 @@
1
+ import type { ElementViewTemplate } from '@microsoft/fast-element';
2
+ import { FASTSlider } from '@microsoft/fast-foundation';
3
+ export declare const template: ElementViewTemplate<FASTSlider>;
@@ -0,0 +1,21 @@
1
+ import { FluentDesignSystem } from '../fluent-design-system.js';
2
+ import { Button } from './button.js';
3
+ import { styles } from './button.styles.js';
4
+ import { template } from './button.template.js';
5
+ /**
6
+ * The Fluent Button Element. Implements {@link @microsoft/fast-foundation#Button },
7
+ * {@link @microsoft/fast-foundation#buttonTemplate}
8
+ *
9
+ * @public
10
+ * @remarks
11
+ * HTML Element: \<fluent-button\>
12
+ */
13
+ export const definition = Button.compose({
14
+ name: `${FluentDesignSystem.prefix}-button`,
15
+ template,
16
+ styles,
17
+ shadowOptions: {
18
+ delegatesFocus: true,
19
+ },
20
+ });
21
+ //# sourceMappingURL=button.definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.definition.js","sourceRoot":"","sources":["../../../src/button/button.definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC;IACvC,IAAI,EAAE,GAAG,kBAAkB,CAAC,MAAM,SAAS;IAC3C,QAAQ;IACR,MAAM;IACN,aAAa,EAAE;QACb,cAAc,EAAE,IAAI;KACrB;CACF,CAAC,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { __decorate } from "tslib";
2
+ import { attr } from '@microsoft/fast-element';
3
+ import { FASTButton } from '@microsoft/fast-foundation';
4
+ /**
5
+ * The base class used for constructing a fluent-button custom element
6
+ * @public
7
+ */
8
+ export class Button extends FASTButton {
9
+ constructor() {
10
+ super(...arguments);
11
+ /**
12
+ * The button has an icon only, no text content
13
+ *
14
+ * @public
15
+ * @remarks
16
+ * HTML Attribute: icon-only
17
+ */
18
+ this.iconOnly = false;
19
+ /**
20
+ * The button is disabled but focusable
21
+ *
22
+ * @public
23
+ * @remarks
24
+ * HTML Attribute: disabled-focusable
25
+ */
26
+ this.disabledFocusable = false;
27
+ /**
28
+ * Prevents disabledFocusable click events
29
+ */
30
+ this.handleDisabledFocusableClick = (e) => {
31
+ if (e && this.disabledFocusable) {
32
+ e.stopImmediatePropagation();
33
+ return;
34
+ }
35
+ };
36
+ }
37
+ disabledFocusableChanged(prev, next) {
38
+ if (!this.$fastController.isConnected) {
39
+ return;
40
+ }
41
+ if (this.disabledFocusable) {
42
+ this.setAttribute('aria-disabled', 'true');
43
+ }
44
+ else {
45
+ this.removeAttribute('aria-disabled');
46
+ }
47
+ }
48
+ connectedCallback() {
49
+ super.connectedCallback();
50
+ this.addEventListener('click', this.handleDisabledFocusableClick);
51
+ }
52
+ disconnectedCallback() {
53
+ super.disconnectedCallback();
54
+ this.removeEventListener('click', this.handleDisabledFocusableClick);
55
+ }
56
+ }
57
+ __decorate([
58
+ attr
59
+ ], Button.prototype, "appearance", void 0);
60
+ __decorate([
61
+ attr
62
+ ], Button.prototype, "shape", void 0);
63
+ __decorate([
64
+ attr
65
+ ], Button.prototype, "size", void 0);
66
+ __decorate([
67
+ attr({ attribute: 'icon-only', mode: 'boolean' })
68
+ ], Button.prototype, "iconOnly", void 0);
69
+ __decorate([
70
+ attr({ attribute: 'disabled-focusable', mode: 'boolean' })
71
+ ], Button.prototype, "disabledFocusable", void 0);
72
+ //# sourceMappingURL=button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/button/button.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD;;;GAGG;AACH,MAAM,OAAO,MAAO,SAAQ,UAAU;IAAtC;;QA+BE;;;;;;WAMG;QAEI,aAAQ,GAAY,KAAK,CAAC;QAEjC;;;;;;WAMG;QAEI,sBAAiB,GAAa,KAAK,CAAC;QAa3C;;WAEG;QACK,iCAA4B,GAAG,CAAC,CAAa,EAAQ,EAAE;YAC7D,IAAI,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC/B,CAAC,CAAC,wBAAwB,EAAE,CAAC;gBAC7B,OAAO;aACR;QACH,CAAC,CAAC;IAaJ,CAAC;IAjCW,wBAAwB,CAAC,IAAa,EAAE,IAAa;QAC7D,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;YACrC,OAAO;SACR;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAgC,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;SAC1E;aAAM;YACH,IAAgC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;SACrE;IACH,CAAC;IAYM,iBAAiB;QACtB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAExB,IAAgC,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAClG,CAAC;IAEM,oBAAoB;QACzB,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAE3B,IAAgC,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACrG,CAAC;CACF;AA1EC;IADC,IAAI;0CAC4C;AAUjD;IADC,IAAI;qCACkC;AAUvC;IADC,IAAI;oCACoB;AAUzB;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wCACjB;AAUjC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;iDAChB"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ButtonAppearance constants
3
+ * @public
4
+ */
5
+ export const ButtonAppearance = {
6
+ primary: 'primary',
7
+ outline: 'outline',
8
+ subtle: 'subtle',
9
+ secondary: 'secondary',
10
+ transparent: 'transparent',
11
+ };
12
+ /**
13
+ * A Button can be square, circular or rounded.
14
+ * @public
15
+ */
16
+ export const ButtonShape = {
17
+ circular: 'circular',
18
+ rounded: 'rounded',
19
+ square: 'square',
20
+ };
21
+ /**
22
+ * A Button can be a size of small, medium or large.
23
+ * @public
24
+ */
25
+ export const ButtonSize = {
26
+ small: 'small',
27
+ medium: 'medium',
28
+ large: 'large',
29
+ };
30
+ //# sourceMappingURL=button.options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.options.js","sourceRoot":"","sources":["../../../src/button/button.options.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;CAClB,CAAC;AAQX;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC;AAQX;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAC"}