ngx-tethys 13.2.0 → 13.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +41 -0
- package/collapse/styles/collapse.scss +3 -0
- package/date-picker/{style → styles}/calendar.scss +0 -0
- package/date-picker/{style → styles}/date-carousel.scss +0 -0
- package/date-picker/{style → styles}/decade-panel.scss +0 -0
- package/date-picker/{style → styles}/index.scss +0 -0
- package/date-picker/{style → styles}/mixin.scss +0 -0
- package/date-picker/{style → styles}/month-panel.scss +0 -0
- package/date-picker/{style → styles}/month-picker.scss +0 -0
- package/date-picker/{style → styles}/picker.scss +0 -0
- package/date-picker/{style → styles}/range-picker.scss +0 -0
- package/date-picker/{style → styles}/time-picker.scss +1 -1
- package/date-picker/{style → styles}/variables.scss +0 -0
- package/date-picker/{style → styles}/week-picker.scss +0 -0
- package/date-picker/{style → styles}/year-panel.scss +0 -0
- package/drag-drop/drag-content.directive.d.ts +3 -0
- package/drag-drop/drag-drop.service.d.ts +14 -0
- package/drag-drop/drag-handle.directive.d.ts +3 -0
- package/drag-drop/drag.directive.d.ts +15 -0
- package/drag-drop/drop-container.directive.d.ts +36 -0
- package/drag-drop/examples/{basic/basic.component.scss → tree-drag/tree-drag.component.scss} +0 -0
- package/esm2020/date-picker/lib/calendar/calendar-footer.component.mjs +3 -3
- package/esm2020/drag-drop/drag-content.directive.mjs +4 -1
- package/esm2020/drag-drop/drag-drop.service.mjs +8 -1
- package/esm2020/drag-drop/drag-handle.directive.mjs +4 -1
- package/esm2020/drag-drop/drag.directive.mjs +12 -1
- package/esm2020/drag-drop/drop-container.directive.mjs +17 -1
- package/esm2020/property/properties.component.mjs +62 -40
- package/esm2020/property/property-item.component.mjs +10 -1
- package/esm2020/time-picker/index.mjs +6 -4
- package/esm2020/time-picker/inner/inner-time-picker.class.mjs +2 -0
- package/esm2020/time-picker/inner/inner-time-picker.component.mjs +237 -0
- package/esm2020/time-picker/inner/inner-time-picker.config.mjs +42 -0
- package/esm2020/time-picker/inner/inner-time-picker.store.mjs +128 -0
- package/esm2020/time-picker/time-picker-controls.util.mjs +1 -1
- package/esm2020/time-picker/time-picker-panel.component.mjs +225 -0
- package/esm2020/time-picker/time-picker.component.mjs +245 -190
- package/esm2020/time-picker/time-picker.module.mjs +18 -8
- package/esm2020/time-picker/time-picker.utils.mjs +1 -1
- package/esm2020/version.mjs +2 -2
- package/esm2020/watermark/config.mjs +5 -10
- package/esm2020/watermark/watermark.directive.mjs +59 -43
- package/fesm2015/ngx-tethys-date-picker.mjs +2 -2
- package/fesm2015/ngx-tethys-date-picker.mjs.map +1 -1
- package/fesm2015/ngx-tethys-drag-drop.mjs +40 -0
- package/fesm2015/ngx-tethys-drag-drop.mjs.map +1 -1
- package/fesm2015/ngx-tethys-property.mjs +70 -39
- package/fesm2015/ngx-tethys-property.mjs.map +1 -1
- package/fesm2015/ngx-tethys-time-picker.mjs +525 -17
- package/fesm2015/ngx-tethys-time-picker.mjs.map +1 -1
- package/fesm2015/ngx-tethys-watermark.mjs +61 -49
- package/fesm2015/ngx-tethys-watermark.mjs.map +1 -1
- package/fesm2015/ngx-tethys.mjs +1 -1
- package/fesm2015/ngx-tethys.mjs.map +1 -1
- package/fesm2020/ngx-tethys-date-picker.mjs +2 -2
- package/fesm2020/ngx-tethys-date-picker.mjs.map +1 -1
- package/fesm2020/ngx-tethys-drag-drop.mjs +40 -0
- package/fesm2020/ngx-tethys-drag-drop.mjs.map +1 -1
- package/fesm2020/ngx-tethys-property.mjs +70 -39
- package/fesm2020/ngx-tethys-property.mjs.map +1 -1
- package/fesm2020/ngx-tethys-time-picker.mjs +524 -17
- package/fesm2020/ngx-tethys-time-picker.mjs.map +1 -1
- package/fesm2020/ngx-tethys-watermark.mjs +62 -51
- package/fesm2020/ngx-tethys-watermark.mjs.map +1 -1
- package/fesm2020/ngx-tethys.mjs +1 -1
- package/fesm2020/ngx-tethys.mjs.map +1 -1
- package/package.json +1 -1
- package/property/properties.component.d.ts +12 -5
- package/property/property-item.component.d.ts +5 -1
- package/property/styles/properties.scss +13 -4
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
- package/styles/index.scss +2 -2
- package/styles/variables.scss +4 -1
- package/tabs/styles/tabs.scss +4 -2
- package/time-picker/index.d.ts +5 -3
- package/time-picker/{time-picker.models.d.ts → inner/inner-time-picker.class.d.ts} +0 -0
- package/time-picker/inner/inner-time-picker.component.d.ts +88 -0
- package/time-picker/{time-picker.config.d.ts → inner/inner-time-picker.config.d.ts} +0 -0
- package/time-picker/{time-picker.store.d.ts → inner/inner-time-picker.store.d.ts} +1 -1
- package/time-picker/styles/index.scss +3 -0
- package/time-picker/{style.scss → styles/inner.scss} +1 -1
- package/time-picker/styles/time-panel.scss +108 -0
- package/time-picker/styles/time-picker.scss +43 -0
- package/time-picker/styles/variables.scss +26 -0
- package/time-picker/time-picker-controls.util.d.ts +1 -1
- package/time-picker/time-picker-panel.component.d.ts +74 -0
- package/time-picker/time-picker.component.d.ts +64 -83
- package/time-picker/time-picker.module.d.ts +12 -3
- package/time-picker/time-picker.utils.d.ts +1 -1
- package/watermark/config.d.ts +4 -9
- package/watermark/styles/watermark.scss +0 -8
- package/watermark/watermark.directive.d.ts +12 -7
- package/drag-drop/examples/with-handle/with-handle.component.scss +0 -7
- package/esm2020/time-picker/time-picker.config.mjs +0 -42
- package/esm2020/time-picker/time-picker.models.mjs +0 -2
- package/esm2020/time-picker/time-picker.store.mjs +0 -128
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [13.2.3](https://github.com/atinc/ngx-tethys/compare/13.2.2...13.2.3) (2022-08-19)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **property:** update property item align-items is baseline #INFR-4285 ([d8d7c22](https://github.com/atinc/ngx-tethys/commit/d8d7c2295d017e15cb3bb1ad8328dff87678bdc0)), closes [#INFR-4285](https://github.com/atinc/ngx-tethys/issues/INFR-4285)
|
|
11
|
+
* **property:** update style, property label aalways top alignment ##INFR-4285 ([005344b](https://github.com/atinc/ngx-tethys/commit/005344b39b145b8870cbc5752f959c0e21b402c6)), closes [#INFR-4285](https://github.com/atinc/ngx-tethys/issues/INFR-4285)
|
|
12
|
+
* **watermark:** adjust the fake-box style #INFR-4287 ([7e4d96e](https://github.com/atinc/ngx-tethys/commit/7e4d96e076a455e2ac9873f6006a20a098929b33)), closes [#INFR-4287](https://github.com/atinc/ngx-tethys/issues/INFR-4287)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **property:** support keep editing #INFR-4275 ([#2091](https://github.com/atinc/ngx-tethys/issues/2091)) ([ceb67a0](https://github.com/atinc/ngx-tethys/commit/ceb67a0564155154be57dc58e923a3f826425831)), closes [#INFR-4275](https://github.com/atinc/ngx-tethys/issues/INFR-4275)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
## [13.2.2](https://github.com/atinc/ngx-tethys/compare/13.2.1...13.2.2) (2022-08-17)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
### Bug Fixes
|
|
25
|
+
|
|
26
|
+
* **collapse:** fix collapse empty box style #INFR-4220 ([1f5a788](https://github.com/atinc/ngx-tethys/commit/1f5a7882aef62b23895c290b35787058f3d7bdce)), closes [#INFR-4220](https://github.com/atinc/ngx-tethys/issues/INFR-4220)
|
|
27
|
+
* **watermark:** adjust the var name & add test #INFO-4106 ([#2085](https://github.com/atinc/ngx-tethys/issues/2085)) ([aa4ad36](https://github.com/atinc/ngx-tethys/commit/aa4ad361337935a23fbf35bf41f516e8f326bada)), closes [#INFO-4106](https://github.com/atinc/ngx-tethys/issues/INFO-4106)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### Features
|
|
31
|
+
|
|
32
|
+
* **tabs:** change padding of tabs content to 16px #INFR-4204 ([#2082](https://github.com/atinc/ngx-tethys/issues/2082)) ([330c1de](https://github.com/atinc/ngx-tethys/commit/330c1deff97b4008e77db9442c2c876f84e9d6f0)), closes [#INFR-4204](https://github.com/atinc/ngx-tethys/issues/INFR-4204)
|
|
33
|
+
* **time-picker:** add new TimePicker #INFR-4147 ([#2087](https://github.com/atinc/ngx-tethys/issues/2087)) ([fa8cc62](https://github.com/atinc/ngx-tethys/commit/fa8cc62f18446ea727a848dc4b76c7222cdf7a53)), closes [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147) [#INFR-4147](https://github.com/atinc/ngx-tethys/issues/INFR-4147)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## [13.2.1](https://github.com/atinc/ngx-tethys/compare/13.2.0...13.2.1) (2022-08-11)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Bug Fixes
|
|
41
|
+
|
|
42
|
+
* **property:** fix property can not dynamic rendering property-item (#INFR-4163) ([8f273a0](https://github.com/atinc/ngx-tethys/commit/8f273a0d4a672d6b39903a6620a3760bdb0c70a8)), closes [#INFR-4163](https://github.com/atinc/ngx-tethys/issues/INFR-4163)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
5
46
|
# [13.2.0](https://github.com/atinc/ngx-tethys/compare/13.2.0-next.6...13.2.0) (2022-08-11)
|
|
6
47
|
|
|
7
48
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ElementRef } from '@angular/core';
|
|
2
2
|
import { ThyDragDirective } from './drag.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* 自定义拖拽时可经过,拖拽结束时可放置的区域内容
|
|
6
|
+
*/
|
|
4
7
|
export declare class ThyDragContentDirective {
|
|
5
8
|
element: ElementRef<HTMLElement>;
|
|
6
9
|
contentClass: boolean;
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { ThyDragDirective } from './drag.directive';
|
|
2
2
|
import { ThyDropPosition } from './drag-drop.class';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* 自定义可放置区域内容
|
|
6
|
+
*/
|
|
4
7
|
export declare class ThyDragDropService<T = any> {
|
|
8
|
+
/**
|
|
9
|
+
* 当前拖拽项,dragEnd 后重置为 undefined
|
|
10
|
+
*/
|
|
5
11
|
previousDrag: ThyDragDirective<T>;
|
|
12
|
+
/**
|
|
13
|
+
* 拖拽的时候,针对 dragOver 的节点有三种情况,即拖拽到节点之上 before ,拖拽到节点上 in ,拖拽到节点之下 after
|
|
14
|
+
* @type ThyDropPosition
|
|
15
|
+
*/
|
|
6
16
|
dropPosition: ThyDropPosition;
|
|
17
|
+
/**
|
|
18
|
+
* 用于拖动过程对 dragover 的元素设置相应的样式
|
|
19
|
+
* @type Map<Element, string>
|
|
20
|
+
*/
|
|
7
21
|
classMap: Map<Element, string>;
|
|
8
22
|
constructor();
|
|
9
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<ThyDragDropService<any>, never>;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ElementRef } from '@angular/core';
|
|
2
2
|
import { ThyDragDirective } from './drag.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* 自定义可拖拽区域内容
|
|
6
|
+
*/
|
|
4
7
|
export declare class ThyDragHandleDirective {
|
|
5
8
|
element: ElementRef<HTMLElement>;
|
|
6
9
|
private _disabled;
|
|
@@ -5,13 +5,28 @@ import { MixinBase, Constructor, ThyUnsubscribe } from 'ngx-tethys/core';
|
|
|
5
5
|
import { IThyDropContainerDirective } from './drop-container.class';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
declare const _MixinBase: Constructor<ThyUnsubscribe> & typeof MixinBase;
|
|
8
|
+
/**
|
|
9
|
+
* 拖拽项
|
|
10
|
+
*/
|
|
8
11
|
export declare class ThyDragDirective<T = any> extends _MixinBase implements OnDestroy {
|
|
9
12
|
container: IThyDropContainerDirective;
|
|
10
13
|
private elementRef;
|
|
14
|
+
/**
|
|
15
|
+
* 元数据
|
|
16
|
+
* @type any
|
|
17
|
+
*/
|
|
11
18
|
set dragData(data: T);
|
|
19
|
+
/**
|
|
20
|
+
* 元数据
|
|
21
|
+
* @type any
|
|
22
|
+
*/
|
|
12
23
|
data: T;
|
|
13
24
|
isDraggable: boolean;
|
|
14
25
|
private _disabled;
|
|
26
|
+
/**
|
|
27
|
+
* 是否禁用拖拽
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
15
30
|
set disabled(isDisabled: boolean);
|
|
16
31
|
get disabled(): boolean;
|
|
17
32
|
dragRef: DragRef<T>;
|
|
@@ -7,16 +7,52 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
declare const _MixinBase: Constructor<ThyUnsubscribe> & typeof MixinBase;
|
|
8
8
|
export declare class ThyDropContainerDirective<T = any> extends _MixinBase implements OnInit, AfterContentInit, IThyDropContainerDirective {
|
|
9
9
|
private ngZone;
|
|
10
|
+
/**
|
|
11
|
+
* 元数据
|
|
12
|
+
* @type any[]
|
|
13
|
+
*/
|
|
10
14
|
set dragContainer(data: T[]);
|
|
15
|
+
/**
|
|
16
|
+
* 元数据
|
|
17
|
+
* @type any[]
|
|
18
|
+
*/
|
|
11
19
|
data: T[];
|
|
20
|
+
/**
|
|
21
|
+
* 是否禁用拖拽
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
12
24
|
disabled: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* 拖拽之前的回调,函数返回 false 则阻止拖拽
|
|
27
|
+
*/
|
|
13
28
|
beforeStart: (e: ThyDragStartEvent<T>) => boolean;
|
|
29
|
+
/**
|
|
30
|
+
* 拖拽时回调,函数返回 false 则阻止移入
|
|
31
|
+
*/
|
|
14
32
|
beforeOver: (e: ThyDragOverEvent<T>) => boolean;
|
|
33
|
+
/**
|
|
34
|
+
* 拖放到元素时回调,函数返回 false 则阻止放置
|
|
35
|
+
*/
|
|
15
36
|
beforeDrop: (e: ThyDragDropEvent<T>) => boolean;
|
|
37
|
+
/**
|
|
38
|
+
* 开始拖拽时调用
|
|
39
|
+
*/
|
|
16
40
|
started: EventEmitter<ThyDragStartEvent<ThyDragDirective<any>>>;
|
|
41
|
+
/**
|
|
42
|
+
* dragend 触发时调用
|
|
43
|
+
*/
|
|
17
44
|
ended: EventEmitter<ThyDragEndEvent<ThyDragDirective<any>>>;
|
|
45
|
+
/**
|
|
46
|
+
* dragover 触发时调用
|
|
47
|
+
*/
|
|
18
48
|
overed: EventEmitter<ThyDragOverEvent<ThyDragDirective<any>>>;
|
|
49
|
+
/**
|
|
50
|
+
* drop 触发时调用
|
|
51
|
+
*/
|
|
19
52
|
dropped: EventEmitter<ThyDragDropEvent<ThyDragDirective<any>>>;
|
|
53
|
+
/**
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
20
56
|
draggables: QueryList<ThyDragDirective>;
|
|
21
57
|
constructor(ngZone: NgZone);
|
|
22
58
|
ngOnInit(): void;
|
package/drag-drop/examples/{basic/basic.component.scss → tree-drag/tree-drag.component.scss}
RENAMED
|
File without changes
|
|
@@ -59,10 +59,10 @@ export class CalendarFooterComponent {
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
CalendarFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: CalendarFooterComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
62
|
-
CalendarFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.6", type: CalendarFooterComponent, selector: "calendar-footer", inputs: { showTime: "showTime", mustShowTime: "mustShowTime", value: "value" }, outputs: { selectTime: "selectTime", clickOk: "clickOk", clickRemove: "clickRemove", showTimePickerChange: "showTimePickerChange" }, exportAs: ["calendarFooter"], ngImport: i0, template: "<div *ngIf=\"isShowTime || isCanTime\" class=\"time-picker-section\" (click)=\"$event.stopPropagation()\">\n <a
|
|
62
|
+
CalendarFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.6", type: CalendarFooterComponent, selector: "calendar-footer", inputs: { showTime: "showTime", mustShowTime: "mustShowTime", value: "value" }, outputs: { selectTime: "selectTime", clickOk: "clickOk", clickRemove: "clickRemove", showTimePickerChange: "showTimePickerChange" }, exportAs: ["calendarFooter"], ngImport: i0, template: "<div *ngIf=\"isShowTime || isCanTime\" class=\"time-picker-section\" (click)=\"$event.stopPropagation()\">\n <a href=\"javascript:;\" *ngIf=\"isCanTime\" class=\"link-has-icon time-picker-set-btn\" (click)=\"changeTimeShowMode('show')\">\n <thy-icon thyIconName=\"clock-circle\"></thy-icon>\u8BBE\u7F6E\u65F6\u95F4\n </a>\n <thy-inner-time-picker\n *ngIf=\"isShowTime\"\n class=\"time-picker-wrap\"\n [showMeridian]=\"false\"\n [ngModel]=\"value?.nativeDate\"\n (ngModelChange)=\"onSelectTime($event)\"\n ></thy-inner-time-picker>\n <div class=\"time-picker-btn-wrap\">\n <button *ngIf=\"!isCanTime\" class=\"time-picker-ok-btn\" thyButton=\"primary\" thySize=\"sm\" (click)=\"onTimeOk()\">\n \u786E\u5B9A\n </button>\n <button class=\"time-picker-clear-btn\" thyButton=\"link-secondary\" thySize=\"sm\" (click)=\"onClear()\">\n \u6E05\u9664\n </button>\n </div>\n</div>\n", components: [{ type: i1.ThyIconComponent, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i2.ThyInnerTimePickerComponent, selector: "thy-inner-time-picker", inputs: ["hourStep", "minuteStep", "secondsStep", "readonlyInput", "disabled", "mousewheel", "arrowKeys", "showSpinners", "showMeridian", "showMinutes", "showSeconds", "meridians", "min", "max", "hoursPlaceholder", "minutesPlaceholder", "secondsPlaceholder"], outputs: ["isValid"] }, { type: i3.ThyButtonComponent, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
63
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: CalendarFooterComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'calendar-footer', exportAs: 'calendarFooter', template: "<div *ngIf=\"isShowTime || isCanTime\" class=\"time-picker-section\" (click)=\"$event.stopPropagation()\">\n <a
|
|
65
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'calendar-footer', exportAs: 'calendarFooter', template: "<div *ngIf=\"isShowTime || isCanTime\" class=\"time-picker-section\" (click)=\"$event.stopPropagation()\">\n <a href=\"javascript:;\" *ngIf=\"isCanTime\" class=\"link-has-icon time-picker-set-btn\" (click)=\"changeTimeShowMode('show')\">\n <thy-icon thyIconName=\"clock-circle\"></thy-icon>\u8BBE\u7F6E\u65F6\u95F4\n </a>\n <thy-inner-time-picker\n *ngIf=\"isShowTime\"\n class=\"time-picker-wrap\"\n [showMeridian]=\"false\"\n [ngModel]=\"value?.nativeDate\"\n (ngModelChange)=\"onSelectTime($event)\"\n ></thy-inner-time-picker>\n <div class=\"time-picker-btn-wrap\">\n <button *ngIf=\"!isCanTime\" class=\"time-picker-ok-btn\" thyButton=\"primary\" thySize=\"sm\" (click)=\"onTimeOk()\">\n \u786E\u5B9A\n </button>\n <button class=\"time-picker-clear-btn\" thyButton=\"link-secondary\" thySize=\"sm\" (click)=\"onClear()\">\n \u6E05\u9664\n </button>\n </div>\n</div>\n" }]
|
|
66
66
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }]; }, propDecorators: { showTime: [{
|
|
67
67
|
type: Input
|
|
68
68
|
}], mustShowTime: [{
|
|
@@ -78,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
78
78
|
}], showTimePickerChange: [{
|
|
79
79
|
type: Output
|
|
80
80
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9saWIvY2FsZW5kYXIvY2FsZW5kYXItZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9saWIvY2FsZW5kYXIvY2FsZW5kYXItZm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFVBQVUsRUFDVixTQUFTLEVBQ1QsZ0JBQWdCLEVBRW5CLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVMzQyxNQUFNLE9BQU8sdUJBQXVCO0lBVWhDLFlBQVksV0FBdUIsRUFBRSxTQUFvQixFQUFFLGlCQUFtQztRQVRyRixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRVgsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFDMUMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZDLHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDdEUsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixjQUFTLEdBQUcsS0FBSyxDQUFDO0lBQytFLENBQUM7SUFFbEcsUUFBUTtRQUNKLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1NBQy9CO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFVO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQVk7UUFDM0IsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUs7Z0JBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUN4QixNQUFNO1lBQ1YsS0FBSyxNQUFNO2dCQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDdkIsTUFBTTtTQUNiO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVPLGlCQUFpQjtRQUNyQixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ25DO2FBQU07WUFDSCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2xDO1NBQ0o7SUFDTCxDQUFDOztvSEF2RFEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsMFNDckJwQyx3NUJBb0JBOzJGRENhLHVCQUF1QjtrQkFQbkMsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBRXJDLGlCQUFpQixZQUNqQixnQkFBZ0I7d0pBSWpCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ2EsVUFBVTtzQkFBNUIsTUFBTTtnQkFDWSxPQUFPO3NCQUF6QixNQUFNO2dCQUNZLFdBQVc7c0JBQTdCLE1BQU07Z0JBQ1ksb0JBQW9CO3NCQUF0QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBFbGVtZW50UmVmLFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVGlueURhdGUgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnY2FsZW5kYXItZm9vdGVyJyxcbiAgICBleHBvcnRBczogJ2NhbGVuZGFyRm9vdGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2NhbGVuZGFyLWZvb3Rlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJGb290ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHNob3dUaW1lID0gZmFsc2U7XG4gICAgQElucHV0KCkgbXVzdFNob3dUaW1lID0gZmFsc2U7XG4gICAgQElucHV0KCkgdmFsdWU6IFRpbnlEYXRlO1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3RUaW1lID0gbmV3IEV2ZW50RW1pdHRlcjxUaW55RGF0ZT4oKTtcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgY2xpY2tPayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgY2xpY2tSZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHNob3dUaW1lUGlja2VyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICAgIGlzU2hvd1RpbWUgPSBmYWxzZTtcbiAgICBpc0NhblRpbWUgPSBmYWxzZTtcbiAgICBjb25zdHJ1Y3RvcihfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuX2luaXRUaW1lU2hvd01vZGUoKTtcbiAgICAgICAgaWYgKCF0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gbmV3IFRpbnlEYXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNlbGVjdFRpbWUoZGF0ZTogRGF0ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUuZW1pdChuZXcgVGlueURhdGUoZGF0ZSkpO1xuICAgIH1cblxuICAgIG9uVGltZU9rKCkge1xuICAgICAgICB0aGlzLnNlbGVjdFRpbWUuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy5jbGlja09rLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvbkNsZWFyKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICAgICAgdGhpcy5jbGlja1JlbW92ZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgY2hhbmdlVGltZVNob3dNb2RlKHR5cGU6IHN0cmluZykge1xuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2Nhbic6XG4gICAgICAgICAgICAgICAgdGhpcy5pc0NhblRpbWUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNTaG93VGltZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnc2hvdyc6XG4gICAgICAgICAgICAgICAgdGhpcy5pc0NhblRpbWUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzU2hvd1RpbWUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2hvd1RpbWVQaWNrZXJDaGFuZ2UuZW1pdCh0aGlzLmlzU2hvd1RpbWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2luaXRUaW1lU2hvd01vZGUoKSB7XG4gICAgICAgIGlmICh0aGlzLm11c3RTaG93VGltZSkge1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VUaW1lU2hvd01vZGUoJ3Nob3cnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnNob3dUaW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VUaW1lU2hvd01vZGUoJ2NhbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImlzU2hvd1RpbWUgfHwgaXNDYW5UaW1lXCIgY2xhc3M9XCJ0aW1lLXBpY2tlci1zZWN0aW9uXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICA8YSBocmVmPVwiamF2YXNjcmlwdDo7XCIgKm5nSWY9XCJpc0NhblRpbWVcIiBjbGFzcz1cImxpbmstaGFzLWljb24gdGltZS1waWNrZXItc2V0LWJ0blwiIChjbGljayk9XCJjaGFuZ2VUaW1lU2hvd01vZGUoJ3Nob3cnKVwiPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cImNsb2NrLWNpcmNsZVwiPjwvdGh5LWljb24+6K6+572u5pe26Ze0XG4gIDwvYT5cbiAgPHRoeS1pbm5lci10aW1lLXBpY2tlclxuICAgICpuZ0lmPVwiaXNTaG93VGltZVwiXG4gICAgY2xhc3M9XCJ0aW1lLXBpY2tlci13cmFwXCJcbiAgICBbc2hvd01lcmlkaWFuXT1cImZhbHNlXCJcbiAgICBbbmdNb2RlbF09XCJ2YWx1ZT8ubmF0aXZlRGF0ZVwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWxlY3RUaW1lKCRldmVudClcIlxuICA+PC90aHktaW5uZXItdGltZS1waWNrZXI+XG4gIDxkaXYgY2xhc3M9XCJ0aW1lLXBpY2tlci1idG4td3JhcFwiPlxuICAgIDxidXR0b24gKm5nSWY9XCIhaXNDYW5UaW1lXCIgY2xhc3M9XCJ0aW1lLXBpY2tlci1vay1idG5cIiB0aHlCdXR0b249XCJwcmltYXJ5XCIgdGh5U2l6ZT1cInNtXCIgKGNsaWNrKT1cIm9uVGltZU9rKClcIj5cbiAgICAgIOehruWumlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJ0aW1lLXBpY2tlci1jbGVhci1idG5cIiB0aHlCdXR0b249XCJsaW5rLXNlY29uZGFyeVwiIHRoeVNpemU9XCJzbVwiIChjbGljayk9XCJvbkNsZWFyKClcIj5cbiAgICAgIOa4hemZpFxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -2,6 +2,9 @@ import { Directive, ElementRef, HostBinding, Optional } from '@angular/core';
|
|
|
2
2
|
import { ThyDragDirective } from './drag.directive';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "./drag.directive";
|
|
5
|
+
/**
|
|
6
|
+
* 自定义拖拽时可经过,拖拽结束时可放置的区域内容
|
|
7
|
+
*/
|
|
5
8
|
export class ThyDragContentDirective {
|
|
6
9
|
constructor(element, drag) {
|
|
7
10
|
this.element = element;
|
|
@@ -24,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
24
27
|
type: HostBinding,
|
|
25
28
|
args: ['class.thy-drag-content']
|
|
26
29
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kcmFnLWRyb3AvZHJhZy1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBUyxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFFcEQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sdUJBQXVCO0lBR2hDLFlBQW1CLE9BQWdDLEVBQWMsSUFBc0I7UUFBcEUsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFGWixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUd2RCxJQUFJLElBQUksRUFBRTtZQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ2pEO0lBQ0wsQ0FBQzs7b0hBUFEsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUNBQW1DO2lCQUNoRDs7MEJBSXlELFFBQVE7NENBRnZCLFlBQVk7c0JBQWxELFdBQVc7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgSG9zdEJpbmRpbmcsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlEcmFnRGlyZWN0aXZlIH0gZnJvbSAnLi9kcmFnLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICog6Ieq5a6a5LmJ5ouW5ou95pe25Y+v57uP6L+H77yM5ouW5ou957uT5p2f5pe25Y+v5pS+572u55qE5Yy65Z+f5YaF5a65XG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndGh5LWRyYWctY29udGVudCxbdGh5RHJhZ0NvbnRlbnRdJ1xufSlcbmV4cG9ydCBjbGFzcyBUaHlEcmFnQ29udGVudERpcmVjdGl2ZSB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy50aHktZHJhZy1jb250ZW50JykgY29udGVudENsYXNzID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgQE9wdGlvbmFsKCkgZHJhZzogVGh5RHJhZ0RpcmVjdGl2ZSkge1xuICAgICAgICBpZiAoZHJhZykge1xuICAgICAgICAgICAgZHJhZy5kcmFnUmVmLndpdGhDb250ZW50RWxlbWVudCh0aGlzLmVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* 自定义可放置区域内容
|
|
5
|
+
*/
|
|
3
6
|
export class ThyDragDropService {
|
|
4
7
|
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* 用于拖动过程对 dragover 的元素设置相应的样式
|
|
10
|
+
* @type Map<Element, string>
|
|
11
|
+
*/
|
|
5
12
|
this.classMap = new Map();
|
|
6
13
|
}
|
|
7
14
|
}
|
|
@@ -11,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
11
18
|
type: Injectable,
|
|
12
19
|
args: [{ providedIn: 'root' }]
|
|
13
20
|
}], ctorParameters: function () { return []; } });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZHJhZy1kcm9wL2RyYWctZHJvcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGtCQUFrQjtJQWlCM0I7UUFMQTs7O1dBR0c7UUFDSSxhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7SUFDOUIsQ0FBQzs7K0dBakJQLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBREwsTUFBTTsyRkFDbkIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeURyYWdEaXJlY3RpdmUgfSBmcm9tICcuL2RyYWcuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRoeURyb3BQb3NpdGlvbiB9IGZyb20gJy4vZHJhZy1kcm9wLmNsYXNzJztcblxuLyoqXG4gKiDoh6rlrprkuYnlj6/mlL7nva7ljLrln5/lhoXlrrlcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUaHlEcmFnRHJvcFNlcnZpY2U8VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIOW9k+WJjeaLluaLvemhue+8jGRyYWdFbmQg5ZCO6YeN572u5Li6IHVuZGVmaW5lZFxuICAgICAqL1xuICAgIHB1YmxpYyBwcmV2aW91c0RyYWc6IFRoeURyYWdEaXJlY3RpdmU8VD47XG5cbiAgICAvKipcbiAgICAgKiDmi5bmi73nmoTml7blgJnvvIzpkojlr7kgZHJhZ092ZXIg55qE6IqC54K55pyJ5LiJ56eN5oOF5Ya177yM5Y2z5ouW5ou95Yiw6IqC54K55LmL5LiKIGJlZm9yZSDvvIzmi5bmi73liLDoioLngrnkuIogaW4g77yM5ouW5ou95Yiw6IqC54K55LmL5LiLIGFmdGVyXG4gICAgICogQHR5cGUgVGh5RHJvcFBvc2l0aW9uXG4gICAgICovXG4gICAgcHVibGljIGRyb3BQb3NpdGlvbjogVGh5RHJvcFBvc2l0aW9uO1xuXG4gICAgLyoqXG4gICAgICog55So5LqO5ouW5Yqo6L+H56iL5a+5IGRyYWdvdmVyIOeahOWFg+e0oOiuvue9ruebuOW6lOeahOagt+W8j1xuICAgICAqIEB0eXBlIE1hcDxFbGVtZW50LCBzdHJpbmc+XG4gICAgICovXG4gICAgcHVibGljIGNsYXNzTWFwID0gbmV3IE1hcDxFbGVtZW50LCBzdHJpbmc+KCk7XG4gICAgY29uc3RydWN0b3IoKSB7fVxufVxuIl19
|
|
@@ -3,6 +3,9 @@ import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
|
3
3
|
import { ThyDragDirective } from './drag.directive';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "./drag.directive";
|
|
6
|
+
/**
|
|
7
|
+
* 自定义可拖拽区域内容
|
|
8
|
+
*/
|
|
6
9
|
export class ThyDragHandleDirective {
|
|
7
10
|
constructor(element, drag) {
|
|
8
11
|
this.element = element;
|
|
@@ -31,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
31
34
|
type: Input,
|
|
32
35
|
args: ['thyDisabled']
|
|
33
36
|
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1oYW5kbGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RyYWctZHJvcC9kcmFnLWhhbmRsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBRXBEOztHQUVHO0FBSUgsTUFBTSxPQUFPLHNCQUFzQjtJQVcvQixZQUFtQixPQUFnQyxFQUFjLElBQXNCO1FBQXBFLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBVjNDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFXdEIsSUFBSSxJQUFJLEVBQUU7WUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFaRCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRCxDQUFDOzttSEFUUSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQ0FBaUM7aUJBQzlDOzswQkFZeUQsUUFBUTs0Q0FQMUQsUUFBUTtzQkFEWCxLQUFLO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IFRoeURyYWdEaXJlY3RpdmUgfSBmcm9tICcuL2RyYWcuZGlyZWN0aXZlJztcblxuLyoqXG4gKiDoh6rlrprkuYnlj6/mi5bmi73ljLrln5/lhoXlrrlcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICd0aHktZHJhZy1oYW5kbGUsW3RoeURyYWdIYW5kbGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBUaHlEcmFnSGFuZGxlRGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KCd0aHlEaXNhYmxlZCcpXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuICAgIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LCBAT3B0aW9uYWwoKSBkcmFnOiBUaHlEcmFnRGlyZWN0aXZlKSB7XG4gICAgICAgIGlmIChkcmFnKSB7XG4gICAgICAgICAgICBkcmFnLmRyYWdSZWYud2l0aEhhbmRsZXModGhpcyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -8,6 +8,9 @@ import { THY_DROP_CONTAINER_DIRECTIVE } from './drop-container.class';
|
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "./drag-drop.service";
|
|
10
10
|
const _MixinBase = mixinUnsubscribe(MixinBase);
|
|
11
|
+
/**
|
|
12
|
+
* 拖拽项
|
|
13
|
+
*/
|
|
11
14
|
export class ThyDragDirective extends _MixinBase {
|
|
12
15
|
constructor(document, container, ngZone, elementRef, service, renderer) {
|
|
13
16
|
super();
|
|
@@ -17,9 +20,17 @@ export class ThyDragDirective extends _MixinBase {
|
|
|
17
20
|
this._disabled = false;
|
|
18
21
|
this.dragRef = new DragRef(elementRef, this, container, service, document, ngZone, renderer);
|
|
19
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* 元数据
|
|
25
|
+
* @type any
|
|
26
|
+
*/
|
|
20
27
|
set dragData(data) {
|
|
21
28
|
this.data = data;
|
|
22
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* 是否禁用拖拽
|
|
32
|
+
* @default false
|
|
33
|
+
*/
|
|
23
34
|
set disabled(isDisabled) {
|
|
24
35
|
this._disabled = isDisabled;
|
|
25
36
|
this.isDraggable = !isDisabled;
|
|
@@ -63,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
63
74
|
type: Input,
|
|
64
75
|
args: ['thyDragDisabled']
|
|
65
76
|
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZHJhZy1kcm9wL2RyYWcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUErQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RyxPQUFPLEVBQUUsNEJBQTRCLEVBQThCLE1BQU0sd0JBQXdCLENBQUM7OztBQUVsRyxNQUFNLFVBQVUsR0FBbUQsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFL0Y7O0dBRUc7QUFFSCxNQUFNLE9BQU8sZ0JBQTBCLFNBQVEsVUFBVTtJQW9DckQsWUFDc0IsUUFBYSxFQUMwQixTQUFxQyxFQUM5RixNQUFjLEVBQ04sVUFBbUMsRUFDM0MsT0FBOEIsRUFDOUIsUUFBbUI7UUFFbkIsS0FBSyxFQUFFLENBQUM7UUFOaUQsY0FBUyxHQUFULFNBQVMsQ0FBNEI7UUFFdEYsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUF4QmhCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBRTFDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUEyQnRCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUksVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQTdDRDs7O09BR0c7SUFDSCxJQUNJLFFBQVEsQ0FBQyxJQUFPO1FBQ2hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFZRDs7O09BR0c7SUFHSCxJQUFJLFFBQVEsQ0FBQyxVQUFtQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQ25DLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQWdCRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7NkdBbkRRLGdCQUFnQixrQkFxQ2IsUUFBUSxhQUNJLDRCQUE0QjtpR0F0QzNDLGdCQUFnQjtBQTBCekI7SUFEQyxZQUFZLEVBQUU7OztnREFJZDsyRkE3QlEsZ0JBQWdCO2tCQUQ1QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFOzswQkFzQ3BDLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyw0QkFBNEI7bUpBaENoRCxRQUFRO3NCQURYLEtBQUs7dUJBQUMsU0FBUztnQkFTTSxJQUFJO3NCQUF6QixLQUFLO3VCQUFDLGFBQWE7Z0JBRVcsV0FBVztzQkFBekMsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBVXpCLFFBQVE7c0JBRlgsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE5nWm9uZSwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBJbmplY3QsIE9uRGVzdHJveSwgT3B0aW9uYWwsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHJhZ1JlZiB9IGZyb20gJy4vZHJhZy1yZWYnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGh5RHJhZ0Ryb3BTZXJ2aWNlIH0gZnJvbSAnLi9kcmFnLWRyb3Auc2VydmljZSc7XG5pbXBvcnQgeyBtaXhpblVuc3Vic2NyaWJlLCBNaXhpbkJhc2UsIENvbnN0cnVjdG9yLCBUaHlVbnN1YnNjcmliZSwgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcbmltcG9ydCB7IFRIWV9EUk9QX0NPTlRBSU5FUl9ESVJFQ1RJVkUsIElUaHlEcm9wQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wLWNvbnRhaW5lci5jbGFzcyc7XG5cbmNvbnN0IF9NaXhpbkJhc2U6IENvbnN0cnVjdG9yPFRoeVVuc3Vic2NyaWJlPiAmIHR5cGVvZiBNaXhpbkJhc2UgPSBtaXhpblVuc3Vic2NyaWJlKE1peGluQmFzZSk7XG5cbi8qKlxuICog5ouW5ou96aG5XG4gKi9cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ3RoeS1kcmFnLFt0aHlEcmFnXScgfSlcbmV4cG9ydCBjbGFzcyBUaHlEcmFnRGlyZWN0aXZlPFQgPSBhbnk+IGV4dGVuZHMgX01peGluQmFzZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICog5YWD5pWw5o2uXG4gICAgICogQHR5cGUgYW55XG4gICAgICovXG4gICAgQElucHV0KCd0aHlEcmFnJylcbiAgICBzZXQgZHJhZ0RhdGEoZGF0YTogVCkge1xuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOWFg+aVsOaNrlxuICAgICAqIEB0eXBlIGFueVxuICAgICAqL1xuICAgIEBJbnB1dCgndGh5RHJhZ0RhdGEnKSBkYXRhOiBUO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRyYWdnYWJsZScpIGlzRHJhZ2dhYmxlID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbnpoHnlKjmi5bmi71cbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgndGh5RHJhZ0Rpc2FibGVkJylcbiAgICBASW5wdXRCb29sZWFuKClcbiAgICBzZXQgZGlzYWJsZWQoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgICAgIHRoaXMuaXNEcmFnZ2FibGUgPSAhaXNEaXNhYmxlZDtcbiAgICB9XG4gICAgZ2V0IGRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGRyYWdSZWY6IERyYWdSZWY8VD47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IGFueSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChUSFlfRFJPUF9DT05UQUlORVJfRElSRUNUSVZFKSBwdWJsaWMgY29udGFpbmVyOiBJVGh5RHJvcENvbnRhaW5lckRpcmVjdGl2ZSxcbiAgICAgICAgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHNlcnZpY2U6IFRoeURyYWdEcm9wU2VydmljZTxUPixcbiAgICAgICAgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRyYWdSZWYgPSBuZXcgRHJhZ1JlZjxUPihlbGVtZW50UmVmLCB0aGlzLCBjb250YWluZXIsIHNlcnZpY2UsIGRvY3VtZW50LCBuZ1pvbmUsIHJlbmRlcmVyKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5kcmFnUmVmLmRpc3Bvc2UoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -10,11 +10,27 @@ export class ThyDropContainerDirective extends _MixinBase {
|
|
|
10
10
|
constructor(ngZone) {
|
|
11
11
|
super();
|
|
12
12
|
this.ngZone = ngZone;
|
|
13
|
+
/**
|
|
14
|
+
* 开始拖拽时调用
|
|
15
|
+
*/
|
|
13
16
|
this.started = new EventEmitter();
|
|
17
|
+
/**
|
|
18
|
+
* dragend 触发时调用
|
|
19
|
+
*/
|
|
14
20
|
this.ended = new EventEmitter();
|
|
21
|
+
/**
|
|
22
|
+
* dragover 触发时调用
|
|
23
|
+
*/
|
|
15
24
|
this.overed = new EventEmitter();
|
|
25
|
+
/**
|
|
26
|
+
* drop 触发时调用
|
|
27
|
+
*/
|
|
16
28
|
this.dropped = new EventEmitter();
|
|
17
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* 元数据
|
|
32
|
+
* @type any[]
|
|
33
|
+
*/
|
|
18
34
|
set dragContainer(data) {
|
|
19
35
|
this.data = data;
|
|
20
36
|
}
|
|
@@ -101,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
101
117
|
descendants: false
|
|
102
118
|
}]
|
|
103
119
|
}] } });
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcC1jb250YWluZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RyYWctZHJvcC9kcm9wLWNvbnRhaW5lci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQW9CLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckksT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBYyxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBK0IsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRixPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLDRCQUE0QixFQUE4QixNQUFNLHdCQUF3QixDQUFDOztBQUVsRyxNQUFNLFVBQVUsR0FBbUQsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFXL0YsTUFBTSxPQUFPLHlCQUFtQyxTQUFRLFVBQVU7SUFpRTlELFlBQW9CLE1BQWM7UUFDOUIsS0FBSyxFQUFFLENBQUM7UUFEUSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBNUJsQzs7V0FFRztRQUN1QixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQXVDLENBQUM7UUFFNUY7O1dBRUc7UUFDcUIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFxQyxDQUFDO1FBRXRGOztXQUVHO1FBQ3NCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBc0MsQ0FBQztRQUV6Rjs7V0FFRztRQUN1QixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQXNDLENBQUM7SUFZM0YsQ0FBQztJQWxFRDs7O09BR0c7SUFD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O2dCQVNNLElBQUk7c0JBQWxDLEtBQUs7dUJBQUMsc0JBQXNCO2dCQU1NLFFBQVE7c0JBQTFDLEtBQUs7dUJBQUMsMEJBQTBCO2dCQUtKLFdBQVc7c0JBQXZDLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUtDLFVBQVU7c0JBQXJDLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUtFLFVBQVU7c0JBQXJDLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUtBLE9BQU87c0JBQWhDLE1BQU07dUJBQUMsZ0JBQWdCO2dCQUtBLEtBQUs7c0JBQTVCLE1BQU07dUJBQUMsY0FBYztnQkFLRyxNQUFNO3NCQUE5QixNQUFNO3VCQUFDLGVBQWU7Z0JBS0csT0FBTztzQkFBaEMsTUFBTTt1QkFBQyxnQkFBZ0I7Z0JBUXhCLFVBQVU7c0JBSFQsZUFBZTt1QkFBQyxnQkFBZ0IsRUFBRTt3QkFDL0IsV0FBVyxFQUFFLEtBQUs7cUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT25Jbml0LCBEaXJlY3RpdmUsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBDb250ZW50Q2hpbGRyZW4sIFF1ZXJ5TGlzdCwgQWZ0ZXJDb250ZW50SW5pdCwgTmdab25lLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5RHJhZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZHJhZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgbWVyZ2UsIE9ic2VydmFibGUsIGRlZmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtaXhpblVuc3Vic2NyaWJlLCBNaXhpbkJhc2UsIENvbnN0cnVjdG9yLCBUaHlVbnN1YnNjcmliZSB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHN0YXJ0V2l0aCwgdGFrZSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGh5RHJhZ0Ryb3BFdmVudCwgVGh5RHJhZ1N0YXJ0RXZlbnQsIFRoeURyYWdFbmRFdmVudCwgVGh5RHJhZ092ZXJFdmVudCB9IGZyb20gJy4vZHJhZy1kcm9wLmNsYXNzJztcbmltcG9ydCB7IFRIWV9EUk9QX0NPTlRBSU5FUl9ESVJFQ1RJVkUsIElUaHlEcm9wQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kcm9wLWNvbnRhaW5lci5jbGFzcyc7XG5cbmNvbnN0IF9NaXhpbkJhc2U6IENvbnN0cnVjdG9yPFRoeVVuc3Vic2NyaWJlPiAmIHR5cGVvZiBNaXhpbkJhc2UgPSBtaXhpblVuc3Vic2NyaWJlKE1peGluQmFzZSk7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndGh5LWRyb3AtY29udGFpbmVyLFt0aHlEcm9wQ29udGFpbmVyXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRIWV9EUk9QX0NPTlRBSU5FUl9ESVJFQ1RJVkUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogVGh5RHJvcENvbnRhaW5lckRpcmVjdGl2ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlEcm9wQ29udGFpbmVyRGlyZWN0aXZlPFQgPSBhbnk+IGV4dGVuZHMgX01peGluQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgSVRoeURyb3BDb250YWluZXJEaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIOWFg+aVsOaNrlxuICAgICAqIEB0eXBlIGFueVtdXG4gICAgICovXG4gICAgQElucHV0KCd0aHlEcm9wQ29udGFpbmVyJylcbiAgICBzZXQgZHJhZ0NvbnRhaW5lcihkYXRhOiBUW10pIHtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlhYPmlbDmja5cbiAgICAgKiBAdHlwZSBhbnlbXVxuICAgICAqL1xuICAgIEBJbnB1dCgndGh5RHJvcENvbnRhaW5lckRhdGEnKSBkYXRhOiBUW107XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbnpoHnlKjmi5bmi71cbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgndGh5RHJvcENvbnRhaW5lckRpc2FibGVkJykgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDmi5bmi73kuYvliY3nmoTlm57osIPvvIzlh73mlbDov5Tlm54gZmFsc2Ug5YiZ6Zi75q2i5ouW5ou9XG4gICAgICovXG4gICAgQElucHV0KCd0aHlCZWZvcmVEcmFnU3RhcnQnKSBiZWZvcmVTdGFydDogKGU6IFRoeURyYWdTdGFydEV2ZW50PFQ+KSA9PiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog5ouW5ou95pe25Zue6LCD77yM5Ye95pWw6L+U5ZueIGZhbHNlIOWImemYu+atouenu+WFpVxuICAgICAqL1xuICAgIEBJbnB1dCgndGh5QmVmb3JlRHJhZ092ZXInKSBiZWZvcmVPdmVyOiAoZTogVGh5RHJhZ092ZXJFdmVudDxUPikgPT4gYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOaLluaUvuWIsOWFg+e0oOaXtuWbnuiwg++8jOWHveaVsOi/lOWbniBmYWxzZSDliJnpmLvmraLmlL7nva5cbiAgICAgKi9cbiAgICBASW5wdXQoJ3RoeUJlZm9yZURyYWdEcm9wJykgYmVmb3JlRHJvcDogKGU6IFRoeURyYWdEcm9wRXZlbnQ8VD4pID0+IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDlvIDlp4vmi5bmi73ml7bosIPnlKhcbiAgICAgKi9cbiAgICBAT3V0cHV0KCd0aHlEcmFnU3RhcnRlZCcpIHN0YXJ0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFRoeURyYWdTdGFydEV2ZW50PFRoeURyYWdEaXJlY3RpdmU+PigpO1xuXG4gICAgLyoqXG4gICAgICogZHJhZ2VuZCDop6blj5Hml7bosIPnlKhcbiAgICAgKi9cbiAgICBAT3V0cHV0KCd0aHlEcmFnRW5kZWQnKSBlbmRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VGh5RHJhZ0VuZEV2ZW50PFRoeURyYWdEaXJlY3RpdmU+PigpO1xuXG4gICAgLyoqXG4gICAgICogZHJhZ292ZXIg6Kem5Y+R5pe26LCD55SoXG4gICAgICovXG4gICAgQE91dHB1dCgndGh5RHJhZ092ZXJlZCcpIG92ZXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VGh5RHJhZ092ZXJFdmVudDxUaHlEcmFnRGlyZWN0aXZlPj4oKTtcblxuICAgIC8qKlxuICAgICAqIGRyb3Ag6Kem5Y+R5pe26LCD55SoXG4gICAgICovXG4gICAgQE91dHB1dCgndGh5RHJhZ0Ryb3BwZWQnKSBkcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxUaHlEcmFnRHJvcEV2ZW50PFRoeURyYWdEaXJlY3RpdmU+PigpO1xuXG4gICAgLyoqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihUaHlEcmFnRGlyZWN0aXZlLCB7XG4gICAgICAgIGRlc2NlbmRhbnRzOiBmYWxzZVxuICAgIH0pXG4gICAgZHJhZ2dhYmxlczogUXVlcnlMaXN0PFRoeURyYWdEaXJlY3RpdmU+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy5kcmFnZ2FibGVzLmNoYW5nZXMucGlwZShzdGFydFdpdGgobnVsbCksIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZHJhZ2dhYmxlQ2hhbmdlcygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRyYWdnYWJsZUNoYW5nZXMoKSB7XG4gICAgICAgIHRoaXMucmVzZXREcmFnZ2FibGVDaGFuZ2VzKGl0ZW0gPT4gaXRlbS5kcmFnUmVmLnN0YXJ0ZWQpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICB0aGlzLnN0YXJ0ZWQuZW1pdChldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlc2V0RHJhZ2dhYmxlQ2hhbmdlcyhpdGVtID0+IGl0ZW0uZHJhZ1JlZi5lbmRlZCkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIHRoaXMuZW5kZWQuZW1pdChldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlc2V0RHJhZ2dhYmxlQ2hhbmdlcyhpdGVtID0+IGl0ZW0uZHJhZ1JlZi5vdmVyZWQpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICB0aGlzLm92ZXJlZC5lbWl0KGV2ZW50KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucmVzZXREcmFnZ2FibGVDaGFuZ2VzKGl0ZW0gPT4gaXRlbS5kcmFnUmVmLmRyb3BwZWQpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICB0aGlzLmRyb3BwZWQuZW1pdChldmVudCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzZXREcmFnZ2FibGVDaGFuZ2VzKGZuOiAoaXRlbTogVGh5RHJhZ0RpcmVjdGl2ZSkgPT4gT2JzZXJ2YWJsZTxhbnk+KSB7XG4gICAgICAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5kcmFnZ2FibGVzKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG1lcmdlKC4uLnRoaXMuZHJhZ2dhYmxlcy5tYXAoZm4pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5nWm9uZS5vblN0YWJsZS5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMucmVzZXREcmFnZ2FibGVDaGFuZ2VzLmJpbmQodGhpcywgZm4pKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSkucGlwZSh0YWtlVW50aWwobWVyZ2UodGhpcy5uZ1Vuc3Vic2NyaWJlJCwgdGhpcy5kcmFnZ2FibGVzLmNoYW5nZXMpKSkgYXMgT2JzZXJ2YWJsZTxhbnk+O1xuICAgIH1cbn1cbiJdfQ==
|