@simpleangularcontrols/sac-bootstrap3 16.0.0-rc.1 → 16.0.0-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -15
- package/controls/checkbox/checkbox.d.ts +7 -2
- package/controls/checkbox/checkbox.d.ts.map +1 -1
- package/controls/checkbox/radiobutton.d.ts.map +1 -1
- package/controls/checkbox/radiobuttons.d.ts +7 -2
- package/controls/checkbox/radiobuttons.d.ts.map +1 -1
- package/controls/datetime/date.d.ts +8 -2
- package/controls/datetime/date.d.ts.map +1 -1
- package/controls/datetime/dateselector.d.ts.map +1 -1
- package/controls/datetime/datetime.d.ts +8 -2
- package/controls/datetime/datetime.d.ts.map +1 -1
- package/controls/datetime/time.d.ts +8 -2
- package/controls/datetime/time.d.ts.map +1 -1
- package/controls/form/form.d.ts +4 -12
- package/controls/form/form.d.ts.map +1 -1
- package/controls/form/inheritform.directive.d.ts +11 -11
- package/controls/form/inheritform.directive.d.ts.map +1 -1
- package/controls/input/input.d.ts +7 -2
- package/controls/input/input.d.ts.map +1 -1
- package/controls/input/inputarea.d.ts +7 -2
- package/controls/input/inputarea.d.ts.map +1 -1
- package/controls/input/inputcurrency.d.ts +7 -2
- package/controls/input/inputcurrency.d.ts.map +1 -1
- package/controls/input/inputdecimal.d.ts +7 -2
- package/controls/input/inputdecimal.d.ts.map +1 -1
- package/controls/input/inputemail.d.ts +7 -2
- package/controls/input/inputemail.d.ts.map +1 -1
- package/controls/input/inputinteger.d.ts +7 -2
- package/controls/input/inputinteger.d.ts.map +1 -1
- package/controls/input/inputpassword.d.ts +7 -2
- package/controls/input/inputpassword.d.ts.map +1 -1
- package/controls/input/inputsearch.d.ts +7 -2
- package/controls/input/inputsearch.d.ts.map +1 -1
- package/controls/layout/formlayout.directive.d.ts +7 -0
- package/controls/layout/formlayout.directive.d.ts.map +1 -0
- package/controls/layout/layout.module.d.ts +11 -0
- package/controls/layout/layout.module.d.ts.map +1 -0
- package/controls/layout/tocontrolwidthcss.pipe.d.ts +20 -0
- package/controls/layout/tocontrolwidthcss.pipe.d.ts.map +1 -0
- package/controls/layout/tolabelwidthcss.pipe.d.ts +14 -0
- package/controls/layout/tolabelwidthcss.pipe.d.ts.map +1 -0
- package/controls/list/dropdown.d.ts +16 -3
- package/controls/list/dropdown.d.ts.map +1 -1
- package/controls/list/listbox.d.ts +7 -2
- package/controls/list/listbox.d.ts.map +1 -1
- package/controls/static/formcontainer.d.ts +5 -5
- package/controls/static/formcontainer.d.ts.map +1 -1
- package/controls/static/staticlabel.d.ts +7 -2
- package/controls/static/staticlabel.d.ts.map +1 -1
- package/controls/tinymce/tinymce.d.ts +6 -6
- package/controls/tinymce/tinymce.d.ts.map +1 -1
- package/controls/treeview/ngtreeitemaction.d.ts.map +1 -1
- package/controls/treeview/treeview.d.ts.map +1 -1
- package/controls/upload/upload.d.ts +10 -4
- package/controls/upload/upload.d.ts.map +1 -1
- package/controls/upload/uploadmultiple.d.ts +9 -2
- package/controls/upload/uploadmultiple.d.ts.map +1 -1
- package/controls/validation/validationsummary.d.ts +6 -1
- package/controls/validation/validationsummary.d.ts.map +1 -1
- package/esm2022/controls/checkbox/checkbox.mjs +39 -15
- package/esm2022/controls/checkbox/radiobutton.mjs +3 -2
- package/esm2022/controls/checkbox/radiobuttons.mjs +39 -15
- package/esm2022/controls/datetime/date.mjs +51 -18
- package/esm2022/controls/datetime/dateselector.mjs +3 -8
- package/esm2022/controls/datetime/datetime.mjs +49 -16
- package/esm2022/controls/datetime/time.mjs +49 -16
- package/esm2022/controls/form/form.mjs +7 -19
- package/esm2022/controls/form/inheritform.directive.mjs +31 -28
- package/esm2022/controls/input/input.mjs +35 -13
- package/esm2022/controls/input/inputarea.mjs +45 -15
- package/esm2022/controls/input/inputcurrency.mjs +45 -15
- package/esm2022/controls/input/inputdecimal.mjs +45 -15
- package/esm2022/controls/input/inputemail.mjs +45 -15
- package/esm2022/controls/input/inputinteger.mjs +45 -15
- package/esm2022/controls/input/inputpassword.mjs +45 -15
- package/esm2022/controls/input/inputsearch.mjs +39 -15
- package/esm2022/controls/layout/formlayout.directive.mjs +16 -0
- package/esm2022/controls/layout/layout.module.mjs +34 -0
- package/esm2022/controls/layout/tocontrolwidthcss.pipe.mjs +53 -0
- package/esm2022/controls/layout/tolabelwidthcss.pipe.mjs +37 -0
- package/esm2022/controls/list/dropdown.mjs +31 -14
- package/esm2022/controls/list/listbox.mjs +50 -15
- package/esm2022/controls/static/formcontainer.mjs +43 -18
- package/esm2022/controls/static/staticlabel.mjs +39 -15
- package/esm2022/controls/tinymce/tinymce.mjs +19 -12
- package/esm2022/controls/treeview/ngtreeitemaction.mjs +2 -1
- package/esm2022/controls/treeview/treeview.mjs +3 -9
- package/esm2022/controls/upload/upload.mjs +47 -15
- package/esm2022/controls/upload/uploadmultiple.mjs +21 -9
- package/esm2022/controls/validation/validationsummary.mjs +15 -11
- package/esm2022/public_api.mjs +34 -30
- package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs +1563 -965
- package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
- package/package.json +2 -2
- package/public_api.d.ts +33 -29
- package/public_api.d.ts.map +1 -1
- package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.3.tgz +0 -0
- package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.1.tgz +0 -0
|
@@ -5,19 +5,24 @@ import { SacTinyMceCommon } from '@simpleangularcontrols/sac-common';
|
|
|
5
5
|
import { EditorComponent } from '@tinymce/tinymce-angular';
|
|
6
6
|
import { SacButtonComponent } from '../buttons/button';
|
|
7
7
|
import { SacDialogComponent } from '../dialog/dialog';
|
|
8
|
+
import { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';
|
|
9
|
+
import { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';
|
|
8
10
|
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../
|
|
11
|
+
import * as i1 from "../layout/formlayout.directive";
|
|
10
12
|
import * as i2 from "@angular/forms";
|
|
11
13
|
class SacTinyMceComponent extends SacTinyMceCommon {
|
|
14
|
+
// #region Constructors
|
|
12
15
|
/**
|
|
13
|
-
*
|
|
14
|
-
* @param
|
|
15
|
-
* @param injector
|
|
16
|
-
* @param ngZone ngZone
|
|
16
|
+
* Constructor
|
|
17
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
18
|
+
* @param injector Injector for injecting services
|
|
19
|
+
* @param ngZone ngZone to manage external javascripts
|
|
17
20
|
*/
|
|
18
|
-
constructor(
|
|
19
|
-
super(
|
|
21
|
+
constructor(formLayout, injector, ngZone) {
|
|
22
|
+
super(formLayout, injector, ngZone);
|
|
20
23
|
}
|
|
24
|
+
// #endregion Constructors
|
|
25
|
+
// #region Public Methods
|
|
21
26
|
/**
|
|
22
27
|
* overwrite tinymce defaults
|
|
23
28
|
* @returns boostrap3 does not support file browser
|
|
@@ -25,7 +30,7 @@ class SacTinyMceComponent extends SacTinyMceCommon {
|
|
|
25
30
|
overwriteDefaultSettings() {
|
|
26
31
|
return { file_picker_types: undefined, file_picker_callback: undefined };
|
|
27
32
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: i1.
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29
34
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacTinyMceComponent, isStandalone: true, selector: "sac-tinymce", providers: [
|
|
30
35
|
{
|
|
31
36
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -37,7 +42,7 @@ class SacTinyMceComponent extends SacTinyMceCommon {
|
|
|
37
42
|
useExisting: forwardRef(() => SacTinyMceComponent),
|
|
38
43
|
multi: true,
|
|
39
44
|
},
|
|
40
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ?
|
|
45
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { kind: "ngmodule", type: FormsModule }, { 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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SacDialogComponent, selector: "sac-dialog", inputs: ["zindex"] }, { kind: "component", type: SacButtonComponent, selector: "sac-button" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
|
|
41
46
|
}
|
|
42
47
|
export { SacTinyMceComponent };
|
|
43
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTinyMceComponent, decorators: [{
|
|
@@ -61,10 +66,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
61
66
|
SacDialogComponent,
|
|
62
67
|
SacButtonComponent,
|
|
63
68
|
AsyncPipe,
|
|
64
|
-
|
|
65
|
-
|
|
69
|
+
SacToLabelWidthCssPipe,
|
|
70
|
+
SacToControlWidthCssPipe,
|
|
71
|
+
], template: "<div class=\"form-row form-group\">\r\n <div\r\n class=\"col\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n >\r\n <label for=\"{{name}}\" class=\"form-control-label\">{{label}}</label>\r\n </div>\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n [class.has-error]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n <editor\r\n [id]=\"name + '_tinymce'\"\r\n [init]=\"_config\"\r\n [initialValue]=\"value\"\r\n ngModel\r\n [ngModelOptions]=\"{standalone: true}\"\r\n (ngModelChange)=\"setValue($event)\"\r\n (onSaveContent)=\"save($event.event.content)\"\r\n [disabled]=\"disabled\"\r\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n ></editor>\r\n <div\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n class=\"help-block\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<sac-dialog\r\n *ngIf=\"selectdialogvisible\"\r\n [allowesc]=\"false\"\r\n [backdrop]=\"true\"\r\n [(isvisible)]=\"selectdialogvisible\"\r\n title=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_DIALOGTITLE') | async }}\"\r\n size=\"large\"\r\n height=\"500px\"\r\n>\r\n <ng-container dialogbody> </ng-container>\r\n <ng-container dialogfooter>\r\n <sac-button\r\n role=\"primary\"\r\n [name]=\"name + '_modalOk'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_OK') | async }}\"\r\n (clicked)=\"setSelectDialogResult()\"\r\n ></sac-button>\r\n <sac-button\r\n [name]=\"name + '_modalClose'\"\r\n text=\"{{ lngResourceService.GetString('TINYMCE_FILESELECT_CANCEL') | async }}\"\r\n (clicked)=\"closeSelectDialog()\"\r\n ></sac-button>\r\n </ng-container>\r\n</sac-dialog>\r\n" }]
|
|
72
|
+
}], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
|
|
66
73
|
type: Host
|
|
67
74
|
}, {
|
|
68
75
|
type: Optional
|
|
69
76
|
}] }, { type: i0.Injector }, { type: i0.NgZone }]; } });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlueW1jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy90aW55bWNlL3RpbnltY2UudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdGlueW1jZS90aW55bWNlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0QsT0FBTyxFQUNMLFNBQVMsRUFDVCxJQUFJLEVBR0osUUFBUSxFQUNSLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQUV4RSxNQTZCYSxtQkFBb0IsU0FBUSxnQkFBZ0I7SUFDdkQsdUJBQXVCO0lBRXZCOzs7OztPQUtHO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0IsRUFDbEIsTUFBYztRQUVkLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCwwQkFBMEI7SUFFMUIseUJBQXlCO0lBRXpCOzs7T0FHRztJQUNJLHdCQUF3QjtRQUM3QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxDQUFDO0lBQzNFLENBQUM7K0dBM0JVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDBEQXpCbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxXQUFXLEVBQUUsbUJBQW1CO2FBQ2pDO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7Z0JBQ2xELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixpRENqQ0gsMDZEQXdEQSw0Q0RwQkksT0FBTyxvRkFDUCxlQUFlLDJPQUNmLFdBQVcsK1ZBQ1gsSUFBSSw2RkFDSixrQkFBa0IsMkVBQ2xCLGtCQUFrQixrREFDbEIsU0FBUyx5Q0FDVCxzQkFBc0IsbURBQ3RCLHdCQUF3Qjs7U0FHZixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkE3Qi9CLFNBQVM7K0JBQ0UsYUFBYSxhQUdaO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcscUJBQXFCO3lCQUNqQzt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLGNBQ1csSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsZUFBZTt3QkFDZixXQUFXO3dCQUNYLElBQUk7d0JBQ0osa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLFNBQVM7d0JBQ1Qsc0JBQXNCO3dCQUN0Qix3QkFBd0I7cUJBQ3pCOzswQkFZRSxJQUFJOzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NsYXNzLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdCxcclxuICBJbmplY3RvcixcclxuICBOZ1pvbmUsXHJcbiAgT3B0aW9uYWwsXHJcbiAgZm9yd2FyZFJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNUaW55TWNlQ29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcclxuaW1wb3J0IHsgRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnQHRpbnltY2UvdGlueW1jZS1hbmd1bGFyJztcclxuaW1wb3J0IHsgU2FjQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9ucy9idXR0b24nO1xyXG5pbXBvcnQgeyBTYWNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9kaWFsb2cvZGlhbG9nJztcclxuaW1wb3J0IHsgU2FjRm9ybUxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uL2xheW91dC9mb3JtbGF5b3V0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNhY1RvQ29udHJvbFdpZHRoQ3NzUGlwZSB9IGZyb20gJy4uL2xheW91dC90b2NvbnRyb2x3aWR0aGNzcy5waXBlJztcclxuaW1wb3J0IHsgU2FjVG9MYWJlbFdpZHRoQ3NzUGlwZSB9IGZyb20gJy4uL2xheW91dC90b2xhYmVsd2lkdGhjc3MucGlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NhYy10aW55bWNlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGlueW1jZS5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNUaW55TWNlQ29tcG9uZW50LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjVGlueU1jZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIEVkaXRvckNvbXBvbmVudCxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTmdJZixcclxuICAgIFNhY0RpYWxvZ0NvbXBvbmVudCxcclxuICAgIFNhY0J1dHRvbkNvbXBvbmVudCxcclxuICAgIEFzeW5jUGlwZSxcclxuICAgIFNhY1RvTGFiZWxXaWR0aENzc1BpcGUsXHJcbiAgICBTYWNUb0NvbnRyb2xXaWR0aENzc1BpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY1RpbnlNY2VDb21wb25lbnQgZXh0ZW5kcyBTYWNUaW55TWNlQ29tbW9uIHtcclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBwYXJhbSBmb3JtTGF5b3V0IFNhY0Zvcm1MYXlvdXQgdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgZm9yIGluamVjdGluZyBzZXJ2aWNlc1xyXG4gICAqIEBwYXJhbSBuZ1pvbmUgbmdab25lIHRvIG1hbmFnZSBleHRlcm5hbCBqYXZhc2NyaXB0c1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBmb3JtTGF5b3V0OiBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgbmdab25lOiBOZ1pvbmVcclxuICApIHtcclxuICAgIHN1cGVyKGZvcm1MYXlvdXQsIGluamVjdG9yLCBuZ1pvbmUpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBvdmVyd3JpdGUgdGlueW1jZSBkZWZhdWx0c1xyXG4gICAqIEByZXR1cm5zIGJvb3N0cmFwMyBkb2VzIG5vdCBzdXBwb3J0IGZpbGUgYnJvd3NlclxyXG4gICAqL1xyXG4gIHB1YmxpYyBvdmVyd3JpdGVEZWZhdWx0U2V0dGluZ3MoKSB7XHJcbiAgICByZXR1cm4geyBmaWxlX3BpY2tlcl90eXBlczogdW5kZWZpbmVkLCBmaWxlX3BpY2tlcl9jYWxsYmFjazogdW5kZWZpbmVkIH07XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZvcm0tcm93IGZvcm0tZ3JvdXBcIj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImNvbFwiXHJcbiAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICh0aGlzLmxhYmVsU2l6ZXMgfCB0b0xhYmVsV2lkdGhDc3MpIDogJ3NyLW9ubHknIF1cIlxyXG4gID5cclxuICAgIDxsYWJlbCBmb3I9XCJ7e25hbWV9fVwiIGNsYXNzPVwiZm9ybS1jb250cm9sLWxhYmVsXCI+e3tsYWJlbH19PC9sYWJlbD5cclxuICA8L2Rpdj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImNvbC14cy0xMlwiXHJcbiAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICAodGhpcy5sYWJlbFNpemVzIHwgdG9Db250cm9sV2lkdGhDc3MpIDogJyddXCJcclxuICAgIFtjbGFzcy5oYXMtZXJyb3JdPVwiaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gID5cclxuICAgIDxlZGl0b3JcclxuICAgICAgW2lkXT1cIm5hbWUgKyAnX3RpbnltY2UnXCJcclxuICAgICAgW2luaXRdPVwiX2NvbmZpZ1wiXHJcbiAgICAgIFtpbml0aWFsVmFsdWVdPVwidmFsdWVcIlxyXG4gICAgICBuZ01vZGVsXHJcbiAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJzZXRWYWx1ZSgkZXZlbnQpXCJcclxuICAgICAgKG9uU2F2ZUNvbnRlbnQpPVwic2F2ZSgkZXZlbnQuZXZlbnQuY29udGVudClcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJpc2lubGluZWVycm9yZW5hYmxlZCAmJiBpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiXHJcbiAgICA+PC9lZGl0b3I+XHJcbiAgICA8ZGl2XHJcbiAgICAgICpuZ0lmPVwiaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgICBjbGFzcz1cImhlbHAtYmxvY2tcIlxyXG4gICAgPlxyXG4gICAgICB7eyBHZXRFcnJvck1lc3NhZ2UoKSB8IGFzeW5jIH19XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48c2FjLWRpYWxvZ1xyXG4gICpuZ0lmPVwic2VsZWN0ZGlhbG9ndmlzaWJsZVwiXHJcbiAgW2FsbG93ZXNjXT1cImZhbHNlXCJcclxuICBbYmFja2Ryb3BdPVwidHJ1ZVwiXHJcbiAgWyhpc3Zpc2libGUpXT1cInNlbGVjdGRpYWxvZ3Zpc2libGVcIlxyXG4gIHRpdGxlPVwie3sgbG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZygnVElOWU1DRV9GSUxFU0VMRUNUX0RJQUxPR1RJVExFJykgfCBhc3luYyB9fVwiXHJcbiAgc2l6ZT1cImxhcmdlXCJcclxuICBoZWlnaHQ9XCI1MDBweFwiXHJcbj5cclxuICA8bmctY29udGFpbmVyIGRpYWxvZ2JvZHk+IDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgZGlhbG9nZm9vdGVyPlxyXG4gICAgPHNhYy1idXR0b25cclxuICAgICAgcm9sZT1cInByaW1hcnlcIlxyXG4gICAgICBbbmFtZV09XCJuYW1lICsgJ19tb2RhbE9rJ1wiXHJcbiAgICAgIHRleHQ9XCJ7eyBsbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKCdUSU5ZTUNFX0ZJTEVTRUxFQ1RfT0snKSB8IGFzeW5jIH19XCJcclxuICAgICAgKGNsaWNrZWQpPVwic2V0U2VsZWN0RGlhbG9nUmVzdWx0KClcIlxyXG4gICAgPjwvc2FjLWJ1dHRvbj5cclxuICAgIDxzYWMtYnV0dG9uXHJcbiAgICAgIFtuYW1lXT1cIm5hbWUgKyAnX21vZGFsQ2xvc2UnXCJcclxuICAgICAgdGV4dD1cInt7IGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcoJ1RJTllNQ0VfRklMRVNFTEVDVF9DQU5DRUwnKSB8IGFzeW5jIH19XCJcclxuICAgICAgKGNsaWNrZWQpPVwiY2xvc2VTZWxlY3REaWFsb2coKVwiXHJcbiAgICA+PC9zYWMtYnV0dG9uPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L3NhYy1kaWFsb2c+XHJcbiJdfQ==
|
|
@@ -2,6 +2,7 @@ import { Component } from '@angular/core';
|
|
|
2
2
|
import { SacTreeItemActionCommon } from '@simpleangularcontrols/sac-common';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
class SacTreeItemActionComponent extends SacTreeItemActionCommon {
|
|
5
|
+
// #region Constructors
|
|
5
6
|
constructor(el) {
|
|
6
7
|
super(el);
|
|
7
8
|
}
|
|
@@ -13,4 +14,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
13
14
|
type: Component,
|
|
14
15
|
args: [{ selector: 'sac-treeitemaction', standalone: true, template: "<i class=\"{{transformClass(iconstyle)}}\" (mouseover)=\"item.hover=true\" (mouseout)=\"item.hover=false\" (click)=\"iconaction()\" ></i>" }]
|
|
15
16
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0cmVlaXRlbWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy90cmVldmlldy9uZ3RyZWVpdGVtYWN0aW9uLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3RyZWV2aWV3L25ndHJlZWl0ZW1hY3Rpb24uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUU1RSxNQUthLDBCQUEyQixTQUFRLHVCQUF1QjtJQUNyRSx1QkFBdUI7SUFFdkIsWUFBWSxFQUFjO1FBQ3hCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7K0dBTFUsMEJBQTBCO21HQUExQiwwQkFBMEIscUdDUnZDLDJJQUFpSTs7U0RRcEgsMEJBQTBCOzRGQUExQiwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBRWxCLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2FjVHJlZUl0ZW1BY3Rpb25Db21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtdHJlZWl0ZW1hY3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3RyZWVpdGVtYWN0aW9uLmh0bWwnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNUcmVlSXRlbUFjdGlvbkNvbXBvbmVudCBleHRlbmRzIFNhY1RyZWVJdGVtQWN0aW9uQ29tbW9uIHtcclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xyXG4gICAgc3VwZXIoZWwpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iLCI8aSBjbGFzcz1cInt7dHJhbnNmb3JtQ2xhc3MoaWNvbnN0eWxlKX19XCIgKG1vdXNlb3Zlcik9XCJpdGVtLmhvdmVyPXRydWVcIiAobW91c2VvdXQpPVwiaXRlbS5ob3Zlcj1mYWxzZVwiIChjbGljayk9XCJpY29uYWN0aW9uKClcIiA+PC9pPiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { NgClass, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
1
2
|
import { Component } from '@angular/core';
|
|
2
3
|
import { SacTreeViewCommon } from '@simpleangularcontrols/sac-common';
|
|
3
4
|
import { SacTreeViewChildComponent } from './treeviewchild';
|
|
4
|
-
import { NgIf, NgFor, NgClass, NgTemplateOutlet } from '@angular/common';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
class SacTreeViewComponent extends SacTreeViewCommon {
|
|
7
7
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -10,12 +10,6 @@ class SacTreeViewComponent extends SacTreeViewCommon {
|
|
|
10
10
|
export { SacTreeViewComponent };
|
|
11
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacTreeViewComponent, decorators: [{
|
|
12
12
|
type: Component,
|
|
13
|
-
args: [{ selector: 'sac-treeview', standalone: true, imports: [
|
|
14
|
-
NgIf,
|
|
15
|
-
NgFor,
|
|
16
|
-
NgClass,
|
|
17
|
-
NgTemplateOutlet,
|
|
18
|
-
SacTreeViewChildComponent,
|
|
19
|
-
], template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n \r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
13
|
+
args: [{ selector: 'sac-treeview', standalone: true, imports: [NgIf, NgFor, NgClass, NgTemplateOutlet, SacTreeViewChildComponent], template: "<div class=\"structure panel panel-default\" icon=\"Structure\">\r\n <div class=\"panel-heading\">\r\n <p class=\"panel-title\"><span>{{ name }}</span></p>\r\n </div>\r\n <div class=\"panel-body\">\r\n <div class=\"right\">\r\n <div\r\n class=\"form-submit form-inline\"\r\n style=\"text-align: right; height: 24px\"\r\n >\r\n <a class=\"btn-inline\"\r\n ><i class=\"icon icon-base-expand\" (click)=\"collapseAllNode(false)\"></i\r\n ></a>\r\n <a class=\"btn-inline\"\r\n ><i\r\n class=\"icon icon-base-collapse\"\r\n (click)=\"collapseAllNode(true)\"\r\n ></i\r\n ></a>\r\n </div>\r\n </div>\r\n <div\r\n [id]=\"name\"\r\n class=\"structure-tree single-root jstree jstree-1 jstree-default\"\r\n >\r\n <ul\r\n class=\"jstree-container-ul jstree-children jstree-no-dots jstree-striped jstree-wholerow-ul\"\r\n *ngIf=\"nodes && nodes.length\"\r\n >\r\n <li\r\n *ngFor=\"let node of nodes; let last = last\"\r\n class=\"jstree-node\"\r\n [ngClass]=\"{\r\n 'jstree-open': !node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-closed': node[collapseAttr] && node[childrenAttr] && node[childrenAttr].length,\r\n 'jstree-leaf': !node[childrenAttr].length,\r\n 'jstree-last': last\r\n }\"\r\n [id]=\"node[idAttr]\"\r\n >\r\n <div\r\n unselectable=\"on\"\r\n role=\"presentation\"\r\n class=\"jstree-wholerow\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n [ngClass]=\"{'jstree-wholerow-clicked': node === selectedNode, 'jstree-wholerow-hovered': node.hover}\"\r\n >\r\n \r\n </div>\r\n\r\n <i\r\n class=\"jstree-icon jstree-ocl\"\r\n role=\"presentation\"\r\n (click)=\"onCollapseClick(node)\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n ></i>\r\n\r\n <a\r\n class=\"jstree-anchor\"\r\n (click)=\"onClick(node)\"\r\n [ngClass]=\"{'jstree-clicked': node === selectedNode, 'jstreehovered': node.hover}\"\r\n (mouseover)=\"node.hover=true\"\r\n (mouseout)=\"node.hover=false\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"treefileicon; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <span>{{node[textAttr]}}</span>\r\n </a>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"template; context { item: node }\"\r\n ;\r\n content\r\n ></ng-container>\r\n\r\n <sac-treeviewchild\r\n *ngIf=\"node[childrenAttr] && node[childrenAttr].length\"\r\n [fileicontemplate]=\"fileicontemplate\"\r\n [template]=\"template\"\r\n [collapseall]=\"collapseall\"\r\n [ngClass]=\"(node[collapseAttr]===true)?'collapse':'show'\"\r\n [data]=\"node[childrenAttr]\"\r\n [idAttr]=\"idAttr\"\r\n [parentAttr]=\"parentAttr\"\r\n [textAttr]=\"textAttr\"\r\n [prepareData]=\"false\"\r\n (onselecteditem)=\"sendMsgToParent($event)\"\r\n [(selectedid)]=\"selectedid\"\r\n >\r\n </sac-treeviewchild>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
20
14
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZXZpZXcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdHJlZXZpZXcvdHJlZXZpZXcudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdHJlZXZpZXcvdHJlZXZpZXcuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUU1RCxNQU1hLG9CQUFxQixTQUFRLGlCQUFpQjsrR0FBOUMsb0JBQW9CO21HQUFwQixvQkFBb0IsK0ZDWGpDLHdpSEFxR0EsNENENUZZLElBQUksNkZBQUUsS0FBSyxtSEFBRSxPQUFPLG9GQUFFLGdCQUFnQixvSkFBRSx5QkFBeUI7O1NBRWhFLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGNBQWMsY0FFWixJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY1RyZWVWaWV3Q29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcclxuaW1wb3J0IHsgU2FjVHJlZVZpZXdDaGlsZENvbXBvbmVudCB9IGZyb20gJy4vdHJlZXZpZXdjaGlsZCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NhYy10cmVldmlldycsXHJcbiAgdGVtcGxhdGVVcmw6ICd0cmVldmlldy5odG1sJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0ZvciwgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCwgU2FjVHJlZVZpZXdDaGlsZENvbXBvbmVudF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNUcmVlVmlld0NvbXBvbmVudCBleHRlbmRzIFNhY1RyZWVWaWV3Q29tbW9uIHt9XHJcbiIsIjxkaXYgY2xhc3M9XCJzdHJ1Y3R1cmUgcGFuZWwgcGFuZWwtZGVmYXVsdFwiIGljb249XCJTdHJ1Y3R1cmVcIj5cclxuICA8ZGl2IGNsYXNzPVwicGFuZWwtaGVhZGluZ1wiPlxyXG4gICAgPHAgY2xhc3M9XCJwYW5lbC10aXRsZVwiPjxzcGFuPnt7IG5hbWUgfX08L3NwYW4+PC9wPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJwYW5lbC1ib2R5XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwiZm9ybS1zdWJtaXQgZm9ybS1pbmxpbmVcIlxyXG4gICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHQ7IGhlaWdodDogMjRweFwiXHJcbiAgICAgID5cclxuICAgICAgICA8YSBjbGFzcz1cImJ0bi1pbmxpbmVcIlxyXG4gICAgICAgICAgPjxpIGNsYXNzPVwiaWNvbiBpY29uLWJhc2UtZXhwYW5kXCIgKGNsaWNrKT1cImNvbGxhcHNlQWxsTm9kZShmYWxzZSlcIj48L2lcclxuICAgICAgICA+PC9hPlxyXG4gICAgICAgIDxhIGNsYXNzPVwiYnRuLWlubGluZVwiXHJcbiAgICAgICAgICA+PGlcclxuICAgICAgICAgICAgY2xhc3M9XCJpY29uIGljb24tYmFzZS1jb2xsYXBzZVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjb2xsYXBzZUFsbE5vZGUodHJ1ZSlcIlxyXG4gICAgICAgICAgPjwvaVxyXG4gICAgICAgID48L2E+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2XHJcbiAgICAgIFtpZF09XCJuYW1lXCJcclxuICAgICAgY2xhc3M9XCJzdHJ1Y3R1cmUtdHJlZSBzaW5nbGUtcm9vdCBqc3RyZWUganN0cmVlLTEganN0cmVlLWRlZmF1bHRcIlxyXG4gICAgPlxyXG4gICAgICA8dWxcclxuICAgICAgICBjbGFzcz1cImpzdHJlZS1jb250YWluZXItdWwganN0cmVlLWNoaWxkcmVuIGpzdHJlZS1uby1kb3RzIGpzdHJlZS1zdHJpcGVkIGpzdHJlZS13aG9sZXJvdy11bFwiXHJcbiAgICAgICAgKm5nSWY9XCJub2RlcyAmJiBub2Rlcy5sZW5ndGhcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGxpXHJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgbm9kZSBvZiBub2RlczsgbGV0IGxhc3QgPSBsYXN0XCJcclxuICAgICAgICAgIGNsYXNzPVwianN0cmVlLW5vZGVcIlxyXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAnanN0cmVlLW9wZW4nOiAhbm9kZVtjb2xsYXBzZUF0dHJdICYmIG5vZGVbY2hpbGRyZW5BdHRyXSAmJiBub2RlW2NoaWxkcmVuQXR0cl0ubGVuZ3RoLFxyXG4gICAgICAnanN0cmVlLWNsb3NlZCc6IG5vZGVbY29sbGFwc2VBdHRyXSAgJiYgbm9kZVtjaGlsZHJlbkF0dHJdICYmIG5vZGVbY2hpbGRyZW5BdHRyXS5sZW5ndGgsXHJcbiAgICAgICdqc3RyZWUtbGVhZic6ICFub2RlW2NoaWxkcmVuQXR0cl0ubGVuZ3RoLFxyXG4gICAgICAnanN0cmVlLWxhc3QnOiBsYXN0XHJcbiAgICB9XCJcclxuICAgICAgICAgIFtpZF09XCJub2RlW2lkQXR0cl1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgdW5zZWxlY3RhYmxlPVwib25cIlxyXG4gICAgICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJqc3RyZWUtd2hvbGVyb3dcIlxyXG4gICAgICAgICAgICAobW91c2VvdmVyKT1cIm5vZGUuaG92ZXI9dHJ1ZVwiXHJcbiAgICAgICAgICAgIChtb3VzZW91dCk9XCJub2RlLmhvdmVyPWZhbHNlXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydqc3RyZWUtd2hvbGVyb3ctY2xpY2tlZCc6IG5vZGUgPT09IHNlbGVjdGVkTm9kZSwgJ2pzdHJlZS13aG9sZXJvdy1ob3ZlcmVkJzogbm9kZS5ob3Zlcn1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICAmbmJzcDtcclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxpXHJcbiAgICAgICAgICAgIGNsYXNzPVwianN0cmVlLWljb24ganN0cmVlLW9jbFwiXHJcbiAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25Db2xsYXBzZUNsaWNrKG5vZGUpXCJcclxuICAgICAgICAgICAgKG1vdXNlb3Zlcik9XCJub2RlLmhvdmVyPXRydWVcIlxyXG4gICAgICAgICAgICAobW91c2VvdXQpPVwibm9kZS5ob3Zlcj1mYWxzZVwiXHJcbiAgICAgICAgICA+PC9pPlxyXG5cclxuICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgIGNsYXNzPVwianN0cmVlLWFuY2hvclwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKG5vZGUpXCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydqc3RyZWUtY2xpY2tlZCc6IG5vZGUgPT09IHNlbGVjdGVkTm9kZSwgJ2pzdHJlZWhvdmVyZWQnOiBub2RlLmhvdmVyfVwiXHJcbiAgICAgICAgICAgIChtb3VzZW92ZXIpPVwibm9kZS5ob3Zlcj10cnVlXCJcclxuICAgICAgICAgICAgKG1vdXNlb3V0KT1cIm5vZGUuaG92ZXI9ZmFsc2VcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0cmVlZmlsZWljb247IGNvbnRleHQgeyBpdGVtOiBub2RlIH1cIlxyXG4gICAgICAgICAgICAgIDtcclxuICAgICAgICAgICAgICBjb250ZW50XHJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxzcGFuPnt7bm9kZVt0ZXh0QXR0cl19fTwvc3Bhbj5cclxuICAgICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGU7IGNvbnRleHQgeyBpdGVtOiBub2RlIH1cIlxyXG4gICAgICAgICAgICA7XHJcbiAgICAgICAgICAgIGNvbnRlbnRcclxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICA8c2FjLXRyZWV2aWV3Y2hpbGRcclxuICAgICAgICAgICAgKm5nSWY9XCJub2RlW2NoaWxkcmVuQXR0cl0gJiYgbm9kZVtjaGlsZHJlbkF0dHJdLmxlbmd0aFwiXHJcbiAgICAgICAgICAgIFtmaWxlaWNvbnRlbXBsYXRlXT1cImZpbGVpY29udGVtcGxhdGVcIlxyXG4gICAgICAgICAgICBbdGVtcGxhdGVdPVwidGVtcGxhdGVcIlxyXG4gICAgICAgICAgICBbY29sbGFwc2VhbGxdPVwiY29sbGFwc2VhbGxcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCIobm9kZVtjb2xsYXBzZUF0dHJdPT09dHJ1ZSk/J2NvbGxhcHNlJzonc2hvdydcIlxyXG4gICAgICAgICAgICBbZGF0YV09XCJub2RlW2NoaWxkcmVuQXR0cl1cIlxyXG4gICAgICAgICAgICBbaWRBdHRyXT1cImlkQXR0clwiXHJcbiAgICAgICAgICAgIFtwYXJlbnRBdHRyXT1cInBhcmVudEF0dHJcIlxyXG4gICAgICAgICAgICBbdGV4dEF0dHJdPVwidGV4dEF0dHJcIlxyXG4gICAgICAgICAgICBbcHJlcGFyZURhdGFdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAob25zZWxlY3RlZGl0ZW0pPVwic2VuZE1zZ1RvUGFyZW50KCRldmVudClcIlxyXG4gICAgICAgICAgICBbKHNlbGVjdGVkaWQpXT1cInNlbGVjdGVkaWRcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPC9zYWMtdHJlZXZpZXdjaGlsZD5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICA8L3VsPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,30 +1,62 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AsyncPipe, NgClass, NgIf } from '@angular/common';
|
|
2
|
+
import { Component, Host, Optional, forwardRef, } from '@angular/core';
|
|
3
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
2
4
|
import { SacUploadSingleCommon } from '@simpleangularcontrols/sac-common';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
+
import { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';
|
|
6
|
+
import { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';
|
|
5
7
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../
|
|
8
|
+
import * as i1 from "../layout/formlayout.directive";
|
|
7
9
|
// https://github.com/kukhariev/ngx-uploadx/
|
|
8
10
|
class SacUploadComponent extends SacUploadSingleCommon {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
// #region Constructors
|
|
12
|
+
/**
|
|
13
|
+
* Constructor
|
|
14
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
15
|
+
* @param injector Injector for injecting services
|
|
16
|
+
* @param renderer Angular rendering engine
|
|
17
|
+
* @param ngZone ngZone to manage external javascripts
|
|
18
|
+
*/
|
|
19
|
+
constructor(formLayout, injector, renderer, ngZone) {
|
|
20
|
+
super(formLayout, injector, renderer, ngZone);
|
|
11
21
|
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, deps: [{ token: i1.
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
23
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacUploadComponent, isStandalone: true, selector: "sac-upload", providers: [
|
|
14
|
-
{
|
|
15
|
-
|
|
16
|
-
|
|
24
|
+
{
|
|
25
|
+
provide: NG_VALUE_ACCESSOR,
|
|
26
|
+
multi: true,
|
|
27
|
+
useExisting: SacUploadComponent,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
provide: NG_VALIDATORS,
|
|
31
|
+
multi: true,
|
|
32
|
+
useExisting: forwardRef(() => SacUploadComponent),
|
|
33
|
+
},
|
|
34
|
+
], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
|
|
17
35
|
}
|
|
18
36
|
export { SacUploadComponent };
|
|
19
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacUploadComponent, decorators: [{
|
|
20
38
|
type: Component,
|
|
21
39
|
args: [{ selector: 'sac-upload', providers: [
|
|
22
|
-
{
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
40
|
+
{
|
|
41
|
+
provide: NG_VALUE_ACCESSOR,
|
|
42
|
+
multi: true,
|
|
43
|
+
useExisting: SacUploadComponent,
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
provide: NG_VALIDATORS,
|
|
47
|
+
multi: true,
|
|
48
|
+
useExisting: forwardRef(() => SacUploadComponent),
|
|
49
|
+
},
|
|
50
|
+
], standalone: true, imports: [
|
|
51
|
+
NgClass,
|
|
52
|
+
NgIf,
|
|
53
|
+
AsyncPipe,
|
|
54
|
+
SacToLabelWidthCssPipe,
|
|
55
|
+
SacToControlWidthCssPipe,
|
|
56
|
+
], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group upload-component upload-single\">\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-input -->\r\n <div\r\n class=\"btn upload-input custom-file\"\r\n [class.disabled]=\"HasQueueItem()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <i [class]=\"IconBrowse\"></i>\r\n <span class=\"upload-browse\"\r\n >{{ lngResourceService.GetString('UPLOAD_BUTTON_BROWSE') | async\r\n }}</span\r\n >\r\n <input\r\n type=\"file\"\r\n class=\"custom-file-input\"\r\n #files\r\n (click)=\"files.value = ''\"\r\n (uploadxState)=\"onUpload($event)\"\r\n multiple\r\n [disabled]=\"HasQueueItem()\"\r\n />\r\n </div>\r\n </div>\r\n <div class=\"form-control upload-progress\">\r\n <div class=\"progress\">\r\n <div\r\n class=\"progress-bar\"\r\n [class.progress-bar-success]=\"Progress()===100\"\r\n role=\"progressbar\"\r\n [attr.aria-valuenow]=\"Progress()\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n [style.width.%]=\"Progress()\"\r\n >\r\n <span class=\"progress-text text-dark\"\r\n >{{ Filename() | async }}</span\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\r\n <div class=\"input-group-btn\">\r\n <!-- image-preview-clear button -->\r\n <a\r\n class=\"btn\"\r\n (click)=\"cancelAll()\"\r\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconDelete\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\r\n class=\"btn\"\r\n (click)=\"pauseAll()\"\r\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconPause\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload && enablepause && IsPaused()\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconContinue\"></span>\r\n </a>\r\n <a\r\n *ngIf=\"autoupload === false\"\r\n class=\"btn\"\r\n (click)=\"uploadAll()\"\r\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\r\n [class.btn-default]=\"!(invalid && (dirty || touched))\"\r\n [class.btn-danger]=\"invalid && (dirty || touched)\"\r\n >\r\n <span [class]=\"IconUpload\"></span> {{\r\n lngResourceService.GetString('UPLOAD_BUTTON_UPLOAD') | async }}\r\n </a>\r\n </div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".upload-component .upload-input{position:relative}.upload-component .custom-file>i{margin-right:15px}.upload-component .custom-file .custom-file-input{inset:0;position:absolute;overflow:hidden;z-index:2;width:100%;margin:0;display:inline-block;opacity:0}.upload-component.upload-multiple .upload-progress .progress{border-top-right-radius:0;border-bottom-right-radius:0}.upload-component.upload-single .upload-progress .progress{border-radius:0}.upload-component .upload-progress{padding:0}.upload-component .upload-progress .progress{height:100%}.upload-component .upload-progress .progress .progress-text{position:absolute;left:0;right:0;line-height:34px;height:34px;color:#000}\n"] }]
|
|
57
|
+
}], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
|
|
26
58
|
type: Host
|
|
27
59
|
}, {
|
|
28
60
|
type: Optional
|
|
29
61
|
}] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.NgZone }]; } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdXBsb2FkL3VwbG9hZC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBb0IsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUUzRCw0Q0FBNEM7QUFFNUMsTUFXYSxrQkFBbUIsU0FBUSxxQkFBcUI7SUFFM0QsWUFBaUMsTUFBd0IsRUFBRSxRQUFrQixFQUFFLFFBQW1CLEVBQUUsTUFBYztRQUNoSCxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQzsrR0FKVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5REFQaEI7WUFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRTtZQUM1RSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7U0FDN0YsaURDaEJMLHdzSUE4R0Esb3VCRDVGYyxPQUFPLG9GQUFFLElBQUksd0ZBQUUsU0FBUzs7U0FFekIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBWDlCLFNBQVM7K0JBQ0ksWUFBWSxhQUdYO3dCQUNQLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxvQkFBb0IsRUFBRTt3QkFDNUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUMsRUFBRTtxQkFDN0YsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQzs7MEJBSXZCLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3QsIGZvcndhcmRSZWYsIEluamVjdG9yLCBSZW5kZXJlcjIsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY1VwbG9hZFNpbmdsZUNvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9mb3JtL2Zvcm0nO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbENvbnRhaW5lciwgTkdfVkFMSURBVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nQ2xhc3MsIE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20va3VraGFyaWV2L25neC11cGxvYWR4L1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NhYy11cGxvYWQnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VwbG9hZC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IFNhY1VwbG9hZENvbXBvbmVudCB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMSURBVE9SUywgbXVsdGk6IHRydWUsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNhY1VwbG9hZENvbXBvbmVudCkgfVxyXG4gICAgXSxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdDbGFzcywgTmdJZiwgQXN5bmNQaXBlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FjVXBsb2FkQ29tcG9uZW50IGV4dGVuZHMgU2FjVXBsb2FkU2luZ2xlQ29tbW9uIHtcclxuXHJcbiAgY29uc3RydWN0b3IoIEBIb3N0KCkgQE9wdGlvbmFsKCkgcGFyZW50OiBTYWNGb3JtRGlyZWN0aXZlLCBpbmplY3RvcjogSW5qZWN0b3IsIHJlbmRlcmVyOiBSZW5kZXJlcjIsIG5nWm9uZTogTmdab25lKSB7XHJcbiAgICBzdXBlcihwYXJlbnQsIGluamVjdG9yLCByZW5kZXJlciwgbmdab25lKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImZvcm0tZ3JvdXBcIlxyXG4gIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCl9XCJcclxuPlxyXG4gIDxsYWJlbFxyXG4gICAgKm5nSWY9XCJkaXNhYmxlbGFiZWwgPT09IGZhbHNlICYmICFpc2FkYXB0aXZlbGFiZWxcIlxyXG4gICAgaWQ9XCJ7e25hbWV9fWxhYmVsXCJcclxuICAgIGZvcj1cInt7bmFtZX19XCJcclxuICAgIGNsYXNzPVwiY29udHJvbC1sYWJlbFwiXHJcbiAgICBbbmdDbGFzc109XCJbbGFiZWxzaXplICE9PSAxMiA/ICAnY29sLW1kLScgKyBsYWJlbHNpemUgOiAnc3Itb25seSddXCJcclxuICAgIFtjbGFzcy5yZXF1aXJlZF09XCJpc3JlcXVpcmVkXCJcclxuICAgID57e2xhYmVsfX08L2xhYmVsXHJcbiAgPlxyXG4gIDxkaXZcclxuICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gJ2NvbC1tZC0nICsgX2lucHV0c2l6ZSA6ICdjb2wtbWQtMTInXVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIHVwbG9hZC1jb21wb25lbnQgdXBsb2FkLXNpbmdsZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtYnRuXCI+XHJcbiAgICAgICAgPCEtLSBpbWFnZS1wcmV2aWV3LWlucHV0IC0tPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwiYnRuIHVwbG9hZC1pbnB1dCBjdXN0b20tZmlsZVwiXHJcbiAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiSGFzUXVldWVJdGVtKClcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8aSBbY2xhc3NdPVwiSWNvbkJyb3dzZVwiPjwvaT5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLWJyb3dzZVwiXHJcbiAgICAgICAgICAgID57eyBsbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKCdVUExPQURfQlVUVE9OX0JST1dTRScpIHwgYXN5bmNcclxuICAgICAgICAgICAgfX08L3NwYW5cclxuICAgICAgICAgID5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwiZmlsZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY3VzdG9tLWZpbGUtaW5wdXRcIlxyXG4gICAgICAgICAgICAjZmlsZXNcclxuICAgICAgICAgICAgKGNsaWNrKT1cImZpbGVzLnZhbHVlID0gJydcIlxyXG4gICAgICAgICAgICAodXBsb2FkeFN0YXRlKT1cIm9uVXBsb2FkKCRldmVudClcIlxyXG4gICAgICAgICAgICBtdWx0aXBsZVxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiSGFzUXVldWVJdGVtKClcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNvbnRyb2wgdXBsb2FkLXByb2dyZXNzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzXCI+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3MtYmFyXCJcclxuICAgICAgICAgICAgW2NsYXNzLnByb2dyZXNzLWJhci1zdWNjZXNzXT1cIlByb2dyZXNzKCk9PT0xMDBcIlxyXG4gICAgICAgICAgICByb2xlPVwicHJvZ3Jlc3NiYXJcIlxyXG4gICAgICAgICAgICBbYXR0ci5hcmlhLXZhbHVlbm93XT1cIlByb2dyZXNzKClcIlxyXG4gICAgICAgICAgICBhcmlhLXZhbHVlbWluPVwiMFwiXHJcbiAgICAgICAgICAgIGFyaWEtdmFsdWVtYXg9XCIxMDBcIlxyXG4gICAgICAgICAgICBbc3R5bGUud2lkdGguJV09XCJQcm9ncmVzcygpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcm9ncmVzcy10ZXh0IHRleHQtZGFya1wiXHJcbiAgICAgICAgICAgICAgPnt7IEZpbGVuYW1lKCkgfCBhc3luYyB9fTwvc3BhblxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0aW1hZ2UtcHJldmlldy1maWxlbmFtZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sIGltYWdlLXByZXZpZXctZmlsZW5hbWVcIiBkaXNhYmxlZD1cImRpc2FibGVkXCI+IC0tPjwhLS0gZG9uJ3QgZ2l2ZSBhIG5hbWUgPT09IGRvZXNuJ3Qgc2VuZCBvbiBQT1NUL0dFVCAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLWJ0blwiPlxyXG4gICAgICAgIDwhLS0gaW1hZ2UtcHJldmlldy1jbGVhciBidXR0b24gLS0+XHJcbiAgICAgICAgPGFcclxuICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgIChjbGljayk9XCJjYW5jZWxBbGwoKVwiXHJcbiAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJIYXNRdWV1ZUl0ZW0oKSA9PT0gZmFsc2UgPyAnZGlzYWJsZWQnIDogbnVsbFwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uRGVsZXRlXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICA8YVxyXG4gICAgICAgICAgKm5nSWY9XCIoYXV0b3VwbG9hZCA9PT0gZmFsc2UgJiYgZW5hYmxlcGF1c2UpIHx8IChhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIElzUGF1c2VkKCkgPT09IGZhbHNlKVwiXHJcbiAgICAgICAgICBjbGFzcz1cImJ0blwiXHJcbiAgICAgICAgICAoY2xpY2spPVwicGF1c2VBbGwoKVwiXHJcbiAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJJc1VwbG9hZGluZygpID09PSBmYWxzZSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25QYXVzZVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgPGFcclxuICAgICAgICAgICpuZ0lmPVwiYXV0b3VwbG9hZCAmJiBlbmFibGVwYXVzZSAmJiBJc1BhdXNlZCgpXCJcclxuICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgIChjbGljayk9XCJ1cGxvYWRBbGwoKVwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uQ29udGludWVcIj48L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICAgIDxhXHJcbiAgICAgICAgICAqbmdJZj1cImF1dG91cGxvYWQgPT09IGZhbHNlXCJcclxuICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgIChjbGljayk9XCJ1cGxvYWRBbGwoKVwiXHJcbiAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJJc1N0YXRlVG9VcGxvYWQoKSA9PT0gZmFsc2UgPyAgJ2Rpc2FibGVkJyA6IG51bGxcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiSWNvblVwbG9hZFwiPjwvc3Bhbj4ge3tcclxuICAgICAgICAgIGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcoJ1VQTE9BRF9CVVRUT05fVVBMT0FEJykgfCBhc3luYyB9fVxyXG4gICAgICAgIDwvYT5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJoZWxwLWJsb2NrIGhlbHAtYmxvY2stZXJyb3JcIlxyXG4gICAgICAqbmdJZj1cIklzSW5saW5lRXJyb3JFbmFibGVkICYmIGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgID5cclxuICAgICAge3sgR2V0RXJyb3JNZXNzYWdlKCkgfCBhc3luYyB9fVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL3VwbG9hZC91cGxvYWQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvdXBsb2FkL3VwbG9hZC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFDTCxTQUFTLEVBQ1QsSUFBSSxFQUdKLFFBQVEsRUFFUixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7QUFFeEUsNENBQTRDO0FBRTVDLE1BeUJhLGtCQUFtQixTQUFRLHFCQUFxQjtJQUMzRCx1QkFBdUI7SUFFdkI7Ozs7OztPQU1HO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0IsRUFDbEIsUUFBbUIsRUFDbkIsTUFBYztRQUVkLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRCxDQUFDOytHQWpCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5REFyQmxCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLGtCQUFrQjthQUNoQztZQUNEO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixLQUFLLEVBQUUsSUFBSTtnQkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2FBQ2xEO1NBQ0YsaURDakNILDR3SUErR0Esb3VCRDNFSSxPQUFPLG9GQUNQLElBQUksd0ZBQ0osU0FBUyx5Q0FDVCxzQkFBc0IsbURBQ3RCLHdCQUF3Qjs7U0FHZixrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkF6QjlCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsb0JBQW9CO3lCQUNoQzt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7eUJBQ2xEO3FCQUNGLGNBQ1csSUFBSSxXQUNQO3dCQUNQLE9BQU87d0JBQ1AsSUFBSTt3QkFDSixTQUFTO3dCQUNULHNCQUFzQjt3QkFDdEIsd0JBQXdCO3FCQUN6Qjs7MEJBYUUsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3QsXHJcbiAgSW5qZWN0b3IsXHJcbiAgTmdab25lLFxyXG4gIE9wdGlvbmFsLFxyXG4gIFJlbmRlcmVyMixcclxuICBmb3J3YXJkUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2FjVXBsb2FkU2luZ2xlQ29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcclxuaW1wb3J0IHsgU2FjRm9ybUxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uL2xheW91dC9mb3JtbGF5b3V0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNhY1RvQ29udHJvbFdpZHRoQ3NzUGlwZSB9IGZyb20gJy4uL2xheW91dC90b2NvbnRyb2x3aWR0aGNzcy5waXBlJztcclxuaW1wb3J0IHsgU2FjVG9MYWJlbFdpZHRoQ3NzUGlwZSB9IGZyb20gJy4uL2xheW91dC90b2xhYmVsd2lkdGhjc3MucGlwZSc7XHJcblxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20va3VraGFyaWV2L25neC11cGxvYWR4L1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtdXBsb2FkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXBsb2FkLmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VwbG9hZC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IFNhY1VwbG9hZENvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTYWNVcGxvYWRDb21wb25lbnQpLFxyXG4gICAgfSxcclxuICBdLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIE5nSWYsXHJcbiAgICBBc3luY1BpcGUsXHJcbiAgICBTYWNUb0xhYmVsV2lkdGhDc3NQaXBlLFxyXG4gICAgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNVcGxvYWRDb21wb25lbnQgZXh0ZW5kcyBTYWNVcGxvYWRTaW5nbGVDb21tb24ge1xyXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdG9yXHJcbiAgICogQHBhcmFtIGZvcm1MYXlvdXQgU2FjRm9ybUxheW91dCB0byBkZWZpbmUgc2NvcGVkIGxheW91dCBzZXR0aW5nc1xyXG4gICAqIEBwYXJhbSBpbmplY3RvciBJbmplY3RvciBmb3IgaW5qZWN0aW5nIHNlcnZpY2VzXHJcbiAgICogQHBhcmFtIHJlbmRlcmVyIEFuZ3VsYXIgcmVuZGVyaW5nIGVuZ2luZVxyXG4gICAqIEBwYXJhbSBuZ1pvbmUgbmdab25lIHRvIG1hbmFnZSBleHRlcm5hbCBqYXZhc2NyaXB0c1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBmb3JtTGF5b3V0OiBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIG5nWm9uZTogTmdab25lXHJcbiAgKSB7XHJcbiAgICBzdXBlcihmb3JtTGF5b3V0LCBpbmplY3RvciwgcmVuZGVyZXIsIG5nWm9uZSk7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cInJvdyBmb3JtLWdyb3VwXCJcclxuICBbbmdDbGFzc109XCJ7J2hhcy1lcnJvcic6IGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpfVwiXHJcbj5cclxuICA8bGFiZWxcclxuICAgICpuZ0lmPVwiZGlzYWJsZWxhYmVsID09PSBmYWxzZSAmJiAhaXNBZGFwdGl2ZUxhYmVsXCJcclxuICAgIGlkPVwie3tuYW1lfX1sYWJlbFwiXHJcbiAgICBmb3I9XCJ7e25hbWV9fVwiXHJcbiAgICBjbGFzcz1cImNvbC14cy0xMiBjb250cm9sLWxhYmVsXCJcclxuICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gKHRoaXMubGFiZWxTaXplcyB8IHRvTGFiZWxXaWR0aENzcykgOiAnc3Itb25seScgXVwiXHJcbiAgICBbY2xhc3MucmVxdWlyZWRdPVwiaXNyZXF1aXJlZFwiXHJcbiAgICA+e3tsYWJlbH19PC9sYWJlbFxyXG4gID5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImNvbC14cy0xMlwiXHJcbiAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICAodGhpcy5sYWJlbFNpemVzIHwgdG9Db250cm9sV2lkdGhDc3MpIDogJyddXCJcclxuICA+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgdXBsb2FkLWNvbXBvbmVudCB1cGxvYWQtc2luZ2xlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cC1idG5cIj5cclxuICAgICAgICA8IS0tIGltYWdlLXByZXZpZXctaW5wdXQgLS0+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJidG4gdXBsb2FkLWlucHV0IGN1c3RvbS1maWxlXCJcclxuICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJIYXNRdWV1ZUl0ZW0oKVwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxpIFtjbGFzc109XCJJY29uQnJvd3NlXCI+PC9pPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtYnJvd3NlXCJcclxuICAgICAgICAgICAgPnt7IGxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcoJ1VQTE9BRF9CVVRUT05fQlJPV1NFJykgfCBhc3luY1xyXG4gICAgICAgICAgICB9fTwvc3BhblxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tZmlsZS1pbnB1dFwiXHJcbiAgICAgICAgICAgICNmaWxlc1xyXG4gICAgICAgICAgICAoY2xpY2spPVwiZmlsZXMudmFsdWUgPSAnJ1wiXHJcbiAgICAgICAgICAgICh1cGxvYWR4U3RhdGUpPVwib25VcGxvYWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIG11bHRpcGxlXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJIYXNRdWV1ZUl0ZW0oKVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY29udHJvbCB1cGxvYWQtcHJvZ3Jlc3NcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NcIj5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzcy1iYXJcIlxyXG4gICAgICAgICAgICBbY2xhc3MucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3NdPVwiUHJvZ3Jlc3MoKT09PTEwMFwiXHJcbiAgICAgICAgICAgIHJvbGU9XCJwcm9ncmVzc2JhclwiXHJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtdmFsdWVub3ddPVwiUHJvZ3Jlc3MoKVwiXHJcbiAgICAgICAgICAgIGFyaWEtdmFsdWVtaW49XCIwXCJcclxuICAgICAgICAgICAgYXJpYS12YWx1ZW1heD1cIjEwMFwiXHJcbiAgICAgICAgICAgIFtzdHlsZS53aWR0aC4lXT1cIlByb2dyZXNzKClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInByb2dyZXNzLXRleHQgdGV4dC1kYXJrXCJcclxuICAgICAgICAgICAgICA+e3sgRmlsZW5hbWUoKSB8IGFzeW5jIH19PC9zcGFuXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPCEtLSA8aW5wdXQgdHlwZT1cInRleHRpbWFnZS1wcmV2aWV3LWZpbGVuYW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaW1hZ2UtcHJldmlldy1maWxlbmFtZVwiIGRpc2FibGVkPVwiZGlzYWJsZWRcIj4gLS0+PCEtLSBkb24ndCBnaXZlIGEgbmFtZSA9PT0gZG9lc24ndCBzZW5kIG9uIFBPU1QvR0VUIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtYnRuXCI+XHJcbiAgICAgICAgPCEtLSBpbWFnZS1wcmV2aWV3LWNsZWFyIGJ1dHRvbiAtLT5cclxuICAgICAgICA8YVxyXG4gICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cImNhbmNlbEFsbCgpXCJcclxuICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIkhhc1F1ZXVlSXRlbSgpID09PSBmYWxzZSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25EZWxldGVcIj48L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICAgIDxhXHJcbiAgICAgICAgICAqbmdJZj1cIihhdXRvdXBsb2FkID09PSBmYWxzZSAmJiBlbmFibGVwYXVzZSkgfHwgKGF1dG91cGxvYWQgJiYgZW5hYmxlcGF1c2UgJiYgSXNQYXVzZWQoKSA9PT0gZmFsc2UpXCJcclxuICAgICAgICAgIGNsYXNzPVwiYnRuXCJcclxuICAgICAgICAgIChjbGljayk9XCJwYXVzZUFsbCgpXCJcclxuICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIklzVXBsb2FkaW5nKCkgPT09IGZhbHNlID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kZWZhdWx0XT1cIiEoaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCkpXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGFuZ2VyXT1cImludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiSWNvblBhdXNlXCI+PC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICA8YVxyXG4gICAgICAgICAgKm5nSWY9XCJhdXRvdXBsb2FkICYmIGVuYWJsZXBhdXNlICYmIElzUGF1c2VkKClcIlxyXG4gICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cInVwbG9hZEFsbCgpXCJcclxuICAgICAgICAgIFtjbGFzcy5idG4tZGVmYXVsdF09XCIhKGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpKVwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRhbmdlcl09XCJpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIkljb25Db250aW51ZVwiPjwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgPGFcclxuICAgICAgICAgICpuZ0lmPVwiYXV0b3VwbG9hZCA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgY2xhc3M9XCJidG5cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cInVwbG9hZEFsbCgpXCJcclxuICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cIklzU3RhdGVUb1VwbG9hZCgpID09PSBmYWxzZSA/ICAnZGlzYWJsZWQnIDogbnVsbFwiXHJcbiAgICAgICAgICBbY2xhc3MuYnRuLWRlZmF1bHRdPVwiIShpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKSlcIlxyXG4gICAgICAgICAgW2NsYXNzLmJ0bi1kYW5nZXJdPVwiaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJJY29uVXBsb2FkXCI+PC9zcGFuPiB7e1xyXG4gICAgICAgICAgbG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZygnVVBMT0FEX0JVVFRPTl9VUExPQUQnKSB8IGFzeW5jIH19XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImhlbHAtYmxvY2sgaGVscC1ibG9jay1lcnJvclwiXHJcbiAgICAgICpuZ0lmPVwiaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZClcIlxyXG4gICAgPlxyXG4gICAgICB7eyBHZXRFcnJvck1lc3NhZ2UoKSB8IGFzeW5jIH19XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|