@pnx-mixtape/mxds 0.0.18 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/dist/build/accordion.entry.js +1 -1
- package/dist/build/accordion.entry.js.map +1 -1
- package/dist/build/base.css +2 -1
- package/dist/build/button.css +4 -4
- package/dist/build/card.css +6 -5
- package/dist/build/chunks/Accordion-O-huO4At.js.map +1 -1
- package/dist/build/chunks/{disclosure-widget-CtNx0f8p.js → disclosure-widget-DVpnRsTI.js} +3 -1
- package/dist/build/chunks/{disclosure-widget-CtNx0f8p.js.map → disclosure-widget-DVpnRsTI.js.map} +1 -1
- package/dist/build/chunks/{drop-menu.entry-BEhZ_Je3.js → drop-menu.entry-B4TtnC50.js} +3 -3
- package/dist/build/chunks/{drop-menu.entry-BEhZ_Je3.js.map → drop-menu.entry-B4TtnC50.js.map} +1 -1
- package/dist/build/chunks/{keyboard-C73DHu0c.js → keyboard-rvZ4dfGF.js} +4 -1
- package/dist/build/chunks/{keyboard-C73DHu0c.js.map → keyboard-rvZ4dfGF.js.map} +1 -1
- package/dist/build/chunks/{polyfills-DoxMZOqh.js → polyfills-C-B7iqDG.js} +5 -8
- package/dist/build/chunks/polyfills-C-B7iqDG.js.map +1 -0
- package/dist/build/chunks/popover-DzUcnIlX.js.map +1 -1
- package/dist/build/chunks/utilities-DXELy_An.js.map +1 -1
- package/dist/build/constants.css +8 -6
- package/dist/build/dialog.css +1 -9
- package/dist/build/dialog.entry.js.map +1 -1
- package/dist/build/drop-menu.entry.js +1 -1
- package/dist/build/filters.entry.js.map +1 -1
- package/dist/build/global-alert.entry.js.map +1 -1
- package/dist/build/header.css +49 -63
- package/dist/build/header.entry.js +1106 -20
- package/dist/build/header.entry.js.map +1 -1
- package/dist/build/hero-banner.css +12 -6
- package/dist/build/in-page-navigation.entry.js.map +1 -1
- package/dist/build/navigation.entry.js +2 -2
- package/dist/build/navigation.entry.js.map +1 -1
- package/dist/build/page.css +2 -2
- package/dist/build/pagination.css +15 -21
- package/dist/build/steps.css +11 -11
- package/dist/build/sticky.entry.js.map +1 -1
- package/dist/build/tabs.entry.js +1 -1
- package/dist/build/tabs.entry.js.map +1 -1
- package/dist/build/utilities.css +9 -1
- package/package.json +47 -39
- package/src/Atom/Button/Button.stories.ts +1 -0
- package/src/Atom/Button/_buttons-styles.css +3 -3
- package/src/Atom/Button/button.twig +1 -1
- package/src/Atom/Heading/Heading.tsx +1 -1
- package/src/Atom/Link/Link.stories.tsx +2 -6
- package/src/Atom/Link/Link.tsx +9 -4
- package/src/Atom/Link/_links.css +1 -0
- package/src/Component/Accordion/Accordion.stories.ts +19 -0
- package/src/Component/Accordion/Accordion.stories.tsx +39 -9
- package/src/Component/Accordion/Accordion.tsx +28 -50
- package/src/Component/Accordion/Components/AccordionContent.tsx +24 -0
- package/src/Component/Accordion/Components/AccordionTitle.tsx +34 -0
- package/src/Component/Accordion/Components/AccordionTitleIcon.tsx +22 -0
- package/src/Component/Accordion/Elements/AccordionGroup.ts +1 -1
- package/src/Component/Accordion/__snapshots__/Accordion.stories.ts.snap +42 -0
- package/src/Component/Accordion/__snapshots__/Accordion.stories.tsx.snap +26 -0
- package/src/Component/Accordion/accordion-item.twig +1 -1
- package/src/Component/Breadcrumb/Breadcrumb.tsx +8 -2
- package/src/Component/Breadcrumb/__snapshots__/Breadcrumb.stories.tsx.snap +7 -3
- package/src/Component/Card/Card.stories.ts +1 -1
- package/src/Component/Card/Card.stories.tsx +22 -19
- package/src/Component/Card/Card.tsx +6 -28
- package/src/Component/Card/Components/CardContent.tsx +12 -0
- package/src/Component/Card/Components/CardMedia.tsx +17 -0
- package/src/Component/Card/__snapshots__/Card.stories.tsx.snap +9 -9
- package/src/Component/Card/card.css +3 -2
- package/src/Component/ContentBlock/Components/ContentBlockContent.tsx +14 -0
- package/src/Component/ContentBlock/Components/ContentBlockMedia.tsx +20 -0
- package/src/Component/ContentBlock/ContentBlock.stories.tsx +16 -13
- package/src/Component/ContentBlock/ContentBlock.tsx +5 -28
- package/src/Component/ContentBlock/__snapshots__/ContentBlock.stories.tsx.snap +0 -2
- package/src/Component/Dialog/Components/DialogCloseButton.tsx +18 -0
- package/src/Component/Dialog/Components/DialogContent.tsx +7 -0
- package/src/Component/Dialog/Dialog.stories.tsx +19 -24
- package/src/Component/Dialog/Dialog.tsx +31 -25
- package/src/Component/Dialog/__snapshots__/Dialog.stories.tsx.snap +14 -21
- package/src/Component/Dialog/dialog.css +0 -8
- package/src/Component/HeroBanner/HeroBanner.stories.ts +23 -12
- package/src/Component/HeroBanner/HeroBanner.stories.tsx +26 -7
- package/src/Component/HeroBanner/HeroBanner.tsx +2 -20
- package/src/Component/HeroBanner/__snapshots__/HeroBanner.stories.ts.snap +51 -3
- package/src/Component/HeroBanner/hero-banner.css +8 -4
- package/src/Component/HeroBanner/hero-banner.twig +2 -2
- package/src/Component/HeroSearch/HeroSearch.stories.ts +105 -0
- package/src/Component/HeroSearch/HeroSearch.stories.tsx +48 -0
- package/src/Component/HeroSearch/HeroSearch.tsx +32 -0
- package/src/Component/HeroSearch/__snapshots__/HeroSearch.stories.ts.snap +176 -0
- package/src/Component/HeroSearch/__snapshots__/HeroSearch.stories.tsx.snap +36 -0
- package/src/Component/HeroSearch/hero-search.twig +43 -0
- package/src/Component/InPageNavigation/InPageNavigation.stories.tsx +1 -1
- package/src/Component/InPageNavigation/InPageNavigation.tsx +1 -0
- package/src/Component/InPageNavigation/__snapshots__/InPageNavigation.stories.tsx.snap +1 -1
- package/src/Component/LinkList/LinkList.stories.ts +12 -0
- package/src/Component/LinkList/LinkList.stories.tsx +0 -6
- package/src/Component/LinkList/LinkList.tsx +5 -16
- package/src/Component/LinkList/__snapshots__/LinkList.stories.ts.snap +37 -0
- package/src/Component/LinkList/__snapshots__/LinkList.stories.tsx.snap +9 -29
- package/src/Component/LinkList/link-list.twig +1 -0
- package/src/Component/ListItem/Components/ListItemContent.tsx +12 -0
- package/src/Component/ListItem/Components/ListItemMedia.tsx +20 -0
- package/src/Component/ListItem/ListItem.stories.ts +1 -1
- package/src/Component/ListItem/ListItem.stories.tsx +22 -19
- package/src/Component/ListItem/ListItem.tsx +3 -32
- package/src/Component/ListItem/__snapshots__/ListItem.stories.tsx.snap +3 -0
- package/src/Component/Pagination/Components/PaginationContext.tsx +10 -4
- package/src/Component/Pagination/Components/PaginationItem.tsx +10 -10
- package/src/Component/Pagination/__snapshots__/Pagination.stories.tsx.snap +10 -4
- package/src/Component/Pagination/pagination.css +13 -18
- package/src/Component/Steps/steps.css +5 -6
- package/src/Component/Tabs/Components/TabPanel.tsx +1 -1
- package/src/Component/Tabs/__snapshots__/Tabs.stories.tsx.snap +2 -0
- package/src/Component/Tag/Tag.stories.ts +3 -3
- package/src/Component/Tag/tags.twig +2 -2
- package/src/Component/Tile/Tile.stories.tsx +20 -15
- package/src/Component/Tile/__snapshots__/Tile.stories.tsx.snap +18 -23
- package/src/Layout/Header/Elements/GlobalToggle.ts +55 -21
- package/src/Layout/Header/__snapshots__/Header.stories.ts.snap +14 -14
- package/src/Layout/Header/_header.css +2 -47
- package/src/Layout/Header/_toggles.css +37 -1
- package/src/Layout/Header/header.twig +5 -5
- package/src/Layout/Page/Page.stories.tsx +13 -4
- package/src/Layout/Page/page.css +1 -1
- package/src/Layout/Section/__snapshots__/Section.stories.tsx.snap +3 -3
- package/src/Layout/Section/__snapshots__/SectionGrid.stories.tsx.snap +2 -2
- package/src/Layout/Sidebar/__snapshots__/Sidebar.stories.tsx.snap +3 -3
- package/src/Utility/utilities.css +8 -0
- package/src/constants.css +7 -5
- package/src/react.ts +30 -7
- package/src/tokens.js +3 -1
- package/dist/build/chunks/polyfills-DoxMZOqh.js.map +0 -1
- package/src/Component/Tile/Tile.tsx +0 -53
package/README.md
CHANGED
|
@@ -24,7 +24,7 @@ It's like our greatest hits.
|
|
|
24
24
|
## Installation
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
|
|
27
|
+
pnpm add @pnx-mixtape/mxds
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
## Usage
|
|
@@ -231,13 +231,13 @@ Install project dependcencies:
|
|
|
231
231
|
|
|
232
232
|
```
|
|
233
233
|
nvm install
|
|
234
|
-
|
|
234
|
+
pnpm install
|
|
235
235
|
```
|
|
236
236
|
|
|
237
237
|
Then you can start watching for changes with;
|
|
238
238
|
|
|
239
239
|
```
|
|
240
|
-
|
|
240
|
+
pnpm run dev
|
|
241
241
|
```
|
|
242
242
|
|
|
243
243
|
From here you can access the Storybook instance and get started.
|
|
@@ -247,9 +247,9 @@ From here you can access the Storybook instance and get started.
|
|
|
247
247
|
Before pushing a PR make sure your changes are linted and pass the test coverage.
|
|
248
248
|
|
|
249
249
|
```
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
250
|
+
pnpm run format
|
|
251
|
+
pnpm run lint
|
|
252
|
+
pnpm run test-storybook
|
|
253
253
|
```
|
|
254
254
|
|
|
255
255
|
These will all run by Github Actions on the PR but it's better to catch issues first.
|
|
@@ -262,7 +262,7 @@ When you are ready to publish your change, commit your work and
|
|
|
262
262
|
follow the prompts using:
|
|
263
263
|
|
|
264
264
|
```
|
|
265
|
-
|
|
265
|
+
pnpm run commit
|
|
266
266
|
```
|
|
267
267
|
|
|
268
268
|
This uses [Commitizen](https://www.npmjs.com/package/commitizen) to manage
|
|
@@ -279,7 +279,7 @@ Once approved, merge the PR.
|
|
|
279
279
|
When you are ready for a full release, from `main`, run;
|
|
280
280
|
|
|
281
281
|
```
|
|
282
|
-
|
|
282
|
+
pnpm version patch -m 'chore: tag %s'
|
|
283
283
|
```
|
|
284
284
|
|
|
285
285
|
To bump the version number in `package.json`, then tag the commit and push to `origin`.
|
|
@@ -33,7 +33,7 @@ class AccordionGroup extends HTMLElement {
|
|
|
33
33
|
}
|
|
34
34
|
connectedCallback() {
|
|
35
35
|
if (!this.accordions || !this.expandTrigger || !this.collapseTrigger) return;
|
|
36
|
-
this.
|
|
36
|
+
this.handleToggle();
|
|
37
37
|
const { signal } = this.controller;
|
|
38
38
|
this.addEventListener("click", this.handleClick, {
|
|
39
39
|
signal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.entry.js","sources":["../../src/Component/Accordion/Elements/AccordionGroup.ts"],"sourcesContent":["/**\n * Accordion Group\n * @file Support opening and closing all.\n */\n\nexport default class AccordionGroup extends HTMLElement {\n internals_: ElementInternals\n controller: AbortController\n\n constructor() {\n super()\n this.internals_ = this.attachInternals()\n this.controller = new AbortController()\n }\n\n connectedCallback(): void {\n if (!this.accordions || !this.expandTrigger || !this.collapseTrigger) return\n this.
|
|
1
|
+
{"version":3,"file":"accordion.entry.js","sources":["../../src/Component/Accordion/Elements/AccordionGroup.ts"],"sourcesContent":["/**\n * Accordion Group\n * @file Support opening and closing all.\n */\n\nexport default class AccordionGroup extends HTMLElement {\n internals_: ElementInternals\n controller: AbortController\n\n constructor() {\n super()\n this.internals_ = this.attachInternals()\n this.controller = new AbortController()\n }\n\n connectedCallback(): void {\n if (!this.accordions || !this.expandTrigger || !this.collapseTrigger) return\n this.handleToggle()\n const { signal }: AbortController = this.controller\n this.addEventListener(\"click\", this.handleClick, {\n signal,\n })\n this.accordions.forEach(details =>\n details.addEventListener(\"toggle\", this.handleToggle, {\n signal,\n }),\n )\n }\n\n disconnectedCallback(): void {\n this.controller.abort()\n }\n\n handleClick = ({ target }) => {\n if (target === this.expandTrigger) {\n this.handleExpand()\n }\n if (target === this.collapseTrigger) {\n this.handleCollapse()\n }\n }\n\n handleExpand = () => {\n this.accordions.forEach(detail => (detail.open = true))\n this.expandTrigger.disabled = true\n this.collapseTrigger.disabled = false\n }\n\n handleCollapse = () => {\n this.accordions.forEach(detail => (detail.open = false))\n this.expandTrigger.disabled = false\n this.collapseTrigger.disabled = true\n }\n\n handleToggle = () => {\n this.expandTrigger.disabled = [...this.accordions].every(\n details => details.open === true,\n )\n this.collapseTrigger.disabled = [...this.accordions].every(\n details => details.open !== true,\n )\n }\n\n get accordions(): NodeListOf<HTMLDetailsElement> | null {\n const accordions: NodeListOf<HTMLDetailsElement> | null =\n this.querySelectorAll(\"details\")\n if (!accordions.length) {\n throw new Error(\n `${this.localName} must contain at least one <details> element.`,\n )\n }\n return accordions\n }\n\n get expandTrigger(): HTMLButtonElement | null {\n const trigger: HTMLButtonElement | null = this.querySelector(\n \"button[data-expand]\",\n )\n if (!trigger) {\n throw new Error(\n `${this.localName} must contain a <button data-expand> element.`,\n )\n }\n return trigger\n }\n\n get collapseTrigger(): HTMLButtonElement | null {\n const trigger: HTMLButtonElement | null = this.querySelector(\n \"button[data-collapse]\",\n )\n if (!trigger) {\n throw new Error(\n `${this.localName} must contain a <button data-collapse> element.`,\n )\n }\n return trigger\n }\n}\n\ncustomElements.define(\"mx-accordion-group\", AccordionGroup)\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"mx-accordion-group\": AccordionGroup\n }\n}\n"],"names":[],"mappings":";AAKA,MAAqB,uBAAuB,YAAY;AAAA,EAItD,cAAc;AACZ,UAAA;AAuBF,SAAA,cAAc,CAAC,EAAE,aAAa;AAC5B,UAAI,WAAW,KAAK,eAAe;AACjC,aAAK,aAAA;AAAA,MACP;AACA,UAAI,WAAW,KAAK,iBAAiB;AACnC,aAAK,eAAA;AAAA,MACP;AAAA,IACF;AAEA,SAAA,eAAe,MAAM;AACnB,WAAK,WAAW,QAAQ,CAAA,WAAW,OAAO,OAAO,IAAK;AACtD,WAAK,cAAc,WAAW;AAC9B,WAAK,gBAAgB,WAAW;AAAA,IAClC;AAEA,SAAA,iBAAiB,MAAM;AACrB,WAAK,WAAW,QAAQ,CAAA,WAAW,OAAO,OAAO,KAAM;AACvD,WAAK,cAAc,WAAW;AAC9B,WAAK,gBAAgB,WAAW;AAAA,IAClC;AAEA,SAAA,eAAe,MAAM;AACnB,WAAK,cAAc,WAAW,CAAC,GAAG,KAAK,UAAU,EAAE;AAAA,QACjD,CAAA,YAAW,QAAQ,SAAS;AAAA,MAAA;AAE9B,WAAK,gBAAgB,WAAW,CAAC,GAAG,KAAK,UAAU,EAAE;AAAA,QACnD,CAAA,YAAW,QAAQ,SAAS;AAAA,MAAA;AAAA,IAEhC;AAlDE,SAAK,aAAa,KAAK,gBAAA;AACvB,SAAK,aAAa,IAAI,gBAAA;AAAA,EACxB;AAAA,EAEA,oBAA0B;AACxB,QAAI,CAAC,KAAK,cAAc,CAAC,KAAK,iBAAiB,CAAC,KAAK,gBAAiB;AACtE,SAAK,aAAA;AACL,UAAM,EAAE,WAA4B,KAAK;AACzC,SAAK,iBAAiB,SAAS,KAAK,aAAa;AAAA,MAC/C;AAAA,IAAA,CACD;AACD,SAAK,WAAW;AAAA,MAAQ,CAAA,YACtB,QAAQ,iBAAiB,UAAU,KAAK,cAAc;AAAA,QACpD;AAAA,MAAA,CACD;AAAA,IAAA;AAAA,EAEL;AAAA,EAEA,uBAA6B;AAC3B,SAAK,WAAW,MAAA;AAAA,EAClB;AAAA,EAgCA,IAAI,aAAoD;AACtD,UAAM,aACJ,KAAK,iBAAiB,SAAS;AACjC,QAAI,CAAC,WAAW,QAAQ;AACtB,YAAM,IAAI;AAAA,QACR,GAAG,KAAK,SAAS;AAAA,MAAA;AAAA,IAErB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,gBAA0C;AAC5C,UAAM,UAAoC,KAAK;AAAA,MAC7C;AAAA,IAAA;AAEF,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI;AAAA,QACR,GAAG,KAAK,SAAS;AAAA,MAAA;AAAA,IAErB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,kBAA4C;AAC9C,UAAM,UAAoC,KAAK;AAAA,MAC7C;AAAA,IAAA;AAEF,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI;AAAA,QACR,GAAG,KAAK,SAAS;AAAA,MAAA;AAAA,IAErB;AACA,WAAO;AAAA,EACT;AACF;AAEA,eAAe,OAAO,sBAAsB,cAAc;"}
|
package/dist/build/base.css
CHANGED
|
@@ -463,6 +463,7 @@
|
|
|
463
463
|
|
|
464
464
|
.mx-link--more {
|
|
465
465
|
font-weight: var(--font-weight-bold);
|
|
466
|
+
display: inline-flex;
|
|
466
467
|
}
|
|
467
468
|
|
|
468
469
|
.mx-link--more:hover .mx-icon {
|
|
@@ -1009,4 +1010,4 @@
|
|
|
1009
1010
|
}
|
|
1010
1011
|
}
|
|
1011
1012
|
|
|
1012
|
-
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UuY3NzIiwiQmFja2dyb3VuZC9fYmFja2dyb3VuZC5jc3MiLCJfYW5pbWF0ZWQuY3NzIiwiX2Jhc2UuY3NzIiwiX2dlbmVyaWMuY3NzIiwiX2Zsb3cuY3NzIiwiSGVhZGluZy9faGVhZGluZ3MuY3NzIiwiQmxvY2txdW90ZS9fYmxvY2txdW90ZS5jc3MiLCJfaHIuY3NzIiwiTGluay9fbGlua3MuY3NzIiwiVGV4dC9fdGV4dC1zaXplcy5jc3MiLCJUZXh0L190ZXh0LWFsaWduLmNzcyIsIlNwYWNpbmcvX21peGlucy5jc3MiLCJTcGFjaW5nL19zcGFjaW5nLmNzcyIsIkltYWdlL19pbWFnZS5jc3MiLCJNZWRpYS9fbWVkaWEuY3NzIiwiVmlkZW8vX3ZpZGVvLmNzcyIsIlRhYmxlL190YWJsZS5jc3MiLCJfcHJpbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhJQUE4STs7QUNBOUk7O0VBRUU7O0FBQ0Y7RUFDRTtJQUNFLDZEQUE2RDtJQUM3RCxrREFBa0Q7SUFDbEQsZ0RBQWdEO0VBQ2xEOztFQUVBO0lBQ0UsbURBQW1EO0lBQ25ELDZCQUE2QjtJQUM3QixzQ0FBc0M7SUFDdEMsc0NBQXNDO0lBQ3RDLGlDQUFpQztJQUNqQyxtQ0FBbUM7RUFDckM7O0VBRUE7SUFDRSxrQ0FBa0M7SUFDbEMsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0UscUNBQXFDO0lBQ3JDLG1DQUFtQztJQUNuQywwQ0FBMEM7SUFDMUMsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLGtDQUFrQztJQUNsQyx5Q0FBeUM7SUFDekMseUNBQXlDO0VBQzNDO0lBR0U7TUFDRSxvQkFBaUI7U0FBakIsaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixpQkFBaUI7TUFDakIsb0JBQW9CO01BQ3BCOztvQkFFcUM7TUFGckM7OzJDQUVxQztJQUN2Qzs7RUFHRjtJQUNFLHFDQUFxQztFQU12Qzs7SUFKRTtNQUNFLHlCQUF5QjtNQUN6QixtQkFBbUI7SUFDckI7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REU7SUFRQTs7RUFMRjs7Ozs7TUFNSSxZQUFZO01BQ1osaUNBQWlDO0VBRXJDO0lBREU7QUFFSjs7QVpOQTs7RUFFRTs7QWEzQ0Y7SUFFSTtNQUVFLG9CQUFvQjtNQUNwQixnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLFNBQVM7SUFDWDs7RUFHRjtJQUNFLGlCQUFpQjtFQUNuQjtBQUNGOztBYmlDQTs7RUFFRTs7QUFFRjs7RUFFRTs7QWNyREY7RUFDRTtJQUNFLGlCQUFpQjtJQUNqQix5QkFBeUI7SUFDekIsU0FBUztFQWlCWDs7SUFmRTtNQUNFLG9DQUFvQztNQUNwQyxpQkFBaUI7SUFDbkI7O0lBRUE7TUFDRSwyQkFBMkI7TUFDM0I7Z0RBQzBDO01BRDFDO2dEQUMwQztNQUMxQyxtQkFBbUI7SUFDckI7O0lBRUE7TUFDRSwwQkFBMEI7SUFDNUI7TUFLRTtRQUNFLHVCQUF1QjtNQUN6Qjs7TUFFQTtRQUNFLHFCQUFxQjtNQUN2QjtJQUtGO01BQ0UsNkJBQTZCO01BQzdCLGlDQUFpQztJQUNuQztRQU1JO1VBQ0UsOENBQThDO1FBQ2hEOztFQUtOO0lBQ0UscUJBQXFCO0VBaUJ2Qjs7SUFmRTs7RUFIRjtNQUlJLGtCQUFrQjtNQUNsQixpQ0FBaUM7TUFDakMsbUNBQW1DO0VBWXZDOztNQVZJO1FBQ0UsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZiwrQkFBK0I7TUFLakM7O1FBSEU7VUFDRSxxQkFBcUI7UUFDdkI7SUFFSjtBQUVKOztBZGRBOztFQUVFOztBZTNERjtFQUNFO0lBQ0UsYUFBYTtFQUNmOztFQUVBO0lBQ0UscUJBQXFCO0VBQ3ZCO0FBQ0YiLCJmaWxlIjoiYmFzZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAbGF5ZXIgcG9wb3Zlci1wb2x5ZmlsbCwgZGVzaWduLXN5c3RlbS5kZWZhdWx0cywgZGVzaWduLXN5c3RlbS5hdG9tcywgZGVzaWduLXN5c3RlbS5sYXlvdXRzLCBkZXNpZ24tc3lzdGVtLnV0aWxpdGllcywgZGVzaWduLXN5c3RlbS5jb21wb25lbnRzO1xuXG5AaW1wb3J0IFwiLi9CYWNrZ3JvdW5kL19iYWNrZ3JvdW5kLmNzc1wiO1xuQGltcG9ydCBcIl9hbmltYXRlZC5jc3NcIjtcbkBpbXBvcnQgXCJfYmFzZS5jc3NcIjtcbiIsIi8qKlxuICogQmFja2dyb3VuZHNcbiAqL1xuQGxheWVyIGRlc2lnbi1zeXN0ZW0uYXRvbXMge1xuICA6d2hlcmUoW2NsYXNzKj1cIm14LWJhY2tncm91bmQtLVwiXSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQsIHZhcigtLWNvbG91ci1iYWNrZ3JvdW5kKSk7XG4gICAgY29sb3I6IHZhcigtLWZvcmVncm91bmQsIHZhcigtLWNvbG91ci1mb3JlZ3JvdW5kKSk7XG4gICAgY29sb3Itc2NoZW1lOiB2YXIoLS1zY2hlbWUsIHZhcigtLWNvbG9yLXNjaGVtZSkpO1xuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLXJlc2V0IHtcbiAgICAvKiB1c2UgdG8gcmV2ZXJ0IC5iYWNrZ3JvdW5kLS1yZXZlcnNlIG9uIGNoaWxkcmVuICovXG4gICAgLS1zY2hlbWU6IHZhcigtLWNvbG9yLXNjaGVtZSk7XG4gICAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvdXItYmFja2dyb3VuZCk7XG4gICAgLS1mb3JlZ3JvdW5kOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZCk7XG4gICAgLS1saW5rLWNvbG91cjogdmFyKC0tY29sb3VyLWxpbmspO1xuICAgIC0tbGluZS1jb2xvdXI6IHZhcigtLWNvbG91ci1ib3JkZXIpO1xuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLWFsdCB7XG4gICAgLS1zY2hlbWU6IHZhcigtLWFsdC1zY2hlbWUsIGxpZ2h0KTtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLWNvbG91ci1iYWNrZ3JvdW5kLWFsdCk7XG4gIH1cblxuICAubXgtYmFja2dyb3VuZC0tcHJpbWFyeSB7XG4gICAgLS1zY2hlbWU6IHZhcigtLXByaW1hcnktc2NoZW1lLCBkYXJrKTtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLWNvbG91ci1wcmltYXJ5KTtcbiAgICAtLWxpbmstY29sb3VyOiB2YXIoLS1jb2xvdXItcHJpbWFyeS1saWdodCk7XG4gICAgLS1saW5lLWNvbG91cjogdmFyKC0tY29sb3VyLXByaW1hcnktbGlnaHQpO1xuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLWFjY2VudCB7XG4gICAgLS1zY2hlbWU6IHZhcigtLWFjY2VudC1zY2hlbWUsIGRhcmspO1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0tY29sb3VyLWFjY2VudCk7XG4gICAgLS1saW5rLWNvbG91cjogdmFyKC0tY29sb3VyLWFjY2VudC1saWdodCk7XG4gICAgLS1saW5lLWNvbG91cjogdmFyKC0tY29sb3VyLWFjY2VudC1saWdodCk7XG4gIH1cblxuICAubXgtYmFja2dyb3VuZC0taW1hZ2Uge1xuICAgICYgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5saW5lLXNpemU6IDEwMCU7XG4gICAgICBtaW4tYmxvY2stc2l6ZTogMTAwJTtcbiAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyh2YXIoLS1iZy1pbWctYnJpZ2h0bmVzcywgMSkpXG4gICAgICAgIHNhdHVyYXRlKHZhcigtLWJnLWltZy1zYXR1cmF0ZSwgMS4yNSkpXG4gICAgICAgIG9wYWNpdHkodmFyKC0tYmctaW1nLW9wYWNpdHksIDAuNSkpO1xuICAgIH1cbiAgfVxuXG4gIC5teC1iYWNrZ3JvdW5kLS1yZXZlcnNlIHtcbiAgICAtLXNjaGVtZTogdmFyKC0tcmV2ZXJzZS1zY2hlbWUsIGRhcmspO1xuXG4gICAgJiAubXgtYmFja2dyb3VuZC0taW1hZ2Uge1xuICAgICAgLS1iZy1pbWctYnJpZ2h0bmVzczogMC40NTtcbiAgICAgIC0tYmctaW1nLW9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLWJveCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZS1jb2xvdXIsIHZhcigtLWNvbG91ci1ib3JkZXIpKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tZ3V0dGVyLCAxcmVtKTtcbiAgfVxufVxuIiwiQGxheWVyIGRlc2lnbi1zeXN0ZW0udXRpbGl0aWVzIHtcbiAgLm14LWFuaW1hdGVkLS1mYWRlLWluIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC41cyB2YXIoLS1lYXNlKTtcbiAgfVxuXG4gIC5teC1hbmltYXRlZC0tZmFkZS1vdXQge1xuICAgIGFuaW1hdGlvbjogZmFkZS1vdXQgMC41cyB2YXIoLS1lYXNlKTtcbiAgfVxuXG4gIC5teC1hbmltYXRlZC0tc3Bpbjo6YmVmb3JlIHtcbiAgICBhbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xuICB9XG5cbiAgLm14LWFuaW1hdGVkLS1zY2FsZS11cCB7XG4gICAgYW5pbWF0aW9uOiBzY2FsZS11cCAwLjVzIHZhcigtLWVhc2UpO1xuICB9XG5cbiAgLm14LWFuaW1hdGVkLS1zY2FsZS1kb3duIHtcbiAgICBhbmltYXRpb246IHNjYWxlLWRvd24gMC41cyB2YXIoLS1lYXNlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNjYWxlLXVwIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZS1kb3duIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIH1cbn1cbiIsIi8qKlxuICogQXRvbVxuICovXG5cbkBpbXBvcnQgXCJfZ2VuZXJpYy5jc3NcIjtcbkBpbXBvcnQgXCJfZmxvdy5jc3NcIjtcblxuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKi9cblxuQGltcG9ydCBcIi4vSGVhZGluZy9faGVhZGluZ3MuY3NzXCI7XG5AaW1wb3J0IFwiLi9CbG9ja3F1b3RlL19ibG9ja3F1b3RlLmNzc1wiO1xuQGltcG9ydCBcIl9oci5jc3NcIjtcblxuLyoqXG4gKiBMaW5rc1xuICovXG5cbkBpbXBvcnQgXCIuL0xpbmsvX2xpbmtzLmNzc1wiO1xuXG4vKipcbiAqIFRleHQgU2l6ZXNcbiAqL1xuXG5AaW1wb3J0IFwiLi9UZXh0L190ZXh0LXNpemVzLmNzc1wiO1xuQGltcG9ydCBcIi4vVGV4dC9fdGV4dC1hbGlnbi5jc3NcIjtcblxuLyoqXG4gKiBTcGFjaW5nXG4gKi9cblxuQGltcG9ydCBcIi4vU3BhY2luZy9fc3BhY2luZy5jc3NcIjtcblxuLyoqXG4gKiBJbWFnZXNcbiAqL1xuXG5AaW1wb3J0IFwiLi9JbWFnZS9faW1hZ2UuY3NzXCI7XG5AaW1wb3J0IFwiLi9NZWRpYS9fbWVkaWEuY3NzXCI7XG5cbi8qKlxuICogVmlkZW9cbiAqL1xuXG5AaW1wb3J0IFwiLi9WaWRlby9fdmlkZW8uY3NzXCI7XG5cbi8qKlxuICogVGFibGVcbiAqL1xuXG4vKipcbiAqIFRhYmxlIFJlc3BvbnNpdmVcbiAqL1xuXG5AaW1wb3J0IFwiLi9UYWJsZS9fdGFibGUuY3NzXCI7XG5cbi8qKlxuICogUHJpbnQgU3R5bGVzaGVldFxuICovXG5cbkBpbXBvcnQgXCJfcHJpbnQuY3NzXCI7XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIEBtZWRpYSAoLS11c2UtbW90aW9uKSB7XG4gICAgQHZpZXctdHJhbnNpdGlvbiB7XG4gICAgICBuYXZpZ2F0aW9uOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIDppcygqLCA6OmJlZm9yZSwgOjphZnRlcikge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OlxuICAgICAgb3BhY2l0eSwgY29sb3IsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvciwgdHJhbnNmb3JtLCByb3RhdGUsXG4gICAgICBkaXNwbGF5LCBvdmVybGF5O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWVhc2UpO1xuICAgIHRyYW5zaXRpb24tYmVoYXZpb3I6IGFsbG93LWRpc2NyZXRlO1xuXG4gICAgQHN0YXJ0aW5nLXN0eWxlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG5cbiAgOmZvY3VzIHtcbiAgICBzY3JvbGwtcGFkZGluZy1ibG9jay1lbmQ6IDR2aDtcbiAgfVxuXG4gIDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiB2YXIoLS1vdXRsaW5lLXNpemUsIDJweCkgdmFyKC0tb3V0bGluZS1zdHlsZSwgc29saWQpXG4gICAgICB2YXIoLS1vdXRsaW5lLWNvbG9yLCBjdXJyZW50Y29sb3IpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1vdXRsaW5lLW9mZnNldCwgdmFyKC0tb3V0bGluZS1zaXplLCAycHgpKTtcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJsb2NrLXNpemU6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxNnB4IGluIG1vc3QgYnJvd3NlcnMgKi9cbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCk7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIH1cblxuICAudHJhbnNsYXRlZC1ydGwge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICB9XG5cbiAgYm9keSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZCk7XG4gICAgYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvdXItcHJpbWFyeSk7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplc3BlZWQ7XG4gICAgYmxvY2stc2l6ZTogMTAwJTtcbiAgfVxuXG4gIDp0YXJnZXQsXG4gIFtpZF0sXG4gIC5oYXMtc2Nyb2xsLW1hcmdpbiB7XG4gICAgc2Nyb2xsLW1hcmdpbi1ibG9jay1zdGFydDogY2FsYyhcbiAgICAgIHZhcigtLXN0aWNreS1vZmZzZXQsIDByZW0pICsgdmFyKC0tc2Nyb2xsLW1hcmdpbiwgdmFyKC0tc3BhY2luZy1tKSlcbiAgICApO1xuICB9XG5cbiAgOmlzKGIsIHN0cm9uZykge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgfVxuXG4gIDppcyhvbCwgdWwpIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc3BhY2luZy1tKTtcblxuICAgICZbcm9sZT1cImxpc3RcIl0ge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIGRsIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluKDEwMCUsIHZhcigtLWdyaWQtbWluLCAyMGNoKSkgMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG5cbiAgICAmOmhhcyg+IGRpdikge1xuICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgIH1cblxuICAgICYgZGl2IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHN1YmdyaWQ7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuXG4gICAgICBAY29udGFpbmVyIChtYXgtd2lkdGg6IDYwY2gpIHtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuXG4gICAgICAgICYgPiA6aXMoZHQsIGRkKSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgZHQge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIHRleHQtd3JhcDogcHJldHR5O1xuICB9XG59XG5cbkBtZWRpYSAoLS1yZWR1Y2UtbW90aW9uKSB7XG4gICosXG4gIDo6YmVmb3JlLFxuICA6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLnV0aWxpdGllcyB7XG4gIC5teC12ZXJ0aWNhbC1mbG93IHtcbiAgICAvKiBEZWZhdWx0IHZlcnRpY2FsIGZsb3cuICovXG5cbiAgICAmID4gOndoZXJlKDpub3QoOmZpcnN0LWNoaWxkKSkge1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1mbG93LWdhcCwgdmFyKC0tZ2FwKSk7XG4gICAgfVxuXG4gICAgJiA+IC5teC12ZXJ0aWNhbC1mbG93X19jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgfVxuXG4gICAgLyogUmljaCB0ZXh0IHZlcnRpY2FsIGZsb3cgaXMgZW5oYW5jZWQgKi9cbiAgICAmLm14LXJpY2gtdGV4dCA+IC5teC10ZXh0LS1sZWRlIHtcbiAgICAgIC0tZmxvdy1nYXA6IHZhcigtLWdhcC14bCk7XG4gICAgfVxuICB9XG5cbiAgLm14LXZlcnRpY2FsLWZsb3ctZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogdmFyKC0tZmxvdy1nYXAsIHZhcigtLWdhcCkpO1xuXG4gICAgJiA+ICoge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICY6aXModWwsIG9sKSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdW5zZXQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5teC1ob3Jpem9udGFsLWZsb3ctZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB2YXIoLS1mbG93LWdhcCwgdmFyKC0tZ2FwKSk7XG5cbiAgICAmID4gKiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJjppcyh1bCwgb2wpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB1bnNldDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIDppcyhcbiAgICAubXgtaGVhZGxpbmUsXG4gICAgaDEsXG4gICAgLm14LWhlYWRpbmctLXh4bCxcbiAgICBoMixcbiAgICAubXgtaGVhZGluZy0teGwsXG4gICAgaDMsXG4gICAgLm14LWhlYWRpbmctLWwsXG4gICAgaDQsXG4gICAgLm14LWhlYWRpbmctLW0sXG4gICAgaDUsXG4gICAgLm14LWhlYWRpbmctLXMsXG4gICAgaDYsXG4gICAgLm14LWhlYWRpbmctLXhzXG4gICkge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLWZvbnQtZmFtaWx5LCB2YXIoLS1mb250LWZhbWlseSkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgICBmb250LXNpemU6IHZhcigtLWhlYWRpbmctZm9udC1zaXplLCB2YXIoLS1mb250LXNpemUpKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy1mb250LXdlaWdodCwgdmFyKC0tZm9udC13ZWlnaHQtYm9sZCkpO1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgfVxuXG4gIEBzdXBwb3J0cyAoZm9udC1zaXplOiAxY3FpKSB7XG4gICAgOmlzKFxuICAgICAgLm14LWhlYWRsaW5lLFxuICAgICAgaDEsXG4gICAgICAubXgtaGVhZGluZy0teHhsLFxuICAgICAgaDIsXG4gICAgICAubXgtaGVhZGluZy0teGwsXG4gICAgICBoMyxcbiAgICAgIC5teC1oZWFkaW5nLS1sLFxuICAgICAgaDQsXG4gICAgICAubXgtaGVhZGluZy0tbSxcbiAgICAgIGg1LFxuICAgICAgLm14LWhlYWRpbmctLXNcbiAgICApIHtcbiAgICAgIC0tZm9udC1taW46IGNhbGMoXG4gICAgICAgIHZhcigtLWhlYWRpbmctZm9udC1zaXplKSAtIHZhcigtLWhlYWRpbmctZm9udC1zaXplKSAqXG4gICAgICAgICAgdmFyKC0tZm9udC1zaXplLWRpZmYsIDAuMylcbiAgICAgICk7XG5cbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoXG4gICAgICAgIG1heCh2YXIoLS1iYXNlLWZvbnQtc2l6ZSksIHZhcigtLWZvbnQtbWluKSksXG4gICAgICAgIHZhcigtLWZvbnQtbWluKSArIDFjcWksXG4gICAgICAgIHZhcigtLWhlYWRpbmctZm9udC1zaXplKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAubXgtaGVhZGxpbmUge1xuICAgIC0taGVhZGluZy1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHhsKTtcbiAgfVxuXG4gIGgxLFxuICAubXgtaGVhZGluZy0teHhsIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsKTtcbiAgfVxuXG4gIGgyLFxuICAubXgtaGVhZGluZy0teGwge1xuICAgIC0taGVhZGluZy1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bCk7XG4gIH1cblxuICBoMyxcbiAgLm14LWhlYWRpbmctLWwge1xuICAgIC0taGVhZGluZy1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgfVxuXG4gIGg0LFxuICAubXgtaGVhZGluZy0tbSB7XG4gICAgLS1oZWFkaW5nLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICB9XG5cbiAgaDUsXG4gIC5teC1oZWFkaW5nLS1zIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1iYXNlLWZvbnQtc2l6ZSk7XG4gIH1cblxuICBoNixcbiAgLm14LWhlYWRpbmctLXhzIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmRlZmF1bHRzIHtcbiAgYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWxpbmUtZ2FwLCB2YXIoLS1nYXApKTtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0OiB2YXIoLS1saW5lLXdpZHRoLCA2cHgpIHNvbGlkXG4gICAgICB2YXIoLS1saW5lLWNvbG91ciwgdmFyKC0tY29sb3VyLWJvcmRlcikpO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIGhyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBibG9jay1zaXplOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYmxvY2stc3RhcnQ6IHZhcigtLWxpbmUtd2lkdGgsIDFweCkgc29saWRcbiAgICAgIHZhcigtLWxpbmUtY29sb3VyLCB2YXIoLS1jb2xvdXItYm9yZGVyKSk7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1saW5lLWdhcCwgdmFyKC0tc3BhY2luZy1tKSk7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmRlZmF1bHRzIHtcbiAgYVtocmVmXSB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstY29sb3VyLCB2YXIoLS1jb2xvdXItbGluaykpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgwLjA4ZW0sIDFweCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMmVtO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDAuMDllbSwgMnB4KTtcbiAgICB9XG4gIH1cblxuICAubXgtbGluay0tZXh0ZXJuYWwge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hc2staW1hZ2U6IHN2Zy1sb2FkKFwiLi4vaW1hZ2VzL2V4dGVybmFsLWxpbmsuc3ZnXCIpO1xuICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgYmxvY2stc2l6ZTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICAgIGlubGluZS1zaXplOiB2YXIoLS1zcGFjaW5nLXMpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5teC1saW5rLS1tb3JlIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG5cbiAgICAmOmhvdmVyIC5teC1pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgIH1cbiAgfVxuXG4gIC5teC1saW5rLS1kb3dubG9hZCB7XG4gICAgJjpob3ZlciAubXgtaWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KTtcbiAgICB9XG4gIH1cblxuICBhOndoZXJlKFtocmVmXSk6aGFzKC5teC1pY29uKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgfVxufVxuIiwiQGxheWVyIGRlc2lnbi1zeXN0ZW0uYXRvbXMge1xuICA6aXMoXG4gICAgLm14LXRleHQtLXNlY3Rpb24taGVhZGxpbmUsXG4gICAgLm14LXRleHQtLWVtYmVsbGlzaGVkLWhlYWRsaW5lLFxuICAgIC5teC10ZXh0LS1sZWRlLFxuICAgIC5teC10ZXh0LS14cyxcbiAgICAubXgtdGV4dC0tcyxcbiAgICAubXgtdGV4dC0tbSxcbiAgICAubXgtdGV4dC0tbCxcbiAgICAubXgtdGV4dC0teGwsXG4gICAgLm14LXRleHQtLXh4bCxcbiAgICAubXgtdGV4dC0teHh4bCxcbiAgICAubXgtdGV4dC0tZmx1aWRcbiAgKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICB9XG5cbiAgQHN1cHBvcnRzIChmb250LXNpemU6IDFjcWkpIHtcbiAgICA6aXMoXG4gICAgICAubXgtdGV4dC0tc2VjdGlvbi1oZWFkbGluZSxcbiAgICAgIC5teC10ZXh0LS1sZWRlLFxuICAgICAgLm14LXRleHQtLW0sXG4gICAgICAubXgtdGV4dC0tbCxcbiAgICAgIC5teC10ZXh0LS14bCxcbiAgICAgIC5teC10ZXh0LS14eGwsXG4gICAgICAubXgtdGV4dC0teHh4bCxcbiAgICAgIC5teC10ZXh0LS1mbHVpZFxuICAgICkge1xuICAgICAgLS1mb250LW1pbjogY2FsYyhcbiAgICAgICAgdmFyKC0tZm9udC1zaXplKSAtIHZhcigtLWZvbnQtc2l6ZSkgKiB2YXIoLS1mb250LXNpemUtZGlmZiwgMC4zKVxuICAgICAgKTtcblxuICAgICAgZm9udC1zaXplOiBjbGFtcChcbiAgICAgICAgbWF4KHZhcigtLWJhc2UtZm9udC1zaXplKSwgdmFyKC0tZm9udC1taW4pKSxcbiAgICAgICAgdmFyKC0tZm9udC1taW4pICsgMWNxaSxcbiAgICAgICAgdmFyKC0tZm9udC1zaXplKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAubXgtdGV4dC0tc2VjdGlvbi1oZWFkbGluZSB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcblxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkaW5nLWZvbnQtd2VpZ2h0LCB2YXIoLS1mb250LXdlaWdodC1ib2xkKSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRpbmctZm9udC1mYW1pbHksIHZhcigtLWZvbnQtZmFtaWx5KSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgpO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JlZ3JvdW5kLCB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZC1hbHQpKTtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgJiArIDppcyhoMiwgaDMpIHtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc3BhY2luZy14eHh4cykgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAubXgtdGV4dC0tZW1iZWxsaXNoZWQtaGVhZGxpbmUge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG5cbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy1mb250LXdlaWdodCwgdmFyKC0tZm9udC13ZWlnaHQtYm9sZCkpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLWZvbnQtZmFtaWx5LCB2YXIoLS1mb250LWZhbWlseSkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tc3BhY2luZy1sKTtcbiAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbmxpbmUtc2l6ZTogdmFyKC0tc3BhY2luZy14eHhsKTtcbiAgICAgIGJsb2NrLXNpemU6IDNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG91ci1wcmltYXJ5KTtcbiAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiB2YXIoLS1nYXApO1xuICAgIH1cbiAgfVxuXG4gIC5teC10ZXh0LS1sZWRlIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgfVxuXG4gIC5teC10ZXh0LS14eHhsIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4eGwpO1xuXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgpO1xuICB9XG5cbiAgLm14LXRleHQtLXh4bCB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eGwpO1xuXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgpO1xuICB9XG5cbiAgLm14LXRleHQtLXhsIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsKTtcblxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgfVxuXG4gIC5teC10ZXh0LS1sIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgpO1xuICB9XG5cbiAgLm14LXRleHQtLW0ge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gIH1cblxuICAubXgtdGV4dC0tcyB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgfVxuXG4gIC5teC10ZXh0LS14cyB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLnV0aWxpdGllcyB7XG4gIC5teC10ZXh0LS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgfVxuXG4gIC5teC10ZXh0LS1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogZW5kO1xuICB9XG5cbiAgLm14LXRleHQtLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBjdXN0b20tcHJvcGVydHktcGF0dGVybiAqL1xuQGRlZmluZS1taXhpbiBzcGFjaW5nICRzaXplIHtcbiAgLm14LXNwYWNpbmctLSQoc2l6ZSkge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctJChzaXplKSk7XG4gIH1cblxuICAubXgtc3BhY2luZy0tdG9wLSQoc2l6ZSkge1xuICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IHZhcigtLXNwYWNpbmctJChzaXplKSk7XG4gIH1cblxuICAubXgtc3BhY2luZy0tYm90dG9tLSQoc2l6ZSkge1xuICAgIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1zcGFjaW5nLSQoc2l6ZSkpO1xuICB9XG5cbiAgLm14LXNwYWNpbmctLWxlZnQtJChzaXplKSB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXNwYWNpbmctJChzaXplKSk7XG4gIH1cblxuICAubXgtc3BhY2luZy0tcmlnaHQtJChzaXplKSB7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zcGFjaW5nLSQoc2l6ZSkpO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiLi9fbWl4aW5zLmNzc1wiO1xuXG5AbGF5ZXIgZGVzaWduLXN5c3RlbS51dGlsaXRpZXMge1xuICAubXgtc3BhY2luZy0tcmVzZXQge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zcGFjaW5nLS10b3AtcmVzZXQge1xuICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zcGFjaW5nLS1ib3R0b20tcmVzZXQge1xuICAgIHBhZGRpbmctYmxvY2stZW5kOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc3BhY2luZy0tbGVmdC1yZXNldCB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zcGFjaW5nLS1yaWdodC1yZXNldCB7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAbWl4aW4gc3BhY2luZyB4eHM7XG4gIEBtaXhpbiBzcGFjaW5nIHhzO1xuICBAbWl4aW4gc3BhY2luZyBzO1xuICBAbWl4aW4gc3BhY2luZyBtO1xuICBAbWl4aW4gc3BhY2luZyBsO1xuICBAbWl4aW4gc3BhY2luZyB4bDtcbiAgQG1peGluIHNwYWNpbmcgeHhsO1xuICBAbWl4aW4gc3BhY2luZyB4eHhsO1xuICBAbWl4aW4gc3BhY2luZyB4eHh4bDtcbiAgQG1peGluIHNwYWNpbmcgdWw7XG4gIEBtaXhpbiBzcGFjaW5nIHV1bDtcbiAgQG1peGluIHNwYWNpbmcgdXV1bDtcbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmRlZmF1bHRzIHtcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgaW5saW5lLXNpemU6IGZpdC1jb250ZW50O1xuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1jYXB0aW9uLWZvbnQtc2l6ZSwgdmFyKC0tZm9udC1zaXplLXhzKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWNhcHRpb24tbGluZS1oZWlnaHQsIHZhcigtLWxpbmUtaGVpZ2h0LWgpKTtcbiAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jYXB0aW9uO1xuICB9XG5cbiAgaW1nIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIG1heC1pbmxpbmUtc2l6ZTogMTAwJTtcbiAgICBibG9jay1zaXplOiBhdXRvO1xuICB9XG5cbiAgc3ZnOm5vdChbZmlsbF0pIHtcbiAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmF0b21zIHtcbiAgOmlzKC5teC1tZWRpYS0tbGVmdCwgLm14LW1lZGlhLS1yaWdodCwgLm14LW1lZGlhLS1jZW50ZXIpIHtcbiAgICBAbWVkaWEgKC0tc21hbGwtdXApIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWF4LWlubGluZS1zaXplOiA1MCU7XG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1zcGFjaW5nLXMpO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuXG4gICAgICAgICYgKyAqIHtcbiAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmIGZpZ2NhcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jYXB0aW9uO1xuICAgICAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubXgtbWVkaWEtLWNlbnRlciB7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxuXG4gIDppcyhcbiAgICAubXgtbWVkaWEtLWxlZnQsXG4gICAgW2Rpcj1cInJ0bFwiXSAubXgtbWVkaWEtLXJpZ2h0LFxuICAgIC50cmFuc2xhdGVkLXJ0bCAubXgtbWVkaWEtLXJpZ2h0XG4gICkge1xuICAgIEBtZWRpYSAoLS1zbWFsbC11cCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4taW5saW5lOiAwIHZhcigtLXNwYWNpbmctbSk7XG4gICAgfVxuICB9XG5cbiAgOmlzKFxuICAgIC5teC1tZWRpYS0tcmlnaHQsXG4gICAgW2Rpcj1cInJ0bFwiXSAubXgtbWVkaWEtLWxlZnQsXG4gICAgLnRyYW5zbGF0ZWQtcnRsIC5teC1tZWRpYS0tbGVmdFxuICApIHtcbiAgICBAbWVkaWEgKC0tc21hbGwtdXApIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IHZhcigtLXNwYWNpbmctbSkgMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmRlZmF1bHRzIHtcbiAgLm14LXZpZGVvIHtcbiAgICAmLFxuICAgICYgOmlzKGVtYmVkLCBvYmplY3QsIGlmcmFtZSkge1xuICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gICAgICBibG9jay1zaXplOiAxMDAlO1xuICAgICAgaW5saW5lLXNpemU6IDEwMCU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLm14LW1lZGlhLS12aWRlbyB7XG4gICAgaW5saW5lLXNpemU6IDEwMCU7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmRlZmF1bHRzIHtcbiAgdGFibGUge1xuICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJiB0aCB7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB9XG5cbiAgICAmIDppcyh0ZCwgdGgpIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICAgIGJvcmRlci1ibG9jay1lbmQ6IHZhcigtLWxpbmUtd2lkdGgsIDFweCkgc29saWRcbiAgICAgICAgdmFyKC0tbGluZS1jb2xvdXIsIHZhcigtLWNvbG91ci1ib3JkZXIpKTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgJiB0aGVhZCA6aXModGQsIHRoKSB7XG4gICAgICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubXgtdGFibGUtLWZsdXNoIHtcbiAgICAmIDppcyh0ZCwgdGgpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5teC10YWJsZS0tc21hbGwge1xuICAgICYgOmlzKHRkLCB0aCkge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaCk7XG4gICAgfVxuICB9XG5cbiAgLm14LXRhYmxlLS1zdHJpcGVkIHtcbiAgICAmIHRib2R5IHRyIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgJiA6aXModGQsIHRoKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3VyLWJhY2tncm91bmQtYWx0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5teC10YWJsZS0tcmVzcG9uc2l2ZSB7XG4gICAgbWF4LWlubGluZS1zaXplOiAxMDAlO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KSBpbnNldDtcblxuICAgICAgJiB0YWJsZSB7XG4gICAgICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IHZhcigtLXNwYWNpbmctcyk7XG5cbiAgICAgICAgJiB0ZCB7XG4gICAgICAgICAgbWluLWlubGluZS1zaXplOiAyMGNoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWVkaWEgcHJpbnQge1xuICAuY29udGV4dHVhbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5teC1yaWNoLXRleHQge1xuICAgIG1heC1pbmxpbmUtc2l6ZTogMTAwJTtcbiAgfVxufVxuIl19 */
|
|
1013
|
+
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UuY3NzIiwiQmFja2dyb3VuZC9fYmFja2dyb3VuZC5jc3MiLCJfYW5pbWF0ZWQuY3NzIiwiX2Jhc2UuY3NzIiwiX2dlbmVyaWMuY3NzIiwiX2Zsb3cuY3NzIiwiSGVhZGluZy9faGVhZGluZ3MuY3NzIiwiQmxvY2txdW90ZS9fYmxvY2txdW90ZS5jc3MiLCJfaHIuY3NzIiwiTGluay9fbGlua3MuY3NzIiwiVGV4dC9fdGV4dC1zaXplcy5jc3MiLCJUZXh0L190ZXh0LWFsaWduLmNzcyIsIlNwYWNpbmcvX21peGlucy5jc3MiLCJTcGFjaW5nL19zcGFjaW5nLmNzcyIsIkltYWdlL19pbWFnZS5jc3MiLCJNZWRpYS9fbWVkaWEuY3NzIiwiVmlkZW8vX3ZpZGVvLmNzcyIsIlRhYmxlL190YWJsZS5jc3MiLCJfcHJpbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhJQUE4STs7QUNBOUk7O0VBRUU7O0FBQ0Y7RUFDRTtJQUNFLDZEQUE2RDtJQUM3RCxrREFBa0Q7SUFDbEQsZ0RBQWdEO0VBQ2xEOztFQUVBO0lBQ0UsbURBQW1EO0lBQ25ELDZCQUE2QjtJQUM3QixzQ0FBc0M7SUFDdEMsc0NBQXNDO0lBQ3RDLGlDQUFpQztJQUNqQyxtQ0FBbUM7RUFDckM7O0VBRUE7SUFDRSxrQ0FBa0M7SUFDbEMsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0UscUNBQXFDO0lBQ3JDLG1DQUFtQztJQUNuQywwQ0FBMEM7SUFDMUMsMENBQTBDO0VBQzVDOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLGtDQUFrQztJQUNsQyx5Q0FBeUM7SUFDekMseUNBQXlDO0VBQzNDO0lBR0U7TUFDRSxvQkFBaUI7U0FBakIsaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixpQkFBaUI7TUFDakIsb0JBQW9CO01BQ3BCOztvQkFFcUM7TUFGckM7OzJDQUVxQztJQUN2Qzs7RUFHRjtJQUNFLHFDQUFxQztFQU12Qzs7SUFKRTtNQUNFLHlCQUF5QjtNQUN6QixtQkFBbUI7SUFDckI7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QUFpQztFQUVyQztJQURFO0lBUUE7O0VBTEY7Ozs7O01BTUksWUFBWTtNQUNaLGlDQUFpQztFQUVyQztJQURFO0FBRUo7O0FaTkE7O0VBRUU7O0FhM0NGO0lBRUk7TUFFRSxvQkFBb0I7TUFDcEIsZ0JBQWdCO01BQ2hCLGlCQUFpQjtNQUNqQixTQUFTO0lBQ1g7O0VBR0Y7SUFDRSxpQkFBaUI7RUFDbkI7QUFDRjs7QWJpQ0E7O0VBRUU7O0FBRUY7O0VBRUU7O0FjckRGO0VBQ0U7SUFDRSxpQkFBaUI7SUFDakIseUJBQXlCO0lBQ3pCLFNBQVM7RUFpQlg7O0lBZkU7TUFDRSxvQ0FBb0M7TUFDcEMsaUJBQWlCO0lBQ25COztJQUVBO01BQ0UsMkJBQTJCO01BQzNCO2dEQUMwQztNQUQxQztnREFDMEM7TUFDMUMsbUJBQW1CO0lBQ3JCOztJQUVBO01BQ0UsMEJBQTBCO0lBQzVCO01BS0U7UUFDRSx1QkFBdUI7TUFDekI7O01BRUE7UUFDRSxxQkFBcUI7TUFDdkI7SUFLRjtNQUNFLDZCQUE2QjtNQUM3QixpQ0FBaUM7SUFDbkM7UUFNSTtVQUNFLDhDQUE4QztRQUNoRDs7RUFLTjtJQUNFLHFCQUFxQjtFQWlCdkI7O0lBZkU7O0VBSEY7TUFJSSxrQkFBa0I7TUFDbEIsaUNBQWlDO01BQ2pDLG1DQUFtQztFQVl2Qzs7TUFWSTtRQUNFLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2YsK0JBQStCO01BS2pDOztRQUhFO1VBQ0UscUJBQXFCO1FBQ3ZCO0lBRUo7QUFFSjs7QWRkQTs7RUFFRTs7QWUzREY7RUFDRTtJQUNFLGFBQWE7RUFDZjs7RUFFQTtJQUNFLHFCQUFxQjtFQUN2QjtBQUNGIiwiZmlsZSI6ImJhc2UuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGxheWVyIHBvcG92ZXItcG9seWZpbGwsIGRlc2lnbi1zeXN0ZW0uZGVmYXVsdHMsIGRlc2lnbi1zeXN0ZW0uYXRvbXMsIGRlc2lnbi1zeXN0ZW0ubGF5b3V0cywgZGVzaWduLXN5c3RlbS51dGlsaXRpZXMsIGRlc2lnbi1zeXN0ZW0uY29tcG9uZW50cztcblxuQGltcG9ydCBcIi4vQmFja2dyb3VuZC9fYmFja2dyb3VuZC5jc3NcIjtcbkBpbXBvcnQgXCJfYW5pbWF0ZWQuY3NzXCI7XG5AaW1wb3J0IFwiX2Jhc2UuY3NzXCI7XG4iLCIvKipcbiAqIEJhY2tncm91bmRzXG4gKi9cbkBsYXllciBkZXNpZ24tc3lzdGVtLmF0b21zIHtcbiAgOndoZXJlKFtjbGFzcyo9XCJteC1iYWNrZ3JvdW5kLS1cIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLCB2YXIoLS1jb2xvdXItYmFja2dyb3VuZCkpO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JlZ3JvdW5kLCB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZCkpO1xuICAgIGNvbG9yLXNjaGVtZTogdmFyKC0tc2NoZW1lLCB2YXIoLS1jb2xvci1zY2hlbWUpKTtcbiAgfVxuXG4gIC5teC1iYWNrZ3JvdW5kLS1yZXNldCB7XG4gICAgLyogdXNlIHRvIHJldmVydCAuYmFja2dyb3VuZC0tcmV2ZXJzZSBvbiBjaGlsZHJlbiAqL1xuICAgIC0tc2NoZW1lOiB2YXIoLS1jb2xvci1zY2hlbWUpO1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0tY29sb3VyLWJhY2tncm91bmQpO1xuICAgIC0tZm9yZWdyb3VuZDogdmFyKC0tY29sb3VyLWZvcmVncm91bmQpO1xuICAgIC0tbGluay1jb2xvdXI6IHZhcigtLWNvbG91ci1saW5rKTtcbiAgICAtLWxpbmUtY29sb3VyOiB2YXIoLS1jb2xvdXItYm9yZGVyKTtcbiAgfVxuXG4gIC5teC1iYWNrZ3JvdW5kLS1hbHQge1xuICAgIC0tc2NoZW1lOiB2YXIoLS1hbHQtc2NoZW1lLCBsaWdodCk7XG4gICAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvdXItYmFja2dyb3VuZC1hbHQpO1xuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLXByaW1hcnkge1xuICAgIC0tc2NoZW1lOiB2YXIoLS1wcmltYXJ5LXNjaGVtZSwgZGFyayk7XG4gICAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvdXItcHJpbWFyeSk7XG4gICAgLS1saW5rLWNvbG91cjogdmFyKC0tY29sb3VyLXByaW1hcnktbGlnaHQpO1xuICAgIC0tbGluZS1jb2xvdXI6IHZhcigtLWNvbG91ci1wcmltYXJ5LWxpZ2h0KTtcbiAgfVxuXG4gIC5teC1iYWNrZ3JvdW5kLS1hY2NlbnQge1xuICAgIC0tc2NoZW1lOiB2YXIoLS1hY2NlbnQtc2NoZW1lLCBkYXJrKTtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLWNvbG91ci1hY2NlbnQpO1xuICAgIC0tbGluay1jb2xvdXI6IHZhcigtLWNvbG91ci1hY2NlbnQtbGlnaHQpO1xuICAgIC0tbGluZS1jb2xvdXI6IHZhcigtLWNvbG91ci1hY2NlbnQtbGlnaHQpO1xuICB9XG5cbiAgLm14LWJhY2tncm91bmQtLWltYWdlIHtcbiAgICAmIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgICAgbWluLWJsb2NrLXNpemU6IDEwMCU7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3ModmFyKC0tYmctaW1nLWJyaWdodG5lc3MsIDEpKVxuICAgICAgICBzYXR1cmF0ZSh2YXIoLS1iZy1pbWctc2F0dXJhdGUsIDEuMjUpKVxuICAgICAgICBvcGFjaXR5KHZhcigtLWJnLWltZy1vcGFjaXR5LCAwLjUpKTtcbiAgICB9XG4gIH1cblxuICAubXgtYmFja2dyb3VuZC0tcmV2ZXJzZSB7XG4gICAgLS1zY2hlbWU6IHZhcigtLXJldmVyc2Utc2NoZW1lLCBkYXJrKTtcblxuICAgICYgLm14LWJhY2tncm91bmQtLWltYWdlIHtcbiAgICAgIC0tYmctaW1nLWJyaWdodG5lc3M6IDAuNDU7XG4gICAgICAtLWJnLWltZy1vcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC5teC1iYWNrZ3JvdW5kLS1ib3gge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUtY29sb3VyLCB2YXIoLS1jb2xvdXItYm9yZGVyKSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWd1dHRlciwgMXJlbSk7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLnV0aWxpdGllcyB7XG4gIC5teC1hbmltYXRlZC0tZmFkZS1pbiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDAuNXMgdmFyKC0tZWFzZSk7XG4gIH1cblxuICAubXgtYW5pbWF0ZWQtLWZhZGUtb3V0IHtcbiAgICBhbmltYXRpb246IGZhZGUtb3V0IDAuNXMgdmFyKC0tZWFzZSk7XG4gIH1cblxuICAubXgtYW5pbWF0ZWQtLXNwaW46OmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuXG4gIC5teC1hbmltYXRlZC0tc2NhbGUtdXAge1xuICAgIGFuaW1hdGlvbjogc2NhbGUtdXAgMC41cyB2YXIoLS1lYXNlKTtcbiAgfVxuXG4gIC5teC1hbmltYXRlZC0tc2NhbGUtZG93biB7XG4gICAgYW5pbWF0aW9uOiBzY2FsZS1kb3duIDAuNXMgdmFyKC0tZWFzZSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZS11cCB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2NhbGUtZG93biB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB9XG59XG4iLCIvKipcbiAqIEF0b21cbiAqL1xuXG5AaW1wb3J0IFwiX2dlbmVyaWMuY3NzXCI7XG5AaW1wb3J0IFwiX2Zsb3cuY3NzXCI7XG5cbi8qKlxuICogVHlwb2dyYXBoeVxuICovXG5cbkBpbXBvcnQgXCIuL0hlYWRpbmcvX2hlYWRpbmdzLmNzc1wiO1xuQGltcG9ydCBcIi4vQmxvY2txdW90ZS9fYmxvY2txdW90ZS5jc3NcIjtcbkBpbXBvcnQgXCJfaHIuY3NzXCI7XG5cbi8qKlxuICogTGlua3NcbiAqL1xuXG5AaW1wb3J0IFwiLi9MaW5rL19saW5rcy5jc3NcIjtcblxuLyoqXG4gKiBUZXh0IFNpemVzXG4gKi9cblxuQGltcG9ydCBcIi4vVGV4dC9fdGV4dC1zaXplcy5jc3NcIjtcbkBpbXBvcnQgXCIuL1RleHQvX3RleHQtYWxpZ24uY3NzXCI7XG5cbi8qKlxuICogU3BhY2luZ1xuICovXG5cbkBpbXBvcnQgXCIuL1NwYWNpbmcvX3NwYWNpbmcuY3NzXCI7XG5cbi8qKlxuICogSW1hZ2VzXG4gKi9cblxuQGltcG9ydCBcIi4vSW1hZ2UvX2ltYWdlLmNzc1wiO1xuQGltcG9ydCBcIi4vTWVkaWEvX21lZGlhLmNzc1wiO1xuXG4vKipcbiAqIFZpZGVvXG4gKi9cblxuQGltcG9ydCBcIi4vVmlkZW8vX3ZpZGVvLmNzc1wiO1xuXG4vKipcbiAqIFRhYmxlXG4gKi9cblxuLyoqXG4gKiBUYWJsZSBSZXNwb25zaXZlXG4gKi9cblxuQGltcG9ydCBcIi4vVGFibGUvX3RhYmxlLmNzc1wiO1xuXG4vKipcbiAqIFByaW50IFN0eWxlc2hlZXRcbiAqL1xuXG5AaW1wb3J0IFwiX3ByaW50LmNzc1wiO1xuIiwiQGxheWVyIGRlc2lnbi1zeXN0ZW0uZGVmYXVsdHMge1xuICBAbWVkaWEgKC0tdXNlLW1vdGlvbikge1xuICAgIEB2aWV3LXRyYW5zaXRpb24ge1xuICAgICAgbmF2aWdhdGlvbjogYXV0bztcbiAgICB9XG4gIH1cblxuICA6aXMoKiwgOjpiZWZvcmUsIDo6YWZ0ZXIpIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTpcbiAgICAgIG9wYWNpdHksIGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIHRyYW5zZm9ybSwgcm90YXRlLFxuICAgICAgZGlzcGxheSwgb3ZlcmxheTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1lYXNlKTtcbiAgICB0cmFuc2l0aW9uLWJlaGF2aW9yOiBhbGxvdy1kaXNjcmV0ZTtcblxuICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIDpmb2N1cyB7XG4gICAgc2Nyb2xsLXBhZGRpbmctYmxvY2stZW5kOiA0dmg7XG4gIH1cblxuICA6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogdmFyKC0tb3V0bGluZS1zaXplLCAycHgpIHZhcigtLW91dGxpbmUtc3R5bGUsIHNvbGlkKVxuICAgICAgdmFyKC0tb3V0bGluZS1jb2xvciwgY3VycmVudGNvbG9yKTtcbiAgICBvdXRsaW5lLW9mZnNldDogdmFyKC0tb3V0bGluZS1vZmZzZXQsIHZhcigtLW91dGxpbmUtc2l6ZSwgMnB4KSk7XG4gIH1cblxuICBodG1sIHtcbiAgICBibG9jay1zaXplOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMTZweCBpbiBtb3N0IGJyb3dzZXJzICovXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQpO1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB9XG5cbiAgLnRyYW5zbGF0ZWQtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxuXG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3VyLWZvcmVncm91bmQpO1xuICAgIGFjY2VudC1jb2xvcjogdmFyKC0tY29sb3VyLXByaW1hcnkpO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZXNwZWVkO1xuICAgIGJsb2NrLXNpemU6IDEwMCU7XG4gIH1cblxuICA6dGFyZ2V0LFxuICBbaWRdLFxuICAuaGFzLXNjcm9sbC1tYXJnaW4ge1xuICAgIHNjcm9sbC1tYXJnaW4tYmxvY2stc3RhcnQ6IGNhbGMoXG4gICAgICB2YXIoLS1zdGlja3ktb2Zmc2V0LCAwcmVtKSArIHZhcigtLXNjcm9sbC1tYXJnaW4sIHZhcigtLXNwYWNpbmctbSkpXG4gICAgKTtcbiAgfVxuXG4gIDppcyhiLCBzdHJvbmcpIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cblxuICA6aXMob2wsIHVsKSB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXNwYWNpbmctbSk7XG5cbiAgICAmW3JvbGU9XCJsaXN0XCJdIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cblxuICBkbCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbigxMDAlLCB2YXIoLS1ncmlkLW1pbiwgMjBjaCkpIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuXG4gICAgJjpoYXMoPiBkaXYpIHtcbiAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICB9XG5cbiAgICAmIGRpdiB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBzdWJncmlkO1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcblxuICAgICAgQGNvbnRhaW5lciAobWF4LXdpZHRoOiA2MGNoKSB7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy14eHhzKTtcblxuICAgICAgICAmID4gOmlzKGR0LCBkZCkge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIGR0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICB0ZXh0LXdyYXA6IHByZXR0eTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tcmVkdWNlLW1vdGlvbikge1xuICAqLFxuICA6OmJlZm9yZSxcbiAgOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS51dGlsaXRpZXMge1xuICAubXgtdmVydGljYWwtZmxvdyB7XG4gICAgLyogRGVmYXVsdCB2ZXJ0aWNhbCBmbG93LiAqL1xuXG4gICAgJiA+IDp3aGVyZSg6bm90KDpmaXJzdC1jaGlsZCkpIHtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tZmxvdy1nYXAsIHZhcigtLWdhcCkpO1xuICAgIH1cblxuICAgICYgPiAubXgtdmVydGljYWwtZmxvd19fY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgIH1cblxuICAgIC8qIFJpY2ggdGV4dCB2ZXJ0aWNhbCBmbG93IGlzIGVuaGFuY2VkICovXG4gICAgJi5teC1yaWNoLXRleHQgPiAubXgtdGV4dC0tbGVkZSB7XG4gICAgICAtLWZsb3ctZ2FwOiB2YXIoLS1nYXAteGwpO1xuICAgIH1cbiAgfVxuXG4gIC5teC12ZXJ0aWNhbC1mbG93LWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHZhcigtLWZsb3ctZ2FwLCB2YXIoLS1nYXApKTtcblxuICAgICYgPiAqIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmOmlzKHVsLCBvbCkge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHVuc2V0O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubXgtaG9yaXpvbnRhbC1mbG93LWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdmFyKC0tZmxvdy1nYXAsIHZhcigtLWdhcCkpO1xuXG4gICAgJiA+ICoge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICY6aXModWwsIG9sKSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdW5zZXQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQGxheWVyIGRlc2lnbi1zeXN0ZW0uZGVmYXVsdHMge1xuICA6aXMoXG4gICAgLm14LWhlYWRsaW5lLFxuICAgIGgxLFxuICAgIC5teC1oZWFkaW5nLS14eGwsXG4gICAgaDIsXG4gICAgLm14LWhlYWRpbmctLXhsLFxuICAgIGgzLFxuICAgIC5teC1oZWFkaW5nLS1sLFxuICAgIGg0LFxuICAgIC5teC1oZWFkaW5nLS1tLFxuICAgIGg1LFxuICAgIC5teC1oZWFkaW5nLS1zLFxuICAgIGg2LFxuICAgIC5teC1oZWFkaW5nLS14c1xuICApIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGluZy1mb250LWZhbWlseSwgdmFyKC0tZm9udC1mYW1pbHkpKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLWZvbnQtc2l6ZSwgdmFyKC0tZm9udC1zaXplKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctZm9udC13ZWlnaHQsIHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpKTtcbiAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gIH1cblxuICBAc3VwcG9ydHMgKGZvbnQtc2l6ZTogMWNxaSkge1xuICAgIDppcyhcbiAgICAgIC5teC1oZWFkbGluZSxcbiAgICAgIGgxLFxuICAgICAgLm14LWhlYWRpbmctLXh4bCxcbiAgICAgIGgyLFxuICAgICAgLm14LWhlYWRpbmctLXhsLFxuICAgICAgaDMsXG4gICAgICAubXgtaGVhZGluZy0tbCxcbiAgICAgIGg0LFxuICAgICAgLm14LWhlYWRpbmctLW0sXG4gICAgICBoNSxcbiAgICAgIC5teC1oZWFkaW5nLS1zXG4gICAgKSB7XG4gICAgICAtLWZvbnQtbWluOiBjYWxjKFxuICAgICAgICB2YXIoLS1oZWFkaW5nLWZvbnQtc2l6ZSkgLSB2YXIoLS1oZWFkaW5nLWZvbnQtc2l6ZSkgKlxuICAgICAgICAgIHZhcigtLWZvbnQtc2l6ZS1kaWZmLCAwLjMpXG4gICAgICApO1xuXG4gICAgICBmb250LXNpemU6IGNsYW1wKFxuICAgICAgICBtYXgodmFyKC0tYmFzZS1mb250LXNpemUpLCB2YXIoLS1mb250LW1pbikpLFxuICAgICAgICB2YXIoLS1mb250LW1pbikgKyAxY3FpLFxuICAgICAgICB2YXIoLS1oZWFkaW5nLWZvbnQtc2l6ZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLm14LWhlYWRsaW5lIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHh4bCk7XG4gIH1cblxuICBoMSxcbiAgLm14LWhlYWRpbmctLXh4bCB7XG4gICAgLS1oZWFkaW5nLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bCk7XG4gIH1cblxuICBoMixcbiAgLm14LWhlYWRpbmctLXhsIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGwpO1xuICB9XG5cbiAgaDMsXG4gIC5teC1oZWFkaW5nLS1sIHtcbiAgICAtLWhlYWRpbmctZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbCk7XG4gIH1cblxuICBoNCxcbiAgLm14LWhlYWRpbmctLW0ge1xuICAgIC0taGVhZGluZy1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgfVxuXG4gIGg1LFxuICAubXgtaGVhZGluZy0tcyB7XG4gICAgLS1oZWFkaW5nLWZvbnQtc2l6ZTogdmFyKC0tYmFzZS1mb250LXNpemUpO1xuICB9XG5cbiAgaDYsXG4gIC5teC1oZWFkaW5nLS14cyB7XG4gICAgLS1oZWFkaW5nLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIGJsb2NrcXVvdGUge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1saW5lLWdhcCwgdmFyKC0tZ2FwKSk7XG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogdmFyKC0tbGluZS13aWR0aCwgNnB4KSBzb2xpZFxuICAgICAgdmFyKC0tbGluZS1jb2xvdXIsIHZhcigtLWNvbG91ci1ib3JkZXIpKTtcbiAgfVxufVxuIiwiQGxheWVyIGRlc2lnbi1zeXN0ZW0uZGVmYXVsdHMge1xuICBociB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmxvY2stc2l6ZTogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJsb2NrLXN0YXJ0OiB2YXIoLS1saW5lLXdpZHRoLCAxcHgpIHNvbGlkXG4gICAgICB2YXIoLS1saW5lLWNvbG91ciwgdmFyKC0tY29sb3VyLWJvcmRlcikpO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tbGluZS1nYXAsIHZhcigtLXNwYWNpbmctbSkpO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIGFbaHJlZl0ge1xuICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG91ciwgdmFyKC0tY29sb3VyLWxpbmspKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoMC4wOGVtLCAxcHgpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgwLjA5ZW0sIDJweCk7XG4gICAgfVxuICB9XG5cbiAgLm14LWxpbmstLWV4dGVybmFsIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHh4cyk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXNrLWltYWdlOiBzdmctbG9hZChcIi4uL2ltYWdlcy9leHRlcm5hbC1saW5rLnN2Z1wiKTtcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIGJsb2NrLXNpemU6IHZhcigtLXNwYWNpbmctcyk7XG4gICAgICBpbmxpbmUtc2l6ZTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubXgtbGluay0tbW9yZSB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXG4gICAgJjpob3ZlciAubXgtaWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgICB9XG4gIH1cblxuICAubXgtbGluay0tZG93bmxvYWQge1xuICAgICY6aG92ZXIgLm14LWljb24ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCk7XG4gICAgfVxuICB9XG5cbiAgYTp3aGVyZShbaHJlZl0pOmhhcygubXgtaWNvbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gIH1cbn1cbiIsIkBsYXllciBkZXNpZ24tc3lzdGVtLmF0b21zIHtcbiAgOmlzKFxuICAgIC5teC10ZXh0LS1zZWN0aW9uLWhlYWRsaW5lLFxuICAgIC5teC10ZXh0LS1lbWJlbGxpc2hlZC1oZWFkbGluZSxcbiAgICAubXgtdGV4dC0tbGVkZSxcbiAgICAubXgtdGV4dC0teHMsXG4gICAgLm14LXRleHQtLXMsXG4gICAgLm14LXRleHQtLW0sXG4gICAgLm14LXRleHQtLWwsXG4gICAgLm14LXRleHQtLXhsLFxuICAgIC5teC10ZXh0LS14eGwsXG4gICAgLm14LXRleHQtLXh4eGwsXG4gICAgLm14LXRleHQtLWZsdWlkXG4gICkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgfVxuXG4gIEBzdXBwb3J0cyAoZm9udC1zaXplOiAxY3FpKSB7XG4gICAgOmlzKFxuICAgICAgLm14LXRleHQtLXNlY3Rpb24taGVhZGxpbmUsXG4gICAgICAubXgtdGV4dC0tbGVkZSxcbiAgICAgIC5teC10ZXh0LS1tLFxuICAgICAgLm14LXRleHQtLWwsXG4gICAgICAubXgtdGV4dC0teGwsXG4gICAgICAubXgtdGV4dC0teHhsLFxuICAgICAgLm14LXRleHQtLXh4eGwsXG4gICAgICAubXgtdGV4dC0tZmx1aWRcbiAgICApIHtcbiAgICAgIC0tZm9udC1taW46IGNhbGMoXG4gICAgICAgIHZhcigtLWZvbnQtc2l6ZSkgLSB2YXIoLS1mb250LXNpemUpICogdmFyKC0tZm9udC1zaXplLWRpZmYsIDAuMylcbiAgICAgICk7XG5cbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoXG4gICAgICAgIG1heCh2YXIoLS1iYXNlLWZvbnQtc2l6ZSksIHZhcigtLWZvbnQtbWluKSksXG4gICAgICAgIHZhcigtLWZvbnQtbWluKSArIDFjcWksXG4gICAgICAgIHZhcigtLWZvbnQtc2l6ZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLm14LXRleHQtLXNlY3Rpb24taGVhZGxpbmUge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG5cbiAgICBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy1mb250LXdlaWdodCwgdmFyKC0tZm9udC13ZWlnaHQtYm9sZCkpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLWZvbnQtZmFtaWx5LCB2YXIoLS1mb250LWZhbWlseSkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgICBjb2xvcjogdmFyKC0tZm9yZWdyb3VuZCwgdmFyKC0tY29sb3VyLWZvcmVncm91bmQtYWx0KSk7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcblxuICAgICYgKyA6aXMoaDIsIGgzKSB7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXNwYWNpbmcteHh4eHMpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLm14LXRleHQtLWVtYmVsbGlzaGVkLWhlYWRsaW5lIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctZm9udC13ZWlnaHQsIHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGluZy1mb250LWZhbWlseSwgdmFyKC0tZm9udC1mYW1pbHkpKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaCk7XG4gICAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLXNwYWNpbmctbCk7XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5saW5lLXNpemU6IHZhcigtLXNwYWNpbmcteHh4bCk7XG4gICAgICBibG9jay1zaXplOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvdXItcHJpbWFyeSk7XG4gICAgICBpbnNldC1ibG9jay1zdGFydDogdmFyKC0tZ2FwKTtcbiAgICB9XG4gIH1cblxuICAubXgtdGV4dC0tbGVkZSB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gIH1cblxuICAubXgtdGV4dC0teHh4bCB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHhsKTtcblxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgfVxuXG4gIC5teC10ZXh0LS14eGwge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsKTtcblxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgfVxuXG4gIC5teC10ZXh0LS14bCB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bCk7XG5cbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaCk7XG4gIH1cblxuICAubXgtdGV4dC0tbCB7XG4gICAgLS1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcblxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oKTtcbiAgfVxuXG4gIC5teC10ZXh0LS1tIHtcbiAgICAtLWZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICB9XG5cbiAgLm14LXRleHQtLXMge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gIH1cblxuICAubXgtdGV4dC0teHMge1xuICAgIC0tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS51dGlsaXRpZXMge1xuICAubXgtdGV4dC0tbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIH1cblxuICAubXgtdGV4dC0tcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGVuZDtcbiAgfVxuXG4gIC5teC10ZXh0LS1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgY3VzdG9tLXByb3BlcnR5LXBhdHRlcm4gKi9cbkBkZWZpbmUtbWl4aW4gc3BhY2luZyAkc2l6ZSB7XG4gIC5teC1zcGFjaW5nLS0kKHNpemUpIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLSQoc2l6ZSkpO1xuICB9XG5cbiAgLm14LXNwYWNpbmctLXRvcC0kKHNpemUpIHtcbiAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiB2YXIoLS1zcGFjaW5nLSQoc2l6ZSkpO1xuICB9XG5cbiAgLm14LXNwYWNpbmctLWJvdHRvbS0kKHNpemUpIHtcbiAgICBwYWRkaW5nLWJsb2NrLWVuZDogdmFyKC0tc3BhY2luZy0kKHNpemUpKTtcbiAgfVxuXG4gIC5teC1zcGFjaW5nLS1sZWZ0LSQoc2l6ZSkge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1zcGFjaW5nLSQoc2l6ZSkpO1xuICB9XG5cbiAgLm14LXNwYWNpbmctLXJpZ2h0LSQoc2l6ZSkge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc3BhY2luZy0kKHNpemUpKTtcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4vX21peGlucy5jc3NcIjtcblxuQGxheWVyIGRlc2lnbi1zeXN0ZW0udXRpbGl0aWVzIHtcbiAgLm14LXNwYWNpbmctLXJlc2V0IHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc3BhY2luZy0tdG9wLXJlc2V0IHtcbiAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc3BhY2luZy0tYm90dG9tLXJlc2V0IHtcbiAgICBwYWRkaW5nLWJsb2NrLWVuZDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXNwYWNpbmctLWxlZnQtcmVzZXQge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc3BhY2luZy0tcmlnaHQtcmVzZXQge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgQG1peGluIHNwYWNpbmcgeHhzO1xuICBAbWl4aW4gc3BhY2luZyB4cztcbiAgQG1peGluIHNwYWNpbmcgcztcbiAgQG1peGluIHNwYWNpbmcgbTtcbiAgQG1peGluIHNwYWNpbmcgbDtcbiAgQG1peGluIHNwYWNpbmcgeGw7XG4gIEBtaXhpbiBzcGFjaW5nIHh4bDtcbiAgQG1peGluIHNwYWNpbmcgeHh4bDtcbiAgQG1peGluIHNwYWNpbmcgeHh4eGw7XG4gIEBtaXhpbiBzcGFjaW5nIHVsO1xuICBAbWl4aW4gc3BhY2luZyB1dWw7XG4gIEBtaXhpbiBzcGFjaW5nIHV1dWw7XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGlubGluZS1zaXplOiBmaXQtY29udGVudDtcbiAgfVxuXG4gIGZpZ2NhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tY2FwdGlvbi1mb250LXNpemUsIHZhcigtLWZvbnQtc2l6ZS14cykpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1jYXB0aW9uLWxpbmUtaGVpZ2h0LCB2YXIoLS1saW5lLWhlaWdodC1oKSk7XG4gICAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgfVxuXG4gIGltZyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBtYXgtaW5saW5lLXNpemU6IDEwMCU7XG4gICAgYmxvY2stc2l6ZTogYXV0bztcbiAgfVxuXG4gIHN2Zzpub3QoW2ZpbGxdKSB7XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5hdG9tcyB7XG4gIDppcygubXgtbWVkaWEtLWxlZnQsIC5teC1tZWRpYS0tcmlnaHQsIC5teC1tZWRpYS0tY2VudGVyKSB7XG4gICAgQG1lZGlhICgtLXNtYWxsLXVwKSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG1heC1pbmxpbmUtc2l6ZTogNTAlO1xuICAgICAgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0tc3BhY2luZy1zKTtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcblxuICAgICAgICAmICsgKiB7XG4gICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiBmaWdjYXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgICAgICAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm14LW1lZGlhLS1jZW50ZXIge1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cblxuICA6aXMoXG4gICAgLm14LW1lZGlhLS1sZWZ0LFxuICAgIFtkaXI9XCJydGxcIl0gLm14LW1lZGlhLS1yaWdodCxcbiAgICAudHJhbnNsYXRlZC1ydGwgLm14LW1lZGlhLS1yaWdodFxuICApIHtcbiAgICBAbWVkaWEgKC0tc21hbGwtdXApIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWlubGluZTogMCB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIH1cbiAgfVxuXG4gIDppcyhcbiAgICAubXgtbWVkaWEtLXJpZ2h0LFxuICAgIFtkaXI9XCJydGxcIl0gLm14LW1lZGlhLS1sZWZ0LFxuICAgIC50cmFuc2xhdGVkLXJ0bCAubXgtbWVkaWEtLWxlZnRcbiAgKSB7XG4gICAgQG1lZGlhICgtLXNtYWxsLXVwKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLW0pIDA7XG4gICAgfVxuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIC5teC12aWRlbyB7XG4gICAgJixcbiAgICAmIDppcyhlbWJlZCwgb2JqZWN0LCBpZnJhbWUpIHtcbiAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgICAgYmxvY2stc2l6ZTogMTAwJTtcbiAgICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5teC1tZWRpYS0tdmlkZW8ge1xuICAgIGlubGluZS1zaXplOiAxMDAlO1xuICB9XG59XG4iLCJAbGF5ZXIgZGVzaWduLXN5c3RlbS5kZWZhdWx0cyB7XG4gIHRhYmxlIHtcbiAgICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIG1hcmdpbjogMDtcblxuICAgICYgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgfVxuXG4gICAgJiA6aXModGQsIHRoKSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICBib3JkZXItYmxvY2stZW5kOiB2YXIoLS1saW5lLXdpZHRoLCAxcHgpIHNvbGlkXG4gICAgICAgIHZhcigtLWxpbmUtY29sb3VyLCB2YXIoLS1jb2xvdXItYm9yZGVyKSk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgICYgdGhlYWQgOmlzKHRkLCB0aCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm14LXRhYmxlLS1mbHVzaCB7XG4gICAgJiA6aXModGQsIHRoKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubXgtdGFibGUtLXNtYWxsIHtcbiAgICAmIDppcyh0ZCwgdGgpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgpO1xuICAgIH1cbiAgfVxuXG4gIC5teC10YWJsZS0tc3RyaXBlZCB7XG4gICAgJiB0Ym9keSB0ciB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICYgOmlzKHRkLCB0aCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG91ci1iYWNrZ3JvdW5kLWFsdCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubXgtdGFibGUtLXJlc3BvbnNpdmUge1xuICAgIG1heC1pbmxpbmUtc2l6ZTogMTAwJTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdykgaW5zZXQ7XG5cbiAgICAgICYgdGFibGUge1xuICAgICAgICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAwO1xuICAgICAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLXMpO1xuXG4gICAgICAgICYgdGQge1xuICAgICAgICAgIG1pbi1pbmxpbmUtc2l6ZTogMjBjaDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1lZGlhIHByaW50IHtcbiAgLmNvbnRleHR1YWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubXgtcmljaC10ZXh0IHtcbiAgICBtYXgtaW5saW5lLXNpemU6IDEwMCU7XG4gIH1cbn1cbiJdfQ== */
|
package/dist/build/button.css
CHANGED
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
--foreground: var(--colour-foreground-reverse);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
.mx-button--dark.button--outline {
|
|
89
|
+
.mx-button--dark.mx-button--outline {
|
|
90
90
|
--background: transparent;
|
|
91
91
|
--foreground: var(--colour-primary);
|
|
92
92
|
}
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
--foreground: var(--colour-foreground-reverse);
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
.mx-button--destructive.button--outline {
|
|
110
|
+
.mx-button--destructive.mx-button--outline {
|
|
111
111
|
--background: transparent;
|
|
112
112
|
--foreground: var(--colour-error);
|
|
113
113
|
}
|
|
@@ -118,10 +118,10 @@
|
|
|
118
118
|
--foreground: var(--colour-foreground);
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
.mx-button--white.button--outline {
|
|
121
|
+
.mx-button--white.mx-button--outline {
|
|
122
122
|
--background: transparent;
|
|
123
123
|
--foreground: var(--colour-foreground-reverse);
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
/*# sourceMappingURL=data:application/json;base64,
|
|
127
|
+
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9idXR0b25zLmNzcyIsIl9idXR0b25zLXN0eWxlcy5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0VBRUU7O0FBRUY7RUFDRTtJQUNFLDJCQUFxQjs7SUFFckIsb0JBQW9CO0lBQ3BCLDZCQUF3QjtJQUF4Qix3QkFBd0I7SUFDeEIsd0NBQXdDO0lBQ3hDLG9EQUFvRDtJQUNwRCxvQ0FBb0M7SUFDcEMsK0JBQStCO0lBQy9CLGtDQUFrQztJQUNsQzs4Q0FDMEM7SUFEMUM7OENBQzBDO0lBQzFDLG9EQUFvRDtJQUNwRCwwREFBMEQ7SUFDMUQsMkRBQTJEO0lBQzNELDZEQUE2RDtJQUM3RCxrREFBa0Q7SUFDbEQsMEJBQTBCO0VBVzVCOztJQVRFO01BQ0UsZUFBZTtNQUNmLDBCQUEwQjtJQUM1Qjs7SUFFQTtNQUNFLG1CQUFtQjtNQUNuQixZQUFZO0lBQ2Q7O0VBR0Y7SUFDRSxpQkFBaUI7SUFDakIsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0Usb0NBQW9DO0lBQ3BDLHNDQUFzQztFQUN4Qzs7RUFFQTtJQUNFLHNDQUFzQztJQUN0Qyx1Q0FBdUM7SUFDdkMsc0NBQXNDO0VBQ3hDOztFQUVBO0lBQ0UsOEJBQThCO0lBQzlCLDZCQUE2QjtJQUM3QixVQUFVO0lBQ1YseUNBQXlDO0lBQ3pDLGdCQUFnQjtJQUNoQixlQUFlO0VBV2pCOztJQVRFO01BQ0UsaUJBQWlCO01BQ2pCLGdCQUFnQjtNQUNoQixtQ0FBMkI7Y0FBM0IsMkJBQTJCO0lBQzdCOztJQUVBO01BQ0UscUJBQXFCO01BQXJCLHVCQUFxQjtNQUFyQixxQkFBcUI7SUFDdkI7QUFFSjs7QUNyRUE7O0VBRUU7O0FBRUY7RUFDRTtJQUNFLGlDQUFpQztJQUNqQyxnQ0FBZ0M7SUFDaEMsOENBQThDO0VBTWhEOztJQUpFO01BQ0UseUJBQXlCO01BQ3pCLG1DQUFtQztJQUNyQzs7RUFHRjtJQUNFLG1CQUFtQjtJQUNuQiw2Q0FBNkM7SUFDN0MsK0JBQStCO0VBS2pDOztJQUhFO01BQ0UsK0JBQStCO0lBQ2pDOztFQUdGO0lBQ0Usa0NBQWtDO0lBQ2xDLGlDQUFpQztJQUNqQyw4Q0FBOEM7RUFNaEQ7O0lBSkU7TUFDRSx5QkFBeUI7TUFDekIsaUNBQWlDO0lBQ25DOztFQUdGO0lBQ0UsK0NBQStDO0lBQy9DLDhDQUE4QztJQUM5QyxzQ0FBc0M7RUFNeEM7O0lBSkU7TUFDRSx5QkFBeUI7TUFDekIsOENBQThDO0lBQ2hEO0FBRUoiLCJmaWxlIjoiYnV0dG9uLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQnV0dG9uc1xuICovXG5cbkBsYXllciBkZXNpZ24tc3lzdGVtLmF0b21zIHtcbiAgLm14LWJ1dHRvbiB7XG4gICAgLS1vdXRsaW5lLW9mZnNldDogMXB4O1xuXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgaW5saW5lLXNpemU6IGZpdC1jb250ZW50O1xuICAgIGdhcDogdmFyKC0tYnV0dG9uLWdhcCwgdmFyKC0tc3BhY2luZy1zKSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1idXR0b24tZm9udC1zaXplLCB2YXIoLS1mb250LXNpemUpKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtdWkpO1xuICAgIGJvcmRlcjogdmFyKC0tbGluZS13aWR0aCwgMnB4KSBzb2xpZFxuICAgICAgdmFyKC0tbGluZS1jb2xvdXIsIHZhcigtLWNvbG91ci1ib3JkZXIpKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMsIHZhcigtLWJvcmRlci1yYWRpdXMtbCkpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXZlcnRpY2FsLXBhZGRpbmcsIHZhcigtLXNwYWNpbmcteHhzKSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWhvcml6b250YWwtcGFkZGluZywgdmFyKC0tc3BhY2luZy1tKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZCwgdmFyKC0tY29sb3VyLWJhY2tncm91bmQpKTtcbiAgICBjb2xvcjogdmFyKC0tZm9yZWdyb3VuZCwgdmFyKC0tY29sb3VyLWZvcmVncm91bmQpKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cbiAgfVxuXG4gIC5teC1idXR0b24tLWZ1bGwtd2lkdGgge1xuICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLm14LWJ1dHRvbi0tbGFyZ2Uge1xuICAgIC0tdmVydGljYWwtcGFkZGluZzogdmFyKC0tc3BhY2luZy1zKTtcbiAgICAtLWhvcml6b250YWwtcGFkZGluZzogdmFyKC0tc3BhY2luZy1sKTtcbiAgfVxuXG4gIC5teC1idXR0b24tLXNtYWxsIHtcbiAgICAtLWJ1dHRvbi1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICAtLXZlcnRpY2FsLXBhZGRpbmc6IHZhcigtLXNwYWNpbmcteHh4cyk7XG4gICAgLS1ob3Jpem9udGFsLXBhZGRpbmc6IHZhcigtLXNwYWNpbmctcyk7XG4gIH1cblxuICAubXgtYnV0dG9uLS1pY29uLW9ubHkge1xuICAgIGlubGluZS1zaXplOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBibG9jay1zaXplOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtcm91bmQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGlubGluZS1zaXplOiAxMDAlO1xuICAgICAgYmxvY2stc2l6ZTogMTAwJTtcbiAgICAgIG1hc2stc2l6ZTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG5cbiAgICAmOmhhcygubXgtaWNvbikge1xuICAgICAgcGxhY2UtY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCdXR0b25zXG4gKi9cblxuQGxheWVyIGRlc2lnbi1zeXN0ZW0uYXRvbXMge1xuICAubXgtYnV0dG9uLS1kYXJrIHtcbiAgICAtLWxpbmUtY29sb3VyOiB2YXIoLS1jb2xvdXItbGluayk7XG4gICAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvdXItbGluayk7XG4gICAgLS1mb3JlZ3JvdW5kOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZC1yZXZlcnNlKTtcblxuICAgICYubXgtYnV0dG9uLS1vdXRsaW5lIHtcbiAgICAgIC0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAtLWZvcmVncm91bmQ6IHZhcigtLWNvbG91ci1wcmltYXJ5KTtcbiAgICB9XG4gIH1cblxuICAubXgtYnV0dG9uLS1saWdodCB7XG4gICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvdXIsIHZhcigtLWNvbG91ci1saW5rKSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICAubXgtYnV0dG9uLS1kZXN0cnVjdGl2ZSB7XG4gICAgLS1saW5lLWNvbG91cjogdmFyKC0tY29sb3VyLWVycm9yKTtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLWNvbG91ci1lcnJvcik7XG4gICAgLS1mb3JlZ3JvdW5kOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZC1yZXZlcnNlKTtcblxuICAgICYubXgtYnV0dG9uLS1vdXRsaW5lIHtcbiAgICAgIC0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAtLWZvcmVncm91bmQ6IHZhcigtLWNvbG91ci1lcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLm14LWJ1dHRvbi0td2hpdGUge1xuICAgIC0tbGluZS1jb2xvdXI6IHZhcigtLWNvbG91ci1mb3JlZ3JvdW5kLXJldmVyc2UpO1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0tY29sb3VyLWZvcmVncm91bmQtcmV2ZXJzZSk7XG4gICAgLS1mb3JlZ3JvdW5kOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZCk7XG5cbiAgICAmLm14LWJ1dHRvbi0tb3V0bGluZSB7XG4gICAgICAtLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgLS1mb3JlZ3JvdW5kOiB2YXIoLS1jb2xvdXItZm9yZWdyb3VuZC1yZXZlcnNlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
|
package/dist/build/card.css
CHANGED
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
|
|
48
48
|
.mx-card:has(.mx-card__media) {
|
|
49
49
|
--card-gap: var(--gap-l);
|
|
50
|
+
--card-alignment: center;
|
|
50
51
|
|
|
51
52
|
grid-template: "media content" 1fr / 1fr 1fr;
|
|
52
53
|
|
|
@@ -85,14 +86,14 @@
|
|
|
85
86
|
|
|
86
87
|
.mx-card:has(.mx-card__media) .mx-card__content {
|
|
87
88
|
grid-area: content;
|
|
88
|
-
align-self:
|
|
89
|
-
align-self: var(--align-content,
|
|
89
|
+
align-self: stretch;
|
|
90
|
+
align-self: var(--align-content, var(--card-alignment, stretch));
|
|
90
91
|
}
|
|
91
92
|
|
|
92
93
|
.mx-card:has(.mx-card__media) .mx-card__media {
|
|
93
94
|
grid-area: media;
|
|
94
|
-
align-self:
|
|
95
|
-
align-self: var(--align-media,
|
|
95
|
+
align-self: stretch;
|
|
96
|
+
align-self: var(--align-media, var(--card-alignment, stretch));
|
|
96
97
|
inline-size: 100%;
|
|
97
98
|
}
|
|
98
99
|
|
|
@@ -157,4 +158,4 @@
|
|
|
157
158
|
}
|
|
158
159
|
}
|
|
159
160
|
|
|
160
|
-
/*# sourceMappingURL=data:application/json;base64,
|
|
161
|
+
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhcmQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztFQUVFOztBQUVGO0VBQ0U7SUFDRSxnQkFBZ0I7SUFDaEIsYUFBYTtJQUNiLHFDQUFnQztJQUFoQyxnQ0FBZ0M7RUFnR2xDOztJQTlGRTtNQUNFLG1DQUFtQztJQXVCckM7O01BckJFOztJQUhGO1FBSUksbUVBQW1FO0lBb0J2RTtNQW5CRTs7TUFFQTtRQUNFLDREQUE0RDtRQUM1RCwrREFBK0Q7TUFDakU7O01BRUE7UUFDRSxpRUFBaUU7TUFDbkU7O01BRUE7UUFDRSw0REFBNEQ7UUFDNUQsaUVBQWlFO01BQ25FOztNQUVBO1FBQ0UscUJBQXFCO01BQ3ZCOztJQUdGO01BQ0UsMENBQTBDO0lBOEQ1Qzs7TUE1REU7O0lBSEY7UUFJSSx3QkFBd0I7UUFDeEIsd0JBQXdCOztRQUV4Qiw0Q0FHRzs7UUFISDs7O1dBR0c7SUFxRFA7O1FBbkRJO1VBQ0Usb0NBQW9DO1VBQ3BDLDhCQUFvRTtVQUFwRSxvRUFBb0U7UUFDdEU7TUFDRjs7TUFFQTs7SUFsQkY7UUFtQkksdUNBQXVDO0lBNEMzQztNQTNDRTtRQUdFO1VBQ0U7WUFDRSxpRUFBaUU7VUFDbkU7O1VBRUE7WUFDRSx1QkFBdUI7VUFDekI7O1VBRUE7WUFDRSxxQkFBcUI7VUFDdkI7UUFDRjs7TUFHRjtRQUNFLGtCQUFrQjtRQUNsQixtQkFBZ0U7UUFBaEUsZ0VBQWdFO01BQ2xFOztNQUVBO1FBQ0UsZ0JBQWdCO1FBQ2hCLG1CQUE4RDtRQUE5RCw4REFBOEQ7UUFDOUQsaUJBQWlCO01BUW5COztRQU5FO1VBQ0UsMEJBQTBCO1VBQzFCLG1DQUFtQztVQUNuQyxvQkFBaUI7YUFBakIsaUJBQWlCO1VBQ2pCLGlCQUFpQjtRQUNuQjs7TUFHRjtRQUNFLGdCQUFnQjtNQUNsQjs7TUFFQTtRQUNFLGdCQUFnQjtNQUNsQjs7SUFHRjtNQUNFLGlCQUFpQjtJQUNuQjs7RUFHRjtJQUNFLHdCQUF3QjtFQUMxQjtBQUNGOztBQUVBOztFQUVFOztBQUVGO0VBQ0U7O0lBRUUsNEJBQW1EO0lBQW5ELG1EQUFtRDtJQUNuRCxtQkFBbUI7RUFDckI7QUFDRjs7QUFFQTs7RUFFRTs7QUFFRjtJQUVJO01BQ0UsY0FBYztJQUNoQjs7RUFHRjtJQUNFLGtCQUFrQjtFQVVwQjs7SUFSRTtNQUNFLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsb0JBQW9CO01BQ3BCLHFCQUFxQjtNQUNyQixpQkFBaUI7TUFDakIsZ0JBQWdCO0lBQ2xCO0FBRUoiLCJmaWxlIjoiY2FyZC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnRlbnQgQ2FyZFxuICovXG5cbkBsYXllciBkZXNpZ24tc3lzdGVtLmNvbXBvbmVudHMge1xuICAubXgtY2FyZCB7XG4gICAgYmxvY2stc2l6ZTogMTAwJTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdmFyKC0tY2FyZC1nYXAsIHZhcigtLWdhcCkpO1xuXG4gICAgJltjbGFzcyo9XCJteC1iYWNrZ3JvdW5kLS1cIl0ge1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgIEBjb250YWluZXIgKG1pbi13aWR0aDogdG9rZW4oXCJicmVha3BvaW50LmNvbnRlbnRDYXJkXCIpKSB7XG4gICAgICAgIC0tY29udGVudC1taW4tc3BhY2luZzogdmFyKC0tY29udGVudC1tYXgtc3BhY2luZywgdmFyKC0tc3BhY2luZy1tKSk7XG4gICAgICB9XG5cbiAgICAgICYgLm14LWNhcmRfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tY29udGVudC1taW4tc3BhY2luZywgdmFyKC0tc3BhY2luZy1zKSk7XG4gICAgICAgIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1jb250ZW50LW1pbi1zcGFjaW5nLCB2YXIoLS1zcGFjaW5nLXMpKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmhhcygubXgtY2FyZF9fbWVkaWEsIC5teC1jYXJkX19pY29uKSkgLm14LWNhcmRfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiB2YXIoLS1jb250ZW50LW1pbi1zcGFjaW5nLCB2YXIoLS1zcGFjaW5nLXMpKTtcbiAgICAgIH1cblxuICAgICAgJiAubXgtY2FyZF9faWNvbiB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1jb250ZW50LW1pbi1zcGFjaW5nLCB2YXIoLS1zcGFjaW5nLXMpKTtcbiAgICAgICAgcGFkZGluZy1ibG9jay1zdGFydDogdmFyKC0tY29udGVudC1taW4tc3BhY2luZywgdmFyKC0tc3BhY2luZy1zKSk7XG4gICAgICB9XG5cbiAgICAgICYubXgtYmFja2dyb3VuZC0tYm94IHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aGFzKC5teC1jYXJkX19tZWRpYSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZTogXCJtZWRpYVwiIFwiY29udGVudFwiIDFmciAvIDFmcjtcblxuICAgICAgQGNvbnRhaW5lciAobWluLXdpZHRoOiB0b2tlbihcImJyZWFrcG9pbnQuY29udGVudENhcmRcIikpIHtcbiAgICAgICAgLS1jYXJkLWdhcDogdmFyKC0tZ2FwLWwpO1xuICAgICAgICAtLWNhcmQtYWxpZ25tZW50OiBjZW50ZXI7XG5cbiAgICAgICAgZ3JpZC10ZW1wbGF0ZTogXCJtZWRpYSBjb250ZW50XCIgMWZyIC8gdmFyKC0tbWVkaWEtY29sLCAxZnIpIHZhcihcbiAgICAgICAgICAgIC0tY29udGVudC1jb2wsXG4gICAgICAgICAgICAxZnJcbiAgICAgICAgICApO1xuXG4gICAgICAgICYubXgtY2FyZC0tcmV2ZXJzZWQge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudCBtZWRpYVwiO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tY29udGVudC1jb2wsIDFmcikgdmFyKC0tbWVkaWEtY29sLCAxZnIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBjb250YWluZXIgKG1pbi13aWR0aDogdG9rZW4oXCJicmVha3BvaW50LmxcIikpIHtcbiAgICAgICAgLS1jYXJkLWdhcDogdmFyKC0tbGFyZ2UtY2FyZC1nYXAsIDZyZW0pO1xuICAgICAgfVxuXG4gICAgICAmW2NsYXNzKj1cIm14LWJhY2tncm91bmQtLVwiXSB7XG4gICAgICAgIEBjb250YWluZXIgKG1pbi13aWR0aDogdG9rZW4oXCJicmVha3BvaW50LmNvbnRlbnRDYXJkXCIpKSB7XG4gICAgICAgICAgJiAubXgtY2FyZF9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiB2YXIoLS1jb250ZW50LW1pbi1zcGFjaW5nLCB2YXIoLS1zcGFjaW5nLXMpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOndoZXJlKDpub3QoLm14LWNhcmQtLXJldmVyc2VkKSkgLm14LWNhcmRfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5teC1jYXJkLS1yZXZlcnNlZCAubXgtY2FyZF9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgLm14LWNhcmRfX2NvbnRlbnQge1xuICAgICAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gICAgICAgIGFsaWduLXNlbGY6IHZhcigtLWFsaWduLWNvbnRlbnQsIHZhcigtLWNhcmQtYWxpZ25tZW50LCBzdHJldGNoKSk7XG4gICAgICB9XG5cbiAgICAgICYgLm14LWNhcmRfX21lZGlhIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBtZWRpYTtcbiAgICAgICAgYWxpZ24tc2VsZjogdmFyKC0tYWxpZ24tbWVkaWEsIHZhcigtLWNhcmQtYWxpZ25tZW50LCBzdHJldGNoKSk7XG4gICAgICAgIGlubGluZS1zaXplOiAxMDAlO1xuXG4gICAgICAgICYgaW1nIHtcbiAgICAgICAgICBhc3BlY3QtcmF0aW86IHZhcigtLXJhdGlvKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmIC5teC1za2VsZXRvbi0tYmcge1xuICAgICAgICBncmlkLWFyZWE6IG1lZGlhO1xuICAgICAgfVxuXG4gICAgICAmIC5teC1jYXJkX19pY29uIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBtZWRpYTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5teC1saW5rLWxpc3Qge1xuICAgICAgaW5saW5lLXNpemU6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm14LWNhcmRfX2NvbnRlbnQgPiBhOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogYXV0bztcbiAgfVxufVxuXG4vKipcbiAqIENvbnRlbnQgQ2FyZCBHcmlkXG4gKi9cblxuQGxheWVyIGRlc2lnbi1zeXN0ZW0uY29tcG9uZW50cyB7XG4gIC5teC1ncmlkOmhhcyg+ICo6bnRoLWNoaWxkKDIpOmxhc3QtY2hpbGQpXG4gICAgPiA6aXMoLm14LWNhcmQsIC5teC1jb250YWluZXI6aGFzKC5teC1jYXJkKSkge1xuICAgIGlubGluZS1zaXplOiBtaW4oMTAwJSwgdmFyKC0tbWF4LWNhcmQtd2lkdGgsIDM3Y2gpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5cbi8qKlxuICogQ29udGVudCBDYXJkIExpbmtlZFxuICovXG5cbkBsYXllciBkZXNpZ24tc3lzdGVtLmNvbXBvbmVudHMge1xuICBhW2hyZWZdLm14LWNhcmQge1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgLm14LWNhcmQtLWJsb2NrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmIGE6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6IDA7XG4gICAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgICAgIGJsb2NrLXNpemU6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iXX0= */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion-O-huO4At.js","sources":["../../../src/Component/Accordion/Elements/Accordion.ts"],"sourcesContent":["/**\n * Accordion\n * @file Support opening on hash, adding an ID attribute and toggling on print.\n */\n\nimport { makeAnchor } from \"../../../Utility/utilities\"\n\nexport default class Accordion extends HTMLElement {\n internals_: ElementInternals\n controller: AbortController\n\n constructor() {\n super()\n this.internals_ = this.attachInternals()\n this.controller = new AbortController()\n }\n\n connectedCallback(): void {\n if (!this.details || !this.trigger) return\n\n const { signal }: AbortController = this.controller\n document.addEventListener(\"beforeprint\", this.handleOpen, {\n signal,\n })\n document.addEventListener(\"afterprint\", this.handleClose, {\n signal,\n })\n this.handleHash()\n document.addEventListener(\"hashchange\", this.handleHash, { signal })\n }\n\n disconnectedCallback(): void {\n this.controller.abort()\n }\n\n handleOpen = (): void => {\n if (!this.details) return\n this.details.open = true\n }\n\n handleClose = (): void => {\n if (!this.details) return\n this.details.open = false\n }\n\n handleHash = (): void => {\n const { hash }: Location = window.location\n if (hash && hash === `#${this.details?.id}`) {\n this.handleOpen()\n }\n }\n\n get details(): HTMLDetailsElement | null {\n const details: HTMLDetailsElement | null = this.querySelector(\"details\")\n if (!details) {\n throw new Error(`${this.localName} must contain a <details> element.`)\n }\n details.id = details.id || this.generatedId()\n return details\n }\n\n get trigger(): HTMLElement | null {\n const trigger: HTMLElement | null = this.querySelector(\"summary\")\n if (!trigger) {\n throw new Error(`${this.localName} must contain a <summary> element.`)\n }\n return trigger\n }\n\n generatedId = (): string => {\n const string: string | undefined = this.trigger?.textContent?.trim()\n return !string ? \"\" : makeAnchor(string)\n }\n}\n\ncustomElements.define(\"mx-accordion\", Accordion)\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"mx-accordion\": Accordion\n }\n}\n"],"names":[],"mappings":";AAOA,MAAqB,kBAAkB,YAAY;AAAA,EAIjD,cAAc;
|
|
1
|
+
{"version":3,"file":"Accordion-O-huO4At.js","sources":["../../../src/Component/Accordion/Elements/Accordion.ts"],"sourcesContent":["/**\n * Accordion\n * @file Support opening on hash, adding an ID attribute and toggling on print.\n */\n\nimport { makeAnchor } from \"../../../Utility/utilities\"\n\nexport default class Accordion extends HTMLElement {\n internals_: ElementInternals\n controller: AbortController\n\n constructor() {\n super()\n this.internals_ = this.attachInternals()\n this.controller = new AbortController()\n }\n\n connectedCallback(): void {\n if (!this.details || !this.trigger) return\n\n const { signal }: AbortController = this.controller\n document.addEventListener(\"beforeprint\", this.handleOpen, {\n signal,\n })\n document.addEventListener(\"afterprint\", this.handleClose, {\n signal,\n })\n this.handleHash()\n document.addEventListener(\"hashchange\", this.handleHash, { signal })\n }\n\n disconnectedCallback(): void {\n this.controller.abort()\n }\n\n handleOpen = (): void => {\n if (!this.details) return\n this.details.open = true\n }\n\n handleClose = (): void => {\n if (!this.details) return\n this.details.open = false\n }\n\n handleHash = (): void => {\n const { hash }: Location = window.location\n if (hash && hash === `#${this.details?.id}`) {\n this.handleOpen()\n }\n }\n\n get details(): HTMLDetailsElement | null {\n const details: HTMLDetailsElement | null = this.querySelector(\"details\")\n if (!details) {\n throw new Error(`${this.localName} must contain a <details> element.`)\n }\n details.id = details.id || this.generatedId()\n return details\n }\n\n get trigger(): HTMLElement | null {\n const trigger: HTMLElement | null = this.querySelector(\"summary\")\n if (!trigger) {\n throw new Error(`${this.localName} must contain a <summary> element.`)\n }\n return trigger\n }\n\n generatedId = (): string => {\n const string: string | undefined = this.trigger?.textContent?.trim()\n return !string ? \"\" : makeAnchor(string)\n }\n}\n\ncustomElements.define(\"mx-accordion\", Accordion)\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"mx-accordion\": Accordion\n }\n}\n"],"names":[],"mappings":";AAOA,MAAqB,kBAAkB,YAAY;AAAA,EAIjD,cAAc;AACZ,UAAA;AAuBF,SAAA,aAAa,MAAY;AACvB,UAAI,CAAC,KAAK,QAAS;AACnB,WAAK,QAAQ,OAAO;AAAA,IACtB;AAEA,SAAA,cAAc,MAAY;AACxB,UAAI,CAAC,KAAK,QAAS;AACnB,WAAK,QAAQ,OAAO;AAAA,IACtB;AAEA,SAAA,aAAa,MAAY;AACvB,YAAM,EAAE,SAAmB,OAAO;AAClC,UAAI,QAAQ,SAAS,IAAI,KAAK,SAAS,EAAE,IAAI;AAC3C,aAAK,WAAA;AAAA,MACP;AAAA,IACF;AAmBA,SAAA,cAAc,MAAc;AAC1B,YAAM,SAA6B,KAAK,SAAS,aAAa,KAAA;AAC9D,aAAO,CAAC,SAAS,KAAK,WAAW,MAAM;AAAA,IACzC;AA3DE,SAAK,aAAa,KAAK,gBAAA;AACvB,SAAK,aAAa,IAAI,gBAAA;AAAA,EACxB;AAAA,EAEA,oBAA0B;AACxB,QAAI,CAAC,KAAK,WAAW,CAAC,KAAK,QAAS;AAEpC,UAAM,EAAE,WAA4B,KAAK;AACzC,aAAS,iBAAiB,eAAe,KAAK,YAAY;AAAA,MACxD;AAAA,IAAA,CACD;AACD,aAAS,iBAAiB,cAAc,KAAK,aAAa;AAAA,MACxD;AAAA,IAAA,CACD;AACD,SAAK,WAAA;AACL,aAAS,iBAAiB,cAAc,KAAK,YAAY,EAAE,QAAQ;AAAA,EACrE;AAAA,EAEA,uBAA6B;AAC3B,SAAK,WAAW,MAAA;AAAA,EAClB;AAAA,EAmBA,IAAI,UAAqC;AACvC,UAAM,UAAqC,KAAK,cAAc,SAAS;AACvE,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI,MAAM,GAAG,KAAK,SAAS,oCAAoC;AAAA,IACvE;AACA,YAAQ,KAAK,QAAQ,MAAM,KAAK,YAAA;AAChC,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,UAA8B;AAChC,UAAM,UAA8B,KAAK,cAAc,SAAS;AAChE,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI,MAAM,GAAG,KAAK,SAAS,oCAAoC;AAAA,IACvE;AACA,WAAO;AAAA,EACT;AAMF;AAEA,eAAe,OAAO,gBAAgB,SAAS;"}
|
|
@@ -50,11 +50,13 @@ class DisclosureWidget {
|
|
|
50
50
|
const { isOpen } = this;
|
|
51
51
|
const { shouldPreventDefault } = this.options;
|
|
52
52
|
switch (key) {
|
|
53
|
+
// Down/Enter should open it.
|
|
53
54
|
case "ArrowDown":
|
|
54
55
|
case "Enter":
|
|
55
56
|
if (!isOpen) this.handleToggle();
|
|
56
57
|
if (shouldPreventDefault) event.preventDefault();
|
|
57
58
|
break;
|
|
59
|
+
// Up/Esc should close it.
|
|
58
60
|
case "ArrowUp":
|
|
59
61
|
case "Escape":
|
|
60
62
|
if (isOpen) this.handleToggle();
|
|
@@ -121,4 +123,4 @@ class DisclosureWidget {
|
|
|
121
123
|
export {
|
|
122
124
|
DisclosureWidget as D
|
|
123
125
|
};
|
|
124
|
-
//# sourceMappingURL=disclosure-widget-
|
|
126
|
+
//# sourceMappingURL=disclosure-widget-DVpnRsTI.js.map
|
package/dist/build/chunks/{disclosure-widget-CtNx0f8p.js.map → disclosure-widget-DVpnRsTI.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disclosure-widget-
|
|
1
|
+
{"version":3,"file":"disclosure-widget-DVpnRsTI.js","sources":["../../../src/Utility/Elements/disclosure-widget.ts"],"sourcesContent":["/**\n * Class for a generic Disclosure Widget.\n */\nimport { makeAnchor } from \"../utilities\"\n\ntype DisclosureWidgetOptions = {\n attribute?: string\n shouldPreventDefault?: boolean\n setInitialAttribute?: boolean\n clickEvent?: \"click\" | \"mouseover\"\n}\n\nexport type DisclosureWidgetEvent = {\n isOpen: boolean\n id: string\n options: DisclosureWidgetOptions\n target: Element\n}\n\nexport default class DisclosureWidget {\n options: DisclosureWidgetOptions\n context: Document | Element\n trigger: Element & { disclosureWidget?: DisclosureWidget }\n element: Element\n id: string\n isOpen?: boolean\n attached?: boolean\n\n constructor(\n trigger: Element,\n element: Element,\n overrides?: DisclosureWidgetOptions,\n context: Element | Document = document,\n ) {\n if (!trigger) {\n throw new Error(\"toggle is required.\")\n }\n if (!element) {\n throw new Error(\"element is required.\")\n }\n const options: DisclosureWidgetOptions = {\n attribute: \"inert\",\n shouldPreventDefault: true,\n setInitialAttribute: true,\n clickEvent: \"click\",\n }\n\n this.options = { ...options, ...overrides }\n this.context = context || document\n this.trigger = trigger\n this.element = element\n this.id = this.element.id || this.generatedId()\n }\n\n init = (): void => {\n if (Object.prototype.hasOwnProperty.call(this.trigger, \"disclosureWidget\"))\n return\n const { attribute, setInitialAttribute } = this.options\n this.trigger.disclosureWidget = this\n if (setInitialAttribute) this.element.setAttribute(attribute, \"\")\n this.attach()\n }\n\n handleToggle = (): void => {\n const { attribute, setInitialAttribute } = this.options\n this.element.toggleAttribute(attribute)\n const hasAttribute: boolean = this.element.hasAttribute(attribute)\n this.isOpen = setInitialAttribute ? !hasAttribute : hasAttribute\n this.trigger.setAttribute(\"aria-expanded\", String(this.isOpen))\n const newEvent: CustomEvent<DisclosureWidgetEvent> = new CustomEvent(\n \"disclosure-toggle\",\n {\n bubbles: true,\n cancelable: true,\n detail: {\n isOpen: this.isOpen,\n id: this.id,\n options: this.options,\n target: this.element,\n },\n },\n )\n this.trigger.dispatchEvent(newEvent)\n }\n\n handleMouse = (event: MouseEvent): void => {\n const { currentTarget, type, relatedTarget } = event\n\n if (type === \"mouseover\" || type === \"mouseout\") {\n const triggerParent = this.trigger.parentNode\n if (\n triggerParent !== currentTarget ||\n triggerParent.contains(relatedTarget as HTMLElement)\n )\n return\n } else if (this.trigger !== currentTarget) return\n\n const { shouldPreventDefault } = this.options\n this.handleToggle()\n if (shouldPreventDefault) {\n event.preventDefault()\n event.stopPropagation()\n }\n }\n\n handleKeyboard = (event: KeyboardEvent): void => {\n const { key, target } = event\n if (this.trigger !== target) return\n const { isOpen } = this\n const { shouldPreventDefault } = this.options\n\n switch (key) {\n // Down/Enter should open it.\n case \"ArrowDown\":\n case \"Enter\":\n if (!isOpen) this.handleToggle()\n if (shouldPreventDefault) event.preventDefault()\n break\n\n // Up/Esc should close it.\n case \"ArrowUp\":\n case \"Escape\":\n if (isOpen) this.handleToggle()\n if (shouldPreventDefault) event.preventDefault()\n break\n\n default:\n break\n }\n }\n\n attach = (): void => {\n if (this.attached) return\n const { clickEvent } = this.options\n if (clickEvent === \"mouseover\") {\n const parent = this.trigger.parentNode\n parent.addEventListener(\"mouseover\", this.handleMouse)\n parent.addEventListener(\"mouseout\", this.handleMouse)\n } else {\n this.trigger.addEventListener(\"click\", this.handleMouse)\n }\n this.trigger.addEventListener(\"keydown\", this.handleKeyboard)\n\n this.trigger.setAttribute(\"aria-expanded\", \"false\")\n if (!this.trigger.hasAttribute(\"aria-controls\"))\n this.trigger.setAttribute(\"aria-controls\", this.id)\n this.attached = true\n }\n\n detach = (): void => {\n if (!this.attached) return\n if (this.isOpen) {\n this.handleToggle()\n }\n const { clickEvent } = this.options\n if (clickEvent === \"mouseover\") {\n const parent = this.trigger.parentNode\n parent.removeEventListener(\"mouseover\", this.handleMouse)\n parent.removeEventListener(\"mouseout\", this.handleMouse)\n } else {\n this.trigger.removeEventListener(\"click\", this.handleMouse)\n }\n this.trigger.removeEventListener(\"keydown\", this.handleKeyboard)\n\n this.trigger.removeAttribute(\"aria-expanded\")\n this.attached = false\n }\n\n generatedId = (): string => {\n const string: string | undefined = this.trigger?.textContent?.trim()\n return !string ? \"\" : makeAnchor(string)\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { m as makeAnchor } from "./utilities-DXELy_An.js";
|
|
2
|
-
import { K as Keyboard } from "./keyboard-
|
|
2
|
+
import { K as Keyboard } from "./keyboard-rvZ4dfGF.js";
|
|
3
3
|
class DropMenu extends HTMLElement {
|
|
4
4
|
constructor() {
|
|
5
5
|
super();
|
|
@@ -45,7 +45,7 @@ class DropMenu extends HTMLElement {
|
|
|
45
45
|
async connectedCallback() {
|
|
46
46
|
if (!this.menu || !this.trigger) return;
|
|
47
47
|
if (!("anchorName" in document.documentElement.style)) {
|
|
48
|
-
const { default: Polyfills } = await import("./polyfills-
|
|
48
|
+
const { default: Polyfills } = await import("./polyfills-C-B7iqDG.js");
|
|
49
49
|
new Polyfills(this.menu);
|
|
50
50
|
}
|
|
51
51
|
if (!Object.hasOwn(HTMLElement, "popover")) {
|
|
@@ -129,4 +129,4 @@ customElements.define("mx-dropmenu", DropMenu);
|
|
|
129
129
|
export {
|
|
130
130
|
DropMenu as D
|
|
131
131
|
};
|
|
132
|
-
//# sourceMappingURL=drop-menu.entry-
|
|
132
|
+
//# sourceMappingURL=drop-menu.entry-B4TtnC50.js.map
|
package/dist/build/chunks/{drop-menu.entry-BEhZ_Je3.js.map → drop-menu.entry-B4TtnC50.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drop-menu.entry-
|
|
1
|
+
{"version":3,"file":"drop-menu.entry-B4TtnC50.js","sources":["../../../src/Component/DropMenu/Elements/DropMenu.ts"],"sourcesContent":["/**\n * DropMenu\n * @file Create a DropMenu using the Popover and Anchor APIs\n */\n\nimport { Keyboard, makeAnchor } from \"../../../Utility/utilities\"\n\nexport type DropMenuEvent = CustomEvent<{\n event: MouseEvent | KeyboardEvent\n target: HTMLButtonElement | HTMLAnchorElement\n}>\n\nexport default class DropMenu extends HTMLElement {\n internals_: ElementInternals\n controller: AbortController\n keyboard: Keyboard = new Keyboard()\n closeOnClick: boolean\n\n constructor() {\n super()\n this.internals_ = this.attachInternals()\n this.controller = new AbortController()\n }\n\n async connectedCallback() {\n if (!this.menu || !this.trigger) return\n\n // Polyfill anchor (everywhere so far).\n if (!(\"anchorName\" in document.documentElement.style)) {\n const { default: Polyfills } = await import(\"../polyfills.js\")\n new Polyfills(this.menu)\n }\n // Polyfill popover (FF only)\n if (!Object.hasOwn(HTMLElement, \"popover\")) {\n await import(\"@oddbird/popover-polyfill\")\n }\n this.closeOnClick = this.hasAttribute(\"closeonclick\")\n\n const { signal }: AbortController = this.controller\n document.addEventListener(\n \"click\",\n (event: MouseEvent): void => {\n const { target } = event\n if (\n (target as HTMLElement) !== this.menu &&\n ![...this.items].includes(\n target as HTMLButtonElement | HTMLAnchorElement,\n )\n )\n return\n this.handleSelect(event)\n event.preventDefault()\n },\n {\n signal,\n },\n )\n\n document.addEventListener(\n \"keydown\",\n (event: KeyboardEvent): void => {\n const { target, key } = event\n if (\n (target as HTMLElement) !== this.menu &&\n ![...this.items].includes(\n target as HTMLButtonElement | HTMLAnchorElement,\n )\n )\n return\n if (key === \"Enter\") this.handleSelect(event)\n event.preventDefault()\n },\n {\n signal,\n },\n )\n\n this.keyboard.attachEventListeners(signal)\n this.menu.addEventListener(\"focusin\", this.attachKeyboardMenu, {\n signal,\n })\n this.menu.addEventListener(\"focusout\", this.detachKeyboardMenu, {\n signal,\n })\n this.menu.addEventListener(\"toggle\", this.handleToggle, {\n signal,\n })\n }\n\n disconnectedCallback(): void {\n this.controller.abort()\n this.keyboard.detachMenu()\n }\n\n handleSelect = (event: MouseEvent | KeyboardEvent): void => {\n const target = event.target as HTMLButtonElement | HTMLAnchorElement\n this.items.forEach(item => {\n if (!(item instanceof HTMLButtonElement)) return\n item.setAttribute(\"aria-checked\", String(item === target))\n })\n const newEvent: DropMenuEvent = new CustomEvent(\"drop-menu-select\", {\n bubbles: true,\n cancelable: true,\n detail: {\n event,\n target,\n },\n })\n this.menu.dispatchEvent(newEvent)\n if (this.closeOnClick) this.menu.togglePopover()\n }\n\n handleToggle = ({ newState }: ToggleEvent): void => {\n const handleClose = () => this.menu.togglePopover()\n if (newState === \"open\") {\n this.keyboard.attachPopup(this.menu.id, handleClose)\n } else {\n this.keyboard.detachPopup(this.menu.id)\n }\n }\n\n attachKeyboardMenu = (): void => {\n this.keyboard.attachMenu(this.menu, this.items)\n }\n\n detachKeyboardMenu = (): void => {\n this.keyboard.detachMenu()\n }\n\n get menu(): HTMLDivElement | null {\n const menu: HTMLDivElement | null = this.querySelector(\"[popover]\")\n if (!menu) {\n throw new Error(`${this.localName} must contain a <div popover> element.`)\n }\n menu.id = menu.id || this.generatedId()\n return menu\n }\n\n get items(): NodeListOf<HTMLButtonElement | HTMLAnchorElement> {\n const items: NodeListOf<HTMLButtonElement | HTMLAnchorElement> =\n this.menu.querySelectorAll(\":scope > *\")\n if (!items) {\n throw new Error(`${this.localName} must contain some menu items.`)\n }\n return items\n }\n\n get trigger(): HTMLButtonElement | null {\n const trigger: HTMLButtonElement | null = this.querySelector(\n `[popovertarget=${this.menu?.id}]`,\n )\n if (!trigger) {\n throw new Error(\n `${this.localName} must contain a <button popovertarget=\"${this.menu.id}\">`,\n )\n }\n return trigger\n }\n\n generatedId = (): string => {\n const string: string | undefined = this.trigger?.textContent?.trim()\n return !string ? \"\" : makeAnchor(string)\n }\n}\n\ncustomElements.define(\"mx-dropmenu\", DropMenu)\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"mx-dropmenu\": DropMenu\n }\n}\n"],"names":[],"mappings":";;AAYA,MAAqB,iBAAiB,YAAY;AAAA,EAMhD,cAAc;AACZ,UAAA;AAJF,SAAA,WAAqB,IAAI,SAAA;AA+EzB,SAAA,eAAe,CAAC,UAA4C;AAC1D,YAAM,SAAS,MAAM;AACrB,WAAK,MAAM,QAAQ,CAAA,SAAQ;AACzB,YAAI,EAAE,gBAAgB,mBAAoB;AAC1C,aAAK,aAAa,gBAAgB,OAAO,SAAS,MAAM,CAAC;AAAA,MAC3D,CAAC;AACD,YAAM,WAA0B,IAAI,YAAY,oBAAoB;AAAA,QAClE,SAAS;AAAA,QACT,YAAY;AAAA,QACZ,QAAQ;AAAA,UACN;AAAA,UACA;AAAA,QAAA;AAAA,MACF,CACD;AACD,WAAK,KAAK,cAAc,QAAQ;AAChC,UAAI,KAAK,aAAc,MAAK,KAAK,cAAA;AAAA,IACnC;AAEA,SAAA,eAAe,CAAC,EAAE,eAAkC;AAClD,YAAM,cAAc,MAAM,KAAK,KAAK,cAAA;AACpC,UAAI,aAAa,QAAQ;AACvB,aAAK,SAAS,YAAY,KAAK,KAAK,IAAI,WAAW;AAAA,MACrD,OAAO;AACL,aAAK,SAAS,YAAY,KAAK,KAAK,EAAE;AAAA,MACxC;AAAA,IACF;AAEA,SAAA,qBAAqB,MAAY;AAC/B,WAAK,SAAS,WAAW,KAAK,MAAM,KAAK,KAAK;AAAA,IAChD;AAEA,SAAA,qBAAqB,MAAY;AAC/B,WAAK,SAAS,WAAA;AAAA,IAChB;AAgCA,SAAA,cAAc,MAAc;AAC1B,YAAM,SAA6B,KAAK,SAAS,aAAa,KAAA;AAC9D,aAAO,CAAC,SAAS,KAAK,WAAW,MAAM;AAAA,IACzC;AA9IE,SAAK,aAAa,KAAK,gBAAA;AACvB,SAAK,aAAa,IAAI,gBAAA;AAAA,EACxB;AAAA,EAEA,MAAM,oBAAoB;AACxB,QAAI,CAAC,KAAK,QAAQ,CAAC,KAAK,QAAS;AAGjC,QAAI,EAAE,gBAAgB,SAAS,gBAAgB,QAAQ;AACrD,YAAM,EAAE,SAAS,cAAc,MAAM,OAAO,yBAAiB;AAC7D,UAAI,UAAU,KAAK,IAAI;AAAA,IACzB;AAEA,QAAI,CAAC,OAAO,OAAO,aAAa,SAAS,GAAG;AAC1C,YAAM,OAAO,uBAA2B;AAAA,IAC1C;AACA,SAAK,eAAe,KAAK,aAAa,cAAc;AAEpD,UAAM,EAAE,WAA4B,KAAK;AACzC,aAAS;AAAA,MACP;AAAA,MACA,CAAC,UAA4B;AAC3B,cAAM,EAAE,WAAW;AACnB,YACG,WAA2B,KAAK,QACjC,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE;AAAA,UACf;AAAA,QAAA;AAGF;AACF,aAAK,aAAa,KAAK;AACvB,cAAM,eAAA;AAAA,MACR;AAAA,MACA;AAAA,QACE;AAAA,MAAA;AAAA,IACF;AAGF,aAAS;AAAA,MACP;AAAA,MACA,CAAC,UAA+B;AAC9B,cAAM,EAAE,QAAQ,IAAA,IAAQ;AACxB,YACG,WAA2B,KAAK,QACjC,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE;AAAA,UACf;AAAA,QAAA;AAGF;AACF,YAAI,QAAQ,QAAS,MAAK,aAAa,KAAK;AAC5C,cAAM,eAAA;AAAA,MACR;AAAA,MACA;AAAA,QACE;AAAA,MAAA;AAAA,IACF;AAGF,SAAK,SAAS,qBAAqB,MAAM;AACzC,SAAK,KAAK,iBAAiB,WAAW,KAAK,oBAAoB;AAAA,MAC7D;AAAA,IAAA,CACD;AACD,SAAK,KAAK,iBAAiB,YAAY,KAAK,oBAAoB;AAAA,MAC9D;AAAA,IAAA,CACD;AACD,SAAK,KAAK,iBAAiB,UAAU,KAAK,cAAc;AAAA,MACtD;AAAA,IAAA,CACD;AAAA,EACH;AAAA,EAEA,uBAA6B;AAC3B,SAAK,WAAW,MAAA;AAChB,SAAK,SAAS,WAAA;AAAA,EAChB;AAAA,EAqCA,IAAI,OAA8B;AAChC,UAAM,OAA8B,KAAK,cAAc,WAAW;AAClE,QAAI,CAAC,MAAM;AACT,YAAM,IAAI,MAAM,GAAG,KAAK,SAAS,wCAAwC;AAAA,IAC3E;AACA,SAAK,KAAK,KAAK,MAAM,KAAK,YAAA;AAC1B,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,QAA2D;AAC7D,UAAM,QACJ,KAAK,KAAK,iBAAiB,YAAY;AACzC,QAAI,CAAC,OAAO;AACV,YAAM,IAAI,MAAM,GAAG,KAAK,SAAS,gCAAgC;AAAA,IACnE;AACA,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,UAAoC;AACtC,UAAM,UAAoC,KAAK;AAAA,MAC7C,kBAAkB,KAAK,MAAM,EAAE;AAAA,IAAA;AAEjC,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI;AAAA,QACR,GAAG,KAAK,SAAS,0CAA0C,KAAK,KAAK,EAAE;AAAA,MAAA;AAAA,IAE3E;AACA,WAAO;AAAA,EACT;AAMF;AAEA,eAAe,OAAO,eAAe,QAAQ;"}
|
|
@@ -61,11 +61,13 @@ class Keyboard {
|
|
|
61
61
|
const activePopup = window.Mixtape.Popups ? window.Mixtape.Popups[window.Mixtape.Popups.length - 1] : null;
|
|
62
62
|
const target = event.target;
|
|
63
63
|
switch (event.key) {
|
|
64
|
+
// Escape always closes an open popup followed by any open popups.
|
|
64
65
|
case "Escape":
|
|
65
66
|
if (activePopup) {
|
|
66
67
|
activePopup.closefn();
|
|
67
68
|
}
|
|
68
69
|
break;
|
|
70
|
+
// Down/Right arrows navigate focus forward, with wrapping.
|
|
69
71
|
case "ArrowDown":
|
|
70
72
|
case "ArrowRight":
|
|
71
73
|
if (window.Mixtape.Menu?.items) {
|
|
@@ -73,6 +75,7 @@ class Keyboard {
|
|
|
73
75
|
this.moveFocus(target);
|
|
74
76
|
}
|
|
75
77
|
break;
|
|
78
|
+
// Up/Left arrows navigate focus backwards, with wrapping.
|
|
76
79
|
case "ArrowUp":
|
|
77
80
|
case "ArrowLeft":
|
|
78
81
|
if (window.Mixtape.Menu?.items) {
|
|
@@ -98,4 +101,4 @@ class Keyboard {
|
|
|
98
101
|
export {
|
|
99
102
|
Keyboard as K
|
|
100
103
|
};
|
|
101
|
-
//# sourceMappingURL=keyboard-
|
|
104
|
+
//# sourceMappingURL=keyboard-rvZ4dfGF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard-
|
|
1
|
+
{"version":3,"file":"keyboard-rvZ4dfGF.js","sources":["../../../src/Utility/Elements/keyboard.ts"],"sourcesContent":["/**\n * Class for Keyboard navigation helper.\n */\n\nexport default class Keyboard {\n constructor() {\n window.Mixtape = window.Mixtape || {}\n window.Mixtape.Popups = window.Mixtape.Popups || []\n window.Mixtape.Menu = window.Mixtape.Menu || {}\n }\n\n attachPopup = (id: string, closefn: () => void): void => {\n window.Mixtape.Popups.push({\n id,\n closefn,\n })\n }\n\n detachPopup = (id: string): void => {\n window.Mixtape.Popups = window.Mixtape.Popups.filter(item => item.id !== id)\n }\n\n attachMenu = (\n context: HTMLElement,\n items: NodeListOf<HTMLAnchorElement | HTMLButtonElement>,\n ): void => {\n window.Mixtape.Menu = {\n context,\n items,\n }\n }\n\n detachMenu = (): void => {\n window.Mixtape.Menu = null\n }\n\n getNextFocusableMenuItem = (\n active: number,\n back: boolean = false,\n ): number => {\n if (!back) {\n // If moving forward, it's the active index + 1, or 0 if we are at the\n // end of the menu.\n return window.Mixtape.Menu.items.length > active + 1 ? active + 1 : 0\n }\n // If moving back, it's the active index - 1, or the menu length if we\n // are at the start of the menu.\n return active === 0 ? window.Mixtape.Menu.items.length - 1 : active - 1\n }\n\n moveFocus = (target: HTMLElement, back: boolean = false): void => {\n if (!window.Mixtape.Menu.items) return\n let active: number = 0\n // Retrieve the active menu item by looping through the list of menu links.\n window.Mixtape.Menu.items.forEach((element, index): void => {\n if (element === target) {\n active = index\n }\n })\n let focus: number = this.getNextFocusableMenuItem(active, back)\n\n // Check if item is tabbable.\n // Some menus, like the secondary nav have hidden items that require a\n // toggle to be clicked before the items are tabbable. This allows invisible\n // menu items to be skipped when moving focus with the this.\n // Make sure tabbable.\n let tabbable: string =\n window.Mixtape.Menu.items[focus].getAttribute(\"tabindex\")\n if (tabbable !== \"-1\") {\n window.Mixtape.Menu.items[focus].focus()\n } else {\n // Loop through items until we find a visible one.\n while (tabbable === \"-1\") {\n focus = this.getNextFocusableMenuItem(focus, back)\n tabbable = window.Mixtape.Menu.items[focus].getAttribute(\"tabindex\")\n }\n window.Mixtape.Menu.items[focus].focus()\n }\n\n window.Mixtape.Menu.active = focus\n }\n\n handleGlobalClick = ({ target }: MouseEvent): void => {\n const activePopup = window.Mixtape.Popups\n ? window.Mixtape.Popups[window.Mixtape.Popups.length - 1]\n : null\n if (!activePopup) return\n\n // Click away from a popup to close it.\n // It's up to the popup class to preventDefault on it's contents to\n // stop this from being triggered.\n if (activePopup.id) {\n const popupEl: HTMLElement = document.querySelector(\n `#${activePopup.id}`,\n ).parentElement\n if (\n popupEl &&\n (target === popupEl || popupEl?.contains(target as HTMLElement))\n )\n return\n activePopup.closefn()\n }\n }\n\n handleGlobalKeydown = (event: KeyboardEvent): void => {\n const activePopup = window.Mixtape.Popups\n ? window.Mixtape.Popups[window.Mixtape.Popups.length - 1]\n : null\n const target = event.target as HTMLElement\n\n switch (event.key) {\n // Escape always closes an open popup followed by any open popups.\n case \"Escape\":\n if (activePopup) {\n activePopup.closefn()\n }\n break\n\n // Down/Right arrows navigate focus forward, with wrapping.\n case \"ArrowDown\":\n case \"ArrowRight\":\n if (window.Mixtape.Menu?.items) {\n event.preventDefault()\n this.moveFocus(target)\n }\n break\n\n // Up/Left arrows navigate focus backwards, with wrapping.\n case \"ArrowUp\":\n case \"ArrowLeft\":\n if (window.Mixtape.Menu?.items) {\n event.preventDefault()\n this.moveFocus(target, true)\n }\n break\n\n default:\n break\n }\n }\n\n attachEventListeners = (signal: AbortSignal): void => {\n window.addEventListener(\"click\", this.handleGlobalClick, {\n signal,\n })\n window.addEventListener(\"keydown\", this.handleGlobalKeydown, {\n signal,\n })\n }\n}\n"],"names":[],"mappings":"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"}
|