nxt-pick-datetime 15.0.0 → 16.0.0-alpha.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/README.md +34 -185
- package/assets/picker.scss +43 -33
- package/esm2020/lib/class/date-time-adapter.class.mjs +4 -19
- package/esm2020/lib/class/date-time-format.class.mjs +2 -2
- package/esm2020/lib/class/date-time.class.mjs +19 -68
- package/esm2020/lib/class/dialog-config.class.mjs +12 -11
- package/esm2020/lib/class/dialog-ref.class.mjs +4 -5
- package/esm2020/lib/date-time/calendar/calendar.component.mjs +29 -23
- package/esm2020/lib/date-time/calendar-body/calendar-body.component.mjs +13 -11
- package/esm2020/lib/date-time/calendar-month-view/calendar-month-view.component.mjs +35 -35
- package/esm2020/lib/date-time/calendar-multi-year-view/calendar-multi-year-view.component.mjs +37 -32
- package/esm2020/lib/date-time/calendar-year-view/calendar-year-view.component.mjs +32 -28
- package/esm2020/lib/date-time/date-time-inline/date-time-inline.component.mjs +43 -22
- package/esm2020/lib/date-time/date-time-picker/date-time-picker.component.mjs +92 -62
- package/esm2020/lib/date-time/date-time-picker-container/date-time-picker-container.animations.mjs +2 -1
- package/esm2020/lib/date-time/date-time-picker-container/date-time-picker-container.component.mjs +26 -19
- package/esm2020/lib/date-time/date-time-picker-input.directive.mjs +40 -28
- package/esm2020/lib/date-time/date-time-picker-intl.service.mjs +12 -12
- package/esm2020/lib/date-time/date-time-picker-trigger.directive.mjs +5 -4
- package/esm2020/lib/date-time/date-time.module.mjs +4 -4
- package/esm2020/lib/date-time/number-fixed-len.pipe.mjs +5 -4
- package/esm2020/lib/date-time/timer/timer.component.mjs +12 -10
- package/esm2020/lib/date-time/timer-box/timer-box.component.mjs +6 -4
- package/esm2020/lib/dialog/dialog-container/dialog-container.component.mjs +15 -5
- package/esm2020/lib/dialog/dialog.module.mjs +6 -5
- package/esm2020/lib/dialog/dialog.service.mjs +20 -11
- package/esm2020/lib/utils/object.mjs +3 -1
- package/esm2020/moment-adapter/date-time-adapter.class.mjs +15 -11
- package/esm2020/moment-adapter/date-time-format.class.mjs +4 -1
- package/esm2020/moment-adapter/moment-adapter.module.mjs +9 -9
- package/esm2020/moment-adapter/public-api.mjs +2 -1
- package/esm2020/native-adapter/date-time-adapter.class.mjs +34 -12
- package/esm2020/native-adapter/date-time-format.class.mjs +4 -1
- package/esm2020/native-adapter/native-adapter.module.mjs +4 -4
- package/esm2020/native-adapter/public-api.mjs +1 -1
- package/esm2020/public-api.mjs +2 -2
- package/fesm2015/nxt-pick-datetime-moment-adapter.mjs +24 -17
- package/fesm2015/nxt-pick-datetime-moment-adapter.mjs.map +1 -1
- package/fesm2015/nxt-pick-datetime-native-adapter.mjs +40 -15
- package/fesm2015/nxt-pick-datetime-native-adapter.mjs.map +1 -1
- package/fesm2015/nxt-pick-datetime.mjs +456 -393
- package/fesm2015/nxt-pick-datetime.mjs.map +1 -1
- package/fesm2020/nxt-pick-datetime-moment-adapter.mjs +24 -17
- package/fesm2020/nxt-pick-datetime-moment-adapter.mjs.map +1 -1
- package/fesm2020/nxt-pick-datetime-native-adapter.mjs +40 -15
- package/fesm2020/nxt-pick-datetime-native-adapter.mjs.map +1 -1
- package/fesm2020/nxt-pick-datetime.mjs +456 -393
- package/fesm2020/nxt-pick-datetime.mjs.map +1 -1
- package/lib/class/date-time-adapter.class.d.ts +4 -14
- package/lib/class/date-time-format.class.d.ts +1 -1
- package/lib/class/date-time.class.d.ts +16 -29
- package/lib/class/dialog-config.class.d.ts +22 -22
- package/lib/class/dialog-ref.class.d.ts +5 -5
- package/lib/date-time/calendar/calendar.component.d.ts +27 -21
- package/lib/date-time/calendar-body/calendar-body.component.d.ts +11 -9
- package/lib/date-time/calendar-month-view/calendar-month-view.component.d.ts +23 -22
- package/lib/date-time/calendar-multi-year-view/calendar-multi-year-view.component.d.ts +26 -20
- package/lib/date-time/calendar-year-view/calendar-year-view.component.d.ts +21 -18
- package/lib/date-time/date-time-inline/date-time-inline.component.d.ts +39 -21
- package/lib/date-time/date-time-picker/date-time-picker.component.d.ts +58 -41
- package/lib/date-time/date-time-picker-container/date-time-picker-container.animations.d.ts +1 -0
- package/lib/date-time/date-time-picker-container/date-time-picker-container.component.d.ts +16 -8
- package/lib/date-time/date-time-picker-input.directive.d.ts +46 -37
- package/lib/date-time/date-time-picker-intl.service.d.ts +8 -8
- package/lib/date-time/date-time-picker-trigger.directive.d.ts +1 -0
- package/lib/date-time/number-fixed-len.pipe.d.ts +1 -0
- package/lib/date-time/timer/timer.component.d.ts +10 -8
- package/lib/date-time/timer-box/timer-box.component.d.ts +3 -1
- package/lib/dialog/dialog-container/dialog-container.component.d.ts +12 -3
- package/lib/dialog/dialog.module.d.ts +1 -0
- package/lib/dialog/dialog.service.d.ts +14 -7
- package/lib/utils/object.d.ts +2 -0
- package/moment-adapter/date-time-adapter.class.d.ts +4 -4
- package/moment-adapter/date-time-format.class.d.ts +3 -0
- package/moment-adapter/public-api.d.ts +1 -0
- package/native-adapter/date-time-adapter.class.d.ts +1 -1
- package/native-adapter/date-time-format.class.d.ts +3 -0
- package/package.json +7 -7
- package/public-api.d.ts +3 -2
package/README.md
CHANGED
|
@@ -1,204 +1,53 @@
|
|
|
1
|
-
# Angular
|
|
1
|
+
# Angular date & time picker
|
|
2
2
|
|
|
3
|
-
[](https://github.com/Liquid-JS/nxt-components/blob/master/LICENSE)
|
|
4
4
|
[](https://www.npmjs.com/package/nxt-pick-datetime)
|
|
5
|
+
[](https://www.npmjs.com/package/nxt-pick-datetime)
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
**This package supports Angular 9**
|
|
7
|
+
Simple responsive Angular date and time picker.
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Quick links
|
|
10
10
|
|
|
11
|
-
-
|
|
11
|
+
- [Demo](https://liquid-js.github.io/nxt-components/demo/pick-datetime)
|
|
12
|
+
- [Getting started](https://liquid-js.github.io/nxt-components/demo/pick-datetime/getting-started)
|
|
13
|
+
- [Accessibility](https://liquid-js.github.io/nxt-components/demo/pick-datetime/accessibility)
|
|
14
|
+
- [Validation](https://liquid-js.github.io/nxt-components/demo/pick-datetime/validation)
|
|
15
|
+
- [Custom date adapter](https://liquid-js.github.io/nxt-components/demo/pick-datetime/custom-adapter)
|
|
16
|
+
- [API docs](https://liquid-js.github.io/nxt-components/docs/nxt-pick-datetime)
|
|
12
17
|
|
|
13
|
-
|
|
18
|
+
### Installing
|
|
14
19
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
## How to Use
|
|
19
|
-
|
|
20
|
-
1. Install with [npm](https://www.npmjs.com): `npm install nxt-pick-datetime --save`
|
|
21
|
-
2. Add styles.
|
|
22
|
-
|
|
23
|
-
If you are using Angular CLI, you can add this to `angular.json` :
|
|
24
|
-
|
|
25
|
-
```js
|
|
26
|
-
"styles": [
|
|
27
|
-
...,
|
|
28
|
-
"nxt-pick-datetime/assets/picker.scss"
|
|
29
|
-
]
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
3. Add **DateTimeModule** and **NativeDateTimeModule** to your **@NgModule** like example below
|
|
33
|
-
|
|
34
|
-
```typescript
|
|
35
|
-
import { NgModule } from '@angular/core';
|
|
36
|
-
import { BrowserModule } from '@angular/platform-browser';
|
|
37
|
-
import { MyTestApp } from './my-test-app';
|
|
38
|
-
|
|
39
|
-
import { DateTimeModule } from 'nxt-pick-datetime';
|
|
40
|
-
import { NativeDateTimeModule } from 'nxt-pick-datetime/native-adapter';
|
|
41
|
-
|
|
42
|
-
@NgModule({
|
|
43
|
-
imports: [
|
|
44
|
-
BrowserModule,
|
|
45
|
-
DateTimeModule,
|
|
46
|
-
NativeDateTimeModule,
|
|
47
|
-
],
|
|
48
|
-
declarations: [ MyTestApp ],
|
|
49
|
-
bootstrap: [ MyTestApp ]
|
|
50
|
-
})
|
|
51
|
-
export class MyTestAppModule {}
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
4. Connecting a picker to an input and a trigger.
|
|
55
|
-
|
|
56
|
-
```html
|
|
57
|
-
<input [nxtDateTime]="dt1" [nxtDateTimeTrigger]="dt1" placeholder="Date Time">
|
|
58
|
-
<nxt-date-time #dt1></nxt-date-time>
|
|
20
|
+
```sh
|
|
21
|
+
npm install --save nxt-pick-datetime
|
|
22
|
+
npm install --save moment # if you want to use MomentDateTimeModule
|
|
59
23
|
```
|
|
60
24
|
|
|
61
|
-
|
|
62
|
-
<input [nxtDateTime]="dt2" placeholder="Date Time">
|
|
63
|
-
<span [nxtDateTimeTrigger]="dt2"><i class="fa fa-calendar"></i></span>
|
|
64
|
-
<nxt-date-time #dt2></nxt-date-time>
|
|
65
|
-
```
|
|
25
|
+
### Import main module and DateTime adapter provider
|
|
66
26
|
|
|
67
|
-
The
|
|
68
|
-
and you could learn more about those from [demo page](https://liquid-js.github.io/nxt-components/pick-datetime).
|
|
27
|
+
The date & time picker was built to be date implementation agnostic. It comes with two modules providing date adapter implementation, or you can provide your own adapter by implementing `DateTimeAdapter` (see [documentation](https://liquid-js.github.io/nxt-components/demo/pick-datetime/custom-adapter)).
|
|
69
28
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
This picker uses angular animations to improve the user experience,
|
|
73
|
-
therefore you need to install `@angular/animations` and import `BrowserAnimationsModule` to your application.
|
|
74
|
-
|
|
75
|
-
npm install @angular/animations --save
|
|
29
|
+
- `NativeDateTimeModule` - support for native JavaScript Date object
|
|
30
|
+
- `MomentDateTimeModule` - support for MomentJs
|
|
76
31
|
|
|
77
|
-
```
|
|
78
|
-
import {
|
|
79
|
-
import {
|
|
32
|
+
```ts
|
|
33
|
+
import { DateTimeModule } from 'nxt-pick-datetime'
|
|
34
|
+
import { NativeDateTimeModule } from 'nxt-pick-datetime/native-adapter'
|
|
80
35
|
|
|
81
36
|
@NgModule({
|
|
37
|
+
...
|
|
82
38
|
imports: [
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
]
|
|
87
|
-
//...
|
|
39
|
+
...
|
|
40
|
+
DateTimeModule,
|
|
41
|
+
NativeDateTimeModule
|
|
42
|
+
]
|
|
88
43
|
})
|
|
89
|
-
export class YourAppModule { }
|
|
90
44
|
```
|
|
91
45
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
## Choose a date implementation
|
|
95
|
-
|
|
96
|
-
The date-time picker was built to be date implementation agnostic.
|
|
97
|
-
Developers need to make sure to provide the appropriate pieces for the picker to work with their chosen implementation.
|
|
98
|
-
There are two pre-made modules, users need to import one of them or build your own one (learn more about this from [here](https://danielykpan.github.io/date-time-picker/#locale-formats)).
|
|
99
|
-
|
|
100
|
-
- `NativeDateTimeModule` - support for native JavaScript Date object
|
|
101
|
-
- `MomentDateTimeModule` - support for MomentJs
|
|
46
|
+
### Use it in a template
|
|
102
47
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
| `startView` | `month` , `year` , `multi-year` | Optional | `month` | The view that the calendar should start in. |
|
|
110
|
-
| `startAt` | T/undefined | Optional | `undefined` | The moment to open the picker to initially. |
|
|
111
|
-
| `firstDayOfWeek` | number | Optional | `0` | Set the first day of week. Valid value is from 0 to 6.0: Sunday ~ 6: Saturday |
|
|
112
|
-
| `showSecondsTimer` | boolean | Optional | `false` | When specify it to true, it would show a timer to configure the second's value |
|
|
113
|
-
| `hideOtherMonths` | boolean | Optional | `false` | Whether to hide dates in other months at the start or end of the current month |
|
|
114
|
-
| `hour12Timer` | boolean | Optional | `false` | When specify it to true, the timer would be in hour12 format mode |
|
|
115
|
-
| `stepHour` | number | Optional | `1` | Hours to change per step. |
|
|
116
|
-
| `stepMinute` | number | Optional | `1` | Minutes to change per step. |
|
|
117
|
-
| `stepSecond` | number | Optional | `1` | Seconds to change per step. |
|
|
118
|
-
| `scrollStrategy` | ScrollStrategy | Optional | `BlockScrollStrategy` | Define the scroll strategy when the picker is open. Learn more this from <https://material.angular.io/cdk/overlay/overview#scroll-strategies>. |
|
|
119
|
-
| `disabled` | boolean | Optional | `false` | When specify to true, it would disable the picker. |
|
|
120
|
-
| `backdropClass` | string/string\[] | Optional | `undefined` | Custom class for the picker backdrop. |
|
|
121
|
-
| `panelClass` | string/string\[] | Optional | `undefined` | Custom class for the picker overlay panel. |
|
|
122
|
-
|
|
123
|
-
## Events for `nxt-date-time`
|
|
124
|
-
|
|
125
|
-
| Events | Parameter | Description |
|
|
126
|
-
| :------------------ | :-------- | :----------------------------------------------------------------------------------------------- |
|
|
127
|
-
| `afterPickerOpen` | void | Callback to invoke when the picker is opened |
|
|
128
|
-
| `afterPickerClosed` | void | Callback to invoke when the picker is closed. |
|
|
129
|
-
| `yearSelected` | T | Callback to invoke when the year is selected. This doesn't imply a change on the selected date. |
|
|
130
|
-
| `monthSelected` | T | Callback to invoke when the month is selected. This doesn't imply a change on the selected date. |
|
|
131
|
-
|
|
132
|
-
## Properties for `input[nxtDateTime]`
|
|
133
|
-
|
|
134
|
-
| Name | Type | Required | Default | Description |
|
|
135
|
-
| :--------------- | :------------------------------------------- | :------- | :---------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
136
|
-
| `nxtDateTime` | `DateTimeComponent<T>` | Require | `undefined` | The date time picker that this input is associated with. |
|
|
137
|
-
| `dateTimeFilter` | `( date: T)=>boolean ` | Optional | `undefined` | A function to filter date time. |
|
|
138
|
-
| `disabled` | boolean | Optional | `false` | When specify to true, it would disable the picker's input. |
|
|
139
|
-
| `min` | `<T>` | Optional | `undefined` | The minimum valid date time. |
|
|
140
|
-
| `max` | `<T>` | Optional | `undefined` | The maximum valid date time. |
|
|
141
|
-
| `selectMode` | `single` , `range` , `rangeFrom` , `rangeTo` | Optional | `single` | Specify the picker's select mode. `single` : a single value allowed, `range` : allow users to select a range of date-time, `rangeFrom` : the input would only show the 'from' value and the picker could only selects 'from' value, `rangeTo` : the input would only show the 'to' value and the picker could only selects 'to' value. |
|
|
142
|
-
| `rangeSeparator` | string | Optional | `~` | The character to separate the 'from' and 'to' in input value in range selectMode. |
|
|
143
|
-
|
|
144
|
-
## Events for `input[nxtDateTime]`
|
|
145
|
-
|
|
146
|
-
| Events | Parameter | Description |
|
|
147
|
-
| :--------------- | :------------------------------------------------------------------ | :---------------------------------------------------------------------------------- |
|
|
148
|
-
| `dateTimeChange` | source: DateTimeInput, value: input value, input: the input element | Callback to invoke when `change` event is fired on this `<input [nxtDateTime]>` |
|
|
149
|
-
| `dateTimeInput` | source: DateTimeInput, value: input value, input: the input element | Callback to invoke when an `input` event is fired on this `<input [nxtDateTime]>` . |
|
|
150
|
-
|
|
151
|
-
## Properties for `[nxtDateTimeTrigger]`
|
|
152
|
-
|
|
153
|
-
| Name | Type | Required | Default | Description |
|
|
154
|
-
| :------------------- | :--------------------- | :------- | :---------- | :--------------------------------------------------------- |
|
|
155
|
-
| `nxtDateTimeTrigger` | `DateTimeComponent<T>` | Require | `undefined` | The date time picker that this trigger is associated with. |
|
|
156
|
-
| `disabled` | boolean | Optional | `false` | When specify to true, it would disable the trigger. |
|
|
157
|
-
|
|
158
|
-
## Properties for `[nxtDateTimeTrigger]`
|
|
159
|
-
|
|
160
|
-
| Name | Type | Required | Default | Description |
|
|
161
|
-
| :------------------- | :--------------------- | :------- | :---------- | :--------------------------------------------------------- |
|
|
162
|
-
| `nxtDateTimeTrigger` | `DateTimeComponent<T>` | Require | `undefined` | The date time picker that this trigger is associated with. |
|
|
163
|
-
| `disabled` | boolean | Optional | `false` | When specify to true, it would disable the trigger. |
|
|
164
|
-
|
|
165
|
-
## Properties for `nxt-date-time-inline`
|
|
166
|
-
|
|
167
|
-
| Name | Type | Required | Default | Description |
|
|
168
|
-
| :----------------- | :------------------------------------------- | :------- | :---------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
169
|
-
| `pickerType` | `both` , `calendar` , `timer` | Optional | `both` | Set the type of the dateTime picker. `both` : show both calendar and timer, `calendar` : only show calendar, `timer` : only show timer. |
|
|
170
|
-
| `startView` | `month` , `year` , `multi-year` | Optional | `month` | The view that the calendar should start in. |
|
|
171
|
-
| `startAt` | T/undefined | Optional | `undefined` | The moment to open the picker to initially. |
|
|
172
|
-
| `firstDayOfWeek` | number | Optional | `0` | Set the first day of week. Valid value is from 0 to 6.0: Sunday ~ 6: Saturday |
|
|
173
|
-
| `showSecondsTimer` | boolean | Optional | `false` | When specify it to true, it would show a timer to configure the second's value |
|
|
174
|
-
| `hideOtherMonths` | boolean | Optional | `false` | Whether to hide dates in other months at the start or end of the current month |
|
|
175
|
-
| `hour12Timer` | boolean | Optional | `false` | When specify it to true, the timer would be in hour12 format mode |
|
|
176
|
-
| `stepHour` | number | Optional | `1` | Hours to change per step. |
|
|
177
|
-
| `stepMinute` | number | Optional | `1` | Minutes to change per step. |
|
|
178
|
-
| `stepSecond` | number | Optional | `1` | Seconds to change per step. |
|
|
179
|
-
| `disabled` | boolean | Optional | `false` | When specify to true, it would disable the picker. |
|
|
180
|
-
| `dateTimeFilter` | `( date: T)=>boolean ` | Optional | `undefined` | A function to filter date time. |
|
|
181
|
-
| `min` | `<T>` | Optional | `undefined` | The minimum valid date time. |
|
|
182
|
-
| `max` | `<T>` | Optional | `undefined` | The maximum valid date time. |
|
|
183
|
-
| `selectMode` | `single` , `range` , `rangeFrom` , `rangeTo` | Optional | `single` | Specify the picker's select mode. `single` : a single value allowed, `range` : allow users to select a range of date-time, `rangeFrom` : the input would only show the 'from' value and the picker could only selects 'from' value, `rangeTo` : the input would only show the 'to' value and the picker could only selects 'to' value. |
|
|
184
|
-
|
|
185
|
-
## Localization and DateTime Format
|
|
186
|
-
|
|
187
|
-
Localization for different languages and formats is defined by `NXT_DATE_TIME_LOCALE` and `NXT_DATE_TIME_FORMATS`. You could learn more about this from [here](https://danielykpan.github.io/date-time-picker#locale-formats).
|
|
188
|
-
|
|
189
|
-
## Dependencies
|
|
190
|
-
|
|
191
|
-
none
|
|
192
|
-
|
|
193
|
-
## Demo
|
|
194
|
-
|
|
195
|
-
- Online doc is [here](https://daniel-projects.firebaseapp.com/nxtng/date-time-picker)
|
|
196
|
-
- Online demo is [here](https://liquid-js.github.io/nxt-components/pick-datetime)
|
|
197
|
-
|
|
198
|
-
## License
|
|
199
|
-
|
|
200
|
-
- License: MIT
|
|
201
|
-
|
|
202
|
-
## Author
|
|
203
|
-
|
|
204
|
-
**Daniel YK Pan**
|
|
48
|
+
```html
|
|
49
|
+
<input [nxtDateTime]="picker"
|
|
50
|
+
[nxtDateTimeTrigger]="picker"
|
|
51
|
+
placeholder="Date and time">
|
|
52
|
+
<nxt-date-time #picker></nxt-date-time>
|
|
53
|
+
```
|
package/assets/picker.scss
CHANGED
|
@@ -12,7 +12,8 @@ $cdk-overlay-dark-backdrop-background: rgba(0, 0, 0, 0.288);
|
|
|
12
12
|
$backdrop-animation-duration: 400ms !default;
|
|
13
13
|
$backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;
|
|
14
14
|
|
|
15
|
-
.cdk-overlay-container,
|
|
15
|
+
.cdk-overlay-container,
|
|
16
|
+
.cdk-global-overlay-wrapper {
|
|
16
17
|
// Disable events from being captured on the overlay container.
|
|
17
18
|
pointer-events: none;
|
|
18
19
|
|
|
@@ -95,7 +96,8 @@ $backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;
|
|
|
95
96
|
// capturing the user's mouse scroll events. Since we also can't use something like
|
|
96
97
|
// `rgba(0, 0, 0, 0)`, we work around the inconsistency by not setting the background at
|
|
97
98
|
// all and using `opacity` to make the element transparent.
|
|
98
|
-
&,
|
|
99
|
+
&,
|
|
100
|
+
&.cdk-overlay-backdrop-showing {
|
|
99
101
|
opacity: 0;
|
|
100
102
|
}
|
|
101
103
|
}
|
|
@@ -185,7 +187,7 @@ $theme-color: #3f51b5;
|
|
|
185
187
|
align-items: center;
|
|
186
188
|
font-size: 1em;
|
|
187
189
|
width: 100%;
|
|
188
|
-
padding: .5em;
|
|
190
|
+
padding: 0.5em;
|
|
189
191
|
color: #000000;
|
|
190
192
|
|
|
191
193
|
.nxt-dt-calendar-control-content {
|
|
@@ -195,7 +197,7 @@ $theme-color: #3f51b5;
|
|
|
195
197
|
align-items: center;
|
|
196
198
|
|
|
197
199
|
.nxt-dt-calendar-control-button {
|
|
198
|
-
padding: 0 .8em;
|
|
200
|
+
padding: 0 0.8em;
|
|
199
201
|
|
|
200
202
|
&:hover {
|
|
201
203
|
background-color: rgba(0, 0, 0, 0.12);
|
|
@@ -208,7 +210,7 @@ $theme-color: #3f51b5;
|
|
|
208
210
|
display: flex;
|
|
209
211
|
flex-direction: column;
|
|
210
212
|
flex: 1 1 auto;
|
|
211
|
-
padding: 0 .5em .5em;
|
|
213
|
+
padding: 0 0.5em 0.5em;
|
|
212
214
|
outline: 0;
|
|
213
215
|
}
|
|
214
216
|
|
|
@@ -225,7 +227,7 @@ $theme-color: #3f51b5;
|
|
|
225
227
|
width: calc(100% - 3em);
|
|
226
228
|
|
|
227
229
|
.nxt-dt-calendar-header th {
|
|
228
|
-
padding-bottom: .25em;
|
|
230
|
+
padding-bottom: 0.25em;
|
|
229
231
|
}
|
|
230
232
|
}
|
|
231
233
|
}
|
|
@@ -240,7 +242,7 @@ $theme-color: #3f51b5;
|
|
|
240
242
|
|
|
241
243
|
.nxt-dt-weekdays {
|
|
242
244
|
th {
|
|
243
|
-
font-size: .7em;
|
|
245
|
+
font-size: 0.7em;
|
|
244
246
|
font-weight: 400;
|
|
245
247
|
text-align: center;
|
|
246
248
|
padding-bottom: 1em;
|
|
@@ -250,14 +252,14 @@ $theme-color: #3f51b5;
|
|
|
250
252
|
.nxt-dt-calendar-table-divider {
|
|
251
253
|
position: relative;
|
|
252
254
|
height: 1px;
|
|
253
|
-
padding-bottom: .5em;
|
|
255
|
+
padding-bottom: 0.5em;
|
|
254
256
|
|
|
255
257
|
&:after {
|
|
256
|
-
content:
|
|
258
|
+
content: "";
|
|
257
259
|
position: absolute;
|
|
258
260
|
top: 0;
|
|
259
|
-
left:
|
|
260
|
-
right:
|
|
261
|
+
left: -0.5em;
|
|
262
|
+
right: -0.5em;
|
|
261
263
|
height: 1px;
|
|
262
264
|
background: rgba(0, 0, 0, 0.12);
|
|
263
265
|
}
|
|
@@ -284,7 +286,7 @@ $theme-color: #3f51b5;
|
|
|
284
286
|
box-sizing: border-box;
|
|
285
287
|
width: 90%;
|
|
286
288
|
height: 90%;
|
|
287
|
-
font-size: .8em;
|
|
289
|
+
font-size: 0.8em;
|
|
288
290
|
line-height: 1;
|
|
289
291
|
border: 1px solid transparent;
|
|
290
292
|
border-radius: 999px;
|
|
@@ -293,7 +295,7 @@ $theme-color: #3f51b5;
|
|
|
293
295
|
}
|
|
294
296
|
|
|
295
297
|
.nxt-dt-calendar-cell-out {
|
|
296
|
-
opacity: .2;
|
|
298
|
+
opacity: 0.2;
|
|
297
299
|
}
|
|
298
300
|
|
|
299
301
|
.nxt-dt-calendar-cell-today:not(.nxt-dt-calendar-cell-selected) {
|
|
@@ -317,7 +319,7 @@ $theme-color: #3f51b5;
|
|
|
317
319
|
}
|
|
318
320
|
|
|
319
321
|
& > .nxt-dt-calendar-cell-content.nxt-dt-calendar-cell-selected {
|
|
320
|
-
opacity: .4;
|
|
322
|
+
opacity: 0.4;
|
|
321
323
|
}
|
|
322
324
|
|
|
323
325
|
& > .nxt-dt-calendar-cell-today:not(.nxt-dt-calendar-cell-selected) {
|
|
@@ -334,13 +336,19 @@ $theme-color: #3f51b5;
|
|
|
334
336
|
background: rgba($theme-color, 0.2);
|
|
335
337
|
|
|
336
338
|
&.nxt-dt-calendar-cell-range-from {
|
|
337
|
-
border-top-left-radius:
|
|
338
|
-
|
|
339
|
+
border-top-left-radius: 50%;
|
|
340
|
+
|
|
341
|
+
&:not(.nxt-dt-calendar-cell-range-from-long) {
|
|
342
|
+
border-bottom-left-radius: 50%;
|
|
343
|
+
}
|
|
339
344
|
}
|
|
340
345
|
|
|
341
346
|
&.nxt-dt-calendar-cell-range-to {
|
|
342
|
-
border-
|
|
343
|
-
|
|
347
|
+
border-bottom-right-radius: 50%;
|
|
348
|
+
|
|
349
|
+
&:not(.nxt-dt-calendar-cell-range-to-long) {
|
|
350
|
+
border-top-right-radius: 50%;
|
|
351
|
+
}
|
|
344
352
|
}
|
|
345
353
|
}
|
|
346
354
|
}
|
|
@@ -350,7 +358,7 @@ $theme-color: #3f51b5;
|
|
|
350
358
|
justify-content: center;
|
|
351
359
|
width: 100%;
|
|
352
360
|
height: 7em;
|
|
353
|
-
padding: .5em;
|
|
361
|
+
padding: 0.5em;
|
|
354
362
|
outline: none;
|
|
355
363
|
}
|
|
356
364
|
|
|
@@ -360,6 +368,7 @@ $theme-color: #3f51b5;
|
|
|
360
368
|
flex-direction: column;
|
|
361
369
|
align-items: center;
|
|
362
370
|
width: 25%;
|
|
371
|
+
flex: 5em 0 1;
|
|
363
372
|
height: 100%;
|
|
364
373
|
}
|
|
365
374
|
|
|
@@ -369,7 +378,7 @@ $theme-color: #3f51b5;
|
|
|
369
378
|
justify-content: center;
|
|
370
379
|
align-items: center;
|
|
371
380
|
width: 100%;
|
|
372
|
-
margin: .2em 0;
|
|
381
|
+
margin: 0.2em 0;
|
|
373
382
|
|
|
374
383
|
.nxt-dt-timer-input {
|
|
375
384
|
display: block;
|
|
@@ -379,7 +388,7 @@ $theme-color: #3f51b5;
|
|
|
379
388
|
border-radius: 3px;
|
|
380
389
|
outline: medium none;
|
|
381
390
|
font-size: 1.2em;
|
|
382
|
-
padding: .2em;
|
|
391
|
+
padding: 0.2em;
|
|
383
392
|
}
|
|
384
393
|
}
|
|
385
394
|
|
|
@@ -387,16 +396,16 @@ $theme-color: #3f51b5;
|
|
|
387
396
|
display: inline-block;
|
|
388
397
|
align-self: flex-end;
|
|
389
398
|
position: absolute;
|
|
390
|
-
width: .6em;
|
|
399
|
+
width: 0.6em;
|
|
391
400
|
height: 100%;
|
|
392
|
-
left:
|
|
401
|
+
left: -0.3em;
|
|
393
402
|
|
|
394
403
|
&:before,
|
|
395
404
|
&:after {
|
|
396
|
-
content:
|
|
405
|
+
content: "";
|
|
397
406
|
display: inline-block;
|
|
398
|
-
width: .35em;
|
|
399
|
-
height: .35em;
|
|
407
|
+
width: 0.35em;
|
|
408
|
+
height: 0.35em;
|
|
400
409
|
position: absolute;
|
|
401
410
|
left: 50%;
|
|
402
411
|
border-radius: 50%;
|
|
@@ -440,7 +449,7 @@ $theme-color: #3f51b5;
|
|
|
440
449
|
.nxt-dt-control-period-button {
|
|
441
450
|
.nxt-dt-control-button-content {
|
|
442
451
|
height: 1.5em;
|
|
443
|
-
padding: 0 .5em;
|
|
452
|
+
padding: 0 0.5em;
|
|
444
453
|
border-radius: 3px;
|
|
445
454
|
transition: background-color 100ms linear;
|
|
446
455
|
}
|
|
@@ -455,7 +464,7 @@ $theme-color: #3f51b5;
|
|
|
455
464
|
align-items: center;
|
|
456
465
|
width: 1em;
|
|
457
466
|
height: 1em;
|
|
458
|
-
margin: .1em;
|
|
467
|
+
margin: 0.1em;
|
|
459
468
|
transition: transform 200ms ease;
|
|
460
469
|
}
|
|
461
470
|
}
|
|
@@ -566,7 +575,7 @@ $theme-color: #3f51b5;
|
|
|
566
575
|
}
|
|
567
576
|
|
|
568
577
|
.nxt-dt-container-info {
|
|
569
|
-
padding: 0 .5em;
|
|
578
|
+
padding: 0 0.5em;
|
|
570
579
|
cursor: pointer;
|
|
571
580
|
|
|
572
581
|
.nxt-dt-container-range {
|
|
@@ -575,8 +584,8 @@ $theme-color: #3f51b5;
|
|
|
575
584
|
.nxt-dt-container-range-content {
|
|
576
585
|
display: flex;
|
|
577
586
|
justify-content: space-between;
|
|
578
|
-
padding: .5em 0;
|
|
579
|
-
font-size: .8em;
|
|
587
|
+
padding: 0.5em 0;
|
|
588
|
+
font-size: 0.8em;
|
|
580
589
|
}
|
|
581
590
|
|
|
582
591
|
&:last-child {
|
|
@@ -611,10 +620,11 @@ $theme-color: #3f51b5;
|
|
|
611
620
|
.nxt-dt-control-button-content {
|
|
612
621
|
width: 100%;
|
|
613
622
|
height: 100%;
|
|
614
|
-
padding: .5em;
|
|
623
|
+
padding: 0.5em;
|
|
615
624
|
}
|
|
616
625
|
|
|
617
|
-
&:focus,
|
|
626
|
+
&:focus,
|
|
627
|
+
&:hover {
|
|
618
628
|
.nxt-dt-control-button-content {
|
|
619
629
|
background: $theme-color;
|
|
620
630
|
color: #ffffff;
|
|
@@ -1,26 +1,11 @@
|
|
|
1
|
-
import { inject, InjectionToken, LOCALE_ID } from '@angular/core';
|
|
2
1
|
import { Subject } from 'rxjs';
|
|
3
|
-
/** InjectionToken for date time picker that can be used to override default locale code. */
|
|
4
|
-
export const NXT_DATE_TIME_LOCALE = new InjectionToken('NXT_DATE_TIME_LOCALE', {
|
|
5
|
-
providedIn: 'root',
|
|
6
|
-
factory: NXT_DATE_TIME_LOCALE_FACTORY
|
|
7
|
-
});
|
|
8
|
-
/** @docs-private */
|
|
9
|
-
export function NXT_DATE_TIME_LOCALE_FACTORY() {
|
|
10
|
-
return inject(LOCALE_ID);
|
|
11
|
-
}
|
|
12
|
-
/** Provider for NXT_DATE_TIME_LOCALE injection token. */
|
|
13
|
-
export const NXT_DATE_TIME_LOCALE_PROVIDER = {
|
|
14
|
-
provide: NXT_DATE_TIME_LOCALE,
|
|
15
|
-
useExisting: LOCALE_ID
|
|
16
|
-
};
|
|
17
2
|
export class DateTimeAdapter {
|
|
18
3
|
constructor() {
|
|
19
|
-
/** A stream that emits when the locale changes
|
|
4
|
+
/** A stream that emits when the locale changes */
|
|
20
5
|
this._localeChanges = new Subject();
|
|
21
|
-
/** total milliseconds in a day
|
|
6
|
+
/** total milliseconds in a day */
|
|
22
7
|
this.millisecondsInDay = 86400000;
|
|
23
|
-
/** total milliseconds in a minute
|
|
8
|
+
/** total milliseconds in a minute */
|
|
24
9
|
this.milliseondsInMinute = 60000;
|
|
25
10
|
}
|
|
26
11
|
get localeChanges() {
|
|
@@ -109,4 +94,4 @@ export class DateTimeAdapter {
|
|
|
109
94
|
return date;
|
|
110
95
|
}
|
|
111
96
|
}
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWFkYXB0ZXIuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9waWNrLWRhdGV0aW1lL3NyYy9saWIvY2xhc3MvZGF0ZS10aW1lLWFkYXB0ZXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2pFLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFMUMsNEZBQTRGO0FBQzVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUNsRCxzQkFBc0IsRUFDdEI7SUFDSSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsNEJBQTRCO0NBQ3hDLENBQ0osQ0FBQTtBQUVELG9CQUFvQjtBQUNwQixNQUFNLFVBQVUsNEJBQTRCO0lBQ3hDLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBQzVCLENBQUM7QUFFRCx5REFBeUQ7QUFDekQsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUc7SUFDekMsT0FBTyxFQUFFLG9CQUFvQjtJQUM3QixXQUFXLEVBQUUsU0FBUztDQUN6QixDQUFBO0FBRUQsTUFBTSxPQUFnQixlQUFlO0lBQXJDO1FBSUksbURBQW1EO1FBQ3pDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtRQUs5QyxtQ0FBbUM7UUFDaEIsc0JBQWlCLEdBQUcsUUFBUSxDQUFBO1FBRS9DLHNDQUFzQztRQUNuQix3QkFBbUIsR0FBRyxLQUFLLENBQUE7SUFzUWxELENBQUM7SUE5UUcsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFBO0lBQzlCLENBQUM7SUFrTEQ7Ozs7O1NBS0s7SUFDTCxPQUFPLENBQUMsS0FBUyxFQUFFLE1BQVU7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLE1BQU0sS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUE7U0FDN0Q7UUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ25DLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFckMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBRS9ELElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxDQUFDLENBQUE7U0FDWjthQUFNLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsQ0FBQTtTQUNYO2FBQU07WUFDSCxtREFBbUQ7WUFDbkQsT0FBTyxJQUFJLENBQUE7U0FDZDtJQUNMLENBQUM7SUFFRDs7Ozs7U0FLSztJQUNMLFdBQVcsQ0FBQyxLQUFTLEVBQUUsTUFBVTtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDL0MsTUFBTSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQTtTQUM3RDtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUV0QyxNQUFNLElBQUksR0FBRyxRQUFRLEdBQUcsU0FBUyxDQUFBO1FBRWpDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxDQUFDLENBQUE7U0FDWjthQUFNLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsQ0FBQTtTQUNYO2FBQU07WUFDSCxPQUFPLENBQUMsQ0FBQTtTQUNYO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsV0FBVyxDQUFDLEtBQVU7UUFDbEIsSUFDSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxTQUFTO1lBQ25DLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ3JEO1lBQ0UsT0FBTyxLQUFLLENBQUE7U0FDZjtRQUNELE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVMsQ0FBQyxNQUFXO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUyxDQUFDLElBQU8sRUFBRSxHQUFPLEVBQUUsR0FBTztRQUMvQixJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxHQUFHLENBQUE7U0FDYjtRQUNELElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNwQyxPQUFPLEdBQUcsQ0FBQTtTQUNiO1FBQ0QsT0FBTyxJQUFJLENBQUE7SUFDZixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGlvblRva2VuLCBMT0NBTEVfSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5cbi8qKiBJbmplY3Rpb25Ub2tlbiBmb3IgZGF0ZSB0aW1lIHBpY2tlciB0aGF0IGNhbiBiZSB1c2VkIHRvIG92ZXJyaWRlIGRlZmF1bHQgbG9jYWxlIGNvZGUuICovXG5leHBvcnQgY29uc3QgTlhUX0RBVEVfVElNRV9MT0NBTEUgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPihcbiAgICAnTlhUX0RBVEVfVElNRV9MT0NBTEUnLFxuICAgIHtcbiAgICAgICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgICAgICBmYWN0b3J5OiBOWFRfREFURV9USU1FX0xPQ0FMRV9GQUNUT1JZXG4gICAgfVxuKVxuXG4vKiogQGRvY3MtcHJpdmF0ZSAqL1xuZXhwb3J0IGZ1bmN0aW9uIE5YVF9EQVRFX1RJTUVfTE9DQUxFX0ZBQ1RPUlkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaW5qZWN0KExPQ0FMRV9JRClcbn1cblxuLyoqIFByb3ZpZGVyIGZvciBOWFRfREFURV9USU1FX0xPQ0FMRSBpbmplY3Rpb24gdG9rZW4uICovXG5leHBvcnQgY29uc3QgTlhUX0RBVEVfVElNRV9MT0NBTEVfUFJPVklERVIgPSB7XG4gICAgcHJvdmlkZTogTlhUX0RBVEVfVElNRV9MT0NBTEUsXG4gICAgdXNlRXhpc3Rpbmc6IExPQ0FMRV9JRFxufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0ZVRpbWVBZGFwdGVyPFQ+IHtcbiAgICAvKiogVGhlIGxvY2FsZSB0byB1c2UgZm9yIGFsbCBkYXRlcy4gKi9cbiAgICBwcm90ZWN0ZWQgbG9jYWxlOiBhbnlcblxuICAgIC8qKiBBIHN0cmVhbSB0aGF0IGVtaXRzIHdoZW4gdGhlIGxvY2FsZSBjaGFuZ2VzLiAqL1xuICAgIHByb3RlY3RlZCBfbG9jYWxlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcbiAgICBnZXQgbG9jYWxlQ2hhbmdlcygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZUNoYW5nZXNcbiAgICB9XG5cbiAgICAvKiogdG90YWwgbWlsbGlzZWNvbmRzIGluIGEgZGF5LiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtaWxsaXNlY29uZHNJbkRheSA9IDg2NDAwMDAwXG5cbiAgICAvKiogdG90YWwgbWlsbGlzZWNvbmRzIGluIGEgbWludXRlLiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtaWxsaXNlb25kc0luTWludXRlID0gNjAwMDBcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgeWVhciBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldFllYXIoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgbW9udGggb2YgdGhlIGdpdmVuIGRhdGVcbiAgICAgKiAwIC0tIEphbnVhcnlcbiAgICAgKiAxMSAtLSBEZWNlbWJlclxuICAgICAqICovXG4gICAgYWJzdHJhY3QgZ2V0TW9udGgoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgZGF5IG9mIHRoZSB3ZWVrIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICogMCAtLSBTdW5kYXlcbiAgICAgKiA2IC0tIFNhdHVyZGF5XG4gICAgICogKi9cbiAgICBhYnN0cmFjdCBnZXREYXkoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgZGF5IG51bSBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldERhdGUoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgaG91cnMgb2YgdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXRIb3VycyhkYXRlPzogVCk6IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBtaW51dGVzIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0TWludXRlcyhkYXRlPzogVCk6IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBzZWNvbmRzIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0U2Vjb25kcyhkYXRlPzogVCk6IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBtaWxsaXNlY29uZHMgdGltZXN0YW1wIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0VGltZShkYXRlPzogVCk6IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgbnVtYmVyIG9mIGRheXMgaW4gdGhlIG1vbnRoIG9mIHRoZSBnaXZlbiBkYXRlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldE51bURheXNJbk1vbnRoKGRhdGU/OiBUKTogbnVtYmVyXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIG51bWJlciBvZiBjYWxlbmRhciBkYXlzIGJldHdlZW4gdGhlIGdpdmVuIGRhdGVzLlxuICAgICAqIElmIGRhdGVMZWZ0IGlzIGJlZm9yZSBkYXRlUmlnaHQsIGl0IHdvdWxkIHJldHVybiBwb3NpdGl2ZSB2YWx1ZVxuICAgICAqIElmIGRhdGVMZWZ0IGlzIGFmdGVyIGRhdGVSaWdodCwgaXQgd291bGQgcmV0dXJuIG5lZ2F0aXZlIHZhbHVlXG4gICAgICovXG4gICAgYWJzdHJhY3QgZGlmZmVyZW5jZUluQ2FsZW5kYXJEYXlzKGRhdGVMZWZ0PzogVCwgZGF0ZVJpZ2h0PzogVCk6IG51bWJlciB8IHVuZGVmaW5lZFxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgbmFtZSBmb3IgdGhlIHllYXIgb2YgdGhlIGdpdmVuIGRhdGUuXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0WWVhck5hbWUoZGF0ZT86IFQpOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdldCBhIGxpc3Qgb2YgbW9udGggbmFtZXNcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXRNb250aE5hbWVzKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnIHwgJ25hcnJvdycpOiBzdHJpbmdbXVxuXG4gICAgLyoqXG4gICAgICogR2V0IGEgbGlzdCBvZiB3ZWVrIG5hbWVzXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0RGF5T2ZXZWVrTmFtZXMoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcgfCAnbmFycm93Jyk6IHN0cmluZ1tdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGEgbGlzdCBvZiBuYW1lcyBmb3IgdGhlIGRhdGVzIG9mIHRoZSBtb250aC5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXREYXRlTmFtZXMoKTogc3RyaW5nW11cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBhIERhdGUgb2JqZWN0IGFzIGEgc3RyaW5nLCB1c2luZyB0aGUgSVNPIHN0YW5kYXJkXG4gICAgICovXG4gICAgYWJzdHJhY3QgdG9Jc284NjAxKGRhdGU6IFQpOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSBnaXZlIGRhdGVzIGFyZSBlcXVhbFxuICAgICAqL1xuICAgIGFic3RyYWN0IGlzRXF1YWwoZGF0ZUxlZnQ/OiBULCBkYXRlUmlnaHQ/OiBUKTogYm9vbGVhblxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdGhlIGdpdmUgZGF0ZXMgYXJlIHRoZSBzYW1lIGRheVxuICAgICAqL1xuICAgIGFic3RyYWN0IGlzU2FtZURheShkYXRlTGVmdD86IFQsIGRhdGVSaWdodD86IFQpOiBib29sZWFuXG5cbiAgICAvKipcbiAgICAgKiBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gZGF0ZSBpcyB2YWxpZC5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBpc1ZhbGlkKGRhdGU/OiBUKTogYm9vbGVhblxuXG4gICAgLyoqXG4gICAgICogR2V0cyBkYXRlIGluc3RhbmNlIHRoYXQgaXMgbm90IHZhbGlkLlxuICAgICAqL1xuICAgIGFic3RyYWN0IGludmFsaWQoKTogVFxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIG9iamVjdCBpcyBjb25zaWRlcmVkIGEgZGF0ZSBpbnN0YW5jZSBieSB0aGlzIERhdGVUaW1lQWRhcHRlci5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBpc0RhdGVJbnN0YW5jZShvYmo6IGFueSk6IGJvb2xlYW5cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB5ZWFycyB0byB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGFkZENhbGVuZGFyWWVhcnMoZGF0ZTogVCB8IHVuZGVmaW5lZCwgYW1vdW50OiBudW1iZXIpOiBUXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgbW9udGhzIHRvIHRoZSBnaXZlbiBkYXRlXG4gICAgICovXG4gICAgYWJzdHJhY3QgYWRkQ2FsZW5kYXJNb250aHMoZGF0ZTogVCB8IHVuZGVmaW5lZCwgYW1vdW50OiBudW1iZXIpOiBUXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgZGF5cyB0byB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGFkZENhbGVuZGFyRGF5cyhkYXRlOiBUIHwgdW5kZWZpbmVkLCBhbW91bnQ6IG51bWJlcik6IFRcblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgaG91cnMgdG8gdGhlIGdpdmVuIGRhdGUuXG4gICAgICovXG4gICAgYWJzdHJhY3Qgc2V0SG91cnMoZGF0ZTogVCB8IHVuZGVmaW5lZCwgYW1vdW50OiBudW1iZXIpOiBUXG5cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIG1pbnV0ZXMgdG8gdGhlIGdpdmVuIGRhdGUuXG4gICAgICovXG4gICAgYWJzdHJhY3Qgc2V0TWludXRlcyhkYXRlOiBUIHwgdW5kZWZpbmVkLCBhbW91bnQ6IG51bWJlcik6IFRcblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgc2Vjb25kcyB0byB0aGUgZ2l2ZW4gZGF0ZS5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBzZXRTZWNvbmRzKGRhdGU6IFQgfCB1bmRlZmluZWQsIGFtb3VudDogbnVtYmVyKTogVFxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIGRhdGUgd2l0aCB0aGUgZ2l2ZW4geWVhciwgbW9udGgsIGRhdGUsIGhvdXIsIG1pbnV0ZSBhbmQgc2Vjb25kLiBEb2VzIG5vdCBhbGxvdyBvdmVyL3VuZGVyLWZsb3cgb2YgdGhlXG4gICAgICogbW9udGggYW5kIGRhdGUuXG4gICAgICovXG4gICAgYWJzdHJhY3QgY3JlYXRlRGF0ZSh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRhdGU6IG51bWJlcik6IFRcbiAgICBhYnN0cmFjdCBjcmVhdGVEYXRlKFxuICAgICAgICB5ZWFyOiBudW1iZXIsXG4gICAgICAgIG1vbnRoOiBudW1iZXIsXG4gICAgICAgIGRhdGU6IG51bWJlcixcbiAgICAgICAgaG91cnM6IG51bWJlcixcbiAgICAgICAgbWludXRlczogbnVtYmVyLFxuICAgICAgICBzZWNvbmRzOiBudW1iZXJcbiAgICApOiBUXG5cbiAgICAvKipcbiAgICAgKiBDbG9uZSB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGNsb25lKGRhdGU/OiBUKTogVFxuXG4gICAgLyoqXG4gICAgICogR2V0IGEgbmV3IG1vbWVudFxuICAgICAqICovXG4gICAgYWJzdHJhY3Qgbm93KCk6IFRcblxuICAgIC8qKlxuICAgICAqIEZvcm1hdHMgYSBkYXRlIGFzIGEgc3RyaW5nIGFjY29yZGluZyB0byB0aGUgZ2l2ZW4gZm9ybWF0LlxuICAgICAqL1xuICAgIGFic3RyYWN0IGZvcm1hdChkYXRlOiBUIHwgdW5kZWZpbmVkLCBkaXNwbGF5Rm9ybWF0OiBhbnkpOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIFBhcnNlIGEgdXNlci1wcm92aWRlZCB2YWx1ZSB0byBhIERhdGUgT2JqZWN0XG4gICAgICovXG4gICAgYWJzdHJhY3QgcGFyc2UodmFsdWU6IGFueSwgcGFyc2VGb3JtYXQ6IGFueSk6IFQgfCB1bmRlZmluZWRcblxuICAgIC8qKlxuICAgICAqIENvbXBhcmUgdHdvIGdpdmVuIGRhdGVzXG4gICAgICogMSBpZiB0aGUgZmlyc3QgZGF0ZSBpcyBhZnRlciB0aGUgc2Vjb25kLFxuICAgICAqIC0xIGlmIHRoZSBmaXJzdCBkYXRlIGlzIGJlZm9yZSB0aGUgc2Vjb25kXG4gICAgICogMCBpZiBkYXRlcyBhcmUgZXF1YWwuXG4gICAgICogKi9cbiAgICBjb21wYXJlKGZpcnN0PzogVCwgc2Vjb25kPzogVCk6IG51bWJlciB7XG4gICAgICAgIGlmICghdGhpcy5pc1ZhbGlkKGZpcnN0KSB8fCAhdGhpcy5pc1ZhbGlkKHNlY29uZCkpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdKU05hdGl2ZURhdGU6IENhbm5vdCBjb21wYXJlIGludmFsaWQgZGF0ZXMuJylcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRhdGVGaXJzdCA9IHRoaXMuY2xvbmUoZmlyc3QpXG4gICAgICAgIGNvbnN0IGRhdGVTZWNvbmQgPSB0aGlzLmNsb25lKHNlY29uZClcblxuICAgICAgICBjb25zdCBkaWZmID0gdGhpcy5nZXRUaW1lKGRhdGVGaXJzdCkgLSB0aGlzLmdldFRpbWUoZGF0ZVNlY29uZClcblxuICAgICAgICBpZiAoZGlmZiA8IDApIHtcbiAgICAgICAgICAgIHJldHVybiAtMVxuICAgICAgICB9IGVsc2UgaWYgKGRpZmYgPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gMVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gUmV0dXJuIDAgaWYgZGlmZiBpcyAwOyByZXR1cm4gTmFOIGlmIGRpZmYgaXMgTmFOXG4gICAgICAgICAgICByZXR1cm4gZGlmZlxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgdHdvIGdpdmVuIGRhdGVzIGFyZSBpbiB0aGUgc2FtZSB5ZWFyXG4gICAgICogMSBpZiB0aGUgZmlyc3QgZGF0ZSdzIHllYXIgaXMgYWZ0ZXIgdGhlIHNlY29uZCxcbiAgICAgKiAtMSBpZiB0aGUgZmlyc3QgZGF0ZSdzIHllYXIgaXMgYmVmb3JlIHRoZSBzZWNvbmRcbiAgICAgKiAwIGlmIHR3byBnaXZlbiBkYXRlcyBhcmUgaW4gdGhlIHNhbWUgeWVhclxuICAgICAqICovXG4gICAgY29tcGFyZVllYXIoZmlyc3Q/OiBULCBzZWNvbmQ/OiBUKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWQoZmlyc3QpIHx8ICF0aGlzLmlzVmFsaWQoc2Vjb25kKSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ0pTTmF0aXZlRGF0ZTogQ2Fubm90IGNvbXBhcmUgaW52YWxpZCBkYXRlcy4nKVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeWVhckxlZnQgPSB0aGlzLmdldFllYXIoZmlyc3QpXG4gICAgICAgIGNvbnN0IHllYXJSaWdodCA9IHRoaXMuZ2V0WWVhcihzZWNvbmQpXG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHllYXJMZWZ0IC0geWVhclJpZ2h0XG5cbiAgICAgICAgaWYgKGRpZmYgPCAwKSB7XG4gICAgICAgICAgICByZXR1cm4gLTFcbiAgICAgICAgfSBlbHNlIGlmIChkaWZmID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIDFcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAwXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBdHRlbXB0cyB0byBkZXNlcmlhbGl6ZSBhIHZhbHVlIHRvIGEgdmFsaWQgZGF0ZSBvYmplY3QuIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gcGFyc2luZyBpbiB0aGF0XG4gICAgICogZGVzZXJpYWxpemUgc2hvdWxkIG9ubHkgYWNjZXB0IG5vbi1hbWJpZ3VvdXMsIGxvY2FsZS1pbmRlcGVuZGVudCBmb3JtYXRzIChlLmcuIGEgSVNPIDg2MDFcbiAgICAgKiBzdHJpbmcpLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBhbGxvdyBhbnkgZGVzZXJpYWxpemF0aW9uLCBpdCBzaW1wbHkgY2hlY2tzIHRoYXRcbiAgICAgKiB0aGUgZ2l2ZW4gdmFsdWUgaXMgYWxyZWFkeSBhIHZhbGlkIGRhdGUgb2JqZWN0IG9yIG51bGwuIFRoZSBgPG1hdC1kYXRlcGlja2VyPmAgd2lsbCBjYWxsIHRoaXNcbiAgICAgKiBtZXRob2Qgb24gYWxsIG9mIGl0J3MgYEBJbnB1dCgpYCBwcm9wZXJ0aWVzIHRoYXQgYWNjZXB0IGRhdGVzLiBJdCBpcyB0aGVyZWZvcmUgcG9zc2libGUgdG9cbiAgICAgKiBzdXBwb3J0IHBhc3NpbmcgdmFsdWVzIGZyb20geW91ciBiYWNrZW5kIGRpcmVjdGx5IHRvIHRoZXNlIHByb3BlcnRpZXMgYnkgb3ZlcnJpZGluZyB0aGlzIG1ldGhvZFxuICAgICAqIHRvIGFsc28gZGVzZXJpYWxpemUgdGhlIGZvcm1hdCB1c2VkIGJ5IHlvdXIgYmFja2VuZC5cbiAgICAgKi9cbiAgICBkZXNlcmlhbGl6ZSh2YWx1ZTogYW55KTogVCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAodGhpcy5pc0RhdGVJbnN0YW5jZSh2YWx1ZSkgJiYgdGhpcy5pc1ZhbGlkKHZhbHVlKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5pbnZhbGlkKClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBsb2NhbGUgdXNlZCBmb3IgYWxsIGRhdGVzLlxuICAgICAqL1xuICAgIHNldExvY2FsZShsb2NhbGU6IGFueSkge1xuICAgICAgICB0aGlzLmxvY2FsZSA9IGxvY2FsZVxuICAgICAgICB0aGlzLl9sb2NhbGVDaGFuZ2VzLm5leHQoKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENsYW1wIHRoZSBnaXZlbiBkYXRlIGJldHdlZW4gbWluIGFuZCBtYXggZGF0ZXMuXG4gICAgICovXG4gICAgY2xhbXBEYXRlKGRhdGU6IFQsIG1pbj86IFQsIG1heD86IFQpOiBUIHtcbiAgICAgICAgaWYgKG1pbiAmJiB0aGlzLmNvbXBhcmUoZGF0ZSwgbWluKSA8IDApIHtcbiAgICAgICAgICAgIHJldHVybiBtaW5cbiAgICAgICAgfVxuICAgICAgICBpZiAobWF4ICYmIHRoaXMuY29tcGFyZShkYXRlLCBtYXgpID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIG1heFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkYXRlXG4gICAgfVxufVxuIl19
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWFkYXB0ZXIuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9waWNrLWRhdGV0aW1lL3NyYy9saWIvY2xhc3MvZGF0ZS10aW1lLWFkYXB0ZXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUUxQyxNQUFNLE9BQWdCLGVBQWU7SUFBckM7UUFJSSxrREFBa0Q7UUFDeEMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBSzlDLGtDQUFrQztRQUNmLHNCQUFpQixHQUFHLFFBQVEsQ0FBQTtRQUUvQyxxQ0FBcUM7UUFDbEIsd0JBQW1CLEdBQUcsS0FBSyxDQUFBO0lBc1FsRCxDQUFDO0lBOVFHLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUM5QixDQUFDO0lBa0xEOzs7OztTQUtLO0lBQ0wsT0FBTyxDQUFDLEtBQVMsRUFBRSxNQUFVO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQyxNQUFNLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFBO1NBQzdEO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNuQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBRXJDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUUvRCxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDVixPQUFPLENBQUMsQ0FBQyxDQUFBO1NBQ1o7YUFBTSxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDakIsT0FBTyxDQUFDLENBQUE7U0FDWDthQUFNO1lBQ0gsbURBQW1EO1lBQ25ELE9BQU8sSUFBSSxDQUFBO1NBQ2Q7SUFDTCxDQUFDO0lBRUQ7Ozs7O1NBS0s7SUFDTCxXQUFXLENBQUMsS0FBUyxFQUFFLE1BQVU7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQy9DLE1BQU0sS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUE7U0FDN0Q7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFdEMsTUFBTSxJQUFJLEdBQUcsUUFBUSxHQUFHLFNBQVMsQ0FBQTtRQUVqQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDVixPQUFPLENBQUMsQ0FBQyxDQUFBO1NBQ1o7YUFBTSxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDakIsT0FBTyxDQUFDLENBQUE7U0FDWDthQUFNO1lBQ0gsT0FBTyxDQUFDLENBQUE7U0FDWDtJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILFdBQVcsQ0FBQyxLQUFVO1FBQ2xCLElBQ0ksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksU0FBUztZQUNuQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUNyRDtZQUNFLE9BQU8sS0FBSyxDQUFBO1NBQ2Y7UUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUN6QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTLENBQUMsTUFBVztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVMsQ0FBQyxJQUFPLEVBQUUsR0FBTyxFQUFFLEdBQU87UUFDL0IsSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sR0FBRyxDQUFBO1NBQ2I7UUFDRCxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDcEMsT0FBTyxHQUFHLENBQUE7U0FDYjtRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYXRlVGltZUFkYXB0ZXI8VD4ge1xuICAgIC8qKiBUaGUgbG9jYWxlIHRvIHVzZSBmb3IgYWxsIGRhdGVzICovXG4gICAgcHJvdGVjdGVkIGxvY2FsZTogYW55XG5cbiAgICAvKiogQSBzdHJlYW0gdGhhdCBlbWl0cyB3aGVuIHRoZSBsb2NhbGUgY2hhbmdlcyAqL1xuICAgIHByb3RlY3RlZCBfbG9jYWxlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcbiAgICBnZXQgbG9jYWxlQ2hhbmdlcygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZUNoYW5nZXNcbiAgICB9XG5cbiAgICAvKiogdG90YWwgbWlsbGlzZWNvbmRzIGluIGEgZGF5ICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1pbGxpc2Vjb25kc0luRGF5ID0gODY0MDAwMDBcblxuICAgIC8qKiB0b3RhbCBtaWxsaXNlY29uZHMgaW4gYSBtaW51dGUgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWlsbGlzZW9uZHNJbk1pbnV0ZSA9IDYwMDAwXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHllYXIgb2YgdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXRZZWFyKGRhdGU/OiBUKTogbnVtYmVyXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIG1vbnRoIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICogMCAtLSBKYW51YXJ5XG4gICAgICogMTEgLS0gRGVjZW1iZXJcbiAgICAgKiAqL1xuICAgIGFic3RyYWN0IGdldE1vbnRoKGRhdGU/OiBUKTogbnVtYmVyXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqIDAgLS0gU3VuZGF5XG4gICAgICogNiAtLSBTYXR1cmRheVxuICAgICAqICovXG4gICAgYWJzdHJhY3QgZ2V0RGF5KGRhdGU/OiBUKTogbnVtYmVyXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIGRheSBudW0gb2YgdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXREYXRlKGRhdGU/OiBUKTogbnVtYmVyXG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIGhvdXJzIG9mIHRoZSBnaXZlbiBkYXRlXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0SG91cnMoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgbWludXRlcyBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldE1pbnV0ZXMoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgc2Vjb25kcyBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldFNlY29uZHMoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgbWlsbGlzZWNvbmRzIHRpbWVzdGFtcCBvZiB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldFRpbWUoZGF0ZT86IFQpOiBudW1iZXJcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIG51bWJlciBvZiBkYXlzIGluIHRoZSBtb250aCBvZiB0aGUgZ2l2ZW4gZGF0ZS5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBnZXROdW1EYXlzSW5Nb250aChkYXRlPzogVCk6IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogR2V0IHRoZSBudW1iZXIgb2YgY2FsZW5kYXIgZGF5cyBiZXR3ZWVuIHRoZSBnaXZlbiBkYXRlcy5cbiAgICAgKiBJZiBkYXRlTGVmdCBpcyBiZWZvcmUgZGF0ZVJpZ2h0LCBpdCB3b3VsZCByZXR1cm4gcG9zaXRpdmUgdmFsdWVcbiAgICAgKiBJZiBkYXRlTGVmdCBpcyBhZnRlciBkYXRlUmlnaHQsIGl0IHdvdWxkIHJldHVybiBuZWdhdGl2ZSB2YWx1ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGRpZmZlcmVuY2VJbkNhbGVuZGFyRGF5cyhkYXRlTGVmdD86IFQsIGRhdGVSaWdodD86IFQpOiBudW1iZXIgfCB1bmRlZmluZWRcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIG5hbWUgZm9yIHRoZSB5ZWFyIG9mIHRoZSBnaXZlbiBkYXRlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IGdldFllYXJOYW1lKGRhdGU/OiBUKTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHZXQgYSBsaXN0IG9mIG1vbnRoIG5hbWVzXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0TW9udGhOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW11cblxuICAgIC8qKlxuICAgICAqIEdldCBhIGxpc3Qgb2Ygd2VlayBuYW1lc1xuICAgICAqL1xuICAgIGFic3RyYWN0IGdldERheU9mV2Vla05hbWVzKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnIHwgJ25hcnJvdycpOiBzdHJpbmdbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBhIGxpc3Qgb2YgbmFtZXMgZm9yIHRoZSBkYXRlcyBvZiB0aGUgbW9udGguXG4gICAgICovXG4gICAgYWJzdHJhY3QgZ2V0RGF0ZU5hbWVzKCk6IHN0cmluZ1tdXG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYSBEYXRlIG9iamVjdCBhcyBhIHN0cmluZywgdXNpbmcgdGhlIElTTyBzdGFuZGFyZFxuICAgICAqL1xuICAgIGFic3RyYWN0IHRvSXNvODYwMShkYXRlOiBUKTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBDaGVjayBpZiB0aGUgZ2l2ZSBkYXRlcyBhcmUgZXF1YWxcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBpc0VxdWFsKGRhdGVMZWZ0PzogVCwgZGF0ZVJpZ2h0PzogVCk6IGJvb2xlYW5cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHRoZSBnaXZlIGRhdGVzIGFyZSB0aGUgc2FtZSBkYXlcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBpc1NhbWVEYXkoZGF0ZUxlZnQ/OiBULCBkYXRlUmlnaHQ/OiBUKTogYm9vbGVhblxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGRhdGUgaXMgdmFsaWQuXG4gICAgICovXG4gICAgYWJzdHJhY3QgaXNWYWxpZChkYXRlPzogVCk6IGJvb2xlYW5cblxuICAgIC8qKlxuICAgICAqIEdldHMgZGF0ZSBpbnN0YW5jZSB0aGF0IGlzIG5vdCB2YWxpZC5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBpbnZhbGlkKCk6IFRcblxuICAgIC8qKlxuICAgICAqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBvYmplY3QgaXMgY29uc2lkZXJlZCBhIGRhdGUgaW5zdGFuY2UgYnkgdGhpcyBEYXRlVGltZUFkYXB0ZXIuXG4gICAgICovXG4gICAgYWJzdHJhY3QgaXNEYXRlSW5zdGFuY2Uob2JqOiBhbnkpOiBib29sZWFuXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgeWVhcnMgdG8gdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBhZGRDYWxlbmRhclllYXJzKGRhdGU6IFQgfCB1bmRlZmluZWQsIGFtb3VudDogbnVtYmVyKTogVFxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIG1vbnRocyB0byB0aGUgZ2l2ZW4gZGF0ZVxuICAgICAqL1xuICAgIGFic3RyYWN0IGFkZENhbGVuZGFyTW9udGhzKGRhdGU6IFQgfCB1bmRlZmluZWQsIGFtb3VudDogbnVtYmVyKTogVFxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGRheXMgdG8gdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBhZGRDYWxlbmRhckRheXMoZGF0ZTogVCB8IHVuZGVmaW5lZCwgYW1vdW50OiBudW1iZXIpOiBUXG5cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIGhvdXJzIHRvIHRoZSBnaXZlbiBkYXRlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IHNldEhvdXJzKGRhdGU6IFQgfCB1bmRlZmluZWQsIGFtb3VudDogbnVtYmVyKTogVFxuXG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBtaW51dGVzIHRvIHRoZSBnaXZlbiBkYXRlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IHNldE1pbnV0ZXMoZGF0ZTogVCB8IHVuZGVmaW5lZCwgYW1vdW50OiBudW1iZXIpOiBUXG5cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIHNlY29uZHMgdG8gdGhlIGdpdmVuIGRhdGUuXG4gICAgICovXG4gICAgYWJzdHJhY3Qgc2V0U2Vjb25kcyhkYXRlOiBUIHwgdW5kZWZpbmVkLCBhbW91bnQ6IG51bWJlcik6IFRcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBkYXRlIHdpdGggdGhlIGdpdmVuIHllYXIsIG1vbnRoLCBkYXRlLCBob3VyLCBtaW51dGUgYW5kIHNlY29uZC4gRG9lcyBub3QgYWxsb3cgb3Zlci91bmRlci1mbG93IG9mIHRoZVxuICAgICAqIG1vbnRoIGFuZCBkYXRlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IGNyZWF0ZURhdGUoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXRlOiBudW1iZXIpOiBUXG4gICAgYWJzdHJhY3QgY3JlYXRlRGF0ZShcbiAgICAgICAgeWVhcjogbnVtYmVyLFxuICAgICAgICBtb250aDogbnVtYmVyLFxuICAgICAgICBkYXRlOiBudW1iZXIsXG4gICAgICAgIGhvdXJzOiBudW1iZXIsXG4gICAgICAgIG1pbnV0ZXM6IG51bWJlcixcbiAgICAgICAgc2Vjb25kczogbnVtYmVyXG4gICAgKTogVFxuXG4gICAgLyoqXG4gICAgICogQ2xvbmUgdGhlIGdpdmVuIGRhdGVcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBjbG9uZShkYXRlPzogVCk6IFRcblxuICAgIC8qKlxuICAgICAqIEdldCBhIG5ldyBtb21lbnRcbiAgICAgKiAqL1xuICAgIGFic3RyYWN0IG5vdygpOiBUXG5cbiAgICAvKipcbiAgICAgKiBGb3JtYXRzIGEgZGF0ZSBhcyBhIHN0cmluZyBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGZvcm1hdC5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBmb3JtYXQoZGF0ZTogVCB8IHVuZGVmaW5lZCwgZGlzcGxheUZvcm1hdDogYW55KTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBQYXJzZSBhIHVzZXItcHJvdmlkZWQgdmFsdWUgdG8gYSBEYXRlIE9iamVjdFxuICAgICAqL1xuICAgIGFic3RyYWN0IHBhcnNlKHZhbHVlOiBhbnksIHBhcnNlRm9ybWF0OiBhbnkpOiBUIHwgdW5kZWZpbmVkXG5cbiAgICAvKipcbiAgICAgKiBDb21wYXJlIHR3byBnaXZlbiBkYXRlc1xuICAgICAqIDEgaWYgdGhlIGZpcnN0IGRhdGUgaXMgYWZ0ZXIgdGhlIHNlY29uZCxcbiAgICAgKiAtMSBpZiB0aGUgZmlyc3QgZGF0ZSBpcyBiZWZvcmUgdGhlIHNlY29uZFxuICAgICAqIDAgaWYgZGF0ZXMgYXJlIGVxdWFsLlxuICAgICAqICovXG4gICAgY29tcGFyZShmaXJzdD86IFQsIHNlY29uZD86IFQpOiBudW1iZXIge1xuICAgICAgICBpZiAoIXRoaXMuaXNWYWxpZChmaXJzdCkgfHwgIXRoaXMuaXNWYWxpZChzZWNvbmQpKSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcignSlNOYXRpdmVEYXRlOiBDYW5ub3QgY29tcGFyZSBpbnZhbGlkIGRhdGVzLicpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkYXRlRmlyc3QgPSB0aGlzLmNsb25lKGZpcnN0KVxuICAgICAgICBjb25zdCBkYXRlU2Vjb25kID0gdGhpcy5jbG9uZShzZWNvbmQpXG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHRoaXMuZ2V0VGltZShkYXRlRmlyc3QpIC0gdGhpcy5nZXRUaW1lKGRhdGVTZWNvbmQpXG5cbiAgICAgICAgaWYgKGRpZmYgPCAwKSB7XG4gICAgICAgICAgICByZXR1cm4gLTFcbiAgICAgICAgfSBlbHNlIGlmIChkaWZmID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIDFcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIFJldHVybiAwIGlmIGRpZmYgaXMgMDsgcmV0dXJuIE5hTiBpZiBkaWZmIGlzIE5hTlxuICAgICAgICAgICAgcmV0dXJuIGRpZmZcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIGlmIHR3byBnaXZlbiBkYXRlcyBhcmUgaW4gdGhlIHNhbWUgeWVhclxuICAgICAqIDEgaWYgdGhlIGZpcnN0IGRhdGUncyB5ZWFyIGlzIGFmdGVyIHRoZSBzZWNvbmQsXG4gICAgICogLTEgaWYgdGhlIGZpcnN0IGRhdGUncyB5ZWFyIGlzIGJlZm9yZSB0aGUgc2Vjb25kXG4gICAgICogMCBpZiB0d28gZ2l2ZW4gZGF0ZXMgYXJlIGluIHRoZSBzYW1lIHllYXJcbiAgICAgKiAqL1xuICAgIGNvbXBhcmVZZWFyKGZpcnN0PzogVCwgc2Vjb25kPzogVCk6IG51bWJlciB7XG4gICAgICAgIGlmICghdGhpcy5pc1ZhbGlkKGZpcnN0KSB8fCAhdGhpcy5pc1ZhbGlkKHNlY29uZCkpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdKU05hdGl2ZURhdGU6IENhbm5vdCBjb21wYXJlIGludmFsaWQgZGF0ZXMuJylcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHllYXJMZWZ0ID0gdGhpcy5nZXRZZWFyKGZpcnN0KVxuICAgICAgICBjb25zdCB5ZWFyUmlnaHQgPSB0aGlzLmdldFllYXIoc2Vjb25kKVxuXG4gICAgICAgIGNvbnN0IGRpZmYgPSB5ZWFyTGVmdCAtIHllYXJSaWdodFxuXG4gICAgICAgIGlmIChkaWZmIDwgMCkge1xuICAgICAgICAgICAgcmV0dXJuIC0xXG4gICAgICAgIH0gZWxzZSBpZiAoZGlmZiA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiAxXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gMFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQXR0ZW1wdHMgdG8gZGVzZXJpYWxpemUgYSB2YWx1ZSB0byBhIHZhbGlkIGRhdGUgb2JqZWN0LiBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIHBhcnNpbmcgaW4gdGhhdFxuICAgICAqIGRlc2VyaWFsaXplIHNob3VsZCBvbmx5IGFjY2VwdCBub24tYW1iaWd1b3VzLCBsb2NhbGUtaW5kZXBlbmRlbnQgZm9ybWF0cyAoZS5nLiBhIElTTyA4NjAxXG4gICAgICogc3RyaW5nKS4gVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZG9lcyBub3QgYWxsb3cgYW55IGRlc2VyaWFsaXphdGlvbiwgaXQgc2ltcGx5IGNoZWNrcyB0aGF0XG4gICAgICogdGhlIGdpdmVuIHZhbHVlIGlzIGFscmVhZHkgYSB2YWxpZCBkYXRlIG9iamVjdCBvciBudWxsLiBUaGUgYDxtYXQtZGF0ZXBpY2tlcj5gIHdpbGwgY2FsbCB0aGlzXG4gICAgICogbWV0aG9kIG9uIGFsbCBvZiBpdCdzIGBASW5wdXQoKWAgcHJvcGVydGllcyB0aGF0IGFjY2VwdCBkYXRlcy4gSXQgaXMgdGhlcmVmb3JlIHBvc3NpYmxlIHRvXG4gICAgICogc3VwcG9ydCBwYXNzaW5nIHZhbHVlcyBmcm9tIHlvdXIgYmFja2VuZCBkaXJlY3RseSB0byB0aGVzZSBwcm9wZXJ0aWVzIGJ5IG92ZXJyaWRpbmcgdGhpcyBtZXRob2RcbiAgICAgKiB0byBhbHNvIGRlc2VyaWFsaXplIHRoZSBmb3JtYXQgdXNlZCBieSB5b3VyIGJhY2tlbmQuXG4gICAgICovXG4gICAgZGVzZXJpYWxpemUodmFsdWU6IGFueSk6IFQgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB2YWx1ZSA9PSBudWxsIHx8IHZhbHVlID09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgKHRoaXMuaXNEYXRlSW5zdGFuY2UodmFsdWUpICYmIHRoaXMuaXNWYWxpZCh2YWx1ZSkpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuaW52YWxpZCgpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgbG9jYWxlIHVzZWQgZm9yIGFsbCBkYXRlcy5cbiAgICAgKi9cbiAgICBzZXRMb2NhbGUobG9jYWxlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5sb2NhbGUgPSBsb2NhbGVcbiAgICAgICAgdGhpcy5fbG9jYWxlQ2hhbmdlcy5uZXh0KClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbGFtcCB0aGUgZ2l2ZW4gZGF0ZSBiZXR3ZWVuIG1pbiBhbmQgbWF4IGRhdGVzLlxuICAgICAqL1xuICAgIGNsYW1wRGF0ZShkYXRlOiBULCBtaW4/OiBULCBtYXg/OiBUKTogVCB7XG4gICAgICAgIGlmIChtaW4gJiYgdGhpcy5jb21wYXJlKGRhdGUsIG1pbikgPCAwKSB7XG4gICAgICAgICAgICByZXR1cm4gbWluXG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1heCAmJiB0aGlzLmNvbXBhcmUoZGF0ZSwgbWF4KSA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiBtYXhcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGF0ZVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
/** InjectionToken for date time picker that can be used to override default format
|
|
2
|
+
/** InjectionToken for date time picker that can be used to override default format */
|
|
3
3
|
export const NXT_DATE_TIME_FORMATS = new InjectionToken('NXT_DATE_TIME_FORMATS');
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWZvcm1hdC5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BpY2stZGF0ZXRpbWUvc3JjL2xpYi9jbGFzcy9kYXRlLXRpbWUtZm9ybWF0LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFZOUMsc0ZBQXNGO0FBQ3RGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFrQix1QkFBdUIsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGVUaW1lRm9ybWF0cyB7XG4gICAgcGFyc2VJbnB1dDogYW55XG4gICAgZnVsbFBpY2tlcklucHV0OiBhbnlcbiAgICBkYXRlUGlja2VySW5wdXQ6IGFueVxuICAgIHRpbWVQaWNrZXJJbnB1dDogYW55XG4gICAgbW9udGhZZWFyTGFiZWw6IGFueVxuICAgIGRhdGVBMTF5TGFiZWw6IGFueVxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogYW55XG59XG5cbi8qKiBJbmplY3Rpb25Ub2tlbiBmb3IgZGF0ZSB0aW1lIHBpY2tlciB0aGF0IGNhbiBiZSB1c2VkIHRvIG92ZXJyaWRlIGRlZmF1bHQgZm9ybWF0ICovXG5leHBvcnQgY29uc3QgTlhUX0RBVEVfVElNRV9GT1JNQVRTID0gbmV3IEluamVjdGlvblRva2VuPERhdGVUaW1lRm9ybWF0cz4oJ05YVF9EQVRFX1RJTUVfRk9STUFUUycpXG4iXX0=
|