@odx/angular 12.17.4 → 12.17.5

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/cdk/date-input/README.md +3 -0
  3. package/cdk/date-input/index.d.ts +4 -0
  4. package/cdk/date-input/lib/date.config.d.ts +48 -0
  5. package/cdk/date-input/lib/models/input-date-order.d.ts +17 -0
  6. package/cdk/date-input/lib/utils/get-date-input-pattern.d.ts +5 -0
  7. package/cdk/date-input/lib/utils/get-input-value-as-date.d.ts +3 -0
  8. package/components/datepicker/index.d.ts +0 -1
  9. package/components/datepicker/lib/datepicker.config.d.ts +1 -48
  10. package/components/daterangepicker/index.d.ts +0 -1
  11. package/components/daterangepicker/lib/daterangepicker.config.d.ts +1 -48
  12. package/esm2022/cdk/date-input/index.mjs +5 -0
  13. package/esm2022/cdk/date-input/lib/date.config.mjs +26 -0
  14. package/esm2022/cdk/date-input/lib/models/input-date-order.mjs +16 -0
  15. package/esm2022/cdk/date-input/lib/utils/get-date-input-pattern.mjs +18 -0
  16. package/esm2022/cdk/date-input/lib/utils/get-input-value-as-date.mjs +38 -0
  17. package/esm2022/cdk/date-input/odx-angular-cdk-date-input.mjs +5 -0
  18. package/esm2022/components/datepicker/index.mjs +1 -2
  19. package/esm2022/components/datepicker/lib/datepicker.component.mjs +4 -5
  20. package/esm2022/components/datepicker/lib/datepicker.config.mjs +52 -26
  21. package/esm2022/components/datepicker/lib/directives/datepicker-input-control.directive.mjs +6 -7
  22. package/esm2022/components/daterangepicker/index.mjs +1 -2
  23. package/esm2022/components/daterangepicker/lib/daterangepicker.component.mjs +5 -6
  24. package/esm2022/components/daterangepicker/lib/daterangepicker.config.mjs +52 -26
  25. package/esm2022/components/daterangepicker/lib/directives/daterangepicker-input-control.directive.mjs +6 -7
  26. package/esm2022/lib/models/index.mjs +1 -1
  27. package/fesm2022/odx-angular-cdk-date-input.mjs +102 -0
  28. package/fesm2022/odx-angular-cdk-date-input.mjs.map +1 -0
  29. package/fesm2022/odx-angular-components-datepicker.mjs +11 -96
  30. package/fesm2022/odx-angular-components-datepicker.mjs.map +1 -1
  31. package/fesm2022/odx-angular-components-daterangepicker.mjs +12 -82
  32. package/fesm2022/odx-angular-components-daterangepicker.mjs.map +1 -1
  33. package/package.json +14 -8
  34. package/components/datepicker/lib/models/datepicker-input-date-order.d.ts +0 -6
  35. package/components/datepicker/lib/models/datepicker-input-pattern.d.ts +0 -11
  36. package/components/datepicker/lib/models/index.d.ts +0 -2
  37. package/components/datepicker/lib/utils/get-datepicker-input-pattern.d.ts +0 -5
  38. package/components/datepicker/lib/utils/get-datepicker-input-value-as-date.d.ts +0 -3
  39. package/components/datepicker/lib/utils/index.d.ts +0 -2
  40. package/components/daterangepicker/lib/models/daterangepicker-input-date-order.d.ts +0 -1
  41. package/components/daterangepicker/lib/models/daterangepicker-input-pattern.d.ts +0 -1
  42. package/components/daterangepicker/lib/models/index.d.ts +0 -2
  43. package/components/daterangepicker/lib/utils/get-daterangepicker-input-pattern.d.ts +0 -5
  44. package/components/daterangepicker/lib/utils/get-daterangepicker-input-value-as-date.d.ts +0 -3
  45. package/components/daterangepicker/lib/utils/index.d.ts +0 -2
  46. package/esm2022/components/datepicker/lib/models/datepicker-input-date-order.mjs +0 -6
  47. package/esm2022/components/datepicker/lib/models/datepicker-input-pattern.mjs +0 -11
  48. package/esm2022/components/datepicker/lib/models/index.mjs +0 -3
  49. package/esm2022/components/datepicker/lib/utils/get-datepicker-input-pattern.mjs +0 -18
  50. package/esm2022/components/datepicker/lib/utils/get-datepicker-input-value-as-date.mjs +0 -31
  51. package/esm2022/components/datepicker/lib/utils/index.mjs +0 -3
  52. package/esm2022/components/daterangepicker/lib/models/daterangepicker-input-date-order.mjs +0 -2
  53. package/esm2022/components/daterangepicker/lib/models/daterangepicker-input-pattern.mjs +0 -2
  54. package/esm2022/components/daterangepicker/lib/models/index.mjs +0 -3
  55. package/esm2022/components/daterangepicker/lib/utils/get-daterangepicker-input-pattern.mjs +0 -18
  56. package/esm2022/components/daterangepicker/lib/utils/get-daterangepicker-input-value-as-date.mjs +0 -31
  57. package/esm2022/components/daterangepicker/lib/utils/index.mjs +0 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @odx/angular
2
2
 
3
+ ## 12.17.5
4
+
5
+ ### Patch Changes
6
+
7
+ - f2b31a2: fixed: datepicker manual input year bug
8
+
3
9
  ## 12.17.4
4
10
 
5
11
  ### Patch Changes
@@ -0,0 +1,3 @@
1
+ # @odx/angular/cdk/date-control
2
+
3
+ Secondary entry point of `@odx/angular`. It can be used by importing from `@odx/angular/cdk/date-control`.
@@ -0,0 +1,4 @@
1
+ export * from './lib/date.config';
2
+ export * from './lib/models/input-date-order';
3
+ export * from './lib/utils/get-date-input-pattern';
4
+ export * from './lib/utils/get-input-value-as-date';
@@ -0,0 +1,48 @@
1
+ import { InputDateOrder } from './models/input-date-order';
2
+ export interface DateConfig {
3
+ /**
4
+ * Date's order ('DMY' | 'MDY' | 'YMD').
5
+ * @default InputDateOrder.DMY
6
+ */
7
+ inputDateOrder: InputDateOrder;
8
+ /**
9
+ * Single-character date's separator (dot, slash etc.).
10
+ * @default '.'
11
+ */
12
+ inputDateSeparator: string;
13
+ }
14
+ /**
15
+ * Tools for injecting and providing the date configuration with default configuration for the date.
16
+ *
17
+ * @example
18
+ * // Providing custom date configuration.
19
+ * ```ts
20
+ * @Component({
21
+ * providers: [provideDateConfig({ inputDateOrder: InputDateOrder.MDY, inputDateSeparator: '/'})]
22
+ * })
23
+ * export class MyComponent {}
24
+ *
25
+ * // Injecting the date configuration.
26
+ * ```ts
27
+ * @Component({})
28
+ * export class MyComponent {
29
+ * constructor(@Inject(injectDateConfig()) private readonly dateConfig: DateConfig) {}
30
+ * }
31
+ * ```
32
+ */
33
+ export declare const DateConfig: import("@angular/core").InjectionToken<Partial<{
34
+ inputDateOrder: string;
35
+ inputDateSeparator: string;
36
+ }>>, DateDefaultConfig: {
37
+ inputDateOrder: string;
38
+ inputDateSeparator: string;
39
+ }, injectDateConfig: () => {
40
+ inputDateOrder: string;
41
+ inputDateSeparator: string;
42
+ }, provideDateConfig: <D extends import("@odx/angular/utils").ConfigDependencies = import("@odx/angular/utils").ConfigDependencies<Partial<{
43
+ inputDateOrder: string;
44
+ inputDateSeparator: string;
45
+ }>>>(config: import("@odx/angular/utils").ConfigProvider<Partial<{
46
+ inputDateOrder: string;
47
+ inputDateSeparator: string;
48
+ }>, D>) => import("@angular/core").FactoryProvider | import("@angular/core").ValueProvider;
@@ -0,0 +1,17 @@
1
+ export type InputDateOrder = (typeof InputDateOrder)[keyof typeof InputDateOrder];
2
+ export declare const InputDateOrder: {
3
+ DMY: string;
4
+ MDY: string;
5
+ YMD: string;
6
+ };
7
+ export type DateInputPattern = typeof DateInputFormat | typeof DateInputMask;
8
+ export declare const DateInputFormat: {
9
+ DAYS: string;
10
+ MONTH: string;
11
+ YEAR: string;
12
+ };
13
+ export declare const DateInputMask: {
14
+ DAYS: string;
15
+ MONTH: string;
16
+ YEAR: string;
17
+ };
@@ -0,0 +1,5 @@
1
+ import { DateConfig } from '../date.config';
2
+ /** @internal */
3
+ export declare function getDateInputFormat(config: DateConfig): string;
4
+ /** @internal */
5
+ export declare function getDateInputMask(config: DateConfig): string;
@@ -0,0 +1,3 @@
1
+ import { DateConfig } from '../date.config';
2
+ /** @internal */
3
+ export declare function getDateInputValueAsDate(config: DateConfig, value: string): Date | null;
@@ -2,4 +2,3 @@ export * from './lib/datepicker.component';
2
2
  export * from './lib/datepicker.config';
3
3
  export * from './lib/datepicker.module';
4
4
  export * from './lib/directives';
5
- export * from './lib/models';
@@ -1,48 +1 @@
1
- import { DatepickerInputDateOrder } from './models';
2
- export interface DatepickerConfig {
3
- /**
4
- * Date's order ('DMY' | 'MDY' | 'YMD').
5
- * @default DatepickerInputDateOrder.DMY
6
- */
7
- inputDateOrder: DatepickerInputDateOrder;
8
- /**
9
- * Single-character date's separator (dot, slash etc.).
10
- * @default '.'
11
- */
12
- inputDateSeparator: string;
13
- }
14
- /**
15
- * Tools for injecting and providing the datepicker configuration with default configuration for the datepicker.
16
- *
17
- * @example
18
- * // Providing custom datepicker configuration.
19
- * ```ts
20
- * @Component({
21
- * providers: [provideDatepickerConfig({ inputDateOrder: DatepickerInputDateOrder.MDY, inputDateSeparator: '/'})]
22
- * })
23
- * export class MyComponent {}
24
- *
25
- * // Injecting the datepicker configuration.
26
- * ```ts
27
- * @Component({})
28
- * export class MyComponent {
29
- * constructor(@Inject(injectDatepickerConfig()) private readonly datepickerConfig: DatepickerConfig) {}
30
- * }
31
- * ```
32
- */
33
- export declare const DatepickerConfig: import("@angular/core").InjectionToken<Partial<{
34
- inputDateOrder: string;
35
- inputDateSeparator: string;
36
- }>>, DatepickerDefaultConfig: {
37
- inputDateOrder: string;
38
- inputDateSeparator: string;
39
- }, injectDatepickerConfig: () => {
40
- inputDateOrder: string;
41
- inputDateSeparator: string;
42
- }, provideDatepickerConfig: <D extends import("@odx/angular/utils").ConfigDependencies = import("@odx/angular/utils").ConfigDependencies<Partial<{
43
- inputDateOrder: string;
44
- inputDateSeparator: string;
45
- }>>>(config: import("@odx/angular/utils").ConfigProvider<Partial<{
46
- inputDateOrder: string;
47
- inputDateSeparator: string;
48
- }>, D>) => import("@angular/core").FactoryProvider | import("@angular/core").ValueProvider;
1
+ export { DateConfig as DatepickerConfig, DateDefaultConfig as DatepickerDefaultConfig, InputDateOrder as DatepickerInputDateOrder, DateInputFormat as DatepickerInputFormat, DateInputMask as DatepickerInputMask, DateInputPattern as DatepickerInputPattern, getDateInputFormat as getDatepickerInputFormat, getDateInputMask as getDatepickerInputMask, getDateInputValueAsDate as getDatepickerInputValueAsDate, injectDateConfig as injectDatepickerDateConfig, provideDateConfig as provideDatepickerConfig, } from '@odx/angular/cdk/date-input';
@@ -2,6 +2,5 @@ export * from './lib/daterangepicker.component';
2
2
  export * from './lib/daterangepicker.config';
3
3
  export * from './lib/daterangepicker.module';
4
4
  export * from './lib/directives';
5
- export * from './lib/models';
6
5
  export * from './lib/range.validator';
7
6
  export * from './lib/required.validator';
@@ -1,48 +1 @@
1
- import { DaterangepickerInputDateOrder } from './models';
2
- export interface DaterangepickerConfig {
3
- /**
4
- * Date's order ('DMY' | 'MDY' | 'YMD').
5
- * @default DaterangepickerInputDateOrder.DMY
6
- */
7
- inputDateOrder: DaterangepickerInputDateOrder;
8
- /**
9
- * Single-character date's separator (dot, slash etc.).
10
- * @default '.'
11
- */
12
- inputDateSeparator: string;
13
- }
14
- /**
15
- * Tools for injecting and providing the daterangepicker configuration with default configuration for the daterangepicker.
16
- *
17
- * @example
18
- * // Providing custom daterangepicker configuration.
19
- * ```ts
20
- * @Component({
21
- * providers: [provideDaterangepickerConfig({ inputDateOrder: DaterangepickerInputDateOrder.MDY, inputDateSeparator: '/'})]
22
- * })
23
- * export class MyComponent {}
24
- *
25
- * // Injecting the daterangepicker configuration.
26
- * ```ts
27
- * @Component({})
28
- * export class MyComponent {
29
- * constructor(@Inject(injectDaterangepickerConfig()) private readonly daterangepickerConfig: DaterangepickerConfig) {}
30
- * }
31
- * ```
32
- */
33
- export declare const DaterangepickerConfig: import("@angular/core").InjectionToken<Partial<{
34
- inputDateOrder: string;
35
- inputDateSeparator: string;
36
- }>>, DaterangepickerDefaultConfig: {
37
- inputDateOrder: string;
38
- inputDateSeparator: string;
39
- }, injectDaterangepickerConfig: () => {
40
- inputDateOrder: string;
41
- inputDateSeparator: string;
42
- }, provideDaterangepickerConfig: <D extends import("@odx/angular/utils").ConfigDependencies = import("@odx/angular/utils").ConfigDependencies<Partial<{
43
- inputDateOrder: string;
44
- inputDateSeparator: string;
45
- }>>>(config: import("@odx/angular/utils").ConfigProvider<Partial<{
46
- inputDateOrder: string;
47
- inputDateSeparator: string;
48
- }>, D>) => import("@angular/core").FactoryProvider | import("@angular/core").ValueProvider;
1
+ export { DateConfig as DaterangepickerConfig, DateDefaultConfig as DaterangepickerDefaultConfig, InputDateOrder as DaterangepickerInputDateOrder, DateInputFormat as DaterangepickerInputFormat, DateInputMask as DaterangepickerInputMask, DateInputPattern as DaterangepickerInputPattern, getDateInputFormat as getDaterangepickerInputFormat, getDateInputMask as getDaterangepickerInputMask, getDateInputValueAsDate as getDaterangepickerInputValueAsDate, injectDateConfig as injectDaterangepickerDateConfig, provideDateConfig as provideDaterangepickerConfig, } from '@odx/angular/cdk/date-input';
@@ -0,0 +1,5 @@
1
+ export * from './lib/date.config';
2
+ export * from './lib/models/input-date-order';
3
+ export * from './lib/utils/get-date-input-pattern';
4
+ export * from './lib/utils/get-input-value-as-date';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXQvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW5wdXQtZGF0ZS1vcmRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlscy9nZXQtZGF0ZS1pbnB1dC1wYXR0ZXJuJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL2dldC1pbnB1dC12YWx1ZS1hcy1kYXRlJztcbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { createConfigTokens } from '@odx/angular/utils';
2
+ import { InputDateOrder } from './models/input-date-order';
3
+ /**
4
+ * Tools for injecting and providing the date configuration with default configuration for the date.
5
+ *
6
+ * @example
7
+ * // Providing custom date configuration.
8
+ * ```ts
9
+ * @Component({
10
+ * providers: [provideDateConfig({ inputDateOrder: InputDateOrder.MDY, inputDateSeparator: '/'})]
11
+ * })
12
+ * export class MyComponent {}
13
+ *
14
+ * // Injecting the date configuration.
15
+ * ```ts
16
+ * @Component({})
17
+ * export class MyComponent {
18
+ * constructor(@Inject(injectDateConfig()) private readonly dateConfig: DateConfig) {}
19
+ * }
20
+ * ```
21
+ */
22
+ export const { DateConfig, DateDefaultConfig, injectDateConfig, provideDateConfig } = createConfigTokens('Date', '@odx/angular/components/date', {
23
+ inputDateOrder: InputDateOrder.DMY,
24
+ inputDateSeparator: '.',
25
+ });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXQvc3JjL2xpYi9kYXRlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFlM0Q7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLDhCQUE4QixFQUFFO0lBQy9JLGNBQWMsRUFBRSxjQUFjLENBQUMsR0FBRztJQUNsQyxrQkFBa0IsRUFBRSxHQUFHO0NBQ3hCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbmZpZ1Rva2VucyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBJbnB1dERhdGVPcmRlciB9IGZyb20gJy4vbW9kZWxzL2lucHV0LWRhdGUtb3JkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGVDb25maWcge1xuICAvKipcbiAgICogRGF0ZSdzIG9yZGVyICgnRE1ZJyB8ICdNRFknIHwgJ1lNRCcpLlxuICAgKiBAZGVmYXVsdCBJbnB1dERhdGVPcmRlci5ETVlcbiAgICovXG4gIGlucHV0RGF0ZU9yZGVyOiBJbnB1dERhdGVPcmRlcjtcbiAgLyoqXG4gICAqIFNpbmdsZS1jaGFyYWN0ZXIgZGF0ZSdzIHNlcGFyYXRvciAoZG90LCBzbGFzaCBldGMuKS5cbiAgICogQGRlZmF1bHQgJy4nXG4gICAqL1xuICBpbnB1dERhdGVTZXBhcmF0b3I6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUb29scyBmb3IgaW5qZWN0aW5nIGFuZCBwcm92aWRpbmcgdGhlIGRhdGUgY29uZmlndXJhdGlvbiB3aXRoIGRlZmF1bHQgY29uZmlndXJhdGlvbiBmb3IgdGhlIGRhdGUuXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIFByb3ZpZGluZyBjdXN0b20gZGF0ZSBjb25maWd1cmF0aW9uLlxuICogYGBgdHNcbiAqIEBDb21wb25lbnQoe1xuICogICBwcm92aWRlcnM6IFtwcm92aWRlRGF0ZUNvbmZpZyh7IGlucHV0RGF0ZU9yZGVyOiBJbnB1dERhdGVPcmRlci5NRFksIGlucHV0RGF0ZVNlcGFyYXRvcjogJy8nfSldXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIE15Q29tcG9uZW50IHt9XG4gKlxuICogLy8gSW5qZWN0aW5nIHRoZSBkYXRlIGNvbmZpZ3VyYXRpb24uXG4gKiBgYGB0c1xuICogQENvbXBvbmVudCh7fSlcbiAqIGV4cG9ydCBjbGFzcyBNeUNvbXBvbmVudCB7XG4gKiAgY29uc3RydWN0b3IoQEluamVjdChpbmplY3REYXRlQ29uZmlnKCkpIHByaXZhdGUgcmVhZG9ubHkgZGF0ZUNvbmZpZzogRGF0ZUNvbmZpZykge31cbiAqIH1cbiAqIGBgYFxuICovXG5leHBvcnQgY29uc3QgeyBEYXRlQ29uZmlnLCBEYXRlRGVmYXVsdENvbmZpZywgaW5qZWN0RGF0ZUNvbmZpZywgcHJvdmlkZURhdGVDb25maWcgfSA9IGNyZWF0ZUNvbmZpZ1Rva2VucygnRGF0ZScsICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlJywge1xuICBpbnB1dERhdGVPcmRlcjogSW5wdXREYXRlT3JkZXIuRE1ZLFxuICBpbnB1dERhdGVTZXBhcmF0b3I6ICcuJyxcbn0pO1xuIl19
@@ -0,0 +1,16 @@
1
+ export const InputDateOrder = {
2
+ DMY: 'DMY',
3
+ MDY: 'MDY',
4
+ YMD: 'YMD',
5
+ };
6
+ export const DateInputFormat = {
7
+ DAYS: 'dd',
8
+ MONTH: 'MM',
9
+ YEAR: 'yyyy',
10
+ };
11
+ export const DateInputMask = {
12
+ DAYS: 'd0',
13
+ MONTH: 'M0',
14
+ YEAR: '0000',
15
+ };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS1vcmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvZGF0ZS1pbnB1dC9zcmMvbGliL21vZGVscy9pbnB1dC1kYXRlLW9yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsR0FBRyxFQUFFLEtBQUs7Q0FDWCxDQUFDO0FBSUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLElBQUksRUFBRSxJQUFJO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxJQUFJLEVBQUUsTUFBTTtDQUNiLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsSUFBSSxFQUFFLElBQUk7SUFDVixLQUFLLEVBQUUsSUFBSTtJQUNYLElBQUksRUFBRSxNQUFNO0NBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIElucHV0RGF0ZU9yZGVyID0gKHR5cGVvZiBJbnB1dERhdGVPcmRlcilba2V5b2YgdHlwZW9mIElucHV0RGF0ZU9yZGVyXTtcblxuZXhwb3J0IGNvbnN0IElucHV0RGF0ZU9yZGVyID0ge1xuICBETVk6ICdETVknLFxuICBNRFk6ICdNRFknLFxuICBZTUQ6ICdZTUQnLFxufTtcblxuZXhwb3J0IHR5cGUgRGF0ZUlucHV0UGF0dGVybiA9IHR5cGVvZiBEYXRlSW5wdXRGb3JtYXQgfCB0eXBlb2YgRGF0ZUlucHV0TWFzaztcblxuZXhwb3J0IGNvbnN0IERhdGVJbnB1dEZvcm1hdCA9IHtcbiAgREFZUzogJ2RkJyxcbiAgTU9OVEg6ICdNTScsXG4gIFlFQVI6ICd5eXl5Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBEYXRlSW5wdXRNYXNrID0ge1xuICBEQVlTOiAnZDAnLFxuICBNT05USDogJ00wJyxcbiAgWUVBUjogJzAwMDAnLFxufTtcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { DateInputFormat, DateInputMask, InputDateOrder } from '../models/input-date-order';
2
+ function getDateInputPattern({ inputDateOrder, inputDateSeparator }, pattern) {
3
+ const patternList = {
4
+ [InputDateOrder.DMY]: `${pattern.DAYS}${inputDateSeparator}${pattern.MONTH}${inputDateSeparator}${pattern.YEAR}`,
5
+ [InputDateOrder.MDY]: `${pattern.MONTH}${inputDateSeparator}${pattern.DAYS}${inputDateSeparator}${pattern.YEAR}`,
6
+ [InputDateOrder.YMD]: `${pattern.YEAR}${inputDateSeparator}${pattern.MONTH}${inputDateSeparator}${pattern.DAYS}`,
7
+ };
8
+ return patternList[inputDateOrder];
9
+ }
10
+ /** @internal */
11
+ export function getDateInputFormat(config) {
12
+ return getDateInputPattern(config, DateInputFormat);
13
+ }
14
+ /** @internal */
15
+ export function getDateInputMask(config) {
16
+ return getDateInputPattern(config, DateInputMask);
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWRhdGUtaW5wdXQtcGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvZGF0ZS1pbnB1dC9zcmMvbGliL3V0aWxzL2dldC1kYXRlLWlucHV0LXBhdHRlcm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQW9CLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTlHLFNBQVMsbUJBQW1CLENBQUMsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQWMsRUFBRSxPQUF5QjtJQUN4RyxNQUFNLFdBQVcsR0FBbUM7UUFDbEQsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxHQUFHLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRTtRQUNoSCxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLElBQUksR0FBRyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFO1FBQ2hILENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksR0FBRyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsS0FBSyxHQUFHLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUU7S0FDakgsQ0FBQztJQUVGLE9BQU8sV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3JDLENBQUM7QUFFRCxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE1BQWtCO0lBQ25ELE9BQU8sbUJBQW1CLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQ3RELENBQUM7QUFFRCxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE1BQWtCO0lBQ2pELE9BQU8sbUJBQW1CLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0FBQ3BELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlQ29uZmlnIH0gZnJvbSAnLi4vZGF0ZS5jb25maWcnO1xuaW1wb3J0IHsgRGF0ZUlucHV0Rm9ybWF0LCBEYXRlSW5wdXRNYXNrLCBEYXRlSW5wdXRQYXR0ZXJuLCBJbnB1dERhdGVPcmRlciB9IGZyb20gJy4uL21vZGVscy9pbnB1dC1kYXRlLW9yZGVyJztcblxuZnVuY3Rpb24gZ2V0RGF0ZUlucHV0UGF0dGVybih7IGlucHV0RGF0ZU9yZGVyLCBpbnB1dERhdGVTZXBhcmF0b3IgfTogRGF0ZUNvbmZpZywgcGF0dGVybjogRGF0ZUlucHV0UGF0dGVybik6IHN0cmluZyB7XG4gIGNvbnN0IHBhdHRlcm5MaXN0OiBSZWNvcmQ8SW5wdXREYXRlT3JkZXIsIHN0cmluZz4gPSB7XG4gICAgW0lucHV0RGF0ZU9yZGVyLkRNWV06IGAke3BhdHRlcm4uREFZU30ke2lucHV0RGF0ZVNlcGFyYXRvcn0ke3BhdHRlcm4uTU9OVEh9JHtpbnB1dERhdGVTZXBhcmF0b3J9JHtwYXR0ZXJuLllFQVJ9YCxcbiAgICBbSW5wdXREYXRlT3JkZXIuTURZXTogYCR7cGF0dGVybi5NT05USH0ke2lucHV0RGF0ZVNlcGFyYXRvcn0ke3BhdHRlcm4uREFZU30ke2lucHV0RGF0ZVNlcGFyYXRvcn0ke3BhdHRlcm4uWUVBUn1gLFxuICAgIFtJbnB1dERhdGVPcmRlci5ZTURdOiBgJHtwYXR0ZXJuLllFQVJ9JHtpbnB1dERhdGVTZXBhcmF0b3J9JHtwYXR0ZXJuLk1PTlRIfSR7aW5wdXREYXRlU2VwYXJhdG9yfSR7cGF0dGVybi5EQVlTfWAsXG4gIH07XG5cbiAgcmV0dXJuIHBhdHRlcm5MaXN0W2lucHV0RGF0ZU9yZGVyXTtcbn1cblxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERhdGVJbnB1dEZvcm1hdChjb25maWc6IERhdGVDb25maWcpOiBzdHJpbmcge1xuICByZXR1cm4gZ2V0RGF0ZUlucHV0UGF0dGVybihjb25maWcsIERhdGVJbnB1dEZvcm1hdCk7XG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRlSW5wdXRNYXNrKGNvbmZpZzogRGF0ZUNvbmZpZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXREYXRlSW5wdXRQYXR0ZXJuKGNvbmZpZywgRGF0ZUlucHV0TWFzayk7XG59XG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { isValid, toDate } from 'date-fns';
2
+ import { DateInputFormat, InputDateOrder } from '../models/input-date-order';
3
+ const functionList = {
4
+ [InputDateOrder.DMY]: (splittedValue) => {
5
+ const [day, month, year] = splittedValue;
6
+ return { month, day, year };
7
+ },
8
+ [InputDateOrder.MDY]: (splittedValue) => {
9
+ const [month, day, year] = splittedValue;
10
+ return { month, day, year };
11
+ },
12
+ [InputDateOrder.YMD]: (splittedValue) => {
13
+ const [year, month, day] = splittedValue;
14
+ return { month, day, year };
15
+ },
16
+ };
17
+ function getDateCandidate({ inputDateOrder, inputDateSeparator }, value) {
18
+ const splittedValue = value.split(inputDateSeparator);
19
+ const { month, day, year } = functionList[inputDateOrder](splittedValue);
20
+ if (!month ||
21
+ !day ||
22
+ !year ||
23
+ month.length !== DateInputFormat.MONTH.length ||
24
+ day.length !== DateInputFormat.DAYS.length ||
25
+ year.length !== DateInputFormat.YEAR.length) {
26
+ return null;
27
+ }
28
+ return { month, day, year };
29
+ }
30
+ /** @internal */
31
+ export function getDateInputValueAsDate(config, value) {
32
+ const dateCandidate = getDateCandidate(config, value);
33
+ if (!dateCandidate)
34
+ return null;
35
+ const date = toDate(`${dateCandidate.month}.${dateCandidate.day}.${dateCandidate.year}`);
36
+ return isValid(date) ? date : null;
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWlucHV0LXZhbHVlLWFzLWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXQvc3JjL2xpYi91dGlscy9nZXQtaW5wdXQtdmFsdWUtYXMtZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBUTdFLE1BQU0sWUFBWSxHQUFnRjtJQUNoRyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLGFBQXVCLEVBQUUsRUFBRTtRQUNoRCxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxhQUFhLENBQUM7UUFDekMsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUNELENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsYUFBdUIsRUFBRSxFQUFFO1FBQ2hELE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLGFBQWEsQ0FBQztRQUN6QyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxhQUF1QixFQUFFLEVBQUU7UUFDaEQsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDO1FBQ3pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDRixDQUFDO0FBRUYsU0FBUyxnQkFBZ0IsQ0FBQyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBYyxFQUFFLEtBQWE7SUFDekYsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRXRELE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUEyQixZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFakcsSUFDRSxDQUFDLEtBQUs7UUFDTixDQUFDLEdBQUc7UUFDSixDQUFDLElBQUk7UUFDTCxLQUFLLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUMsTUFBTTtRQUM3QyxHQUFHLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTTtRQUMxQyxJQUFJLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUMzQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQUVELGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsdUJBQXVCLENBQUMsTUFBa0IsRUFBRSxLQUFhO0lBQ3ZFLE1BQU0sYUFBYSxHQUFrQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFckYsSUFBSSxDQUFDLGFBQWE7UUFBRSxPQUFPLElBQUksQ0FBQztJQUVoQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxJQUFJLGFBQWEsQ0FBQyxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFFekYsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3JDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1ZhbGlkLCB0b0RhdGUgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBEYXRlQ29uZmlnIH0gZnJvbSAnLi4vZGF0ZS5jb25maWcnO1xuaW1wb3J0IHsgRGF0ZUlucHV0Rm9ybWF0LCBJbnB1dERhdGVPcmRlciB9IGZyb20gJy4uL21vZGVscy9pbnB1dC1kYXRlLW9yZGVyJztcblxuaW50ZXJmYWNlIERhdGVDYW5kaWRhdGVJbnRlcmZhY2Uge1xuICBtb250aDogc3RyaW5nO1xuICBkYXk6IHN0cmluZztcbiAgeWVhcjogc3RyaW5nO1xufVxuXG5jb25zdCBmdW5jdGlvbkxpc3Q6IFJlY29yZDxJbnB1dERhdGVPcmRlciwgKHNwbGl0dGVkVmFsdWU6IHN0cmluZ1tdKSA9PiBEYXRlQ2FuZGlkYXRlSW50ZXJmYWNlPiA9IHtcbiAgW0lucHV0RGF0ZU9yZGVyLkRNWV06IChzcGxpdHRlZFZhbHVlOiBzdHJpbmdbXSkgPT4ge1xuICAgIGNvbnN0IFtkYXksIG1vbnRoLCB5ZWFyXSA9IHNwbGl0dGVkVmFsdWU7XG4gICAgcmV0dXJuIHsgbW9udGgsIGRheSwgeWVhciB9O1xuICB9LFxuICBbSW5wdXREYXRlT3JkZXIuTURZXTogKHNwbGl0dGVkVmFsdWU6IHN0cmluZ1tdKSA9PiB7XG4gICAgY29uc3QgW21vbnRoLCBkYXksIHllYXJdID0gc3BsaXR0ZWRWYWx1ZTtcbiAgICByZXR1cm4geyBtb250aCwgZGF5LCB5ZWFyIH07XG4gIH0sXG4gIFtJbnB1dERhdGVPcmRlci5ZTURdOiAoc3BsaXR0ZWRWYWx1ZTogc3RyaW5nW10pID0+IHtcbiAgICBjb25zdCBbeWVhciwgbW9udGgsIGRheV0gPSBzcGxpdHRlZFZhbHVlO1xuICAgIHJldHVybiB7IG1vbnRoLCBkYXksIHllYXIgfTtcbiAgfSxcbn07XG5cbmZ1bmN0aW9uIGdldERhdGVDYW5kaWRhdGUoeyBpbnB1dERhdGVPcmRlciwgaW5wdXREYXRlU2VwYXJhdG9yIH06IERhdGVDb25maWcsIHZhbHVlOiBzdHJpbmcpOiBEYXRlQ2FuZGlkYXRlSW50ZXJmYWNlIHwgbnVsbCB7XG4gIGNvbnN0IHNwbGl0dGVkVmFsdWUgPSB2YWx1ZS5zcGxpdChpbnB1dERhdGVTZXBhcmF0b3IpO1xuXG4gIGNvbnN0IHsgbW9udGgsIGRheSwgeWVhciB9OiBEYXRlQ2FuZGlkYXRlSW50ZXJmYWNlID0gZnVuY3Rpb25MaXN0W2lucHV0RGF0ZU9yZGVyXShzcGxpdHRlZFZhbHVlKTtcblxuICBpZiAoXG4gICAgIW1vbnRoIHx8XG4gICAgIWRheSB8fFxuICAgICF5ZWFyIHx8XG4gICAgbW9udGgubGVuZ3RoICE9PSBEYXRlSW5wdXRGb3JtYXQuTU9OVEgubGVuZ3RoIHx8XG4gICAgZGF5Lmxlbmd0aCAhPT0gRGF0ZUlucHV0Rm9ybWF0LkRBWVMubGVuZ3RoIHx8XG4gICAgeWVhci5sZW5ndGggIT09IERhdGVJbnB1dEZvcm1hdC5ZRUFSLmxlbmd0aFxuICApIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7IG1vbnRoLCBkYXksIHllYXIgfTtcbn1cblxuLyoqIEBpbnRlcm5hbCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERhdGVJbnB1dFZhbHVlQXNEYXRlKGNvbmZpZzogRGF0ZUNvbmZpZywgdmFsdWU6IHN0cmluZyk6IERhdGUgfCBudWxsIHtcbiAgY29uc3QgZGF0ZUNhbmRpZGF0ZTogRGF0ZUNhbmRpZGF0ZUludGVyZmFjZSB8IG51bGwgPSBnZXREYXRlQ2FuZGlkYXRlKGNvbmZpZywgdmFsdWUpO1xuXG4gIGlmICghZGF0ZUNhbmRpZGF0ZSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgZGF0ZSA9IHRvRGF0ZShgJHtkYXRlQ2FuZGlkYXRlLm1vbnRofS4ke2RhdGVDYW5kaWRhdGUuZGF5fS4ke2RhdGVDYW5kaWRhdGUueWVhcn1gKTtcblxuICByZXR1cm4gaXNWYWxpZChkYXRlKSA/IGRhdGUgOiBudWxsO1xufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2R4LWFuZ3VsYXItY2RrLWRhdGUtaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXQvc3JjL29keC1hbmd1bGFyLWNkay1kYXRlLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -2,5 +2,4 @@ export * from './lib/datepicker.component';
2
2
  export * from './lib/datepicker.config';
3
3
  export * from './lib/datepicker.module';
4
4
  export * from './lib/directives';
5
- export * from './lib/models';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG4iXX0=
@@ -3,6 +3,7 @@ import { A11yModule } from '@angular/cdk/a11y';
3
3
  import { booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ElementRef, EventEmitter, HostListener, input, Input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
4
4
  import { detectControllerChanges } from '@odx/angular';
5
5
  import { CustomFormControl } from '@odx/angular/cdk/custom-form-control';
6
+ import { getDateInputFormat, injectDateConfig } from '@odx/angular/cdk/date-input';
6
7
  import { ActionGroupComponent } from '@odx/angular/components/action-group';
7
8
  import { ButtonComponent } from '@odx/angular/components/button';
8
9
  import { CalendarComponent } from '@odx/angular/components/calendar';
@@ -11,9 +12,7 @@ import { IconComponent } from '@odx/angular/components/icon';
11
12
  import { CSSComponent } from '@odx/angular/internal';
12
13
  import { deferFn, injectElement, Position, untilDestroyed } from '@odx/angular/utils';
13
14
  import { format, startOfDay } from 'date-fns';
14
- import { injectDatepickerConfig } from './datepicker.config';
15
15
  import { DatepickerInputControlDirective } from './directives';
16
- import { getDatepickerInputFormat } from './utils';
17
16
  import * as i0 from "@angular/core";
18
17
  import * as i1 from "@angular/cdk/a11y";
19
18
  import * as i2 from "@odx/angular/components/dropdown";
@@ -35,7 +34,7 @@ let DatepickerComponent = class DatepickerComponent extends CustomFormControl {
35
34
  constructor() {
36
35
  super(null);
37
36
  this.takeUntilDestroyed = untilDestroyed();
38
- this.config = injectDatepickerConfig();
37
+ this.config = injectDateConfig();
39
38
  this.element = injectElement();
40
39
  /**
41
40
  * Represents the current date.
@@ -162,7 +161,7 @@ let DatepickerComponent = class DatepickerComponent extends CustomFormControl {
162
161
  updateDateField(date) {
163
162
  if (!this.dateField)
164
163
  return;
165
- const dateFormat = getDatepickerInputFormat(this.config);
164
+ const dateFormat = getDateInputFormat(this.config);
166
165
  this.dateField.nativeElementValue = date ? format(date, dateFormat) : '';
167
166
  }
168
167
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
@@ -199,4 +198,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
199
198
  type: HostListener,
200
199
  args: ['keydown.alt.ArrowDown', ['$event']]
201
200
  }] } });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFFTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBYyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUs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QiwrQkFBK0IsMEZBaEJsQyxpQkFBaUIsdUlBUVUsVUFBVSxrRUM5SWxELG9zQ0FxQ0EsMkNER1ksVUFBVSwwTEFBRSxvQkFBb0Isa0ZBQUUsZUFBZSx5R0FBRSxpQkFBaUIscU1BQUUsY0FBYywyZkFBRSxhQUFhOztBQUtsRyxtQkFBbUI7SUFUL0IsWUFBWSxDQUFDLFlBQVksQ0FBQzs7R0FTZCxtQkFBbUIsQ0FrTS9COzs0RkFsTVksbUJBQW1CO2tCQVIvQixTQUFTOytCQUNFLGdCQUFnQixjQUNkLElBQUksV0FDUCxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGFBQWEsQ0FBQyxtQkFFN0YsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTt3REF1QzlCLFFBQVE7c0JBRGQsS0FBSztnQkFXQyxPQUFPO3NCQURiLEtBQUs7Z0JBV0MsT0FBTztzQkFEYixLQUFLO2dCQVVDLGdCQUFnQjtzQkFEdEIsS0FBSztnQkFpQkMsY0FBYztzQkFEcEIsTUFBTTtnQkFTQSxRQUFRO3NCQURkLFNBQVM7dUJBQUMsaUJBQWlCO2dCQVNyQixzQkFBc0I7c0JBRDVCLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBU3pELFNBQVM7c0JBRGYsWUFBWTt1QkFBQywrQkFBK0I7Z0JBMkVuQyxjQUFjO3NCQUR2QixZQUFZO3VCQUFDLHVCQUF1QixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIGlucHV0LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRldGVjdENvbnRyb2xsZXJDaGFuZ2VzIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IEN1c3RvbUZvcm1Db250cm9sIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9jdXN0b20tZm9ybS1jb250cm9sJztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBDYWxlbmRhckNvbXBvbmVudCwgRGF0ZUZpbHRlciB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2NhbGVuZGFyJztcbmltcG9ydCB7IERyb3Bkb3duRGlyZWN0aXZlLCBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBkZWZlckZuLCBpbmplY3RFbGVtZW50LCBQb3NpdGlvbiwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgZm9ybWF0LCBzdGFydE9mRGF5IH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgaW5qZWN0RGF0ZXBpY2tlckNvbmZpZyB9IGZyb20gJy4vZGF0ZXBpY2tlci5jb25maWcnO1xuaW1wb3J0IHsgRGF0ZXBpY2tlcklucHV0Q29udHJvbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBnZXREYXRlcGlja2VySW5wdXRGb3JtYXQgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgZGF0ZXBpY2tlciBjb21wb25lbnQgZm9yIHNlbGVjdGluZyBhIGRhdGUuXG4gKiBFeHRlbmRzIHRoZSBgQ3VzdG9tRm9ybUNvbnRyb2xgIGNsYXNzIGFuZCBpbXBsZW1lbnRzIHRoZSBgQWZ0ZXJWaWV3SW5pdGAgaW50ZXJmYWNlLlxuICpcbiAqIEBzZWUge0N1c3RvbUZvcm1Db250cm9sfVxuICovXG5AQ1NTQ29tcG9uZW50KCdkYXRlcGlja2VyJylcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29keC1kYXRlcGlja2VyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0ExMXlNb2R1bGUsIEFjdGlvbkdyb3VwQ29tcG9uZW50LCBCdXR0b25Db21wb25lbnQsIENhbGVuZGFyQ29tcG9uZW50LCBEcm9wZG93bk1vZHVsZSwgSWNvbkNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIERhdGVwaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBDdXN0b21Gb3JtQ29udHJvbDxEYXRlIHwgbnVsbD4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRha2VVbnRpbERlc3Ryb3llZCA9IHVudGlsRGVzdHJveWVkKCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdERhdGVwaWNrZXJDb25maWcoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogR2V0cyBhIHZhbHVlIGluZGljYXRpbmcgd2hldGhlciB0aGUgZGF0ZXBpY2tlciBpcyBjdXJyZW50bHkgb3Blbi5cbiAgICpcbiAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAqL1xuICBwdWJsaWMgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmRyb3Bkb3duLmlzT3BlbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIHRoZSBjdXJyZW50IGRhdGUuXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlfVxuICAgKi9cbiAgcHVibGljIHRvZGF5ID0gbmV3IERhdGUoKTtcblxuICAvKipcbiAgICogVGhlIGZpbHRlciBmdW5jdGlvbiB1c2VkIHRvIGRldGVybWluZSBpZiBhIGRhdGUgc2hvdWxkIGJlIGluY2x1ZGVkIG9yIGV4Y2x1ZGVkIGluIHRoZSBkYXRlcGlja2VyLlxuICAgKiBJZiBzZXQgdG8gYG51bGxgLCBubyBmaWx0ZXJpbmcgd2lsbCBiZSBhcHBsaWVkLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZUZpbHRlciB8IG51bGx9XG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogYGBgdHNcbiAgICogLy8gRXhjbHVkZXMgbW9uZGF5cyBmcm9tIHRoZSBkYXRlcGlja2VyLlxuICAgKiBjb25zdCBmaWx0ZXJGbjogRGF0ZUZpbHRlciA9IChkYXRlKSA9PiBkYXRlLmdldERheSgpICE9PSAxO1xuICAgKiBgYGBcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJGbjogRGF0ZUZpbHRlciB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBzZWxlY3RhYmxlIGRhdGUgZm9yIHRoZSBkYXRlcGlja2VyLlxuICAgKiBJZiBzZXQgdG8gbnVsbCwgdGhlcmUgaXMgbm8gbWluaW11bSBkYXRlIHJlc3RyaWN0aW9uLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZSB8IG51bGx9XG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtaW5EYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHNlbGVjdGFibGUgZGF0ZSBmb3IgdGhlIGRhdGVwaWNrZXIuXG4gICAqIElmIHNldCB0byBudWxsLCB0aGVyZSBpcyBubyBtYXhpbXVtIGRhdGUgcmVzdHJpY3Rpb24uXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlIHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1heERhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBkcm9wZG93biByZWxhdGl2ZSB0byB0aGUgaW5wdXQgZmllbGQuXG4gICAqXG4gICAqIEB0eXBlIHtQb3NpdGlvbn1cbiAgICogQGRlZmF1bHQgUG9zaXRpb24uQk9UVE9NXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZHJvcGRvd25Qb3NpdGlvbjogUG9zaXRpb24gPSAnYm90dG9tJztcblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gdHJ1ZSwgdGhlIHNlbGVjdCB3aWxsIGRpc3BsYXkgYSByZXNldCBidXR0b24uXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHVibGljIGNsZWFyYWJsZSA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAvKipcbiAgICogRW1pdHMgdGhlIHNlbGVjdGVkIGRhdGUgd2hlbiBpdCBjaGFuZ2VzLlxuICAgKlxuICAgKiBAZW1pdHMge0RhdGV9XG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuXG4gIC8qKlxuICAgKiBUaGUgZHJvcGRvd24gZGlyZWN0aXZlIHVzZWQgaW4gdGhlIGRhdGVwaWNrZXIgY29tcG9uZW50LlxuICAgKlxuICAgKiBAdHlwZSB7RHJvcGRvd25EaXJlY3RpdmV9XG4gICAqL1xuICBAVmlld0NoaWxkKERyb3Bkb3duRGlyZWN0aXZlKVxuICBwdWJsaWMgZHJvcGRvd24hOiBEcm9wZG93bkRpcmVjdGl2ZTtcblxuICAvKipcbiAgICogVGhlIGRyb3Bkb3duIHRyaWdnZXIgZWxlbWVudCB1c2VkIGluIHRoZSBkYXRlcGlja2VyIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHR5cGUge0VsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+fVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnZHJvcGRvd25UcmlnZ2VyJywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGRyb3Bkb3duVHJpZ2dlckVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAvKipcbiAgICogVGhlIGRhdGUgZmllbGQgaW5wdXQgY29udHJvbCBkaXJlY3RpdmUgdXNlZCBpbiB0aGUgZGF0ZXBpY2tlciBjb21wb25lbnQuXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlcGlja2VySW5wdXRDb250cm9sRGlyZWN0aXZlIHwgdW5kZWZpbmVkfVxuICAgKi9cbiAgQENvbnRlbnRDaGlsZChEYXRlcGlja2VySW5wdXRDb250cm9sRGlyZWN0aXZlKVxuICBwdWJsaWMgZGF0ZUZpZWxkPzogRGF0ZXBpY2tlcklucHV0Q29udHJvbERpcmVjdGl2ZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihudWxsKTtcbiAgICBkZXRlY3RDb250cm9sbGVyQ2hhbmdlcyh0aGlzKS5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5oYW5kbGVEYXRlRmllbGRDaGFuZ2VzKCk7XG4gICAgdGhpcy5oYW5kbGVEYXRlRmllbGRGb2N1cygpO1xuXG4gICAgZGVmZXJGbigoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMudmFsdWUpIHJldHVybjtcbiAgICAgIHRoaXMudXBkYXRlRGF0ZUZpZWxkKHN0YXJ0T2ZEYXkodGhpcy52YWx1ZSkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdHMgYSBkYXRlLlxuICAgKlxuICAgKiBAcGFyYW0ge0RhdGUgfCBudWxsfSB2YWx1ZSAtIFRoZSBkYXRlIHZhbHVlIHRvIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgcHVibGljIHNlbGVjdERhdGUodmFsdWU6IERhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuO1xuXG4gICAgdGhpcy51cGRhdGVJbnRlcm5hbFZhbHVlKHZhbHVlKTtcblxuICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh2YWx1ZSk7XG5cbiAgICB0aGlzLmRyb3Bkb3duLmNsb3NlKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBkYXRlcGlja2VyJ3MgdmFsdWUgdG8gbnVsbC5cbiAgICovXG4gIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUludGVybmFsVmFsdWUobnVsbCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIFdyaXRlcyBhIG5ldyB2YWx1ZSB0byB0aGUgZWxlbWVudC5cbiAgICogUGFydCBvZiB0aGUgQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlLlxuICAgKiBAcGFyYW0ge0RhdGUgfCBudWxsfSB2YWx1ZSAtIFRoZSBuZXcgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZURhdGVGaWVsZCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdXBkYXRlSW50ZXJuYWxWYWx1ZSh2YWx1ZTogRGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZURhdGVGaWVsZCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRGF0ZUZpZWxkQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGVGaWVsZD8udmFsdWVDaGFuZ2UkLnBpcGUodGhpcy50YWtlVW50aWxEZXN0cm95ZWQoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5kYXRlRmllbGQ/LnZhbHVlQXNEYXRlKSByZXR1cm47XG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMuZGF0ZUZpZWxkPy52YWx1ZUFzRGF0ZSA/PyBudWxsKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVEYXRlRmllbGRGb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGVGaWVsZD8uZm9jdXNlZC5waXBlKHRoaXMudGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoaXNGb2N1c2VkKSA9PiB7XG4gICAgICBpZiAoIWlzRm9jdXNlZCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgIHRoaXMuZHJvcGRvd24uY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYWx0LkFycm93RG93bicsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBvcGVuRGF0ZXBpY2tlcihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgaWYgKHRoaXMuaXNSZWFkb25seSB8fCB0aGlzLmlzRGlzYWJsZWQpIHJldHVybjtcblxuICAgIHRoaXMuZHJvcGRvd24ub3BlbihldmVudCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZURhdGVGaWVsZChkYXRlOiBEYXRlIHwgbnVsbCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kYXRlRmllbGQpIHJldHVybjtcblxuICAgIGNvbnN0IGRhdGVGb3JtYXQgPSBnZXREYXRlcGlja2VySW5wdXRGb3JtYXQodGhpcy5jb25maWcpO1xuICAgIHRoaXMuZGF0ZUZpZWxkLm5hdGl2ZUVsZW1lbnRWYWx1ZSA9IGRhdGUgPyBmb3JtYXQoZGF0ZSwgZGF0ZUZvcm1hdCkgOiAnJztcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiaW5wdXRbb2R4RGF0ZXBpY2tlckNvbnRyb2xdXCIgLz5cblxuPG9keC1hY3Rpb24tZ3JvdXAgY2xhc3M9XCJvZHgtZGF0ZXBpY2tlcl9fdHJpZ2dlci13cmFwcGVyXCI+XG4gIEBpZiAoY2xlYXJhYmxlKCkgJiYgdmFsdWUpIHtcbiAgICA8YnV0dG9uIG9keEJ1dHRvbiBjbGFzcz1cIm9keC1kYXRlcGlja2VyX19jbGVhclwiIChjbGljayk9XCJyZXNldCgpXCIgc2l6ZT1cInNtYWxsXCIgYXJpYS1sYWJlbD1cIlJlc2V0IHRpbWVcIj5cbiAgICAgIDxvZHgtaWNvbiBuYW1lPVwiY2xvc2VcIiBpY29uU2V0PVwiY29yZVwiIC8+XG4gICAgPC9idXR0b24+XG4gIH1cbiAgPGJ1dHRvblxuICAgICNkcm9wZG93blRyaWdnZXJcbiAgICBvZHhCdXR0b25cbiAgICBzaXplPVwic21hbGxcIlxuICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgY2xhc3M9XCJvZHgtZGF0ZXBpY2tlcl9fdHJpZ2dlclwiXG4gICAgW29keERyb3Bkb3duXT1cImNhbGVuZGFyT3ZlcmxheVwiXG4gICAgW29keERyb3Bkb3duT3B0aW9uc109XCJ7IHBvc2l0aW9uOiBkcm9wZG93blBvc2l0aW9uIH1cIlxuICAgIFtvZHhEcm9wZG93blRyaWdnZXJFbGVtZW50XT1cImRyb3Bkb3duVHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudFwiXG4gICAgW29keERyb3Bkb3duSG9zdF09XCJudWxsXCJcbiAgICBbb2R4RHJvcGRvd25SZWZlcmVuY2VFbGVtZW50XT1cImVsZW1lbnQubmF0aXZlRWxlbWVudFwiXG4gICAgKG9keERyb3Bkb3duQmVmb3JlQ2xvc2UpPVwib25Ub3VjaGVkKClcIlxuICA+XG4gICAgPG9keC1pY29uIG5hbWU9XCJjYWxlbmRhclwiIC8+XG4gIDwvYnV0dG9uPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbb2R4QnV0dG9uXVwiIG5nUHJvamVjdEFzPVwiW29keEJ1dHRvbl1cIiAvPlxuPC9vZHgtYWN0aW9uLWdyb3VwPlxuXG48bmctdGVtcGxhdGUgI2NhbGVuZGFyT3ZlcmxheT5cbiAgPG9keC1jYWxlbmRhclxuICAgIFtzZWxlY3RlZERhdGVdPVwidmFsdWUgfHwgdG9kYXlcIlxuICAgIFtmaWx0ZXJGbl09XCJmaWx0ZXJGblwiXG4gICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgY2RrVHJhcEZvY3VzXG4gICAgY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVcbiAgICAoc2VsZWN0ZWREYXRlQ2hhbmdlKT1cInNlbGVjdERhdGUoJGV2ZW50KVwiXG4gIC8+XG48L25nLXRlbXBsYXRlPlxuIl19
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFFTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBYyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFD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QUFVLGtFQzdJbEQsb3NDQXFDQSwyQ0RFWSxVQUFVLDBMQUFFLG9CQUFvQixrRkFBRSxlQUFlLHlHQUFFLGlCQUFpQixxTUFBRSxjQUFjLDJmQUFFLGFBQWE7O0FBS2xHLG1CQUFtQjtJQVQvQixZQUFZLENBQUMsWUFBWSxDQUFDOztHQVNkLG1CQUFtQixDQWtNL0I7OzRGQWxNWSxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQLENBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDLG1CQUU3Rix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJO3dEQXVDOUIsUUFBUTtzQkFEZCxLQUFLO2dCQVdDLE9BQU87c0JBRGIsS0FBSztnQkFXQyxPQUFPO3NCQURiLEtBQUs7Z0JBVUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQWlCQyxjQUFjO3NCQURwQixNQUFNO2dCQVNBLFFBQVE7c0JBRGQsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBU3JCLHNCQUFzQjtzQkFENUIsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFTekQsU0FBUztzQkFEZixZQUFZO3VCQUFDLCtCQUErQjtnQkEyRW5DLGNBQWM7c0JBRHZCLFlBQVk7dUJBQUMsdUJBQXVCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgaW5wdXQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXMgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ3VzdG9tRm9ybUNvbnRyb2wgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2N1c3RvbS1mb3JtLWNvbnRyb2wnO1xuaW1wb3J0IHsgZ2V0RGF0ZUlucHV0Rm9ybWF0LCBpbmplY3REYXRlQ29uZmlnIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0JztcbmltcG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYWN0aW9uLWdyb3VwJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBDYWxlbmRhckNvbXBvbmVudCwgRGF0ZUZpbHRlciB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2NhbGVuZGFyJztcbmltcG9ydCB7IERyb3Bkb3duRGlyZWN0aXZlLCBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7IENTU0NvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBkZWZlckZuLCBpbmplY3RFbGVtZW50LCBQb3NpdGlvbiwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgZm9ybWF0LCBzdGFydE9mRGF5IH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgRGF0ZXBpY2tlcklucHV0Q29udHJvbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRhdGVwaWNrZXIgY29tcG9uZW50IGZvciBzZWxlY3RpbmcgYSBkYXRlLlxuICogRXh0ZW5kcyB0aGUgYEN1c3RvbUZvcm1Db250cm9sYCBjbGFzcyBhbmQgaW1wbGVtZW50cyB0aGUgYEFmdGVyVmlld0luaXRgIGludGVyZmFjZS5cbiAqXG4gKiBAc2VlIHtDdXN0b21Gb3JtQ29udHJvbH1cbiAqL1xuQENTU0NvbXBvbmVudCgnZGF0ZXBpY2tlcicpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtZGF0ZXBpY2tlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBMTF5TW9kdWxlLCBBY3Rpb25Hcm91cENvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50LCBDYWxlbmRhckNvbXBvbmVudCwgRHJvcGRvd25Nb2R1bGUsIEljb25Db21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRlcGlja2VyQ29tcG9uZW50IGV4dGVuZHMgQ3VzdG9tRm9ybUNvbnRyb2w8RGF0ZSB8IG51bGw+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByb3RlY3RlZCByZWFkb25seSB0YWtlVW50aWxEZXN0cm95ZWQgPSB1bnRpbERlc3Ryb3llZCgpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjb25maWcgPSBpbmplY3REYXRlQ29uZmlnKCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGRhdGVwaWNrZXIgaXMgY3VycmVudGx5IG9wZW4uXG4gICAqXG4gICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgKi9cbiAgcHVibGljIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5kcm9wZG93bi5pc09wZW47XG4gIH1cblxuICAvKipcbiAgICogUmVwcmVzZW50cyB0aGUgY3VycmVudCBkYXRlLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZX1cbiAgICovXG4gIHB1YmxpYyB0b2RheSA9IG5ldyBEYXRlKCk7XG5cbiAgLyoqXG4gICAqIFRoZSBmaWx0ZXIgZnVuY3Rpb24gdXNlZCB0byBkZXRlcm1pbmUgaWYgYSBkYXRlIHNob3VsZCBiZSBpbmNsdWRlZCBvciBleGNsdWRlZCBpbiB0aGUgZGF0ZXBpY2tlci5cbiAgICogSWYgc2V0IHRvIGBudWxsYCwgbm8gZmlsdGVyaW5nIHdpbGwgYmUgYXBwbGllZC5cbiAgICpcbiAgICogQHR5cGUge0RhdGVGaWx0ZXIgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIC8vIEV4Y2x1ZGVzIG1vbmRheXMgZnJvbSB0aGUgZGF0ZXBpY2tlci5cbiAgICogY29uc3QgZmlsdGVyRm46IERhdGVGaWx0ZXIgPSAoZGF0ZSkgPT4gZGF0ZS5nZXREYXkoKSAhPT0gMTtcbiAgICogYGBgXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmlsdGVyRm46IERhdGVGaWx0ZXIgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gc2VsZWN0YWJsZSBkYXRlIGZvciB0aGUgZGF0ZXBpY2tlci5cbiAgICogSWYgc2V0IHRvIG51bGwsIHRoZXJlIGlzIG5vIG1pbmltdW0gZGF0ZSByZXN0cmljdGlvbi5cbiAgICpcbiAgICogQHR5cGUge0RhdGUgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWluRGF0ZTogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBzZWxlY3RhYmxlIGRhdGUgZm9yIHRoZSBkYXRlcGlja2VyLlxuICAgKiBJZiBzZXQgdG8gbnVsbCwgdGhlcmUgaXMgbm8gbWF4aW11bSBkYXRlIHJlc3RyaWN0aW9uLlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZSB8IG51bGx9XG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3NpdGlvbiBvZiB0aGUgZHJvcGRvd24gcmVsYXRpdmUgdG8gdGhlIGlucHV0IGZpZWxkLlxuICAgKlxuICAgKiBAdHlwZSB7UG9zaXRpb259XG4gICAqIEBkZWZhdWx0IFBvc2l0aW9uLkJPVFRPTVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRyb3Bkb3duUG9zaXRpb246IFBvc2l0aW9uID0gJ2JvdHRvbSc7XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIHRydWUsIHRoZSBzZWxlY3Qgd2lsbCBkaXNwbGF5IGEgcmVzZXQgYnV0dG9uLlxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHB1YmxpYyBjbGVhcmFibGUgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBzZWxlY3RlZCBkYXRlIHdoZW4gaXQgY2hhbmdlcy5cbiAgICpcbiAgICogQGVtaXRzIHtEYXRlfVxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcblxuICAvKipcbiAgICogVGhlIGRyb3Bkb3duIGRpcmVjdGl2ZSB1c2VkIGluIHRoZSBkYXRlcGlja2VyIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHR5cGUge0Ryb3Bkb3duRGlyZWN0aXZlfVxuICAgKi9cbiAgQFZpZXdDaGlsZChEcm9wZG93bkRpcmVjdGl2ZSlcbiAgcHVibGljIGRyb3Bkb3duITogRHJvcGRvd25EaXJlY3RpdmU7XG5cbiAgLyoqXG4gICAqIFRoZSBkcm9wZG93biB0cmlnZ2VyIGVsZW1lbnQgdXNlZCBpbiB0aGUgZGF0ZXBpY2tlciBjb21wb25lbnQuXG4gICAqXG4gICAqIEB0eXBlIHtFbGVtZW50UmVmPEhUTUxFbGVtZW50Pn1cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duVHJpZ2dlcicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBkcm9wZG93blRyaWdnZXJFbGVtZW50ITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgLyoqXG4gICAqIFRoZSBkYXRlIGZpZWxkIGlucHV0IGNvbnRyb2wgZGlyZWN0aXZlIHVzZWQgaW4gdGhlIGRhdGVwaWNrZXIgY29tcG9uZW50LlxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZXBpY2tlcklucHV0Q29udHJvbERpcmVjdGl2ZSB8IHVuZGVmaW5lZH1cbiAgICovXG4gIEBDb250ZW50Q2hpbGQoRGF0ZXBpY2tlcklucHV0Q29udHJvbERpcmVjdGl2ZSlcbiAgcHVibGljIGRhdGVGaWVsZD86IERhdGVwaWNrZXJJbnB1dENvbnRyb2xEaXJlY3RpdmU7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIobnVsbCk7XG4gICAgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXModGhpcykuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlRGF0ZUZpZWxkQ2hhbmdlcygpO1xuICAgIHRoaXMuaGFuZGxlRGF0ZUZpZWxkRm9jdXMoKTtcblxuICAgIGRlZmVyRm4oKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnZhbHVlKSByZXR1cm47XG4gICAgICB0aGlzLnVwZGF0ZURhdGVGaWVsZChzdGFydE9mRGF5KHRoaXMudmFsdWUpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWxlY3RzIGEgZGF0ZS5cbiAgICpcbiAgICogQHBhcmFtIHtEYXRlIHwgbnVsbH0gdmFsdWUgLSBUaGUgZGF0ZSB2YWx1ZSB0byBiZSBzZWxlY3RlZC5cbiAgICovXG4gIHB1YmxpYyBzZWxlY3REYXRlKHZhbHVlOiBEYXRlIHwgbnVsbCk6IHZvaWQge1xuICAgIGlmICghdmFsdWUpIHJldHVybjtcblxuICAgIHRoaXMudXBkYXRlSW50ZXJuYWxWYWx1ZSh2YWx1ZSk7XG5cbiAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQodmFsdWUpO1xuXG4gICAgdGhpcy5kcm9wZG93bi5jbG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgZGF0ZXBpY2tlcidzIHZhbHVlIHRvIG51bGwuXG4gICAqL1xuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVJbnRlcm5hbFZhbHVlKG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBXcml0ZXMgYSBuZXcgdmFsdWUgdG8gdGhlIGVsZW1lbnQuXG4gICAqIFBhcnQgb2YgdGhlIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZS5cbiAgICogQHBhcmFtIHtEYXRlIHwgbnVsbH0gdmFsdWUgLSBUaGUgbmV3IHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IERhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVEYXRlRmllbGQodmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUludGVybmFsVmFsdWUodmFsdWU6IERhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVEYXRlRmllbGQodmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZURhdGVGaWVsZENoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRlRmllbGQ/LnZhbHVlQ2hhbmdlJC5waXBlKHRoaXMudGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuZGF0ZUZpZWxkPy52YWx1ZUFzRGF0ZSkgcmV0dXJuO1xuICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLmRhdGVGaWVsZD8udmFsdWVBc0RhdGUgPz8gbnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRGF0ZUZpZWxkRm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRlRmllbGQ/LmZvY3VzZWQucGlwZSh0aGlzLnRha2VVbnRpbERlc3Ryb3llZCgpKS5zdWJzY3JpYmUoKGlzRm9jdXNlZCkgPT4ge1xuICAgICAgaWYgKCFpc0ZvY3VzZWQpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFsdC5BcnJvd0Rvd24nLCBbJyRldmVudCddKVxuICBwcm90ZWN0ZWQgb3BlbkRhdGVwaWNrZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmICh0aGlzLmlzUmVhZG9ubHkgfHwgdGhpcy5pc0Rpc2FibGVkKSByZXR1cm47XG5cbiAgICB0aGlzLmRyb3Bkb3duLm9wZW4oZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVEYXRlRmllbGQoZGF0ZTogRGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGF0ZUZpZWxkKSByZXR1cm47XG5cbiAgICBjb25zdCBkYXRlRm9ybWF0ID0gZ2V0RGF0ZUlucHV0Rm9ybWF0KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLmRhdGVGaWVsZC5uYXRpdmVFbGVtZW50VmFsdWUgPSBkYXRlID8gZm9ybWF0KGRhdGUsIGRhdGVGb3JtYXQpIDogJyc7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImlucHV0W29keERhdGVwaWNrZXJDb250cm9sXVwiIC8+XG5cbjxvZHgtYWN0aW9uLWdyb3VwIGNsYXNzPVwib2R4LWRhdGVwaWNrZXJfX3RyaWdnZXItd3JhcHBlclwiPlxuICBAaWYgKGNsZWFyYWJsZSgpICYmIHZhbHVlKSB7XG4gICAgPGJ1dHRvbiBvZHhCdXR0b24gY2xhc3M9XCJvZHgtZGF0ZXBpY2tlcl9fY2xlYXJcIiAoY2xpY2spPVwicmVzZXQoKVwiIHNpemU9XCJzbWFsbFwiIGFyaWEtbGFiZWw9XCJSZXNldCB0aW1lXCI+XG4gICAgICA8b2R4LWljb24gbmFtZT1cImNsb3NlXCIgaWNvblNldD1cImNvcmVcIiAvPlxuICAgIDwvYnV0dG9uPlxuICB9XG4gIDxidXR0b25cbiAgICAjZHJvcGRvd25UcmlnZ2VyXG4gICAgb2R4QnV0dG9uXG4gICAgc2l6ZT1cInNtYWxsXCJcbiAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgIGNsYXNzPVwib2R4LWRhdGVwaWNrZXJfX3RyaWdnZXJcIlxuICAgIFtvZHhEcm9wZG93bl09XCJjYWxlbmRhck92ZXJsYXlcIlxuICAgIFtvZHhEcm9wZG93bk9wdGlvbnNdPVwieyBwb3NpdGlvbjogZHJvcGRvd25Qb3NpdGlvbiB9XCJcbiAgICBbb2R4RHJvcGRvd25UcmlnZ2VyRWxlbWVudF09XCJkcm9wZG93blRyaWdnZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnRcIlxuICAgIFtvZHhEcm9wZG93bkhvc3RdPVwibnVsbFwiXG4gICAgW29keERyb3Bkb3duUmVmZXJlbmNlRWxlbWVudF09XCJlbGVtZW50Lm5hdGl2ZUVsZW1lbnRcIlxuICAgIChvZHhEcm9wZG93bkJlZm9yZUNsb3NlKT1cIm9uVG91Y2hlZCgpXCJcbiAgPlxuICAgIDxvZHgtaWNvbiBuYW1lPVwiY2FsZW5kYXJcIiAvPlxuICA8L2J1dHRvbj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW29keEJ1dHRvbl1cIiBuZ1Byb2plY3RBcz1cIltvZHhCdXR0b25dXCIgLz5cbjwvb2R4LWFjdGlvbi1ncm91cD5cblxuPG5nLXRlbXBsYXRlICNjYWxlbmRhck92ZXJsYXk+XG4gIDxvZHgtY2FsZW5kYXJcbiAgICBbc2VsZWN0ZWREYXRlXT1cInZhbHVlIHx8IHRvZGF5XCJcbiAgICBbZmlsdGVyRm5dPVwiZmlsdGVyRm5cIlxuICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxuICAgIGNka1RyYXBGb2N1c1xuICAgIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlXG4gICAgKHNlbGVjdGVkRGF0ZUNoYW5nZSk9XCJzZWxlY3REYXRlKCRldmVudClcIlxuICAvPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,26 +1,52 @@
1
- import { createConfigTokens } from '@odx/angular/utils';
2
- import { DatepickerInputDateOrder } from './models';
3
- /**
4
- * Tools for injecting and providing the datepicker configuration with default configuration for the datepicker.
5
- *
6
- * @example
7
- * // Providing custom datepicker configuration.
8
- * ```ts
9
- * @Component({
10
- * providers: [provideDatepickerConfig({ inputDateOrder: DatepickerInputDateOrder.MDY, inputDateSeparator: '/'})]
11
- * })
12
- * export class MyComponent {}
13
- *
14
- * // Injecting the datepicker configuration.
15
- * ```ts
16
- * @Component({})
17
- * export class MyComponent {
18
- * constructor(@Inject(injectDatepickerConfig()) private readonly datepickerConfig: DatepickerConfig) {}
19
- * }
20
- * ```
21
- */
22
- export const { DatepickerConfig, DatepickerDefaultConfig, injectDatepickerConfig, provideDatepickerConfig } = createConfigTokens('Datepicker', '@odx/angular/components/datepicker', {
23
- inputDateOrder: DatepickerInputDateOrder.DMY,
24
- inputDateSeparator: '.',
25
- });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBZXBEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxNQUFNLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLEdBQUcsa0JBQWtCLENBQzlILFlBQVksRUFDWixvQ0FBb0MsRUFDcEM7SUFDRSxjQUFjLEVBQUUsd0JBQXdCLENBQUMsR0FBRztJQUM1QyxrQkFBa0IsRUFBRSxHQUFHO0NBQ3hCLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbmZpZ1Rva2VucyB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBEYXRlcGlja2VySW5wdXREYXRlT3JkZXIgfSBmcm9tICcuL21vZGVscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0ZXBpY2tlckNvbmZpZyB7XG4gIC8qKlxuICAgKiBEYXRlJ3Mgb3JkZXIgKCdETVknIHwgJ01EWScgfCAnWU1EJykuXG4gICAqIEBkZWZhdWx0IERhdGVwaWNrZXJJbnB1dERhdGVPcmRlci5ETVlcbiAgICovXG4gIGlucHV0RGF0ZU9yZGVyOiBEYXRlcGlja2VySW5wdXREYXRlT3JkZXI7XG4gIC8qKlxuICAgKiBTaW5nbGUtY2hhcmFjdGVyIGRhdGUncyBzZXBhcmF0b3IgKGRvdCwgc2xhc2ggZXRjLikuXG4gICAqIEBkZWZhdWx0ICcuJ1xuICAgKi9cbiAgaW5wdXREYXRlU2VwYXJhdG9yOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVG9vbHMgZm9yIGluamVjdGluZyBhbmQgcHJvdmlkaW5nIHRoZSBkYXRlcGlja2VyIGNvbmZpZ3VyYXRpb24gd2l0aCBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBkYXRlcGlja2VyLlxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBQcm92aWRpbmcgY3VzdG9tIGRhdGVwaWNrZXIgY29uZmlndXJhdGlvbi5cbiAqIGBgYHRzXG4gKiBAQ29tcG9uZW50KHtcbiAqICAgcHJvdmlkZXJzOiBbcHJvdmlkZURhdGVwaWNrZXJDb25maWcoeyBpbnB1dERhdGVPcmRlcjogRGF0ZXBpY2tlcklucHV0RGF0ZU9yZGVyLk1EWSwgaW5wdXREYXRlU2VwYXJhdG9yOiAnLyd9KV1cbiAqIH0pXG4gKiBleHBvcnQgY2xhc3MgTXlDb21wb25lbnQge31cbiAqXG4gKiAvLyBJbmplY3RpbmcgdGhlIGRhdGVwaWNrZXIgY29uZmlndXJhdGlvbi5cbiAqIGBgYHRzXG4gKiBAQ29tcG9uZW50KHt9KVxuICogZXhwb3J0IGNsYXNzIE15Q29tcG9uZW50IHtcbiAqICBjb25zdHJ1Y3RvcihASW5qZWN0KGluamVjdERhdGVwaWNrZXJDb25maWcoKSkgcHJpdmF0ZSByZWFkb25seSBkYXRlcGlja2VyQ29uZmlnOiBEYXRlcGlja2VyQ29uZmlnKSB7fVxuICogfVxuICogYGBgXG4gKi9cbmV4cG9ydCBjb25zdCB7IERhdGVwaWNrZXJDb25maWcsIERhdGVwaWNrZXJEZWZhdWx0Q29uZmlnLCBpbmplY3REYXRlcGlja2VyQ29uZmlnLCBwcm92aWRlRGF0ZXBpY2tlckNvbmZpZyB9ID0gY3JlYXRlQ29uZmlnVG9rZW5zKFxuICAnRGF0ZXBpY2tlcicsXG4gICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyJyxcbiAge1xuICAgIGlucHV0RGF0ZU9yZGVyOiBEYXRlcGlja2VySW5wdXREYXRlT3JkZXIuRE1ZLFxuICAgIGlucHV0RGF0ZVNlcGFyYXRvcjogJy4nLFxuICB9LFxuKTtcbiJdfQ==
1
+ export {
2
+ /*
3
+ * @deprecated
4
+ * Use `DateConfig` from `@odx/angular/cdk/date-input` instead.
5
+ */
6
+ DateConfig as DatepickerConfig,
7
+ /*
8
+ * @deprecated
9
+ * Use `DateDefaultConfig` from `@odx/angular/cdk/date-input` instead.
10
+ */
11
+ DateDefaultConfig as DatepickerDefaultConfig,
12
+ /*
13
+ * @deprecated
14
+ * Use `InputDateOrder` from `@odx/angular/cdk/date-input` instead.
15
+ */
16
+ InputDateOrder as DatepickerInputDateOrder,
17
+ /*
18
+ * @deprecated
19
+ * Use `DateInputFormat` from `@odx/angular/cdk/date-input` instead.
20
+ */
21
+ DateInputFormat as DatepickerInputFormat,
22
+ /*
23
+ * @deprecated
24
+ * Use `DateInputMask` from `@odx/angular/cdk/date-input` instead.
25
+ */
26
+ DateInputMask as DatepickerInputMask,
27
+ /*
28
+ * @deprecated
29
+ * Use `getDateInputFormat` from `@odx/angular/cdk/date-input` instead.
30
+ */
31
+ getDateInputFormat as getDatepickerInputFormat,
32
+ /*
33
+ * @deprecated
34
+ * Use `getDateInputMask` from `@odx/angular/cdk/date-input` instead.
35
+ */
36
+ getDateInputMask as getDatepickerInputMask,
37
+ /*
38
+ * @deprecated
39
+ * Use `getDateInputValueAsDate` from `@odx/angular/cdk/date-input` instead.
40
+ */
41
+ getDateInputValueAsDate as getDatepickerInputValueAsDate,
42
+ /*
43
+ * @deprecated
44
+ * Use `injectDateConfig` from `@odx/angular/cdk/date-input` instead.
45
+ */
46
+ injectDateConfig as injectDatepickerDateConfig,
47
+ /*
48
+ * @deprecated
49
+ * Use `provideDateConfig` from `@odx/angular/cdk/date-input` instead.
50
+ */
51
+ provideDateConfig as provideDatepickerConfig, } from '@odx/angular/cdk/date-input';
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kYXRlcGlja2VyL3NyYy9saWIvZGF0ZXBpY2tlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTztBQUNMOzs7R0FHRztBQUNILFVBQVUsSUFBSSxnQkFBZ0I7QUFDOUI7OztHQUdHO0FBQ0gsaUJBQWlCLElBQUksdUJBQXVCO0FBQzVDOzs7R0FHRztBQUNILGNBQWMsSUFBSSx3QkFBd0I7QUFDMUM7OztHQUdHO0FBQ0gsZUFBZSxJQUFJLHFCQUFxQjtBQUN4Qzs7O0dBR0c7QUFDSCxhQUFhLElBQUksbUJBQW1CO0FBTXBDOzs7R0FHRztBQUNILGtCQUFrQixJQUFJLHdCQUF3QjtBQUM5Qzs7O0dBR0c7QUFDSCxnQkFBZ0IsSUFBSSxzQkFBc0I7QUFDMUM7OztHQUdHO0FBQ0gsdUJBQXVCLElBQUksNkJBQTZCO0FBQ3hEOzs7R0FHRztBQUNILGdCQUFnQixJQUFJLDBCQUEwQjtBQUM5Qzs7O0dBR0c7QUFDSCxpQkFBaUIsSUFBSSx1QkFBdUIsR0FDN0MsTUFBTSw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIC8qXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIFVzZSBgRGF0ZUNvbmZpZ2AgZnJvbSBgQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0YCBpbnN0ZWFkLlxuICAgKi9cbiAgRGF0ZUNvbmZpZyBhcyBEYXRlcGlja2VyQ29uZmlnLFxuICAvKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKiBVc2UgYERhdGVEZWZhdWx0Q29uZmlnYCBmcm9tIGBAb2R4L2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXRgIGluc3RlYWQuXG4gICAqL1xuICBEYXRlRGVmYXVsdENvbmZpZyBhcyBEYXRlcGlja2VyRGVmYXVsdENvbmZpZyxcbiAgLypcbiAgICogQGRlcHJlY2F0ZWRcbiAgICogVXNlIGBJbnB1dERhdGVPcmRlcmAgZnJvbSBgQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0YCBpbnN0ZWFkLlxuICAgKi9cbiAgSW5wdXREYXRlT3JkZXIgYXMgRGF0ZXBpY2tlcklucHV0RGF0ZU9yZGVyLFxuICAvKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKiBVc2UgYERhdGVJbnB1dEZvcm1hdGAgZnJvbSBgQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0YCBpbnN0ZWFkLlxuICAgKi9cbiAgRGF0ZUlucHV0Rm9ybWF0IGFzIERhdGVwaWNrZXJJbnB1dEZvcm1hdCxcbiAgLypcbiAgICogQGRlcHJlY2F0ZWRcbiAgICogVXNlIGBEYXRlSW5wdXRNYXNrYCBmcm9tIGBAb2R4L2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXRgIGluc3RlYWQuXG4gICAqL1xuICBEYXRlSW5wdXRNYXNrIGFzIERhdGVwaWNrZXJJbnB1dE1hc2ssXG4gIC8qXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIFVzZSBgRGF0ZUlucHV0UGF0dGVybmAgZnJvbSBgQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0YCBpbnN0ZWFkLlxuICAgKi9cbiAgRGF0ZUlucHV0UGF0dGVybiBhcyBEYXRlcGlja2VySW5wdXRQYXR0ZXJuLFxuICAvKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKiBVc2UgYGdldERhdGVJbnB1dEZvcm1hdGAgZnJvbSBgQG9keC9hbmd1bGFyL2Nkay9kYXRlLWlucHV0YCBpbnN0ZWFkLlxuICAgKi9cbiAgZ2V0RGF0ZUlucHV0Rm9ybWF0IGFzIGdldERhdGVwaWNrZXJJbnB1dEZvcm1hdCxcbiAgLypcbiAgICogQGRlcHJlY2F0ZWRcbiAgICogVXNlIGBnZXREYXRlSW5wdXRNYXNrYCBmcm9tIGBAb2R4L2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXRgIGluc3RlYWQuXG4gICAqL1xuICBnZXREYXRlSW5wdXRNYXNrIGFzIGdldERhdGVwaWNrZXJJbnB1dE1hc2ssXG4gIC8qXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIFVzZSBgZ2V0RGF0ZUlucHV0VmFsdWVBc0RhdGVgIGZyb20gYEBvZHgvYW5ndWxhci9jZGsvZGF0ZS1pbnB1dGAgaW5zdGVhZC5cbiAgICovXG4gIGdldERhdGVJbnB1dFZhbHVlQXNEYXRlIGFzIGdldERhdGVwaWNrZXJJbnB1dFZhbHVlQXNEYXRlLFxuICAvKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKiBVc2UgYGluamVjdERhdGVDb25maWdgIGZyb20gYEBvZHgvYW5ndWxhci9jZGsvZGF0ZS1pbnB1dGAgaW5zdGVhZC5cbiAgICovXG4gIGluamVjdERhdGVDb25maWcgYXMgaW5qZWN0RGF0ZXBpY2tlckRhdGVDb25maWcsXG4gIC8qXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIFVzZSBgcHJvdmlkZURhdGVDb25maWdgIGZyb20gYEBvZHgvYW5ndWxhci9jZGsvZGF0ZS1pbnB1dGAgaW5zdGVhZC5cbiAgICovXG4gIHByb3ZpZGVEYXRlQ29uZmlnIGFzIHByb3ZpZGVEYXRlcGlja2VyQ29uZmlnLFxufSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2RhdGUtaW5wdXQnO1xuIl19