@sbb-esta/lyne-elements 1.12.0 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/autocomplete-grid/autocomplete-grid-button.js +1 -1
- package/button/common.js +1 -1
- package/button/mini-button.js +5 -5
- package/core/mixins/form-associated-checkbox-mixin.d.ts +1 -0
- package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-mixin.d.ts +6 -6
- package/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/core/mixins/required-mixin.d.ts +1 -1
- package/core/mixins/required-mixin.d.ts.map +1 -1
- package/core/mixins.js +2 -6
- package/core/styles/core/functions.scss +1 -1
- package/core/styles/mixins/buttons.scss +1 -1
- package/core/styles/mixins/helpers.scss +1 -1
- package/core/styles/mixins/lists.scss +2 -3
- package/core/styles/mixins/scrollbar.scss +2 -2
- package/core/styles/mixins/table.scss +4 -6
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +4 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +5 -1
- package/core/styles/normalize.scss +62 -131
- package/core.css +5 -6
- package/custom-elements.json +533 -268
- package/datepicker/datepicker-next-day.js +1 -1
- package/datepicker/datepicker-previous-day.js +1 -1
- package/development/accordion.js +2 -9
- package/development/action-group.js +2 -9
- package/development/alert/alert-group.js +2 -9
- package/development/alert/alert.js +2 -9
- package/development/autocomplete-grid/autocomplete-grid-button.js +3 -10
- package/development/autocomplete-grid/autocomplete-grid-cell.js +2 -9
- package/development/autocomplete-grid/autocomplete-grid-option.js +2 -9
- package/development/autocomplete-grid/autocomplete-grid-row.js +2 -9
- package/development/autocomplete.js +2 -12
- package/development/breadcrumb/breadcrumb-group.js +2 -9
- package/development/breadcrumb/breadcrumb.js +2 -9
- package/development/button/common.js +3 -12
- package/development/button/mini-button-group.js +2 -9
- package/development/button/mini-button.js +3 -10
- package/development/calendar.js +2 -9
- package/development/card/card-badge.js +2 -9
- package/development/card/card.js +2 -9
- package/development/card/common.js +2 -9
- package/development/checkbox/checkbox-group.js +2 -9
- package/development/checkbox/checkbox.js +2 -9
- package/development/checkbox/common.js +1 -8
- package/development/chip.js +2 -9
- package/development/clock.js +2 -9
- package/development/container/container.js +1 -8
- package/development/container/sticky-bar.js +2 -9
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts +1 -0
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-mixin.d.ts +6 -6
- package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/development/core/mixins/required-mixin.d.ts +1 -1
- package/development/core/mixins/required-mixin.d.ts.map +1 -1
- package/development/core/mixins.js +4 -14
- package/development/datepicker/datepicker-next-day.js +3 -10
- package/development/datepicker/datepicker-previous-day.js +3 -10
- package/development/datepicker/datepicker-toggle.js +2 -9
- package/development/datepicker/datepicker.js +2 -9
- package/development/dialog/dialog-actions.js +2 -9
- package/development/dialog/dialog-content.js +2 -11
- package/development/dialog/dialog-title.js +2 -9
- package/development/dialog/dialog.js +2 -9
- package/development/divider.js +2 -9
- package/development/expansion-panel/expansion-panel-content.js +2 -9
- package/development/expansion-panel/expansion-panel-header.js +2 -9
- package/development/expansion-panel/expansion-panel.js +2 -9
- package/development/file-selector/file-selector.d.ts +18 -8
- package/development/file-selector/file-selector.d.ts.map +1 -1
- package/development/file-selector.js +73 -44
- package/development/flip-card/flip-card-details.js +2 -9
- package/development/flip-card/flip-card-summary.js +2 -9
- package/development/flip-card/flip-card.js +2 -9
- package/development/footer.js +2 -9
- package/development/form-error.js +2 -9
- package/development/form-field/form-field-clear.js +3 -10
- package/development/form-field/form-field.js +1 -12
- package/development/header/common.js +53 -13
- package/development/header/header.js +2 -9
- package/development/icon.js +2 -9
- package/development/image/image.d.ts +1 -0
- package/development/image/image.d.ts.map +1 -1
- package/development/image.js +13 -13
- package/development/journey-header.js +2 -9
- package/development/lead-container.js +2 -9
- package/development/link/common.js +4 -25
- package/development/link-list/common.js +2 -9
- package/development/link-list/link-list-anchor.js +2 -9
- package/development/link-list/link-list.js +2 -9
- package/development/loading-indicator.js +3 -15
- package/development/logo.js +2 -9
- package/development/map-container.js +2 -11
- package/development/menu/common.js +2 -9
- package/development/menu/menu.js +2 -11
- package/development/message.js +2 -9
- package/development/navigation/common.js +2 -9
- package/development/navigation/navigation-list.js +2 -9
- package/development/navigation/navigation-marker.js +2 -9
- package/development/navigation/navigation-section.js +2 -11
- package/development/navigation/navigation.js +2 -11
- package/development/notification.js +2 -10
- package/development/option/optgroup.js +2 -9
- package/development/option/option.js +2 -9
- package/development/overlay.js +2 -11
- package/development/paginator/paginator.d.ts +1 -1
- package/development/paginator/paginator.d.ts.map +1 -1
- package/development/paginator.js +37 -22
- package/development/popover/popover-trigger.js +3 -10
- package/development/popover/popover.js +2 -9
- package/development/radio-button/common.js +2 -9
- package/development/radio-button/radio-button-group.js +4 -11
- package/development/radio-button/radio-button.js +2 -9
- package/development/screen-reader-only.js +2 -9
- package/development/select/select.d.ts +12 -5
- package/development/select/select.d.ts.map +1 -1
- package/development/select.js +51 -33
- package/development/selection-expansion-panel.js +2 -9
- package/development/signet.js +2 -9
- package/development/skiplink-list.js +2 -9
- package/development/slider/slider.d.ts +2 -1
- package/development/slider/slider.d.ts.map +1 -1
- package/development/slider.js +4 -8
- package/development/status.js +2 -9
- package/development/stepper/step-label.js +2 -9
- package/development/stepper/step.js +2 -9
- package/development/stepper/stepper.js +2 -9
- package/development/table/table-wrapper.js +2 -11
- package/development/tabs/tab-group.js +2 -9
- package/development/tabs/tab-label.js +2 -9
- package/development/tabs/tab.js +1 -8
- package/development/tag/tag-group.js +2 -9
- package/development/tag/tag.js +2 -9
- package/development/teaser-hero.js +2 -9
- package/development/teaser-product/common.js +2 -9
- package/development/teaser-product/teaser-product.js +2 -9
- package/development/teaser.js +12 -11
- package/development/time-input.js +2 -9
- package/development/timetable-occupancy-icon.js +2 -9
- package/development/timetable-occupancy.js +2 -9
- package/development/title.js +3 -17
- package/development/toast.js +2 -9
- package/development/toggle/toggle-option.js +2 -9
- package/development/toggle/toggle.js +2 -9
- package/development/toggle-check.js +1 -8
- package/development/train/train-blocked-passage.js +2 -9
- package/development/train/train-formation.js +2 -11
- package/development/train/train-wagon.js +2 -9
- package/development/train/train.js +2 -9
- package/development/visual-checkbox.js +2 -9
- package/file-selector/file-selector.d.ts +18 -8
- package/file-selector/file-selector.d.ts.map +1 -1
- package/file-selector.js +91 -67
- package/form-field/form-field-clear.js +1 -1
- package/header/common.js +11 -11
- package/image/image.d.ts +1 -0
- package/image/image.d.ts.map +1 -1
- package/image.js +7 -7
- package/lists.css +1 -8
- package/loading-indicator.js +5 -5
- package/normalize.css +21 -113
- package/package.json +3 -3
- package/paginator/paginator.d.ts +1 -1
- package/paginator/paginator.d.ts.map +1 -1
- package/paginator.js +57 -55
- package/popover/popover-trigger.js +1 -1
- package/radio-button/radio-button-group.js +2 -1
- package/select/select.d.ts +12 -5
- package/select/select.d.ts.map +1 -1
- package/select.js +111 -83
- package/slider/slider.d.ts +2 -1
- package/slider/slider.d.ts.map +1 -1
- package/slider.js +3 -0
- package/standard-theme.css +25 -131
- package/teaser.js +16 -16
- package/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts +0 -2
- package/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts.map +0 -1
- package/button/mini-button-group/index.d.ts +0 -2
- package/button/mini-button-group/index.d.ts.map +0 -1
- package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts +0 -2
- package/development/autocomplete-grid/autocomplete-grid-optgroup/index.d.ts.map +0 -1
- package/development/button/mini-button-group/index.d.ts +0 -2
- package/development/button/mini-button-group/index.d.ts.map +0 -1
- package/development/flip-card/flip-card/index.d.ts +0 -2
- package/development/flip-card/flip-card/index.d.ts.map +0 -1
- package/development/flip-card/flip-card-details/index.d.ts +0 -2
- package/development/flip-card/flip-card-details/index.d.ts.map +0 -1
- package/development/flip-card/flip-card-summary/index.d.ts +0 -2
- package/development/flip-card/flip-card-summary/index.d.ts.map +0 -1
- package/development/link-list/link-list-anchor/index.d.ts +0 -2
- package/development/link-list/link-list-anchor/index.d.ts.map +0 -1
- package/development/paginator/index.d.ts +0 -2
- package/development/paginator/index.d.ts.map +0 -1
- package/development/radio-button/radio-button-panel/index.d.ts +0 -2
- package/development/radio-button/radio-button-panel/index.d.ts.map +0 -1
- package/development/tabs/tab/index.d.ts +0 -2
- package/development/tabs/tab/index.d.ts.map +0 -1
- package/flip-card/flip-card/index.d.ts +0 -2
- package/flip-card/flip-card/index.d.ts.map +0 -1
- package/flip-card/flip-card-details/index.d.ts +0 -2
- package/flip-card/flip-card-details/index.d.ts.map +0 -1
- package/flip-card/flip-card-summary/index.d.ts +0 -2
- package/flip-card/flip-card-summary/index.d.ts.map +0 -1
- package/link-list/link-list-anchor/index.d.ts +0 -2
- package/link-list/link-list-anchor/index.d.ts.map +0 -1
- package/paginator/index.d.ts +0 -2
- package/paginator/index.d.ts.map +0 -1
- package/radio-button/radio-button-panel/index.d.ts +0 -2
- package/radio-button/radio-button-panel/index.d.ts.map +0 -1
- package/tabs/tab/index.d.ts +0 -2
- package/tabs/tab/index.d.ts.map +0 -1
|
@@ -4,14 +4,7 @@ import { html, unsafeStatic } from "lit/static-html.js";
|
|
|
4
4
|
import { SbbConnectedAbortController } from "../core/controllers.js";
|
|
5
5
|
import { EventEmitter } from "../core/eventing.js";
|
|
6
6
|
import { SbbHydrationMixin } from "../core/mixins.js";
|
|
7
|
-
const style = css
|
|
8
|
-
/*
|
|
9
|
-
* SBB table mixin
|
|
10
|
-
* Notes:
|
|
11
|
-
* We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
|
|
12
|
-
* Therefore, we have to build the grid avoiding double borders.
|
|
13
|
-
*/
|
|
14
|
-
*,
|
|
7
|
+
const style = css`*,
|
|
15
8
|
::before,
|
|
16
9
|
::after {
|
|
17
10
|
box-sizing: border-box;
|
|
@@ -385,4 +378,4 @@ SbbExpansionPanelElement = __decorateClass([
|
|
|
385
378
|
export {
|
|
386
379
|
SbbExpansionPanelElement
|
|
387
380
|
};
|
|
388
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZXhwYW5zaW9uLXBhbmVsL2V4cGFuc2lvbi1wYW5lbC9leHBhbnNpb24tcGFuZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sLCB1bnNhZmVTdGF0aWMgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgeyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uLy4uL3RpdGxlLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRXhwYW5zaW9uUGFuZWxDb250ZW50RWxlbWVudCB9IGZyb20gJy4uL2V4cGFuc2lvbi1wYW5lbC1jb250ZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRXhwYW5zaW9uUGFuZWxIZWFkZXJFbGVtZW50IH0gZnJvbSAnLi4vZXhwYW5zaW9uLXBhbmVsLWhlYWRlci5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2V4cGFuc2lvbi1wYW5lbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhbiBleHBhbmRhYmxlIHN1bW1hcnktZGV0YWlscyB3aWRnZXQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYSBgc2JiLWV4cGFuc2lvbi1wYW5lbC1oZWFkZXJgIGFuZCBhIGBzYmItZXhwYW5zaW9uLXBhbmVsLWNvbnRlbnRgIGVsZW1lbnQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWV4cGFuc2lvbi1wYW5lbGAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGlzIGNsb3NlZC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1leHBhbnNpb24tcGFuZWwnKVxuZXhwb3J0IGNsYXNzIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudCBleHRlbmRzIFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBIZWFkaW5nIGxldmVsOyBpZiB1bnNldCwgYSBgZGl2YCB3aWxsIGJlIHJlbmRlcmVkLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1sZXZlbCcgfSkgcHVibGljIHRpdGxlTGV2ZWw/OiBTYmJUaXRsZUxldmVsIHwgbnVsbDtcblxuICAvKiogVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHBhbmVsLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBwYW5lbCBpcyBleHBhbmRlZC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IGV4cGFuZGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZXhwYW5kZWQgPSB2YWx1ZTtcbiAgICB0aGlzLl9vbkV4cGFuZGVkQ2hhbmdlKCk7XG4gIH1cbiAgcHVibGljIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwYW5kZWQ7XG4gIH1cbiAgcHJpdmF0ZSBfZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgcGFuZWwgaXMgZGlzYWJsZWQsIHNvIGl0cyBleHBhbmRlZCBzdGF0ZSBjYW4ndCBiZSBjaGFuZ2VkLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuICAgIHRoaXMuX3VwZGF0ZURpc2FibGVkT25IZWFkZXIodGhpcy5fZGlzYWJsZWQpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHBhbmVsIGhhcyBubyBib3JkZXIuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGJvcmRlcmxlc3MgPSBmYWxzZTtcblxuICAvKiogU2l6ZSB2YXJpYW50LCBlaXRoZXIgbCBvciBzLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBzaXplOiAncycgfCAnbCcgPSAnbCc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSBzZXQgX3N0YXRlKHN0YXRlOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSkge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdkYXRhLXN0YXRlJywgc3RhdGUpO1xuICB9XG4gIHByaXZhdGUgZ2V0IF9zdGF0ZSgpOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXN0YXRlJykgYXMgU2JiT3BlbmVkQ2xvc2VkU3RhdGU7XG4gIH1cblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbE9wZW46IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJFeHBhbnNpb25QYW5lbEVsZW1lbnQuZXZlbnRzLndpbGxPcGVuLFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGlzIG9wZW5lZC4gKi9cbiAgcHJpdmF0ZSBfZGlkT3BlbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiRXhwYW5zaW9uUGFuZWxFbGVtZW50LmV2ZW50cy53aWxsQ2xvc2UsXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWV4cGFuc2lvbi1wYW5lbGAgaXMgY2xvc2VkLiAqL1xuICBwcml2YXRlIF9kaWRDbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudC5ldmVudHMuZGlkQ2xvc2UsXG4gICk7XG5cbiAgcHJpdmF0ZSBfcHJvZ3Jlc3NpdmVJZCA9IGAtJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9oZWFkZXJSZWY/OiBTYmJFeHBhbnNpb25QYW5lbEhlYWRlckVsZW1lbnQ7XG4gIHByaXZhdGUgX2NvbnRlbnRSZWY/OiBTYmJFeHBhbnNpb25QYW5lbENvbnRlbnRFbGVtZW50O1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigndG9nZ2xlRXhwYW5kZWQnLCAoKSA9PiB0aGlzLl90b2dnbGVFeHBhbmRlZCgpLCB7IHNpZ25hbCB9KTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY2NvcmRpb24nLCAhIXRoaXMuY2xvc2VzdD8uKCdzYmItYWNjb3JkaW9uJykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdzaXplJykpIHtcbiAgICAgIHRoaXMuX2hlYWRlclJlZj8uc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCBTdHJpbmcodGhpcy5zaXplKSk7XG4gICAgICB0aGlzLl9jb250ZW50UmVmPy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc2l6ZScsIFN0cmluZyh0aGlzLnNpemUpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1hY2NvcmRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZUV4cGFuZGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgfVxuXG4gIHByaXZhdGUgX29uRXhwYW5kZWRDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5faGVhZGVyUmVmPy5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBTdHJpbmcodGhpcy5leHBhbmRlZCkpO1xuICAgIHRoaXMuX2NvbnRlbnRSZWY/LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCBTdHJpbmcoIXRoaXMuZXhwYW5kZWQpKTtcblxuICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICB0aGlzLl9vcGVuKCF0aGlzLl9pbml0aWFsaXplZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5lZCcpIHtcbiAgICAgIHRoaXMuX2Nsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb3Blbihza2lwQW5pbWF0aW9uID0gZmFsc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl93aWxsT3Blbi5lbWl0KCk7XG5cbiAgICBpZiAoc2tpcEFuaW1hdGlvbikge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnb3BlbmVkJztcbiAgICAgIHRoaXMuX2RpZE9wZW4uZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Nsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuICAgIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEaXNhYmxlZE9uSGVhZGVyKG5ld0Rpc2FibGVkVmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faGVhZGVyUmVmKSB7XG4gICAgICB0aGlzLl9oZWFkZXJSZWYuZGlzYWJsZWQgPSBuZXdEaXNhYmxlZFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4gPz8gW10pO1xuICAgIGNvbnN0IGhlYWRlciA9IGNoaWxkcmVuLmZpbmQoXG4gICAgICAoZSk6IGUgaXMgU2JiRXhwYW5zaW9uUGFuZWxIZWFkZXJFbGVtZW50ID0+IGUubG9jYWxOYW1lID09PSAnc2JiLWV4cGFuc2lvbi1wYW5lbC1oZWFkZXInLFxuICAgICk7XG4gICAgY29uc3QgY29udGVudCA9IGNoaWxkcmVuLmZpbmQoXG4gICAgICAoZSk6IGUgaXMgU2JiRXhwYW5zaW9uUGFuZWxDb250ZW50RWxlbWVudCA9PiBlLmxvY2FsTmFtZSA9PT0gJ3NiYi1leHBhbnNpb24tcGFuZWwtY29udGVudCcsXG4gICAgKTtcbiAgICBpZiAodGhpcy5faGVhZGVyUmVmID09PSBoZWFkZXIgJiYgdGhpcy5fY29udGVudFJlZiA9PT0gY29udGVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaGVhZGVyICYmIHRoaXMuX2hlYWRlclJlZiAhPT0gaGVhZGVyKSB7XG4gICAgICBoZWFkZXIuaWQgfHw9IGBzYmItZXhwYW5zaW9uLXBhbmVsLWhlYWRlciR7dGhpcy5fcHJvZ3Jlc3NpdmVJZH1gO1xuICAgICAgaGVhZGVyLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsIFN0cmluZyh0aGlzLmV4cGFuZGVkKSk7XG4gICAgICBoZWFkZXIudG9nZ2xlQXR0cmlidXRlKCdkaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgICAgaGVhZGVyLnNldEF0dHJpYnV0ZSgnZGF0YS1zaXplJywgU3RyaW5nKHRoaXMuc2l6ZSkpO1xuICAgIH1cbiAgICBpZiAoY29udGVudCAmJiB0aGlzLl9jb250ZW50UmVmICE9PSBjb250ZW50KSB7XG4gICAgICBjb250ZW50LmlkIHx8PSBgc2JiLWV4cGFuc2lvbi1wYW5lbC1jb250ZW50JHt0aGlzLl9wcm9ncmVzc2l2ZUlkfWA7XG4gICAgICBjb250ZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCBTdHJpbmcoIXRoaXMuZXhwYW5kZWQpKTtcbiAgICAgIGNvbnRlbnQuc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCBTdHJpbmcodGhpcy5zaXplKSk7XG4gICAgfVxuXG4gICAgdGhpcy5faGVhZGVyUmVmID0gaGVhZGVyO1xuICAgIHRoaXMuX2NvbnRlbnRSZWYgPSBjb250ZW50O1xuICAgIGlmICh0aGlzLl9oZWFkZXJSZWYgJiYgdGhpcy5fY29udGVudFJlZikge1xuICAgICAgdGhpcy5faGVhZGVyUmVmLnNldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycsIHRoaXMuX2NvbnRlbnRSZWYuaWQpO1xuICAgICAgdGhpcy5fY29udGVudFJlZi5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScsIHRoaXMuX2hlYWRlclJlZi5pZCk7XG4gICAgICB0aGlzLl9jb250ZW50UmVmLnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICAgJ2RhdGEtaWNvbi1zcGFjZScsXG4gICAgICAgIHRoaXMuX2hlYWRlclJlZi5oYXNBdHRyaWJ1dGUoJ2RhdGEtaWNvbicpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4tb3BhY2l0eScgJiYgdGhpcy5fc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnb3BlbmVkJztcbiAgICAgIHRoaXMuX2RpZE9wZW4uZW1pdCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICAgICAgdGhpcy5fZGlkQ2xvc2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IFRBR05BTUUgPSB0aGlzLnRpdGxlTGV2ZWwgPyBgaCR7dGhpcy50aXRsZUxldmVsfWAgOiAnZGl2JztcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1leHBhbnNpb24tcGFuZWxcIj5cbiAgICAgICAgPCR7dW5zYWZlU3RhdGljKFRBR05BTUUpfSBjbGFzcz1cInNiYi1leHBhbnNpb24tcGFuZWxfX2hlYWRlclwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJoZWFkZXJcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdOQU1FKX0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZXhwYW5zaW9uLXBhbmVsX19jb250ZW50LXdyYXBwZXJcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWV4cGFuc2lvbi1wYW5lbF9fY29udGVudFwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImNvbnRlbnRcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZXhwYW5zaW9uLXBhbmVsJzogU2JiRXhwYW5zaW9uUGFuZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWVBLElBQUksU0FBUztBQVlOLElBQU0sMkJBQU4sY0FBdUMsa0JBQWtCLFVBQVUsRUFBRTtBQUFBLEVBQXJFLGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQWFPLFNBQU8sUUFBMEI7QUFXN0MsU0FBUSxZQUFxQjtBQVc3QixTQUFRLFlBQXFCO0FBR2UsU0FBTyxhQUFhO0FBR25DLFNBQU8sT0FBa0I7QUFhdEQsU0FBUSxZQUFnQyxJQUFJO0FBQUEsTUFDMUM7QUFBQSxNQUNBLHlCQUF5QixPQUFPO0FBQUEsSUFBQTtBQUlsQyxTQUFRLFdBQStCLElBQUk7QUFBQSxNQUN6QztBQUFBLE1BQ0EseUJBQXlCLE9BQU87QUFBQSxJQUFBO0FBSWxDLFNBQVEsYUFBaUMsSUFBSTtBQUFBLE1BQzNDO0FBQUEsTUFDQSx5QkFBeUIsT0FBTztBQUFBLElBQUE7QUFJbEMsU0FBUSxZQUFnQyxJQUFJO0FBQUEsTUFDMUM7QUFBQSxNQUNBLHlCQUF5QixPQUFPO0FBQUEsSUFBQTtBQUcxQixTQUFBLGlCQUFpQixJQUFJLEVBQUUsTUFBTTtBQUc3QixTQUFBLFNBQVMsSUFBSSw0QkFBNEIsSUFBSTtBQUNyRCxTQUFRLGVBQXdCO0FBQUEsRUFBQTtBQUFBLEVBaEVoQyxJQUFXLFNBQVMsT0FBZ0I7QUFDbEMsU0FBSyxZQUFZO0FBQ2pCLFNBQUssa0JBQWtCO0FBQUEsRUFDekI7QUFBQSxFQUNBLElBQVcsV0FBb0I7QUFDN0IsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBS0EsSUFBVyxTQUFTLE9BQWdCO0FBQ2xDLFNBQUssWUFBWTtBQUNaLFNBQUEsd0JBQXdCLEtBQUssU0FBUztBQUFBLEVBQzdDO0FBQUEsRUFDQSxJQUFXLFdBQW9CO0FBQzdCLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVlBLElBQVksT0FBTyxPQUE2QjtBQUN6QyxTQUFBLGFBQWEsY0FBYyxLQUFLO0FBQUEsRUFDdkM7QUFBQSxFQUNBLElBQVksU0FBK0I7QUFDbEMsV0FBQSxLQUFLLGFBQWEsWUFBWTtBQUFBLEVBQ3ZDO0FBQUEsRUFnQ2dCLG9CQUEwQjs7QUFDeEMsVUFBTSxrQkFBa0I7QUFDbEIsVUFBQSxTQUFTLEtBQUssT0FBTztBQUN0QixTQUFBLGlCQUFpQixrQkFBa0IsTUFBTSxLQUFLLG1CQUFtQixFQUFFLFFBQVE7QUFDaEYsU0FBSyxnQkFBZ0Isa0JBQWtCLENBQUMsR0FBQyxVQUFLLFlBQUwsOEJBQWUsaUJBQWdCO0FBQUEsRUFDMUU7QUFBQSxFQUVtQixXQUFXLG1CQUErQzs7QUFDM0UsVUFBTSxXQUFXLGlCQUFpQjtBQUU5QixRQUFBLGtCQUFrQixJQUFJLE1BQU0sR0FBRztBQUNqQyxpQkFBSyxlQUFMLG1CQUFpQixhQUFhLGFBQWEsT0FBTyxLQUFLLElBQUk7QUFDM0QsaUJBQUssZ0JBQUwsbUJBQWtCLGFBQWEsYUFBYSxPQUFPLEtBQUssSUFBSTtBQUFBLElBQzlEO0FBQUEsRUFDRjtBQUFBLEVBRWdCLHVCQUE2QjtBQUMzQyxVQUFNLHFCQUFxQjtBQUMzQixTQUFLLGdCQUFnQixnQkFBZ0I7QUFBQSxFQUN2QztBQUFBLEVBRW1CLGFBQWEsbUJBQStDO0FBQzdFLFVBQU0sYUFBYSxpQkFBaUI7QUFFcEMsU0FBSyxlQUFlO0FBQUEsRUFDdEI7QUFBQSxFQUVRLGtCQUF3QjtBQUN6QixTQUFBLFdBQVcsQ0FBQyxLQUFLO0FBQUEsRUFDeEI7QUFBQSxFQUVRLG9CQUEwQjs7QUFDaEMsZUFBSyxlQUFMLG1CQUFpQixhQUFhLGlCQUFpQixPQUFPLEtBQUssUUFBUTtBQUNuRSxlQUFLLGdCQUFMLG1CQUFrQixhQUFhLGVBQWUsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUVuRSxRQUFJLEtBQUssVUFBVTtBQUNaLFdBQUEsTUFBTSxDQUFDLEtBQUssWUFBWTtBQUFBLElBQUEsV0FDcEIsS0FBSyxXQUFXLFVBQVU7QUFDbkMsV0FBSyxPQUFPO0FBQUEsSUFDZDtBQUFBLEVBQ0Y7QUFBQSxFQUVRLE1BQU0sZ0JBQWdCLE9BQWE7QUFDekMsU0FBSyxTQUFTO0FBQ2QsU0FBSyxVQUFVO0FBRWYsUUFBSSxlQUFlO0FBQ2pCLFdBQUssU0FBUztBQUNkLFdBQUssU0FBUztJQUNoQjtBQUFBLEVBQ0Y7QUFBQSxFQUVRLFNBQWU7QUFDckIsU0FBSyxTQUFTO0FBQ2QsU0FBSyxXQUFXO0VBQ2xCO0FBQUEsRUFFUSx3QkFBd0Isa0JBQWlDO0FBQy9ELFFBQUksS0FBSyxZQUFZO0FBQ25CLFdBQUssV0FBVyxXQUFXO0FBQUEsSUFDN0I7QUFBQSxFQUNGO0FBQUEsRUFFUSxvQkFBMEI7QUFDaEMsVUFBTSxXQUFXLE1BQU0sS0FBSyxLQUFLLFlBQVksQ0FBQSxDQUFFO0FBQy9DLFVBQU0sU0FBUyxTQUFTO0FBQUEsTUFDdEIsQ0FBQyxNQUEyQyxFQUFFLGNBQWM7QUFBQSxJQUFBO0FBRTlELFVBQU0sVUFBVSxTQUFTO0FBQUEsTUFDdkIsQ0FBQyxNQUE0QyxFQUFFLGNBQWM7QUFBQSxJQUFBO0FBRS9ELFFBQUksS0FBSyxlQUFlLFVBQVUsS0FBSyxnQkFBZ0IsU0FBUztBQUM5RDtBQUFBLElBQ0Y7QUFDSSxRQUFBLFVBQVUsS0FBSyxlQUFlLFFBQVE7QUFDakMsYUFBQSxPQUFBLE9BQUEsS0FBTyw2QkFBNkIsS0FBSyxjQUFjO0FBQzlELGFBQU8sYUFBYSxpQkFBaUIsT0FBTyxLQUFLLFFBQVEsQ0FBQztBQUNuRCxhQUFBLGdCQUFnQixZQUFZLEtBQUssUUFBUTtBQUNoRCxhQUFPLGFBQWEsYUFBYSxPQUFPLEtBQUssSUFBSSxDQUFDO0FBQUEsSUFDcEQ7QUFDSSxRQUFBLFdBQVcsS0FBSyxnQkFBZ0IsU0FBUztBQUNuQyxjQUFBLE9BQUEsUUFBQSxLQUFPLDhCQUE4QixLQUFLLGNBQWM7QUFDaEUsY0FBUSxhQUFhLGVBQWUsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDO0FBQzFELGNBQVEsYUFBYSxhQUFhLE9BQU8sS0FBSyxJQUFJLENBQUM7QUFBQSxJQUNyRDtBQUVBLFNBQUssYUFBYTtBQUNsQixTQUFLLGNBQWM7QUFDZixRQUFBLEtBQUssY0FBYyxLQUFLLGFBQWE7QUFDdkMsV0FBSyxXQUFXLGFBQWEsaUJBQWlCLEtBQUssWUFBWSxFQUFFO0FBQ2pFLFdBQUssWUFBWSxhQUFhLG1CQUFtQixLQUFLLFdBQVcsRUFBRTtBQUNuRSxXQUFLLFlBQVk7QUFBQSxRQUNmO0FBQUEsUUFDQSxLQUFLLFdBQVcsYUFBYSxXQUFXO0FBQUEsTUFBQTtBQUFBLElBRTVDO0FBQUEsRUFDRjtBQUFBLEVBRVEsZ0JBQWdCLE9BQTZCO0FBQ25ELFFBQUksTUFBTSxrQkFBa0Isa0JBQWtCLEtBQUssV0FBVyxXQUFXO0FBQ3ZFLFdBQUssU0FBUztBQUNkLFdBQUssU0FBUztJQUFLLFdBQ1YsTUFBTSxrQkFBa0IsV0FBVyxLQUFLLFdBQVcsV0FBVztBQUN2RSxXQUFLLFNBQVM7QUFDZCxXQUFLLFVBQVU7SUFDakI7QUFBQSxFQUNGO0FBQUEsRUFFbUIsU0FBeUI7QUFDMUMsVUFBTSxVQUFVLEtBQUssYUFBYSxJQUFJLEtBQUssVUFBVSxLQUFLO0FBR25ELFdBQUE7QUFBQTtBQUFBLFdBRUEsYUFBYSxPQUFPLENBQUM7QUFBQSw0Q0FDWSxLQUFLLGlCQUFpQjtBQUFBLFlBQ3RELGFBQWEsT0FBTyxDQUFDO0FBQUEsMEVBQ3lDLEtBQUssZUFBZTtBQUFBO0FBQUEsK0NBRS9DLEtBQUssaUJBQWlCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1uRTtBQUNGO0FBak5hLHlCQUNZLFNBQXlCO0FBRHJDLHlCQUVZLFNBQVM7QUFBQSxFQUM5QixVQUFVO0FBQUEsRUFDVixTQUFTO0FBQUEsRUFDVCxXQUFXO0FBQUEsRUFDWCxVQUFVO0FBQ1o7QUFHK0MsZ0JBQUE7QUFBQSxFQUE5QyxTQUFTLEVBQUUsV0FBVyxlQUFlO0FBQUEsR0FWM0IseUJBVW9DLFdBQUEsY0FBQSxDQUFBO0FBRzVCLGdCQUFBO0FBQUEsRUFBbEIsU0FBUztBQUFBLEdBYkMseUJBYVEsV0FBQSxTQUFBLENBQUE7QUFJUixnQkFBQTtBQUFBLEVBRFYsU0FBUyxFQUFFLFNBQVMsTUFBTSxNQUFNLFNBQVM7QUFBQSxHQWhCL0IseUJBaUJBLFdBQUEsWUFBQSxDQUFBO0FBV0EsZ0JBQUE7QUFBQSxFQURWLFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsR0EzQi9CLHlCQTRCQSxXQUFBLFlBQUEsQ0FBQTtBQVV3QyxnQkFBQTtBQUFBLEVBQWxELFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsR0F0Qy9CLHlCQXNDd0MsV0FBQSxjQUFBLENBQUE7QUFHZixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxTQUFTLE1BQU07QUFBQSxHQXpDaEIseUJBeUN5QixXQUFBLFFBQUEsQ0FBQTtBQXpDekIsMkJBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMscUJBQXFCO0FBQUEsR0FDdkIsd0JBQUE7In0=
|
|
381
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvZXhwYW5zaW9uLXBhbmVsL2V4cGFuc2lvbi1wYW5lbC9leHBhbnNpb24tcGFuZWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sLCB1bnNhZmVTdGF0aWMgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgeyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uLy4uL3RpdGxlLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRXhwYW5zaW9uUGFuZWxDb250ZW50RWxlbWVudCB9IGZyb20gJy4uL2V4cGFuc2lvbi1wYW5lbC1jb250ZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRXhwYW5zaW9uUGFuZWxIZWFkZXJFbGVtZW50IH0gZnJvbSAnLi4vZXhwYW5zaW9uLXBhbmVsLWhlYWRlci5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2V4cGFuc2lvbi1wYW5lbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhbiBleHBhbmRhYmxlIHN1bW1hcnktZGV0YWlscyB3aWRnZXQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYSBgc2JiLWV4cGFuc2lvbi1wYW5lbC1oZWFkZXJgIGFuZCBhIGBzYmItZXhwYW5zaW9uLXBhbmVsLWNvbnRlbnRgIGVsZW1lbnQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWV4cGFuc2lvbi1wYW5lbGAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGlzIGNsb3NlZC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1leHBhbnNpb24tcGFuZWwnKVxuZXhwb3J0IGNsYXNzIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudCBleHRlbmRzIFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBIZWFkaW5nIGxldmVsOyBpZiB1bnNldCwgYSBgZGl2YCB3aWxsIGJlIHJlbmRlcmVkLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1sZXZlbCcgfSkgcHVibGljIHRpdGxlTGV2ZWw/OiBTYmJUaXRsZUxldmVsIHwgbnVsbDtcblxuICAvKiogVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHBhbmVsLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBwYW5lbCBpcyBleHBhbmRlZC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IGV4cGFuZGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZXhwYW5kZWQgPSB2YWx1ZTtcbiAgICB0aGlzLl9vbkV4cGFuZGVkQ2hhbmdlKCk7XG4gIH1cbiAgcHVibGljIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwYW5kZWQ7XG4gIH1cbiAgcHJpdmF0ZSBfZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgcGFuZWwgaXMgZGlzYWJsZWQsIHNvIGl0cyBleHBhbmRlZCBzdGF0ZSBjYW4ndCBiZSBjaGFuZ2VkLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuICAgIHRoaXMuX3VwZGF0ZURpc2FibGVkT25IZWFkZXIodGhpcy5fZGlzYWJsZWQpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHBhbmVsIGhhcyBubyBib3JkZXIuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGJvcmRlcmxlc3MgPSBmYWxzZTtcblxuICAvKiogU2l6ZSB2YXJpYW50LCBlaXRoZXIgbCBvciBzLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBzaXplOiAncycgfCAnbCcgPSAnbCc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSBzZXQgX3N0YXRlKHN0YXRlOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSkge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdkYXRhLXN0YXRlJywgc3RhdGUpO1xuICB9XG4gIHByaXZhdGUgZ2V0IF9zdGF0ZSgpOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXN0YXRlJykgYXMgU2JiT3BlbmVkQ2xvc2VkU3RhdGU7XG4gIH1cblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbE9wZW46IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJFeHBhbnNpb25QYW5lbEVsZW1lbnQuZXZlbnRzLndpbGxPcGVuLFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1leHBhbnNpb24tcGFuZWxgIGlzIG9wZW5lZC4gKi9cbiAgcHJpdmF0ZSBfZGlkT3BlbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItZXhwYW5zaW9uLXBhbmVsYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiRXhwYW5zaW9uUGFuZWxFbGVtZW50LmV2ZW50cy53aWxsQ2xvc2UsXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWV4cGFuc2lvbi1wYW5lbGAgaXMgY2xvc2VkLiAqL1xuICBwcml2YXRlIF9kaWRDbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYkV4cGFuc2lvblBhbmVsRWxlbWVudC5ldmVudHMuZGlkQ2xvc2UsXG4gICk7XG5cbiAgcHJpdmF0ZSBfcHJvZ3Jlc3NpdmVJZCA9IGAtJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9oZWFkZXJSZWY/OiBTYmJFeHBhbnNpb25QYW5lbEhlYWRlckVsZW1lbnQ7XG4gIHByaXZhdGUgX2NvbnRlbnRSZWY/OiBTYmJFeHBhbnNpb25QYW5lbENvbnRlbnRFbGVtZW50O1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigndG9nZ2xlRXhwYW5kZWQnLCAoKSA9PiB0aGlzLl90b2dnbGVFeHBhbmRlZCgpLCB7IHNpZ25hbCB9KTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY2NvcmRpb24nLCAhIXRoaXMuY2xvc2VzdD8uKCdzYmItYWNjb3JkaW9uJykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdzaXplJykpIHtcbiAgICAgIHRoaXMuX2hlYWRlclJlZj8uc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCBTdHJpbmcodGhpcy5zaXplKSk7XG4gICAgICB0aGlzLl9jb250ZW50UmVmPy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc2l6ZScsIFN0cmluZyh0aGlzLnNpemUpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1hY2NvcmRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZUV4cGFuZGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgfVxuXG4gIHByaXZhdGUgX29uRXhwYW5kZWRDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5faGVhZGVyUmVmPy5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBTdHJpbmcodGhpcy5leHBhbmRlZCkpO1xuICAgIHRoaXMuX2NvbnRlbnRSZWY/LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCBTdHJpbmcoIXRoaXMuZXhwYW5kZWQpKTtcblxuICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICB0aGlzLl9vcGVuKCF0aGlzLl9pbml0aWFsaXplZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5lZCcpIHtcbiAgICAgIHRoaXMuX2Nsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb3Blbihza2lwQW5pbWF0aW9uID0gZmFsc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl93aWxsT3Blbi5lbWl0KCk7XG5cbiAgICBpZiAoc2tpcEFuaW1hdGlvbikge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnb3BlbmVkJztcbiAgICAgIHRoaXMuX2RpZE9wZW4uZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Nsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuICAgIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEaXNhYmxlZE9uSGVhZGVyKG5ld0Rpc2FibGVkVmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faGVhZGVyUmVmKSB7XG4gICAgICB0aGlzLl9oZWFkZXJSZWYuZGlzYWJsZWQgPSBuZXdEaXNhYmxlZFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4gPz8gW10pO1xuICAgIGNvbnN0IGhlYWRlciA9IGNoaWxkcmVuLmZpbmQoXG4gICAgICAoZSk6IGUgaXMgU2JiRXhwYW5zaW9uUGFuZWxIZWFkZXJFbGVtZW50ID0+IGUubG9jYWxOYW1lID09PSAnc2JiLWV4cGFuc2lvbi1wYW5lbC1oZWFkZXInLFxuICAgICk7XG4gICAgY29uc3QgY29udGVudCA9IGNoaWxkcmVuLmZpbmQoXG4gICAgICAoZSk6IGUgaXMgU2JiRXhwYW5zaW9uUGFuZWxDb250ZW50RWxlbWVudCA9PiBlLmxvY2FsTmFtZSA9PT0gJ3NiYi1leHBhbnNpb24tcGFuZWwtY29udGVudCcsXG4gICAgKTtcbiAgICBpZiAodGhpcy5faGVhZGVyUmVmID09PSBoZWFkZXIgJiYgdGhpcy5fY29udGVudFJlZiA9PT0gY29udGVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaGVhZGVyICYmIHRoaXMuX2hlYWRlclJlZiAhPT0gaGVhZGVyKSB7XG4gICAgICBoZWFkZXIuaWQgfHw9IGBzYmItZXhwYW5zaW9uLXBhbmVsLWhlYWRlciR7dGhpcy5fcHJvZ3Jlc3NpdmVJZH1gO1xuICAgICAgaGVhZGVyLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsIFN0cmluZyh0aGlzLmV4cGFuZGVkKSk7XG4gICAgICBoZWFkZXIudG9nZ2xlQXR0cmlidXRlKCdkaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgICAgaGVhZGVyLnNldEF0dHJpYnV0ZSgnZGF0YS1zaXplJywgU3RyaW5nKHRoaXMuc2l6ZSkpO1xuICAgIH1cbiAgICBpZiAoY29udGVudCAmJiB0aGlzLl9jb250ZW50UmVmICE9PSBjb250ZW50KSB7XG4gICAgICBjb250ZW50LmlkIHx8PSBgc2JiLWV4cGFuc2lvbi1wYW5lbC1jb250ZW50JHt0aGlzLl9wcm9ncmVzc2l2ZUlkfWA7XG4gICAgICBjb250ZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCBTdHJpbmcoIXRoaXMuZXhwYW5kZWQpKTtcbiAgICAgIGNvbnRlbnQuc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCBTdHJpbmcodGhpcy5zaXplKSk7XG4gICAgfVxuXG4gICAgdGhpcy5faGVhZGVyUmVmID0gaGVhZGVyO1xuICAgIHRoaXMuX2NvbnRlbnRSZWYgPSBjb250ZW50O1xuICAgIGlmICh0aGlzLl9oZWFkZXJSZWYgJiYgdGhpcy5fY29udGVudFJlZikge1xuICAgICAgdGhpcy5faGVhZGVyUmVmLnNldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycsIHRoaXMuX2NvbnRlbnRSZWYuaWQpO1xuICAgICAgdGhpcy5fY29udGVudFJlZi5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScsIHRoaXMuX2hlYWRlclJlZi5pZCk7XG4gICAgICB0aGlzLl9jb250ZW50UmVmLnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICAgJ2RhdGEtaWNvbi1zcGFjZScsXG4gICAgICAgIHRoaXMuX2hlYWRlclJlZi5oYXNBdHRyaWJ1dGUoJ2RhdGEtaWNvbicpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4tb3BhY2l0eScgJiYgdGhpcy5fc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnb3BlbmVkJztcbiAgICAgIHRoaXMuX2RpZE9wZW4uZW1pdCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICAgICAgdGhpcy5fZGlkQ2xvc2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IFRBR05BTUUgPSB0aGlzLnRpdGxlTGV2ZWwgPyBgaCR7dGhpcy50aXRsZUxldmVsfWAgOiAnZGl2JztcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1leHBhbnNpb24tcGFuZWxcIj5cbiAgICAgICAgPCR7dW5zYWZlU3RhdGljKFRBR05BTUUpfSBjbGFzcz1cInNiYi1leHBhbnNpb24tcGFuZWxfX2hlYWRlclwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJoZWFkZXJcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdOQU1FKX0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZXhwYW5zaW9uLXBhbmVsX19jb250ZW50LXdyYXBwZXJcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWV4cGFuc2lvbi1wYW5lbF9fY29udGVudFwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImNvbnRlbnRcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZXhwYW5zaW9uLXBhbmVsJzogU2JiRXhwYW5zaW9uUGFuZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { CSSResultGroup,
|
|
1
|
+
import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
|
|
2
|
+
import { FormRestoreReason, FormRestoreState } from '../core/mixins.js';
|
|
2
3
|
export type DOMEvent = globalThis.Event;
|
|
3
|
-
declare const SbbFileSelectorElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbDisabledMixinType> & typeof LitElement;
|
|
4
|
+
declare const SbbFileSelectorElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbDisabledMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbFormAssociatedMixinType<string>> & typeof LitElement;
|
|
4
5
|
/**
|
|
5
6
|
* It allows to select one or more file from storage devices and display them.
|
|
6
7
|
*
|
|
7
8
|
* @slot error - Use this to provide a `sbb-form-error` to show an error message.
|
|
8
9
|
* @event {CustomEvent<File[]>} fileChanged - An event which is emitted each time the file list changes.
|
|
10
|
+
* @event change - An event which is emitted each time the user modifies the value. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value
|
|
11
|
+
* @event input - An event which is emitted each time the value changes as a direct result of a user action.
|
|
9
12
|
*/
|
|
10
13
|
export declare class SbbFileSelectorElement extends SbbFileSelectorElement_base {
|
|
11
14
|
static styles: CSSResultGroup;
|
|
@@ -26,14 +29,17 @@ export declare class SbbFileSelectorElement extends SbbFileSelectorElement_base
|
|
|
26
29
|
titleContent?: string;
|
|
27
30
|
/** This will be forwarded as aria-label to the native input element. */
|
|
28
31
|
accessibilityLabel: string | undefined;
|
|
29
|
-
/** The
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
private _fileChangedEvent;
|
|
32
|
+
/** The path of the first selected file. Empty string ('') if no file is selected */
|
|
33
|
+
set value(value: string | null);
|
|
34
|
+
get value(): string | null;
|
|
33
35
|
/**
|
|
34
|
-
*
|
|
36
|
+
* The list of selected files.
|
|
35
37
|
*/
|
|
38
|
+
set files(value: File[]);
|
|
36
39
|
get files(): File[];
|
|
40
|
+
private _files;
|
|
41
|
+
/** An event which is emitted each time the file list changes. */
|
|
42
|
+
private _fileChangedEvent;
|
|
37
43
|
private _counter;
|
|
38
44
|
private _loadButton;
|
|
39
45
|
private _dragTarget?;
|
|
@@ -42,9 +48,12 @@ export declare class SbbFileSelectorElement extends SbbFileSelectorElement_base
|
|
|
42
48
|
private _liveRegion;
|
|
43
49
|
private _language;
|
|
44
50
|
/**
|
|
45
|
-
* @deprecated use 'files' property instead
|
|
51
|
+
* @deprecated use the 'files' property instead
|
|
46
52
|
*/
|
|
47
53
|
getFiles(): File[];
|
|
54
|
+
formResetCallback(): void;
|
|
55
|
+
formStateRestoreCallback(state: FormRestoreState | null, _reason?: FormRestoreReason): void;
|
|
56
|
+
protected updateFormValue(): void;
|
|
48
57
|
private _blockEvent;
|
|
49
58
|
private _checkFileEquality;
|
|
50
59
|
private _onDragEnter;
|
|
@@ -58,6 +67,7 @@ export declare class SbbFileSelectorElement extends SbbFileSelectorElement_base
|
|
|
58
67
|
private _removeFile;
|
|
59
68
|
/** Calculates the correct unit for the file's size. */
|
|
60
69
|
private _formatFileSize;
|
|
70
|
+
private _updateA11yLiveRegion;
|
|
61
71
|
private _renderDefaultMode;
|
|
62
72
|
private _renderDropzoneArea;
|
|
63
73
|
private _renderFileList;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../../../src/elements/file-selector/file-selector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"file-selector.d.ts","sourceRoot":"","sources":["../../../../src/elements/file-selector/file-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAW,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAgBpF,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGtB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,+BAA+B,CAAC;AACvC,OAAO,sCAAsC,CAAC;AAC9C,OAAO,YAAY,CAAC;AAEpB,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC;;AAExC;;;;;;;GAOG;AACH,qBAEa,sBAAuB,SAAQ,2BAAoD;IAC9F,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;MAElB;IAEX,wDAAwD;IACrC,OAAO,EAAE,SAAS,GAAG,UAAU,CAAa;IAE/D,mCAAmC;IACC,IAAI,EAAE,GAAG,GAAG,GAAG,CAAO;IAE1D,kDAAkD;IACd,QAAQ,EAAE,OAAO,CAAS;IAE9D,+EAA+E;IAExE,YAAY,EAAE,SAAS,GAAG,YAAY,CAAa;IAE1D,qEAAqE;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEnC,iDAAiD;IACA,YAAY,CAAC,EAAE,MAAM,CAAC;IAEvE,wEAAwE;IACjB,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9F,oFAAoF;IACpF,IACoB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAM7C;IACD,IAAoB,KAAK,IAAI,MAAM,GAAG,IAAI,CAEzC;IAED;;OAEG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAS7B;IACD,IAAW,KAAK,IAAI,IAAI,EAAE,CAEzB;IACD,OAAO,CAAC,MAAM,CAAc;IAE5B,iEAAiE;IACjE,OAAO,CAAC,iBAAiB,CAGvB;IAIF,OAAO,CAAC,QAAQ,CAAa;IAE7B,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAA2C;IAC5D,OAAO,CAAC,WAAW,CAAwB;IAE3C,OAAO,CAAC,SAAS,CAAmC;IAEpD;;OAEG;IACI,QAAQ,IAAI,IAAI,EAAE;IAIT,iBAAiB,IAAI,IAAI;IAIzB,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,IAAI;cAOY,eAAe,IAAI,IAAI;IAM1C,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,WAAW;IAUnB,uDAAuD;IACvD,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,eAAe;cA4BJ,MAAM,IAAI,cAAc;CA2C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import { css, LitElement, nothing } from "lit";
|
|
2
|
-
import { property,
|
|
2
|
+
import { property, customElement } from "lit/decorators.js";
|
|
3
3
|
import { ref } from "lit/directives/ref.js";
|
|
4
4
|
import { html, unsafeStatic } from "lit/static-html.js";
|
|
5
5
|
import { sbbInputModalityDetector } from "./core/a11y.js";
|
|
6
6
|
import { SbbLanguageController } from "./core/controllers.js";
|
|
7
7
|
import { slotState } from "./core/decorators.js";
|
|
8
|
-
import { EventEmitter } from "./core/eventing.js";
|
|
8
|
+
import { EventEmitter, forwardEventToHost } from "./core/eventing.js";
|
|
9
9
|
import { i18nFileSelectorCurrentlySelected, i18nFileSelectorButtonLabel, i18nFileSelectorSubtitleLabel, i18nFileSelectorDeleteFile } from "./core/i18n.js";
|
|
10
|
-
import { SbbDisabledMixin } from "./core/mixins.js";
|
|
10
|
+
import { SbbDisabledMixin, SbbFormAssociatedMixin } from "./core/mixins.js";
|
|
11
11
|
import "./button/secondary-button.js";
|
|
12
12
|
import "./button/secondary-button-static.js";
|
|
13
13
|
import "./icon.js";
|
|
14
|
-
const style = css
|
|
15
|
-
/*
|
|
16
|
-
* SBB table mixin
|
|
17
|
-
* Notes:
|
|
18
|
-
* We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
|
|
19
|
-
* Therefore, we have to build the grid avoiding double borders.
|
|
20
|
-
*/
|
|
21
|
-
*,
|
|
14
|
+
const style = css`*,
|
|
22
15
|
::before,
|
|
23
16
|
::after {
|
|
24
17
|
box-sizing: border-box;
|
|
@@ -39,7 +32,7 @@ const style = css`/** This mixin can be used to avoid spacing problems by insert
|
|
|
39
32
|
}
|
|
40
33
|
|
|
41
34
|
@media (forced-colors: active) {
|
|
42
|
-
:host(
|
|
35
|
+
:host(:disabled) {
|
|
43
36
|
--sbb-file-selector-color: GrayText;
|
|
44
37
|
--sbb-file-selector-subtitle-color: GrayText;
|
|
45
38
|
--sbb-file-selector-border-color: GrayText;
|
|
@@ -176,13 +169,14 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
176
169
|
if (kind && result) __defProp(target, key, result);
|
|
177
170
|
return result;
|
|
178
171
|
};
|
|
179
|
-
let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
172
|
+
let SbbFileSelectorElement = class extends SbbDisabledMixin(SbbFormAssociatedMixin(LitElement)) {
|
|
180
173
|
constructor() {
|
|
181
174
|
super(...arguments);
|
|
182
175
|
this.variant = "default";
|
|
183
176
|
this.size = "m";
|
|
184
177
|
this.multiple = false;
|
|
185
178
|
this.multipleMode = "default";
|
|
179
|
+
this._files = [];
|
|
186
180
|
this._fileChangedEvent = new EventEmitter(
|
|
187
181
|
this,
|
|
188
182
|
SbbFileSelectorElement.events.fileChangedEvent
|
|
@@ -191,17 +185,45 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
191
185
|
this._suffixes = ["B", "kB", "MB", "GB", "TB"];
|
|
192
186
|
this._language = new SbbLanguageController(this);
|
|
193
187
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
188
|
+
set value(value) {
|
|
189
|
+
this._hiddenInput.value = value ?? "";
|
|
190
|
+
if (!value) {
|
|
191
|
+
this.files = [];
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
get value() {
|
|
195
|
+
var _a;
|
|
196
|
+
return (_a = this._hiddenInput) == null ? void 0 : _a.value;
|
|
197
|
+
}
|
|
198
|
+
set files(value) {
|
|
199
|
+
this._files = value ?? [];
|
|
200
|
+
const dt = new DataTransfer();
|
|
201
|
+
this.files.forEach((e) => dt.items.add(e));
|
|
202
|
+
this._hiddenInput.files = dt.files;
|
|
203
|
+
this.updateFormValue();
|
|
204
|
+
}
|
|
197
205
|
get files() {
|
|
198
|
-
return this._files
|
|
206
|
+
return this._files;
|
|
199
207
|
}
|
|
200
208
|
/**
|
|
201
|
-
* @deprecated use 'files' property instead
|
|
209
|
+
* @deprecated use the 'files' property instead
|
|
202
210
|
*/
|
|
203
211
|
getFiles() {
|
|
204
|
-
return this.
|
|
212
|
+
return this.files;
|
|
213
|
+
}
|
|
214
|
+
formResetCallback() {
|
|
215
|
+
this.files = [];
|
|
216
|
+
}
|
|
217
|
+
formStateRestoreCallback(state, _reason) {
|
|
218
|
+
if (!state) {
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
this.files = state.map(([_, value]) => value);
|
|
222
|
+
}
|
|
223
|
+
updateFormValue() {
|
|
224
|
+
const formValue = new FormData();
|
|
225
|
+
this.files.forEach((file) => formValue.append(this.name, file));
|
|
226
|
+
this.internals.setFormValue(formValue);
|
|
205
227
|
}
|
|
206
228
|
_blockEvent(event) {
|
|
207
229
|
event.stopPropagation();
|
|
@@ -212,21 +234,21 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
212
234
|
}
|
|
213
235
|
_onDragEnter(event) {
|
|
214
236
|
this._counter++;
|
|
215
|
-
if (!this.disabled) {
|
|
237
|
+
if (!this.disabled && !this.formDisabled) {
|
|
216
238
|
this._setDragState(event.target, true);
|
|
217
239
|
this._blockEvent(event);
|
|
218
240
|
}
|
|
219
241
|
}
|
|
220
242
|
_onDragLeave(event) {
|
|
221
243
|
this._counter--;
|
|
222
|
-
if (!this.disabled && event.target === this._dragTarget && this._counter === 0) {
|
|
244
|
+
if (!this.disabled && !this.formDisabled && event.target === this._dragTarget && this._counter === 0) {
|
|
223
245
|
this._setDragState();
|
|
224
246
|
this._blockEvent(event);
|
|
225
247
|
}
|
|
226
248
|
}
|
|
227
249
|
_onFileDrop(event) {
|
|
228
250
|
this._counter = 0;
|
|
229
|
-
if (!this.disabled) {
|
|
251
|
+
if (!this.disabled && !this.formDisabled) {
|
|
230
252
|
this._setDragState();
|
|
231
253
|
this._blockEvent(event);
|
|
232
254
|
this._createFileList(event.dataTransfer.files);
|
|
@@ -252,37 +274,41 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
252
274
|
if (fileInput.files) {
|
|
253
275
|
this._createFileList(fileInput.files);
|
|
254
276
|
}
|
|
277
|
+
forwardEventToHost(event, this);
|
|
255
278
|
}
|
|
256
279
|
_createFileList(files) {
|
|
257
|
-
if (!this.multiple || this.multipleMode !== "persistent" ||
|
|
258
|
-
this.
|
|
280
|
+
if (!this.multiple || this.multipleMode !== "persistent" || this.files.length === 0) {
|
|
281
|
+
this.files = Array.from(files);
|
|
259
282
|
} else {
|
|
260
|
-
this.
|
|
261
|
-
|
|
262
|
-
|
|
283
|
+
this.files = Array.from(files).filter(
|
|
284
|
+
// Remove duplicates
|
|
285
|
+
(newFile) => this.files.findIndex((oldFile) => this._checkFileEquality(newFile, oldFile)) === -1
|
|
286
|
+
).concat(this.files);
|
|
263
287
|
}
|
|
264
|
-
this.
|
|
265
|
-
this._fileChangedEvent.emit(this.
|
|
288
|
+
this._updateA11yLiveRegion();
|
|
289
|
+
this._fileChangedEvent.emit(this.files);
|
|
266
290
|
}
|
|
267
291
|
_removeFile(file) {
|
|
268
|
-
this.
|
|
269
|
-
|
|
270
|
-
this.
|
|
271
|
-
this.
|
|
272
|
-
this.
|
|
273
|
-
this._fileChangedEvent.emit(this._files);
|
|
292
|
+
this.files = this.files.filter((f) => !this._checkFileEquality(file, f));
|
|
293
|
+
this._updateA11yLiveRegion();
|
|
294
|
+
this.dispatchEvent(new Event("input", { composed: true, bubbles: true }));
|
|
295
|
+
this.dispatchEvent(new Event("change", { bubbles: true }));
|
|
296
|
+
this._fileChangedEvent.emit(this.files);
|
|
274
297
|
}
|
|
275
298
|
/** Calculates the correct unit for the file's size. */
|
|
276
299
|
_formatFileSize(size) {
|
|
277
300
|
const i = Math.floor(Math.log(size) / Math.log(1024));
|
|
278
301
|
return `${(size / Math.pow(1024, i)).toFixed(0)} ${this._suffixes[i]}`;
|
|
279
302
|
}
|
|
303
|
+
_updateA11yLiveRegion() {
|
|
304
|
+
this._liveRegion.innerText = i18nFileSelectorCurrentlySelected(this.files.map((e) => e.name))[this._language.current];
|
|
305
|
+
}
|
|
280
306
|
_renderDefaultMode() {
|
|
281
307
|
return html`
|
|
282
308
|
<sbb-secondary-button-static
|
|
283
309
|
size=${this.size}
|
|
284
310
|
icon-name="folder-open-small"
|
|
285
|
-
?disabled=${this.disabled}
|
|
311
|
+
?disabled=${this.disabled || this.formDisabled}
|
|
286
312
|
${ref((el) => {
|
|
287
313
|
this._loadButton = el;
|
|
288
314
|
})}
|
|
@@ -306,7 +332,7 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
306
332
|
<span class="sbb-file-selector__dropzone-area--button">
|
|
307
333
|
<sbb-secondary-button-static
|
|
308
334
|
size=${this.size}
|
|
309
|
-
?disabled=${this.disabled}
|
|
335
|
+
?disabled=${this.disabled || this.formDisabled}
|
|
310
336
|
${ref((el) => {
|
|
311
337
|
this._loadButton = el;
|
|
312
338
|
})}
|
|
@@ -318,10 +344,10 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
318
344
|
`;
|
|
319
345
|
}
|
|
320
346
|
_renderFileList() {
|
|
321
|
-
const TAG_NAME = this.
|
|
347
|
+
const TAG_NAME = this.files.length > 1 ? { WRAPPER: "ul", ELEMENT: "li" } : { WRAPPER: "div", ELEMENT: "span" };
|
|
322
348
|
return html`
|
|
323
349
|
<${unsafeStatic(TAG_NAME.WRAPPER)} class="sbb-file-selector__file-list">
|
|
324
|
-
${this.
|
|
350
|
+
${this.files.map(
|
|
325
351
|
(file) => html`
|
|
326
352
|
<${unsafeStatic(TAG_NAME.ELEMENT)} class="sbb-file-selector__file">
|
|
327
353
|
<span class="sbb-file-selector__file-details">
|
|
@@ -355,7 +381,7 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
355
381
|
<input
|
|
356
382
|
class="sbb-file-selector__visually-hidden"
|
|
357
383
|
type="file"
|
|
358
|
-
?disabled=${this.disabled}
|
|
384
|
+
?disabled=${this.disabled || this.formDisabled}
|
|
359
385
|
?multiple=${this.multiple}
|
|
360
386
|
accept=${this.accept || nothing}
|
|
361
387
|
aria-label=${ariaLabel || nothing}
|
|
@@ -373,7 +399,7 @@ let SbbFileSelectorElement = class extends SbbDisabledMixin(LitElement) {
|
|
|
373
399
|
class="sbb-file-selector__visually-hidden"
|
|
374
400
|
${ref((p) => this._liveRegion = p)}
|
|
375
401
|
></p>
|
|
376
|
-
${this.
|
|
402
|
+
${this.files.length > 0 ? this._renderFileList() : nothing}
|
|
377
403
|
<div class="sbb-file-selector__error">
|
|
378
404
|
<slot name="error"></slot>
|
|
379
405
|
</div>
|
|
@@ -407,8 +433,11 @@ __decorateClass([
|
|
|
407
433
|
property({ attribute: "accessibility-label" })
|
|
408
434
|
], SbbFileSelectorElement.prototype, "accessibilityLabel", 2);
|
|
409
435
|
__decorateClass([
|
|
410
|
-
|
|
411
|
-
], SbbFileSelectorElement.prototype, "
|
|
436
|
+
property({ attribute: false })
|
|
437
|
+
], SbbFileSelectorElement.prototype, "value", 1);
|
|
438
|
+
__decorateClass([
|
|
439
|
+
property({ attribute: false })
|
|
440
|
+
], SbbFileSelectorElement.prototype, "files", 1);
|
|
412
441
|
SbbFileSelectorElement = __decorateClass([
|
|
413
442
|
customElement("sbb-file-selector"),
|
|
414
443
|
slotState()
|
|
@@ -416,4 +445,4 @@ SbbFileSelectorElement = __decorateClass([
|
|
|
416
445
|
export {
|
|
417
446
|
SbbFileSelectorElement
|
|
418
447
|
};
|
|
419
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2ZpbGUtc2VsZWN0b3IvZmlsZS1zZWxlY3Rvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5pbXBvcnQgeyBodG1sLCB1bnNhZmVTdGF0aWMgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQgfSBmcm9tICcuLi9idXR0b24uanMnO1xuaW1wb3J0IHsgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yIH0gZnJvbSAnLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHtcbiAgaTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsLFxuICBpMThuRmlsZVNlbGVjdG9yQ3VycmVudGx5U2VsZWN0ZWQsXG4gIGkxOG5GaWxlU2VsZWN0b3JEZWxldGVGaWxlLFxuICBpMThuRmlsZVNlbGVjdG9yU3VidGl0bGVMYWJlbCxcbn0gZnJvbSAnLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4gfSBmcm9tICcuLi9jb3JlL21peGlucy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2ZpbGUtc2VsZWN0b3Iuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi9idXR0b24vc2Vjb25kYXJ5LWJ1dHRvbi5qcyc7XG5pbXBvcnQgJy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLXN0YXRpYy5qcyc7XG5pbXBvcnQgJy4uL2ljb24uanMnO1xuXG5leHBvcnQgdHlwZSBET01FdmVudCA9IGdsb2JhbFRoaXMuRXZlbnQ7XG5cbi8qKlxuICogSXQgYWxsb3dzIHRvIHNlbGVjdCBvbmUgb3IgbW9yZSBmaWxlIGZyb20gc3RvcmFnZSBkZXZpY2VzIGFuZCBkaXNwbGF5IHRoZW0uXG4gKlxuICogQHNsb3QgZXJyb3IgLSBVc2UgdGhpcyB0byBwcm92aWRlIGEgYHNiYi1mb3JtLWVycm9yYCB0byBzaG93IGFuIGVycm9yIG1lc3NhZ2UuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PEZpbGVbXT59IGZpbGVDaGFuZ2VkIC0gQW4gZXZlbnQgd2hpY2ggaXMgZW1pdHRlZCBlYWNoIHRpbWUgdGhlIGZpbGUgbGlzdCBjaGFuZ2VzLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLWZpbGUtc2VsZWN0b3InKVxuQHNsb3RTdGF0ZSgpXG5leHBvcnQgY2xhc3MgU2JiRmlsZVNlbGVjdG9yRWxlbWVudCBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZmlsZUNoYW5nZWRFdmVudDogJ2ZpbGVDaGFuZ2VkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogV2hldGhlciB0aGUgY29tcG9uZW50IGhhcyBhIGRyb3B6b25lIGFyZWEgb3Igbm90LiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgdmFyaWFudDogJ2RlZmF1bHQnIHwgJ2Ryb3B6b25lJyA9ICdkZWZhdWx0JztcblxuICAvKiogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcyBvciBtLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBzaXplOiAncycgfCAnbScgPSAnbSc7XG5cbiAgLyoqIFdoZXRoZXIgbW9yZSB0aGFuIG9uZSBmaWxlIGNhbiBiZSBzZWxlY3RlZC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgbmV3bHkgYWRkZWQgZmlsZXMgc2hvdWxkIG92ZXJyaWRlIHRoZSBwcmV2aW91c2x5IGFkZGVkIG9uZXMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ211bHRpcGxlLW1vZGUnIH0pXG4gIHB1YmxpYyBtdWx0aXBsZU1vZGU6ICdkZWZhdWx0JyB8ICdwZXJzaXN0ZW50JyA9ICdkZWZhdWx0JztcblxuICAvKiogQSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBhbGxvd2VkIHVuaXF1ZSBmaWxlIHR5cGUgc3BlY2lmaWVycy4gKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIGFjY2VwdD86IHN0cmluZztcblxuICAvKiogVGhlIHRpdGxlIGRpc3BsYXllZCBpbiBgZHJvcHpvbmVgIHZhcmlhbnQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWNvbnRlbnQnIH0pIHB1YmxpYyB0aXRsZUNvbnRlbnQ/OiBzdHJpbmc7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktbGFiZWwnIH0pIHB1YmxpYyBhY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKiogVGhlIGxpc3Qgb2Ygc2VsZWN0ZWQgZmlsZXMuICovXG4gIEBzdGF0ZSgpIHByaXZhdGUgX2ZpbGVzPzogRmlsZVtdO1xuXG4gIC8qKiBBbiBldmVudCB3aGljaCBpcyBlbWl0dGVkIGVhY2ggdGltZSB0aGUgZmlsZSBsaXN0IGNoYW5nZXMuICovXG4gIHByaXZhdGUgX2ZpbGVDaGFuZ2VkRXZlbnQ6IEV2ZW50RW1pdHRlcjxGaWxlW10+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYkZpbGVTZWxlY3RvckVsZW1lbnQuZXZlbnRzLmZpbGVDaGFuZ2VkRXZlbnQsXG4gICk7XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBmaWxlcy5cbiAgICovXG4gIHB1YmxpYyBnZXQgZmlsZXMoKTogRmlsZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsZXMgfHwgW107XG4gIH1cblxuICAvLyBTYWZhcmkgaGFzIGEgcGVjdWxpYXIgYmVoYXZpb3Igd2hlbiBkcmFnZ2luZyBmaWxlcyBvbiB0aGUgaW5uZXIgYnV0dG9uIGluICdkcm9wem9uZScgdmFyaWFudDtcbiAgLy8gdGhpcyB3aWxsIHJlcXVpcmUgYSBjb3VudGVyIHRvIGNvcnJlY3RseSBoYW5kbGUgdGhlIGRyYWdFbnRlci9kcmFnTGVhdmUuXG4gIHByaXZhdGUgX2NvdW50ZXI6IG51bWJlciA9IDA7XG5cbiAgcHJpdmF0ZSBfbG9hZEJ1dHRvbiE6IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gIHByaXZhdGUgX2RyYWdUYXJnZXQ/OiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfaGlkZGVuSW5wdXQhOiBIVE1MSW5wdXRFbGVtZW50O1xuICBwcml2YXRlIF9zdWZmaXhlczogc3RyaW5nW10gPSBbJ0InLCAna0InLCAnTUInLCAnR0InLCAnVEInXTtcbiAgcHJpdmF0ZSBfbGl2ZVJlZ2lvbiE6IEhUTUxQYXJhZ3JhcGhFbGVtZW50O1xuXG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlICdmaWxlcycgcHJvcGVydHkgaW5zdGVhZFxuICAgKi9cbiAgcHVibGljIGdldEZpbGVzKCk6IEZpbGVbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbGVzIHx8IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBfYmxvY2tFdmVudChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRmlsZUVxdWFsaXR5KGZpbGUxOiBGaWxlLCBmaWxlMjogRmlsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBmaWxlMS5uYW1lID09PSBmaWxlMi5uYW1lICYmXG4gICAgICBmaWxlMS5zaXplID09PSBmaWxlMi5zaXplICYmXG4gICAgICBmaWxlMS5sYXN0TW9kaWZpZWQgPT09IGZpbGUyLmxhc3RNb2RpZmllZFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9vbkRyYWdFbnRlcihldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fY291bnRlcisrO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fc2V0RHJhZ1N0YXRlKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCwgdHJ1ZSk7XG4gICAgICB0aGlzLl9ibG9ja0V2ZW50KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkRyYWdMZWF2ZShldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fY291bnRlci0tO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiBldmVudC50YXJnZXQgPT09IHRoaXMuX2RyYWdUYXJnZXQgJiYgdGhpcy5fY291bnRlciA9PT0gMCkge1xuICAgICAgdGhpcy5fc2V0RHJhZ1N0YXRlKCk7XG4gICAgICB0aGlzLl9ibG9ja0V2ZW50KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkZpbGVEcm9wKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9jb3VudGVyID0gMDtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX3NldERyYWdTdGF0ZSgpO1xuICAgICAgdGhpcy5fYmxvY2tFdmVudChldmVudCk7XG4gICAgICB0aGlzLl9jcmVhdGVGaWxlTGlzdChldmVudC5kYXRhVHJhbnNmZXIhLmZpbGVzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkZvY3VzKCk6IHZvaWQge1xuICAgIGlmIChzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnKSB7XG4gICAgICB0aGlzLl9sb2FkQnV0dG9uLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy12aXNpYmxlJywgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25CbHVyKCk6IHZvaWQge1xuICAgIGlmIChzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnKSB7XG4gICAgICB0aGlzLl9sb2FkQnV0dG9uLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy12aXNpYmxlJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2V0RHJhZ1N0YXRlKFxuICAgIGRyYWdUYXJnZXQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkLFxuICAgIGlzRHJhZ0VudGVyOiBib29sZWFuID0gZmFsc2UsXG4gICk6IHZvaWQge1xuICAgIHRoaXMuX2RyYWdUYXJnZXQgPSBkcmFnVGFyZ2V0O1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWFjdGl2ZScsIGlzRHJhZ0VudGVyKTtcbiAgICB0aGlzLl9sb2FkQnV0dG9uLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY3RpdmUnLCBpc0RyYWdFbnRlcik7XG4gIH1cblxuICBwcml2YXRlIF9yZWFkRmlsZXMoZXZlbnQ6IERPTUV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZmlsZUlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgaWYgKGZpbGVJbnB1dC5maWxlcykge1xuICAgICAgdGhpcy5fY3JlYXRlRmlsZUxpc3QoZmlsZUlucHV0LmZpbGVzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVGaWxlTGlzdChmaWxlczogRmlsZUxpc3QpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5tdWx0aXBsZSB8fFxuICAgICAgdGhpcy5tdWx0aXBsZU1vZGUgIT09ICdwZXJzaXN0ZW50JyB8fFxuICAgICAgIXRoaXMuX2ZpbGVzIHx8XG4gICAgICB0aGlzLl9maWxlcy5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHRoaXMuX2ZpbGVzID0gQXJyYXkuZnJvbShmaWxlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2ZpbGVzID0gQXJyYXkuZnJvbShmaWxlcylcbiAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAobmV3RmlsZTogRmlsZSk6IGJvb2xlYW4gPT5cbiAgICAgICAgICAgIHRoaXMuX2ZpbGVzIS5maW5kSW5kZXgoKG9sZEZpbGU6IEZpbGUpID0+IHRoaXMuX2NoZWNrRmlsZUVxdWFsaXR5KG5ld0ZpbGUsIG9sZEZpbGUpKSA9PT1cbiAgICAgICAgICAgIC0xLFxuICAgICAgICApXG4gICAgICAgIC5jb25jYXQodGhpcy5fZmlsZXMpO1xuICAgIH1cbiAgICB0aGlzLl9saXZlUmVnaW9uLmlubmVyVGV4dCA9IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCh0aGlzLl9maWxlcy5tYXAoKGUpID0+IGUubmFtZSkpW1xuICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudFxuICAgIF07XG4gICAgdGhpcy5fZmlsZUNoYW5nZWRFdmVudC5lbWl0KHRoaXMuX2ZpbGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZUZpbGUoZmlsZTogRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuX2ZpbGVzID0gdGhpcy5fZmlsZXMhLmZpbHRlcigoZjogRmlsZSkgPT4gIXRoaXMuX2NoZWNrRmlsZUVxdWFsaXR5KGZpbGUsIGYpKTtcbiAgICAvLyBUaGUgaXRlbSBtdXN0IGJlIHJlbW92ZWQgZnJvbSB0aGUgaGlkZGVuIGZpbGUgaW5wdXQgdG9vOyB0aGUgRmlsZUxpc3QgQVBJIGlzIGZsYXdlZCwgc28gdGhlIERhdGFUcmFuc2ZlciBvYmplY3QgaXMgdXNlZC5cbiAgICBjb25zdCBkdDogRGF0YVRyYW5zZmVyID0gbmV3IERhdGFUcmFuc2ZlcigpO1xuICAgIHRoaXMuX2ZpbGVzLmZvckVhY2goKGU6IEZpbGUpID0+IGR0Lml0ZW1zLmFkZChlKSk7XG4gICAgdGhpcy5faGlkZGVuSW5wdXQuZmlsZXMgPSBkdC5maWxlcztcbiAgICB0aGlzLl9saXZlUmVnaW9uLmlubmVyVGV4dCA9IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCh0aGlzLl9maWxlcy5tYXAoKGUpID0+IGUubmFtZSkpW1xuICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudFxuICAgIF07XG4gICAgdGhpcy5fZmlsZUNoYW5nZWRFdmVudC5lbWl0KHRoaXMuX2ZpbGVzKTtcbiAgfVxuXG4gIC8qKiBDYWxjdWxhdGVzIHRoZSBjb3JyZWN0IHVuaXQgZm9yIHRoZSBmaWxlJ3Mgc2l6ZS4gKi9cbiAgcHJpdmF0ZSBfZm9ybWF0RmlsZVNpemUoc2l6ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBpOiBudW1iZXIgPSBNYXRoLmZsb29yKE1hdGgubG9nKHNpemUpIC8gTWF0aC5sb2coMTAyNCkpO1xuICAgIHJldHVybiBgJHsoc2l6ZSAvIE1hdGgucG93KDEwMjQsIGkpKS50b0ZpeGVkKDApfSAke3RoaXMuX3N1ZmZpeGVzW2ldfWA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJEZWZhdWx0TW9kZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljXG4gICAgICAgIHNpemU9JHt0aGlzLnNpemV9XG4gICAgICAgIGljb24tbmFtZT1cImZvbGRlci1vcGVuLXNtYWxsXCJcbiAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgIHRoaXMuX2xvYWRCdXR0b24gPSBlbCBhcyBTYmJTZWNvbmRhcnlCdXR0b25TdGF0aWNFbGVtZW50O1xuICAgICAgICB9KX1cbiAgICAgID5cbiAgICAgICAgJHtpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWxbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICA8L3NiYi1zZWNvbmRhcnktYnV0dG9uLXN0YXRpYz5cbiAgICBgO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyRHJvcHpvbmVBcmVhKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2Ryb3B6b25lLWFyZWFcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZHJvcHpvbmUtYXJlYS0taWNvblwiPlxuICAgICAgICAgIDxzYmItaWNvblxuICAgICAgICAgICAgbmFtZT0ke3RoaXMuc2l6ZSA9PT0gJ20nID8gJ2ZvbGRlci1vcGVuLW1lZGl1bScgOiAnZm9sZGVyLW9wZW4tc21hbGwnfVxuICAgICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2Ryb3B6b25lLWFyZWEtLXRpdGxlXCI+JHt0aGlzLnRpdGxlQ29udGVudH08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2Ryb3B6b25lLWFyZWEtLXN1YnRpdGxlXCI+XG4gICAgICAgICAgJHtpMThuRmlsZVNlbGVjdG9yU3VidGl0bGVMYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19kcm9wem9uZS1hcmVhLS1idXR0b25cIj5cbiAgICAgICAgICA8c2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljXG4gICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5fbG9hZEJ1dHRvbiA9IGVsIGFzIFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICAke2kxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICA8L3NiYi1zZWNvbmRhcnktYnV0dG9uLXN0YXRpYz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJGaWxlTGlzdCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgVEFHX05BTUU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPVxuICAgICAgdGhpcy5fZmlsZXMhLmxlbmd0aCA+IDFcbiAgICAgICAgPyB7IFdSQVBQRVI6ICd1bCcsIEVMRU1FTlQ6ICdsaScgfVxuICAgICAgICA6IHsgV1JBUFBFUjogJ2RpdicsIEVMRU1FTlQ6ICdzcGFuJyB9O1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgbGl0L2JpbmRpbmctcG9zaXRpb25zICovXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuV1JBUFBFUil9IGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUtbGlzdFwiPlxuICAgICAgICAke3RoaXMuX2ZpbGVzIS5tYXAoXG4gICAgICAgICAgKGZpbGU6IEZpbGUpID0+IGh0bWxgXG4gICAgICAgICAgPCR7dW5zYWZlU3RhdGljKFRBR19OQU1FLkVMRU1FTlQpfSBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19maWxlXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19maWxlLWRldGFpbHNcIj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1uYW1lXCI+JHtmaWxlLm5hbWV9PC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19maWxlLXNpemVcIj4ke3RoaXMuX2Zvcm1hdEZpbGVTaXplKGZpbGUuc2l6ZSl9PC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNiYi1zZWNvbmRhcnktYnV0dG9uXG4gICAgICAgICAgICAgIHNpemU9JHt0aGlzLnNpemV9XG4gICAgICAgICAgICAgIGljb24tbmFtZT1cInRyYXNoLXNtYWxsXCJcbiAgICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4gdGhpcy5fcmVtb3ZlRmlsZShmaWxlKX1cbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2Ake2kxOG5GaWxlU2VsZWN0b3JEZWxldGVGaWxlW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAtICR7ZmlsZS5uYW1lfWB9XG4gICAgICAgICAgICA+PC9zYmItc2Vjb25kYXJ5LWJ1dHRvbj5cbiAgICAgICAgICA8LyR7dW5zYWZlU3RhdGljKFRBR19OQU1FLkVMRU1FTlQpfT5gLFxuICAgICAgICApfVxuICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdfTkFNRS5XUkFQUEVSKX0+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IGFyaWFMYWJlbCA9IHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsXG4gICAgICA/IGAke2kxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0gLSAke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsfWBcbiAgICAgIDogdW5kZWZpbmVkO1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19pbnB1dC1jb250YWluZXJcIlxuICAgICAgICAgIEBkcmFnZW50ZXI9JHt0aGlzLl9vbkRyYWdFbnRlcn1cbiAgICAgICAgICBAZHJhZ292ZXI9JHt0aGlzLl9ibG9ja0V2ZW50fVxuICAgICAgICAgIEBkcmFnbGVhdmU9JHt0aGlzLl9vbkRyYWdMZWF2ZX1cbiAgICAgICAgICBAZHJvcD0ke3RoaXMuX29uRmlsZURyb3B9XG4gICAgICAgID5cbiAgICAgICAgICA8bGFiZWw+XG4gICAgICAgICAgICAke3RoaXMudmFyaWFudCA9PT0gJ2RlZmF1bHQnID8gdGhpcy5fcmVuZGVyRGVmYXVsdE1vZGUoKSA6IHRoaXMuX3JlbmRlckRyb3B6b25lQXJlYSgpfVxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX3Zpc3VhbGx5LWhpZGRlblwiXG4gICAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICAgP211bHRpcGxlPSR7dGhpcy5tdWx0aXBsZX1cbiAgICAgICAgICAgICAgYWNjZXB0PSR7dGhpcy5hY2NlcHQgfHwgbm90aGluZ31cbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2FyaWFMYWJlbCB8fCBub3RoaW5nfVxuICAgICAgICAgICAgICBAY2hhbmdlPSR7dGhpcy5fcmVhZEZpbGVzfVxuICAgICAgICAgICAgICBAZm9jdXM9JHt0aGlzLl9vbkZvY3VzfVxuICAgICAgICAgICAgICBAYmx1cj0ke3RoaXMuX29uQmx1cn1cbiAgICAgICAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2hpZGRlbklucHV0ID0gZWwgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cFxuICAgICAgICAgIHJvbGU9XCJzdGF0dXNcIlxuICAgICAgICAgIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX3Zpc3VhbGx5LWhpZGRlblwiXG4gICAgICAgICAgJHtyZWYoKHA/OiBFbGVtZW50KSA9PiAodGhpcy5fbGl2ZVJlZ2lvbiA9IHAgYXMgSFRNTFBhcmFncmFwaEVsZW1lbnQpKX1cbiAgICAgICAgPjwvcD5cbiAgICAgICAgJHt0aGlzLl9maWxlcyAmJiB0aGlzLl9maWxlcy5sZW5ndGggPiAwID8gdGhpcy5fcmVuZGVyRmlsZUxpc3QoKSA6IG5vdGhpbmd9XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZXJyb3JcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiZXJyb3JcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWZpbGUtc2VsZWN0b3InOiBTYmJGaWxlU2VsZWN0b3JFbGVtZW50O1xuICB9XG59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
|
|
448
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2ZpbGUtc2VsZWN0b3IvZmlsZS1zZWxlY3Rvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBMaXRFbGVtZW50LCBub3RoaW5nLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcbmltcG9ydCB7IGh0bWwsIHVuc2FmZVN0YXRpYyB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB0eXBlIHsgU2JiU2Vjb25kYXJ5QnV0dG9uU3RhdGljRWxlbWVudCB9IGZyb20gJy4uL2J1dHRvbi5qcyc7XG5pbXBvcnQgeyBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgfSBmcm9tICcuLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBmb3J3YXJkRXZlbnRUb0hvc3QgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7XG4gIGkxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbCxcbiAgaTE4bkZpbGVTZWxlY3RvckN1cnJlbnRseVNlbGVjdGVkLFxuICBpMThuRmlsZVNlbGVjdG9yRGVsZXRlRmlsZSxcbiAgaTE4bkZpbGVTZWxlY3RvclN1YnRpdGxlTGFiZWwsXG59IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQge1xuICB0eXBlIEZvcm1SZXN0b3JlUmVhc29uLFxuICB0eXBlIEZvcm1SZXN0b3JlU3RhdGUsXG4gIFNiYkRpc2FibGVkTWl4aW4sXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4sXG59IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZmlsZS1zZWxlY3Rvci5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLmpzJztcbmltcG9ydCAnLi4vYnV0dG9uL3NlY29uZGFyeS1idXR0b24tc3RhdGljLmpzJztcbmltcG9ydCAnLi4vaWNvbi5qcyc7XG5cbmV4cG9ydCB0eXBlIERPTUV2ZW50ID0gZ2xvYmFsVGhpcy5FdmVudDtcblxuLyoqXG4gKiBJdCBhbGxvd3MgdG8gc2VsZWN0IG9uZSBvciBtb3JlIGZpbGUgZnJvbSBzdG9yYWdlIGRldmljZXMgYW5kIGRpc3BsYXkgdGhlbS5cbiAqXG4gKiBAc2xvdCBlcnJvciAtIFVzZSB0aGlzIHRvIHByb3ZpZGUgYSBgc2JiLWZvcm0tZXJyb3JgIHRvIHNob3cgYW4gZXJyb3IgbWVzc2FnZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8RmlsZVtdPn0gZmlsZUNoYW5nZWQgLSBBbiBldmVudCB3aGljaCBpcyBlbWl0dGVkIGVhY2ggdGltZSB0aGUgZmlsZSBsaXN0IGNoYW5nZXMuXG4gKiBAZXZlbnQgY2hhbmdlIC0gQW4gZXZlbnQgd2hpY2ggaXMgZW1pdHRlZCBlYWNoIHRpbWUgdGhlIHVzZXIgbW9kaWZpZXMgdGhlIHZhbHVlLiBVbmxpa2UgdGhlIGlucHV0IGV2ZW50LCB0aGUgY2hhbmdlIGV2ZW50IGlzIG5vdCBuZWNlc3NhcmlseSBmaXJlZCBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZVxuICogQGV2ZW50IGlucHV0IC0gQW4gZXZlbnQgd2hpY2ggaXMgZW1pdHRlZCBlYWNoIHRpbWUgdGhlIHZhbHVlIGNoYW5nZXMgYXMgYSBkaXJlY3QgcmVzdWx0IG9mIGEgdXNlciBhY3Rpb24uXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItZmlsZS1zZWxlY3RvcicpXG5Ac2xvdFN0YXRlKClcbmV4cG9ydCBjbGFzcyBTYmJGaWxlU2VsZWN0b3JFbGVtZW50IGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihTYmJGb3JtQXNzb2NpYXRlZE1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBmaWxlQ2hhbmdlZEV2ZW50OiAnZmlsZUNoYW5nZWQnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBjb21wb25lbnQgaGFzIGEgZHJvcHpvbmUgYXJlYSBvciBub3QuICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyB2YXJpYW50OiAnZGVmYXVsdCcgfCAnZHJvcHpvbmUnID0gJ2RlZmF1bHQnO1xuXG4gIC8qKiBTaXplIHZhcmlhbnQsIGVpdGhlciBzIG9yIG0uICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIHNpemU6ICdzJyB8ICdtJyA9ICdtJztcblxuICAvKiogV2hldGhlciBtb3JlIHRoYW4gb25lIGZpbGUgY2FuIGJlIHNlbGVjdGVkLiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBuZXdseSBhZGRlZCBmaWxlcyBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzbHkgYWRkZWQgb25lcy4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnbXVsdGlwbGUtbW9kZScgfSlcbiAgcHVibGljIG11bHRpcGxlTW9kZTogJ2RlZmF1bHQnIHwgJ3BlcnNpc3RlbnQnID0gJ2RlZmF1bHQnO1xuXG4gIC8qKiBBIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGFsbG93ZWQgdW5pcXVlIGZpbGUgdHlwZSBzcGVjaWZpZXJzLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgYWNjZXB0Pzogc3RyaW5nO1xuXG4gIC8qKiBUaGUgdGl0bGUgZGlzcGxheWVkIGluIGBkcm9wem9uZWAgdmFyaWFudC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcgfSkgcHVibGljIHRpdGxlQ29udGVudD86IHN0cmluZztcblxuICAvKiogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSkgcHVibGljIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBUaGUgcGF0aCBvZiB0aGUgZmlyc3Qgc2VsZWN0ZWQgZmlsZS4gRW1wdHkgc3RyaW5nICgnJykgaWYgbm8gZmlsZSBpcyBzZWxlY3RlZCAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHB1YmxpYyBvdmVycmlkZSBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLl9oaWRkZW5JbnB1dC52YWx1ZSA9IHZhbHVlID8/ICcnO1xuXG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5maWxlcyA9IFtdO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9oaWRkZW5JbnB1dD8udmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2Ygc2VsZWN0ZWQgZmlsZXMuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHB1YmxpYyBzZXQgZmlsZXModmFsdWU6IEZpbGVbXSkge1xuICAgIHRoaXMuX2ZpbGVzID0gdmFsdWUgPz8gW107XG5cbiAgICAvLyB1cGRhdGUgdGhlIGlubmVyIGlucHV0XG4gICAgY29uc3QgZHQ6IERhdGFUcmFuc2ZlciA9IG5ldyBEYXRhVHJhbnNmZXIoKTtcbiAgICB0aGlzLmZpbGVzLmZvckVhY2goKGU6IEZpbGUpID0+IGR0Lml0ZW1zLmFkZChlKSk7XG4gICAgdGhpcy5faGlkZGVuSW5wdXQuZmlsZXMgPSBkdC5maWxlcztcblxuICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gIH1cbiAgcHVibGljIGdldCBmaWxlcygpOiBGaWxlW10ge1xuICAgIHJldHVybiB0aGlzLl9maWxlcztcbiAgfVxuICBwcml2YXRlIF9maWxlczogRmlsZVtdID0gW107XG5cbiAgLyoqIEFuIGV2ZW50IHdoaWNoIGlzIGVtaXR0ZWQgZWFjaCB0aW1lIHRoZSBmaWxlIGxpc3QgY2hhbmdlcy4gKi9cbiAgcHJpdmF0ZSBfZmlsZUNoYW5nZWRFdmVudDogRXZlbnRFbWl0dGVyPEZpbGVbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiRmlsZVNlbGVjdG9yRWxlbWVudC5ldmVudHMuZmlsZUNoYW5nZWRFdmVudCxcbiAgKTtcblxuICAvLyBTYWZhcmkgaGFzIGEgcGVjdWxpYXIgYmVoYXZpb3Igd2hlbiBkcmFnZ2luZyBmaWxlcyBvbiB0aGUgaW5uZXIgYnV0dG9uIGluICdkcm9wem9uZScgdmFyaWFudDtcbiAgLy8gdGhpcyB3aWxsIHJlcXVpcmUgYSBjb3VudGVyIHRvIGNvcnJlY3RseSBoYW5kbGUgdGhlIGRyYWdFbnRlci9kcmFnTGVhdmUuXG4gIHByaXZhdGUgX2NvdW50ZXI6IG51bWJlciA9IDA7XG5cbiAgcHJpdmF0ZSBfbG9hZEJ1dHRvbiE6IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gIHByaXZhdGUgX2RyYWdUYXJnZXQ/OiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfaGlkZGVuSW5wdXQhOiBIVE1MSW5wdXRFbGVtZW50O1xuICBwcml2YXRlIF9zdWZmaXhlczogc3RyaW5nW10gPSBbJ0InLCAna0InLCAnTUInLCAnR0InLCAnVEInXTtcbiAgcHJpdmF0ZSBfbGl2ZVJlZ2lvbiE6IEhUTUxQYXJhZ3JhcGhFbGVtZW50O1xuXG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHRoZSAnZmlsZXMnIHByb3BlcnR5IGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyBnZXRGaWxlcygpOiBGaWxlW10ge1xuICAgIHJldHVybiB0aGlzLmZpbGVzO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuZmlsZXMgPSBbXTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgIF9yZWFzb24/OiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKCFzdGF0ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpbGVzID0gKHN0YXRlIGFzIFtzdHJpbmcsIEZvcm1EYXRhRW50cnlWYWx1ZV1bXSkubWFwKChbXywgdmFsdWVdKSA9PiB2YWx1ZSBhcyBGaWxlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgY29uc3QgZm9ybVZhbHVlID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgdGhpcy5maWxlcy5mb3JFYWNoKChmaWxlKSA9PiBmb3JtVmFsdWUuYXBwZW5kKHRoaXMubmFtZSwgZmlsZSkpO1xuICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZShmb3JtVmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYmxvY2tFdmVudChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRmlsZUVxdWFsaXR5KGZpbGUxOiBGaWxlLCBmaWxlMjogRmlsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBmaWxlMS5uYW1lID09PSBmaWxlMi5uYW1lICYmXG4gICAgICBmaWxlMS5zaXplID09PSBmaWxlMi5zaXplICYmXG4gICAgICBmaWxlMS5sYXN0TW9kaWZpZWQgPT09IGZpbGUyLmxhc3RNb2RpZmllZFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9vbkRyYWdFbnRlcihldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fY291bnRlcisrO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5mb3JtRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX3NldERyYWdTdGF0ZShldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQsIHRydWUpO1xuICAgICAgdGhpcy5fYmxvY2tFdmVudChldmVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuX2NvdW50ZXItLTtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5kaXNhYmxlZCAmJlxuICAgICAgIXRoaXMuZm9ybURpc2FibGVkICYmXG4gICAgICBldmVudC50YXJnZXQgPT09IHRoaXMuX2RyYWdUYXJnZXQgJiZcbiAgICAgIHRoaXMuX2NvdW50ZXIgPT09IDBcbiAgICApIHtcbiAgICAgIHRoaXMuX3NldERyYWdTdGF0ZSgpO1xuICAgICAgdGhpcy5fYmxvY2tFdmVudChldmVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25GaWxlRHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fY291bnRlciA9IDA7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLmZvcm1EaXNhYmxlZCkge1xuICAgICAgdGhpcy5fc2V0RHJhZ1N0YXRlKCk7XG4gICAgICB0aGlzLl9ibG9ja0V2ZW50KGV2ZW50KTtcbiAgICAgIHRoaXMuX2NyZWF0ZUZpbGVMaXN0KGV2ZW50LmRhdGFUcmFuc2ZlciEuZmlsZXMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHkgPT09ICdrZXlib2FyZCcpIHtcbiAgICAgIHRoaXMuX2xvYWRCdXR0b24udG9nZ2xlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkJsdXIoKTogdm9pZCB7XG4gICAgaWYgKHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHkgPT09ICdrZXlib2FyZCcpIHtcbiAgICAgIHRoaXMuX2xvYWRCdXR0b24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zZXREcmFnU3RhdGUoXG4gICAgZHJhZ1RhcmdldDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsXG4gICAgaXNEcmFnRW50ZXI6IGJvb2xlYW4gPSBmYWxzZSxcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5fZHJhZ1RhcmdldCA9IGRyYWdUYXJnZXQ7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtYWN0aXZlJywgaXNEcmFnRW50ZXIpO1xuICAgIHRoaXMuX2xvYWRCdXR0b24udG9nZ2xlQXR0cmlidXRlKCdkYXRhLWFjdGl2ZScsIGlzRHJhZ0VudGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlYWRGaWxlcyhldmVudDogRE9NRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBmaWxlSW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBpZiAoZmlsZUlucHV0LmZpbGVzKSB7XG4gICAgICB0aGlzLl9jcmVhdGVGaWxlTGlzdChmaWxlSW5wdXQuZmlsZXMpO1xuICAgIH1cbiAgICBmb3J3YXJkRXZlbnRUb0hvc3QoZXZlbnQsIHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlRmlsZUxpc3QoZmlsZXM6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8IHRoaXMubXVsdGlwbGVNb2RlICE9PSAncGVyc2lzdGVudCcgfHwgdGhpcy5maWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuZmlsZXMgPSBBcnJheS5mcm9tKGZpbGVzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWxlcyA9IEFycmF5LmZyb20oZmlsZXMpXG4gICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgLy8gUmVtb3ZlIGR1cGxpY2F0ZXNcbiAgICAgICAgICAobmV3RmlsZTogRmlsZSk6IGJvb2xlYW4gPT5cbiAgICAgICAgICAgIHRoaXMuZmlsZXMhLmZpbmRJbmRleCgob2xkRmlsZTogRmlsZSkgPT4gdGhpcy5fY2hlY2tGaWxlRXF1YWxpdHkobmV3RmlsZSwgb2xkRmlsZSkpID09PVxuICAgICAgICAgICAgLTEsXG4gICAgICAgIClcbiAgICAgICAgLmNvbmNhdCh0aGlzLmZpbGVzKTtcbiAgICB9XG4gICAgdGhpcy5fdXBkYXRlQTExeUxpdmVSZWdpb24oKTtcbiAgICB0aGlzLl9maWxlQ2hhbmdlZEV2ZW50LmVtaXQodGhpcy5maWxlcyk7XG4gIH1cblxuICBwcml2YXRlIF9yZW1vdmVGaWxlKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVzID0gdGhpcy5maWxlcy5maWx0ZXIoKGY6IEZpbGUpID0+ICF0aGlzLl9jaGVja0ZpbGVFcXVhbGl0eShmaWxlLCBmKSk7XG4gICAgdGhpcy5fdXBkYXRlQTExeUxpdmVSZWdpb24oKTtcblxuICAgIC8vIERpc3BhdGNoIG5hdGl2ZSBldmVudHMgYXMgaWYgdGhlIHJlc2V0IGlzIGRvbmUgdmlhIHRoZSBmaWxlIHNlbGVjdGlvbiB3aW5kb3cuXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnLCB7IGNvbXBvc2VkOiB0cnVlLCBidWJibGVzOiB0cnVlIH0pKTtcbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIHRoaXMuX2ZpbGVDaGFuZ2VkRXZlbnQuZW1pdCh0aGlzLmZpbGVzKTtcbiAgfVxuXG4gIC8qKiBDYWxjdWxhdGVzIHRoZSBjb3JyZWN0IHVuaXQgZm9yIHRoZSBmaWxlJ3Mgc2l6ZS4gKi9cbiAgcHJpdmF0ZSBfZm9ybWF0RmlsZVNpemUoc2l6ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBpOiBudW1iZXIgPSBNYXRoLmZsb29yKE1hdGgubG9nKHNpemUpIC8gTWF0aC5sb2coMTAyNCkpO1xuICAgIHJldHVybiBgJHsoc2l6ZSAvIE1hdGgucG93KDEwMjQsIGkpKS50b0ZpeGVkKDApfSAke3RoaXMuX3N1ZmZpeGVzW2ldfWA7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVBMTF5TGl2ZVJlZ2lvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9saXZlUmVnaW9uLmlubmVyVGV4dCA9IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCh0aGlzLmZpbGVzLm1hcCgoZSkgPT4gZS5uYW1lKSlbXG4gICAgICB0aGlzLl9sYW5ndWFnZS5jdXJyZW50XG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlckRlZmF1bHRNb2RlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvbi1zdGF0aWNcbiAgICAgICAgc2l6ZT0ke3RoaXMuc2l6ZX1cbiAgICAgICAgaWNvbi1uYW1lPVwiZm9sZGVyLW9wZW4tc21hbGxcIlxuICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8IHRoaXMuZm9ybURpc2FibGVkfVxuICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICAgICAgdGhpcy5fbG9hZEJ1dHRvbiA9IGVsIGFzIFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gICAgICAgIH0pfVxuICAgICAgPlxuICAgICAgICAke2kxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgIDwvc2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJEcm9wem9uZUFyZWEoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZHJvcHpvbmUtYXJlYVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19kcm9wem9uZS1hcmVhLS1pY29uXCI+XG4gICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICBuYW1lPSR7dGhpcy5zaXplID09PSAnbScgPyAnZm9sZGVyLW9wZW4tbWVkaXVtJyA6ICdmb2xkZXItb3Blbi1zbWFsbCd9XG4gICAgICAgICAgPjwvc2JiLWljb24+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZHJvcHpvbmUtYXJlYS0tdGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZHJvcHpvbmUtYXJlYS0tc3VidGl0bGVcIj5cbiAgICAgICAgICAke2kxOG5GaWxlU2VsZWN0b3JTdWJ0aXRsZUxhYmVsW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2Ryb3B6b25lLWFyZWEtLWJ1dHRvblwiPlxuICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvbi1zdGF0aWNcbiAgICAgICAgICAgIHNpemU9JHt0aGlzLnNpemV9XG4gICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8IHRoaXMuZm9ybURpc2FibGVkfVxuICAgICAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICB0aGlzLl9sb2FkQnV0dG9uID0gZWwgYXMgU2JiU2Vjb25kYXJ5QnV0dG9uU3RhdGljRWxlbWVudDtcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgID5cbiAgICAgICAgICAgICR7aTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgIDwvc2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlckZpbGVMaXN0KCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBUQUdfTkFNRTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9XG4gICAgICB0aGlzLmZpbGVzLmxlbmd0aCA+IDFcbiAgICAgICAgPyB7IFdSQVBQRVI6ICd1bCcsIEVMRU1FTlQ6ICdsaScgfVxuICAgICAgICA6IHsgV1JBUFBFUjogJ2RpdicsIEVMRU1FTlQ6ICdzcGFuJyB9O1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgbGl0L2JpbmRpbmctcG9zaXRpb25zICovXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuV1JBUFBFUil9IGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUtbGlzdFwiPlxuICAgICAgICAke3RoaXMuZmlsZXMubWFwKFxuICAgICAgICAgIChmaWxlOiBGaWxlKSA9PiBodG1sYFxuICAgICAgICAgIDwke3Vuc2FmZVN0YXRpYyhUQUdfTkFNRS5FTEVNRU5UKX0gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1kZXRhaWxzXCI+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUtbmFtZVwiPiR7ZmlsZS5uYW1lfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1zaXplXCI+JHt0aGlzLl9mb3JtYXRGaWxlU2l6ZShmaWxlLnNpemUpfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgICBpY29uLW5hbWU9XCJ0cmFzaC1zbWFsbFwiXG4gICAgICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuX3JlbW92ZUZpbGUoZmlsZSl9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHtgJHtpMThuRmlsZVNlbGVjdG9yRGVsZXRlRmlsZVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0gLSAke2ZpbGUubmFtZX1gfVxuICAgICAgICAgICAgPjwvc2JiLXNlY29uZGFyeS1idXR0b24+XG4gICAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdfTkFNRS5FTEVNRU5UKX0+YCxcbiAgICAgICAgKX1cbiAgICAgIDwvJHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuV1JBUFBFUil9PlxuICAgIGA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBhcmlhTGFiZWwgPSB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbFxuICAgICAgPyBgJHtpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWxbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19IC0gJHt0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbH1gXG4gICAgICA6IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3RvclwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9faW5wdXQtY29udGFpbmVyXCJcbiAgICAgICAgICBAZHJhZ2VudGVyPSR7dGhpcy5fb25EcmFnRW50ZXJ9XG4gICAgICAgICAgQGRyYWdvdmVyPSR7dGhpcy5fYmxvY2tFdmVudH1cbiAgICAgICAgICBAZHJhZ2xlYXZlPSR7dGhpcy5fb25EcmFnTGVhdmV9XG4gICAgICAgICAgQGRyb3A9JHt0aGlzLl9vbkZpbGVEcm9wfVxuICAgICAgICA+XG4gICAgICAgICAgPGxhYmVsPlxuICAgICAgICAgICAgJHt0aGlzLnZhcmlhbnQgPT09ICdkZWZhdWx0JyA/IHRoaXMuX3JlbmRlckRlZmF1bHRNb2RlKCkgOiB0aGlzLl9yZW5kZXJEcm9wem9uZUFyZWEoKX1cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX192aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWQgfHwgdGhpcy5mb3JtRGlzYWJsZWR9XG4gICAgICAgICAgICAgID9tdWx0aXBsZT0ke3RoaXMubXVsdGlwbGV9XG4gICAgICAgICAgICAgIGFjY2VwdD0ke3RoaXMuYWNjZXB0IHx8IG5vdGhpbmd9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHthcmlhTGFiZWwgfHwgbm90aGluZ31cbiAgICAgICAgICAgICAgQGNoYW5nZT0ke3RoaXMuX3JlYWRGaWxlc31cbiAgICAgICAgICAgICAgQGZvY3VzPSR7dGhpcy5fb25Gb2N1c31cbiAgICAgICAgICAgICAgQGJsdXI9JHt0aGlzLl9vbkJsdXJ9XG4gICAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9oaWRkZW5JbnB1dCA9IGVsIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHBcbiAgICAgICAgICByb2xlPVwic3RhdHVzXCJcbiAgICAgICAgICBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX192aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICR7cmVmKChwPzogRWxlbWVudCkgPT4gKHRoaXMuX2xpdmVSZWdpb24gPSBwIGFzIEhUTUxQYXJhZ3JhcGhFbGVtZW50KSl9XG4gICAgICAgID48L3A+XG4gICAgICAgICR7dGhpcy5maWxlcy5sZW5ndGggPiAwID8gdGhpcy5fcmVuZGVyRmlsZUxpc3QoKSA6IG5vdGhpbmd9XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fZXJyb3JcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiZXJyb3JcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWZpbGUtc2VsZWN0b3InOiBTYmJGaWxlU2VsZWN0b3JFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
@@ -3,14 +3,7 @@ import { css, LitElement, html } from "lit";
|
|
|
3
3
|
import { customElement } from "lit/decorators.js";
|
|
4
4
|
import { IS_FOCUSABLE_QUERY } from "../core/a11y.js";
|
|
5
5
|
import { hostAttributes } from "../core/decorators.js";
|
|
6
|
-
const style = css
|
|
7
|
-
/*
|
|
8
|
-
* SBB table mixin
|
|
9
|
-
* Notes:
|
|
10
|
-
* We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
|
|
11
|
-
* Therefore, we have to build the grid avoiding double borders.
|
|
12
|
-
*/
|
|
13
|
-
*,
|
|
6
|
+
const style = css`*,
|
|
14
7
|
::before,
|
|
15
8
|
::after {
|
|
16
9
|
box-sizing: border-box;
|
|
@@ -96,4 +89,4 @@ SbbFlipCardDetailsElement = __decorateClass([
|
|
|
96
89
|
export {
|
|
97
90
|
SbbFlipCardDetailsElement
|
|
98
91
|
};
|
|
99
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcC1jYXJkLWRldGFpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9mbGlwLWNhcmQvZmxpcC1jYXJkLWRldGFpbHMvZmxpcC1jYXJkLWRldGFpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXV0YXRpb25Db250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9tdXRhdGlvbi1jb250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgSVNfRk9DVVNBQkxFX1FVRVJZIH0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZmxpcC1jYXJkLWRldGFpbHMuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1mbGlwLWNhcmRgLCBpdCBkaXNwbGF5cyBpdHMgY29udGVudCB3aGVuIHRoZSBjYXJkIGlzIGZsaXBwZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGFueSBraW5kIG9mIGNvbnRlbnQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItZmxpcC1jYXJkLWRldGFpbHMnKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgc2xvdDogJ2RldGFpbHMnLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJGbGlwQ2FyZERldGFpbHNFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICBjb25maWc6IHtcbiAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhcmRGb2N1c2FibGVBdHRyaWJ1dGVOYW1lID0gJ2RhdGEtY2FyZC1mb2N1c2FibGUnO1xuXG4gICAgQXJyYXkuZnJvbSh0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LihJU19GT0NVU0FCTEVfUVVFUlkpID8/IFtdKVxuICAgICAgLmZpbHRlcigoZWwpID0+ICFlbC5oYXNBdHRyaWJ1dGUoY2FyZEZvY3VzYWJsZUF0dHJpYnV0ZU5hbWUpKVxuICAgICAgLmZvckVhY2goKGVsOiBFbGVtZW50KSA9PiBlbC5zZXRBdHRyaWJ1dGUoY2FyZEZvY3VzYWJsZUF0dHJpYnV0ZU5hbWUsICcnKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmxpcC1jYXJkLWRldGFpbHMtLXdyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1mbGlwLWNhcmQtZGV0YWlsc1wiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+
|
|
92
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcC1jYXJkLWRldGFpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9mbGlwLWNhcmQvZmxpcC1jYXJkLWRldGFpbHMvZmxpcC1jYXJkLWRldGFpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXV0YXRpb25Db250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9tdXRhdGlvbi1jb250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgSVNfRk9DVVNBQkxFX1FVRVJZIH0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZmxpcC1jYXJkLWRldGFpbHMuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi1mbGlwLWNhcmRgLCBpdCBkaXNwbGF5cyBpdHMgY29udGVudCB3aGVuIHRoZSBjYXJkIGlzIGZsaXBwZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGFueSBraW5kIG9mIGNvbnRlbnQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItZmxpcC1jYXJkLWRldGFpbHMnKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgc2xvdDogJ2RldGFpbHMnLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJGbGlwQ2FyZERldGFpbHNFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICBjb25maWc6IHtcbiAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhcmRGb2N1c2FibGVBdHRyaWJ1dGVOYW1lID0gJ2RhdGEtY2FyZC1mb2N1c2FibGUnO1xuXG4gICAgQXJyYXkuZnJvbSh0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LihJU19GT0NVU0FCTEVfUVVFUlkpID8/IFtdKVxuICAgICAgLmZpbHRlcigoZWwpID0+ICFlbC5oYXNBdHRyaWJ1dGUoY2FyZEZvY3VzYWJsZUF0dHJpYnV0ZU5hbWUpKVxuICAgICAgLmZvckVhY2goKGVsOiBFbGVtZW50KSA9PiBlbC5zZXRBdHRyaWJ1dGUoY2FyZEZvY3VzYWJsZUF0dHJpYnV0ZU5hbWUsICcnKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmxpcC1jYXJkLWRldGFpbHMtLXdyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1mbGlwLWNhcmQtZGV0YWlsc1wiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZmxpcC1jYXJkLWRldGFpbHMnOiBTYmJGbGlwQ2FyZERldGFpbHNFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CYSxJQUFBLDRCQUFOLGNBQXdDLFdBQVc7QUFBQSxFQUdqRCxjQUFjO0FBQ2I7QUFFTixRQUFJLG1CQUFtQixNQUFNO0FBQUEsTUFDM0IsUUFBUTtBQUFBLFFBQ04sV0FBVztBQUFBLFFBQ1gsU0FBUztBQUFBLE1BQ1g7QUFBQSxNQUNBLFVBQVUsTUFBTSxLQUFLLHdCQUF3QjtBQUFBLElBQUEsQ0FDOUM7QUFBQSxFQUNIO0FBQUEsRUFFUSwwQkFBZ0M7O0FBQ3RDLFVBQU0sNkJBQTZCO0FBRTdCLFVBQUEsT0FBSyxVQUFLLHFCQUFMLDhCQUF3Qix3QkFBdUIsQ0FBQSxDQUFFLEVBQ3pELE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxhQUFhLDBCQUEwQixDQUFDLEVBQzNELFFBQVEsQ0FBQyxPQUFnQixHQUFHLGFBQWEsNEJBQTRCLEVBQUUsQ0FBQztBQUFBLEVBQzdFO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1Q7QUFDRjtBQWhDYSwwQkFDWSxTQUF5QjtBQURyQyw0QkFBTixnQkFBQTtBQUFBLEVBSk4sY0FBYyx1QkFBdUI7QUFBQSxFQUNyQyxlQUFlO0FBQUEsSUFDZCxNQUFNO0FBQUEsRUFBQSxDQUNQO0FBQUEsR0FDWSx5QkFBQTsifQ==
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
import { css, LitElement, html } from "lit";
|
|
2
2
|
import { property, customElement } from "lit/decorators.js";
|
|
3
3
|
import { hostAttributes } from "../core/decorators.js";
|
|
4
|
-
const style = css
|
|
5
|
-
/*
|
|
6
|
-
* SBB table mixin
|
|
7
|
-
* Notes:
|
|
8
|
-
* We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
|
|
9
|
-
* Therefore, we have to build the grid avoiding double borders.
|
|
10
|
-
*/
|
|
11
|
-
*,
|
|
4
|
+
const style = css`*,
|
|
12
5
|
::before,
|
|
13
6
|
::after {
|
|
14
7
|
box-sizing: border-box;
|
|
@@ -142,4 +135,4 @@ SbbFlipCardSummaryElement = __decorateClass([
|
|
|
142
135
|
export {
|
|
143
136
|
SbbFlipCardSummaryElement
|
|
144
137
|
};
|
|
145
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcC1jYXJkLXN1bW1hcnkuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9mbGlwLWNhcmQvZmxpcC1jYXJkLXN1bW1hcnkvZmxpcC1jYXJkLXN1bW1hcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZmxpcC1jYXJkLXN1bW1hcnkuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiRmxpcENhcmRJbWFnZUFsaWdubWVudCA9ICdhZnRlcicgfCAnYmVsb3cnO1xuXG4vKipcbiAqIENvbWJpbmVkIHdpdGggYSBgc2JiLWZsaXAtY2FyZGAsIGl0IGRpc3BsYXlzIGl0cyBjb250ZW50IHdoZW4gdGhlIGNhcmQgaXMgbm90IGZsaXBwZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgdGl0bGUgZm9yIHRoZSBgc2JiLWZsaXAtY2FyZC1zdW1tYXJ5YC5cbiAqIEBzbG90IGltYWdlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGltYWdlIGZvciB0aGUgYHNiYi1mbGlwLWNhcmQtc3VtbWFyeWAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItZmxpcC1jYXJkLXN1bW1hcnknKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgc2xvdDogJ3N1bW1hcnknLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJGbGlwQ2FyZFN1bW1hcnlFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBUaGUgcG9zaXRpb24gd2hlcmUgdG8gcmVuZGVyIHRoZSBpbWFnZS4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2UtYWxpZ25tZW50JywgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgaW1hZ2VBbGlnbm1lbnQ6IFNiYkZsaXBDYXJkSW1hZ2VBbGlnbm1lbnQgPSAnYWZ0ZXInO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKF9jaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXMpOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKF9jaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoX2NoYW5nZWRQcm9wZXJ0aWVzLmhhcygnaW1hZ2VBbGlnbm1lbnQnKSkge1xuICAgICAgdGhpcy5jbG9zZXN0Py4oJ3NiYi1mbGlwLWNhcmQnKT8uc2V0QXR0cmlidXRlKCdkYXRhLWltYWdlLWFsaWdubWVudCcsIHRoaXMuaW1hZ2VBbGlnbm1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1mbGlwLWNhcmQtc3VtbWFyeVwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmxpcC1jYXJkLXN1bW1hcnktLWltYWdlLXdyYXBwZXJcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiaW1hZ2VcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+
|
|
138
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcC1jYXJkLXN1bW1hcnkuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9mbGlwLWNhcmQvZmxpcC1jYXJkLXN1bW1hcnkvZmxpcC1jYXJkLXN1bW1hcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vZmxpcC1jYXJkLXN1bW1hcnkuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiRmxpcENhcmRJbWFnZUFsaWdubWVudCA9ICdhZnRlcicgfCAnYmVsb3cnO1xuXG4vKipcbiAqIENvbWJpbmVkIHdpdGggYSBgc2JiLWZsaXAtY2FyZGAsIGl0IGRpc3BsYXlzIGl0cyBjb250ZW50IHdoZW4gdGhlIGNhcmQgaXMgbm90IGZsaXBwZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgdGl0bGUgZm9yIHRoZSBgc2JiLWZsaXAtY2FyZC1zdW1tYXJ5YC5cbiAqIEBzbG90IGltYWdlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGltYWdlIGZvciB0aGUgYHNiYi1mbGlwLWNhcmQtc3VtbWFyeWAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItZmxpcC1jYXJkLXN1bW1hcnknKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgc2xvdDogJ3N1bW1hcnknLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJGbGlwQ2FyZFN1bW1hcnlFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBUaGUgcG9zaXRpb24gd2hlcmUgdG8gcmVuZGVyIHRoZSBpbWFnZS4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2UtYWxpZ25tZW50JywgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgaW1hZ2VBbGlnbm1lbnQ6IFNiYkZsaXBDYXJkSW1hZ2VBbGlnbm1lbnQgPSAnYWZ0ZXInO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKF9jaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXMpOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKF9jaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoX2NoYW5nZWRQcm9wZXJ0aWVzLmhhcygnaW1hZ2VBbGlnbm1lbnQnKSkge1xuICAgICAgdGhpcy5jbG9zZXN0Py4oJ3NiYi1mbGlwLWNhcmQnKT8uc2V0QXR0cmlidXRlKCdkYXRhLWltYWdlLWFsaWdubWVudCcsIHRoaXMuaW1hZ2VBbGlnbm1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1mbGlwLWNhcmQtc3VtbWFyeVwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmxpcC1jYXJkLXN1bW1hcnktLWltYWdlLXdyYXBwZXJcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiaW1hZ2VcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWZsaXAtY2FyZC1zdW1tYXJ5JzogU2JiRmxpcENhcmRTdW1tYXJ5RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JhLElBQUEsNEJBQU4sY0FBd0MsV0FBVztBQUFBLEVBQW5ELGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQUtMLFNBQU8saUJBQTRDO0FBQUEsRUFBQTtBQUFBLEVBRWhDLFdBQVcsb0JBQTBDOztBQUN0RSxVQUFNLFdBQVcsa0JBQWtCO0FBRS9CLFFBQUEsbUJBQW1CLElBQUksZ0JBQWdCLEdBQUc7QUFDNUMsdUJBQUssWUFBTCw4QkFBZSxxQkFBZixtQkFBaUMsYUFBYSx3QkFBd0IsS0FBSztBQUFBLElBQzdFO0FBQUEsRUFDRjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUVQ7QUFDRjtBQXpCYSwwQkFDWSxTQUF5QjtBQUl6QyxnQkFBQTtBQUFBLEVBRE4sU0FBUyxFQUFFLFdBQVcsbUJBQW1CLFNBQVMsTUFBTTtBQUFBLEdBSjlDLDBCQUtKLFdBQUEsa0JBQUEsQ0FBQTtBQUxJLDRCQUFOLGdCQUFBO0FBQUEsRUFKTixjQUFjLHVCQUF1QjtBQUFBLEVBQ3JDLGVBQWU7QUFBQSxJQUNkLE1BQU07QUFBQSxFQUFBLENBQ1A7QUFBQSxHQUNZLHlCQUFBOyJ9
|