@wizishop/angular-components 14.1.2 → 14.1.4
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/angular-components.scss +1669 -253
- package/esm2020/lib/components/block-with-checkbox/block-with-checkbox.component.mjs +47 -0
- package/esm2020/lib/components/breadcrumbs/breadcrumbs.component.mjs +27 -0
- package/esm2020/lib/components/breadcrumbs/breadcrumbs.dto.mjs +2 -0
- package/esm2020/lib/components/button/button.component.mjs +22 -3
- package/esm2020/lib/components/card-price/card-price.component.mjs +66 -0
- package/esm2020/lib/components/confirm-delete/confirm-delete.component.mjs +64 -0
- package/esm2020/lib/components/content-with-buttons/content-with-buttons.component.mjs +69 -0
- package/esm2020/lib/components/draganddrop-list/draganddrop-list.component.mjs +61 -0
- package/esm2020/lib/components/expansion/accordion/accordion-item.interface.mjs +2 -0
- package/esm2020/lib/components/expansion/accordion/accordion-item.token.mjs +3 -0
- package/esm2020/lib/components/expansion/accordion/accordion.component.mjs +74 -0
- package/esm2020/lib/components/expansion/expansion-panel/expansion-panel-base.mjs +83 -0
- package/esm2020/lib/components/expansion/expansion-panel/expansion-panel.component.mjs +29 -0
- package/esm2020/lib/components/expansion/expansion-panel/expansion-panel.directive.mjs +20 -0
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header-base.mjs +44 -0
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.mjs +27 -0
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.directive.mjs +20 -0
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.interface.mjs +2 -0
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.token.mjs +3 -0
- package/esm2020/lib/components/expansion/expansion.module.mjs +48 -0
- package/esm2020/lib/components/free-popin/free-popin.component.mjs +1 -1
- package/esm2020/lib/components/header-page/header-page.component.mjs +6 -4
- package/esm2020/lib/components/hn/h1/h1.component.mjs +10 -5
- package/esm2020/lib/components/inputs/input/input.component.mjs +10 -3
- package/esm2020/lib/components/link/link.component.mjs +6 -4
- package/esm2020/lib/components/mosaic/mosaic.component.mjs +81 -0
- package/esm2020/lib/components/popin/popin.component.mjs +3 -3
- package/esm2020/lib/components/selected-list/selected-list.component.mjs +1 -1
- package/esm2020/lib/components/selects/legacy-select/select.component.mjs +133 -0
- package/esm2020/lib/components/selects/select-in-text/select-in-text.component.mjs +5 -4
- package/esm2020/lib/components/selects/select-test/select.component.mjs +1 -1
- package/esm2020/lib/components/selects/select-test/value-change.service.mjs +3 -3
- package/esm2020/lib/components/shared-components.module.mjs +75 -9
- package/esm2020/lib/components/switch/switch.component.mjs +40 -11
- package/esm2020/lib/components/text-area/text-area.component.mjs +19 -5
- package/esm2020/lib/components/token-check/token-check.component.mjs +21 -0
- package/esm2020/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.mjs +12 -0
- package/esm2020/lib/components/wrapper-sidebar/wrapper-sidebar.component.mjs +27 -0
- package/esm2020/public-api.mjs +22 -2
- package/fesm2015/wizishop-angular-components.mjs +938 -55
- package/fesm2015/wizishop-angular-components.mjs.map +1 -1
- package/fesm2020/wizishop-angular-components.mjs +936 -55
- package/fesm2020/wizishop-angular-components.mjs.map +1 -1
- package/lib/components/block-with-checkbox/block-with-checkbox.component.d.ts +17 -0
- package/lib/components/breadcrumbs/breadcrumbs.component.d.ts +13 -0
- package/lib/components/breadcrumbs/breadcrumbs.dto.d.ts +5 -0
- package/lib/components/button/button.component.d.ts +8 -1
- package/lib/components/card-price/card-price.component.d.ts +27 -0
- package/lib/components/confirm-delete/confirm-delete.component.d.ts +21 -0
- package/lib/components/content-with-buttons/content-with-buttons.component.d.ts +26 -0
- package/lib/components/draganddrop-list/draganddrop-list.component.d.ts +20 -0
- package/lib/components/expansion/accordion/accordion-item.interface.d.ts +10 -0
- package/lib/components/expansion/accordion/accordion-item.token.d.ts +3 -0
- package/lib/components/expansion/accordion/accordion.component.d.ts +19 -0
- package/lib/components/expansion/expansion-panel/expansion-panel-base.d.ts +26 -0
- package/lib/components/expansion/expansion-panel/expansion-panel.component.d.ts +11 -0
- package/lib/components/expansion/expansion-panel/expansion-panel.directive.d.ts +9 -0
- package/lib/components/expansion/expansion-panel-header/expansion-panel-header-base.d.ts +20 -0
- package/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.d.ts +11 -0
- package/lib/components/expansion/expansion-panel-header/expansion-panel-header.directive.d.ts +9 -0
- package/lib/components/expansion/expansion-panel-header/expansion-panel-header.interface.d.ts +8 -0
- package/lib/components/expansion/expansion-panel-header/expansion-panel-header.token.d.ts +3 -0
- package/lib/components/expansion/expansion.module.d.ts +18 -0
- package/lib/components/header-page/header-page.component.d.ts +3 -4
- package/lib/components/hn/h1/h1.component.d.ts +4 -4
- package/lib/components/inputs/input/input.component.d.ts +4 -1
- package/lib/components/link/link.component.d.ts +4 -4
- package/lib/components/mosaic/mosaic.component.d.ts +28 -0
- package/lib/components/selects/{select → legacy-select}/select.component.d.ts +2 -1
- package/lib/components/selects/select-test/select.component.d.ts +2 -2
- package/lib/components/selects/select-test/value-change.service.d.ts +2 -2
- package/lib/components/shared-components.module.d.ts +55 -35
- package/lib/components/switch/switch.component.d.ts +13 -3
- package/lib/components/text-area/text-area.component.d.ts +8 -3
- package/lib/components/token-check/token-check.component.d.ts +10 -0
- package/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.d.ts +6 -0
- package/lib/components/wrapper-sidebar/wrapper-sidebar.component.d.ts +11 -0
- package/package.json +1 -1
- package/public-api.d.ts +20 -1
- package/wizishop-angular-components-14.1.4.tgz +0 -0
- package/esm2020/lib/components/selects/select/select.component.mjs +0 -130
- package/wizishop-angular-components-14.1.2.tgz +0 -0
|
@@ -27,7 +27,7 @@ import * as i25 from "./text/text.component";
|
|
|
27
27
|
import * as i26 from "./text-area/text-area.component";
|
|
28
28
|
import * as i27 from "./upload/upload.component";
|
|
29
29
|
import * as i28 from "./selects/select-in-text/select-in-text.component";
|
|
30
|
-
import * as i29 from "./selects/select/select.component";
|
|
30
|
+
import * as i29 from "./selects/legacy-select/select.component";
|
|
31
31
|
import * as i30 from "./multiple-search/multiple-search.component";
|
|
32
32
|
import * as i31 from "./multiple-search-plus/multiple-search-plus.component";
|
|
33
33
|
import * as i32 from "./inputs/input-with-select/input-with-select.component";
|
|
@@ -47,41 +47,61 @@ import * as i45 from "./selects/option-call-to-action/option-call-to-action.comp
|
|
|
47
47
|
import * as i46 from "./common/placeholder/placeholder.component";
|
|
48
48
|
import * as i47 from "./common/label/label.component";
|
|
49
49
|
import * as i48 from "./selects/select-search-trigger/select-search-trigger.component";
|
|
50
|
-
import * as i49 from "
|
|
51
|
-
import * as i50 from "
|
|
52
|
-
import * as i51 from "
|
|
53
|
-
import * as i52 from "
|
|
54
|
-
import * as i53 from "
|
|
55
|
-
import * as i54 from "
|
|
56
|
-
import * as i55 from "
|
|
57
|
-
import * as i56 from "
|
|
58
|
-
import * as i57 from "./
|
|
59
|
-
import * as i58 from "./
|
|
60
|
-
import * as i59 from "
|
|
61
|
-
import * as i60 from "
|
|
62
|
-
import * as i61 from "
|
|
63
|
-
import * as i62 from "
|
|
64
|
-
import * as i63 from "
|
|
65
|
-
import * as i64 from "
|
|
66
|
-
import * as i65 from "
|
|
67
|
-
import * as i66 from "
|
|
68
|
-
import * as i67 from "@angular/
|
|
69
|
-
import * as i68 from "./
|
|
70
|
-
import * as i69 from "./
|
|
71
|
-
import * as i70 from "./
|
|
72
|
-
import * as i71 from "./
|
|
73
|
-
import * as i72 from "./
|
|
74
|
-
import * as i73 from "./
|
|
75
|
-
import * as i74 from "./
|
|
76
|
-
import * as i75 from "./
|
|
77
|
-
import * as i76 from "
|
|
78
|
-
import * as i77 from "./
|
|
79
|
-
import * as i78 from "
|
|
80
|
-
import * as i79 from "
|
|
81
|
-
import * as i80 from "
|
|
82
|
-
import * as i81 from "
|
|
50
|
+
import * as i49 from "./wrapper-sidebar/wrapper-sidebar.component";
|
|
51
|
+
import * as i50 from "./breadcrumbs/breadcrumbs.component";
|
|
52
|
+
import * as i51 from "./card-price/card-price.component";
|
|
53
|
+
import * as i52 from "./token-check/token-check.component";
|
|
54
|
+
import * as i53 from "./block-with-checkbox/block-with-checkbox.component";
|
|
55
|
+
import * as i54 from "./confirm-delete/confirm-delete.component";
|
|
56
|
+
import * as i55 from "./mosaic/mosaic.component";
|
|
57
|
+
import * as i56 from "./content-with-buttons/content-with-buttons.component";
|
|
58
|
+
import * as i57 from "./wrapper-multiple-block/wrapper-multiple-block.component";
|
|
59
|
+
import * as i58 from "./draganddrop-list/draganddrop-list.component";
|
|
60
|
+
import * as i59 from "@angular/common";
|
|
61
|
+
import * as i60 from "@angular/forms";
|
|
62
|
+
import * as i61 from "@wizishop/ng-wizi-bulma";
|
|
63
|
+
import * as i62 from "@ngx-translate/core";
|
|
64
|
+
import * as i63 from "../directives/shared-directives.module";
|
|
65
|
+
import * as i64 from "../pipes/shared-pipes.module";
|
|
66
|
+
import * as i65 from "@angular/cdk/table";
|
|
67
|
+
import * as i66 from "ngx-chips";
|
|
68
|
+
import * as i67 from "@angular/cdk/drag-drop";
|
|
69
|
+
import * as i68 from "./pagination/pagination.module";
|
|
70
|
+
import * as i69 from "./table/table.module";
|
|
71
|
+
import * as i70 from "./inputs/input-search/input-search.module";
|
|
72
|
+
import * as i71 from "./tooltip/tooltip.module";
|
|
73
|
+
import * as i72 from "./checkbox/checkbox.module";
|
|
74
|
+
import * as i73 from "./inputs/input/input.module";
|
|
75
|
+
import * as i74 from "./loader/loader.module";
|
|
76
|
+
import * as i75 from "./progress-bar/progress-bar.module";
|
|
77
|
+
import * as i76 from "ngx-perfect-scrollbar";
|
|
78
|
+
import * as i77 from "./alert-popup/alert-popup-module";
|
|
79
|
+
import * as i78 from "@angular/router";
|
|
80
|
+
import * as i79 from "ngx-autosize";
|
|
81
|
+
import * as i80 from "ngx-scrollbar";
|
|
82
|
+
import * as i81 from "ngx-scrollbar/reached-event";
|
|
83
|
+
import * as i82 from "./tree/tree.module";
|
|
84
|
+
import * as i83 from "./expansion/expansion.module";
|
|
85
|
+
import * as i84 from "./pagination/pagination.component";
|
|
86
|
+
import * as i85 from "./table/table.component";
|
|
87
|
+
import * as i86 from "./table/directives/column.directive";
|
|
88
|
+
import * as i87 from "./table/directives/checkBoxRow.directive";
|
|
89
|
+
import * as i88 from "./table/directives/columnHeader.directive";
|
|
90
|
+
import * as i89 from "./table/directives/raw.directive";
|
|
91
|
+
import * as i90 from "./inputs/input-search/input-search.component";
|
|
92
|
+
import * as i91 from "./inputs/input/input.component";
|
|
93
|
+
import * as i92 from "./tooltip/tooltip.component";
|
|
94
|
+
import * as i93 from "./checkbox/checkbox.component";
|
|
95
|
+
import * as i94 from "./loader/loader.component";
|
|
96
|
+
import * as i95 from "./progress-bar/progress-bar.component";
|
|
97
|
+
import * as i96 from "./tree/tree.component";
|
|
98
|
+
import * as i97 from "./expansion/expansion-panel/expansion-panel.component";
|
|
99
|
+
import * as i98 from "./expansion/expansion-panel-header/expansion-panel-header.component";
|
|
100
|
+
import * as i99 from "./expansion/accordion/accordion.component";
|
|
101
|
+
import * as i100 from "./expansion/expansion-panel/expansion-panel.directive";
|
|
102
|
+
import * as i101 from "./expansion/expansion-panel-header/expansion-panel-header.directive";
|
|
83
103
|
export declare class SharedComponentsModule {
|
|
84
104
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedComponentsModule, never>;
|
|
85
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedComponentsModule, [typeof i1.TagComponent, typeof i2.TabComponent, typeof i3.ButtonComponent, typeof i4.InfoComponent, typeof i5.SettingsComponent, typeof i6.DeleteComponent, typeof i7.DropdownComponent, typeof i8.ImageComponent, typeof i9.BackComponent, typeof i10.SeparatorComponent, typeof i11.LogoComponent, typeof i12.RadioComponent, typeof i13.StateComponent, typeof i14.TagLabelComponent, typeof i15.CalendarComponent, typeof i16.WzEditInPlaceComponent, typeof i17.AlertComponent, typeof i18.HeaderPageComponent, typeof i19.SwitchComponent, typeof i20.LinkComponent, typeof i21.H1Component, typeof i22.H2Component, typeof i23.H3Component, typeof i24.H4Component, typeof i25.TextComponent, typeof i26.TextAreaComponent, typeof i27.UploadComponent, typeof i28.SelectInTextComponent, typeof i29.SelectComponent, typeof i30.MultipleSearchComponent, typeof i31.MultipleSearchPlusComponent, typeof i32.InputWithSelectComponent, typeof i33.PopinComponent, typeof i34.FreePopinComponent, typeof i35.BlockComponent, typeof i36.WrapperComponent, typeof i37.FiltersComponent, typeof i38.WrapperBlocsComponent, typeof i39.SnackbarComponent, typeof i40.SearchComponent, typeof i41.SelectedListComponent, typeof i42.OptionalDisableContainerComponent, typeof i43.SelectTestComponent, typeof i44.OptionComponent, typeof i45.OptionCallToActionComponent, typeof i46.PlaceholderComponent, typeof i47.LabelComponent, typeof i48.SelectSearchTriggerComponent], [typeof
|
|
105
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedComponentsModule, [typeof i1.TagComponent, typeof i2.TabComponent, typeof i3.ButtonComponent, typeof i4.InfoComponent, typeof i5.SettingsComponent, typeof i6.DeleteComponent, typeof i7.DropdownComponent, typeof i8.ImageComponent, typeof i9.BackComponent, typeof i10.SeparatorComponent, typeof i11.LogoComponent, typeof i12.RadioComponent, typeof i13.StateComponent, typeof i14.TagLabelComponent, typeof i15.CalendarComponent, typeof i16.WzEditInPlaceComponent, typeof i17.AlertComponent, typeof i18.HeaderPageComponent, typeof i19.SwitchComponent, typeof i20.LinkComponent, typeof i21.H1Component, typeof i22.H2Component, typeof i23.H3Component, typeof i24.H4Component, typeof i25.TextComponent, typeof i26.TextAreaComponent, typeof i27.UploadComponent, typeof i28.SelectInTextComponent, typeof i29.SelectComponent, typeof i30.MultipleSearchComponent, typeof i31.MultipleSearchPlusComponent, typeof i32.InputWithSelectComponent, typeof i33.PopinComponent, typeof i34.FreePopinComponent, typeof i35.BlockComponent, typeof i36.WrapperComponent, typeof i37.FiltersComponent, typeof i38.WrapperBlocsComponent, typeof i39.SnackbarComponent, typeof i40.SearchComponent, typeof i41.SelectedListComponent, typeof i42.OptionalDisableContainerComponent, typeof i43.SelectTestComponent, typeof i44.OptionComponent, typeof i45.OptionCallToActionComponent, typeof i46.PlaceholderComponent, typeof i47.LabelComponent, typeof i48.SelectSearchTriggerComponent, typeof i49.WrapperSidebarComponent, typeof i50.BreadcrumbsComponent, typeof i51.CardPriceComponent, typeof i52.TokenCheckComponent, typeof i53.BlockWithCheckboxComponent, typeof i54.ConfirmDeleteComponent, typeof i55.MosaicComponent, typeof i56.ContentWithButtonsComponent, typeof i57.WrapperMultipleBlockComponent, typeof i58.DraganddropListComponent], [typeof i59.CommonModule, typeof i60.FormsModule, typeof i61.NwbAllModule, typeof i62.TranslateModule, typeof i60.ReactiveFormsModule, typeof i63.SharedDirectives, typeof i64.SharedPipes, typeof i65.CdkTableModule, typeof i66.TagInputModule, typeof i67.DragDropModule, typeof i68.PaginationModule, typeof i69.TableModule, typeof i70.InputSearchModule, typeof i71.TooltipModule, typeof i72.CheckboxModule, typeof i73.InputModule, typeof i74.LoaderModule, typeof i75.ProgressBarModule, typeof i76.PerfectScrollbarModule, typeof i77.AlertPopupModule, typeof i78.RouterModule, typeof i79.AutosizeModule, typeof i80.NgScrollbarModule, typeof i81.NgScrollbarReachedModule, typeof i82.TreeModule, typeof i83.ExpansionModule], [typeof i1.TagComponent, typeof i2.TabComponent, typeof i3.ButtonComponent, typeof i4.InfoComponent, typeof i5.SettingsComponent, typeof i6.DeleteComponent, typeof i7.DropdownComponent, typeof i8.ImageComponent, typeof i9.BackComponent, typeof i10.SeparatorComponent, typeof i11.LogoComponent, typeof i12.RadioComponent, typeof i13.StateComponent, typeof i14.TagLabelComponent, typeof i15.CalendarComponent, typeof i16.WzEditInPlaceComponent, typeof i17.AlertComponent, typeof i18.HeaderPageComponent, typeof i19.SwitchComponent, typeof i20.LinkComponent, typeof i21.H1Component, typeof i22.H2Component, typeof i23.H3Component, typeof i24.H4Component, typeof i25.TextComponent, typeof i26.TextAreaComponent, typeof i27.UploadComponent, typeof i28.SelectInTextComponent, typeof i29.SelectComponent, typeof i30.MultipleSearchComponent, typeof i31.MultipleSearchPlusComponent, typeof i32.InputWithSelectComponent, typeof i33.PopinComponent, typeof i34.FreePopinComponent, typeof i35.BlockComponent, typeof i36.WrapperComponent, typeof i37.FiltersComponent, typeof i38.WrapperBlocsComponent, typeof i39.SnackbarComponent, typeof i40.SearchComponent, typeof i41.SelectedListComponent, typeof i42.OptionalDisableContainerComponent, typeof i43.SelectTestComponent, typeof i44.OptionComponent, typeof i45.OptionCallToActionComponent, typeof i46.PlaceholderComponent, typeof i47.LabelComponent, typeof i48.SelectSearchTriggerComponent, typeof i49.WrapperSidebarComponent, typeof i50.BreadcrumbsComponent, typeof i51.CardPriceComponent, typeof i52.TokenCheckComponent, typeof i53.BlockWithCheckboxComponent, typeof i54.ConfirmDeleteComponent, typeof i55.MosaicComponent, typeof i56.ContentWithButtonsComponent, typeof i57.WrapperMultipleBlockComponent, typeof i58.DraganddropListComponent, typeof i84.PaginationComponent, typeof i85.TableComponent, typeof i86.TableColumn, typeof i87.CheckBoxRow, typeof i88.TableColumnHeader, typeof i89.TableRow, typeof i90.InputSearchComponent, typeof i91.InputComponent, typeof i92.TooltipComponent, typeof i93.CheckboxComponent, typeof i94.LoaderComponent, typeof i95.ProgressBarComponent, typeof i96.TreeComponent, typeof i97.ExpansionPanelComponent, typeof i98.ExpansionPanelHeaderComponent, typeof i99.AccordionComponent, typeof i100.ExpansionPanelDirective, typeof i101.ExpansionPanelHeaderDirective]>;
|
|
86
106
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedComponentsModule>;
|
|
87
107
|
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { EventEmitter, OnInit } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class SwitchComponent implements OnInit {
|
|
4
|
+
export declare class SwitchComponent implements OnInit, ControlValueAccessor {
|
|
5
|
+
private changeDetectorRef;
|
|
4
6
|
value: boolean;
|
|
5
7
|
textState: string;
|
|
6
8
|
textStateEnable: string;
|
|
@@ -13,10 +15,18 @@ export declare class SwitchComponent implements OnInit {
|
|
|
13
15
|
changeInput: EventEmitter<any>;
|
|
14
16
|
valueInput: string;
|
|
15
17
|
id: string;
|
|
16
|
-
|
|
18
|
+
disabled: boolean;
|
|
19
|
+
constructor(changeDetectorRef: ChangeDetectorRef);
|
|
17
20
|
ngOnInit(): void;
|
|
18
21
|
changeValue(event: any): void;
|
|
19
22
|
triggerInput(): void;
|
|
23
|
+
private onChange;
|
|
24
|
+
writeValue(value: boolean): void;
|
|
25
|
+
registerOnChange(onChange: any): void;
|
|
26
|
+
onBlur(): void;
|
|
27
|
+
private onTouched;
|
|
28
|
+
registerOnTouched(onTouched: any): void;
|
|
29
|
+
setDisabledState(disabled: boolean): void;
|
|
20
30
|
static ɵfac: i0.ɵɵFactoryDeclaration<SwitchComponent, never>;
|
|
21
31
|
static ɵcmp: i0.ɵɵComponentDeclaration<SwitchComponent, "wac-switch", never, { "value": "value"; "textState": "textState"; "textStateEnable": "textStateEnable"; "textStateDisable": "textStateDisable"; "showInput": "showInput"; "placholderInput": "placholderInput"; "danger": "danger"; "whiteSpace": "whiteSpace"; }, { "switchChange": "switchChange"; "changeInput": "changeInput"; }, never, ["*"], false>;
|
|
22
32
|
}
|
|
@@ -4,13 +4,18 @@ export declare class TextAreaComponent implements ControlValueAccessor {
|
|
|
4
4
|
label: string;
|
|
5
5
|
value: string;
|
|
6
6
|
placeholder: string;
|
|
7
|
-
textInfo:
|
|
8
|
-
textError:
|
|
7
|
+
textInfo: string;
|
|
8
|
+
textError: string;
|
|
9
|
+
error: boolean;
|
|
10
|
+
success: boolean;
|
|
9
11
|
size: any;
|
|
10
12
|
min: any;
|
|
11
13
|
max: any;
|
|
14
|
+
dynamicSize: boolean;
|
|
12
15
|
progressBar: boolean;
|
|
13
16
|
disabled: boolean;
|
|
17
|
+
maxlength: number | string;
|
|
18
|
+
minlength: number | string;
|
|
14
19
|
id: string;
|
|
15
20
|
private _onChange;
|
|
16
21
|
private _onTouched;
|
|
@@ -21,5 +26,5 @@ export declare class TextAreaComponent implements ControlValueAccessor {
|
|
|
21
26
|
onChange(value: any): void;
|
|
22
27
|
onBlur(): void;
|
|
23
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<TextAreaComponent, never>;
|
|
24
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TextAreaComponent, "wac-text-area", never, { "label": "label"; "value": "value"; "placeholder": "placeholder"; "textInfo": "textInfo"; "textError": "textError"; "size": "size"; "min": "min"; "max": "max"; "progressBar": "progressBar"; }, {}, never, never, false>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TextAreaComponent, "wac-text-area", never, { "label": "label"; "value": "value"; "placeholder": "placeholder"; "textInfo": "textInfo"; "textError": "textError"; "error": "error"; "success": "success"; "size": "size"; "min": "min"; "max": "max"; "dynamicSize": "dynamicSize"; "progressBar": "progressBar"; "disabled": "disabled"; "maxlength": "maxlength"; "minlength": "minlength"; }, {}, never, never, false>;
|
|
25
30
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class TokenCheckComponent {
|
|
3
|
+
label: string;
|
|
4
|
+
value: number;
|
|
5
|
+
max: number;
|
|
6
|
+
warning: boolean;
|
|
7
|
+
constructor();
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TokenCheckComponent, never>;
|
|
9
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TokenCheckComponent, "wac-token-check", never, { "label": "label"; "value": "value"; "max": "max"; }, {}, never, never, false>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class WrapperMultipleBlockComponent {
|
|
3
|
+
constructor();
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<WrapperMultipleBlockComponent, never>;
|
|
5
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<WrapperMultipleBlockComponent, "wac-wrapper-multiple-block", never, {}, {}, never, ["[sidebar]", "[content]"], false>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class WrapperSidebarComponent {
|
|
3
|
+
reverse: boolean;
|
|
4
|
+
hideBackground: boolean;
|
|
5
|
+
backgroundGrey: string;
|
|
6
|
+
backgroundWidth: string;
|
|
7
|
+
stickySidebar: boolean;
|
|
8
|
+
constructor();
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<WrapperSidebarComponent, never>;
|
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<WrapperSidebarComponent, "wac-wrapper-sidebar", never, { "reverse": "reverse"; "hideBackground": "hideBackground"; "backgroundGrey": "backgroundGrey"; "backgroundWidth": "backgroundWidth"; "stickySidebar": "stickySidebar"; }, {}, never, ["[sidebar]", "[content]"], false>;
|
|
11
|
+
}
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ export * from './lib/components/checkbox/checkbox.component';
|
|
|
42
42
|
export * from './lib/components/loader/loader.component';
|
|
43
43
|
export * from './lib/components/progress-bar/progress-bar.component';
|
|
44
44
|
export * from './lib/components/upload/upload.component';
|
|
45
|
-
export * from './lib/components/selects/select/select.component';
|
|
45
|
+
export * from './lib/components/selects/legacy-select/select.component';
|
|
46
46
|
export * from './lib/components/selects/select-items.dto';
|
|
47
47
|
export * from './lib/components/inputs/input-with-select/input-with-select.component';
|
|
48
48
|
export * from './lib/components/inputs/input-with-select/option-item.dto';
|
|
@@ -65,13 +65,23 @@ export * from './lib/components/wrapper/wrapper.component';
|
|
|
65
65
|
export * from './lib/components/filters/filters.component';
|
|
66
66
|
export * from './lib/components/filters/filter-item.dto';
|
|
67
67
|
export * from './lib/components/wrapper-blocs/wrapper-blocs.component';
|
|
68
|
+
export * from './lib/components/card-price/card-price.component';
|
|
68
69
|
export * from './lib/components/multiple-search-plus/shared/multiple-search-plus-results.model';
|
|
69
70
|
export * from './lib/components/multiple-search-plus/shared/multiple-search-plus-option.model';
|
|
70
71
|
export * from './lib/components/snackbar/snackbar.component';
|
|
71
72
|
export * from './lib/components/alert-popup/alert-popup.service';
|
|
72
73
|
export * from './lib/components/alert-popup/alert-popup.component';
|
|
73
74
|
export * from './lib/components/alert-popup/alert-popup-module';
|
|
75
|
+
export * from './lib/components/wrapper-sidebar/wrapper-sidebar.component';
|
|
76
|
+
export * from './lib/components/breadcrumbs/breadcrumbs.component';
|
|
77
|
+
export * from './lib/components/token-check/token-check.component';
|
|
78
|
+
export * from './lib/components/block-with-checkbox/block-with-checkbox.component';
|
|
79
|
+
export * from './lib/components/confirm-delete/confirm-delete.component';
|
|
74
80
|
export * from './lib/components/search/search.component';
|
|
81
|
+
export * from './lib/components/mosaic/mosaic.component';
|
|
82
|
+
export * from './lib/components/content-with-buttons/content-with-buttons.component';
|
|
83
|
+
export * from './lib/components/wrapper-multiple-block/wrapper-multiple-block.component';
|
|
84
|
+
export * from './lib/components/draganddrop-list/draganddrop-list.component';
|
|
75
85
|
export * from './lib/components/selected-list/selected-list.component';
|
|
76
86
|
export * from './lib/components/selected-list/shared/selected-list-option.model';
|
|
77
87
|
export * from './lib/components/search/shared/search-option.model';
|
|
@@ -93,3 +103,12 @@ export * from './lib/components/common/label/label.component';
|
|
|
93
103
|
export * from './lib/components/selects/option/select-option.directive';
|
|
94
104
|
export * from './lib/components/selects/select-search-trigger/select-search-trigger.component';
|
|
95
105
|
export * from './lib/pipes/select/filter-options.pipe';
|
|
106
|
+
export * from './lib/components/expansion/expansion.module';
|
|
107
|
+
export * from './lib/components/expansion/accordion/accordion.component';
|
|
108
|
+
export * from './lib/components/expansion/accordion/accordion-item.token';
|
|
109
|
+
export * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.component';
|
|
110
|
+
export * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.token';
|
|
111
|
+
export * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.directive';
|
|
112
|
+
export * from './lib/components/expansion/expansion-panel/expansion-panel.component';
|
|
113
|
+
export * from './lib/components/expansion/expansion-panel/expansion-panel.directive';
|
|
114
|
+
export * from './lib/components/expansion/expansion-panel/expansion-panel-base';
|
|
Binary file
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "../../../directives/auto-hide/auto-hide.directive";
|
|
7
|
-
import * as i4 from "../../../directives/zindex-toggle/zindex-toggle.directive";
|
|
8
|
-
import * as i5 from "../../../directives/keyboard-events/keypress-enter.directive";
|
|
9
|
-
import * as i6 from "ngx-perfect-scrollbar";
|
|
10
|
-
import * as i7 from "@ngx-translate/core";
|
|
11
|
-
import * as i8 from "../../../pipes/select/select-filters.pipe";
|
|
12
|
-
export class SelectComponent {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.search = false;
|
|
15
|
-
this.searchValue = '';
|
|
16
|
-
this.searchValueChange = new EventEmitter();
|
|
17
|
-
this.type = 'default';
|
|
18
|
-
this.maxWidth = '100%';
|
|
19
|
-
this.disabled = false;
|
|
20
|
-
this.selectValue = new EventEmitter(); // todo rename more explicit
|
|
21
|
-
this.clickOnCallToAction = new EventEmitter();
|
|
22
|
-
this.openCategories = false;
|
|
23
|
-
this.indexItemSelected = -1;
|
|
24
|
-
// ControlValueAccessor methods
|
|
25
|
-
this.onChange = () => { };
|
|
26
|
-
this.onTouch = () => { };
|
|
27
|
-
}
|
|
28
|
-
set items(items) {
|
|
29
|
-
this._items = items;
|
|
30
|
-
this.setIndexItemSelected();
|
|
31
|
-
}
|
|
32
|
-
get items() {
|
|
33
|
-
return this._items;
|
|
34
|
-
}
|
|
35
|
-
set callToAction(callToAction) {
|
|
36
|
-
this._calllToAction = callToAction;
|
|
37
|
-
}
|
|
38
|
-
get callToAction() {
|
|
39
|
-
return this._calllToAction;
|
|
40
|
-
}
|
|
41
|
-
onClose() {
|
|
42
|
-
this.openCategories = false;
|
|
43
|
-
}
|
|
44
|
-
customTB(item, index) {
|
|
45
|
-
return `${item.id}-${index}`;
|
|
46
|
-
}
|
|
47
|
-
onSelectItem(id) {
|
|
48
|
-
this.unselectAll();
|
|
49
|
-
this.setIndexItemSelectedById(id);
|
|
50
|
-
const itemSelected = this.getItemSelected();
|
|
51
|
-
itemSelected.selected = true;
|
|
52
|
-
this.selectValue.emit(this.indexItemSelected);
|
|
53
|
-
this.onChange(itemSelected);
|
|
54
|
-
}
|
|
55
|
-
onClickCallToAction() {
|
|
56
|
-
this.onClose();
|
|
57
|
-
this.clickOnCallToAction.emit(this.callToAction.value);
|
|
58
|
-
}
|
|
59
|
-
onSearcheValueChange() {
|
|
60
|
-
this.searchValueChange.emit(this.searchValue);
|
|
61
|
-
}
|
|
62
|
-
getItemSelected() {
|
|
63
|
-
return this.items[this.indexItemSelected];
|
|
64
|
-
}
|
|
65
|
-
showCategories() {
|
|
66
|
-
this.openCategories = true;
|
|
67
|
-
setTimeout(() => {
|
|
68
|
-
this.searchElement.nativeElement?.focus();
|
|
69
|
-
}, 0);
|
|
70
|
-
}
|
|
71
|
-
unselectAll() {
|
|
72
|
-
this.items.forEach(item => item.selected = false);
|
|
73
|
-
}
|
|
74
|
-
setIndexItemSelectedById(id) {
|
|
75
|
-
this.indexItemSelected = this.items.findIndex(item => item.id === id);
|
|
76
|
-
}
|
|
77
|
-
setIndexItemSelected() {
|
|
78
|
-
this.indexItemSelected = this.items.findIndex(item => item.selected);
|
|
79
|
-
}
|
|
80
|
-
writeValue(selectItem) {
|
|
81
|
-
if (!selectItem) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
this.unselectAll();
|
|
85
|
-
selectItem.selected = true;
|
|
86
|
-
this.setIndexItemSelectedById(selectItem.id);
|
|
87
|
-
}
|
|
88
|
-
registerOnChange(fn) {
|
|
89
|
-
this.onChange = fn;
|
|
90
|
-
}
|
|
91
|
-
registerOnTouched(fn) {
|
|
92
|
-
this.onTouch = fn;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
-
SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SelectComponent, selector: "wac-select", inputs: { items: "items", placeholder: "placeholder", label: "label", maxWidthItems: "maxWidthItems", search: "search", searchValue: "searchValue", type: "type", callToAction: "callToAction", maxWidth: "maxWidth", disabled: "disabled" }, outputs: { searchValueChange: "searchValueChange", selectValue: "selectValue", clickOnCallToAction: "clickOnCallToAction" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true }], viewQueries: [{ propertyName: "searchElement", first: true, predicate: ["search"], descendants: true }], ngImport: i0, template: "<p *ngIf=\"label\" [innerHTML]=\"label\" class=\"wac-select__label\"></p>\n\n<div class=\"wac-select\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n\n <div class=\"wac-select__current\" [ngClass]=\"{ 'select-disabled' : disabled }\" (click)=\"!disabled && openCategories = !openCategories\" *ngIf=\"!search\">\n <span *ngIf=\"indexItemSelected !== -1\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span [innerHTML]=\"indexItemSelected !== -1 ? items[indexItemSelected].name : placeholder\"></span><span><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__current wac-select__current--withSearch\" [ngClass]=\"{ 'select-disabled' : disabled, 'open-search': openCategories }\" *ngIf=\"search\">\n <div class=\"wac-select__current__search\" *ngIf=\"openCategories && !disabled\">\n <i class=\"far fa-search\"></i>\n <input #search type=\"text\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearcheValueChange()\" (keypressEnter)=\"onClickCallToAction()\"/>\n </div>\n <span (click)=\"openCategories = !openCategories;\" *ngIf=\"items[indexItemSelected]?.icon && !openCategories\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span (click)=\"showCategories()\" [innerHTML]=\"items[indexItemSelected]?.name ? items[indexItemSelected].name : placeholder\"></span>\n <span (click)=\"openCategories = !openCategories;\"><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openCategories, open: type === 'open' }\" [ngStyle]=\"{ 'max-width': maxWidthItems }\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length\">\n\n <div *ngIf=\"callToAction\" class=\"wac-select__content__cta\">\n <div (click)=\"onClickCallToAction()\">\n <i *ngIf=\"callToAction.icon\" [classList]=\"callToAction.icon\"></i><strong *ngIf=\"callToAction.boldText\">{{ callToAction.boldText }}</strong\n ><span>{{ callToAction?.name }}</span>\n </div>\n </div>\n\n <div\n *ngFor=\"let item of items | selectFilters: searchValue; let index = index;\"\n (click)=\"onClose()\"\n class=\"wac-select__content__item\"\n >\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n\n </perfect-scrollbar>\n\n <div *ngIf=\"!(items | selectFilters: searchValue)?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: i4.ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "directive", type: i5.KeypressEnterDirective, selector: "[keypressEnter]", outputs: ["keypressEnter"] }, { kind: "component", type: i6.PerfectScrollbarComponent, selector: "perfect-scrollbar", inputs: ["disabled", "usePSClass", "autoPropagation", "scrollIndicators", "config"], outputs: ["psScrollY", "psScrollX", "psScrollUp", "psScrollDown", "psScrollLeft", "psScrollRight", "psYReachEnd", "psYReachStart", "psXReachEnd", "psXReachStart"], exportAs: ["ngxPerfectScrollbar"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "pipe", type: i8.SelectFiltersPipe, name: "selectFilters" }] });
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SelectComponent, decorators: [{
|
|
98
|
-
type: Component,
|
|
99
|
-
args: [{ selector: 'wac-select', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true }], template: "<p *ngIf=\"label\" [innerHTML]=\"label\" class=\"wac-select__label\"></p>\n\n<div class=\"wac-select\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n\n <div class=\"wac-select__current\" [ngClass]=\"{ 'select-disabled' : disabled }\" (click)=\"!disabled && openCategories = !openCategories\" *ngIf=\"!search\">\n <span *ngIf=\"indexItemSelected !== -1\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span [innerHTML]=\"indexItemSelected !== -1 ? items[indexItemSelected].name : placeholder\"></span><span><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__current wac-select__current--withSearch\" [ngClass]=\"{ 'select-disabled' : disabled, 'open-search': openCategories }\" *ngIf=\"search\">\n <div class=\"wac-select__current__search\" *ngIf=\"openCategories && !disabled\">\n <i class=\"far fa-search\"></i>\n <input #search type=\"text\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearcheValueChange()\" (keypressEnter)=\"onClickCallToAction()\"/>\n </div>\n <span (click)=\"openCategories = !openCategories;\" *ngIf=\"items[indexItemSelected]?.icon && !openCategories\" class=\"icon\" [innerHTML]=\"items[indexItemSelected].icon\"></span>\n <span (click)=\"showCategories()\" [innerHTML]=\"items[indexItemSelected]?.name ? items[indexItemSelected].name : placeholder\"></span>\n <span (click)=\"openCategories = !openCategories;\"><i class=\"fas fa-chevron-down\"></i></span>\n </div>\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openCategories, open: type === 'open' }\" [ngStyle]=\"{ 'max-width': maxWidthItems }\">\n <perfect-scrollbar [config]=\"{ suppressScrollX: true }\" *ngIf=\"items.length\">\n\n <div *ngIf=\"callToAction\" class=\"wac-select__content__cta\">\n <div (click)=\"onClickCallToAction()\">\n <i *ngIf=\"callToAction.icon\" [classList]=\"callToAction.icon\"></i><strong *ngIf=\"callToAction.boldText\">{{ callToAction.boldText }}</strong\n ><span>{{ callToAction?.name }}</span>\n </div>\n </div>\n\n <div\n *ngFor=\"let item of items | selectFilters: searchValue; let index = index;\"\n (click)=\"onClose()\"\n class=\"wac-select__content__item\"\n >\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(item.id)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n\n </perfect-scrollbar>\n\n <div *ngIf=\"!(items | selectFilters: searchValue)?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>" }]
|
|
100
|
-
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
101
|
-
type: Input
|
|
102
|
-
}], placeholder: [{
|
|
103
|
-
type: Input
|
|
104
|
-
}], label: [{
|
|
105
|
-
type: Input
|
|
106
|
-
}], maxWidthItems: [{
|
|
107
|
-
type: Input
|
|
108
|
-
}], search: [{
|
|
109
|
-
type: Input
|
|
110
|
-
}], searchValue: [{
|
|
111
|
-
type: Input
|
|
112
|
-
}], searchValueChange: [{
|
|
113
|
-
type: Output
|
|
114
|
-
}], type: [{
|
|
115
|
-
type: Input
|
|
116
|
-
}], callToAction: [{
|
|
117
|
-
type: Input
|
|
118
|
-
}], maxWidth: [{
|
|
119
|
-
type: Input
|
|
120
|
-
}], disabled: [{
|
|
121
|
-
type: Input
|
|
122
|
-
}], selectValue: [{
|
|
123
|
-
type: Output
|
|
124
|
-
}], clickOnCallToAction: [{
|
|
125
|
-
type: Output
|
|
126
|
-
}], searchElement: [{
|
|
127
|
-
type: ViewChild,
|
|
128
|
-
args: ['search']
|
|
129
|
-
}] } });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3BHLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQU96RSxNQUFNLE9BQU8sZUFBZTtJQTBEMUI7UUFsQ0EsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUdmLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRWYsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUd6RCxTQUFJLEdBQUcsU0FBUyxDQUFDO1FBV1IsYUFBUSxHQUFHLE1BQU0sQ0FBQztRQUczQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRVAsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDLENBQUMsNEJBQTRCO1FBRXRFLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJeEQsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsc0JBQWlCLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFxRC9CLCtCQUErQjtRQUUvQixhQUFRLEdBQXFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN0RCxZQUFPLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBdERSLENBQUM7SUFyRGhC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R0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7NEdBaElVLGVBQWU7Z0dBQWYsZUFBZSxnWkFGZixDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLG1JQ1J4Rixtd0ZBOENNOzJGRHBDTyxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVksYUFFWCxDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzBFQU96RSxLQUFLO3NCQUFqQixLQUFLO2dCQVVOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBR0ksaUJBQWlCO3NCQUExQixNQUFNO2dCQUdQLElBQUk7c0JBREgsS0FBSztnQkFJTyxZQUFZO3NCQUF4QixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdJLFdBQVc7c0JBQXBCLE1BQU07Z0JBRUcsbUJBQW1CO3NCQUE1QixNQUFNO2dCQUVjLGFBQWE7c0JBQWpDLFNBQVM7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGxsVG9BY3Rpb24gfSBmcm9tICcuLi9jYWxsLXRvLWFjdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBTZWxlY3RJdGVtIH0gZnJvbSAnLi4vc2VsZWN0LWl0ZW1zLmR0byc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dhYy1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IFNlbGVjdENvbXBvbmVudCwgbXVsdGk6IHRydWUgfV1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAvLyEgUmVmYWN0byBpbXByb3ZlIHNyb2xsIG9uIG1vYmlsZSwgc2VlIHdpdGggUGF1bGluZVxuICAvLyB0b2RvIGNvdWxkIGJlIHNpbXBsaWZ5LiBDaGVjayBmaWx0ZXJzIG1hbmFnZXIgaW1wbGVtZW50YXRpb24gZm9yIHVzZSBjYXNlXG5cbiAgX2l0ZW1zOiBTZWxlY3RJdGVtW107XG4gIEBJbnB1dCgpIHNldCBpdGVtcyhpdGVtczogU2VsZWN0SXRlbVtdKSB7XG4gICAgdGhpcy5faXRlbXMgPSBpdGVtcztcbiAgICB0aGlzLnNldEluZGV4SXRlbVNlbGVjdGVkKCk7XG4gIH1cblxuICBnZXQgaXRlbXMoKSA6IFNlbGVjdEl0ZW1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2l0ZW1zO1xuICB9XG5cbiAgQElucHV0KClcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBsYWJlbDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIG1heFdpZHRoSXRlbXM6IHN0cmluZzsgLy8gdG9kbyBpbXByb3ZyZSB0eXBlIGxpa2UgOiBleHBvcnQgdHlwZSBDc3NVbml0cyA9ICdlbSd8ICdyZW0nIHwgJ3B4JzsgZXhwb3J0IHR5cGUgQ3NzVW5pdCA9IGAke251bWJlcn0ke0Nzc1VuaXRzfWA7XG5cbiAgQElucHV0KClcbiAgc2VhcmNoID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgc2VhcmNoVmFsdWU6IHN0cmluZyA9ICcnO1xuXG4gIEBPdXRwdXQoKSBzZWFyY2hWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBJbnB1dCgpXG4gIHR5cGUgPSAnZGVmYXVsdCc7XG5cbiAgX2NhbGxsVG9BY3Rpb246IENhbGxsVG9BY3Rpb247IC8vIHRvZG8gbWF5YmUgcmVwbGFjZSBieSBuZy1jb250ZW50IG9yIGFsbG93IHRlbXBsYXRlIG9yIGNoaWxkIGNvbXBvbmVudCBsaWtlIDx3YWMtb3B0aW9uLWNhbGwtdG8tYWN0aW9uPi4uLlxuICBASW5wdXQoKSBzZXQgY2FsbFRvQWN0aW9uKGNhbGxUb0FjdGlvbjogQ2FsbGxUb0FjdGlvbikge1xuICAgIHRoaXMuX2NhbGxsVG9BY3Rpb24gPSBjYWxsVG9BY3Rpb247XG4gIH1cblxuICBnZXQgY2FsbFRvQWN0aW9uKCk6IENhbGxsVG9BY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9jYWxsbFRvQWN0aW9uO1xuICB9XG5cbiAgQElucHV0KCkgbWF4V2lkdGggPSAnMTAwJSc7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgc2VsZWN0VmFsdWUgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTsgLy8gdG9kbyByZW5hbWUgbW9yZSBleHBsaWNpdFxuXG4gIEBPdXRwdXQoKSBjbGlja09uQ2FsbFRvQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQFZpZXdDaGlsZCgnc2VhcmNoJykgc2VhcmNoRWxlbWVudDogRWxlbWVudFJlZjtcblxuICBvcGVuQ2F0ZWdvcmllcyA9IGZhbHNlO1xuXG4gIGluZGV4SXRlbVNlbGVjdGVkOiBudW1iZXIgPSAtMTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgb25DbG9zZSgpIHtcbiAgICB0aGlzLm9wZW5DYXRlZ29yaWVzID0gZmFsc2U7XG4gIH1cblxuICBjdXN0b21UQihpdGVtOiBTZWxlY3RJdGVtLCBpbmRleDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIGAke2l0ZW0uaWR9LSR7aW5kZXh9YDtcbiAgfVxuXG4gIG9uU2VsZWN0SXRlbShpZDogbnVtYmVyKSB7XG4gICAgdGhpcy51bnNlbGVjdEFsbCgpO1xuICAgIHRoaXMuc2V0SW5kZXhJdGVtU2VsZWN0ZWRCeUlkKGlkKTtcbiAgICBjb25zdCBpdGVtU2VsZWN0ZWQ6IFNlbGVjdEl0ZW0gPSB0aGlzLmdldEl0ZW1TZWxlY3RlZCgpO1xuICAgIGl0ZW1TZWxlY3RlZC5zZWxlY3RlZCA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RWYWx1ZS5lbWl0KHRoaXMuaW5kZXhJdGVtU2VsZWN0ZWQpO1xuICAgIHRoaXMub25DaGFuZ2UoaXRlbVNlbGVjdGVkKTtcbiAgfVxuXG4gIG9uQ2xpY2tDYWxsVG9BY3Rpb24oKSB7XG4gICAgdGhpcy5vbkNsb3NlKCk7XG4gICAgdGhpcy5jbGlja09uQ2FsbFRvQWN0aW9uLmVtaXQodGhpcy5jYWxsVG9BY3Rpb24udmFsdWUpO1xuICB9XG5cbiAgb25TZWFyY2hlVmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5zZWFyY2hWYWx1ZUNoYW5nZS5lbWl0KHRoaXMuc2VhcmNoVmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtU2VsZWN0ZWQoKTogU2VsZWN0SXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXNbdGhpcy5pbmRleEl0ZW1TZWxlY3RlZF07XG4gIH1cblxuICBzaG93Q2F0ZWdvcmllcygpIHtcbiAgICB0aGlzLm9wZW5DYXRlZ29yaWVzID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHsgLy8gdGhpcyB3aWxsIG1ha2UgdGhlIGV4ZWN1dGlvbiBhZnRlciB0aGUgYWJvdmUgYm9vbGVhbiBoYXMgY2hhbmdlZFxuICAgICAgdGhpcy5zZWFyY2hFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgfSwgMCk7XG4gIH1cblxuICBwcml2YXRlIHVuc2VsZWN0QWxsKCkge1xuICAgIHRoaXMuaXRlbXMuZm9yRWFjaChpdGVtID0+IGl0ZW0uc2VsZWN0ZWQgPSBmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIHNldEluZGV4SXRlbVNlbGVjdGVkQnlJZChpZDogbnVtYmVyKSB7XG4gICAgdGhpcy5pbmRleEl0ZW1TZWxlY3RlZCA9IHRoaXMuaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRJbmRleEl0ZW1TZWxlY3RlZCgpIHtcbiAgICB0aGlzLmluZGV4SXRlbVNlbGVjdGVkID0gdGhpcy5pdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLnNlbGVjdGVkKTtcbiAgfVxuXG4gIC8vIENvbnRyb2xWYWx1ZUFjY2Vzc29yIG1ldGhvZHNcblxuICBvbkNoYW5nZTogKHNlbGVjdEl0ZW06IFNlbGVjdEl0ZW0pID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge31cblxuICB3cml0ZVZhbHVlKHNlbGVjdEl0ZW06IGFueSl7XG4gICAgaWYgKCFzZWxlY3RJdGVtKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudW5zZWxlY3RBbGwoKTtcbiAgICBzZWxlY3RJdGVtLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLnNldEluZGV4SXRlbVNlbGVjdGVkQnlJZChzZWxlY3RJdGVtLmlkKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSl7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpe1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG59XG4iLCI8cCAqbmdJZj1cImxhYmVsXCIgW2lubmVySFRNTF09XCJsYWJlbFwiIGNsYXNzPVwid2FjLXNlbGVjdF9fbGFiZWxcIj48L3A+XG5cbjxkaXYgY2xhc3M9XCJ3YWMtc2VsZWN0XCIgd3pBdXRvSGlkZSAoY2xpY2tPdXRzaWRlKT1cIm9uQ2xvc2UoKVwiIFtuZ1N0eWxlXT1cInsgJ21heC13aWR0aCc6IG1heFdpZHRoIH1cIiBbekluZGV4VG9nZ2xlXT1cIm9wZW5DYXRlZ29yaWVzXCI+XG5cbiAgPGRpdiBjbGFzcz1cIndhYy1zZWxlY3RfX2N1cnJlbnRcIiBbbmdDbGFzc109XCJ7ICdzZWxlY3QtZGlzYWJsZWQnIDogZGlzYWJsZWQgfVwiIChjbGljayk9XCIhZGlzYWJsZWQgJiYgb3BlbkNhdGVnb3JpZXMgPSAhb3BlbkNhdGVnb3JpZXNcIiAqbmdJZj1cIiFzZWFyY2hcIj5cbiAgICA8c3BhbiAqbmdJZj1cImluZGV4SXRlbVNlbGVjdGVkICE9PSAtMVwiIGNsYXNzPVwiaWNvblwiIFtpbm5lckhUTUxdPVwiaXRlbXNbaW5kZXhJdGVtU2VsZWN0ZWRdLmljb25cIj48L3NwYW4+XG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJpbmRleEl0ZW1TZWxlY3RlZCAhPT0gLTEgPyBpdGVtc1tpbmRleEl0ZW1TZWxlY3RlZF0ubmFtZSA6IHBsYWNlaG9sZGVyXCI+PC9zcGFuPjxzcGFuPjxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tZG93blwiPjwvaT48L3NwYW4+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJ3YWMtc2VsZWN0X19jdXJyZW50IHdhYy1zZWxlY3RfX2N1cnJlbnQtLXdpdGhTZWFyY2hcIiBbbmdDbGFzc109XCJ7ICdzZWxlY3QtZGlzYWJsZWQnIDogZGlzYWJsZWQsICdvcGVuLXNlYXJjaCc6IG9wZW5DYXRlZ29yaWVzIH1cIiAqbmdJZj1cInNlYXJjaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ3YWMtc2VsZWN0X19jdXJyZW50X19zZWFyY2hcIiAqbmdJZj1cIm9wZW5DYXRlZ29yaWVzICYmICFkaXNhYmxlZFwiPlxuICAgICAgPGkgY2xhc3M9XCJmYXIgZmEtc2VhcmNoXCI+PC9pPlxuICAgICAgPGlucHV0ICNzZWFyY2ggdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWFyY2hlVmFsdWVDaGFuZ2UoKVwiIChrZXlwcmVzc0VudGVyKT1cIm9uQ2xpY2tDYWxsVG9BY3Rpb24oKVwiLz5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiAoY2xpY2spPVwib3BlbkNhdGVnb3JpZXMgPSAhb3BlbkNhdGVnb3JpZXM7XCIgKm5nSWY9XCJpdGVtc1tpbmRleEl0ZW1TZWxlY3RlZF0/Lmljb24gJiYgIW9wZW5DYXRlZ29yaWVzXCIgY2xhc3M9XCJpY29uXCIgW2lubmVySFRNTF09XCJpdGVtc1tpbmRleEl0ZW1TZWxlY3RlZF0uaWNvblwiPjwvc3Bhbj5cbiAgICA8c3BhbiAoY2xpY2spPVwic2hvd0NhdGVnb3JpZXMoKVwiIFtpbm5lckhUTUxdPVwiaXRlbXNbaW5kZXhJdGVtU2VsZWN0ZWRdPy5uYW1lID8gaXRlbXNbaW5kZXhJdGVtU2VsZWN0ZWRdLm5hbWUgOiBwbGFjZWhvbGRlclwiPjwvc3Bhbj5cbiAgICA8c3BhbiAoY2xpY2spPVwib3BlbkNhdGVnb3JpZXMgPSAhb3BlbkNhdGVnb3JpZXM7XCI+PGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1kb3duXCI+PC9pPjwvc3Bhbj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRcIiAqbmdJZj1cIiFkaXNhYmxlZFwiIFtuZ0NsYXNzXT1cInsgaGlkZGVuOiAhb3BlbkNhdGVnb3JpZXMsIG9wZW46IHR5cGUgPT09ICdvcGVuJyB9XCIgW25nU3R5bGVdPVwieyAnbWF4LXdpZHRoJzogbWF4V2lkdGhJdGVtcyB9XCI+XG4gICAgPHBlcmZlY3Qtc2Nyb2xsYmFyIFtjb25maWddPVwieyBzdXBwcmVzc1Njcm9sbFg6IHRydWUgfVwiICpuZ0lmPVwiaXRlbXMubGVuZ3RoXCI+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJjYWxsVG9BY3Rpb25cIiBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRfX2N0YVwiPlxuICAgICAgICA8ZGl2IChjbGljayk9XCJvbkNsaWNrQ2FsbFRvQWN0aW9uKClcIj5cbiAgICAgICAgICA8aSAqbmdJZj1cImNhbGxUb0FjdGlvbi5pY29uXCIgW2NsYXNzTGlzdF09XCJjYWxsVG9BY3Rpb24uaWNvblwiPjwvaT48c3Ryb25nICpuZ0lmPVwiY2FsbFRvQWN0aW9uLmJvbGRUZXh0XCI+e3sgY2FsbFRvQWN0aW9uLmJvbGRUZXh0IH19PC9zdHJvbmdcbiAgICAgICAgICA+PHNwYW4+e3sgY2FsbFRvQWN0aW9uPy5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zIHwgc2VsZWN0RmlsdGVyczogc2VhcmNoVmFsdWU7IGxldCBpbmRleCA9IGluZGV4O1wiXG4gICAgICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxuICAgICAgICBjbGFzcz1cIndhYy1zZWxlY3RfX2NvbnRlbnRfX2l0ZW1cIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7IHNlbGVjdGVkOiBpdGVtLnNlbGVjdGVkIH1cIiAoY2xpY2spPVwib25TZWxlY3RJdGVtKGl0ZW0uaWQpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb25cIiBbaW5uZXJIVE1MXT1cIml0ZW0uaWNvblwiICpuZ0lmPVwiaXRlbS5pY29uXCI+PC9zcGFuPnt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICA8L3BlcmZlY3Qtc2Nyb2xsYmFyPlxuXG4gICAgPGRpdiAqbmdJZj1cIiEoaXRlbXMgfCBzZWxlY3RGaWx0ZXJzOiBzZWFyY2hWYWx1ZSk/Lmxlbmd0aFwiIGNsYXNzPVwid2FjLXNlbGVjdF9fY29udGVudF9fZW1wdHlcIj5cbiAgICAgIDxzcGFuPnt7J3dhYy5kYXRhdGFibGUubm9yZXN1bHQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
Binary file
|