coer-elements 0.0.23 → 0.0.24
Sign up to get free protection for your applications and to get access to all the features.
- package/components/index.d.ts +5 -0
- package/components/lib/coer-button/coer-button.component.d.ts +44 -0
- package/components/lib/coer-checkbox/coer-checkbox.component.d.ts +28 -0
- package/components/lib/coer-filebox/coer-filebox.component.d.ts +33 -0
- package/components/lib/coer-form/coer-form.component.d.ts +33 -0
- package/components/lib/coer-grid/coer-grid.component.d.ts +53 -0
- package/components/lib/coer-grid/coer-grid.extension.d.ts +103 -0
- package/components/lib/coer-grid/coer-grid.templates.d.ts +9 -0
- package/components/lib/coer-modal/coer-modal.component.d.ts +38 -0
- package/components/lib/coer-numberbox/coer-numberbox.component.d.ts +55 -0
- package/components/lib/coer-page-title/coer-page-title.component.d.ts +12 -0
- package/components/lib/coer-selectbox/coer-selectbox.component.d.ts +75 -0
- package/components/lib/coer-switch/coer-switch.component.d.ts +31 -0
- package/components/lib/coer-tab/coer-tab.component.d.ts +35 -0
- package/components/lib/coer-textarea/coer-textarea.component.d.ts +51 -0
- package/components/lib/coer-textbox/coer-textbox.component.d.ts +57 -0
- package/components/lib/components.module.d.ts +30 -0
- package/components/public-api.d.ts +15 -0
- package/directives/index.d.ts +5 -0
- package/directives/lib/coer-ref.directive.d.ts +14 -0
- package/directives/lib/directives.module.d.ts +8 -0
- package/directives/lib/life-cycle.directive.d.ts +16 -0
- package/directives/public-api.d.ts +3 -0
- package/esm2022/components/coer-elements-components.mjs +5 -0
- package/esm2022/components/lib/coer-button/coer-button.component.mjs +133 -0
- package/esm2022/components/lib/coer-checkbox/coer-checkbox.component.mjs +83 -0
- package/esm2022/components/lib/coer-filebox/coer-filebox.component.mjs +102 -0
- package/esm2022/components/lib/coer-form/coer-form.component.mjs +101 -0
- package/esm2022/components/lib/coer-grid/coer-grid.component.mjs +512 -0
- package/esm2022/components/lib/coer-grid/coer-grid.extension.mjs +408 -0
- package/esm2022/components/lib/coer-grid/coer-grid.templates.mjs +30 -0
- package/esm2022/components/lib/coer-modal/coer-modal.component.mjs +107 -0
- package/esm2022/components/lib/coer-numberbox/coer-numberbox.component.mjs +258 -0
- package/esm2022/components/lib/coer-page-title/coer-page-title.component.mjs +44 -0
- package/esm2022/components/lib/coer-selectbox/coer-selectbox.component.mjs +338 -0
- package/esm2022/components/lib/coer-switch/coer-switch.component.mjs +93 -0
- package/esm2022/components/lib/coer-tab/coer-tab.component.mjs +116 -0
- package/esm2022/components/lib/coer-textarea/coer-textarea.component.mjs +156 -0
- package/esm2022/components/lib/coer-textbox/coer-textbox.component.mjs +195 -0
- package/esm2022/components/lib/components.module.mjs +129 -0
- package/esm2022/components/public-api.mjs +16 -0
- package/esm2022/directives/coer-elements-directives.mjs +5 -0
- package/esm2022/directives/lib/coer-ref.directive.mjs +23 -0
- package/esm2022/directives/lib/directives.module.mjs +25 -0
- package/esm2022/directives/lib/life-cycle.directive.mjs +33 -0
- package/esm2022/directives/public-api.mjs +4 -0
- package/esm2022/interfaces/coer-elements-interfaces.mjs +5 -0
- package/esm2022/interfaces/lib/app-source.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-filebox/file-image.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-filebox/file.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-button-by-row.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-checkbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-coer-numberbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-coer-selectbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-coer-switch.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-coer-textbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-column.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-data-source.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-header-button.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-header-export-button.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-header.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-import.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-input-checkbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-input-switch-change.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-input-textbox.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-item.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-keyup-enter.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-length.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-search.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-grid/grid-sort.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-menu/menu-option-selected.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-menu/menu-selected.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-menu/menu.interface.mjs +2 -0
- package/esm2022/interfaces/lib/coer-ref.interface.mjs +2 -0
- package/esm2022/interfaces/lib/page-title/breadcrumb.interface.mjs +2 -0
- package/esm2022/interfaces/lib/page-title/go-back.interface.mjs +2 -0
- package/esm2022/interfaces/lib/screen-size.interface.mjs +2 -0
- package/esm2022/interfaces/lib/service/http-request.interface.mjs +2 -0
- package/esm2022/interfaces/lib/service/http-response.interface.mjs +2 -0
- package/esm2022/interfaces/lib/service/patch.interface.mjs +2 -0
- package/esm2022/interfaces/public-api.mjs +39 -0
- package/esm2022/pipes/coer-elements-pipes.mjs +5 -0
- package/esm2022/pipes/lib/html.pipe.mjs +18 -0
- package/esm2022/pipes/lib/no-image.pipe.mjs +23 -0
- package/esm2022/pipes/lib/numeric-format.pipe.mjs +15 -0
- package/esm2022/pipes/lib/pipes.module.mjs +31 -0
- package/esm2022/pipes/public-api.mjs +5 -0
- package/esm2022/signals/coer-elements-signals.mjs +5 -0
- package/esm2022/signals/lib/breakpoint.signal.mjs +4 -0
- package/esm2022/signals/lib/is-loading.signal.mjs +3 -0
- package/esm2022/signals/lib/is-menu-open.signal.mjs +3 -0
- package/esm2022/signals/lib/is-modal-open.signal.mjs +3 -0
- package/esm2022/signals/lib/menu.signal.mjs +3 -0
- package/esm2022/signals/public-api.mjs +6 -0
- package/esm2022/tools/coer-elements-tools.mjs +5 -0
- package/esm2022/tools/lib/breadcrumbs.class.mjs +63 -0
- package/esm2022/tools/lib/coer-alert/coer-alert.component.mjs +228 -0
- package/esm2022/tools/lib/control-value.class.mjs +46 -0
- package/esm2022/tools/lib/date-time.class.mjs +29 -0
- package/esm2022/tools/lib/files.class.mjs +91 -0
- package/esm2022/tools/lib/menu.class.mjs +23 -0
- package/esm2022/tools/lib/page.class.mjs +156 -0
- package/esm2022/tools/lib/screen.class.mjs +51 -0
- package/esm2022/tools/lib/service.class.mjs +247 -0
- package/esm2022/tools/lib/source.class.mjs +80 -0
- package/esm2022/tools/lib/tools.mjs +220 -0
- package/esm2022/tools/public-api.mjs +12 -0
- package/fesm2022/coer-elements-components.mjs +2718 -0
- package/fesm2022/coer-elements-components.mjs.map +1 -0
- package/fesm2022/coer-elements-directives.mjs +82 -0
- package/fesm2022/coer-elements-directives.mjs.map +1 -0
- package/fesm2022/coer-elements-interfaces.mjs +6 -0
- package/fesm2022/coer-elements-interfaces.mjs.map +1 -0
- package/fesm2022/coer-elements-pipes.mjs +83 -0
- package/fesm2022/coer-elements-pipes.mjs.map +1 -0
- package/fesm2022/coer-elements-signals.mjs +19 -0
- package/fesm2022/coer-elements-signals.mjs.map +1 -0
- package/fesm2022/coer-elements-tools.mjs +1223 -0
- package/fesm2022/coer-elements-tools.mjs.map +1 -0
- package/interfaces/index.d.ts +5 -0
- package/interfaces/lib/app-source.interface.d.ts +4 -0
- package/interfaces/lib/coer-filebox/file-image.interface.d.ts +14 -0
- package/interfaces/lib/coer-filebox/file.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-button-by-row.interface.d.ts +6 -0
- package/interfaces/lib/coer-grid/grid-checkbox.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-coer-numberbox.interface.d.ts +12 -0
- package/interfaces/lib/coer-grid/grid-coer-selectbox.interface.d.ts +9 -0
- package/interfaces/lib/coer-grid/grid-coer-switch.interface.d.ts +6 -0
- package/interfaces/lib/coer-grid/grid-coer-textbox.interface.d.ts +11 -0
- package/interfaces/lib/coer-grid/grid-column.interface.d.ts +22 -0
- package/interfaces/lib/coer-grid/grid-data-source.interface.d.ts +6 -0
- package/interfaces/lib/coer-grid/grid-header-button.interface.d.ts +8 -0
- package/interfaces/lib/coer-grid/grid-header-export-button.interface.d.ts +10 -0
- package/interfaces/lib/coer-grid/grid-header.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-import.interface.d.ts +4 -0
- package/interfaces/lib/coer-grid/grid-input-checkbox.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-input-switch-change.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-input-textbox.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-item.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-keyup-enter.interface.d.ts +6 -0
- package/interfaces/lib/coer-grid/grid-length.interface.d.ts +5 -0
- package/interfaces/lib/coer-grid/grid-search.interface.d.ts +4 -0
- package/interfaces/lib/coer-grid/grid-sort.interface.d.ts +5 -0
- package/interfaces/lib/coer-menu/menu-option-selected.interface.d.ts +9 -0
- package/interfaces/lib/coer-menu/menu-selected.interface.d.ts +10 -0
- package/interfaces/lib/coer-menu/menu.interface.d.ts +6 -0
- package/interfaces/lib/coer-ref.interface.d.ts +10 -0
- package/interfaces/lib/page-title/breadcrumb.interface.d.ts +6 -0
- package/interfaces/lib/page-title/go-back.interface.d.ts +6 -0
- package/interfaces/lib/screen-size.interface.d.ts +5 -0
- package/interfaces/lib/service/http-request.interface.d.ts +10 -0
- package/interfaces/lib/service/http-response.interface.d.ts +6 -0
- package/interfaces/lib/service/patch.interface.d.ts +5 -0
- package/interfaces/public-api.d.ts +33 -0
- package/package.json +37 -1
- package/pipes/index.d.ts +5 -0
- package/pipes/lib/html.pipe.d.ts +10 -0
- package/pipes/lib/no-image.pipe.d.ts +7 -0
- package/pipes/lib/numeric-format.pipe.d.ts +7 -0
- package/pipes/lib/pipes.module.d.ts +9 -0
- package/pipes/public-api.d.ts +4 -0
- package/signals/index.d.ts +5 -0
- package/signals/lib/breakpoint.signal.d.ts +1 -0
- package/signals/lib/is-loading.signal.d.ts +1 -0
- package/signals/lib/is-menu-open.signal.d.ts +1 -0
- package/signals/lib/is-modal-open.signal.d.ts +1 -0
- package/signals/lib/menu.signal.d.ts +2 -0
- package/signals/public-api.d.ts +5 -0
- package/tools/index.d.ts +5 -0
- package/tools/lib/breadcrumbs.class.d.ts +18 -0
- package/tools/lib/coer-alert/coer-alert.component.d.ts +23 -0
- package/tools/lib/control-value.class.d.ts +25 -0
- package/tools/lib/date-time.class.d.ts +13 -0
- package/tools/lib/files.class.d.ts +16 -0
- package/tools/lib/menu.class.d.ts +8 -0
- package/tools/lib/page.class.d.ts +60 -0
- package/tools/lib/screen.class.d.ts +13 -0
- package/tools/lib/service.class.d.ts +39 -0
- package/tools/lib/source.class.d.ts +20 -0
- package/tools/lib/tools.d.ts +34 -0
- package/tools/public-api.d.ts +11 -0
@@ -0,0 +1,51 @@
|
|
1
|
+
import { ElementRef, OnInit } from '@angular/core';
|
2
|
+
import { ControlValue } from 'coer-elements/tools';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class CoerTextarea extends ControlValue implements OnInit {
|
5
|
+
protected _value: string | number;
|
6
|
+
protected matFormField: import("@angular/core").Signal<ElementRef<any>>;
|
7
|
+
protected coerTextBox: import("@angular/core").Signal<ElementRef<any>>;
|
8
|
+
protected _id: string;
|
9
|
+
protected _isLoadingEvent: import("@angular/core").WritableSignal<boolean>;
|
10
|
+
private element;
|
11
|
+
set value(value: string | number | null | undefined);
|
12
|
+
id: string;
|
13
|
+
label: import("@angular/core").InputSignal<string>;
|
14
|
+
placeholder: import("@angular/core").InputSignal<string>;
|
15
|
+
minLength: import("@angular/core").InputSignal<string | number>;
|
16
|
+
maxLength: import("@angular/core").InputSignal<string | number>;
|
17
|
+
width: import("@angular/core").InputSignal<string>;
|
18
|
+
minWidth: import("@angular/core").InputSignal<string>;
|
19
|
+
maxWidth: import("@angular/core").InputSignal<string>;
|
20
|
+
marginTop: import("@angular/core").InputSignal<string>;
|
21
|
+
marginRight: import("@angular/core").InputSignal<string>;
|
22
|
+
marginBottom: import("@angular/core").InputSignal<string>;
|
23
|
+
marginLeft: import("@angular/core").InputSignal<string>;
|
24
|
+
isInvalid: import("@angular/core").InputSignal<boolean>;
|
25
|
+
isValid: import("@angular/core").InputSignal<boolean>;
|
26
|
+
isDisabled: import("@angular/core").InputSignal<boolean>;
|
27
|
+
isReadonly: import("@angular/core").InputSignal<boolean>;
|
28
|
+
isLoading: import("@angular/core").InputSignal<boolean>;
|
29
|
+
showFooter: import("@angular/core").InputSignal<boolean>;
|
30
|
+
resize: import("@angular/core").InputSignal<boolean>;
|
31
|
+
textPosition: import("@angular/core").InputSignal<"left" | "right" | "center">;
|
32
|
+
onInput: import("@angular/core").OutputEmitterRef<string | number>;
|
33
|
+
ngOnInit(): void;
|
34
|
+
get value(): string | number | null | undefined;
|
35
|
+
get footer(): string;
|
36
|
+
protected _isEnable: import("@angular/core").Signal<boolean>;
|
37
|
+
protected floatLabel: import("@angular/core").Signal<"auto" | "always">;
|
38
|
+
protected paddingRight: import("@angular/core").Signal<"0px" | "18px">;
|
39
|
+
/** */
|
40
|
+
private SetEvents;
|
41
|
+
/** */
|
42
|
+
Focus(timeout?: number): void;
|
43
|
+
/** */
|
44
|
+
Select(timeout?: number): void;
|
45
|
+
/** */
|
46
|
+
Blur(): void;
|
47
|
+
/** */
|
48
|
+
Clear(): void;
|
49
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CoerTextarea, never>;
|
50
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CoerTextarea, "coer-textarea", never, { "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "marginTop": { "alias": "marginTop"; "required": false; "isSignal": true; }; "marginRight": { "alias": "marginRight"; "required": false; "isSignal": true; }; "marginBottom": { "alias": "marginBottom"; "required": false; "isSignal": true; }; "marginLeft": { "alias": "marginLeft"; "required": false; "isSignal": true; }; "isInvalid": { "alias": "isInvalid"; "required": false; "isSignal": true; }; "isValid": { "alias": "isValid"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "isReadonly": { "alias": "isReadonly"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "resize": { "alias": "resize"; "required": false; "isSignal": true; }; "textPosition": { "alias": "textPosition"; "required": false; "isSignal": true; }; }, { "onInput": "onInput"; }, never, never, false, never>;
|
51
|
+
}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import { ElementRef, OnInit } from '@angular/core';
|
2
|
+
import { ControlValue } from 'coer-elements/tools';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class CoerTextBox extends ControlValue implements OnInit {
|
5
|
+
protected _value: string | number;
|
6
|
+
protected matFormField: import("@angular/core").Signal<ElementRef<any>>;
|
7
|
+
protected coerTextBox: import("@angular/core").Signal<ElementRef<any>>;
|
8
|
+
protected _id: string;
|
9
|
+
protected _isLoadingEvent: import("@angular/core").WritableSignal<boolean>;
|
10
|
+
private element;
|
11
|
+
set value(value: string | number | null | undefined);
|
12
|
+
id: string;
|
13
|
+
label: import("@angular/core").InputSignal<string>;
|
14
|
+
placeholder: import("@angular/core").InputSignal<string>;
|
15
|
+
minLength: import("@angular/core").InputSignal<string | number>;
|
16
|
+
maxLength: import("@angular/core").InputSignal<string | number>;
|
17
|
+
showSearchIcon: import("@angular/core").InputSignal<boolean>;
|
18
|
+
showClearIcon: import("@angular/core").InputSignal<boolean>;
|
19
|
+
width: import("@angular/core").InputSignal<string>;
|
20
|
+
minWidth: import("@angular/core").InputSignal<string>;
|
21
|
+
maxWidth: import("@angular/core").InputSignal<string>;
|
22
|
+
marginTop: import("@angular/core").InputSignal<string>;
|
23
|
+
marginRight: import("@angular/core").InputSignal<string>;
|
24
|
+
marginBottom: import("@angular/core").InputSignal<string>;
|
25
|
+
marginLeft: import("@angular/core").InputSignal<string>;
|
26
|
+
isInvalid: import("@angular/core").InputSignal<boolean>;
|
27
|
+
isValid: import("@angular/core").InputSignal<boolean>;
|
28
|
+
isDisabled: import("@angular/core").InputSignal<boolean>;
|
29
|
+
isReadonly: import("@angular/core").InputSignal<boolean>;
|
30
|
+
isLoading: import("@angular/core").InputSignal<boolean>;
|
31
|
+
selectOnFocus: import("@angular/core").InputSignal<boolean>;
|
32
|
+
textPosition: import("@angular/core").InputSignal<"left" | "right" | "center">;
|
33
|
+
onKeyupEnter: import("@angular/core").OutputEmitterRef<string | number>;
|
34
|
+
onInput: import("@angular/core").OutputEmitterRef<string | number>;
|
35
|
+
onClickClear: import("@angular/core").OutputEmitterRef<void>;
|
36
|
+
ngOnInit(): void;
|
37
|
+
protected get _showSearchIcon(): boolean;
|
38
|
+
protected get _showClearIcon(): boolean;
|
39
|
+
get value(): string | number | null | undefined;
|
40
|
+
protected _isEnable: import("@angular/core").Signal<boolean>;
|
41
|
+
protected floatLabel: import("@angular/core").Signal<"auto" | "always">;
|
42
|
+
protected paddingRight: import("@angular/core").Signal<"0px" | "18px">;
|
43
|
+
/** */
|
44
|
+
private SetEvents;
|
45
|
+
/** */
|
46
|
+
Focus(timeout?: number): void;
|
47
|
+
/** */
|
48
|
+
Select(timeout?: number): void;
|
49
|
+
/** */
|
50
|
+
Blur(): void;
|
51
|
+
/** */
|
52
|
+
Clear(): void;
|
53
|
+
/** */
|
54
|
+
protected ClickSearch(): void;
|
55
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CoerTextBox, never>;
|
56
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CoerTextBox, "coer-textbox", never, { "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "showSearchIcon": { "alias": "showSearchIcon"; "required": false; "isSignal": true; }; "showClearIcon": { "alias": "showClearIcon"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "marginTop": { "alias": "marginTop"; "required": false; "isSignal": true; }; "marginRight": { "alias": "marginRight"; "required": false; "isSignal": true; }; "marginBottom": { "alias": "marginBottom"; "required": false; "isSignal": true; }; "marginLeft": { "alias": "marginLeft"; "required": false; "isSignal": true; }; "isInvalid": { "alias": "isInvalid"; "required": false; "isSignal": true; }; "isValid": { "alias": "isValid"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "isReadonly": { "alias": "isReadonly"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "selectOnFocus": { "alias": "selectOnFocus"; "required": false; "isSignal": true; }; "textPosition": { "alias": "textPosition"; "required": false; "isSignal": true; }; }, { "onKeyupEnter": "onKeyupEnter"; "onInput": "onInput"; "onClickClear": "onClickClear"; }, never, never, false, never>;
|
57
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import * as i0 from "@angular/core";
|
2
|
+
import * as i1 from "./coer-button/coer-button.component";
|
3
|
+
import * as i2 from "./coer-checkbox/coer-checkbox.component";
|
4
|
+
import * as i3 from "./coer-filebox/coer-filebox.component";
|
5
|
+
import * as i4 from "./coer-form/coer-form.component";
|
6
|
+
import * as i5 from "./coer-grid/coer-grid.component";
|
7
|
+
import * as i6 from "./coer-modal/coer-modal.component";
|
8
|
+
import * as i7 from "./coer-numberbox/coer-numberbox.component";
|
9
|
+
import * as i8 from "./coer-page-title/coer-page-title.component";
|
10
|
+
import * as i9 from "./coer-selectbox/coer-selectbox.component";
|
11
|
+
import * as i10 from "./coer-switch/coer-switch.component";
|
12
|
+
import * as i11 from "./coer-tab/coer-tab.component";
|
13
|
+
import * as i12 from "./coer-textarea/coer-textarea.component";
|
14
|
+
import * as i13 from "./coer-textbox/coer-textbox.component";
|
15
|
+
import * as i14 from "@angular/common";
|
16
|
+
import * as i15 from "@angular/router";
|
17
|
+
import * as i16 from "@angular/forms";
|
18
|
+
import * as i17 from "@angular/material/button";
|
19
|
+
import * as i18 from "@angular/material/checkbox";
|
20
|
+
import * as i19 from "@angular/material/input";
|
21
|
+
import * as i20 from "@angular/material/form-field";
|
22
|
+
import * as i21 from "@angular/material/slide-toggle";
|
23
|
+
import * as i22 from "@angular/material/tabs";
|
24
|
+
import * as i23 from "coer-elements/directives";
|
25
|
+
import * as i24 from "coer-elements/pipes";
|
26
|
+
export declare class ComponentsModule {
|
27
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ComponentsModule, never>;
|
28
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ComponentsModule, [typeof i1.CoerButton, typeof i2.CoerCheckbox, typeof i3.CoerFilebox, typeof i4.CoerForm, typeof i5.CoerGrid, typeof i6.CoerModal, typeof i7.CoerNumberBox, typeof i8.CoerPageTitle, typeof i9.CoerSelectbox, typeof i10.CoerSwitch, typeof i11.CoerTab, typeof i12.CoerTextarea, typeof i13.CoerTextBox], [typeof i14.CommonModule, typeof i15.RouterModule, typeof i16.FormsModule, typeof i16.ReactiveFormsModule, typeof i17.MatButtonModule, typeof i18.MatCheckboxModule, typeof i19.MatInputModule, typeof i20.MatFormFieldModule, typeof i21.MatSlideToggleModule, typeof i22.MatTabsModule, typeof i23.DirectivesModule, typeof i24.PipesModule], [typeof i1.CoerButton, typeof i2.CoerCheckbox, typeof i3.CoerFilebox, typeof i4.CoerForm, typeof i5.CoerGrid, typeof i6.CoerModal, typeof i7.CoerNumberBox, typeof i8.CoerPageTitle, typeof i9.CoerSelectbox, typeof i10.CoerSwitch, typeof i11.CoerTab, typeof i12.CoerTextarea, typeof i13.CoerTextBox]>;
|
29
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<ComponentsModule>;
|
30
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
export * from './lib/components.module';
|
2
|
+
export * from './lib/coer-button/coer-button.component';
|
3
|
+
export * from './lib/coer-checkbox/coer-checkbox.component';
|
4
|
+
export * from './lib/coer-filebox/coer-filebox.component';
|
5
|
+
export * from './lib/coer-form/coer-form.component';
|
6
|
+
export * from './lib/coer-grid/coer-grid.component';
|
7
|
+
export * from './lib/coer-grid/coer-grid.templates';
|
8
|
+
export * from './lib/coer-modal/coer-modal.component';
|
9
|
+
export * from './lib/coer-numberbox/coer-numberbox.component';
|
10
|
+
export * from './lib/coer-page-title/coer-page-title.component';
|
11
|
+
export * from './lib/coer-selectbox/coer-selectbox.component';
|
12
|
+
export * from './lib/coer-switch/coer-switch.component';
|
13
|
+
export * from './lib/coer-tab/coer-tab.component';
|
14
|
+
export * from './lib/coer-textarea/coer-textarea.component';
|
15
|
+
export * from './lib/coer-textbox/coer-textbox.component';
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { TemplateRef } from "@angular/core";
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare class CoerRefDirective {
|
4
|
+
template: TemplateRef<any>;
|
5
|
+
coerRef: import("@angular/core").InputSignal<string>;
|
6
|
+
title: import("@angular/core").InputSignal<string>;
|
7
|
+
icon: import("@angular/core").InputSignal<string>;
|
8
|
+
isDisabled: import("@angular/core").InputSignal<boolean>;
|
9
|
+
show: import("@angular/core").InputSignal<boolean>;
|
10
|
+
tooltip: import("@angular/core").InputSignal<string>;
|
11
|
+
constructor(template: TemplateRef<any>);
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CoerRefDirective, never>;
|
13
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<CoerRefDirective, "[coerRef]", never, { "coerRef": { "alias": "coerRef"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "show": { "alias": "show"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
|
14
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import * as i0 from "@angular/core";
|
2
|
+
import * as i1 from "./coer-ref.directive";
|
3
|
+
import * as i2 from "./life-cycle.directive";
|
4
|
+
export declare class DirectivesModule {
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DirectivesModule, never>;
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<DirectivesModule, [typeof i1.CoerRefDirective, typeof i2.LifeCycleDirective], never, [typeof i1.CoerRefDirective, typeof i2.LifeCycleDirective]>;
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<DirectivesModule>;
|
8
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { OnDestroy, OnInit, ElementRef, AfterViewInit, OnChanges, SimpleChanges } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare class LifeCycleDirective implements OnChanges, OnInit, AfterViewInit, OnDestroy {
|
4
|
+
private element;
|
5
|
+
OnChanges: import("@angular/core").OutputEmitterRef<SimpleChanges>;
|
6
|
+
onInit: import("@angular/core").OutputEmitterRef<HTMLElement>;
|
7
|
+
afterViewInit: import("@angular/core").OutputEmitterRef<HTMLElement>;
|
8
|
+
onDestroy: import("@angular/core").OutputEmitterRef<HTMLElement>;
|
9
|
+
constructor(element: ElementRef);
|
10
|
+
ngOnChanges(changes: SimpleChanges): void;
|
11
|
+
ngOnInit(): void;
|
12
|
+
ngAfterViewInit(): void;
|
13
|
+
ngOnDestroy(): void;
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LifeCycleDirective, never>;
|
15
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<LifeCycleDirective, "[lifecycle]", never, {}, { "OnChanges": "OnChanges"; "onInit": "onInit"; "afterViewInit": "afterViewInit"; "onDestroy": "onDestroy"; }, never, never, false, never>;
|
16
|
+
}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './public-api';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lci1lbGVtZW50cy1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29lci1lbGVtZW50cy9jb21wb25lbnRzL2NvZXItZWxlbWVudHMtY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
@@ -0,0 +1,133 @@
|
|
1
|
+
import { Component, computed, EventEmitter, input, Input, Output } from '@angular/core';
|
2
|
+
import { Tools } from 'coer-elements/tools';
|
3
|
+
import { Tooltip } from 'bootstrap';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "@angular/common";
|
6
|
+
import * as i2 from "@angular/router";
|
7
|
+
import * as i3 from "@angular/material/button";
|
8
|
+
export class CoerButton {
|
9
|
+
constructor() {
|
10
|
+
//Variables
|
11
|
+
this._id = Tools.GetGuid('coer-button');
|
12
|
+
this._tooltip = '';
|
13
|
+
//Inputs
|
14
|
+
this.id = '';
|
15
|
+
this.color = input('default');
|
16
|
+
this.type = input('filled');
|
17
|
+
this.icon = input('');
|
18
|
+
this.iconPosition = input('left');
|
19
|
+
this.animation = input(false);
|
20
|
+
this.isLoading = input(false);
|
21
|
+
this.isDisabled = input(false);
|
22
|
+
this.isInvisible = input(false);
|
23
|
+
this.width = input('125px');
|
24
|
+
this.minWidth = input('30px');
|
25
|
+
this.height = input('40px');
|
26
|
+
this.minHeight = input('30px');
|
27
|
+
this.marginTop = input('0px');
|
28
|
+
this.marginRight = input('0px');
|
29
|
+
this.marginBottom = input('0px');
|
30
|
+
this.marginLeft = input('0px');
|
31
|
+
this.path = input([]);
|
32
|
+
this.tooltipPosition = input('left');
|
33
|
+
//Outputs
|
34
|
+
this.onClick = new EventEmitter();
|
35
|
+
//computed
|
36
|
+
this._isEnable = computed(() => {
|
37
|
+
return !this.isLoading() && !this.isDisabled() && !this.isInvisible();
|
38
|
+
});
|
39
|
+
//computed
|
40
|
+
this._icon = computed(() => {
|
41
|
+
switch (this.icon()) {
|
42
|
+
case 'new': return 'fa-solid fa-plus fa-lg';
|
43
|
+
case 'save': return 'fa-solid fa-floppy-disk fa-lg';
|
44
|
+
case 'cancel': return 'fa-solid fa-xmark fa-lg';
|
45
|
+
case 'import': return 'fa-solid fa-file-arrow-up fa-lg';
|
46
|
+
case 'excel': return 'bi bi-filetype-xlsx fa-lg';
|
47
|
+
case 'menu': return 'fa-solid fa-bars';
|
48
|
+
case 'delete': return 'fa-solid fa-trash-can';
|
49
|
+
case 'edit': return 'fa-solid fa-pen fa-lg';
|
50
|
+
case 'go': return 'bi bi-box-arrow-right';
|
51
|
+
case 'back': return 'bi bi-box-arrow-left';
|
52
|
+
default: return '';
|
53
|
+
}
|
54
|
+
});
|
55
|
+
}
|
56
|
+
set tooltip(value) {
|
57
|
+
this._tooltip = value;
|
58
|
+
if (value && this._tooltipElement) {
|
59
|
+
this._tooltipElement.setContent({ '.tooltip-inner': this._tooltip });
|
60
|
+
}
|
61
|
+
}
|
62
|
+
ngOnInit() {
|
63
|
+
this.SetToolTip();
|
64
|
+
this.SetEvents();
|
65
|
+
}
|
66
|
+
ngOnDestroy() {
|
67
|
+
if (this._tooltipElement) {
|
68
|
+
Tools.Sleep().then(() => this._tooltipElement.dispose());
|
69
|
+
}
|
70
|
+
}
|
71
|
+
/** */
|
72
|
+
SetEvents() {
|
73
|
+
Tools.Sleep().then(() => {
|
74
|
+
this._element = document.getElementById(`${this._id}-inner-button`);
|
75
|
+
if (Tools.IsNotNull(this._element)) {
|
76
|
+
this._element.addEventListener('focus', () => {
|
77
|
+
if (!this._isEnable())
|
78
|
+
this.Blur();
|
79
|
+
});
|
80
|
+
}
|
81
|
+
});
|
82
|
+
}
|
83
|
+
SetToolTip() {
|
84
|
+
Tools.Sleep().then(() => {
|
85
|
+
const htmlElement = document.getElementById(`${this._id}-container`);
|
86
|
+
if (Tools.IsNotNull(htmlElement)) {
|
87
|
+
htmlElement.addEventListener('mouseleave', () => {
|
88
|
+
if (Tools.IsNotNull(htmlElement) && Tools.IsNotNull(this._tooltipElement)) {
|
89
|
+
this._tooltipElement.hide();
|
90
|
+
}
|
91
|
+
});
|
92
|
+
this._tooltipElement = new Tooltip(htmlElement, {
|
93
|
+
html: true,
|
94
|
+
title: this._tooltip,
|
95
|
+
placement: this.tooltipPosition
|
96
|
+
});
|
97
|
+
}
|
98
|
+
});
|
99
|
+
}
|
100
|
+
/** */
|
101
|
+
Click(event) {
|
102
|
+
if (this._isEnable()) {
|
103
|
+
this.onClick.emit(event);
|
104
|
+
}
|
105
|
+
this.Blur();
|
106
|
+
}
|
107
|
+
/** */
|
108
|
+
Focus(timeout = 0) {
|
109
|
+
Tools.Sleep(timeout).then(() => {
|
110
|
+
if (this._isEnable())
|
111
|
+
this._element.focus();
|
112
|
+
});
|
113
|
+
}
|
114
|
+
/** */
|
115
|
+
Blur() {
|
116
|
+
Tools.Sleep().then(() => {
|
117
|
+
this._element.blur();
|
118
|
+
});
|
119
|
+
}
|
120
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoerButton, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
121
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: CoerButton, selector: "coer-button", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconPosition: { classPropertyName: "iconPosition", publicName: "iconPosition", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, marginTop: { classPropertyName: "marginTop", publicName: "marginTop", isSignal: true, isRequired: false, transformFunction: null }, marginRight: { classPropertyName: "marginRight", publicName: "marginRight", isSignal: true, isRequired: false, transformFunction: null }, marginBottom: { classPropertyName: "marginBottom", publicName: "marginBottom", isSignal: true, isRequired: false, transformFunction: null }, marginLeft: { classPropertyName: "marginLeft", publicName: "marginLeft", isSignal: true, isRequired: false, transformFunction: null }, path: { classPropertyName: "path", publicName: "path", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div [ngClass]=\"{ 'coer-button': true, 'invisible': isInvisible() }\">\r\n <a [id]=\"_id + '-container'\"\r\n [routerLink]=\"(path().length > 0 && _isEnable()) ? path() : null\"\r\n [ngClass]=\"{ 'loading': isLoading(), 'animate__animated animate__zoomIn': true, 'animate__disabled': !animation() }\"\r\n [ngStyle]=\"{ 'margin-top': marginTop(), 'margin-right': marginRight(), 'margin-bottom': marginBottom(), 'margin-left': marginLeft() }\">\r\n @if(type() =='filled' || type() == 'outline') {\r\n <button mat-button\r\n [id]=\"_id + '-inner-button'\"\r\n type=\"button\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-filled': (color() == 'primary' && type() =='filled'),\r\n 'secondary-filled': (color() == 'secondary' && type() =='filled'),\r\n 'success-filled': (color() == 'success' && type() =='filled'),\r\n 'warning-filled': (color() == 'warning' && type() =='filled'),\r\n 'danger-filled': (color() == 'danger' && type() =='filled'),\r\n 'navigation-filled': (color() == 'navigation' && type() =='filled'),\r\n 'primary-outline': (color() == 'primary' && type() =='outline'),\r\n 'secondary-outline': (color() == 'secondary' && type() =='outline'),\r\n 'success-outline': (color() == 'success' && type() =='outline'),\r\n 'warning-outline': (color() == 'warning' && type() =='outline'),\r\n 'danger-outline': (color() == 'danger' && type() =='outline'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': isDisabled(),\r\n 'cursor-wait': isLoading()\r\n }\"\r\n [ngStyle]=\"{\r\n 'width': width(),\r\n 'min-width': minWidth(),\r\n 'height': height(),\r\n 'min-height': minHeight()\r\n }\">\r\n <span class=\"slot\" *ngIf=\"!isLoading(); else loading\" >\r\n <span *ngIf=\"(iconPosition() == 'left')\">\r\n <i [class]=\"_icon()\"></i>\r\n </span>\r\n\r\n <span [ngClass]=\"{ 'ms-2': (iconPosition() == 'left'), 'me-2': (iconPosition() == 'right') }\">\r\n <ng-content></ng-content>\r\n </span>\r\n\r\n <span *ngIf=\"(iconPosition() == 'right')\">\r\n <i [class]=\"_icon()\"></i>\r\n </span>\r\n </span>\r\n\r\n <ng-template #loading>\r\n <span class=\"slot fa-fade\">\r\n <span class=\"me-2\"> Loading </span>\r\n <i class=\"spinner-border\"></i>\r\n </span>\r\n </ng-template>\r\n </button>\r\n }\r\n\r\n @else {\r\n @if (type() == 'icon') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-filled': (color() == 'primary'),\r\n 'secondary-filled': (color() == 'secondary'),\r\n 'success-filled': (color() == 'success'),\r\n 'warning-filled': (color() == 'warning'),\r\n 'danger-filled': (color() == 'danger'),\r\n 'navigation-filled': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'cursor-wait': isLoading()\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n\r\n @else if (type() == 'icon-outline') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-outline': (color() == 'primary'),\r\n 'secondary-outline': (color() == 'secondary'),\r\n 'success-outline': (color() == 'success'),\r\n 'warning-outline': (color() == 'warning'),\r\n 'danger-outline': (color() == 'danger'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'cursor-wait': isLoading()\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n\r\n @else if (type() == 'icon-no-border') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-outline': (color() == 'primary'),\r\n 'secondary-outline': (color() == 'secondary'),\r\n 'success-outline': (color() == 'success'),\r\n 'warning-outline': (color() == 'warning'),\r\n 'danger-outline': (color() == 'danger'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'icon-no-border': true\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n }\r\n </a>\r\n</div>", styles: ["*{--blue: #0d6efd;--gray: #6c757d;--green: #198754;--yellow: #ffc107;--red: #dc3545;--white: #f5f5f5;--black: #252525;--orange: #fd6031}.text-blue{color:#0d6efd!important}.text-blue-bold{color:#0d6efd!important;font-weight:700!important}.background-blue{background-color:#0d6efd!important}.background-border-blue{background-color:#0d6efd!important;border-color:#0d6efd!important}.border-blue{border-color:#0d6efd!important}.text-gray{color:#6c757d!important}.text-gray-bold{color:#6c757d!important;font-weight:700!important}.background-gray{background-color:#6c757d!important}.background-border-gray{background-color:#6c757d!important;border-color:#6c757d!important}.border-gray{border-color:#6c757d!important}.text-green{color:#198754!important}.text-green-bold{color:#198754!important;font-weight:700!important}.background-green{background-color:#198754!important}.background-border-green{background-color:#198754!important;border-color:#198754!important}.border-green{border-color:#198754!important}.text-yellow{color:#ffc107!important}.text-yellow-bold{color:#ffc107!important;font-weight:700!important}.background-yellow{background-color:#ffc107!important}.background-border-yellow{background-color:#ffc107!important;border-color:#ffc107!important}.border-yellow{border-color:#ffc107!important}.text-red{color:#dc3545!important}.text-red-bold{color:#dc3545!important;font-weight:700!important}.background-red{background-color:#dc3545!important}.background-border-red{background-color:#dc3545!important;border-color:#dc3545!important}.border-red{border-color:#dc3545!important}.text-white{color:#f5f5f5!important}.text-white-bold{color:#f5f5f5!important;font-weight:700!important}.background-white{background-color:#f5f5f5!important}.background-border-white{background-color:#f5f5f5!important;border-color:#f5f5f5!important}.border-white{border-color:#f5f5f5!important}.text-black{color:#252525!important}.text-black-bold{color:#252525!important;font-weight:700!important}.background-black{background-color:#252525!important}.background-border-black{background-color:#252525!important;border-color:#252525!important}.border-black{border-color:#252525!important}.text-orange{color:#fd6031!important}.text-orange-bold{color:#fd6031!important;font-weight:700!important}.background-orange{background-color:#fd6031!important}.background-border-orange{background-color:#fd6031!important;border-color:#fd6031!important}.border-orange{border-color:#fd6031!important}coer-button{display:contents!important}div.coer-button{display:contents!important}div.coer-button a{display:inline-block!important}div.coer-button a.animate__disabled{animation-duration:0s!important}div.coer-button button{font-size:17px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}div.coer-button .slot{width:100px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-overflow:ellipsis!important;overflow:hidden!important}div.coer-button button.primary-filled{background-color:#0d6efd!important;color:#f5f5f5!important}div.coer-button button.secondary-filled{background-color:#6c757d!important;color:#f5f5f5!important}div.coer-button button.success-filled{background-color:#198754!important;color:#f5f5f5!important}div.coer-button button.warning-filled{background-color:#ffc107!important;color:#252525!important}div.coer-button button.danger-filled{background-color:#dc3545!important;color:#f5f5f5!important}div.coer-button button.navigation-filled{background-color:#fd6031!important;color:#f5f5f5!important}div.coer-button button.primary-outline{background-color:#fff!important;border:1px solid #0d6efd!important;color:#0d6efd!important}div.coer-button button.secondary-outline{background-color:#fff!important;border:1px solid #6c757d!important;color:#6c757d!important}div.coer-button button.success-outline{background-color:#fff!important;border:1px solid #198754!important;color:#198754!important}div.coer-button button.warning-outline{background-color:#fff!important;border:1px solid #ffc107!important;color:#ffc107!important}div.coer-button button.danger-outline{background-color:#fff!important;border:1px solid #dc3545!important;color:#dc3545!important}div.coer-button button.navigation-outline{background-color:#fff!important;border:1px solid #fd6031!important;color:#fd6031!important}div.coer-button button.primary-filled:not(.readonly):hover,div.coer-button button.primary-filled:not(.readonly):focus,div.coer-button button.primary-outline:not(.readonly):hover,div.coer-button button.primary-outline:not(.readonly):focus,div.coer-button button.secondary-filled:not(.readonly):hover,div.coer-button button.secondary-filled:not(.readonly):focus,div.coer-button button.secondary-outline:not(.readonly):hover,div.coer-button button.secondary-outline:not(.readonly):focus,div.coer-button button.success-filled:not(.readonly):hover,div.coer-button button.success-filled:not(.readonly):focus,div.coer-button button.success-outline:not(.readonly):hover,div.coer-button button.success-outline:not(.readonly):focus,div.coer-button button.warning-filled:not(.readonly):hover,div.coer-button button.warning-filled:not(.readonly):focus,div.coer-button button.warning-outline:not(.readonly):hover,div.coer-button button.warning-outline:not(.readonly):focus,div.coer-button button.danger-filled:not(.readonly):hover,div.coer-button button.danger-filled:not(.readonly):focus,div.coer-button button.danger-outline:not(.readonly):hover,div.coer-button button.danger-outline:not(.readonly):focus{filter:brightness(1.1)!important}div.coer-button button.primary-filled:not(.readonly):focus,div.coer-button button.primary-outline:not(.readonly):focus{box-shadow:0 0 20px #0d6efd!important}div.coer-button button.secondary-filled:not(.readonly):focus,div.coer-button button.secondary-outline:not(.readonly):focus{box-shadow:0 0 20px #6c757d!important}div.coer-button button.success-filled:not(.readonly):focus,div.coer-button button.success-outline:not(.readonly):focus{box-shadow:0 0 20px #198754!important}div.coer-button button.warning-filled:not(.readonly):focus,div.coer-button button.warning-outline:not(.readonly):focus{box-shadow:0 0 20px #ffc107!important}div.coer-button button.danger-filled:not(.readonly):focus,div.coer-button button.danger-outline:not(.readonly):focus{box-shadow:0 0 20px #dc3545!important}div.coer-button button.navigation-filled:not(.readonly):focus,div.coer-button button.navigation-outline:not(.readonly):focus{box-shadow:0 0 20px #fd6031!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button{width:40px!important;height:40px!important;padding:0!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border{width:25px!important;height:25px!important;background-color:transparent!important;border:none!important;overflow:visible!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border *{font-size:medium!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border i.bi-box-arrow-left,div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border i.bi-box-arrow-in-right{font-size:20px!important}div.coer-button button.readonly,div.coer-button button.readonly:hover,div.coer-button button.readonly:focus{background-color:#dfdede!important;border-color:#dfdede!important;color:#fff!important}div.coer-button coer-button[ishidden=true],div.coer-button coer-button[ng-reflect-invisible=true]{position:relative!important;top:10000vh;left:10000vw}div.coer-button a.loading{cursor:wait!important}div.coer-button i{vertical-align:middle!important}div.coer-button i.spinner-border{width:15px!important;height:15px!important;font-size:16px!important}div.coer-button span{font-weight:700!important}div#coer-tool-bar coer-button *{color:#fd6031!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
|
122
|
+
}
|
123
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoerButton, decorators: [{
|
124
|
+
type: Component,
|
125
|
+
args: [{ selector: 'coer-button', template: "<div [ngClass]=\"{ 'coer-button': true, 'invisible': isInvisible() }\">\r\n <a [id]=\"_id + '-container'\"\r\n [routerLink]=\"(path().length > 0 && _isEnable()) ? path() : null\"\r\n [ngClass]=\"{ 'loading': isLoading(), 'animate__animated animate__zoomIn': true, 'animate__disabled': !animation() }\"\r\n [ngStyle]=\"{ 'margin-top': marginTop(), 'margin-right': marginRight(), 'margin-bottom': marginBottom(), 'margin-left': marginLeft() }\">\r\n @if(type() =='filled' || type() == 'outline') {\r\n <button mat-button\r\n [id]=\"_id + '-inner-button'\"\r\n type=\"button\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-filled': (color() == 'primary' && type() =='filled'),\r\n 'secondary-filled': (color() == 'secondary' && type() =='filled'),\r\n 'success-filled': (color() == 'success' && type() =='filled'),\r\n 'warning-filled': (color() == 'warning' && type() =='filled'),\r\n 'danger-filled': (color() == 'danger' && type() =='filled'),\r\n 'navigation-filled': (color() == 'navigation' && type() =='filled'),\r\n 'primary-outline': (color() == 'primary' && type() =='outline'),\r\n 'secondary-outline': (color() == 'secondary' && type() =='outline'),\r\n 'success-outline': (color() == 'success' && type() =='outline'),\r\n 'warning-outline': (color() == 'warning' && type() =='outline'),\r\n 'danger-outline': (color() == 'danger' && type() =='outline'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': isDisabled(),\r\n 'cursor-wait': isLoading()\r\n }\"\r\n [ngStyle]=\"{\r\n 'width': width(),\r\n 'min-width': minWidth(),\r\n 'height': height(),\r\n 'min-height': minHeight()\r\n }\">\r\n <span class=\"slot\" *ngIf=\"!isLoading(); else loading\" >\r\n <span *ngIf=\"(iconPosition() == 'left')\">\r\n <i [class]=\"_icon()\"></i>\r\n </span>\r\n\r\n <span [ngClass]=\"{ 'ms-2': (iconPosition() == 'left'), 'me-2': (iconPosition() == 'right') }\">\r\n <ng-content></ng-content>\r\n </span>\r\n\r\n <span *ngIf=\"(iconPosition() == 'right')\">\r\n <i [class]=\"_icon()\"></i>\r\n </span>\r\n </span>\r\n\r\n <ng-template #loading>\r\n <span class=\"slot fa-fade\">\r\n <span class=\"me-2\"> Loading </span>\r\n <i class=\"spinner-border\"></i>\r\n </span>\r\n </ng-template>\r\n </button>\r\n }\r\n\r\n @else {\r\n @if (type() == 'icon') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-filled': (color() == 'primary'),\r\n 'secondary-filled': (color() == 'secondary'),\r\n 'success-filled': (color() == 'success'),\r\n 'warning-filled': (color() == 'warning'),\r\n 'danger-filled': (color() == 'danger'),\r\n 'navigation-filled': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'cursor-wait': isLoading()\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n\r\n @else if (type() == 'icon-outline') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-outline': (color() == 'primary'),\r\n 'secondary-outline': (color() == 'secondary'),\r\n 'success-outline': (color() == 'success'),\r\n 'warning-outline': (color() == 'warning'),\r\n 'danger-outline': (color() == 'danger'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'cursor-wait': isLoading()\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n\r\n @else if (type() == 'icon-no-border') {\r\n <button mat-icon-button\r\n [id]=\"_id + '-inner-button'\"\r\n (click)=\"Click($event)\"\r\n [ngClass]=\"{\r\n 'primary-outline': (color() == 'primary'),\r\n 'secondary-outline': (color() == 'secondary'),\r\n 'success-outline': (color() == 'success'),\r\n 'warning-outline': (color() == 'warning'),\r\n 'danger-outline': (color() == 'danger'),\r\n 'navigation-outline': (color() == 'navigation'),\r\n 'readonly': (isDisabled() || isLoading()),\r\n 'icon-no-border': true\r\n }\">\r\n <i [class]=\"_icon()\"></i>\r\n </button>\r\n }\r\n }\r\n </a>\r\n</div>", styles: ["*{--blue: #0d6efd;--gray: #6c757d;--green: #198754;--yellow: #ffc107;--red: #dc3545;--white: #f5f5f5;--black: #252525;--orange: #fd6031}.text-blue{color:#0d6efd!important}.text-blue-bold{color:#0d6efd!important;font-weight:700!important}.background-blue{background-color:#0d6efd!important}.background-border-blue{background-color:#0d6efd!important;border-color:#0d6efd!important}.border-blue{border-color:#0d6efd!important}.text-gray{color:#6c757d!important}.text-gray-bold{color:#6c757d!important;font-weight:700!important}.background-gray{background-color:#6c757d!important}.background-border-gray{background-color:#6c757d!important;border-color:#6c757d!important}.border-gray{border-color:#6c757d!important}.text-green{color:#198754!important}.text-green-bold{color:#198754!important;font-weight:700!important}.background-green{background-color:#198754!important}.background-border-green{background-color:#198754!important;border-color:#198754!important}.border-green{border-color:#198754!important}.text-yellow{color:#ffc107!important}.text-yellow-bold{color:#ffc107!important;font-weight:700!important}.background-yellow{background-color:#ffc107!important}.background-border-yellow{background-color:#ffc107!important;border-color:#ffc107!important}.border-yellow{border-color:#ffc107!important}.text-red{color:#dc3545!important}.text-red-bold{color:#dc3545!important;font-weight:700!important}.background-red{background-color:#dc3545!important}.background-border-red{background-color:#dc3545!important;border-color:#dc3545!important}.border-red{border-color:#dc3545!important}.text-white{color:#f5f5f5!important}.text-white-bold{color:#f5f5f5!important;font-weight:700!important}.background-white{background-color:#f5f5f5!important}.background-border-white{background-color:#f5f5f5!important;border-color:#f5f5f5!important}.border-white{border-color:#f5f5f5!important}.text-black{color:#252525!important}.text-black-bold{color:#252525!important;font-weight:700!important}.background-black{background-color:#252525!important}.background-border-black{background-color:#252525!important;border-color:#252525!important}.border-black{border-color:#252525!important}.text-orange{color:#fd6031!important}.text-orange-bold{color:#fd6031!important;font-weight:700!important}.background-orange{background-color:#fd6031!important}.background-border-orange{background-color:#fd6031!important;border-color:#fd6031!important}.border-orange{border-color:#fd6031!important}coer-button{display:contents!important}div.coer-button{display:contents!important}div.coer-button a{display:inline-block!important}div.coer-button a.animate__disabled{animation-duration:0s!important}div.coer-button button{font-size:17px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}div.coer-button .slot{width:100px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-overflow:ellipsis!important;overflow:hidden!important}div.coer-button button.primary-filled{background-color:#0d6efd!important;color:#f5f5f5!important}div.coer-button button.secondary-filled{background-color:#6c757d!important;color:#f5f5f5!important}div.coer-button button.success-filled{background-color:#198754!important;color:#f5f5f5!important}div.coer-button button.warning-filled{background-color:#ffc107!important;color:#252525!important}div.coer-button button.danger-filled{background-color:#dc3545!important;color:#f5f5f5!important}div.coer-button button.navigation-filled{background-color:#fd6031!important;color:#f5f5f5!important}div.coer-button button.primary-outline{background-color:#fff!important;border:1px solid #0d6efd!important;color:#0d6efd!important}div.coer-button button.secondary-outline{background-color:#fff!important;border:1px solid #6c757d!important;color:#6c757d!important}div.coer-button button.success-outline{background-color:#fff!important;border:1px solid #198754!important;color:#198754!important}div.coer-button button.warning-outline{background-color:#fff!important;border:1px solid #ffc107!important;color:#ffc107!important}div.coer-button button.danger-outline{background-color:#fff!important;border:1px solid #dc3545!important;color:#dc3545!important}div.coer-button button.navigation-outline{background-color:#fff!important;border:1px solid #fd6031!important;color:#fd6031!important}div.coer-button button.primary-filled:not(.readonly):hover,div.coer-button button.primary-filled:not(.readonly):focus,div.coer-button button.primary-outline:not(.readonly):hover,div.coer-button button.primary-outline:not(.readonly):focus,div.coer-button button.secondary-filled:not(.readonly):hover,div.coer-button button.secondary-filled:not(.readonly):focus,div.coer-button button.secondary-outline:not(.readonly):hover,div.coer-button button.secondary-outline:not(.readonly):focus,div.coer-button button.success-filled:not(.readonly):hover,div.coer-button button.success-filled:not(.readonly):focus,div.coer-button button.success-outline:not(.readonly):hover,div.coer-button button.success-outline:not(.readonly):focus,div.coer-button button.warning-filled:not(.readonly):hover,div.coer-button button.warning-filled:not(.readonly):focus,div.coer-button button.warning-outline:not(.readonly):hover,div.coer-button button.warning-outline:not(.readonly):focus,div.coer-button button.danger-filled:not(.readonly):hover,div.coer-button button.danger-filled:not(.readonly):focus,div.coer-button button.danger-outline:not(.readonly):hover,div.coer-button button.danger-outline:not(.readonly):focus{filter:brightness(1.1)!important}div.coer-button button.primary-filled:not(.readonly):focus,div.coer-button button.primary-outline:not(.readonly):focus{box-shadow:0 0 20px #0d6efd!important}div.coer-button button.secondary-filled:not(.readonly):focus,div.coer-button button.secondary-outline:not(.readonly):focus{box-shadow:0 0 20px #6c757d!important}div.coer-button button.success-filled:not(.readonly):focus,div.coer-button button.success-outline:not(.readonly):focus{box-shadow:0 0 20px #198754!important}div.coer-button button.warning-filled:not(.readonly):focus,div.coer-button button.warning-outline:not(.readonly):focus{box-shadow:0 0 20px #ffc107!important}div.coer-button button.danger-filled:not(.readonly):focus,div.coer-button button.danger-outline:not(.readonly):focus{box-shadow:0 0 20px #dc3545!important}div.coer-button button.navigation-filled:not(.readonly):focus,div.coer-button button.navigation-outline:not(.readonly):focus{box-shadow:0 0 20px #fd6031!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button{width:40px!important;height:40px!important;padding:0!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border{width:25px!important;height:25px!important;background-color:transparent!important;border:none!important;overflow:visible!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border *{font-size:medium!important}div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border i.bi-box-arrow-left,div.coer-button button.mdc-icon-button.mat-mdc-icon-button.icon-no-border i.bi-box-arrow-in-right{font-size:20px!important}div.coer-button button.readonly,div.coer-button button.readonly:hover,div.coer-button button.readonly:focus{background-color:#dfdede!important;border-color:#dfdede!important;color:#fff!important}div.coer-button coer-button[ishidden=true],div.coer-button coer-button[ng-reflect-invisible=true]{position:relative!important;top:10000vh;left:10000vw}div.coer-button a.loading{cursor:wait!important}div.coer-button i{vertical-align:middle!important}div.coer-button i.spinner-border{width:15px!important;height:15px!important;font-size:16px!important}div.coer-button span{font-weight:700!important}div#coer-tool-bar coer-button *{color:#fd6031!important}\n"] }]
|
126
|
+
}], propDecorators: { id: [{
|
127
|
+
type: Input
|
128
|
+
}], tooltip: [{
|
129
|
+
type: Input
|
130
|
+
}], onClick: [{
|
131
|
+
type: Output
|
132
|
+
}] } });
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lci1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29lci1lbGVtZW50cy9jb21wb25lbnRzL2xpYi9jb2VyLWJ1dHRvbi9jb2VyLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2VyLWVsZW1lbnRzL2NvbXBvbmVudHMvbGliL2NvZXItYnV0dG9uL2NvZXItYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7O0FBT3BDLE1BQU0sT0FBTyxVQUFVO0lBTHZCO1FBT0ksV0FBVztRQUNELFFBQUcsR0FBVyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTdDLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFHOUIsUUFBUTtRQUNDLE9BQUUsR0FBVyxFQUFFLENBQUM7UUFDbEIsVUFBSyxHQUFHLEtBQUssQ0FBd0YsU0FBUyxDQUFDLENBQUM7UUFDaEgsU0FBSSxHQUFHLEtBQUssQ0FBbUUsUUFBUSxDQUFDLENBQUM7UUFDekYsU0FBSSxHQUFHLEtBQUssQ0FBbUcsRUFBRSxDQUFDLENBQUM7UUFDbkgsaUJBQVksR0FBRyxLQUFLLENBQW1CLE1BQU0sQ0FBQyxDQUFDO1FBQy9DLGNBQVMsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbEMsY0FBUyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNsQyxlQUFVLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLFVBQUssR0FBRyxLQUFLLENBQVMsT0FBTyxDQUFDLENBQUM7UUFDL0IsYUFBUSxHQUFHLEtBQUssQ0FBUyxNQUFNLENBQUMsQ0FBQztRQUNqQyxXQUFNLEdBQUcsS0FBSyxDQUFTLE1BQU0sQ0FBQyxDQUFDO1FBQy9CLGNBQVMsR0FBRyxLQUFLLENBQVMsTUFBTSxDQUFDLENBQUM7UUFDbEMsY0FBUyxHQUFHLEtBQUssQ0FBUyxLQUFLLENBQUMsQ0FBQztRQUNqQyxnQkFBVyxHQUFHLEtBQUssQ0FBUyxLQUFLLENBQUMsQ0FBQztRQUNuQyxpQkFBWSxHQUFHLEtBQUssQ0FBUyxLQUFLLENBQUMsQ0FBQztRQUNwQyxlQUFVLEdBQUcsS0FBSyxDQUFTLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLFNBQUksR0FBRyxLQUFLLENBQStCLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLG9CQUFlLEdBQUcsS0FBSyxDQUFzQyxNQUFNLENBQUMsQ0FBQztRQVM1RSxTQUFTO1FBQ0MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFHbkQsVUFBVTtRQUNBLGNBQVMsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFO1lBQ3pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDMUUsQ0FBQyxDQUFDLENBQUM7UUFHSCxVQUFVO1FBQ0EsVUFBSyxHQUFHLFFBQVEsQ0FBUyxHQUFHLEVBQUU7WUFDcEMsUUFBTyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxLQUFLLENBQUMsQ0FBQyxPQUFPLHdCQUF3QixDQUFDO2dCQUM1QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sK0JBQStCLENBQUM7Z0JBQ3BELEtBQUssUUFBUSxDQUFDLENBQUMsT0FBTyx5QkFBeUIsQ0FBQztnQkFDaEQsS0FBSyxRQUFRLENBQUMsQ0FBQyxPQUFPLGlDQUFpQyxDQUFDO2dCQUN4RCxLQUFLLE9BQU8sQ0FBQyxDQUFDLE9BQU8sMkJBQTJCLENBQUM7Z0JBQ2pELEtBQUssTUFBTSxDQUFDLENBQUMsT0FBTyxrQkFBa0IsQ0FBQztnQkFDdkMsS0FBSyxRQUFRLENBQUMsQ0FBQyxPQUFPLHVCQUF1QixDQUFDO2dCQUM5QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sdUJBQXVCLENBQUM7Z0JBQzVDLEtBQUssSUFBSSxDQUFDLENBQUMsT0FBTyx1QkFBdUIsQ0FBQztnQkFDMUMsS0FBSyxNQUFNLENBQUMsQ0FBQyxPQUFPLHNCQUFzQixDQUFDO2dCQUMzQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7S0EwRU47SUExR0csSUFBYSxPQUFPLENBQUMsS0FBYTtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN6RSxDQUFDO0lBQ0wsQ0FBQztJQThCRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzdELENBQUM7SUFDTCxDQUFDO0lBR0QsTUFBTTtJQUNFLFNBQVM7UUFDYixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxlQUFlLENBQXVCLENBQUM7WUFFMUYsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO3dCQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDdkMsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBR08sVUFBVTtRQUNkLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3BCLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUUsQ0FBQztZQUV0RSxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsV0FBVyxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7b0JBQzVDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO3dCQUN4RSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNoQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUVILElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxPQUFPLENBQUMsV0FBVyxFQUFFO29CQUM1QyxJQUFJLEVBQUUsSUFBSTtvQkFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3BCLFNBQVMsRUFBRSxJQUFJLENBQUMsZUFBZTtpQkFDbEMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdELE1BQU07SUFDSSxLQUFLLENBQUMsS0FBaUI7UUFDN0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFHRCxNQUFNO0lBQ0MsS0FBSyxDQUFDLFVBQWtCLENBQUM7UUFDNUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdELE1BQU07SUFDQyxJQUFJO1FBQ1AsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBdElRLFVBQVU7bUdBQVYsVUFBVSw0bkZDVHZCLG91TEErR007OzRGRHRHTyxVQUFVO2tCQUx0QixTQUFTOytCQUNJLGFBQWE7OEJBYWQsRUFBRTtzQkFBVixLQUFLO2dCQW9CTyxPQUFPO3NCQUFuQixLQUFLO2dCQVFJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIGlucHV0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb29scyB9IGZyb20gJ2NvZXItZWxlbWVudHMvdG9vbHMnXHJcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdib290c3RyYXAnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NvZXItYnV0dG9uJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2VyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vY29lci1idXR0b24uY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29lckJ1dHRvbiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICAvL1ZhcmlhYmxlc1xyXG4gICAgcHJvdGVjdGVkIF9pZDogc3RyaW5nID0gVG9vbHMuR2V0R3VpZCgnY29lci1idXR0b24nKTtcclxuICAgIHByaXZhdGUgX2VsZW1lbnQhOiBIVE1MQnV0dG9uRWxlbWVudDtcclxuICAgIHByaXZhdGUgX3Rvb2x0aXA6IHN0cmluZyA9ICcnO1xyXG4gICAgcHJpdmF0ZSBfdG9vbHRpcEVsZW1lbnQhOiBUb29sdGlwO1xyXG5cclxuICAgIC8vSW5wdXRzXHJcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nID0gJyc7XHJcbiAgICBwdWJsaWMgY29sb3IgPSBpbnB1dDwnZGVmYXVsdCcgfCAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInIHwgJ25hdmlnYXRpb24nPignZGVmYXVsdCcpO1xyXG4gICAgcHVibGljIHR5cGUgPSBpbnB1dDwnZmlsbGVkJyB8ICdvdXRsaW5lJyB8ICdpY29uJ3wgJ2ljb24tb3V0bGluZScgfCAnaWNvbi1uby1ib3JkZXInPignZmlsbGVkJyk7XHJcbiAgICBwdWJsaWMgaWNvbiA9IGlucHV0PCduZXcnIHwgJ3NhdmUnIHwgJ2NhbmNlbCcgfCAnaW1wb3J0JyB8ICdleGNlbCcgfCAnbWVudScgfCAnZGVsZXRlJyB8ICdlZGl0JyB8ICdnbycgfCAnYmFjaycgfCAnJz4oJycpO1xyXG4gICAgcHVibGljIGljb25Qb3NpdGlvbiA9IGlucHV0PCdsZWZ0JyB8ICdyaWdodCc+KCdsZWZ0Jyk7XHJcbiAgICBwdWJsaWMgYW5pbWF0aW9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgcHVibGljIGlzTG9hZGluZyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuICAgIHB1YmxpYyBpc0Rpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgcHVibGljIGlzSW52aXNpYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgcHVibGljIHdpZHRoID0gaW5wdXQ8c3RyaW5nPignMTI1cHgnKTtcclxuICAgIHB1YmxpYyBtaW5XaWR0aCA9IGlucHV0PHN0cmluZz4oJzMwcHgnKTtcclxuICAgIHB1YmxpYyBoZWlnaHQgPSBpbnB1dDxzdHJpbmc+KCc0MHB4Jyk7XHJcbiAgICBwdWJsaWMgbWluSGVpZ2h0ID0gaW5wdXQ8c3RyaW5nPignMzBweCcpO1xyXG4gICAgcHVibGljIG1hcmdpblRvcCA9IGlucHV0PHN0cmluZz4oJzBweCcpO1xyXG4gICAgcHVibGljIG1hcmdpblJpZ2h0ID0gaW5wdXQ8c3RyaW5nPignMHB4Jyk7XHJcbiAgICBwdWJsaWMgbWFyZ2luQm90dG9tID0gaW5wdXQ8c3RyaW5nPignMHB4Jyk7XHJcbiAgICBwdWJsaWMgbWFyZ2luTGVmdCA9IGlucHV0PHN0cmluZz4oJzBweCcpO1xyXG4gICAgcHVibGljIHBhdGggPSBpbnB1dDxzdHJpbmcgfCAoc3RyaW5nIHwgbnVtYmVyKVtdPihbXSk7XHJcbiAgICBwdWJsaWMgdG9vbHRpcFBvc2l0aW9uID0gaW5wdXQ8J3RvcCcgfCAncmlnaHQnIHwgJ2JvdHRvbScgfCAnbGVmdCc+KCdsZWZ0Jyk7XHJcblxyXG4gICAgQElucHV0KCkgc2V0IHRvb2x0aXAodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3Rvb2x0aXAgPSB2YWx1ZTtcclxuICAgICAgICBpZiAodmFsdWUgJiYgdGhpcy5fdG9vbHRpcEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgdGhpcy5fdG9vbHRpcEVsZW1lbnQuc2V0Q29udGVudCh7ICcudG9vbHRpcC1pbm5lcic6IHRoaXMuX3Rvb2x0aXAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vT3V0cHV0c1xyXG4gICAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG5cclxuICAgIC8vY29tcHV0ZWRcclxuICAgIHByb3RlY3RlZCBfaXNFbmFibGUgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzTG9hZGluZygpICYmICF0aGlzLmlzRGlzYWJsZWQoKSAmJiAhdGhpcy5pc0ludmlzaWJsZSgpO1xyXG4gICAgfSk7XHJcblxyXG5cclxuICAgIC8vY29tcHV0ZWRcclxuICAgIHByb3RlY3RlZCBfaWNvbiA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4ge1xyXG4gICAgICAgIHN3aXRjaCh0aGlzLmljb24oKSkge1xyXG4gICAgICAgICAgICBjYXNlICduZXcnOiByZXR1cm4gJ2ZhLXNvbGlkIGZhLXBsdXMgZmEtbGcnO1xyXG4gICAgICAgICAgICBjYXNlICdzYXZlJzogcmV0dXJuICdmYS1zb2xpZCBmYS1mbG9wcHktZGlzayBmYS1sZyc7XHJcbiAgICAgICAgICAgIGNhc2UgJ2NhbmNlbCc6IHJldHVybiAnZmEtc29saWQgZmEteG1hcmsgZmEtbGcnO1xyXG4gICAgICAgICAgICBjYXNlICdpbXBvcnQnOiByZXR1cm4gJ2ZhLXNvbGlkIGZhLWZpbGUtYXJyb3ctdXAgZmEtbGcnO1xyXG4gICAgICAgICAgICBjYXNlICdleGNlbCc6IHJldHVybiAnYmkgYmktZmlsZXR5cGUteGxzeCBmYS1sZyc7XHJcbiAgICAgICAgICAgIGNhc2UgJ21lbnUnOiByZXR1cm4gJ2ZhLXNvbGlkIGZhLWJhcnMnO1xyXG4gICAgICAgICAgICBjYXNlICdkZWxldGUnOiByZXR1cm4gJ2ZhLXNvbGlkIGZhLXRyYXNoLWNhbic7XHJcbiAgICAgICAgICAgIGNhc2UgJ2VkaXQnOiByZXR1cm4gJ2ZhLXNvbGlkIGZhLXBlbiBmYS1sZyc7XHJcbiAgICAgICAgICAgIGNhc2UgJ2dvJzogcmV0dXJuICdiaSBiaS1ib3gtYXJyb3ctcmlnaHQnO1xyXG4gICAgICAgICAgICBjYXNlICdiYWNrJzogcmV0dXJuICdiaSBiaS1ib3gtYXJyb3ctbGVmdCc7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiAnJztcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5TZXRUb29sVGlwKCk7XHJcbiAgICAgICAgdGhpcy5TZXRFdmVudHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBpZiAodGhpcy5fdG9vbHRpcEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgVG9vbHMuU2xlZXAoKS50aGVuKCgpID0+IHRoaXMuX3Rvb2x0aXBFbGVtZW50LmRpc3Bvc2UoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKiogKi9cclxuICAgIHByaXZhdGUgU2V0RXZlbnRzKCk6IHZvaWQge1xyXG4gICAgICAgIFRvb2xzLlNsZWVwKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0aGlzLl9pZH0taW5uZXItYnV0dG9uYCkhIGFzIEhUTUxCdXR0b25FbGVtZW50O1xyXG5cclxuICAgICAgICAgICAgaWYgKFRvb2xzLklzTm90TnVsbCh0aGlzLl9lbGVtZW50KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1cycsICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuX2lzRW5hYmxlKCkpIHRoaXMuQmx1cigpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBTZXRUb29sVGlwKCk6IHZvaWQge1xyXG4gICAgICAgIFRvb2xzLlNsZWVwKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGh0bWxFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYCR7dGhpcy5faWR9LWNvbnRhaW5lcmApITtcclxuXHJcbiAgICAgICAgICAgIGlmIChUb29scy5Jc05vdE51bGwoaHRtbEVsZW1lbnQpKSB7XHJcbiAgICAgICAgICAgICAgICBodG1sRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChUb29scy5Jc05vdE51bGwoaHRtbEVsZW1lbnQpICYmIFRvb2xzLklzTm90TnVsbCh0aGlzLl90b29sdGlwRWxlbWVudCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdG9vbHRpcEVsZW1lbnQuaGlkZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuX3Rvb2x0aXBFbGVtZW50ID0gbmV3IFRvb2x0aXAoaHRtbEVsZW1lbnQsIHtcclxuICAgICAgICAgICAgICAgICAgICBodG1sOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiB0aGlzLl90b29sdGlwLFxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy50b29sdGlwUG9zaXRpb25cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHJvdGVjdGVkIENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2lzRW5hYmxlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5CbHVyKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHVibGljIEZvY3VzKHRpbWVvdXQ6IG51bWJlciA9IDApOiB2b2lkIHtcclxuICAgICAgICBUb29scy5TbGVlcCh0aW1lb3V0KS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX2lzRW5hYmxlKCkpIHRoaXMuX2VsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqICovXHJcbiAgICBwdWJsaWMgQmx1cigpOiB2b2lkIHtcclxuICAgICAgICBUb29scy5TbGVlcCgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50LmJsdXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufSIsIjxkaXYgW25nQ2xhc3NdPVwieyAnY29lci1idXR0b24nOiB0cnVlLCAnaW52aXNpYmxlJzogaXNJbnZpc2libGUoKSB9XCI+XHJcbiAgICA8YSBbaWRdPVwiX2lkICsgJy1jb250YWluZXInXCJcclxuICAgICAgICBbcm91dGVyTGlua109XCIocGF0aCgpLmxlbmd0aCA+IDAgJiYgX2lzRW5hYmxlKCkpID8gcGF0aCgpIDogbnVsbFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieyAnbG9hZGluZyc6IGlzTG9hZGluZygpLCAnYW5pbWF0ZV9fYW5pbWF0ZWQgYW5pbWF0ZV9fem9vbUluJzogdHJ1ZSwgJ2FuaW1hdGVfX2Rpc2FibGVkJzogIWFuaW1hdGlvbigpIH1cIlxyXG4gICAgICAgIFtuZ1N0eWxlXT1cInsgJ21hcmdpbi10b3AnOiBtYXJnaW5Ub3AoKSwgJ21hcmdpbi1yaWdodCc6IG1hcmdpblJpZ2h0KCksICdtYXJnaW4tYm90dG9tJzogbWFyZ2luQm90dG9tKCksICdtYXJnaW4tbGVmdCc6IG1hcmdpbkxlZnQoKSAgfVwiPlxyXG4gICAgICAgIEBpZih0eXBlKCkgPT0nZmlsbGVkJyB8fCB0eXBlKCkgPT0gJ291dGxpbmUnKSB7XHJcbiAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW2lkXT1cIl9pZCArICctaW5uZXItYnV0dG9uJ1wiXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAncHJpbWFyeS1maWxsZWQnOiAoY29sb3IoKSA9PSAncHJpbWFyeScgJiYgdHlwZSgpID09J2ZpbGxlZCcpLFxyXG4gICAgICAgICAgICAgICAgICAgICdzZWNvbmRhcnktZmlsbGVkJzogKGNvbG9yKCkgPT0gJ3NlY29uZGFyeScgJiYgdHlwZSgpID09J2ZpbGxlZCcpLFxyXG4gICAgICAgICAgICAgICAgICAgICdzdWNjZXNzLWZpbGxlZCc6IChjb2xvcigpID09ICdzdWNjZXNzJyAmJiB0eXBlKCkgPT0nZmlsbGVkJyksXHJcbiAgICAgICAgICAgICAgICAgICAgJ3dhcm5pbmctZmlsbGVkJzogKGNvbG9yKCkgPT0gJ3dhcm5pbmcnICYmIHR5cGUoKSA9PSdmaWxsZWQnKSxcclxuICAgICAgICAgICAgICAgICAgICAnZGFuZ2VyLWZpbGxlZCc6IChjb2xvcigpID09ICdkYW5nZXInICYmIHR5cGUoKSA9PSdmaWxsZWQnKSxcclxuICAgICAgICAgICAgICAgICAgICAnbmF2aWdhdGlvbi1maWxsZWQnOiAoY29sb3IoKSA9PSAnbmF2aWdhdGlvbicgJiYgdHlwZSgpID09J2ZpbGxlZCcpLFxyXG4gICAgICAgICAgICAgICAgICAgICdwcmltYXJ5LW91dGxpbmUnOiAoY29sb3IoKSA9PSAncHJpbWFyeScgJiYgdHlwZSgpID09J291dGxpbmUnKSxcclxuICAgICAgICAgICAgICAgICAgICAnc2Vjb25kYXJ5LW91dGxpbmUnOiAoY29sb3IoKSA9PSAnc2Vjb25kYXJ5JyAmJiB0eXBlKCkgPT0nb3V0bGluZScpLFxyXG4gICAgICAgICAgICAgICAgICAgICdzdWNjZXNzLW91dGxpbmUnOiAoY29sb3IoKSA9PSAnc3VjY2VzcycgJiYgdHlwZSgpID09J291dGxpbmUnKSxcclxuICAgICAgICAgICAgICAgICAgICAnd2FybmluZy1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ3dhcm5pbmcnICYmIHR5cGUoKSA9PSdvdXRsaW5lJyksXHJcbiAgICAgICAgICAgICAgICAgICAgJ2Rhbmdlci1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ2RhbmdlcicgJiYgdHlwZSgpID09J291dGxpbmUnKSxcclxuICAgICAgICAgICAgICAgICAgICAnbmF2aWdhdGlvbi1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ25hdmlnYXRpb24nKSxcclxuICAgICAgICAgICAgICAgICAgICAncmVhZG9ubHknOiBpc0Rpc2FibGVkKCksXHJcbiAgICAgICAgICAgICAgICAgICAgJ2N1cnNvci13YWl0JzogaXNMb2FkaW5nKClcclxuICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICd3aWR0aCc6IHdpZHRoKCksXHJcbiAgICAgICAgICAgICAgICAgICAgJ21pbi13aWR0aCc6IG1pbldpZHRoKCksXHJcbiAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6IGhlaWdodCgpLFxyXG4gICAgICAgICAgICAgICAgICAgICdtaW4taGVpZ2h0JzogbWluSGVpZ2h0KClcclxuICAgICAgICAgICAgICAgIH1cIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2xvdFwiICpuZ0lmPVwiIWlzTG9hZGluZygpOyBlbHNlIGxvYWRpbmdcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIoaWNvblBvc2l0aW9uKCkgPT0gJ2xlZnQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiX2ljb24oKVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cInsgJ21zLTInOiAoaWNvblBvc2l0aW9uKCkgPT0gJ2xlZnQnKSwgJ21lLTInOiAoaWNvblBvc2l0aW9uKCkgPT0gJ3JpZ2h0JykgfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIihpY29uUG9zaXRpb24oKSA9PSAncmlnaHQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiX2ljb24oKVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNsb2FkaW5nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2xvdCBmYS1mYWRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWUtMlwiPiBMb2FkaW5nIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJzcGlubmVyLWJvcmRlclwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgQGlmICh0eXBlKCkgPT0gJ2ljb24nKSB7XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJfaWQgKyAnLWlubmVyLWJ1dHRvbidcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdwcmltYXJ5LWZpbGxlZCc6IChjb2xvcigpID09ICdwcmltYXJ5JyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzZWNvbmRhcnktZmlsbGVkJzogKGNvbG9yKCkgPT0gJ3NlY29uZGFyeScpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3VjY2Vzcy1maWxsZWQnOiAoY29sb3IoKSA9PSAnc3VjY2VzcycpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnd2FybmluZy1maWxsZWQnOiAoY29sb3IoKSA9PSAnd2FybmluZycpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZGFuZ2VyLWZpbGxlZCc6IChjb2xvcigpID09ICdkYW5nZXInKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ25hdmlnYXRpb24tZmlsbGVkJzogKGNvbG9yKCkgPT0gJ25hdmlnYXRpb24nKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlYWRvbmx5JzogKGlzRGlzYWJsZWQoKSB8fCBpc0xvYWRpbmcoKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdjdXJzb3Itd2FpdCc6IGlzTG9hZGluZygpXHJcbiAgICAgICAgICAgICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpIFtjbGFzc109XCJfaWNvbigpXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBlbHNlIGlmICh0eXBlKCkgPT0gJ2ljb24tb3V0bGluZScpIHtcclxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cIl9pZCArICctaW5uZXItYnV0dG9uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIkNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3ByaW1hcnktb3V0bGluZSc6IChjb2xvcigpID09ICdwcmltYXJ5JyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzZWNvbmRhcnktb3V0bGluZSc6IChjb2xvcigpID09ICdzZWNvbmRhcnknKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N1Y2Nlc3Mtb3V0bGluZSc6IChjb2xvcigpID09ICdzdWNjZXNzJyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd3YXJuaW5nLW91dGxpbmUnOiAoY29sb3IoKSA9PSAnd2FybmluZycpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZGFuZ2VyLW91dGxpbmUnOiAoY29sb3IoKSA9PSAnZGFuZ2VyJyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICduYXZpZ2F0aW9uLW91dGxpbmUnOiAoY29sb3IoKSA9PSAnbmF2aWdhdGlvbicpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVhZG9ubHknOiAoaXNEaXNhYmxlZCgpIHx8IGlzTG9hZGluZygpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2N1cnNvci13YWl0JzogaXNMb2FkaW5nKClcclxuICAgICAgICAgICAgICAgICAgICB9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cIl9pY29uKClcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGVsc2UgaWYgKHR5cGUoKSA9PSAnaWNvbi1uby1ib3JkZXInKSB7XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJfaWQgKyAnLWlubmVyLWJ1dHRvbidcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdwcmltYXJ5LW91dGxpbmUnOiAoY29sb3IoKSA9PSAncHJpbWFyeScpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2Vjb25kYXJ5LW91dGxpbmUnOiAoY29sb3IoKSA9PSAnc2Vjb25kYXJ5JyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdWNjZXNzLW91dGxpbmUnOiAoY29sb3IoKSA9PSAnc3VjY2VzcycpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnd2FybmluZy1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ3dhcm5pbmcnKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2Rhbmdlci1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ2RhbmdlcicpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnbmF2aWdhdGlvbi1vdXRsaW5lJzogKGNvbG9yKCkgPT0gJ25hdmlnYXRpb24nKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlYWRvbmx5JzogKGlzRGlzYWJsZWQoKSB8fCBpc0xvYWRpbmcoKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdpY29uLW5vLWJvcmRlcic6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICB9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cIl9pY29uKClcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIDwvYT5cclxuPC9kaXY+Il19
|
@@ -0,0 +1,83 @@
|
|
1
|
+
import { Component, computed, Input, input, output } from '@angular/core';
|
2
|
+
import { CONTROL_VALUE, ControlValue, Tools } from 'coer-elements/tools';
|
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 "@angular/material/checkbox";
|
7
|
+
export class CoerCheckbox extends ControlValue {
|
8
|
+
constructor() {
|
9
|
+
super(...arguments);
|
10
|
+
//Variables
|
11
|
+
this._value = false;
|
12
|
+
this._id = Tools.GetGuid('coer-checkbox');
|
13
|
+
this._isLoading = true;
|
14
|
+
this.id = input('');
|
15
|
+
this.label = input('');
|
16
|
+
this.labelPosition = input('after');
|
17
|
+
this.isDisabled = input(false);
|
18
|
+
this.isLoading = input(false);
|
19
|
+
this.isInvisible = input(false);
|
20
|
+
this.ignoreModel = input(false);
|
21
|
+
//Outputs
|
22
|
+
this.onChange = output();
|
23
|
+
//computed
|
24
|
+
this._isEnable = computed(() => {
|
25
|
+
return !this.isLoading() && !this.isDisabled() && !this.isInvisible();
|
26
|
+
});
|
27
|
+
}
|
28
|
+
//Inputs
|
29
|
+
set value(value) {
|
30
|
+
if (Tools.IsNull(value))
|
31
|
+
value = false;
|
32
|
+
this.SetValue(value);
|
33
|
+
}
|
34
|
+
//getter
|
35
|
+
get value() {
|
36
|
+
return this._value;
|
37
|
+
}
|
38
|
+
ngAfterViewInit() {
|
39
|
+
Tools.Sleep().then(_ => this._isLoading = false);
|
40
|
+
}
|
41
|
+
//ControlValueAccessor
|
42
|
+
SetValue(value) {
|
43
|
+
if (Tools.IsNotNull(value)) {
|
44
|
+
if (!this.ignoreModel()) {
|
45
|
+
this._UpdateValue(value);
|
46
|
+
}
|
47
|
+
this._value = value;
|
48
|
+
if (!this._isLoading && this._isEnable()) {
|
49
|
+
this.onChange.emit(value);
|
50
|
+
}
|
51
|
+
}
|
52
|
+
}
|
53
|
+
//ControlValueAccessor
|
54
|
+
writeValue(value) {
|
55
|
+
if (Tools.IsNotNull(value)) {
|
56
|
+
this._value = value;
|
57
|
+
if (!this._isLoading && this._isEnable()) {
|
58
|
+
this.onChange.emit(value);
|
59
|
+
}
|
60
|
+
}
|
61
|
+
}
|
62
|
+
/** */
|
63
|
+
Check() {
|
64
|
+
if (!this._isLoading && this._isEnable()) {
|
65
|
+
this.SetValue(true);
|
66
|
+
}
|
67
|
+
}
|
68
|
+
/** */
|
69
|
+
Uncheck() {
|
70
|
+
if (!this._isLoading && this._isEnable()) {
|
71
|
+
this.SetValue(false);
|
72
|
+
}
|
73
|
+
}
|
74
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoerCheckbox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
75
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: CoerCheckbox, selector: "coer-checkbox", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelPosition: { classPropertyName: "labelPosition", publicName: "labelPosition", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, ignoreModel: { classPropertyName: "ignoreModel", publicName: "ignoreModel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, providers: [CONTROL_VALUE(CoerCheckbox)], usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{ 'coer-checkbox': true, 'placeholder-glow': isLoading(), 'invisible': isInvisible() }\">\r\n <div [id]=\"_id\" [ngClass]=\"{ 'placeholder': isLoading() }\">\r\n <mat-checkbox\r\n [ngModel]=\"_value\"\r\n [indeterminate]=\"false\"\r\n [labelPosition]=\"labelPosition()\"\r\n [disabled]=\"!_isEnable()\"\r\n (change)=\"this.SetValue($event.checked)\"\r\n > {{ label() }} </mat-checkbox>\r\n </div>\r\n</div>", styles: ["div.coer-checkbox *{--blue: #0d6efd;--gray: #6c757d;--green: #198754;--yellow: #ffc107;--red: #dc3545;--white: #f5f5f5;--black: #252525;--orange: #fd6031}div.coer-checkbox .text-blue{color:#0d6efd!important}div.coer-checkbox .text-blue-bold{color:#0d6efd!important;font-weight:700!important}div.coer-checkbox .background-blue{background-color:#0d6efd!important}div.coer-checkbox .background-border-blue{background-color:#0d6efd!important;border-color:#0d6efd!important}div.coer-checkbox .border-blue{border-color:#0d6efd!important}div.coer-checkbox .text-gray{color:#6c757d!important}div.coer-checkbox .text-gray-bold{color:#6c757d!important;font-weight:700!important}div.coer-checkbox .background-gray{background-color:#6c757d!important}div.coer-checkbox .background-border-gray{background-color:#6c757d!important;border-color:#6c757d!important}div.coer-checkbox .border-gray{border-color:#6c757d!important}div.coer-checkbox .text-green{color:#198754!important}div.coer-checkbox .text-green-bold{color:#198754!important;font-weight:700!important}div.coer-checkbox .background-green{background-color:#198754!important}div.coer-checkbox .background-border-green{background-color:#198754!important;border-color:#198754!important}div.coer-checkbox .border-green{border-color:#198754!important}div.coer-checkbox .text-yellow{color:#ffc107!important}div.coer-checkbox .text-yellow-bold{color:#ffc107!important;font-weight:700!important}div.coer-checkbox .background-yellow{background-color:#ffc107!important}div.coer-checkbox .background-border-yellow{background-color:#ffc107!important;border-color:#ffc107!important}div.coer-checkbox .border-yellow{border-color:#ffc107!important}div.coer-checkbox .text-red{color:#dc3545!important}div.coer-checkbox .text-red-bold{color:#dc3545!important;font-weight:700!important}div.coer-checkbox .background-red{background-color:#dc3545!important}div.coer-checkbox .background-border-red{background-color:#dc3545!important;border-color:#dc3545!important}div.coer-checkbox .border-red{border-color:#dc3545!important}div.coer-checkbox .text-white{color:#f5f5f5!important}div.coer-checkbox .text-white-bold{color:#f5f5f5!important;font-weight:700!important}div.coer-checkbox .background-white{background-color:#f5f5f5!important}div.coer-checkbox .background-border-white{background-color:#f5f5f5!important;border-color:#f5f5f5!important}div.coer-checkbox .border-white{border-color:#f5f5f5!important}div.coer-checkbox .text-black{color:#252525!important}div.coer-checkbox .text-black-bold{color:#252525!important;font-weight:700!important}div.coer-checkbox .background-black{background-color:#252525!important}div.coer-checkbox .background-border-black{background-color:#252525!important;border-color:#252525!important}div.coer-checkbox .border-black{border-color:#252525!important}div.coer-checkbox .text-orange{color:#fd6031!important}div.coer-checkbox .text-orange-bold{color:#fd6031!important;font-weight:700!important}div.coer-checkbox .background-orange{background-color:#fd6031!important}div.coer-checkbox .background-border-orange{background-color:#fd6031!important;border-color:#fd6031!important}div.coer-checkbox .border-orange{border-color:#fd6031!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox{padding:10px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:#f5f5f5!important;border-radius:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple{width:30px!important;height:30px!important;top:5px!important;left:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-ripple.mat-mdc-checkbox-ripple.mat-mdc-focus-indicator *{display:none!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label{padding-top:3px!important;padding-left:0!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label::selection{background-color:transparent!important}div.coer-checkbox mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:#fd6031!important;border-color:#fd6031!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox{padding:0!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-mdc-checkbox-touch-target,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-mdc-checkbox-touch-target{top:8px!important;width:39px!important;height:30px!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox input,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox input{display:none!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple{top:-7px!important;left:-6px!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{transform:translateY(-1px)!important;position:static!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field label.mdc-label{display:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }] }); }
|
76
|
+
}
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CoerCheckbox, decorators: [{
|
78
|
+
type: Component,
|
79
|
+
args: [{ selector: 'coer-checkbox', providers: [CONTROL_VALUE(CoerCheckbox)], template: "<div [ngClass]=\"{ 'coer-checkbox': true, 'placeholder-glow': isLoading(), 'invisible': isInvisible() }\">\r\n <div [id]=\"_id\" [ngClass]=\"{ 'placeholder': isLoading() }\">\r\n <mat-checkbox\r\n [ngModel]=\"_value\"\r\n [indeterminate]=\"false\"\r\n [labelPosition]=\"labelPosition()\"\r\n [disabled]=\"!_isEnable()\"\r\n (change)=\"this.SetValue($event.checked)\"\r\n > {{ label() }} </mat-checkbox>\r\n </div>\r\n</div>", styles: ["div.coer-checkbox *{--blue: #0d6efd;--gray: #6c757d;--green: #198754;--yellow: #ffc107;--red: #dc3545;--white: #f5f5f5;--black: #252525;--orange: #fd6031}div.coer-checkbox .text-blue{color:#0d6efd!important}div.coer-checkbox .text-blue-bold{color:#0d6efd!important;font-weight:700!important}div.coer-checkbox .background-blue{background-color:#0d6efd!important}div.coer-checkbox .background-border-blue{background-color:#0d6efd!important;border-color:#0d6efd!important}div.coer-checkbox .border-blue{border-color:#0d6efd!important}div.coer-checkbox .text-gray{color:#6c757d!important}div.coer-checkbox .text-gray-bold{color:#6c757d!important;font-weight:700!important}div.coer-checkbox .background-gray{background-color:#6c757d!important}div.coer-checkbox .background-border-gray{background-color:#6c757d!important;border-color:#6c757d!important}div.coer-checkbox .border-gray{border-color:#6c757d!important}div.coer-checkbox .text-green{color:#198754!important}div.coer-checkbox .text-green-bold{color:#198754!important;font-weight:700!important}div.coer-checkbox .background-green{background-color:#198754!important}div.coer-checkbox .background-border-green{background-color:#198754!important;border-color:#198754!important}div.coer-checkbox .border-green{border-color:#198754!important}div.coer-checkbox .text-yellow{color:#ffc107!important}div.coer-checkbox .text-yellow-bold{color:#ffc107!important;font-weight:700!important}div.coer-checkbox .background-yellow{background-color:#ffc107!important}div.coer-checkbox .background-border-yellow{background-color:#ffc107!important;border-color:#ffc107!important}div.coer-checkbox .border-yellow{border-color:#ffc107!important}div.coer-checkbox .text-red{color:#dc3545!important}div.coer-checkbox .text-red-bold{color:#dc3545!important;font-weight:700!important}div.coer-checkbox .background-red{background-color:#dc3545!important}div.coer-checkbox .background-border-red{background-color:#dc3545!important;border-color:#dc3545!important}div.coer-checkbox .border-red{border-color:#dc3545!important}div.coer-checkbox .text-white{color:#f5f5f5!important}div.coer-checkbox .text-white-bold{color:#f5f5f5!important;font-weight:700!important}div.coer-checkbox .background-white{background-color:#f5f5f5!important}div.coer-checkbox .background-border-white{background-color:#f5f5f5!important;border-color:#f5f5f5!important}div.coer-checkbox .border-white{border-color:#f5f5f5!important}div.coer-checkbox .text-black{color:#252525!important}div.coer-checkbox .text-black-bold{color:#252525!important;font-weight:700!important}div.coer-checkbox .background-black{background-color:#252525!important}div.coer-checkbox .background-border-black{background-color:#252525!important;border-color:#252525!important}div.coer-checkbox .border-black{border-color:#252525!important}div.coer-checkbox .text-orange{color:#fd6031!important}div.coer-checkbox .text-orange-bold{color:#fd6031!important;font-weight:700!important}div.coer-checkbox .background-orange{background-color:#fd6031!important}div.coer-checkbox .background-border-orange{background-color:#fd6031!important;border-color:#fd6031!important}div.coer-checkbox .border-orange{border-color:#fd6031!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox{padding:10px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:#f5f5f5!important;border-radius:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple{width:30px!important;height:30px!important;top:5px!important;left:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-ripple.mat-mdc-checkbox-ripple.mat-mdc-focus-indicator *{display:none!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label{padding-top:3px!important;padding-left:0!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label::selection{background-color:transparent!important}div.coer-checkbox mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:#fd6031!important;border-color:#fd6031!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox{padding:0!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-mdc-checkbox-touch-target,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-mdc-checkbox-touch-target{top:8px!important;width:39px!important;height:30px!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox input,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox input{display:none!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple{top:-7px!important;left:-6px!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{transform:translateY(-1px)!important;position:static!important}coer-grid table tbody tr td.check-box mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label,coer-grid table tbody tr td.check-box mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field label.mdc-label{display:none!important}\n"] }]
|
80
|
+
}], propDecorators: { value: [{
|
81
|
+
type: Input
|
82
|
+
}] } });
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lci1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2VyLWVsZW1lbnRzL2NvbXBvbmVudHMvbGliL2NvZXItY2hlY2tib3gvY29lci1jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2VyLWVsZW1lbnRzL2NvbXBvbmVudHMvbGliL2NvZXItY2hlY2tib3gvY29lci1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBUXpFLE1BQU0sT0FBTyxZQUFhLFNBQVEsWUFBWTtJQU45Qzs7UUFRSSxXQUFXO1FBQ0ssV0FBTSxHQUFZLEtBQUssQ0FBQztRQUM5QixRQUFHLEdBQVcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvQyxlQUFVLEdBQVksSUFBSSxDQUFDO1FBUTVCLE9BQUUsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDdkIsVUFBSyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxQixrQkFBYSxHQUFHLEtBQUssQ0FBcUIsT0FBTyxDQUFDLENBQUM7UUFDbkQsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuQyxjQUFTLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLGdCQUFXLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRTNDLFNBQVM7UUFDRixhQUFRLEdBQUcsTUFBTSxFQUFXLENBQUM7UUFPcEMsVUFBVTtRQUNBLGNBQVMsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFO1lBQ3pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDMUUsQ0FBQyxDQUFDLENBQUM7S0FrRE47SUEzRUcsUUFBUTtJQUNSLElBQWEsS0FBSyxDQUFDLEtBQWlDO1FBQ2hELElBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBZ0IsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFhRCxRQUFRO0lBQ1IsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFRRCxlQUFlO1FBQ1gsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUdELHNCQUFzQjtJQUNOLFFBQVEsQ0FBQyxLQUFjO1FBQ25DLElBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDO1lBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFFcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUdELHNCQUFzQjtJQUNOLFVBQVUsQ0FBQyxLQUFjO1FBQ3JDLElBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBRXBCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFHRCxNQUFNO0lBQ0MsS0FBSztRQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsQ0FBQztJQUNMLENBQUM7SUFHRCxNQUFNO0lBQ0MsT0FBTztRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsQ0FBQztJQUNMLENBQUM7K0dBakZRLFlBQVk7bUdBQVosWUFBWSxzbUNBRlYsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUMsaURDUDVDLG9mQVVNOzs0RkRETyxZQUFZO2tCQU54QixTQUFTOytCQUNJLGVBQWUsYUFHZCxDQUFDLGFBQWEsY0FBYyxDQUFDOzhCQVUzQixLQUFLO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBjb21wdXRlZCwgSW5wdXQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ09OVFJPTF9WQUxVRSwgQ29udHJvbFZhbHVlLCBUb29scyB9IGZyb20gJ2NvZXItZWxlbWVudHMvdG9vbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NvZXItY2hlY2tib3gnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvZXItY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2NvZXItY2hlY2tib3guY29tcG9uZW50LnNjc3MnLFxyXG4gICAgcHJvdmlkZXJzOiBbQ09OVFJPTF9WQUxVRShDb2VyQ2hlY2tib3gpXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvZXJDaGVja2JveCBleHRlbmRzIENvbnRyb2xWYWx1ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICAgIC8vVmFyaWFibGVzXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgX3ZhbHVlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwcm90ZWN0ZWQgX2lkOiBzdHJpbmcgPSBUb29scy5HZXRHdWlkKCdjb2VyLWNoZWNrYm94Jyk7XHJcbiAgICBwcml2YXRlIF9pc0xvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIC8vSW5wdXRzXHJcbiAgICBASW5wdXQoKSBzZXQgdmFsdWUodmFsdWU6IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgaWYoVG9vbHMuSXNOdWxsKHZhbHVlKSkgdmFsdWUgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLlNldFZhbHVlKHZhbHVlIGFzIGJvb2xlYW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBpZCA9IGlucHV0PHN0cmluZz4oJycpO1xyXG4gICAgcHVibGljIGxhYmVsID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcbiAgICBwdWJsaWMgbGFiZWxQb3NpdGlvbiA9IGlucHV0PCdiZWZvcmUnIHwgJ2FmdGVyJz4oJ2FmdGVyJyk7XHJcbiAgICBwdWJsaWMgaXNEaXNhYmxlZCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcbiAgICBwdWJsaWMgaXNJbnZpc2libGUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcbiAgICBwdWJsaWMgaWdub3JlTW9kZWwgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblxyXG4gICAgLy9PdXRwdXRzXHJcbiAgICBwdWJsaWMgb25DaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICAvL2dldHRlclxyXG4gICAgcHVibGljIGdldCB2YWx1ZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy9jb21wdXRlZFxyXG4gICAgcHJvdGVjdGVkIF9pc0VuYWJsZSA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuaXNMb2FkaW5nKCkgJiYgIXRoaXMuaXNEaXNhYmxlZCgpICYmICF0aGlzLmlzSW52aXNpYmxlKCk7XHJcbiAgICB9KTtcclxuXHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgICAgIFRvb2xzLlNsZWVwKCkudGhlbihfID0+IHRoaXMuX2lzTG9hZGluZyA9IGZhbHNlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLy9Db250cm9sVmFsdWVBY2Nlc3NvclxyXG4gICAgcHVibGljIG92ZXJyaWRlIFNldFZhbHVlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYoVG9vbHMuSXNOb3ROdWxsKHZhbHVlKSkge1xyXG4gICAgICAgICAgICBpZighdGhpcy5pZ25vcmVNb2RlbCgpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9VcGRhdGVWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRoaXMuX2lzTG9hZGluZyAmJiB0aGlzLl9pc0VuYWJsZSgpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvL0NvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGlmKFRvb2xzLklzTm90TnVsbCh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5faXNMb2FkaW5nICYmIHRoaXMuX2lzRW5hYmxlKCkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHVibGljIENoZWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5faXNMb2FkaW5nICYmIHRoaXMuX2lzRW5hYmxlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5TZXRWYWx1ZSh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiAqL1xyXG4gICAgcHVibGljIFVuY2hlY2soKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9pc0xvYWRpbmcgJiYgdGhpcy5faXNFbmFibGUoKSkge1xyXG4gICAgICAgICAgICB0aGlzLlNldFZhbHVlKGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCI8ZGl2IFtuZ0NsYXNzXT1cInsgJ2NvZXItY2hlY2tib3gnOiB0cnVlLCAncGxhY2Vob2xkZXItZ2xvdyc6IGlzTG9hZGluZygpLCAnaW52aXNpYmxlJzogaXNJbnZpc2libGUoKSB9XCI+XHJcbiAgICA8ZGl2IFtpZF09XCJfaWRcIiBbbmdDbGFzc109XCJ7ICdwbGFjZWhvbGRlcic6IGlzTG9hZGluZygpIH1cIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cIl92YWx1ZVwiXHJcbiAgICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW2xhYmVsUG9zaXRpb25dPVwibGFiZWxQb3NpdGlvbigpXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFfaXNFbmFibGUoKVwiXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwidGhpcy5TZXRWYWx1ZSgkZXZlbnQuY2hlY2tlZClcIlxyXG4gICAgICAgID4ge3sgbGFiZWwoKSB9fSA8L21hdC1jaGVja2JveD5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|