@huntsman-cancer-institute/input 12.5.0 → 14.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/date/date-date-range.component.d.ts +1 -1
- package/date/date-date.component.d.ts +5 -7
- package/date/date-validator.d.ts +0 -3
- package/dropdown/dropdown-select-result.component.d.ts +1 -1
- package/dropdown/dropdown-select.component.d.ts +3 -3
- package/dropdown/dropdown.component.d.ts +4 -4
- package/dropdown/template-dropdown.directive.d.ts +1 -1
- package/esm2020/date/date-base.mjs +114 -0
- package/esm2020/date/date-date-range.component.mjs +133 -0
- package/esm2020/date/date-date.component.mjs +310 -0
- package/esm2020/date/date-validator.mjs +40 -0
- package/esm2020/date/date.module.mjs +60 -0
- package/esm2020/dropdown/dropdown-index.mjs +6 -0
- package/esm2020/dropdown/dropdown-select-result.component.mjs +110 -0
- package/esm2020/dropdown/dropdown-select.component.mjs +459 -0
- package/esm2020/dropdown/dropdown.component.mjs +313 -0
- package/esm2020/dropdown/dropdown.module.mjs +50 -0
- package/esm2020/dropdown/dropdown.service.mjs +133 -0
- package/esm2020/dropdown/messages.mjs +10 -0
- package/esm2020/dropdown/select-item.mjs +12 -0
- package/esm2020/dropdown/template-dropdown.directive.mjs +26 -0
- package/esm2020/huntsman-cancer-institute-input.mjs +5 -0
- package/esm2020/index.mjs +20 -0
- package/esm2020/inline/inline.component.mjs +249 -0
- package/esm2020/inline/inline.module.mjs +28 -0
- package/esm2020/search/search.component.mjs +182 -0
- package/esm2020/search/search.module.mjs +32 -0
- package/esm2020/select/custom-combobox.component.mjs +679 -0
- package/{esm2015/select/custom-multi-combobox.component.js → esm2020/select/custom-multi-combobox.component.mjs} +17 -22
- package/esm2020/select/md-multi-select.component.mjs +157 -0
- package/esm2020/select/md-select.component.mjs +123 -0
- package/esm2020/select/native-select.component.mjs +226 -0
- package/esm2020/select/select.module.mjs +83 -0
- package/fesm2015/huntsman-cancer-institute-input.mjs +3697 -0
- package/fesm2015/huntsman-cancer-institute-input.mjs.map +1 -0
- package/{fesm2015/huntsman-cancer-institute-input.js → fesm2020/huntsman-cancer-institute-input.mjs} +167 -258
- package/fesm2020/huntsman-cancer-institute-input.mjs.map +1 -0
- package/inline/inline.component.d.ts +1 -1
- package/package.json +30 -23
- package/search/search.component.d.ts +1 -1
- package/select/custom-combobox.component.d.ts +4 -4
- package/select/custom-multi-combobox.component.d.ts +3 -3
- package/select/md-multi-select.component.d.ts +3 -3
- package/select/md-select.component.d.ts +1 -1
- package/select/native-select.component.d.ts +1 -1
- package/CHANGELOG.md +0 -4
- package/bundles/huntsman-cancer-institute-input.umd.js +0 -3183
- package/bundles/huntsman-cancer-institute-input.umd.js.map +0 -1
- package/bundles/huntsman-cancer-institute-input.umd.min.js +0 -2
- package/bundles/huntsman-cancer-institute-input.umd.min.js.map +0 -1
- package/esm2015/date/date-base.js +0 -114
- package/esm2015/date/date-date-range.component.js +0 -133
- package/esm2015/date/date-date.component.js +0 -342
- package/esm2015/date/date-validator.js +0 -48
- package/esm2015/date/date.module.js +0 -62
- package/esm2015/dropdown/dropdown-index.js +0 -6
- package/esm2015/dropdown/dropdown-select-result.component.js +0 -110
- package/esm2015/dropdown/dropdown-select.component.js +0 -459
- package/esm2015/dropdown/dropdown.component.js +0 -313
- package/esm2015/dropdown/dropdown.module.js +0 -52
- package/esm2015/dropdown/dropdown.service.js +0 -133
- package/esm2015/dropdown/messages.js +0 -10
- package/esm2015/dropdown/select-item.js +0 -12
- package/esm2015/dropdown/template-dropdown.directive.js +0 -26
- package/esm2015/huntsman-cancer-institute-input.js +0 -5
- package/esm2015/index.js +0 -20
- package/esm2015/inline/inline.component.js +0 -249
- package/esm2015/inline/inline.module.js +0 -30
- package/esm2015/search/search.component.js +0 -182
- package/esm2015/search/search.module.js +0 -34
- package/esm2015/select/custom-combobox.component.js +0 -728
- package/esm2015/select/md-multi-select.component.js +0 -157
- package/esm2015/select/md-select.component.js +0 -123
- package/esm2015/select/native-select.component.js +0 -226
- package/esm2015/select/select.module.js +0 -85
- package/esm5/date/date-base.js +0 -116
- package/esm5/date/date-date-range.component.js +0 -93
- package/esm5/date/date-date.component.js +0 -231
- package/esm5/date/date-validator.js +0 -52
- package/esm5/date/date.module.js +0 -66
- package/esm5/dropdown/dropdown-index.js +0 -6
- package/esm5/dropdown/dropdown-select-result.component.js +0 -86
- package/esm5/dropdown/dropdown-select.component.js +0 -370
- package/esm5/dropdown/dropdown.component.js +0 -172
- package/esm5/dropdown/dropdown.module.js +0 -56
- package/esm5/dropdown/dropdown.service.js +0 -139
- package/esm5/dropdown/messages.js +0 -14
- package/esm5/dropdown/select-item.js +0 -12
- package/esm5/dropdown/template-dropdown.directive.js +0 -28
- package/esm5/huntsman-cancer-institute-input.js +0 -5
- package/esm5/index.js +0 -20
- package/esm5/inline/inline.component.js +0 -187
- package/esm5/inline/inline.module.js +0 -34
- package/esm5/search/search.component.js +0 -204
- package/esm5/search/search.module.js +0 -38
- package/esm5/select/custom-combobox.component.js +0 -580
- package/esm5/select/custom-multi-combobox.component.js +0 -297
- package/esm5/select/md-multi-select.component.js +0 -167
- package/esm5/select/md-select.component.js +0 -114
- package/esm5/select/native-select.component.js +0 -197
- package/esm5/select/select.module.js +0 -89
- package/fesm2015/huntsman-cancer-institute-input.js.map +0 -1
- package/fesm5/huntsman-cancer-institute-input.js +0 -3181
- package/fesm5/huntsman-cancer-institute-input.js.map +0 -1
- package/huntsman-cancer-institute-input.d.ts +0 -5
|
@@ -28,5 +28,5 @@ export declare class DateRangeComponent implements AfterViewInit {
|
|
|
28
28
|
onClickSubmitEndDate(endData: any): void;
|
|
29
29
|
private setRange;
|
|
30
30
|
static ɵfac: i0.ɵɵFactoryDeclaration<DateRangeComponent, never>;
|
|
31
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DateRangeComponent, "hci-date-range", never, { "dateFormat": "dateFormat"; "inputStartData": "inputStartData"; "inputEndData": "inputEndData"; "startLabel": "startLabel"; "endLabel": "endLabel"; "minStartDate": "minStartDate"; }, { "inputDataChange": "inputDataChange"; }, never, never>;
|
|
31
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DateRangeComponent, "hci-date-range", never, { "dateFormat": "dateFormat"; "inputStartData": "inputStartData"; "inputEndData": "inputEndData"; "startLabel": "startLabel"; "endLabel": "endLabel"; "minStartDate": "minStartDate"; }, { "inputDataChange": "inputDataChange"; }, never, never, false>;
|
|
32
32
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ElementRef, EventEmitter, OnInit, DoCheck, AfterViewInit, ChangeDetectorRef } from "@angular/core";
|
|
2
2
|
import { DatePipe } from "@angular/common";
|
|
3
|
-
import {
|
|
3
|
+
import { UntypedFormBuilder, UntypedFormGroup, UntypedFormControl } from "@angular/forms";
|
|
4
4
|
import { DateBase } from "./date-base";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
@@ -22,12 +22,11 @@ export declare class DateComponent extends DateBase implements OnInit, DoCheck,
|
|
|
22
22
|
inputData: Object;
|
|
23
23
|
modifiedData: Object;
|
|
24
24
|
inputDataChange: EventEmitter<any>;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
dateInput: FormControl;
|
|
25
|
+
dateForm: UntypedFormGroup;
|
|
26
|
+
dateInput: UntypedFormControl;
|
|
28
27
|
validate: boolean;
|
|
29
28
|
private focused;
|
|
30
|
-
constructor(elementRef: ElementRef, formBuilder:
|
|
29
|
+
constructor(elementRef: ElementRef, formBuilder: UntypedFormBuilder, datePipe: DatePipe, changeDetectorRef: ChangeDetectorRef);
|
|
31
30
|
/**
|
|
32
31
|
*
|
|
33
32
|
*/
|
|
@@ -49,7 +48,6 @@ export declare class DateComponent extends DateBase implements OnInit, DoCheck,
|
|
|
49
48
|
* @returns {any}
|
|
50
49
|
*/
|
|
51
50
|
private ngbDateToString;
|
|
52
|
-
getDateValid(): boolean;
|
|
53
51
|
static ɵfac: i0.ɵɵFactoryDeclaration<DateComponent, never>;
|
|
54
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DateComponent, "hci-date", never, { "dateFormat": "dateFormat"; "minDate": "minDate"; "maxDate": "maxDate"; "label": "label"; "inputData": "inputData"; "modifiedData": "modifiedData"; }, { "inputDataChange": "inputDataChange";
|
|
52
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DateComponent, "hci-date", never, { "dateFormat": "dateFormat"; "minDate": "minDate"; "maxDate": "maxDate"; "label": "label"; "inputData": "inputData"; "modifiedData": "modifiedData"; }, { "inputDataChange": "inputDataChange"; }, never, never, false>;
|
|
55
53
|
}
|
package/date/date-validator.d.ts
CHANGED
|
@@ -8,9 +8,6 @@ export declare class DateValidator {
|
|
|
8
8
|
static dateRangeValidator(ac: AbstractControl): {
|
|
9
9
|
dateRangeValidator: boolean;
|
|
10
10
|
};
|
|
11
|
-
static dateInvalidValidator(ac: AbstractControl): {
|
|
12
|
-
dateInvalidValidator: boolean;
|
|
13
|
-
};
|
|
14
11
|
static convertNgbStructToDate(struct: any): {
|
|
15
12
|
year: any;
|
|
16
13
|
month: number;
|
|
@@ -19,5 +19,5 @@ export declare class DropdownSelectResultComponent implements OnInit {
|
|
|
19
19
|
scrollToElement(): void;
|
|
20
20
|
selectCurrentItem(): void;
|
|
21
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownSelectResultComponent, never>;
|
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownSelectResultComponent, "hci-dropdown-select-result", never, { "items": "items"; "searchFocused": "searchFocused"; "selectedItems": "selectedItems"; "templateRef": "templateRef"; }, { "itemSelectedEvent": "itemSelectedEvent"; }, never, never>;
|
|
22
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownSelectResultComponent, "hci-dropdown-select-result", never, { "items": "items"; "searchFocused": "searchFocused"; "selectedItems": "selectedItems"; "templateRef": "templateRef"; }, { "itemSelectedEvent": "itemSelectedEvent"; }, never, never, false>;
|
|
23
23
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AfterViewInit, TemplateRef, EventEmitter } from "@angular/core";
|
|
2
|
-
import { ControlValueAccessor,
|
|
2
|
+
import { ControlValueAccessor, UntypedFormControl } from "@angular/forms";
|
|
3
3
|
import { Observable } from "rxjs";
|
|
4
4
|
import { DropdownSelectResultComponent } from "./dropdown-select-result.component";
|
|
5
5
|
import { SelectItem } from "./select-item";
|
|
@@ -27,7 +27,7 @@ export declare class DropdownSelectComponent implements AfterViewInit, ControlVa
|
|
|
27
27
|
onTouchedCallback: () => void;
|
|
28
28
|
onChangeCallback: (_: any) => void;
|
|
29
29
|
templateRef: TemplateRef<any>;
|
|
30
|
-
term:
|
|
30
|
+
term: UntypedFormControl;
|
|
31
31
|
searchFocused: boolean;
|
|
32
32
|
resultsVisible: boolean;
|
|
33
33
|
listedData: SelectItem[];
|
|
@@ -72,5 +72,5 @@ export declare class DropdownSelectComponent implements AfterViewInit, ControlVa
|
|
|
72
72
|
private handleMultipleWithIds;
|
|
73
73
|
private handleSingleWithId;
|
|
74
74
|
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownSelectComponent, never>;
|
|
75
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownSelectComponent, "hci-dropdown-select", never, { "messages": "messages"; "dataProvider": "dataProvider"; "selectedProvider": "selectedProvider"; "selectItemAdapter": "selectItemAdapter"; "referenceMode": "referenceMode"; "placeholder": "placeholder"; "disabled": "disabled"; "multiple": "multiple"; "clientMode": "clientMode"; "deleteIcon": "deleteIcon"; "inputState": "inputState"; "resultsCount": "resultsCount"; "searchDelay": "searchDelay"; }, { "select": "select"; "remove": "remove"; }, never, never>;
|
|
75
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownSelectComponent, "hci-dropdown-select", never, { "messages": "messages"; "dataProvider": "dataProvider"; "selectedProvider": "selectedProvider"; "selectItemAdapter": "selectItemAdapter"; "referenceMode": "referenceMode"; "placeholder": "placeholder"; "disabled": "disabled"; "multiple": "multiple"; "clientMode": "clientMode"; "deleteIcon": "deleteIcon"; "inputState": "inputState"; "resultsCount": "resultsCount"; "searchDelay": "searchDelay"; }, { "select": "select"; "remove": "remove"; }, never, never, false>;
|
|
76
76
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EventEmitter, OnInit } from "@angular/core";
|
|
2
|
-
import {
|
|
2
|
+
import { UntypedFormBuilder, UntypedFormGroup } from "@angular/forms";
|
|
3
3
|
import { Observable } from "rxjs";
|
|
4
4
|
import { DropdownService } from "./dropdown.service";
|
|
5
5
|
import { SelectItem } from "./select-item";
|
|
@@ -8,7 +8,7 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
export declare class DropdownComponent implements OnInit {
|
|
9
9
|
private dropdownService;
|
|
10
10
|
private formBuilder;
|
|
11
|
-
dropdownForm:
|
|
11
|
+
dropdownForm: UntypedFormGroup;
|
|
12
12
|
getItems: (ids: any[]) => Observable<Object[]>;
|
|
13
13
|
listItems: (item: string) => Observable<Object[]>;
|
|
14
14
|
listItemsMax: (item: string, ids: any[]) => Observable<Object[]>;
|
|
@@ -27,7 +27,7 @@ export declare class DropdownComponent implements OnInit {
|
|
|
27
27
|
inputSingleDataChange: EventEmitter<any>;
|
|
28
28
|
inputMultiDataChange: EventEmitter<any>;
|
|
29
29
|
dropdownSingle: DropdownSelectComponent;
|
|
30
|
-
constructor(dropdownService: DropdownService, formBuilder:
|
|
30
|
+
constructor(dropdownService: DropdownService, formBuilder: UntypedFormBuilder);
|
|
31
31
|
ngOnInit(): void;
|
|
32
32
|
onSelect(item: SelectItem): void;
|
|
33
33
|
onRemove(item: SelectItem): void;
|
|
@@ -36,5 +36,5 @@ export declare class DropdownComponent implements OnInit {
|
|
|
36
36
|
private initDropdownItem;
|
|
37
37
|
private initDropdownForm;
|
|
38
38
|
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
|
|
39
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "hci-dropdown", never, { "inputSingleData": "inputSingleData"; "inputMultiData": "inputMultiData"; "modifiedData": "modifiedData"; "optionData": "optionData"; "displayField": "displayField"; "displayId": "displayId"; "dataUrl": "dataUrl"; "dropdownType": "dropdownType"; "placeholder": "placeholder"; "isDisabled": "isDisabled"; }, { "inputSingleDataChange": "inputSingleDataChange"; "inputMultiDataChange": "inputMultiDataChange"; }, never, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "hci-dropdown", never, { "inputSingleData": "inputSingleData"; "inputMultiData": "inputMultiData"; "modifiedData": "modifiedData"; "optionData": "optionData"; "displayField": "displayField"; "displayId": "displayId"; "dataUrl": "dataUrl"; "dropdownType": "dropdownType"; "placeholder": "placeholder"; "isDisabled": "isDisabled"; }, { "inputSingleDataChange": "inputSingleDataChange"; "inputMultiDataChange": "inputMultiDataChange"; }, never, never, false>;
|
|
40
40
|
}
|
|
@@ -8,5 +8,5 @@ export declare class TemplateDropdownDirective<T> {
|
|
|
8
8
|
private templateRef;
|
|
9
9
|
constructor(templateRef: TemplateRef<T>, host: DropdownSelectComponent);
|
|
10
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<TemplateDropdownDirective<any>, [null, { host: true; }]>;
|
|
11
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TemplateDropdownDirective<any>, "[appTemplateDropdown]", never, {}, {}, never>;
|
|
11
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TemplateDropdownDirective<any>, "[appTemplateDropdown]", never, {}, {}, never, never, false>;
|
|
12
12
|
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2016 Huntsman Cancer Institute at the University of Utah, Confidential and Proprietary
|
|
3
|
+
*
|
|
4
|
+
* Extending class works like in Java except that decorators are only scanned in the child class. In this case,
|
|
5
|
+
* we want variables like inputData to be available to all inline components that extend this class; however, we want
|
|
6
|
+
* this variable to be an @Input.
|
|
7
|
+
* What we can do here is define "inputData: Object" here and in the extending class, define "@Input inputData: Object".
|
|
8
|
+
*
|
|
9
|
+
* The two way binding to the component is inputData. To allow non-saving modification to this data, we copy
|
|
10
|
+
* it to modifiedData. The wrapped component such as input/select/... then use modifiedData as their ngModel.
|
|
11
|
+
* When we cancel out of editing, modifiedData is ignored and replaced with inputData. When editing is saved, inputData
|
|
12
|
+
* is replaced with modifiedData.
|
|
13
|
+
*
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
import { ElementRef, Injectable } from "@angular/core";
|
|
17
|
+
import * as i0 from "@angular/core";
|
|
18
|
+
export class DateBase {
|
|
19
|
+
constructor(elementRef) {
|
|
20
|
+
this.state = 0;
|
|
21
|
+
this._el = elementRef.nativeElement;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Listen to clicks on the document. If the state is in edit mode and there is a click outside the element,
|
|
25
|
+
* then save it.
|
|
26
|
+
*
|
|
27
|
+
* @param event
|
|
28
|
+
*/
|
|
29
|
+
handleOutsideEvent(event) {
|
|
30
|
+
if (this.state !== 1) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
let targetCmpt = null;
|
|
34
|
+
try {
|
|
35
|
+
// Catch exception if target is not an element
|
|
36
|
+
targetCmpt = event.target;
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
this.save();
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
let inside = false;
|
|
43
|
+
do {
|
|
44
|
+
if (targetCmpt === this._el) {
|
|
45
|
+
inside = true;
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
targetCmpt = targetCmpt.parentElement;
|
|
49
|
+
} while (targetCmpt);
|
|
50
|
+
if (!inside) {
|
|
51
|
+
this.save();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Updates the modifiedData (working data) to the bound data.
|
|
56
|
+
*/
|
|
57
|
+
updateInternalDataFromModel() {
|
|
58
|
+
this.modifiedData = this.inputData;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Updates the bound data with the working data.
|
|
62
|
+
*/
|
|
63
|
+
updateModelFromInternalData() {
|
|
64
|
+
this.inputData = this.modifiedData;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* When user chooses to edit, change state to show edit dialog.
|
|
68
|
+
*/
|
|
69
|
+
startEdit() {
|
|
70
|
+
this.modifiedData = this.inputData;
|
|
71
|
+
this.state = 1;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Generic actions to change state based on key input. Escape will cancel out of the edit
|
|
75
|
+
* without saving, enter will save and exit.
|
|
76
|
+
*
|
|
77
|
+
* @param event
|
|
78
|
+
*/
|
|
79
|
+
onKeyDown(event) {
|
|
80
|
+
if (event.key === "escape") {
|
|
81
|
+
this.cancel();
|
|
82
|
+
}
|
|
83
|
+
else if (event.key === "enter") {
|
|
84
|
+
this.save();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
*
|
|
89
|
+
* @param newValue
|
|
90
|
+
*/
|
|
91
|
+
onChange(newValue) {
|
|
92
|
+
this.modifiedData = newValue;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Replace the bound data with the working data and exit editing mode.
|
|
96
|
+
*/
|
|
97
|
+
save() {
|
|
98
|
+
this.updateModelFromInternalData();
|
|
99
|
+
this.state = 0;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Don't update the bound data and exit the editing mode.
|
|
103
|
+
*/
|
|
104
|
+
cancel() {
|
|
105
|
+
this.updateInternalDataFromModel();
|
|
106
|
+
this.state = 0;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
DateBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DateBase, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
110
|
+
DateBase.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DateBase });
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DateBase, decorators: [{
|
|
112
|
+
type: Injectable
|
|
113
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXQvc3JjL2RhdGUvZGF0ZS1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBR3JELE1BQU0sT0FBZ0IsUUFBUTtJQVE1QixZQUFZLFVBQXNCO1FBSmxDLFVBQUssR0FBVyxDQUFDLENBQUM7UUFLaEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGtCQUFrQixDQUFDLEtBQVk7UUFDcEMsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPO1NBQ1I7UUFDRCxJQUFJLFVBQVUsR0FBZ0IsSUFBSSxDQUFDO1FBRW5DLElBQUk7WUFDRiw4Q0FBOEM7WUFDOUMsVUFBVSxHQUFpQixLQUFLLENBQUMsTUFBTyxDQUFDO1NBQzFDO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDWixPQUFPO1NBQ1I7UUFFRCxJQUFJLE1BQU0sR0FBWSxLQUFLLENBQUM7UUFDNUIsR0FBRztZQUNELElBQUksVUFBVSxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQzNCLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ2QsTUFBTTthQUNQO1lBQ0QsVUFBVSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUM7U0FDdkMsUUFBUSxVQUFVLEVBQUU7UUFDckIsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksMkJBQTJCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSwyQkFBMkI7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVM7UUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksU0FBUyxDQUFDLEtBQW9CO1FBQ25DLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDMUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2Y7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxRQUFnQjtRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxJQUFJO1FBQ1QsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTTtRQUNYLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7O3FHQXZHbUIsUUFBUTt5R0FBUixRQUFROzJGQUFSLFFBQVE7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE2IEh1bnRzbWFuIENhbmNlciBJbnN0aXR1dGUgYXQgdGhlIFVuaXZlcnNpdHkgb2YgVXRhaCwgQ29uZmlkZW50aWFsIGFuZCBQcm9wcmlldGFyeVxyXG4gKlxyXG4gKiBFeHRlbmRpbmcgY2xhc3Mgd29ya3MgbGlrZSBpbiBKYXZhIGV4Y2VwdCB0aGF0IGRlY29yYXRvcnMgYXJlIG9ubHkgc2Nhbm5lZCBpbiB0aGUgY2hpbGQgY2xhc3MuICBJbiB0aGlzIGNhc2UsXHJcbiAqIHdlIHdhbnQgdmFyaWFibGVzIGxpa2UgaW5wdXREYXRhIHRvIGJlIGF2YWlsYWJsZSB0byBhbGwgaW5saW5lIGNvbXBvbmVudHMgdGhhdCBleHRlbmQgdGhpcyBjbGFzczsgaG93ZXZlciwgd2Ugd2FudFxyXG4gKiB0aGlzIHZhcmlhYmxlIHRvIGJlIGFuIEBJbnB1dC5cclxuICogV2hhdCB3ZSBjYW4gZG8gaGVyZSBpcyBkZWZpbmUgXCJpbnB1dERhdGE6IE9iamVjdFwiIGhlcmUgYW5kIGluIHRoZSBleHRlbmRpbmcgY2xhc3MsIGRlZmluZSBcIkBJbnB1dCBpbnB1dERhdGE6IE9iamVjdFwiLlxyXG4gKlxyXG4gKiBUaGUgdHdvIHdheSBiaW5kaW5nIHRvIHRoZSBjb21wb25lbnQgaXMgaW5wdXREYXRhLiAgVG8gYWxsb3cgbm9uLXNhdmluZyBtb2RpZmljYXRpb24gdG8gdGhpcyBkYXRhLCB3ZSBjb3B5XHJcbiAqIGl0IHRvIG1vZGlmaWVkRGF0YS4gIFRoZSB3cmFwcGVkIGNvbXBvbmVudCBzdWNoIGFzIGlucHV0L3NlbGVjdC8uLi4gdGhlbiB1c2UgbW9kaWZpZWREYXRhIGFzIHRoZWlyIG5nTW9kZWwuXHJcbiAqIFdoZW4gd2UgY2FuY2VsIG91dCBvZiBlZGl0aW5nLCBtb2RpZmllZERhdGEgaXMgaWdub3JlZCBhbmQgcmVwbGFjZWQgd2l0aCBpbnB1dERhdGEuICBXaGVuIGVkaXRpbmcgaXMgc2F2ZWQsIGlucHV0RGF0YVxyXG4gKiBpcyByZXBsYWNlZCB3aXRoIG1vZGlmaWVkRGF0YS5cclxuICpcclxuICogQHNpbmNlIDEuMC4wXHJcbiAqL1xyXG5pbXBvcnQge0VsZW1lbnRSZWYsIEluamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYXRlQmFzZSB7XHJcblxyXG4gIGlucHV0RGF0YTogT2JqZWN0O1xyXG4gIG1vZGlmaWVkRGF0YTogT2JqZWN0O1xyXG4gIHN0YXRlOiBudW1iZXIgPSAwO1xyXG5cclxuICBfZWw6IEhUTUxFbGVtZW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgICB0aGlzLl9lbCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RlbiB0byBjbGlja3Mgb24gdGhlIGRvY3VtZW50LiAgSWYgdGhlIHN0YXRlIGlzIGluIGVkaXQgbW9kZSBhbmQgdGhlcmUgaXMgYSBjbGljayBvdXRzaWRlIHRoZSBlbGVtZW50LFxyXG4gICAqIHRoZW4gc2F2ZSBpdC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIHB1YmxpYyBoYW5kbGVPdXRzaWRlRXZlbnQoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gMSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgdGFyZ2V0Q21wdDogSFRNTEVsZW1lbnQgPSBudWxsO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIC8vIENhdGNoIGV4Y2VwdGlvbiBpZiB0YXJnZXQgaXMgbm90IGFuIGVsZW1lbnRcclxuICAgICAgdGFyZ2V0Q21wdCA9ICg8SFRNTEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgaW5zaWRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBkbyB7XHJcbiAgICAgIGlmICh0YXJnZXRDbXB0ID09PSB0aGlzLl9lbCkge1xyXG4gICAgICAgIGluc2lkZSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgdGFyZ2V0Q21wdCA9IHRhcmdldENtcHQucGFyZW50RWxlbWVudDtcclxuICAgIH0gd2hpbGUgKHRhcmdldENtcHQpO1xyXG4gICAgaWYgKCFpbnNpZGUpIHtcclxuICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBtb2RpZmllZERhdGEgKHdvcmtpbmcgZGF0YSkgdG8gdGhlIGJvdW5kIGRhdGEuXHJcbiAgICovXHJcbiAgcHVibGljIHVwZGF0ZUludGVybmFsRGF0YUZyb21Nb2RlbCgpIHtcclxuICAgIHRoaXMubW9kaWZpZWREYXRhID0gdGhpcy5pbnB1dERhdGE7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBib3VuZCBkYXRhIHdpdGggdGhlIHdvcmtpbmcgZGF0YS5cclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlTW9kZWxGcm9tSW50ZXJuYWxEYXRhKCkge1xyXG4gICAgdGhpcy5pbnB1dERhdGEgPSB0aGlzLm1vZGlmaWVkRGF0YTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gdXNlciBjaG9vc2VzIHRvIGVkaXQsIGNoYW5nZSBzdGF0ZSB0byBzaG93IGVkaXQgZGlhbG9nLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGFydEVkaXQoKSB7XHJcbiAgICB0aGlzLm1vZGlmaWVkRGF0YSA9IHRoaXMuaW5wdXREYXRhO1xyXG4gICAgdGhpcy5zdGF0ZSA9IDE7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZW5lcmljIGFjdGlvbnMgdG8gY2hhbmdlIHN0YXRlIGJhc2VkIG9uIGtleSBpbnB1dC4gIEVzY2FwZSB3aWxsIGNhbmNlbCBvdXQgb2YgdGhlIGVkaXRcclxuICAgKiB3aXRob3V0IHNhdmluZywgZW50ZXIgd2lsbCBzYXZlIGFuZCBleGl0LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgcHVibGljIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gXCJlc2NhcGVcIikge1xyXG4gICAgICB0aGlzLmNhbmNlbCgpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09IFwiZW50ZXJcIikge1xyXG4gICAgICB0aGlzLnNhdmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIG5ld1ZhbHVlXHJcbiAgICovXHJcbiAgcHVibGljIG9uQ2hhbmdlKG5ld1ZhbHVlOiBPYmplY3QpIHtcclxuICAgIHRoaXMubW9kaWZpZWREYXRhID0gbmV3VmFsdWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXBsYWNlIHRoZSBib3VuZCBkYXRhIHdpdGggdGhlIHdvcmtpbmcgZGF0YSBhbmQgZXhpdCBlZGl0aW5nIG1vZGUuXHJcbiAgICovXHJcbiAgcHVibGljIHNhdmUoKSB7XHJcbiAgICB0aGlzLnVwZGF0ZU1vZGVsRnJvbUludGVybmFsRGF0YSgpO1xyXG4gICAgdGhpcy5zdGF0ZSA9IDA7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEb24ndCB1cGRhdGUgdGhlIGJvdW5kIGRhdGEgYW5kIGV4aXQgdGhlIGVkaXRpbmcgbW9kZS5cclxuICAgKi9cclxuICBwdWJsaWMgY2FuY2VsKCkge1xyXG4gICAgdGhpcy51cGRhdGVJbnRlcm5hbERhdGFGcm9tTW9kZWwoKTtcclxuICAgIHRoaXMuc3RhdGUgPSAwO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from "@angular/core";
|
|
2
|
+
import { DateComponent } from "./date-date.component";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./date-date.component";
|
|
5
|
+
/**
|
|
6
|
+
* TODO: Confirm timezone behavior.
|
|
7
|
+
*
|
|
8
|
+
* @since 4.0.0
|
|
9
|
+
*/
|
|
10
|
+
export class DateRangeComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
// Binded data from the parent component.
|
|
13
|
+
this.dateFormat = "shortDate";
|
|
14
|
+
this.inputDataChange = new EventEmitter();
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.setRange();
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
*/
|
|
22
|
+
ngAfterViewInit() {
|
|
23
|
+
// if there is no start date but there is an end date, make the start date go to the end date
|
|
24
|
+
if (!this.inputStartData && this.inputEndData) {
|
|
25
|
+
let dt = new Date(this.inputEndData);
|
|
26
|
+
this.sp.startDate = { year: dt.getFullYear(), month: dt.getMonth() + 1, day: dt.getDate() };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
onClickSubmitStartDate(startData) {
|
|
30
|
+
this.setRange();
|
|
31
|
+
// if there is no start date but there is an end date, make the start date go to the end date
|
|
32
|
+
if (!startData && this.inputEndData) {
|
|
33
|
+
let dt = new Date(this.inputEndData);
|
|
34
|
+
this.sp.startDate = { year: dt.getFullYear(), month: dt.getMonth() + 1, day: dt.getDate() };
|
|
35
|
+
}
|
|
36
|
+
this.inputDataChange.emit([this.inputStartData, this.inputEndData]);
|
|
37
|
+
}
|
|
38
|
+
onClickSubmitEndDate(endData) {
|
|
39
|
+
this.setRange();
|
|
40
|
+
this.inputDataChange.emit([this.inputStartData, this.inputEndData]);
|
|
41
|
+
}
|
|
42
|
+
setRange() {
|
|
43
|
+
// set the minDate to 20 years in the past by default
|
|
44
|
+
let today = new Date();
|
|
45
|
+
if (!this.minStartDate) {
|
|
46
|
+
this.minStartDate = { year: today.getFullYear() - 20, month: today.getMonth() + 1, day: today.getDate() };
|
|
47
|
+
}
|
|
48
|
+
this.minEndDate = this.minStartDate;
|
|
49
|
+
// set the maxDate to today by default
|
|
50
|
+
this.maxStartDate = { year: today.getFullYear(), month: today.getMonth() + 1, day: today.getDate() };
|
|
51
|
+
this.maxEndDate = this.maxStartDate;
|
|
52
|
+
if (this.inputEndData) {
|
|
53
|
+
let endDate = new Date(this.inputEndData);
|
|
54
|
+
this.maxStartDate = { year: endDate.getFullYear(), month: endDate.getMonth() + 1, day: endDate.getDate() };
|
|
55
|
+
}
|
|
56
|
+
if (this.inputStartData) {
|
|
57
|
+
let startDate = new Date(this.inputStartData);
|
|
58
|
+
this.minEndDate = { year: startDate.getFullYear(), month: startDate.getMonth() + 1, day: startDate.getDate() };
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
DateRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
+
DateRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: DateRangeComponent, selector: "hci-date-range", inputs: { dateFormat: "dateFormat", inputStartData: "inputStartData", inputEndData: "inputEndData", startLabel: "startLabel", endLabel: "endLabel", minStartDate: "minStartDate" }, outputs: { inputDataChange: "inputDataChange" }, viewQueries: [{ propertyName: "sp", first: true, predicate: ["startdate"], descendants: true, static: true }, { propertyName: "ep", first: true, predicate: ["enddate"], descendants: true, static: true }], ngImport: i0, template: `
|
|
64
|
+
<div class="d-flex flex-wrap date-range">
|
|
65
|
+
<hci-date #startdate
|
|
66
|
+
class="date"
|
|
67
|
+
[label]="startLabel"
|
|
68
|
+
[(inputData)]="inputStartData"
|
|
69
|
+
(inputDataChange)="onClickSubmitStartDate($event)"
|
|
70
|
+
[dateFormat]="dateFormat"
|
|
71
|
+
[minDate]="minStartDate"
|
|
72
|
+
[maxDate]="maxStartDate">
|
|
73
|
+
</hci-date>
|
|
74
|
+
<hci-date #enddate
|
|
75
|
+
class="date"
|
|
76
|
+
[label]="endLabel"
|
|
77
|
+
[(inputData)]="inputEndData"
|
|
78
|
+
(inputDataChange)="onClickSubmitEndDate($event)"
|
|
79
|
+
[dateFormat]="dateFormat"
|
|
80
|
+
[minDate]="minEndDate"
|
|
81
|
+
[maxDate]="maxEndDate">
|
|
82
|
+
</hci-date>
|
|
83
|
+
</div>
|
|
84
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.DateComponent, selector: "hci-date", inputs: ["dateFormat", "minDate", "maxDate", "label", "inputData", "modifiedData"], outputs: ["inputDataChange"] }] });
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DateRangeComponent, decorators: [{
|
|
86
|
+
type: Component,
|
|
87
|
+
args: [{
|
|
88
|
+
selector: "hci-date-range",
|
|
89
|
+
template: `
|
|
90
|
+
<div class="d-flex flex-wrap date-range">
|
|
91
|
+
<hci-date #startdate
|
|
92
|
+
class="date"
|
|
93
|
+
[label]="startLabel"
|
|
94
|
+
[(inputData)]="inputStartData"
|
|
95
|
+
(inputDataChange)="onClickSubmitStartDate($event)"
|
|
96
|
+
[dateFormat]="dateFormat"
|
|
97
|
+
[minDate]="minStartDate"
|
|
98
|
+
[maxDate]="maxStartDate">
|
|
99
|
+
</hci-date>
|
|
100
|
+
<hci-date #enddate
|
|
101
|
+
class="date"
|
|
102
|
+
[label]="endLabel"
|
|
103
|
+
[(inputData)]="inputEndData"
|
|
104
|
+
(inputDataChange)="onClickSubmitEndDate($event)"
|
|
105
|
+
[dateFormat]="dateFormat"
|
|
106
|
+
[minDate]="minEndDate"
|
|
107
|
+
[maxDate]="maxEndDate">
|
|
108
|
+
</hci-date>
|
|
109
|
+
</div>
|
|
110
|
+
`
|
|
111
|
+
}]
|
|
112
|
+
}], propDecorators: { sp: [{
|
|
113
|
+
type: ViewChild,
|
|
114
|
+
args: ["startdate", { static: true }]
|
|
115
|
+
}], ep: [{
|
|
116
|
+
type: ViewChild,
|
|
117
|
+
args: ["enddate", { static: true }]
|
|
118
|
+
}], dateFormat: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], inputStartData: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], inputEndData: [{
|
|
123
|
+
type: Input
|
|
124
|
+
}], startLabel: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], endLabel: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], inputDataChange: [{
|
|
129
|
+
type: Output
|
|
130
|
+
}], minStartDate: [{
|
|
131
|
+
type: Input
|
|
132
|
+
}] } });
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1kYXRlLXJhbmdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0L3NyYy9kYXRlL2RhdGUtZGF0ZS1yYW5nZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFpQixNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRS9GLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBRXBEOzs7O0dBSUc7QUEwQkgsTUFBTSxPQUFPLGtCQUFrQjtJQXpCL0I7UUFpQ0cseUNBQXlDO1FBQ2hDLGVBQVUsR0FBVyxXQUFXLENBQUM7UUFLaEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO0tBd0R4RDtJQWpERSxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7TUFFRTtJQUNILGVBQWU7UUFDWiw2RkFBNkY7UUFDN0YsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUM3QyxJQUFJLEVBQUUsR0FBUyxJQUFJLElBQUksQ0FBUyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEdBQUcsRUFBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUMsQ0FBQztTQUMzRjtJQUNKLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxTQUFTO1FBQzlCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQiw2RkFBNkY7UUFDN0YsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ25DLElBQUksRUFBRSxHQUFTLElBQUksSUFBSSxDQUFTLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsR0FBRyxFQUFDLElBQUksRUFBRSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBQyxDQUFDO1NBQzNGO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFPO1FBQzFCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVPLFFBQVE7UUFDZCxxREFBcUQ7UUFDckQsSUFBSSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNwQixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBQyxDQUFDO1NBQzNHO1FBQ0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3BDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBUyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBQyxDQUFDO1NBQzVHO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JCLElBQUksU0FBUyxHQUFHLElBQUksSUFBSSxDQUFTLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFDLENBQUM7U0FDaEg7SUFDSCxDQUFDOzsrR0FyRVUsa0JBQWtCO21HQUFsQixrQkFBa0Isd2VBdkJuQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJUOzJGQUVVLGtCQUFrQjtrQkF6QjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQlQ7aUJBQ0Y7OEJBSUcsRUFBRTtzQkFERCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBSXRDLEVBQUU7c0JBREQsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUk1QixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFFRSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIEFmdGVyVmlld0luaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuaW1wb3J0IHtEYXRlQ29tcG9uZW50fSBmcm9tIFwiLi9kYXRlLWRhdGUuY29tcG9uZW50XCI7XHJcblxyXG4vKipcclxuICogVE9ETzogQ29uZmlybSB0aW1lem9uZSBiZWhhdmlvci5cclxuICpcclxuICogQHNpbmNlIDQuMC4wXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktZGF0ZS1yYW5nZVwiLFxyXG4gIHRlbXBsYXRlOiBgICBcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC13cmFwIGRhdGUtcmFuZ2VcIj5cclxuICAgICAgPGhjaS1kYXRlICNzdGFydGRhdGVcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZGF0ZVwiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwic3RhcnRMYWJlbFwiXHJcbiAgICAgICAgICAgICAgICBbKGlucHV0RGF0YSldPVwiaW5wdXRTdGFydERhdGFcIlxyXG4gICAgICAgICAgICAgICAgKGlucHV0RGF0YUNoYW5nZSk9XCJvbkNsaWNrU3VibWl0U3RhcnREYXRlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiXHJcbiAgICAgICAgICAgICAgICBbbWluRGF0ZV09XCJtaW5TdGFydERhdGVcIlxyXG4gICAgICAgICAgICAgICAgW21heERhdGVdPVwibWF4U3RhcnREYXRlXCI+XHJcbiAgICAgIDwvaGNpLWRhdGU+XHJcbiAgICAgIDxoY2ktZGF0ZSAjZW5kZGF0ZVxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkYXRlXCJcclxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJlbmRMYWJlbFwiXHJcbiAgICAgICAgICAgICAgICBbKGlucHV0RGF0YSldPVwiaW5wdXRFbmREYXRhXCJcclxuICAgICAgICAgICAgICAgIChpbnB1dERhdGFDaGFuZ2UpPVwib25DbGlja1N1Ym1pdEVuZERhdGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0XCJcclxuICAgICAgICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkVuZERhdGVcIlxyXG4gICAgICAgICAgICAgICAgW21heERhdGVdPVwibWF4RW5kRGF0ZVwiPlxyXG4gICAgICA8L2hjaS1kYXRlPlxyXG4gICAgPC9kaXY+XHJcbiAgYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gICAgQFZpZXdDaGlsZChcInN0YXJ0ZGF0ZVwiLCB7c3RhdGljOiB0cnVlfSlcclxuICAgIHNwOiBEYXRlQ29tcG9uZW50O1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoXCJlbmRkYXRlXCIsIHtzdGF0aWM6IHRydWV9KVxyXG4gICAgZXA6IERhdGVDb21wb25lbnQ7XHJcblxyXG4gICAvLyBCaW5kZWQgZGF0YSBmcm9tIHRoZSBwYXJlbnQgY29tcG9uZW50LlxyXG4gICBASW5wdXQoKSBkYXRlRm9ybWF0OiBzdHJpbmcgPSBcInNob3J0RGF0ZVwiO1xyXG4gICBASW5wdXQoKSBpbnB1dFN0YXJ0RGF0YTogT2JqZWN0O1xyXG4gICBASW5wdXQoKSBpbnB1dEVuZERhdGE6IE9iamVjdDtcclxuICAgQElucHV0KCkgc3RhcnRMYWJlbDogc3RyaW5nO1xyXG4gICBASW5wdXQoKSBlbmRMYWJlbDogc3RyaW5nO1xyXG4gICBAT3V0cHV0KCkgaW5wdXREYXRhQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuXHJcbiAgIEBJbnB1dCgpIG1pblN0YXJ0RGF0ZTogYW55O1xyXG4gICBwdWJsaWMgbWF4U3RhcnREYXRlO1xyXG4gICBwdWJsaWMgbWluRW5kRGF0ZTtcclxuICAgcHVibGljIG1heEVuZERhdGU7XHJcblxyXG4gICBuZ09uSW5pdCgpIHtcclxuICAgICB0aGlzLnNldFJhbmdlKCk7XHJcbiAgIH1cclxuXHJcbiAgIC8qKlxyXG4gICAqXHJcbiAgICovXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgIC8vIGlmIHRoZXJlIGlzIG5vIHN0YXJ0IGRhdGUgYnV0IHRoZXJlIGlzIGFuIGVuZCBkYXRlLCBtYWtlIHRoZSBzdGFydCBkYXRlIGdvIHRvIHRoZSBlbmQgZGF0ZVxyXG4gICAgIGlmICghdGhpcy5pbnB1dFN0YXJ0RGF0YSAmJiB0aGlzLmlucHV0RW5kRGF0YSkge1xyXG4gICAgICAgbGV0IGR0OiBEYXRlID0gbmV3IERhdGUoPHN0cmluZz50aGlzLmlucHV0RW5kRGF0YSk7XHJcbiAgICAgICB0aGlzLnNwLnN0YXJ0RGF0ZSA9IHt5ZWFyOiBkdC5nZXRGdWxsWWVhcigpLCBtb250aDogZHQuZ2V0TW9udGgoKSArIDEsIGRheTogZHQuZ2V0RGF0ZSgpfTtcclxuICAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrU3VibWl0U3RhcnREYXRlKHN0YXJ0RGF0YSkge1xyXG4gICAgdGhpcy5zZXRSYW5nZSgpO1xyXG4gICAgLy8gaWYgdGhlcmUgaXMgbm8gc3RhcnQgZGF0ZSBidXQgdGhlcmUgaXMgYW4gZW5kIGRhdGUsIG1ha2UgdGhlIHN0YXJ0IGRhdGUgZ28gdG8gdGhlIGVuZCBkYXRlXHJcbiAgICBpZiAoIXN0YXJ0RGF0YSAmJiB0aGlzLmlucHV0RW5kRGF0YSkge1xyXG4gICAgICBsZXQgZHQ6IERhdGUgPSBuZXcgRGF0ZSg8c3RyaW5nPnRoaXMuaW5wdXRFbmREYXRhKTtcclxuICAgICAgdGhpcy5zcC5zdGFydERhdGUgPSB7eWVhcjogZHQuZ2V0RnVsbFllYXIoKSwgbW9udGg6IGR0LmdldE1vbnRoKCkgKyAxLCBkYXk6IGR0LmdldERhdGUoKX07XHJcbiAgICB9XHJcbiAgICB0aGlzLmlucHV0RGF0YUNoYW5nZS5lbWl0KFt0aGlzLmlucHV0U3RhcnREYXRhLCB0aGlzLmlucHV0RW5kRGF0YV0pO1xyXG4gIH1cclxuXHJcbiAgb25DbGlja1N1Ym1pdEVuZERhdGUoZW5kRGF0YSkge1xyXG4gICAgdGhpcy5zZXRSYW5nZSgpO1xyXG4gICAgdGhpcy5pbnB1dERhdGFDaGFuZ2UuZW1pdChbdGhpcy5pbnB1dFN0YXJ0RGF0YSwgdGhpcy5pbnB1dEVuZERhdGFdKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0UmFuZ2UoKSB7XHJcbiAgICAvLyBzZXQgdGhlIG1pbkRhdGUgdG8gMjAgeWVhcnMgaW4gdGhlIHBhc3QgYnkgZGVmYXVsdFxyXG4gICAgbGV0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgIGlmICghdGhpcy5taW5TdGFydERhdGUpIHtcclxuICAgICAgICB0aGlzLm1pblN0YXJ0RGF0ZSA9IHt5ZWFyOiB0b2RheS5nZXRGdWxsWWVhcigpIC0gMjAsIG1vbnRoOiB0b2RheS5nZXRNb250aCgpICsgMSwgZGF5OiB0b2RheS5nZXREYXRlKCl9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5taW5FbmREYXRlID0gdGhpcy5taW5TdGFydERhdGU7XHJcbiAgICAvLyBzZXQgdGhlIG1heERhdGUgdG8gdG9kYXkgYnkgZGVmYXVsdFxyXG4gICAgdGhpcy5tYXhTdGFydERhdGUgPSB7eWVhcjogdG9kYXkuZ2V0RnVsbFllYXIoKSwgbW9udGg6IHRvZGF5LmdldE1vbnRoKCkgKyAxLCBkYXk6IHRvZGF5LmdldERhdGUoKX07XHJcbiAgICB0aGlzLm1heEVuZERhdGUgPSB0aGlzLm1heFN0YXJ0RGF0ZTtcclxuICAgIGlmICh0aGlzLmlucHV0RW5kRGF0YSkge1xyXG4gICAgICAgIGxldCBlbmREYXRlID0gbmV3IERhdGUoPHN0cmluZz50aGlzLmlucHV0RW5kRGF0YSk7XHJcbiAgICAgICAgdGhpcy5tYXhTdGFydERhdGUgPSB7eWVhcjogZW5kRGF0ZS5nZXRGdWxsWWVhcigpLCBtb250aDogZW5kRGF0ZS5nZXRNb250aCgpICsgMSwgZGF5OiBlbmREYXRlLmdldERhdGUoKX07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5pbnB1dFN0YXJ0RGF0YSkge1xyXG4gICAgICAgIGxldCBzdGFydERhdGUgPSBuZXcgRGF0ZSg8c3RyaW5nPnRoaXMuaW5wdXRTdGFydERhdGEpO1xyXG4gICAgICAgIHRoaXMubWluRW5kRGF0ZSA9IHt5ZWFyOiBzdGFydERhdGUuZ2V0RnVsbFllYXIoKSwgbW9udGg6IHN0YXJ0RGF0ZS5nZXRNb250aCgpICsgMSwgZGF5OiBzdGFydERhdGUuZ2V0RGF0ZSgpfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|