@skyux/layout 7.0.0-beta.0 → 7.0.0-beta.10
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/documentation.json +1849 -1017
- package/esm2020/index.mjs +2 -2
- package/esm2020/lib/modules/action-button/action-button-adapter-service.mjs +22 -18
- package/esm2020/lib/modules/action-button/action-button-container.component.mjs +62 -54
- package/esm2020/lib/modules/action-button/action-button-icon.component.mjs +9 -6
- package/esm2020/lib/modules/action-button/action-button.component.mjs +10 -6
- package/esm2020/lib/modules/back-to-top/back-to-top-adapter.service.mjs +19 -15
- package/esm2020/lib/modules/back-to-top/back-to-top.component.mjs +8 -5
- package/esm2020/lib/modules/back-to-top/back-to-top.directive.mjs +68 -63
- package/esm2020/lib/modules/box/box.component.mjs +1 -1
- package/esm2020/lib/modules/card/card.component.mjs +38 -11
- package/esm2020/lib/modules/definition-list/definition-list-label.component.mjs +1 -1
- package/esm2020/lib/modules/definition-list/definition-list-value.component.mjs +3 -3
- package/esm2020/lib/modules/definition-list/definition-list.component.mjs +1 -1
- package/esm2020/lib/modules/definition-list/definition-list.service.mjs +1 -1
- package/esm2020/lib/modules/description-list/description-list-adapter-service.mjs +26 -22
- package/esm2020/lib/modules/description-list/description-list-content.component.mjs +2 -2
- package/esm2020/lib/modules/description-list/description-list-description.component.mjs +16 -11
- package/esm2020/lib/modules/description-list/description-list-term.component.mjs +1 -1
- package/esm2020/lib/modules/description-list/description-list.component.mjs +25 -16
- package/esm2020/lib/modules/fluid-grid/column.component.mjs +19 -1
- package/esm2020/lib/modules/fluid-grid/fluid-grid.component.mjs +15 -35
- package/esm2020/lib/modules/fluid-grid/row.component.mjs +1 -1
- package/esm2020/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.mjs +1 -1
- package/esm2020/lib/modules/format/format.component.mjs +34 -26
- package/esm2020/lib/modules/inline-delete/inline-delete-adapter.service.mjs +91 -83
- package/esm2020/lib/modules/inline-delete/inline-delete.component.mjs +15 -9
- package/esm2020/lib/modules/page/page-layout-type.mjs +2 -0
- package/esm2020/lib/modules/page/page-theme-adapter.service.mjs +23 -11
- package/esm2020/lib/modules/page/page.component.mjs +28 -9
- package/esm2020/lib/modules/page/page.module.mjs +5 -3
- package/esm2020/lib/modules/page-summary/page-summary-adapter.service.mjs +1 -1
- package/esm2020/lib/modules/page-summary/page-summary.component.mjs +40 -16
- package/esm2020/lib/modules/text-expand/text-expand-adapter.service.mjs +8 -10
- package/esm2020/lib/modules/text-expand/text-expand-modal-context-token.mjs +6 -0
- package/esm2020/lib/modules/text-expand/text-expand-modal-context.mjs +2 -6
- package/esm2020/lib/modules/text-expand/text-expand-modal.component.mjs +12 -10
- package/esm2020/lib/modules/text-expand/text-expand.component.mjs +188 -127
- package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.mjs +10 -12
- package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater.component.mjs +139 -95
- package/esm2020/lib/modules/toolbar/toolbar.component.mjs +4 -4
- package/esm2020/testing/action-button-fixture.mjs +12 -6
- package/esm2020/testing/card-fixture.mjs +19 -16
- package/esm2020/testing/page-summary-fixture.mjs +9 -5
- package/fesm2015/skyux-layout-testing.mjs +35 -24
- package/fesm2015/skyux-layout-testing.mjs.map +1 -1
- package/fesm2015/skyux-layout.mjs +897 -682
- package/fesm2015/skyux-layout.mjs.map +1 -1
- package/fesm2020/skyux-layout-testing.mjs +35 -24
- package/fesm2020/skyux-layout-testing.mjs.map +1 -1
- package/fesm2020/skyux-layout.mjs +890 -682
- package/fesm2020/skyux-layout.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/lib/modules/action-button/action-button-adapter-service.d.ts +1 -2
- package/lib/modules/action-button/action-button-container.component.d.ts +6 -17
- package/lib/modules/action-button/action-button-icon.component.d.ts +2 -3
- package/lib/modules/action-button/action-button.component.d.ts +3 -3
- package/lib/modules/back-to-top/back-to-top-adapter.service.d.ts +1 -4
- package/lib/modules/back-to-top/back-to-top.component.d.ts +1 -1
- package/lib/modules/back-to-top/back-to-top.directive.d.ts +4 -16
- package/lib/modules/box/box.component.d.ts +3 -3
- package/lib/modules/card/card.component.d.ts +7 -6
- package/lib/modules/definition-list/definition-list-label.component.d.ts +1 -1
- package/lib/modules/definition-list/definition-list-value.component.d.ts +1 -1
- package/lib/modules/definition-list/definition-list.component.d.ts +2 -2
- package/lib/modules/definition-list/definition-list.service.d.ts +2 -2
- package/lib/modules/description-list/description-list-adapter-service.d.ts +1 -2
- package/lib/modules/description-list/description-list-content.component.d.ts +2 -2
- package/lib/modules/description-list/description-list-description.component.d.ts +5 -7
- package/lib/modules/description-list/description-list-term.component.d.ts +1 -1
- package/lib/modules/description-list/description-list.component.d.ts +6 -7
- package/lib/modules/fluid-grid/column.component.d.ts +7 -5
- package/lib/modules/fluid-grid/fluid-grid.component.d.ts +3 -9
- package/lib/modules/fluid-grid/row.component.d.ts +1 -1
- package/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.d.ts +1 -1
- package/lib/modules/format/format.component.d.ts +5 -7
- package/lib/modules/inline-delete/inline-delete-adapter.service.d.ts +1 -11
- package/lib/modules/inline-delete/inline-delete.component.d.ts +3 -5
- package/lib/modules/page/page-layout-type.d.ts +1 -0
- package/lib/modules/page/page-theme-adapter.service.d.ts +2 -1
- package/lib/modules/page/page.component.d.ts +11 -3
- package/lib/modules/page/page.module.d.ts +2 -1
- package/lib/modules/page-summary/page-summary.component.d.ts +8 -9
- package/lib/modules/text-expand/text-expand-adapter.service.d.ts +3 -4
- package/lib/modules/text-expand/text-expand-modal-context-token.d.ts +6 -0
- package/lib/modules/text-expand/text-expand-modal-context.d.ts +1 -1
- package/lib/modules/text-expand/text-expand.component.d.ts +18 -25
- package/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.d.ts +4 -5
- package/lib/modules/text-expand-repeater/text-expand-repeater.component.d.ts +13 -21
- package/lib/modules/toolbar/toolbar.component.d.ts +4 -4
- package/package.json +9 -9
- package/testing/action-button-fixture.d.ts +4 -4
- package/testing/card-fixture.d.ts +3 -5
- package/testing/page-summary-fixture.d.ts +4 -4
- package/esm2020/lib/modules/fluid-grid/fluid-grid-gutter-size.mjs +0 -20
- package/lib/modules/fluid-grid/fluid-grid-gutter-size.d.ts +0 -18
|
@@ -1,9 +1,26 @@
|
|
|
1
|
+
var _SkyColumnComponent__screenXSmall;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Component, HostBinding, Input, ViewEncapsulation, } from '@angular/core';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
/**
|
|
4
6
|
* Displays a column within a row of the fluid grid.
|
|
5
7
|
*/
|
|
6
8
|
export class SkyColumnComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
_SkyColumnComponent__screenXSmall.set(this, 12);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Specifies the number of columns (1-12) to use on extra-small screens
|
|
14
|
+
* (less than 768px). If you do not specify a value, the fluid grid displays
|
|
15
|
+
* the column at the full width of the screen.
|
|
16
|
+
* @default 12
|
|
17
|
+
*/
|
|
18
|
+
set screenXSmall(value) {
|
|
19
|
+
__classPrivateFieldSet(this, _SkyColumnComponent__screenXSmall, value ?? 12, "f");
|
|
20
|
+
}
|
|
21
|
+
get screenXSmall() {
|
|
22
|
+
return __classPrivateFieldGet(this, _SkyColumnComponent__screenXSmall, "f");
|
|
23
|
+
}
|
|
7
24
|
ngOnChanges(changes) {
|
|
8
25
|
/* istanbul ignore else */
|
|
9
26
|
if (changes.screenXSmall ||
|
|
@@ -33,6 +50,7 @@ export class SkyColumnComponent {
|
|
|
33
50
|
this.classnames = this.getClassNames();
|
|
34
51
|
}
|
|
35
52
|
}
|
|
53
|
+
_SkyColumnComponent__screenXSmall = new WeakMap();
|
|
36
54
|
SkyColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
55
|
SkyColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyColumnComponent, selector: "sky-column", inputs: { screenXSmall: "screenXSmall", screenSmall: "screenSmall", screenMedium: "screenMedium", screenLarge: "screenLarge" }, host: { properties: { "class": "this.classnames" } }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: ["sky-column.sky-column{padding-right:15px;padding-left:15px;width:100%;min-height:1px}.sky-theme-modern sky-column.sky-column{padding-right:30px;padding-left:30px}.sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:5px;padding-left:5px}.sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:15px;padding-left:15px}sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-xs-3{width:25%}sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-xs-6{width:50%}sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-xs-9{width:75%}sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-xs-12{width:100%}sky-column:not([class*=sky-column-xs-]){width:100%}.sky-responsive-container-xs sky-column.sky-column-xs-1,.sky-responsive-container-sm sky-column.sky-column-xs-1,.sky-responsive-container-md sky-column.sky-column-xs-1,.sky-responsive-container-lg sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-2,.sky-responsive-container-sm sky-column.sky-column-xs-2,.sky-responsive-container-md sky-column.sky-column-xs-2,.sky-responsive-container-lg sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-3,.sky-responsive-container-sm sky-column.sky-column-xs-3,.sky-responsive-container-md sky-column.sky-column-xs-3,.sky-responsive-container-lg sky-column.sky-column-xs-3{width:25%}.sky-responsive-container-xs sky-column.sky-column-xs-4,.sky-responsive-container-sm sky-column.sky-column-xs-4,.sky-responsive-container-md sky-column.sky-column-xs-4,.sky-responsive-container-lg sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-5,.sky-responsive-container-sm sky-column.sky-column-xs-5,.sky-responsive-container-md sky-column.sky-column-xs-5,.sky-responsive-container-lg sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-6,.sky-responsive-container-sm sky-column.sky-column-xs-6,.sky-responsive-container-md sky-column.sky-column-xs-6,.sky-responsive-container-lg sky-column.sky-column-xs-6{width:50%}.sky-responsive-container-xs sky-column.sky-column-xs-7,.sky-responsive-container-sm sky-column.sky-column-xs-7,.sky-responsive-container-md sky-column.sky-column-xs-7,.sky-responsive-container-lg sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-8,.sky-responsive-container-sm sky-column.sky-column-xs-8,.sky-responsive-container-md sky-column.sky-column-xs-8,.sky-responsive-container-lg sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-9,.sky-responsive-container-sm sky-column.sky-column-xs-9,.sky-responsive-container-md sky-column.sky-column-xs-9,.sky-responsive-container-lg sky-column.sky-column-xs-9{width:75%}.sky-responsive-container-xs sky-column.sky-column-xs-10,.sky-responsive-container-sm sky-column.sky-column-xs-10,.sky-responsive-container-md sky-column.sky-column-xs-10,.sky-responsive-container-lg sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-11,.sky-responsive-container-sm sky-column.sky-column-xs-11,.sky-responsive-container-md sky-column.sky-column-xs-11,.sky-responsive-container-lg sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-12,.sky-responsive-container-sm sky-column.sky-column-xs-12,.sky-responsive-container-md sky-column.sky-column-xs-12,.sky-responsive-container-lg sky-column.sky-column-xs-12{width:100%}.sky-responsive-container-xs sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-sm sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-md sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-lg sky-column:not([class*=sky-column-xs-]){width:100%}@media (min-width: 768px){sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-sm-3{width:25%}sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-sm-6{width:50%}sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-sm-9{width:75%}sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-sm-12{width:100%}}.sky-responsive-container-sm sky-column.sky-column-sm-1,.sky-responsive-container-md sky-column.sky-column-sm-1,.sky-responsive-container-lg sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-2,.sky-responsive-container-md sky-column.sky-column-sm-2,.sky-responsive-container-lg sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-3,.sky-responsive-container-md sky-column.sky-column-sm-3,.sky-responsive-container-lg sky-column.sky-column-sm-3{width:25%}.sky-responsive-container-sm sky-column.sky-column-sm-4,.sky-responsive-container-md sky-column.sky-column-sm-4,.sky-responsive-container-lg sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-5,.sky-responsive-container-md sky-column.sky-column-sm-5,.sky-responsive-container-lg sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-6,.sky-responsive-container-md sky-column.sky-column-sm-6,.sky-responsive-container-lg sky-column.sky-column-sm-6{width:50%}.sky-responsive-container-sm sky-column.sky-column-sm-7,.sky-responsive-container-md sky-column.sky-column-sm-7,.sky-responsive-container-lg sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-8,.sky-responsive-container-md sky-column.sky-column-sm-8,.sky-responsive-container-lg sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-9,.sky-responsive-container-md sky-column.sky-column-sm-9,.sky-responsive-container-lg sky-column.sky-column-sm-9{width:75%}.sky-responsive-container-sm sky-column.sky-column-sm-10,.sky-responsive-container-md sky-column.sky-column-sm-10,.sky-responsive-container-lg sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-11,.sky-responsive-container-md sky-column.sky-column-sm-11,.sky-responsive-container-lg sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-12,.sky-responsive-container-md sky-column.sky-column-sm-12,.sky-responsive-container-lg sky-column.sky-column-sm-12{width:100%}@media (min-width: 992px){sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-md-3{width:25%}sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-md-6{width:50%}sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-md-9{width:75%}sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-md-12{width:100%}}.sky-responsive-container-md sky-column.sky-column-md-1,.sky-responsive-container-lg sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-2,.sky-responsive-container-lg sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-3,.sky-responsive-container-lg sky-column.sky-column-md-3{width:25%}.sky-responsive-container-md sky-column.sky-column-md-4,.sky-responsive-container-lg sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-5,.sky-responsive-container-lg sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-6,.sky-responsive-container-lg sky-column.sky-column-md-6{width:50%}.sky-responsive-container-md sky-column.sky-column-md-7,.sky-responsive-container-lg sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-8,.sky-responsive-container-lg sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-9,.sky-responsive-container-lg sky-column.sky-column-md-9{width:75%}.sky-responsive-container-md sky-column.sky-column-md-10,.sky-responsive-container-lg sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-11,.sky-responsive-container-lg sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-12,.sky-responsive-container-lg sky-column.sky-column-md-12{width:100%}@media (min-width: 1200px){sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-lg-3{width:25%}sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-lg-6{width:50%}sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-lg-9{width:75%}sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-lg-12{width:100%}}.sky-responsive-container-lg sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-3{width:25%}.sky-responsive-container-lg sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-6{width:50%}.sky-responsive-container-lg sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-9{width:75%}.sky-responsive-container-lg sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-12{width:100%}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
38
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyColumnComponent, decorators: [{
|
|
@@ -50,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
50
68
|
type: HostBinding,
|
|
51
69
|
args: ['class']
|
|
52
70
|
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvY29sdW1uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUlMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7QUFFdkI7O0dBRUc7QUFPSCxNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBaURFLDRDQUFpQixFQUFFLEVBQUM7S0F1Q3JCO0lBakZDOzs7OztPQUtHO0lBQ0gsSUFDVyxZQUFZLENBQUMsS0FBeUI7UUFDL0MsdUJBQUEsSUFBSSxxQ0FBa0IsS0FBSyxJQUFJLEVBQUUsTUFBQSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyx1QkFBQSxJQUFJLHlDQUFlLENBQUM7SUFDN0IsQ0FBQztJQStCTSxXQUFXLENBQUMsT0FBc0I7UUFDdkMsMEJBQTBCO1FBQzFCLElBQ0UsT0FBTyxDQUFDLFlBQVk7WUFDcEIsT0FBTyxDQUFDLFdBQVc7WUFDbkIsT0FBTyxDQUFDLFlBQVk7WUFDcEIsT0FBTyxDQUFDLFdBQVcsRUFDbkI7WUFDQSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QztJQUNILENBQUM7SUFFTSxhQUFhO1FBQ2xCLE1BQU0sVUFBVSxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFbEMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7OytHQWpGVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2UENuQi9CLDZCQUNBOzJGRGtCYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJOzhCQVUxQixZQUFZO3NCQUR0QixLQUFLO2dCQWVDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsWUFBWTtzQkFEbEIsS0FBSztnQkFTQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIERpc3BsYXlzIGEgY29sdW1uIHdpdGhpbiBhIHJvdyBvZiB0aGUgZmx1aWQgZ3JpZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2x1bW4uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Q29sdW1uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgY29sdW1ucyAoMS0xMikgdG8gdXNlIG9uIGV4dHJhLXNtYWxsIHNjcmVlbnNcbiAgICogKGxlc3MgdGhhbiA3NjhweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgZmx1aWQgZ3JpZCBkaXNwbGF5c1xuICAgKiB0aGUgY29sdW1uIGF0IHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBzY3JlZW4uXG4gICAqIEBkZWZhdWx0IDEyXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNjcmVlblhTbWFsbCh2YWx1ZTogbnVtYmVyIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3NjcmVlblhTbWFsbCA9IHZhbHVlID8/IDEyO1xuICB9XG5cbiAgcHVibGljIGdldCBzY3JlZW5YU21hbGwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy4jX3NjcmVlblhTbWFsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zICgxLTEyKSB0byB1c2Ugb24gc21hbGwgc2NyZWVuc1xuICAgKiAoNzY4LTk5MXB4KS4gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IGEgdmFsdWUsIHRoZSBjb2x1bW4gaW5oZXJpdHNcbiAgICogdGhlIGBzY3JlZW5YU21hbGxgIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNjcmVlblNtYWxsOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgKDEtMTIpIHRvIHVzZSBvbiBtZWRpdW0gc2NyZWVuc1xuICAgKiAoOTkyLTExOTlweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgY29sdW1uIGluaGVyaXRzXG4gICAqIHRoZSBgc2NyZWVuU21hbGxgIHZhbHVlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNjcmVlbk1lZGl1bTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zICgxLTEyKSB0byB1c2Ugb24gbGFyZ2Ugc2NyZWVuc1xuICAgKiAobW9yZSB0aGFuIDEyMDBweCkuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIHZhbHVlLCB0aGUgY29sdW1uXG4gICAqIGluaGVyaXRzIHRoZSBgc2NyZWVuTWVkaXVtYCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzY3JlZW5MYXJnZTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwdWJsaWMgY2xhc3NuYW1lczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNfc2NyZWVuWFNtYWxsID0gMTI7XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChcbiAgICAgIGNoYW5nZXMuc2NyZWVuWFNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlblNtYWxsIHx8XG4gICAgICBjaGFuZ2VzLnNjcmVlbk1lZGl1bSB8fFxuICAgICAgY2hhbmdlcy5zY3JlZW5MYXJnZVxuICAgICkge1xuICAgICAgdGhpcy5jbGFzc25hbWVzID0gdGhpcy5nZXRDbGFzc05hbWVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENsYXNzTmFtZXMoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc25hbWVzID0gWydza3ktY29sdW1uJ107XG5cbiAgICBpZiAodGhpcy5zY3JlZW5YU21hbGwpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi14cy0ke3RoaXMuc2NyZWVuWFNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlblNtYWxsKSB7XG4gICAgICBjbGFzc25hbWVzLnB1c2goYHNreS1jb2x1bW4tc20tJHt0aGlzLnNjcmVlblNtYWxsfWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNjcmVlbk1lZGl1bSkge1xuICAgICAgY2xhc3NuYW1lcy5wdXNoKGBza3ktY29sdW1uLW1kLSR7dGhpcy5zY3JlZW5NZWRpdW19YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2NyZWVuTGFyZ2UpIHtcbiAgICAgIGNsYXNzbmFtZXMucHVzaChgc2t5LWNvbHVtbi1sZy0ke3RoaXMuc2NyZWVuTGFyZ2V9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzbmFtZXMuam9pbignICcpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xhc3NuYW1lcyA9IHRoaXMuZ2V0Q2xhc3NOYW1lcygpO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
var _SkyFluidGridComponent__gutterSize;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { SkyFluidGridGutterSize } from './fluid-grid-gutter-size';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/common";
|
|
5
6
|
/**
|
|
@@ -7,15 +8,13 @@ import * as i1 from "@angular/common";
|
|
|
7
8
|
* alignment, padding, and margins do not behave as expected.
|
|
8
9
|
*/
|
|
9
10
|
export class SkyFluidGridComponent {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
this.
|
|
16
|
-
|
|
17
|
-
get disableMargin() {
|
|
18
|
-
return this._disableMargin || false;
|
|
11
|
+
constructor() {
|
|
12
|
+
/**
|
|
13
|
+
* Disables the outer left and right margin of the fluid grid container.
|
|
14
|
+
* @default false
|
|
15
|
+
*/
|
|
16
|
+
this.disableMargin = false;
|
|
17
|
+
_SkyFluidGridComponent__gutterSize.set(this, 'large');
|
|
19
18
|
}
|
|
20
19
|
/**
|
|
21
20
|
* Specifies a `SkyFluidGridGutterSizeType` to define the size of the padding
|
|
@@ -23,40 +22,21 @@ export class SkyFluidGridComponent {
|
|
|
23
22
|
* @default "large"
|
|
24
23
|
*/
|
|
25
24
|
set gutterSize(value) {
|
|
26
|
-
this
|
|
25
|
+
__classPrivateFieldSet(this, _SkyFluidGridComponent__gutterSize, value ?? 'large', "f");
|
|
27
26
|
}
|
|
28
27
|
get gutterSize() {
|
|
29
|
-
return this
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* @internal
|
|
33
|
-
*/
|
|
34
|
-
get gutterSizeResolved() {
|
|
35
|
-
// Before this change, the template did a `==` comparison, implicitly converting numerical
|
|
36
|
-
// string values to their numeric values before comparing them. Checking for the numerical
|
|
37
|
-
// string value in addition to the values allowed by the type maintains this behavior.
|
|
38
|
-
switch (this.gutterSize) {
|
|
39
|
-
case 'medium':
|
|
40
|
-
case SkyFluidGridGutterSize.Medium:
|
|
41
|
-
case SkyFluidGridGutterSize.Medium.toString():
|
|
42
|
-
return 'medium';
|
|
43
|
-
case 'small':
|
|
44
|
-
case SkyFluidGridGutterSize.Small:
|
|
45
|
-
case SkyFluidGridGutterSize.Small.toString():
|
|
46
|
-
return 'small';
|
|
47
|
-
default:
|
|
48
|
-
return 'large';
|
|
49
|
-
}
|
|
28
|
+
return __classPrivateFieldGet(this, _SkyFluidGridComponent__gutterSize, "f");
|
|
50
29
|
}
|
|
51
30
|
}
|
|
31
|
+
_SkyFluidGridComponent__gutterSize = new WeakMap();
|
|
52
32
|
SkyFluidGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFluidGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
-
SkyFluidGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFluidGridComponent, selector: "sky-fluid-grid", inputs: { disableMargin: "disableMargin", gutterSize: "gutterSize" }, ngImport: i0, template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small':
|
|
33
|
+
SkyFluidGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFluidGridComponent, selector: "sky-fluid-grid", inputs: { disableMargin: "disableMargin", gutterSize: "gutterSize" }, ngImport: i0, template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSize === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSize === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSize === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
54
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFluidGridComponent, decorators: [{
|
|
55
35
|
type: Component,
|
|
56
|
-
args: [{ selector: 'sky-fluid-grid', template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small':
|
|
36
|
+
args: [{ selector: 'sky-fluid-grid', template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSize === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSize === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSize === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"] }]
|
|
57
37
|
}], propDecorators: { disableMargin: [{
|
|
58
38
|
type: Input
|
|
59
39
|
}], gutterSize: [{
|
|
60
40
|
type: Input
|
|
61
41
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHVpZC1ncmlkL2ZsdWlkLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC9mbHVpZC1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUlqRDs7O0dBR0c7QUFNSCxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBTUU7OztXQUdHO1FBRUksa0JBQWEsR0FBd0IsS0FBSyxDQUFDO1FBZ0JsRCw2Q0FBMkMsT0FBTyxFQUFDO0tBQ3BEO0lBZkM7Ozs7T0FJRztJQUNILElBQ1csVUFBVSxDQUFDLEtBQTZDO1FBQ2pFLHVCQUFBLElBQUksc0NBQWdCLEtBQUssSUFBSSxPQUFPLE1BQUEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sdUJBQUEsSUFBSSwwQ0FBYSxDQUFDO0lBQzNCLENBQUM7OztrSEFwQlUscUJBQXFCO3NHQUFyQixxQkFBcUIsNEhDYmxDLHdWQVdBOzJGREVhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBVW5CLGFBQWE7c0JBRG5CLEtBQUs7Z0JBU0ssVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgfSBmcm9tICcuL3R5cGVzL2ZsdWlkLWdyaWQtZ3V0dGVyLXNpemUtdHlwZSc7XG5cbi8qKlxuICogV3JhcHMgdGhlIGZsdWlkIGdyaWQgdG8gZW5zdXJlIHByb3BlciBzcGFjaW5nLiBXaXRob3V0IHRoZSB3cmFwcGVyLCB0aGVcbiAqIGFsaWdubWVudCwgcGFkZGluZywgYW5kIG1hcmdpbnMgZG8gbm90IGJlaGF2ZSBhcyBleHBlY3RlZC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZsdWlkLWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx1aWQtZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZsdWlkLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rmx1aWRHcmlkQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIERpc2FibGVzIHRoZSBvdXRlciBsZWZ0IGFuZCByaWdodCBtYXJnaW4gb2YgdGhlIGZsdWlkIGdyaWQgY29udGFpbmVyLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRpc2FibGVNYXJnaW46IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgYFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlYCB0byBkZWZpbmUgdGhlIHNpemUgb2YgdGhlIHBhZGRpbmdcbiAgICogYmV0d2VlbiBjb2x1bW5zLlxuICAgKiBAZGVmYXVsdCBcImxhcmdlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZ3V0dGVyU2l6ZSh2YWx1ZTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZ3V0dGVyU2l6ZSA9IHZhbHVlID8/ICdsYXJnZSc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGd1dHRlclNpemUoKTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUge1xuICAgIHJldHVybiB0aGlzLiNfZ3V0dGVyU2l6ZTtcbiAgfVxuXG4gICNfZ3V0dGVyU2l6ZTogU2t5Rmx1aWRHcmlkR3V0dGVyU2l6ZVR5cGUgPSAnbGFyZ2UnO1xufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1mbHVpZC1ncmlkXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdza3ktZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS1zbWFsbCc6IGd1dHRlclNpemUgPT09ICdzbWFsbCcsXG4gICAgJ3NreS1mbHVpZC1ncmlkLWd1dHRlci1zaXplLW1lZGl1bSc6IGd1dHRlclNpemUgPT09ICdtZWRpdW0nLFxuICAgICdza3ktZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS1sYXJnZSc6IGd1dHRlclNpemUgPT09ICdsYXJnZScsXG4gICAgJ3NreS1mbHVpZC1ncmlkLW5vLW1hcmdpbic6IGRpc2FibGVNYXJnaW5cbiAgfVwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
|
@@ -22,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
22
22
|
}], propDecorators: { reverseColumnOrder: [{
|
|
23
23
|
type: Input
|
|
24
24
|
}] } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZsdWlkLWdyaWQvcm93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFakQ7OztHQUdHO0FBTUgsTUFBTSxPQUFPLGVBQWU7SUFMNUI7UUFNRTs7O1dBR0c7UUFFSSx1QkFBa0IsR0FBd0IsS0FBSyxDQUFDO0tBQ3hEOzs0R0FQWSxlQUFlO2dHQUFmLGVBQWUscUdDWDVCLHdIQUdBOzJGRFFhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsU0FBUzs4QkFVWixrQkFBa0I7c0JBRHhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogRGlzcGxheXMgYSByb3cgd2l0aGluIHRoZSBgc2t5LWZsdWlkLWdyaWRgIHdyYXBwZXIuIFByZXZpb3VzbHksIHlvdSBjb3VsZCBkaXNwbGF5IGEgcm93XG4gKiB3aXRob3V0IGEgd3JhcHBlciwgYnV0IHdlIG5vIGxvbmdlciBvZmZpY2lhbGx5IHN1cHBvcnQgdGhhdCBvcHRpb24uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1yb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vcm93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcm93LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNreVJvd0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byByZXZlcnNlIHRoZSBkaXNwbGF5IG9yZGVyIGZvciBjb2x1bW5zIGluIHRoZSByb3cuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcmV2ZXJzZUNvbHVtbk9yZGVyOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LXJvd1wiIFtuZ0NsYXNzXT1cInsgJ3NreS1yb3ctcmV2ZXJzZSc6IHJldmVyc2VDb2x1bW5PcmRlciB9XCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx1aWQtZ3JpZC1ndXR0ZXItc2l6ZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZmx1aWQtZ3JpZC90eXBlcy9mbHVpZC1ncmlkLWd1dHRlci1zaXplLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNreUZsdWlkR3JpZEd1dHRlclNpemVUeXBlID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcbiJdfQ==
|
|
@@ -1,59 +1,67 @@
|
|
|
1
|
+
var _SkyFormatComponent_instances, _SkyFormatComponent__text, _SkyFormatComponent__args, _SkyFormatComponent_updateItemsForDisplay;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
import * as i1 from "@angular/common";
|
|
4
6
|
const tokenRegex = /(\{\d+\})/;
|
|
5
7
|
export class SkyFormatComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
_SkyFormatComponent_instances.add(this);
|
|
10
|
+
this.itemsForDisplay = [];
|
|
11
|
+
_SkyFormatComponent__text.set(this, void 0);
|
|
12
|
+
_SkyFormatComponent__args.set(this, void 0);
|
|
13
|
+
}
|
|
6
14
|
/**
|
|
7
15
|
* The tokenized string that represents the template. Tokens use the `{n}` notation
|
|
8
16
|
* where `n` is the ordinal of the item to replace the token.
|
|
9
17
|
*/
|
|
10
18
|
set text(value) {
|
|
11
|
-
this
|
|
12
|
-
this.
|
|
19
|
+
__classPrivateFieldSet(this, _SkyFormatComponent__text, value, "f");
|
|
20
|
+
__classPrivateFieldGet(this, _SkyFormatComponent_instances, "m", _SkyFormatComponent_updateItemsForDisplay).call(this);
|
|
13
21
|
}
|
|
14
22
|
get text() {
|
|
15
|
-
return this
|
|
23
|
+
return __classPrivateFieldGet(this, _SkyFormatComponent__text, "f");
|
|
16
24
|
}
|
|
17
25
|
/**
|
|
18
26
|
* An array of `TemplateRef` objects to be placed in the template, where the `nth`
|
|
19
27
|
* item is placed at the `{n}` location in the template.
|
|
20
28
|
*/
|
|
21
29
|
set args(value) {
|
|
22
|
-
this
|
|
23
|
-
this.
|
|
30
|
+
__classPrivateFieldSet(this, _SkyFormatComponent__args, value, "f");
|
|
31
|
+
__classPrivateFieldGet(this, _SkyFormatComponent_instances, "m", _SkyFormatComponent_updateItemsForDisplay).call(this);
|
|
24
32
|
}
|
|
25
33
|
get args() {
|
|
26
|
-
return this
|
|
34
|
+
return __classPrivateFieldGet(this, _SkyFormatComponent__args, "f");
|
|
27
35
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
this.itemsForDisplay.push(item);
|
|
36
|
+
}
|
|
37
|
+
_SkyFormatComponent__text = new WeakMap(), _SkyFormatComponent__args = new WeakMap(), _SkyFormatComponent_instances = new WeakSet(), _SkyFormatComponent_updateItemsForDisplay = function _SkyFormatComponent_updateItemsForDisplay() {
|
|
38
|
+
this.itemsForDisplay = [];
|
|
39
|
+
if (this.text && this.args) {
|
|
40
|
+
const textParts = this.text.split(tokenRegex);
|
|
41
|
+
for (const textPart of textParts) {
|
|
42
|
+
// Disregard empty strings.
|
|
43
|
+
if (textPart) {
|
|
44
|
+
const item = {};
|
|
45
|
+
if (tokenRegex.test(textPart)) {
|
|
46
|
+
const valueIndex = +textPart.substring(1, textPart.length - 1);
|
|
47
|
+
item.templateRef = this.args[valueIndex];
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
item.text = textPart;
|
|
44
51
|
}
|
|
52
|
+
this.itemsForDisplay.push(item);
|
|
45
53
|
}
|
|
46
54
|
}
|
|
47
55
|
}
|
|
48
|
-
}
|
|
56
|
+
};
|
|
49
57
|
SkyFormatComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFormatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
-
SkyFormatComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFormatComponent, selector: "sky-format", inputs: { text: "text", args: "args" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n
|
|
58
|
+
SkyFormatComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyFormatComponent, selector: "sky-format", inputs: { text: "text", args: "args" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <ng-container *ngIf=\"item.text\">{{ item.text }}</ng-container>\n <ng-container *ngIf=\"!item.text && item.templateRef\">\n <ng-container *ngTemplateOutlet=\"item.templateRef\"></ng-container>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
51
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyFormatComponent, decorators: [{
|
|
52
60
|
type: Component,
|
|
53
|
-
args: [{ selector: 'sky-format', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n
|
|
61
|
+
args: [{ selector: 'sky-format', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <ng-container *ngIf=\"item.text\">{{ item.text }}</ng-container>\n <ng-container *ngIf=\"!item.text && item.templateRef\">\n <ng-container *ngTemplateOutlet=\"item.templateRef\"></ng-container>\n </ng-container>\n</ng-container>\n" }]
|
|
54
62
|
}], propDecorators: { text: [{
|
|
55
63
|
type: Input
|
|
56
64
|
}], args: [{
|
|
57
65
|
type: Input
|
|
58
66
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sYXlvdXQvc3JjL2xpYi9tb2R1bGVzL2Zvcm1hdC9mb3JtYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xheW91dC9zcmMvbGliL21vZHVsZXMvZm9ybWF0L2Zvcm1hdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssR0FFTixNQUFNLGVBQWUsQ0FBQzs7O0FBSXZCLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQztBQU8vQixNQUFNLE9BQU8sa0JBQWtCO0lBTC9COztRQU1TLG9CQUFlLEdBQW9CLEVBQUUsQ0FBQztRQThCN0MsNENBQTJCO1FBRTNCLDRDQUF1QztLQTBCeEM7SUF4REM7OztPQUdHO0lBQ0gsSUFDVyxJQUFJLENBQUMsS0FBeUI7UUFDdkMsdUJBQUEsSUFBSSw2QkFBVSxLQUFLLE1BQUEsQ0FBQztRQUNwQix1QkFBQSxJQUFJLGdGQUF1QixNQUEzQixJQUFJLENBQXlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sdUJBQUEsSUFBSSxpQ0FBTyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNXLElBQUksQ0FBQyxLQUFxQztRQUNuRCx1QkFBQSxJQUFJLDZCQUFVLEtBQUssTUFBQSxDQUFDO1FBQ3BCLHVCQUFBLElBQUksZ0ZBQXVCLE1BQTNCLElBQUksQ0FBeUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyx1QkFBQSxJQUFJLGlDQUFPLENBQUM7SUFDckIsQ0FBQzs7O0lBT0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFFMUIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDMUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUMsS0FBSyxNQUFNLFFBQVEsSUFBSSxTQUFTLEVBQUU7WUFDaEMsMkJBQTJCO1lBQzNCLElBQUksUUFBUSxFQUFFO2dCQUNaLE1BQU0sSUFBSSxHQUFrQixFQUFFLENBQUM7Z0JBRS9CLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDN0IsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUUvRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzFDO3FCQUFNO29CQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO2lCQUN0QjtnQkFFRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQztTQUNGO0tBQ0Y7QUFDSCxDQUFDOytHQTFEVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwwRkNoQi9CLHNTQU1BOzJGRFVhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZLG1CQUVMLHVCQUF1QixDQUFDLE1BQU07OEJBVXBDLElBQUk7c0JBRGQsS0FBSztnQkFlSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lGb3JtYXRJdGVtIH0gZnJvbSAnLi9mb3JtYXQtaXRlbSc7XG5cbmNvbnN0IHRva2VuUmVnZXggPSAvKFxce1xcZCtcXH0pLztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZvcm1hdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtYXQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rm9ybWF0Q29tcG9uZW50IHtcbiAgcHVibGljIGl0ZW1zRm9yRGlzcGxheTogU2t5Rm9ybWF0SXRlbVtdID0gW107XG5cbiAgLyoqXG4gICAqIFRoZSB0b2tlbml6ZWQgc3RyaW5nIHRoYXQgcmVwcmVzZW50cyB0aGUgdGVtcGxhdGUuIFRva2VucyB1c2UgdGhlIGB7bn1gIG5vdGF0aW9uXG4gICAqIHdoZXJlIGBuYCBpcyB0aGUgb3JkaW5hbCBvZiB0aGUgaXRlbSB0byByZXBsYWNlIHRoZSB0b2tlbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGV4dCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RleHQgPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVJdGVtc0ZvckRpc3BsYXkoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGV4dCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfdGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBgVGVtcGxhdGVSZWZgIG9iamVjdHMgdG8gYmUgcGxhY2VkIGluIHRoZSB0ZW1wbGF0ZSwgd2hlcmUgdGhlIGBudGhgXG4gICAqIGl0ZW0gaXMgcGxhY2VkIGF0IHRoZSBge259YCBsb2NhdGlvbiBpbiB0aGUgdGVtcGxhdGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFyZ3ModmFsdWU6IFRlbXBsYXRlUmVmPGFueT5bXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19hcmdzID0gdmFsdWU7XG4gICAgdGhpcy4jdXBkYXRlSXRlbXNGb3JEaXNwbGF5KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFyZ3MoKTogVGVtcGxhdGVSZWY8YW55PltdIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2FyZ3M7XG4gIH1cblxuICAjX3RleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAjX2FyZ3M6IFRlbXBsYXRlUmVmPGFueT5bXSB8IHVuZGVmaW5lZDtcblxuICAjdXBkYXRlSXRlbXNGb3JEaXNwbGF5KCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXNGb3JEaXNwbGF5ID0gW107XG5cbiAgICBpZiAodGhpcy50ZXh0ICYmIHRoaXMuYXJncykge1xuICAgICAgY29uc3QgdGV4dFBhcnRzID0gdGhpcy50ZXh0LnNwbGl0KHRva2VuUmVnZXgpO1xuXG4gICAgICBmb3IgKGNvbnN0IHRleHRQYXJ0IG9mIHRleHRQYXJ0cykge1xuICAgICAgICAvLyBEaXNyZWdhcmQgZW1wdHkgc3RyaW5ncy5cbiAgICAgICAgaWYgKHRleHRQYXJ0KSB7XG4gICAgICAgICAgY29uc3QgaXRlbTogU2t5Rm9ybWF0SXRlbSA9IHt9O1xuXG4gICAgICAgICAgaWYgKHRva2VuUmVnZXgudGVzdCh0ZXh0UGFydCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlSW5kZXggPSArdGV4dFBhcnQuc3Vic3RyaW5nKDEsIHRleHRQYXJ0Lmxlbmd0aCAtIDEpO1xuXG4gICAgICAgICAgICBpdGVtLnRlbXBsYXRlUmVmID0gdGhpcy5hcmdzW3ZhbHVlSW5kZXhdO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpdGVtLnRleHQgPSB0ZXh0UGFydDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLml0ZW1zRm9yRGlzcGxheS5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zRm9yRGlzcGxheVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50ZXh0XCI+e3sgaXRlbS50ZXh0IH19PC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS50ZXh0ICYmIGl0ZW0udGVtcGxhdGVSZWZcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbS50ZW1wbGF0ZVJlZlwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
var _SkyInlineDeleteAdapterService_instances, _SkyInlineDeleteAdapterService_element, _SkyInlineDeleteAdapterService_focusableElements, _SkyInlineDeleteAdapterService_parentEl, _SkyInlineDeleteAdapterService_parentElUnlistenFn, _SkyInlineDeleteAdapterService_renderer, _SkyInlineDeleteAdapterService_coreAdapterService, _SkyInlineDeleteAdapterService_focusNextElement, _SkyInlineDeleteAdapterService_getFocusableElements, _SkyInlineDeleteAdapterService_isElementHiddenOrCovered, _SkyInlineDeleteAdapterService_isElementHidden, _SkyInlineDeleteAdapterService_isShift;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Injectable, RendererFactory2 } from '@angular/core';
|
|
2
4
|
import { SkyCoreAdapterService } from '@skyux/core';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
@@ -7,109 +9,115 @@ import * as i1 from "@skyux/core";
|
|
|
7
9
|
*/
|
|
8
10
|
export class SkyInlineDeleteAdapterService {
|
|
9
11
|
constructor(coreAdapterService, rendererFactory) {
|
|
10
|
-
this
|
|
11
|
-
|
|
12
|
+
_SkyInlineDeleteAdapterService_instances.add(this);
|
|
13
|
+
_SkyInlineDeleteAdapterService_element.set(this, void 0);
|
|
14
|
+
_SkyInlineDeleteAdapterService_focusableElements.set(this, void 0);
|
|
15
|
+
_SkyInlineDeleteAdapterService_parentEl.set(this, void 0);
|
|
16
|
+
_SkyInlineDeleteAdapterService_parentElUnlistenFn.set(this, void 0);
|
|
17
|
+
_SkyInlineDeleteAdapterService_renderer.set(this, void 0);
|
|
18
|
+
_SkyInlineDeleteAdapterService_coreAdapterService.set(this, void 0);
|
|
19
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_coreAdapterService, coreAdapterService, "f");
|
|
20
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_renderer, rendererFactory.createRenderer(undefined, null), "f");
|
|
12
21
|
}
|
|
13
22
|
clearListeners() {
|
|
14
23
|
/* istanbul ignore else */
|
|
15
|
-
if (this
|
|
16
|
-
this.
|
|
24
|
+
if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, "f")) {
|
|
25
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, "f").call(this);
|
|
17
26
|
}
|
|
18
27
|
}
|
|
19
28
|
setEl(element) {
|
|
20
|
-
this
|
|
21
|
-
this
|
|
29
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_element, element, "f");
|
|
30
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_parentEl, element.parentElement, "f");
|
|
22
31
|
/* istanbul ignore else */
|
|
23
|
-
if (this
|
|
24
|
-
this
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f")) {
|
|
33
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_parentElUnlistenFn, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_renderer, "f").listen(__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f"), 'focusin', (event) => {
|
|
34
|
+
if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f")) {
|
|
35
|
+
const target = event.target;
|
|
36
|
+
if (!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f").contains(target) && __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f") !== target) {
|
|
37
|
+
event.preventDefault();
|
|
38
|
+
event.stopPropagation();
|
|
39
|
+
event.stopImmediatePropagation();
|
|
40
|
+
target.blur();
|
|
41
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_focusNextElement).call(this, target, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isShift).call(this, event));
|
|
42
|
+
}
|
|
32
43
|
}
|
|
33
|
-
});
|
|
44
|
+
}), "f");
|
|
34
45
|
}
|
|
35
46
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
47
|
+
}
|
|
48
|
+
_SkyInlineDeleteAdapterService_element = new WeakMap(), _SkyInlineDeleteAdapterService_focusableElements = new WeakMap(), _SkyInlineDeleteAdapterService_parentEl = new WeakMap(), _SkyInlineDeleteAdapterService_parentElUnlistenFn = new WeakMap(), _SkyInlineDeleteAdapterService_renderer = new WeakMap(), _SkyInlineDeleteAdapterService_coreAdapterService = new WeakMap(), _SkyInlineDeleteAdapterService_instances = new WeakSet(), _SkyInlineDeleteAdapterService_focusNextElement = function _SkyInlineDeleteAdapterService_focusNextElement(targetElement, shiftKey) {
|
|
49
|
+
const focusable = __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_getFocusableElements).call(this);
|
|
50
|
+
// If shift tab, go in the other direction
|
|
51
|
+
const modifier = shiftKey ? -1 : 1;
|
|
52
|
+
// Find the next navigable element that isn't waiting
|
|
53
|
+
const startingIndex = focusable.indexOf(targetElement);
|
|
54
|
+
let curIndex = startingIndex + modifier;
|
|
55
|
+
while (focusable[curIndex] &&
|
|
56
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
|
|
57
|
+
curIndex += modifier;
|
|
58
|
+
}
|
|
59
|
+
if (focusable[curIndex] &&
|
|
60
|
+
!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
|
|
61
|
+
focusable[curIndex].focus();
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
// Try wrapping the navigation
|
|
65
|
+
/* istanbul ignore next */
|
|
66
|
+
curIndex = modifier > 0 ? 0 : focusable.length - 1;
|
|
67
|
+
/* istanbul ignore next */
|
|
68
|
+
while (curIndex !== startingIndex &&
|
|
69
|
+
focusable[curIndex] &&
|
|
70
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
|
|
45
71
|
curIndex += modifier;
|
|
46
72
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
73
|
+
/* istanbul ignore else */
|
|
74
|
+
/* sanity check */
|
|
75
|
+
if (focusable[curIndex] &&
|
|
76
|
+
!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHiddenOrCovered).call(this, focusable[curIndex])) {
|
|
77
|
+
focusable[curIndex].focus();
|
|
50
78
|
}
|
|
51
79
|
else {
|
|
52
|
-
//
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
while (curIndex !== startingIndex &&
|
|
57
|
-
focussable[curIndex] &&
|
|
58
|
-
this.isElementHiddenOrCovered(focussable[curIndex])) {
|
|
59
|
-
curIndex += modifier;
|
|
80
|
+
// No valid target, wipe focus
|
|
81
|
+
// This should never happen in practice due to the multiple inline delete buttons
|
|
82
|
+
if (document.activeElement && document.activeElement.blur) {
|
|
83
|
+
document.activeElement.blur();
|
|
60
84
|
}
|
|
61
|
-
|
|
62
|
-
/* sanity check */
|
|
63
|
-
if (focussable[curIndex] &&
|
|
64
|
-
!this.isElementHiddenOrCovered(focussable[curIndex])) {
|
|
65
|
-
focussable[curIndex].focus();
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
// No valid target, wipe focus
|
|
69
|
-
// This should never happen in practice due to the multiple inline delete buttons
|
|
70
|
-
if (document.activeElement && document.activeElement.blur) {
|
|
71
|
-
document.activeElement.blur();
|
|
72
|
-
}
|
|
73
|
-
document.body.focus();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
// clear focussableElements list so that if things change between tabbing we know about it
|
|
77
|
-
this.focussableElements = undefined;
|
|
78
|
-
}
|
|
79
|
-
getFocussableElements() {
|
|
80
|
-
// Keep this cached so we can reduce querys
|
|
81
|
-
if (this.focussableElements) {
|
|
82
|
-
return this.focussableElements;
|
|
85
|
+
document.body.focus();
|
|
83
86
|
}
|
|
84
|
-
this.focussableElements = this.coreAdapterService.getFocusableChildren(document.body);
|
|
85
|
-
return this.focussableElements;
|
|
86
|
-
}
|
|
87
|
-
isElementHiddenOrCovered(element) {
|
|
88
|
-
// Check if the element is hidden by css, not within the inline delete, or a wait is covering it
|
|
89
|
-
return (this.isElementHidden(element) ||
|
|
90
|
-
(this.parentEl.contains(element) &&
|
|
91
|
-
(!this.element.contains(element) ||
|
|
92
|
-
this.parentEl.querySelector('.sky-wait-mask') !== null)));
|
|
93
87
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
88
|
+
// clear focusableElements list so that if things change between tabbing we know about it
|
|
89
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_focusableElements, undefined, "f");
|
|
90
|
+
}, _SkyInlineDeleteAdapterService_getFocusableElements = function _SkyInlineDeleteAdapterService_getFocusableElements() {
|
|
91
|
+
// Keep this cached so we can reduce querys
|
|
92
|
+
if (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f")) {
|
|
93
|
+
return __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f");
|
|
97
94
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
(
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
95
|
+
__classPrivateFieldSet(this, _SkyInlineDeleteAdapterService_focusableElements, __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_coreAdapterService, "f").getFocusableChildren(document.body), "f");
|
|
96
|
+
return __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_focusableElements, "f");
|
|
97
|
+
}, _SkyInlineDeleteAdapterService_isElementHiddenOrCovered = function _SkyInlineDeleteAdapterService_isElementHiddenOrCovered(element) {
|
|
98
|
+
// Check if the element is hidden by css, not within the inline delete, or a wait is covering it
|
|
99
|
+
return (__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHidden).call(this, element) ||
|
|
100
|
+
(!!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f") &&
|
|
101
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f").contains(element) &&
|
|
102
|
+
(!__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_element, "f")?.contains(element) ||
|
|
103
|
+
__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_parentEl, "f").querySelector('.sky-wait-mask') !== null)));
|
|
104
|
+
}, _SkyInlineDeleteAdapterService_isElementHidden = function _SkyInlineDeleteAdapterService_isElementHidden(element) {
|
|
105
|
+
const style = window.getComputedStyle(element);
|
|
106
|
+
return style.display === 'none' || style.visibility === 'hidden';
|
|
107
|
+
}, _SkyInlineDeleteAdapterService_isShift = function _SkyInlineDeleteAdapterService_isShift(event) {
|
|
108
|
+
// Determine if shift+tab was used based on element order
|
|
109
|
+
const elements = __classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_getFocusableElements).call(this).filter((elem) => !__classPrivateFieldGet(this, _SkyInlineDeleteAdapterService_instances, "m", _SkyInlineDeleteAdapterService_isElementHidden).call(this, elem));
|
|
110
|
+
const previousInd = elements.indexOf(event.relatedTarget);
|
|
111
|
+
const currentInd = elements.indexOf(event.target);
|
|
112
|
+
/* istanbul ignore next */
|
|
113
|
+
return (previousInd === currentInd + 1 ||
|
|
114
|
+
(previousInd === 0 && currentInd === elements.length - 1) ||
|
|
115
|
+
previousInd > currentInd ||
|
|
116
|
+
!event.relatedTarget);
|
|
117
|
+
};
|
|
110
118
|
SkyInlineDeleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
111
119
|
SkyInlineDeleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService });
|
|
112
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyInlineDeleteAdapterService, decorators: [{
|
|
113
121
|
type: Injectable
|
|
114
122
|
}], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i0.RendererFactory2 }]; } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWRlbGV0ZS1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZGVsZXRlL2lubGluZS1kZWxldGUtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFFcEQ7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNkJBQTZCO0lBT3hDLFlBQ1Usa0JBQXlDLEVBQ2pELGVBQWlDO1FBRHpCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFHakQsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU0sY0FBYztRQUNuQiwwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQW9CO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUV0QywwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FDNUMsSUFBSSxDQUFDLFFBQVEsRUFDYixTQUFTLEVBQ1QsQ0FBQyxLQUFpQixFQUFFLEVBQUU7Z0JBQ3BCLE1BQU0sTUFBTSxHQUFRLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JB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TUFBTSxHQUFHLENBQUMsQ0FBQztZQUN6RCxXQUFXLEdBQUcsVUFBVTtZQUN4QixDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQzlCLENBQUM7SUFDSixDQUFDOzswSEFySlUsNkJBQTZCOzhIQUE3Qiw2QkFBNkI7MkZBQTdCLDZCQUE2QjtrQkFEekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5MiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5SW5saW5lRGVsZXRlQWRhcHRlclNlcnZpY2Uge1xuICBwcml2YXRlIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIGZvY3Vzc2FibGVFbGVtZW50czogSFRNTEVsZW1lbnRbXTtcbiAgcHJpdmF0ZSBwYXJlbnRFbDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgcGFyZW50RWxVbmxpc3RlbkZuOiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb3JlQWRhcHRlclNlcnZpY2U6IFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgICByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTJcbiAgKSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5wYXJlbnRFbFVubGlzdGVuRm4pIHtcbiAgICAgIHRoaXMucGFyZW50RWxVbmxpc3RlbkZuKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldEVsKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLnBhcmVudEVsID0gZWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5wYXJlbnRFbCkge1xuICAgICAgdGhpcy5wYXJlbnRFbFVubGlzdGVuRm4gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgdGhpcy5wYXJlbnRFbCxcbiAgICAgICAgJ2ZvY3VzaW4nLFxuICAgICAgICAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgICAgICBjb25zdCB0YXJnZXQ6IGFueSA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICBpZiAoIXRoaXMuZWxlbWVudC5jb250YWlucyh0YXJnZXQpICYmIHRoaXMucGFyZW50RWwgIT09IHRhcmdldCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIHRhcmdldC5ibHVyKCk7XG4gICAgICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodGFyZ2V0LCB0aGlzLmlzU2hpZnQoZXZlbnQpLCB0aGlzLnBhcmVudEVsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05leHRFbGVtZW50KFxuICAgIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHNoaWZ0S2V5OiBib29sZWFuLFxuICAgIGJ1c3lFbDogRWxlbWVudFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmb2N1c3NhYmxlID0gdGhpcy5nZXRGb2N1c3NhYmxlRWxlbWVudHMoKTtcblxuICAgIC8vIElmIHNoaWZ0IHRhYiwgZ28gaW4gdGhlIG90aGVyIGRpcmVjdGlvblxuICAgIGNvbnN0IG1vZGlmaWVyID0gc2hpZnRLZXkgPyAtMSA6IDE7XG5cbiAgICAvLyBGaW5kIHRoZSBuZXh0IG5hdmlnYWJsZSBlbGVtZW50IHRoYXQgaXNuJ3Qgd2FpdGluZ1xuICAgIGNvbnN0IHN0YXJ0aW5nSW5kZXggPSBmb2N1c3NhYmxlLmluZGV4T2YodGFyZ2V0RWxlbWVudCk7XG4gICAgbGV0IGN1ckluZGV4ID0gc3RhcnRpbmdJbmRleCArIG1vZGlmaWVyO1xuICAgIHdoaWxlIChcbiAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICB0aGlzLmlzRWxlbWVudEhpZGRlbk9yQ292ZXJlZChmb2N1c3NhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAhdGhpcy5pc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNzYWJsZVtjdXJJbmRleF0pXG4gICAgKSB7XG4gICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUcnkgd3JhcHBpbmcgdGhlIG5hdmlnYXRpb25cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBjdXJJbmRleCA9IG1vZGlmaWVyID4gMCA/IDAgOiBmb2N1c3NhYmxlLmxlbmd0aCAtIDE7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICB3aGlsZSAoXG4gICAgICAgIGN1ckluZGV4ICE9PSBzdGFydGluZ0luZGV4ICYmXG4gICAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgIHRoaXMuaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3Vzc2FibGVbY3VySW5kZXhdKVxuICAgICAgKSB7XG4gICAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgICAgfVxuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgICBpZiAoXG4gICAgICAgIGZvY3Vzc2FibGVbY3VySW5kZXhdICYmXG4gICAgICAgICF0aGlzLmlzRWxlbWVudEhpZGRlbk9yQ292ZXJlZChmb2N1c3NhYmxlW2N1ckluZGV4XSlcbiAgICAgICkge1xuICAgICAgICBmb2N1c3NhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gdmFsaWQgdGFyZ2V0LCB3aXBlIGZvY3VzXG4gICAgICAgIC8vIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiBpbiBwcmFjdGljZSBkdWUgdG8gdGhlIG11bHRpcGxlIGlubGluZSBkZWxldGUgYnV0dG9uc1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIpIHtcbiAgICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNzYWJsZUVsZW1lbnRzIGxpc3Qgc28gdGhhdCBpZiB0aGluZ3MgY2hhbmdlIGJldHdlZW4gdGFiYmluZyB3ZSBrbm93IGFib3V0IGl0XG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldEZvY3Vzc2FibGVFbGVtZW50cygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICAvLyBLZWVwIHRoaXMgY2FjaGVkIHNvIHdlIGNhbiByZWR1Y2UgcXVlcnlzXG4gICAgaWYgKHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5mb2N1c3NhYmxlRWxlbWVudHM7XG4gICAgfVxuXG4gICAgdGhpcy5mb2N1c3NhYmxlRWxlbWVudHMgPSB0aGlzLmNvcmVBZGFwdGVyU2VydmljZS5nZXRGb2N1c2FibGVDaGlsZHJlbihcbiAgICAgIGRvY3VtZW50LmJvZHlcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuZm9jdXNzYWJsZUVsZW1lbnRzO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZWxlbWVudDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGVsZW1lbnQgaXMgaGlkZGVuIGJ5IGNzcywgbm90IHdpdGhpbiB0aGUgaW5saW5lIGRlbGV0ZSwgb3IgYSB3YWl0IGlzIGNvdmVyaW5nIGl0XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQpIHx8XG4gICAgICAodGhpcy5wYXJlbnRFbC5jb250YWlucyhlbGVtZW50KSAmJlxuICAgICAgICAoIXRoaXMuZWxlbWVudC5jb250YWlucyhlbGVtZW50KSB8fFxuICAgICAgICAgIHRoaXMucGFyZW50RWwucXVlcnlTZWxlY3RvcignLnNreS13YWl0LW1hc2snKSAhPT0gbnVsbCkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN0eWxlLmRpc3BsYXkgPT09ICdub25lJyB8fCBzdHlsZS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJztcbiAgfVxuXG4gIHByaXZhdGUgaXNTaGlmdChldmVudDogRXZlbnQpOiBib29sZWFuIHtcbiAgICAvLyBEZXRlcm1pbmUgaWYgc2hpZnQrdGFiIHdhcyB1c2VkIGJhc2VkIG9uIGVsZW1lbnQgb3JkZXJcbiAgICBjb25zdCBlbGVtZW50cyA9IHRoaXMuZ2V0Rm9jdXNzYWJsZUVsZW1lbnRzKCkuZmlsdGVyKFxuICAgICAgKGVsZW0pID0+ICF0aGlzLmlzRWxlbWVudEhpZGRlbihlbGVtKVxuICAgICk7XG5cbiAgICBjb25zdCBwcmV2aW91c0luZCA9IGVsZW1lbnRzLmluZGV4T2YoKGV2ZW50IGFzIGFueSkucmVsYXRlZFRhcmdldCk7XG4gICAgY29uc3QgY3VycmVudEluZCA9IGVsZW1lbnRzLmluZGV4T2YoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMSB8fFxuICAgICAgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpIHx8XG4gICAgICBwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQgfHxcbiAgICAgICEoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWRlbGV0ZS1hZGFwdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGF5b3V0L3NyYy9saWIvbW9kdWxlcy9pbmxpbmUtZGVsZXRlL2lubGluZS1kZWxldGUtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUVwRDs7R0FFRztBQUVILE1BQU0sT0FBTyw2QkFBNkI7SUFTeEMsWUFDRSxrQkFBeUMsRUFDekMsZUFBaUM7O1FBVm5DLHlEQUFrQztRQUNsQyxtRUFBOEM7UUFDOUMsMERBQTBDO1FBQzFDLG9FQUE4QztRQUM5QywwREFBcUI7UUFFckIsb0VBQTJDO1FBTXpDLHVCQUFBLElBQUkscURBQXVCLGtCQUFrQixNQUFBLENBQUM7UUFDOUMsdUJBQUEsSUFBSSwyQ0FBYSxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBQSxDQUFDO0lBQ25FLENBQUM7SUFFTSxjQUFjO1FBQ25CLDBCQUEwQjtRQUMxQixJQUFJLHVCQUFBLElBQUkseURBQW9CLEVBQUU7WUFDNUIsdUJBQUEsSUFBSSx5REFBb0IsTUFBeEIsSUFBSSxDQUFzQixDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFvQjtRQUMvQix1QkFBQSxJQUFJLDBDQUFZLE9BQU8sTUFBQSxDQUFDO1FBQ3hCLHVCQUFBLElBQUksMkNBQWEsT0FBTyxDQUFDLGFBQWEsTUFBQSxDQUFDO1FBRXZDLDBCQUEwQjtRQUMxQixJQUFJLHVCQUFBLElBQUksK0NBQVUsRUFBRTtZQUNsQix1QkFBQSxJQUFJLHFEQUF1Qix1QkFBQSxJQUFJLCtDQUFVLENBQUMsTUFBTSxDQUM5Qyx1QkFBQSxJQUFJLCtDQUFVLEVBQ2QsU0FBUyxFQUNULENBQUMsS0FBaUIsRUFBRSxFQUFFO2dCQUNwQixJQUFJLHVCQUFBLElBQUksOENBQVMsRUFBRTtvQkFDakIsTUFBTSxNQUFNLEdBQVEsS0FBSyxDQUFDLE1BQU0sQ0FBQztvQkFDakMsSUFBSSxDQUFDLHVCQUFBLElBQUksOENBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksdUJBQUEsSUFBSSwrQ0FBVSxLQUFLLE1BQU0sRUFBRTt3QkFDaEUsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7d0JBQ3hCLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO3dCQUVqQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ2QsdUJBQUEsSUFBSSxpR0FBa0IsTUFBdEIsSUFBSSxFQUFtQixNQUFNLEVBQUUsdUJBQUEsSUFBSSx3RkFBUyxNQUFiLElBQUksRUFBVSxLQUFLLENBQUMsQ0FBQyxDQUFDO3FCQUN0RDtpQkFDRjtZQUNILENBQUMsQ0FDRixNQUFBLENBQUM7U0FDSDtJQUNILENBQUM7O3VoQkFFaUIsYUFBMEIsRUFBRSxRQUFpQjtJQUM3RCxNQUFNLFNBQVMsR0FBRyx1QkFBQSxJQUFJLHFHQUFzQixNQUExQixJQUFJLENBQXdCLENBQUM7SUFFL0MsMENBQTBDO0lBQzFDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVuQyxxREFBcUQ7SUFDckQsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxJQUFJLFFBQVEsR0FBRyxhQUFhLEdBQUcsUUFBUSxDQUFDO0lBQ3hDLE9BQ0UsU0FBUyxDQUFDLFFBQVEsQ0FBQztRQUNuQix1QkFBQSxJQUFJLHlHQUEwQixNQUE5QixJQUFJLEVBQTJCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUNuRDtRQUNBLFFBQVEsSUFBSSxRQUFRLENBQUM7S0FDdEI7SUFFRCxJQUNFLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDbkIsQ0FBQyx1QkFBQSxJQUFJLHlHQUEwQixNQUE5QixJQUFJLEVBQTJCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUNwRDtRQUNBLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUM3QjtTQUFNO1FBQ0wsOEJBQThCO1FBQzlCLDBCQUEwQjtRQUMxQixRQUFRLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUVuRCwwQkFBMEI7UUFDMUIsT0FDRSxRQUFRLEtBQUssYUFBYTtZQUMxQixTQUFTLENBQUMsUUFBUSxDQUFDO1lBQ25CLHVCQUFBLElBQUkseUdBQTBCLE1BQTlCLElBQUksRUFBMkIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQ25EO1lBQ0EsUUFBUSxJQUFJLFFBQVEsQ0FBQztTQUN0QjtRQUVELDBCQUEwQjtRQUMxQixrQkFBa0I7UUFDbEIsSUFDRSxTQUFTLENBQUMsUUFBUSxDQUFDO1lBQ25CLENBQUMsdUJBQUEsSUFBSSx5R0FBMEIsTUFBOUIsSUFBSSxFQUEyQixTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsRUFDcEQ7WUFDQSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDN0I7YUFBTTtZQUNMLDhCQUE4QjtZQUM5QixpRkFBaUY7WUFDakYsSUFBSSxRQUFRLENBQUMsYUFBYSxJQUFLLFFBQVEsQ0FBQyxhQUFxQixDQUFDLElBQUksRUFBRTtnQkFDakUsUUFBUSxDQUFDLGFBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDeEM7WUFDRCxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3ZCO0tBQ0Y7SUFFRCx5RkFBeUY7SUFDekYsdUJBQUEsSUFBSSxvREFBc0IsU0FBUyxNQUFBLENBQUM7QUFDdEMsQ0FBQztJQUdDLDJDQUEyQztJQUMzQyxJQUFJLHVCQUFBLElBQUksd0RBQW1CLEVBQUU7UUFDM0IsT0FBTyx1QkFBQSxJQUFJLHdEQUFtQixDQUFDO0tBQ2hDO0lBRUQsdUJBQUEsSUFBSSxvREFBc0IsdUJBQUEsSUFBSSx5REFBb0IsQ0FBQyxvQkFBb0IsQ0FDckUsUUFBUSxDQUFDLElBQUksQ0FDZCxNQUFBLENBQUM7SUFFRixPQUFPLHVCQUFBLElBQUksd0RBQW1CLENBQUM7QUFDakMsQ0FBQyw2SEFFeUIsT0FBWTtJQUNwQyxnR0FBZ0c7SUFDaEcsT0FBTyxDQUNMLHVCQUFBLElBQUksZ0dBQWlCLE1BQXJCLElBQUksRUFBa0IsT0FBTyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDLHVCQUFBLElBQUksK0NBQVU7WUFDZix1QkFBQSxJQUFJLCtDQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUNoQyxDQUFDLENBQUMsdUJBQUEsSUFBSSw4Q0FBUyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQ2hDLHVCQUFBLElBQUksK0NBQVUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUM5RCxDQUFDO0FBQ0osQ0FBQywyR0FFZ0IsT0FBWTtJQUMzQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0MsT0FBTyxLQUFLLENBQUMsT0FBTyxLQUFLLE1BQU0sSUFBSSxLQUFLLENBQUMsVUFBVSxLQUFLLFFBQVEsQ0FBQztBQUNuRSxDQUFDLDJGQUVRLEtBQVk7SUFDbkIseURBQXlEO0lBQ3pELE1BQU0sUUFBUSxHQUFHLHVCQUFBLElBQUkscUdBQXNCLE1BQTFCLElBQUksQ0FBd0IsQ0FBQyxNQUFNLENBQ2xELENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLHVCQUFBLElBQUksZ0dBQWlCLE1BQXJCLElBQUksRUFBa0IsSUFBSSxDQUFDLENBQ3ZDLENBQUM7SUFFRixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNuRSxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFxQixDQUFDLENBQUM7SUFFakUsMEJBQTBCO0lBQzFCLE9BQU8sQ0FDTCxXQUFXLEtBQUssVUFBVSxHQUFHLENBQUM7UUFDOUIsQ0FBQyxXQUFXLEtBQUssQ0FBQyxJQUFJLFVBQVUsS0FBSyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUN6RCxXQUFXLEdBQUcsVUFBVTtRQUN4QixDQUFFLEtBQWEsQ0FBQyxhQUFhLENBQzlCLENBQUM7QUFDSixDQUFDOzBIQXZKVSw2QkFBNkI7OEhBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUR6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDb3JlQWRhcHRlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lJbmxpbmVEZWxldGVBZGFwdGVyU2VydmljZSB7XG4gICNlbGVtZW50OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgI2ZvY3VzYWJsZUVsZW1lbnRzOiBIVE1MRWxlbWVudFtdIHwgdW5kZWZpbmVkO1xuICAjcGFyZW50RWw6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgI3BhcmVudEVsVW5saXN0ZW5GbjogKCgpID0+IHZvaWQpIHwgdW5kZWZpbmVkO1xuICAjcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICAjY29yZUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY29yZUFkYXB0ZXJTZXJ2aWNlOiBTa3lDb3JlQWRhcHRlclNlcnZpY2UsXG4gICAgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyXG4gICkge1xuICAgIHRoaXMuI2NvcmVBZGFwdGVyU2VydmljZSA9IGNvcmVBZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuI3BhcmVudEVsVW5saXN0ZW5Gbikge1xuICAgICAgdGhpcy4jcGFyZW50RWxVbmxpc3RlbkZuKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldEVsKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy4jZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgdGhpcy4jcGFyZW50RWwgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNwYXJlbnRFbCkge1xuICAgICAgdGhpcy4jcGFyZW50RWxVbmxpc3RlbkZuID0gdGhpcy4jcmVuZGVyZXIubGlzdGVuKFxuICAgICAgICB0aGlzLiNwYXJlbnRFbCxcbiAgICAgICAgJ2ZvY3VzaW4nLFxuICAgICAgICAoZXZlbnQ6IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy4jZWxlbWVudCkge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0OiBhbnkgPSBldmVudC50YXJnZXQ7XG4gICAgICAgICAgICBpZiAoIXRoaXMuI2VsZW1lbnQuY29udGFpbnModGFyZ2V0KSAmJiB0aGlzLiNwYXJlbnRFbCAhPT0gdGFyZ2V0KSB7XG4gICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgICB0YXJnZXQuYmx1cigpO1xuICAgICAgICAgICAgICB0aGlzLiNmb2N1c05leHRFbGVtZW50KHRhcmdldCwgdGhpcy4jaXNTaGlmdChldmVudCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAjZm9jdXNOZXh0RWxlbWVudCh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCwgc2hpZnRLZXk6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBmb2N1c2FibGUgPSB0aGlzLiNnZXRGb2N1c2FibGVFbGVtZW50cygpO1xuXG4gICAgLy8gSWYgc2hpZnQgdGFiLCBnbyBpbiB0aGUgb3RoZXIgZGlyZWN0aW9uXG4gICAgY29uc3QgbW9kaWZpZXIgPSBzaGlmdEtleSA/IC0xIDogMTtcblxuICAgIC8vIEZpbmQgdGhlIG5leHQgbmF2aWdhYmxlIGVsZW1lbnQgdGhhdCBpc24ndCB3YWl0aW5nXG4gICAgY29uc3Qgc3RhcnRpbmdJbmRleCA9IGZvY3VzYWJsZS5pbmRleE9mKHRhcmdldEVsZW1lbnQpO1xuICAgIGxldCBjdXJJbmRleCA9IHN0YXJ0aW5nSW5kZXggKyBtb2RpZmllcjtcbiAgICB3aGlsZSAoXG4gICAgICBmb2N1c2FibGVbY3VySW5kZXhdICYmXG4gICAgICB0aGlzLiNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGN1ckluZGV4ICs9IG1vZGlmaWVyO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgICF0aGlzLiNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZm9jdXNhYmxlW2N1ckluZGV4XSlcbiAgICApIHtcbiAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0uZm9jdXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVHJ5IHdyYXBwaW5nIHRoZSBuYXZpZ2F0aW9uXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgY3VySW5kZXggPSBtb2RpZmllciA+IDAgPyAwIDogZm9jdXNhYmxlLmxlbmd0aCAtIDE7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICB3aGlsZSAoXG4gICAgICAgIGN1ckluZGV4ICE9PSBzdGFydGluZ0luZGV4ICYmXG4gICAgICAgIGZvY3VzYWJsZVtjdXJJbmRleF0gJiZcbiAgICAgICAgdGhpcy4jaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3VzYWJsZVtjdXJJbmRleF0pXG4gICAgICApIHtcbiAgICAgICAgY3VySW5kZXggKz0gbW9kaWZpZXI7XG4gICAgICB9XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAvKiBzYW5pdHkgY2hlY2sgKi9cbiAgICAgIGlmIChcbiAgICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XSAmJlxuICAgICAgICAhdGhpcy4jaXNFbGVtZW50SGlkZGVuT3JDb3ZlcmVkKGZvY3VzYWJsZVtjdXJJbmRleF0pXG4gICAgICApIHtcbiAgICAgICAgZm9jdXNhYmxlW2N1ckluZGV4XS5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gdmFsaWQgdGFyZ2V0LCB3aXBlIGZvY3VzXG4gICAgICAgIC8vIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiBpbiBwcmFjdGljZSBkdWUgdG8gdGhlIG11bHRpcGxlIGlubGluZSBkZWxldGUgYnV0dG9uc1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIpIHtcbiAgICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBhbnkpLmJsdXIoKTtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY2xlYXIgZm9jdXNhYmxlRWxlbWVudHMgbGlzdCBzbyB0aGF0IGlmIHRoaW5ncyBjaGFuZ2UgYmV0d2VlbiB0YWJiaW5nIHdlIGtub3cgYWJvdXQgaXRcbiAgICB0aGlzLiNmb2N1c2FibGVFbGVtZW50cyA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gICNnZXRGb2N1c2FibGVFbGVtZW50cygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICAvLyBLZWVwIHRoaXMgY2FjaGVkIHNvIHdlIGNhbiByZWR1Y2UgcXVlcnlzXG4gICAgaWYgKHRoaXMuI2ZvY3VzYWJsZUVsZW1lbnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy4jZm9jdXNhYmxlRWxlbWVudHM7XG4gICAgfVxuXG4gICAgdGhpcy4jZm9jdXNhYmxlRWxlbWVudHMgPSB0aGlzLiNjb3JlQWRhcHRlclNlcnZpY2UuZ2V0Rm9jdXNhYmxlQ2hpbGRyZW4oXG4gICAgICBkb2N1bWVudC5ib2R5XG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLiNmb2N1c2FibGVFbGVtZW50cztcbiAgfVxuXG4gICNpc0VsZW1lbnRIaWRkZW5PckNvdmVyZWQoZWxlbWVudDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGVsZW1lbnQgaXMgaGlkZGVuIGJ5IGNzcywgbm90IHdpdGhpbiB0aGUgaW5saW5lIGRlbGV0ZSwgb3IgYSB3YWl0IGlzIGNvdmVyaW5nIGl0XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuI2lzRWxlbWVudEhpZGRlbihlbGVtZW50KSB8fFxuICAgICAgKCEhdGhpcy4jcGFyZW50RWwgJiZcbiAgICAgICAgdGhpcy4jcGFyZW50RWwuY29udGFpbnMoZWxlbWVudCkgJiZcbiAgICAgICAgKCF0aGlzLiNlbGVtZW50Py5jb250YWlucyhlbGVtZW50KSB8fFxuICAgICAgICAgIHRoaXMuI3BhcmVudEVsLnF1ZXJ5U2VsZWN0b3IoJy5za3ktd2FpdC1tYXNrJykgIT09IG51bGwpKVxuICAgICk7XG4gIH1cblxuICAjaXNFbGVtZW50SGlkZGVuKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN0eWxlLmRpc3BsYXkgPT09ICdub25lJyB8fCBzdHlsZS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJztcbiAgfVxuXG4gICNpc1NoaWZ0KGV2ZW50OiBFdmVudCk6IGJvb2xlYW4ge1xuICAgIC8vIERldGVybWluZSBpZiBzaGlmdCt0YWIgd2FzIHVzZWQgYmFzZWQgb24gZWxlbWVudCBvcmRlclxuICAgIGNvbnN0IGVsZW1lbnRzID0gdGhpcy4jZ2V0Rm9jdXNhYmxlRWxlbWVudHMoKS5maWx0ZXIoXG4gICAgICAoZWxlbSkgPT4gIXRoaXMuI2lzRWxlbWVudEhpZGRlbihlbGVtKVxuICAgICk7XG5cbiAgICBjb25zdCBwcmV2aW91c0luZCA9IGVsZW1lbnRzLmluZGV4T2YoKGV2ZW50IGFzIGFueSkucmVsYXRlZFRhcmdldCk7XG4gICAgY29uc3QgY3VycmVudEluZCA9IGVsZW1lbnRzLmluZGV4T2YoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzSW5kID09PSBjdXJyZW50SW5kICsgMSB8fFxuICAgICAgKHByZXZpb3VzSW5kID09PSAwICYmIGN1cnJlbnRJbmQgPT09IGVsZW1lbnRzLmxlbmd0aCAtIDEpIHx8XG4gICAgICBwcmV2aW91c0luZCA+IGN1cnJlbnRJbmQgfHxcbiAgICAgICEoZXZlbnQgYXMgYW55KS5yZWxhdGVkVGFyZ2V0XG4gICAgKTtcbiAgfVxufVxuIl19
|