@schneideress/dashboardframework 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/bundles/schneideress-dashboardframework.umd.js +5666 -0
- package/bundles/schneideress-dashboardframework.umd.js.map +1 -0
- package/bundles/schneideress-dashboardframework.umd.min.js +2 -0
- package/bundles/schneideress-dashboardframework.umd.min.js.map +1 -0
- package/esm2015/gridster/index.js +18 -0
- package/esm2015/gridster/lib/gridster.component.js +695 -0
- package/esm2015/gridster/lib/gridster.interface.js +84 -0
- package/esm2015/gridster/lib/gridster.module.js +27 -0
- package/esm2015/gridster/lib/gridsterCompact.service.js +223 -0
- package/esm2015/gridster/lib/gridsterConfig.constant.js +179 -0
- package/esm2015/gridster/lib/gridsterConfig.interface.js +219 -0
- package/esm2015/gridster/lib/gridsterConfigS.interface.js +161 -0
- package/esm2015/gridster/lib/gridsterDraggable.service.js +510 -0
- package/esm2015/gridster/lib/gridsterEmptyCell.service.js +317 -0
- package/esm2015/gridster/lib/gridsterItem.component.js +213 -0
- package/esm2015/gridster/lib/gridsterItem.interface.js +46 -0
- package/esm2015/gridster/lib/gridsterItemComponent.interface.js +48 -0
- package/esm2015/gridster/lib/gridsterPreview.component.js +66 -0
- package/esm2015/gridster/lib/gridsterPush.service.js +467 -0
- package/esm2015/gridster/lib/gridsterPushResize.service.js +358 -0
- package/esm2015/gridster/lib/gridsterRenderer.service.js +277 -0
- package/esm2015/gridster/lib/gridsterResizable.service.js +552 -0
- package/esm2015/gridster/lib/gridsterResizeEventType.interface.js +19 -0
- package/esm2015/gridster/lib/gridsterScroll.service.js +195 -0
- package/esm2015/gridster/lib/gridsterSwap.service.js +134 -0
- package/esm2015/gridster/lib/gridsterUtils.service.js +137 -0
- package/esm2015/lib/ra-dashboard-area/ra.dashboard.area.js +258 -0
- package/esm2015/lib/ra-widget-container/ra.widget.container.component.js +216 -0
- package/esm2015/lib/ra.base.dashboard.filter.js +35 -0
- package/esm2015/lib/ra.base.dashboard.template.js +63 -0
- package/esm2015/lib/ra.dashbard.event.bus.js +85 -0
- package/esm2015/lib/ra.dashboard.module.js +31 -0
- package/esm2015/lib/ra.dashboard.service.js +213 -0
- package/esm2015/lib/ra.event.enum.js +33 -0
- package/esm2015/lib/ra.gridster.config.js +63 -0
- package/esm2015/public-api.js +16 -0
- package/esm2015/schneideress-dashboardframework.js +13 -0
- package/esm5/gridster/index.js +18 -0
- package/esm5/gridster/lib/gridster.component.js +798 -0
- package/esm5/gridster/lib/gridster.interface.js +94 -0
- package/esm5/gridster/lib/gridster.module.js +31 -0
- package/esm5/gridster/lib/gridsterCompact.service.js +253 -0
- package/esm5/gridster/lib/gridsterConfig.constant.js +179 -0
- package/esm5/gridster/lib/gridsterConfig.interface.js +219 -0
- package/esm5/gridster/lib/gridsterConfigS.interface.js +161 -0
- package/esm5/gridster/lib/gridsterDraggable.service.js +549 -0
- package/esm5/gridster/lib/gridsterEmptyCell.service.js +358 -0
- package/esm5/gridster/lib/gridsterItem.component.js +238 -0
- package/esm5/gridster/lib/gridsterItem.interface.js +46 -0
- package/esm5/gridster/lib/gridsterItemComponent.interface.js +58 -0
- package/esm5/gridster/lib/gridsterPreview.component.js +70 -0
- package/esm5/gridster/lib/gridsterPush.service.js +547 -0
- package/esm5/gridster/lib/gridsterPushResize.service.js +423 -0
- package/esm5/gridster/lib/gridsterRenderer.service.js +323 -0
- package/esm5/gridster/lib/gridsterResizable.service.js +629 -0
- package/esm5/gridster/lib/gridsterResizeEventType.interface.js +19 -0
- package/esm5/gridster/lib/gridsterScroll.service.js +195 -0
- package/esm5/gridster/lib/gridsterSwap.service.js +152 -0
- package/esm5/gridster/lib/gridsterUtils.service.js +177 -0
- package/esm5/lib/ra-dashboard-area/ra.dashboard.area.js +307 -0
- package/esm5/lib/ra-widget-container/ra.widget.container.component.js +277 -0
- package/esm5/lib/ra.base.dashboard.filter.js +38 -0
- package/esm5/lib/ra.base.dashboard.template.js +63 -0
- package/esm5/lib/ra.dashbard.event.bus.js +125 -0
- package/esm5/lib/ra.dashboard.module.js +35 -0
- package/esm5/lib/ra.dashboard.service.js +295 -0
- package/esm5/lib/ra.event.enum.js +33 -0
- package/esm5/lib/ra.gridster.config.js +63 -0
- package/esm5/public-api.js +16 -0
- package/esm5/schneideress-dashboardframework.js +13 -0
- package/fesm2015/schneideress-dashboardframework.js +4811 -0
- package/fesm2015/schneideress-dashboardframework.js.map +1 -0
- package/fesm5/schneideress-dashboardframework.js +5613 -0
- package/fesm5/schneideress-dashboardframework.js.map +1 -0
- package/gridster/index.d.ts +11 -0
- package/gridster/lib/gridster.component.d.ts +67 -0
- package/gridster/lib/gridster.interface.d.ts +46 -0
- package/gridster/lib/gridster.module.d.ts +2 -0
- package/gridster/lib/gridsterCompact.service.d.ts +15 -0
- package/gridster/lib/gridsterConfig.constant.d.ts +2 -0
- package/gridster/lib/gridsterConfig.interface.d.ts +133 -0
- package/gridster/lib/gridsterConfigS.interface.d.ts +93 -0
- package/gridster/lib/gridsterDraggable.service.d.ts +59 -0
- package/gridster/lib/gridsterEmptyCell.service.d.ts +29 -0
- package/gridster/lib/gridsterItem.component.d.ts +32 -0
- package/gridster/lib/gridsterItem.interface.d.ts +21 -0
- package/gridster/lib/gridsterItemComponent.interface.d.ts +25 -0
- package/gridster/lib/gridsterPreview.component.d.ts +10 -0
- package/gridster/lib/gridsterPush.service.d.ts +33 -0
- package/gridster/lib/gridsterPushResize.service.d.ts +26 -0
- package/gridster/lib/gridsterRenderer.service.d.ts +38 -0
- package/gridster/lib/gridsterResizable.service.d.ts +67 -0
- package/gridster/lib/gridsterResizeEventType.interface.d.ts +6 -0
- package/gridster/lib/gridsterScroll.service.d.ts +4 -0
- package/gridster/lib/gridsterSwap.service.d.ts +13 -0
- package/gridster/lib/gridsterUtils.service.d.ts +16 -0
- package/lib/ra-dashboard-area/ra.dashboard.area.d.ts +37 -0
- package/lib/ra-widget-container/ra.widget.container.component.d.ts +37 -0
- package/lib/ra.base.dashboard.filter.d.ts +4 -0
- package/lib/ra.base.dashboard.template.d.ts +14 -0
- package/lib/ra.dashbard.event.bus.d.ts +20 -0
- package/lib/ra.dashboard.module.d.ts +2 -0
- package/lib/ra.dashboard.service.d.ts +73 -0
- package/lib/ra.event.enum.d.ts +24 -0
- package/lib/ra.gridster.config.d.ts +2 -0
- package/package.json +25 -0
- package/public-api.d.ts +8 -0
- package/schneideress-dashboardframework.d.ts +8 -0
- package/schneideress-dashboardframework.metadata.json +1 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @record
|
|
7
|
+
*/
|
|
8
|
+
export function GridsterResizeEventType() { }
|
|
9
|
+
if (false) {
|
|
10
|
+
/** @type {?} */
|
|
11
|
+
GridsterResizeEventType.prototype.n;
|
|
12
|
+
/** @type {?} */
|
|
13
|
+
GridsterResizeEventType.prototype.s;
|
|
14
|
+
/** @type {?} */
|
|
15
|
+
GridsterResizeEventType.prototype.w;
|
|
16
|
+
/** @type {?} */
|
|
17
|
+
GridsterResizeEventType.prototype.e;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZHN0ZXJSZXNpemVFdmVudFR5cGUuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNjaG5laWRlcmVzcy9kYXNoYm9hcmRmcmFtZXdvcmsvIiwic291cmNlcyI6WyJncmlkc3Rlci9saWIvZ3JpZHN0ZXJSZXNpemVFdmVudFR5cGUuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSw2Q0FLQzs7O0lBSkMsb0NBQVc7O0lBQ1gsb0NBQVc7O0lBQ1gsb0NBQVc7O0lBQ1gsb0NBQVciLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEdyaWRzdGVyUmVzaXplRXZlbnRUeXBlIHtcclxuICBuOiBib29sZWFuO1xyXG4gIHM6IGJvb2xlYW47XHJcbiAgdzogYm9vbGVhbjtcclxuICBlOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/** @type {?} */
|
|
6
|
+
var scrollSensitivity;
|
|
7
|
+
/** @type {?} */
|
|
8
|
+
var scrollSpeed;
|
|
9
|
+
/** @type {?} */
|
|
10
|
+
var intervalDuration = 50;
|
|
11
|
+
/** @type {?} */
|
|
12
|
+
var gridsterElement;
|
|
13
|
+
/** @type {?} */
|
|
14
|
+
var resizeEvent;
|
|
15
|
+
/** @type {?} */
|
|
16
|
+
var resizeEventType;
|
|
17
|
+
/** @type {?} */
|
|
18
|
+
var intervalE;
|
|
19
|
+
/** @type {?} */
|
|
20
|
+
var intervalW;
|
|
21
|
+
/** @type {?} */
|
|
22
|
+
var intervalN;
|
|
23
|
+
/** @type {?} */
|
|
24
|
+
var intervalS;
|
|
25
|
+
/**
|
|
26
|
+
* @param {?} gridster
|
|
27
|
+
* @param {?} left
|
|
28
|
+
* @param {?} top
|
|
29
|
+
* @param {?} width
|
|
30
|
+
* @param {?} height
|
|
31
|
+
* @param {?} e
|
|
32
|
+
* @param {?} lastMouse
|
|
33
|
+
* @param {?} calculateItemPosition
|
|
34
|
+
* @param {?=} resize
|
|
35
|
+
* @param {?=} resizeEventScrollType
|
|
36
|
+
* @return {?}
|
|
37
|
+
*/
|
|
38
|
+
export function scroll(gridster, left, top, width, height, e, lastMouse, calculateItemPosition, resize, resizeEventScrollType) {
|
|
39
|
+
scrollSensitivity = gridster.$options.scrollSensitivity;
|
|
40
|
+
scrollSpeed = gridster.$options.scrollSpeed;
|
|
41
|
+
gridsterElement = gridster.el;
|
|
42
|
+
resizeEvent = resize;
|
|
43
|
+
resizeEventType = resizeEventScrollType;
|
|
44
|
+
/** @type {?} */
|
|
45
|
+
var offsetWidth = gridsterElement.offsetWidth;
|
|
46
|
+
/** @type {?} */
|
|
47
|
+
var offsetHeight = gridsterElement.offsetHeight;
|
|
48
|
+
/** @type {?} */
|
|
49
|
+
var offsetLeft = gridsterElement.scrollLeft;
|
|
50
|
+
/** @type {?} */
|
|
51
|
+
var offsetTop = gridsterElement.scrollTop;
|
|
52
|
+
/** @type {?} */
|
|
53
|
+
var elemTopOffset = top - offsetTop;
|
|
54
|
+
/** @type {?} */
|
|
55
|
+
var elemBottomOffset = offsetHeight + offsetTop - top - height;
|
|
56
|
+
if (lastMouse.clientY < e.clientY && elemBottomOffset < scrollSensitivity) {
|
|
57
|
+
cancelN();
|
|
58
|
+
if ((resizeEvent && resizeEventType && !resizeEventType.s) || intervalS) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
intervalS = startVertical(1, calculateItemPosition, lastMouse);
|
|
62
|
+
}
|
|
63
|
+
else if (lastMouse.clientY > e.clientY && offsetTop > 0 && elemTopOffset < scrollSensitivity) {
|
|
64
|
+
cancelS();
|
|
65
|
+
if ((resizeEvent && resizeEventType && !resizeEventType.n) || intervalN) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
intervalN = startVertical(-1, calculateItemPosition, lastMouse);
|
|
69
|
+
}
|
|
70
|
+
else if (lastMouse.clientY !== e.clientY) {
|
|
71
|
+
cancelVertical();
|
|
72
|
+
}
|
|
73
|
+
/** @type {?} */
|
|
74
|
+
var elemRightOffset = offsetLeft + offsetWidth - left - width;
|
|
75
|
+
/** @type {?} */
|
|
76
|
+
var elemLeftOffset = left - offsetLeft;
|
|
77
|
+
if (lastMouse.clientX < e.clientX && elemRightOffset <= scrollSensitivity) {
|
|
78
|
+
cancelW();
|
|
79
|
+
if ((resizeEvent && resizeEventType && !resizeEventType.e) || intervalE) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
intervalE = startHorizontal(1, calculateItemPosition, lastMouse);
|
|
83
|
+
}
|
|
84
|
+
else if (lastMouse.clientX > e.clientX && offsetLeft > 0 && elemLeftOffset < scrollSensitivity) {
|
|
85
|
+
cancelE();
|
|
86
|
+
if ((resizeEvent && resizeEventType && !resizeEventType.w) || intervalW) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
intervalW = startHorizontal(-1, calculateItemPosition, lastMouse);
|
|
90
|
+
}
|
|
91
|
+
else if (lastMouse.clientX !== e.clientX) {
|
|
92
|
+
cancelHorizontal();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* @param {?} sign
|
|
97
|
+
* @param {?} calculateItemPosition
|
|
98
|
+
* @param {?} lastMouse
|
|
99
|
+
* @return {?}
|
|
100
|
+
*/
|
|
101
|
+
function startVertical(sign, calculateItemPosition, lastMouse) {
|
|
102
|
+
/** @type {?} */
|
|
103
|
+
var clientY = lastMouse.clientY;
|
|
104
|
+
return setInterval((/**
|
|
105
|
+
* @return {?}
|
|
106
|
+
*/
|
|
107
|
+
function () {
|
|
108
|
+
if (!gridsterElement || sign === -1 && gridsterElement.scrollTop - scrollSpeed < 0) {
|
|
109
|
+
cancelVertical();
|
|
110
|
+
}
|
|
111
|
+
gridsterElement.scrollTop += sign * scrollSpeed;
|
|
112
|
+
clientY += sign * scrollSpeed;
|
|
113
|
+
calculateItemPosition({ clientX: lastMouse.clientX, clientY: clientY });
|
|
114
|
+
}), intervalDuration);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* @param {?} sign
|
|
118
|
+
* @param {?} calculateItemPosition
|
|
119
|
+
* @param {?} lastMouse
|
|
120
|
+
* @return {?}
|
|
121
|
+
*/
|
|
122
|
+
function startHorizontal(sign, calculateItemPosition, lastMouse) {
|
|
123
|
+
/** @type {?} */
|
|
124
|
+
var clientX = lastMouse.clientX;
|
|
125
|
+
return setInterval((/**
|
|
126
|
+
* @return {?}
|
|
127
|
+
*/
|
|
128
|
+
function () {
|
|
129
|
+
if (!gridsterElement || sign === -1 && gridsterElement.scrollLeft - scrollSpeed < 0) {
|
|
130
|
+
cancelHorizontal();
|
|
131
|
+
}
|
|
132
|
+
gridsterElement.scrollLeft += sign * scrollSpeed;
|
|
133
|
+
clientX += sign * scrollSpeed;
|
|
134
|
+
calculateItemPosition({ clientX: clientX, clientY: lastMouse.clientY });
|
|
135
|
+
}), intervalDuration);
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* @return {?}
|
|
139
|
+
*/
|
|
140
|
+
export function cancelScroll() {
|
|
141
|
+
cancelHorizontal();
|
|
142
|
+
cancelVertical();
|
|
143
|
+
gridsterElement = undefined;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* @return {?}
|
|
147
|
+
*/
|
|
148
|
+
function cancelHorizontal() {
|
|
149
|
+
cancelE();
|
|
150
|
+
cancelW();
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* @return {?}
|
|
154
|
+
*/
|
|
155
|
+
function cancelVertical() {
|
|
156
|
+
cancelN();
|
|
157
|
+
cancelS();
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* @return {?}
|
|
161
|
+
*/
|
|
162
|
+
function cancelE() {
|
|
163
|
+
if (intervalE) {
|
|
164
|
+
clearInterval(intervalE);
|
|
165
|
+
intervalE = 0;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* @return {?}
|
|
170
|
+
*/
|
|
171
|
+
function cancelW() {
|
|
172
|
+
if (intervalW) {
|
|
173
|
+
clearInterval(intervalW);
|
|
174
|
+
intervalW = 0;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* @return {?}
|
|
179
|
+
*/
|
|
180
|
+
function cancelS() {
|
|
181
|
+
if (intervalS) {
|
|
182
|
+
clearInterval(intervalS);
|
|
183
|
+
intervalS = 0;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* @return {?}
|
|
188
|
+
*/
|
|
189
|
+
function cancelN() {
|
|
190
|
+
if (intervalN) {
|
|
191
|
+
clearInterval(intervalN);
|
|
192
|
+
intervalN = 0;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZHN0ZXJTY3JvbGwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzY2huZWlkZXJlc3MvZGFzaGJvYXJkZnJhbWV3b3JrLyIsInNvdXJjZXMiOlsiZ3JpZHN0ZXIvbGliL2dyaWRzdGVyU2Nyb2xsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7SUFHSSxpQkFBeUI7O0lBQ3pCLFdBQW1COztJQUNqQixnQkFBZ0IsR0FBRyxFQUFFOztJQUN2QixlQUFvQjs7SUFDcEIsV0FBZ0M7O0lBQ2hDLGVBQW9EOztJQUNwRCxTQUFpQjs7SUFDakIsU0FBaUI7O0lBQ2pCLFNBQWlCOztJQUNqQixTQUFpQjs7Ozs7Ozs7Ozs7Ozs7QUFFckIsTUFBTSxVQUFVLE1BQU0sQ0FBQyxRQUFvQyxFQUFFLElBQVksRUFBRSxHQUFXLEVBQUUsS0FBYSxFQUFFLE1BQWMsRUFDOUYsQ0FBYSxFQUFFLFNBQWMsRUFDN0IscUJBQStCLEVBQUUsTUFBZ0IsRUFBRSxxQkFBK0M7SUFDdkgsaUJBQWlCLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztJQUN4RCxXQUFXLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7SUFDNUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDOUIsV0FBVyxHQUFHLE1BQU0sQ0FBQztJQUNyQixlQUFlLEdBQUcscUJBQXFCLENBQUM7O1FBRWxDLFdBQVcsR0FBRyxlQUFlLENBQUMsV0FBVzs7UUFDekMsWUFBWSxHQUFHLGVBQWUsQ0FBQyxZQUFZOztRQUMzQyxVQUFVLEdBQUcsZUFBZSxDQUFDLFVBQVU7O1FBQ3ZDLFNBQVMsR0FBRyxlQUFlLENBQUMsU0FBUzs7UUFDckMsYUFBYSxHQUFHLEdBQUcsR0FBRyxTQUFTOztRQUMvQixnQkFBZ0IsR0FBRyxZQUFZLEdBQUcsU0FBUyxHQUFHLEdBQUcsR0FBRyxNQUFNO0lBQ2hFLElBQUksU0FBUyxDQUFDLE9BQU8sR0FBRyxDQUFD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QztLQUNmO0FBQ0gsQ0FBQzs7OztBQUVELFNBQVMsT0FBTztJQUNkLElBQUksU0FBUyxFQUFFO1FBQ2IsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pCLFNBQVMsR0FBRyxDQUFDLENBQUM7S0FDZjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0dyaWRzdGVyUmVzaXplRXZlbnRUeXBlfSBmcm9tICcuL2dyaWRzdGVyUmVzaXplRXZlbnRUeXBlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7R3JpZHN0ZXJDb21wb25lbnRJbnRlcmZhY2V9IGZyb20gJy4vZ3JpZHN0ZXIuaW50ZXJmYWNlJztcclxuXHJcbmxldCBzY3JvbGxTZW5zaXRpdml0eTogbnVtYmVyO1xyXG5sZXQgc2Nyb2xsU3BlZWQ6IG51bWJlcjtcclxuY29uc3QgaW50ZXJ2YWxEdXJhdGlvbiA9IDUwO1xyXG5sZXQgZ3JpZHN0ZXJFbGVtZW50OiBhbnk7XHJcbmxldCByZXNpemVFdmVudDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcclxubGV0IHJlc2l6ZUV2ZW50VHlwZTogR3JpZHN0ZXJSZXNpemVFdmVudFR5cGUgfCB1bmRlZmluZWQ7XHJcbmxldCBpbnRlcnZhbEU6IG51bWJlcjtcclxubGV0IGludGVydmFsVzogbnVtYmVyO1xyXG5sZXQgaW50ZXJ2YWxOOiBudW1iZXI7XHJcbmxldCBpbnRlcnZhbFM6IG51bWJlcjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzY3JvbGwoZ3JpZHN0ZXI6IEdyaWRzdGVyQ29tcG9uZW50SW50ZXJmYWNlLCBsZWZ0OiBudW1iZXIsIHRvcDogbnVtYmVyLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcixcclxuICAgICAgICAgICAgICAgICAgICAgICBlOiBNb3VzZUV2ZW50LCBsYXN0TW91c2U6IGFueSxcclxuICAgICAgICAgICAgICAgICAgICAgICBjYWxjdWxhdGVJdGVtUG9zaXRpb246IEZ1bmN0aW9uLCByZXNpemU/OiBib29sZWFuLCByZXNpemVFdmVudFNjcm9sbFR5cGU/OiBHcmlkc3RlclJlc2l6ZUV2ZW50VHlwZSkge1xyXG4gIHNjcm9sbFNlbnNpdGl2aXR5ID0gZ3JpZHN0ZXIuJG9wdGlvbnMuc2Nyb2xsU2Vuc2l0aXZpdHk7XHJcbiAgc2Nyb2xsU3BlZWQgPSBncmlkc3Rlci4kb3B0aW9ucy5zY3JvbGxTcGVlZDtcclxuICBncmlkc3RlckVsZW1lbnQgPSBncmlkc3Rlci5lbDtcclxuICByZXNpemVFdmVudCA9IHJlc2l6ZTtcclxuICByZXNpemVFdmVudFR5cGUgPSByZXNpemVFdmVudFNjcm9sbFR5cGU7XHJcblxyXG4gIGNvbnN0IG9mZnNldFdpZHRoID0gZ3JpZHN0ZXJFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gIGNvbnN0IG9mZnNldEhlaWdodCA9IGdyaWRzdGVyRWxlbWVudC5vZmZzZXRIZWlnaHQ7XHJcbiAgY29uc3Qgb2Zmc2V0TGVmdCA9IGdyaWRzdGVyRWxlbWVudC5zY3JvbGxMZWZ0O1xyXG4gIGNvbnN0IG9mZnNldFRvcCA9IGdyaWRzdGVyRWxlbWVudC5zY3JvbGxUb3A7XHJcbiAgY29uc3QgZWxlbVRvcE9mZnNldCA9IHRvcCAtIG9mZnNldFRvcDtcclxuICBjb25zdCBlbGVtQm90dG9tT2Zmc2V0ID0gb2Zmc2V0SGVpZ2h0ICsgb2Zmc2V0VG9wIC0gdG9wIC0gaGVpZ2h0O1xyXG4gIGlmIChsYXN0TW91c2UuY2xpZW50WSA8IGUuY2xpZW50WSAmJiBlbGVtQm90dG9tT2Zmc2V0IDwgc2Nyb2xsU2Vuc2l0aXZpdHkpIHtcclxuICAgIGNhbmNlbE4oKTtcclxuICAgIGlmICgocmVzaXplRXZlbnQgJiYgcmVzaXplRXZlbnRUeXBlICYmICFyZXNpemVFdmVudFR5cGUucykgfHwgaW50ZXJ2YWxTKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGludGVydmFsUyA9IHN0YXJ0VmVydGljYWwoMSwgY2FsY3VsYXRlSXRlbVBvc2l0aW9uLCBsYXN0TW91c2UpO1xyXG4gIH0gZWxzZSBpZiAobGFzdE1vdXNlLmNsaWVudFkgPiBlLmNsaWVudFkgJiYgb2Zmc2V0VG9wID4gMCAmJiBlbGVtVG9wT2Zmc2V0IDwgc2Nyb2xsU2Vuc2l0aXZpdHkpIHtcclxuICAgIGNhbmNlbFMoKTtcclxuICAgIGlmICgocmVzaXplRXZlbnQgJiYgcmVzaXplRXZlbnRUeXBlICYmICFyZXNpemVFdmVudFR5cGUubikgfHwgaW50ZXJ2YWxOKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGludGVydmFsTiA9IHN0YXJ0VmVydGljYWwoLTEsIGNhbGN1bGF0ZUl0ZW1Qb3NpdGlvbiwgbGFzdE1vdXNlKTtcclxuICB9IGVsc2UgaWYgKGxhc3RNb3VzZS5jbGllbnRZICE9PSBlLmNsaWVudFkpIHtcclxuICAgIGNhbmNlbFZlcnRpY2FsKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBlbGVtUmlnaHRPZmZzZXQgPSBvZmZzZXRMZWZ0ICsgb2Zmc2V0V2lkdGggLSBsZWZ0IC0gd2lkdGg7XHJcbiAgY29uc3QgZWxlbUxlZnRPZmZzZXQgPSBsZWZ0IC0gb2Zmc2V0TGVmdDtcclxuICBpZiAobGFzdE1vdXNlLmNsaWVudFggPCBlLmNsaWVudFggJiYgZWxlbVJpZ2h0T2Zmc2V0IDw9IHNjcm9sbFNlbnNpdGl2aXR5KSB7XHJcbiAgICBjYW5jZWxXKCk7XHJcbiAgICBpZiAoKHJlc2l6ZUV2ZW50ICYmIHJlc2l6ZUV2ZW50VHlwZSAmJiAhcmVzaXplRXZlbnRUeXBlLmUpIHx8IGludGVydmFsRSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpbnRlcnZhbEUgPSBzdGFydEhvcml6b250YWwoMSwgY2FsY3VsYXRlSXRlbVBvc2l0aW9uLCBsYXN0TW91c2UpO1xyXG4gIH0gZWxzZSBpZiAobGFzdE1vdXNlLmNsaWVudFggPiBlLmNsaWVudFggJiYgb2Zmc2V0TGVmdCA+IDAgJiYgZWxlbUxlZnRPZmZzZXQgPCBzY3JvbGxTZW5zaXRpdml0eSkge1xyXG4gICAgY2FuY2VsRSgpO1xyXG4gICAgaWYgKChyZXNpemVFdmVudCAmJiByZXNpemVFdmVudFR5cGUgJiYgIXJlc2l6ZUV2ZW50VHlwZS53KSB8fCBpbnRlcnZhbFcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaW50ZXJ2YWxXID0gc3RhcnRIb3Jpem9udGFsKC0xLCBjYWxjdWxhdGVJdGVtUG9zaXRpb24sIGxhc3RNb3VzZSk7XHJcbiAgfSBlbHNlIGlmIChsYXN0TW91c2UuY2xpZW50WCAhPT0gZS5jbGllbnRYKSB7XHJcbiAgICBjYW5jZWxIb3Jpem9udGFsKCk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBzdGFydFZlcnRpY2FsKHNpZ246IG51bWJlciwgY2FsY3VsYXRlSXRlbVBvc2l0aW9uOiBGdW5jdGlvbiwgbGFzdE1vdXNlOiBhbnkpOiBhbnkge1xyXG4gIGxldCBjbGllbnRZID0gbGFzdE1vdXNlLmNsaWVudFk7XHJcbiAgcmV0dXJuIHNldEludGVydmFsKCgpID0+IHtcclxuICAgIGlmICghZ3JpZHN0ZXJFbGVtZW50IHx8IHNpZ24gPT09IC0xICYmIGdyaWRzdGVyRWxlbWVudC5zY3JvbGxUb3AgLSBzY3JvbGxTcGVlZCA8IDApIHtcclxuICAgICAgY2FuY2VsVmVydGljYWwoKTtcclxuICAgIH1cclxuICAgIGdyaWRzdGVyRWxlbWVudC5zY3JvbGxUb3AgKz0gc2lnbiAqIHNjcm9sbFNwZWVkO1xyXG4gICAgY2xpZW50WSArPSBzaWduICogc2Nyb2xsU3BlZWQ7XHJcbiAgICBjYWxjdWxhdGVJdGVtUG9zaXRpb24oe2NsaWVudFg6IGxhc3RNb3VzZS5jbGllbnRYLCBjbGllbnRZOiBjbGllbnRZfSk7XHJcbiAgfSwgaW50ZXJ2YWxEdXJhdGlvbik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHN0YXJ0SG9yaXpvbnRhbChzaWduOiBudW1iZXIsIGNhbGN1bGF0ZUl0ZW1Qb3NpdGlvbjogRnVuY3Rpb24sIGxhc3RNb3VzZTogYW55KTogYW55IHtcclxuICBsZXQgY2xpZW50WCA9IGxhc3RNb3VzZS5jbGllbnRYO1xyXG4gIHJldHVybiBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICBpZiAoIWdyaWRzdGVyRWxlbWVudCB8fCBzaWduID09PSAtMSAmJiBncmlkc3RlckVsZW1lbnQuc2Nyb2xsTGVmdCAtIHNjcm9sbFNwZWVkIDwgMCkge1xyXG4gICAgICBjYW5jZWxIb3Jpem9udGFsKCk7XHJcbiAgICB9XHJcbiAgICBncmlkc3RlckVsZW1lbnQuc2Nyb2xsTGVmdCArPSBzaWduICogc2Nyb2xsU3BlZWQ7XHJcbiAgICBjbGllbnRYICs9IHNpZ24gKiBzY3JvbGxTcGVlZDtcclxuICAgIGNhbGN1bGF0ZUl0ZW1Qb3NpdGlvbih7Y2xpZW50WDogY2xpZW50WCwgY2xpZW50WTogbGFzdE1vdXNlLmNsaWVudFl9KTtcclxuICB9LCBpbnRlcnZhbER1cmF0aW9uKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbmNlbFNjcm9sbCgpIHtcclxuICBjYW5jZWxIb3Jpem9udGFsKCk7XHJcbiAgY2FuY2VsVmVydGljYWwoKTtcclxuICBncmlkc3RlckVsZW1lbnQgPSB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNhbmNlbEhvcml6b250YWwoKSB7XHJcbiAgY2FuY2VsRSgpO1xyXG4gIGNhbmNlbFcoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gY2FuY2VsVmVydGljYWwoKSB7XHJcbiAgY2FuY2VsTigpO1xyXG4gIGNhbmNlbFMoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gY2FuY2VsRSgpIHtcclxuICBpZiAoaW50ZXJ2YWxFKSB7XHJcbiAgICBjbGVhckludGVydmFsKGludGVydmFsRSk7XHJcbiAgICBpbnRlcnZhbEUgPSAwO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gY2FuY2VsVygpIHtcclxuICBpZiAoaW50ZXJ2YWxXKSB7XHJcbiAgICBjbGVhckludGVydmFsKGludGVydmFsVyk7XHJcbiAgICBpbnRlcnZhbFcgPSAwO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gY2FuY2VsUygpIHtcclxuICBpZiAoaW50ZXJ2YWxTKSB7XHJcbiAgICBjbGVhckludGVydmFsKGludGVydmFsUyk7XHJcbiAgICBpbnRlcnZhbFMgPSAwO1xyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gY2FuY2VsTigpIHtcclxuICBpZiAoaW50ZXJ2YWxOKSB7XHJcbiAgICBjbGVhckludGVydmFsKGludGVydmFsTik7XHJcbiAgICBpbnRlcnZhbE4gPSAwO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
import { GridsterItemComponentInterface } from './gridsterItemComponent.interface';
|
|
7
|
+
var GridsterSwap = /** @class */ (function () {
|
|
8
|
+
function GridsterSwap(gridsterItem) {
|
|
9
|
+
this.gridsterItem = gridsterItem;
|
|
10
|
+
this.gridster = gridsterItem.gridster;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @return {?}
|
|
14
|
+
*/
|
|
15
|
+
GridsterSwap.prototype.destroy = /**
|
|
16
|
+
* @return {?}
|
|
17
|
+
*/
|
|
18
|
+
function () {
|
|
19
|
+
delete this.gridster;
|
|
20
|
+
delete this.gridsterItem;
|
|
21
|
+
delete this.swapedItem;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* @return {?}
|
|
25
|
+
*/
|
|
26
|
+
GridsterSwap.prototype.swapItems = /**
|
|
27
|
+
* @return {?}
|
|
28
|
+
*/
|
|
29
|
+
function () {
|
|
30
|
+
if (this.gridster.$options.swap) {
|
|
31
|
+
this.checkSwapBack();
|
|
32
|
+
this.checkSwap(this.gridsterItem);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* @return {?}
|
|
37
|
+
*/
|
|
38
|
+
GridsterSwap.prototype.checkSwapBack = /**
|
|
39
|
+
* @return {?}
|
|
40
|
+
*/
|
|
41
|
+
function () {
|
|
42
|
+
if (this.swapedItem) {
|
|
43
|
+
/** @type {?} */
|
|
44
|
+
var x = this.swapedItem.$item.x;
|
|
45
|
+
/** @type {?} */
|
|
46
|
+
var y = this.swapedItem.$item.y;
|
|
47
|
+
this.swapedItem.$item.x = this.swapedItem.item.x || 0;
|
|
48
|
+
this.swapedItem.$item.y = this.swapedItem.item.y || 0;
|
|
49
|
+
if (this.gridster.checkCollision(this.swapedItem.$item)) {
|
|
50
|
+
this.swapedItem.$item.x = x;
|
|
51
|
+
this.swapedItem.$item.y = y;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
this.swapedItem.setSize();
|
|
55
|
+
this.gridsterItem.$item.x = this.gridsterItem.item.x || 0;
|
|
56
|
+
this.gridsterItem.$item.y = this.gridsterItem.item.y || 0;
|
|
57
|
+
this.swapedItem = undefined;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* @return {?}
|
|
63
|
+
*/
|
|
64
|
+
GridsterSwap.prototype.restoreSwapItem = /**
|
|
65
|
+
* @return {?}
|
|
66
|
+
*/
|
|
67
|
+
function () {
|
|
68
|
+
if (this.swapedItem) {
|
|
69
|
+
this.swapedItem.$item.x = this.swapedItem.item.x || 0;
|
|
70
|
+
this.swapedItem.$item.y = this.swapedItem.item.y || 0;
|
|
71
|
+
this.swapedItem.setSize();
|
|
72
|
+
this.swapedItem = undefined;
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* @return {?}
|
|
77
|
+
*/
|
|
78
|
+
GridsterSwap.prototype.setSwapItem = /**
|
|
79
|
+
* @return {?}
|
|
80
|
+
*/
|
|
81
|
+
function () {
|
|
82
|
+
if (this.swapedItem) {
|
|
83
|
+
this.swapedItem.checkItemChanges(this.swapedItem.$item, this.swapedItem.item);
|
|
84
|
+
this.swapedItem = undefined;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* @param {?} pushedBy
|
|
89
|
+
* @return {?}
|
|
90
|
+
*/
|
|
91
|
+
GridsterSwap.prototype.checkSwap = /**
|
|
92
|
+
* @param {?} pushedBy
|
|
93
|
+
* @return {?}
|
|
94
|
+
*/
|
|
95
|
+
function (pushedBy) {
|
|
96
|
+
/** @type {?} */
|
|
97
|
+
var gridsterItemCollision = this.gridster.checkCollision(pushedBy.$item);
|
|
98
|
+
if (gridsterItemCollision && gridsterItemCollision !== true && gridsterItemCollision.canBeDragged()) {
|
|
99
|
+
/** @type {?} */
|
|
100
|
+
var gridsterItemCollide = gridsterItemCollision;
|
|
101
|
+
/** @type {?} */
|
|
102
|
+
var copyCollisionX = gridsterItemCollide.$item.x;
|
|
103
|
+
/** @type {?} */
|
|
104
|
+
var copyCollisionY = gridsterItemCollide.$item.y;
|
|
105
|
+
/** @type {?} */
|
|
106
|
+
var copyX = pushedBy.$item.x;
|
|
107
|
+
/** @type {?} */
|
|
108
|
+
var copyY = pushedBy.$item.y;
|
|
109
|
+
gridsterItemCollide.$item.x = pushedBy.item.x || 0;
|
|
110
|
+
gridsterItemCollide.$item.y = pushedBy.item.y || 0;
|
|
111
|
+
pushedBy.$item.x = gridsterItemCollide.item.x || 0;
|
|
112
|
+
pushedBy.$item.y = gridsterItemCollide.item.y || 0;
|
|
113
|
+
if (this.gridster.checkCollision(gridsterItemCollide.$item) || this.gridster.checkCollision(pushedBy.$item)) {
|
|
114
|
+
pushedBy.$item.x = copyX;
|
|
115
|
+
pushedBy.$item.y = copyY;
|
|
116
|
+
gridsterItemCollide.$item.x = copyCollisionX;
|
|
117
|
+
gridsterItemCollide.$item.y = copyCollisionY;
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
gridsterItemCollide.setSize();
|
|
121
|
+
this.swapedItem = gridsterItemCollide;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
GridsterSwap.decorators = [
|
|
126
|
+
{ type: Injectable }
|
|
127
|
+
];
|
|
128
|
+
/** @nocollapse */
|
|
129
|
+
GridsterSwap.ctorParameters = function () { return [
|
|
130
|
+
{ type: GridsterItemComponentInterface }
|
|
131
|
+
]; };
|
|
132
|
+
return GridsterSwap;
|
|
133
|
+
}());
|
|
134
|
+
export { GridsterSwap };
|
|
135
|
+
if (false) {
|
|
136
|
+
/**
|
|
137
|
+
* @type {?}
|
|
138
|
+
* @private
|
|
139
|
+
*/
|
|
140
|
+
GridsterSwap.prototype.swapedItem;
|
|
141
|
+
/**
|
|
142
|
+
* @type {?}
|
|
143
|
+
* @private
|
|
144
|
+
*/
|
|
145
|
+
GridsterSwap.prototype.gridsterItem;
|
|
146
|
+
/**
|
|
147
|
+
* @type {?}
|
|
148
|
+
* @private
|
|
149
|
+
*/
|
|
150
|
+
GridsterSwap.prototype.gridster;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZHN0ZXJTd2FwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2NobmVpZGVyZXNzL2Rhc2hib2FyZGZyYW1ld29yay8iLCJzb3VyY2VzIjpbImdyaWRzdGVyL2xpYi9ncmlkc3RlclN3YXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUdqRjtJQU1FLHNCQUFZLFlBQTRDO1FBQ3RELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDOzs7O0lBRUQsOEJBQU87OztJQUFQO1FBQ0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQzs7OztJQUVELGdDQUFTOzs7SUFBVDtRQUNFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQy9CLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNuQztJQUNILENBQUM7Ozs7SUFFRCxvQ0FBYTs7O0lBQWI7UUFDRSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7O2dCQUNiLENBQUMsR0FBVyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDOztnQkFDbkMsQ0FBQyxHQUFXLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxD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LEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkQsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQzNHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztnQkFDekIsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUN6QixtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLGNBQWMsQ0FBQztnQkFDN0MsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxjQUFjLENBQUM7YUFDOUM7aUJBQU07Z0JBQ0wsbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsbUJBQW1CLENBQUM7YUFDdkM7U0FDRjtJQUNILENBQUM7O2dCQWpGRixVQUFVOzs7O2dCQUhILDhCQUE4Qjs7SUFxRnRDLG1CQUFDO0NBQUEsQUFsRkQsSUFrRkM7U0FqRlksWUFBWTs7Ozs7O0lBQ3ZCLGtDQUErRDs7Ozs7SUFDL0Qsb0NBQXFEOzs7OztJQUNyRCxnQ0FBNkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtHcmlkc3Rlckl0ZW1Db21wb25lbnRJbnRlcmZhY2V9IGZyb20gJy4vZ3JpZHN0ZXJJdGVtQ29tcG9uZW50LmludGVyZmFjZSc7XHJcbmltcG9ydCB7R3JpZHN0ZXJDb21wb25lbnRJbnRlcmZhY2V9IGZyb20gJy4vZ3JpZHN0ZXIuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEdyaWRzdGVyU3dhcCB7XHJcbiAgcHJpdmF0ZSBzd2FwZWRJdGVtOiBHcmlkc3Rlckl0ZW1Db21wb25lbnRJbnRlcmZhY2UgfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBncmlkc3Rlckl0ZW06IEdyaWRzdGVySXRlbUNvbXBvbmVudEludGVyZmFjZTtcclxuICBwcml2YXRlIGdyaWRzdGVyOiBHcmlkc3RlckNvbXBvbmVudEludGVyZmFjZTtcclxuXHJcbiAgY29uc3RydWN0b3IoZ3JpZHN0ZXJJdGVtOiBHcmlkc3Rlckl0ZW1Db21wb25lbnRJbnRlcmZhY2UpIHtcclxuICAgIHRoaXMuZ3JpZHN0ZXJJdGVtID0gZ3JpZHN0ZXJJdGVtO1xyXG4gICAgdGhpcy5ncmlkc3RlciA9IGdyaWRzdGVySXRlbS5ncmlkc3RlcjtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBkZWxldGUgdGhpcy5ncmlkc3RlcjtcclxuICAgIGRlbGV0ZSB0aGlzLmdyaWRzdGVySXRlbTtcclxuICAgIGRlbGV0ZSB0aGlzLnN3YXBlZEl0ZW07XHJcbiAgfVxyXG5cclxuICBzd2FwSXRlbXMoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5ncmlkc3Rlci4kb3B0aW9ucy5zd2FwKSB7XHJcbiAgICAgIHRoaXMuY2hlY2tTd2FwQmFjaygpO1xyXG4gICAgICB0aGlzLmNoZWNrU3dhcCh0aGlzLmdyaWRzdGVySXRlbSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja1N3YXBCYWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc3dhcGVkSXRlbSkge1xyXG4gICAgICBjb25zdCB4OiBudW1iZXIgPSB0aGlzLnN3YXBlZEl0ZW0uJGl0ZW0ueDtcclxuICAgICAgY29uc3QgeTogbnVtYmVyID0gdGhpcy5zd2FwZWRJdGVtLiRpdGVtLnk7XHJcbiAgICAgIHRoaXMuc3dhcGVkSXRlbS4kaXRlbS54ID0gdGhpcy5zd2FwZWRJdGVtLml0ZW0ueCB8fCAwO1xyXG4gICAgICB0aGlzLnN3YXBlZEl0ZW0uJGl0ZW0ueSA9IHRoaXMuc3dhcGVkSXRlbS5pdGVtLnkgfHwgMDtcclxuICAgICAgaWYgKHRoaXMuZ3JpZHN0ZXIuY2hlY2tDb2xsaXNpb24odGhpcy5zd2FwZWRJdGVtLiRpdGVtKSkge1xyXG4gICAgICAgIHRoaXMuc3dhcGVkSXRlbS4kaXRlbS54ID0geDtcclxuICAgICAgICB0aGlzLnN3YXBlZEl0ZW0uJGl0ZW0ueSA9IHk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zd2FwZWRJdGVtLnNldFNpemUoKTtcclxuICAgICAgICB0aGlzLmdyaWRzdGVySXRlbS4kaXRlbS54ID0gdGhpcy5ncmlkc3Rlckl0ZW0uaXRlbS54IHx8IDA7XHJcbiAgICAgICAgdGhpcy5ncmlkc3Rlckl0ZW0uJGl0ZW0ueSA9IHRoaXMuZ3JpZHN0ZXJJdGVtLml0ZW0ueSB8fCAwO1xyXG4gICAgICAgIHRoaXMuc3dhcGVkSXRlbSA9IHVuZGVmaW5lZDtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlc3RvcmVTd2FwSXRlbSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN3YXBlZEl0ZW0pIHtcclxuICAgICAgdGhpcy5zd2FwZWRJdGVtLiRpdGVtLnggPSB0aGlzLnN3YXBlZEl0ZW0uaXRlbS54IHx8IDA7XHJcbiAgICAgIHRoaXMuc3dhcGVkSXRlbS4kaXRlbS55ID0gdGhpcy5zd2FwZWRJdGVtLml0ZW0ueSB8fCAwO1xyXG4gICAgICB0aGlzLnN3YXBlZEl0ZW0uc2V0U2l6ZSgpO1xyXG4gICAgICB0aGlzLnN3YXBlZEl0ZW0gPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRTd2FwSXRlbSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN3YXBlZEl0ZW0pIHtcclxuICAgICAgdGhpcy5zd2FwZWRJdGVtLmNoZWNrSXRlbUNoYW5nZXModGhpcy5zd2FwZWRJdGVtLiRpdGVtLCB0aGlzLnN3YXBlZEl0ZW0uaXRlbSk7XHJcbiAgICAgIHRoaXMuc3dhcGVkSXRlbSA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrU3dhcChwdXNoZWRCeTogR3JpZHN0ZXJJdGVtQ29tcG9uZW50SW50ZXJmYWNlKTogdm9pZCB7XHJcbiAgICBjb25zdCBncmlkc3Rlckl0ZW1Db2xsaXNpb246IGFueSA9IHRoaXMuZ3JpZHN0ZXIuY2hlY2tDb2xsaXNpb24ocHVzaGVkQnkuJGl0ZW0pO1xyXG4gICAgaWYgKGdyaWRzdGVySXRlbUNvbGxpc2lvbiAmJiBncmlkc3Rlckl0ZW1Db2xsaXNpb24gIT09IHRydWUgJiYgZ3JpZHN0ZXJJdGVtQ29sbGlzaW9uLmNhbkJlRHJhZ2dlZCgpKSB7XHJcbiAgICAgIGNvbnN0IGdyaWRzdGVySXRlbUNvbGxpZGU6IEdyaWRzdGVySXRlbUNvbXBvbmVudEludGVyZmFjZSA9IGdyaWRzdGVySXRlbUNvbGxpc2lvbjtcclxuICAgICAgY29uc3QgY29weUNvbGxpc2lvblggPSBncmlkc3Rlckl0ZW1Db2xsaWRlLiRpdGVtLng7XHJcbiAgICAgIGNvbnN0IGNvcHlDb2xsaXNpb25ZID0gZ3JpZHN0ZXJJdGVtQ29sbGlkZS4kaXRlbS55O1xyXG4gICAgICBjb25zdCBjb3B5WCA9IHB1c2hlZEJ5LiRpdGVtLng7XHJcbiAgICAgIGNvbnN0IGNvcHlZID0gcHVzaGVkQnkuJGl0ZW0ueTtcclxuICAgICAgZ3JpZHN0ZXJJdGVtQ29sbGlkZS4kaXRlbS54ID0gcHVzaGVkQnkuaXRlbS54IHx8IDA7XHJcbiAgICAgIGdyaWRzdGVySXRlbUNvbGxpZGUuJGl0ZW0ueSA9IHB1c2hlZEJ5Lml0ZW0ueSB8fCAwO1xyXG4gICAgICBwdXNoZWRCeS4kaXRlbS54ID0gZ3JpZHN0ZXJJdGVtQ29sbGlkZS5pdGVtLnggfHwgMDtcclxuICAgICAgcHVzaGVkQnkuJGl0ZW0ueSA9IGdyaWRzdGVySXRlbUNvbGxpZGUuaXRlbS55IHx8IDA7XHJcbiAgICAgIGlmICh0aGlzLmdyaWRzdGVyLmNoZWNrQ29sbGlzaW9uKGdyaWRzdGVySXRlbUNvbGxpZGUuJGl0ZW0pIHx8IHRoaXMuZ3JpZHN0ZXIuY2hlY2tDb2xsaXNpb24ocHVzaGVkQnkuJGl0ZW0pKSB7XHJcbiAgICAgICAgcHVzaGVkQnkuJGl0ZW0ueCA9IGNvcHlYO1xyXG4gICAgICAgIHB1c2hlZEJ5LiRpdGVtLnkgPSBjb3B5WTtcclxuICAgICAgICBncmlkc3Rlckl0ZW1Db2xsaWRlLiRpdGVtLnggPSBjb3B5Q29sbGlzaW9uWDtcclxuICAgICAgICBncmlkc3Rlckl0ZW1Db2xsaWRlLiRpdGVtLnkgPSBjb3B5Q29sbGlzaW9uWTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBncmlkc3Rlckl0ZW1Db2xsaWRlLnNldFNpemUoKTtcclxuICAgICAgICB0aGlzLnN3YXBlZEl0ZW0gPSBncmlkc3Rlckl0ZW1Db2xsaWRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
var GridsterUtils = /** @class */ (function () {
|
|
7
|
+
function GridsterUtils() {
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @param {?} obj1
|
|
11
|
+
* @param {?} obj2
|
|
12
|
+
* @param {?} properties
|
|
13
|
+
* @return {?}
|
|
14
|
+
*/
|
|
15
|
+
GridsterUtils.merge = /**
|
|
16
|
+
* @param {?} obj1
|
|
17
|
+
* @param {?} obj2
|
|
18
|
+
* @param {?} properties
|
|
19
|
+
* @return {?}
|
|
20
|
+
*/
|
|
21
|
+
function (obj1, obj2, properties) {
|
|
22
|
+
for (var p in obj2) {
|
|
23
|
+
if (obj2[p] !== void 0 && properties.hasOwnProperty(p)) {
|
|
24
|
+
if (typeof obj2[p] === 'object') {
|
|
25
|
+
obj1[p] = GridsterUtils.merge(obj1[p], obj2[p], properties[p]);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
obj1[p] = obj2[p];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return obj1;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* @param {?} func
|
|
36
|
+
* @param {?} wait
|
|
37
|
+
* @return {?}
|
|
38
|
+
*/
|
|
39
|
+
GridsterUtils.debounce = /**
|
|
40
|
+
* @param {?} func
|
|
41
|
+
* @param {?} wait
|
|
42
|
+
* @return {?}
|
|
43
|
+
*/
|
|
44
|
+
function (func, wait) {
|
|
45
|
+
/** @type {?} */
|
|
46
|
+
var timeout;
|
|
47
|
+
return (/**
|
|
48
|
+
* @return {?}
|
|
49
|
+
*/
|
|
50
|
+
function () {
|
|
51
|
+
/** @type {?} */
|
|
52
|
+
var context = this;
|
|
53
|
+
/** @type {?} */
|
|
54
|
+
var args = arguments;
|
|
55
|
+
/** @type {?} */
|
|
56
|
+
var later = (/**
|
|
57
|
+
* @return {?}
|
|
58
|
+
*/
|
|
59
|
+
function () {
|
|
60
|
+
timeout = null;
|
|
61
|
+
func.apply(context, args);
|
|
62
|
+
});
|
|
63
|
+
clearTimeout(timeout);
|
|
64
|
+
timeout = setTimeout(later, wait);
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* @param {?} e
|
|
69
|
+
* @return {?}
|
|
70
|
+
*/
|
|
71
|
+
GridsterUtils.checkTouchEvent = /**
|
|
72
|
+
* @param {?} e
|
|
73
|
+
* @return {?}
|
|
74
|
+
*/
|
|
75
|
+
function (e) {
|
|
76
|
+
if (e.clientX === undefined && e.touches) {
|
|
77
|
+
if (e.touches && e.touches.length) {
|
|
78
|
+
e.clientX = e.touches[0].clientX;
|
|
79
|
+
e.clientY = e.touches[0].clientY;
|
|
80
|
+
}
|
|
81
|
+
else if (e.changedTouches && e.changedTouches.length) {
|
|
82
|
+
e.clientX = e.changedTouches[0].clientX;
|
|
83
|
+
e.clientY = e.changedTouches[0].clientY;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* @param {?} gridster
|
|
89
|
+
* @param {?} e
|
|
90
|
+
* @return {?}
|
|
91
|
+
*/
|
|
92
|
+
GridsterUtils.checkContentClassForEvent = /**
|
|
93
|
+
* @param {?} gridster
|
|
94
|
+
* @param {?} e
|
|
95
|
+
* @return {?}
|
|
96
|
+
*/
|
|
97
|
+
function (gridster, e) {
|
|
98
|
+
if (gridster.$options.draggable.ignoreContent) {
|
|
99
|
+
if (!GridsterUtils.checkContentClass(e.target, e.currentTarget, gridster.$options.draggable.dragHandleClass)) {
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
if (GridsterUtils.checkContentClass(e.target, e.currentTarget, gridster.$options.draggable.ignoreContentClass)) {
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return false;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* @param {?} gridster
|
|
112
|
+
* @param {?} e
|
|
113
|
+
* @return {?}
|
|
114
|
+
*/
|
|
115
|
+
GridsterUtils.checkContentClassForEmptyCellClickEvent = /**
|
|
116
|
+
* @param {?} gridster
|
|
117
|
+
* @param {?} e
|
|
118
|
+
* @return {?}
|
|
119
|
+
*/
|
|
120
|
+
function (gridster, e) {
|
|
121
|
+
return GridsterUtils.checkContentClass(e.target, e.currentTarget, gridster.$options.draggable.ignoreContentClass)
|
|
122
|
+
|| GridsterUtils.checkContentClass(e.target, e.currentTarget, gridster.$options.draggable.dragHandleClass);
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* @param {?} target
|
|
126
|
+
* @param {?} current
|
|
127
|
+
* @param {?} contentClass
|
|
128
|
+
* @return {?}
|
|
129
|
+
*/
|
|
130
|
+
GridsterUtils.checkContentClass = /**
|
|
131
|
+
* @param {?} target
|
|
132
|
+
* @param {?} current
|
|
133
|
+
* @param {?} contentClass
|
|
134
|
+
* @return {?}
|
|
135
|
+
*/
|
|
136
|
+
function (target, current, contentClass) {
|
|
137
|
+
if (!target || target === current) {
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
if (target.hasAttribute('class') && target.getAttribute('class').split(' ').indexOf(contentClass) > -1) {
|
|
141
|
+
return true;
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
return GridsterUtils.checkContentClass(target.parentNode, current, contentClass);
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* @param {?} a
|
|
149
|
+
* @param {?} b
|
|
150
|
+
* @return {?}
|
|
151
|
+
*/
|
|
152
|
+
GridsterUtils.compareItems = /**
|
|
153
|
+
* @param {?} a
|
|
154
|
+
* @param {?} b
|
|
155
|
+
* @return {?}
|
|
156
|
+
*/
|
|
157
|
+
function (a, b) {
|
|
158
|
+
if (a.y > b.y) {
|
|
159
|
+
return -1;
|
|
160
|
+
}
|
|
161
|
+
else if (a.y < b.y) {
|
|
162
|
+
return 1;
|
|
163
|
+
}
|
|
164
|
+
else if (a.x > b.x) {
|
|
165
|
+
return -1;
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
return 1;
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
GridsterUtils.decorators = [
|
|
172
|
+
{ type: Injectable }
|
|
173
|
+
];
|
|
174
|
+
return GridsterUtils;
|
|
175
|
+
}());
|
|
176
|
+
export { GridsterUtils };
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZHN0ZXJVdGlscy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNjaG5laWRlcmVzcy9kYXNoYm9hcmRmcmFtZXdvcmsvIiwic291cmNlcyI6WyJncmlkc3Rlci9saWIvZ3JpZHN0ZXJVdGlscy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXpDO0lBQUE7SUFrRkEsQ0FBQzs7Ozs7OztJQS9FUSxtQkFBSzs7Ozs7O0lBQVosVUFBYSxJQUFTLEVBQUUsSUFBUyxFQUFFLFVBQWU7UUFDaEQsS0FBSyxJQUFNLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDdEQsSUFBSSxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQy9CLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2hFO3FCQUFNO29CQUNMLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ25CO2FBQ0Y7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7Ozs7O0lBRU0sc0JBQVE7Ozs7O0lBQWYsVUFBZ0IsSUFBYyxFQUFFLElBQVk7O1lBQ3RDLE9BQVk7UUFDaEI7OztRQUFPOztnQkFDQyxPQUFPLEdBQUcsSUFBSTs7Z0JBQUUsSUFBSSxHQUFHLFNBQVM7O2dCQUNoQyxLQUFLOzs7WUFBRztnQkFDWixPQUFPLEdBQUcsSUFBSSxDQUFDO2dCQUNmLElBQUksQ0FBQyxL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Q0FBQztTQUNsRjtJQUNILENBQUM7Ozs7OztJQUVNLDBCQUFZOzs7OztJQUFuQixVQUFvQixDQUEyQixFQUFFLENBQTJCO1FBQzFFLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2IsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNYO2FBQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxDQUFDLENBQUM7U0FDVjthQUFNLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDWDthQUFNO1lBQ0wsT0FBTyxDQUFDLENBQUM7U0FDVjtJQUNILENBQUM7O2dCQWpGRixVQUFVOztJQWtGWCxvQkFBQztDQUFBLEFBbEZELElBa0ZDO1NBakZZLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtHcmlkc3RlckNvbXBvbmVudEludGVyZmFjZX0gZnJvbSAnLi9ncmlkc3Rlci5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgR3JpZHN0ZXJVdGlscyB7XHJcblxyXG4gIHN0YXRpYyBtZXJnZShvYmoxOiBhbnksIG9iajI6IGFueSwgcHJvcGVydGllczogYW55KSB7XHJcbiAgICBmb3IgKGNvbnN0IHAgaW4gb2JqMikge1xyXG4gICAgICBpZiAob2JqMltwXSAhPT0gdm9pZCAwICYmIHByb3BlcnRpZXMuaGFzT3duUHJvcGVydHkocCkpIHtcclxuICAgICAgICBpZiAodHlwZW9mIG9iajJbcF0gPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBvYmoxW3BdID0gR3JpZHN0ZXJVdGlscy5tZXJnZShvYmoxW3BdLCBvYmoyW3BdLCBwcm9wZXJ0aWVzW3BdKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgb2JqMVtwXSA9IG9iajJbcF07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9iajE7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZGVib3VuY2UoZnVuYzogRnVuY3Rpb24sIHdhaXQ6IG51bWJlcik6ICgpID0+IHZvaWQge1xyXG4gICAgbGV0IHRpbWVvdXQ6IGFueTtcclxuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLCBhcmdzID0gYXJndW1lbnRzO1xyXG4gICAgICBjb25zdCBsYXRlciA9IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aW1lb3V0ID0gbnVsbDtcclxuICAgICAgICBmdW5jLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xyXG4gICAgICB9O1xyXG4gICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XHJcbiAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KGxhdGVyLCB3YWl0KTtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgY2hlY2tUb3VjaEV2ZW50KGU6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGUuY2xpZW50WCA9PT0gdW5kZWZpbmVkICYmIGUudG91Y2hlcykge1xyXG4gICAgICBpZiAoZS50b3VjaGVzICYmIGUudG91Y2hlcy5sZW5ndGgpIHtcclxuICAgICAgICBlLmNsaWVudFggPSBlLnRvdWNoZXNbMF0uY2xpZW50WDtcclxuICAgICAgICBlLmNsaWVudFkgPSBlLnRvdWNoZXNbMF0uY2xpZW50WTtcclxuICAgICAgfSBlbHNlIGlmIChlLmNoYW5nZWRUb3VjaGVzICYmIGUuY2hhbmdlZFRvdWNoZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgZS5jbGllbnRYID0gZS5jaGFuZ2VkVG91Y2hlc1swXS5jbGllbnRYO1xyXG4gICAgICAgIGUuY2xpZW50WSA9IGUuY2hhbmdlZFRvdWNoZXNbMF0uY2xpZW50WTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNoZWNrQ29udGVudENsYXNzRm9yRXZlbnQoZ3JpZHN0ZXI6IEdyaWRzdGVyQ29tcG9uZW50SW50ZXJmYWNlLCBlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGlmIChncmlkc3Rlci4kb3B0aW9ucy5kcmFnZ2FibGUuaWdub3JlQ29udGVudCkge1xyXG4gICAgICBpZiAoIUdyaWRzdGVyVXRpbHMuY2hlY2tDb250ZW50Q2xhc3MoZS50YXJnZXQsIGUuY3VycmVudFRhcmdldCwgZ3JpZHN0ZXIuJG9wdGlvbnMuZHJhZ2dhYmxlLmRyYWdIYW5kbGVDbGFzcykpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKEdyaWRzdGVyVXRpbHMuY2hlY2tDb250ZW50Q2xhc3MoZS50YXJnZXQsIGUuY3VycmVudFRhcmdldCwgZ3JpZHN0ZXIuJG9wdGlvbnMuZHJhZ2dhYmxlLmlnbm9yZUNvbnRlbnRDbGFzcykpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNoZWNrQ29udGVudENsYXNzRm9yRW1wdHlDZWxsQ2xpY2tFdmVudChncmlkc3RlcjogR3JpZHN0ZXJDb21wb25lbnRJbnRlcmZhY2UsIGU6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEdyaWRzdGVyVXRpbHMuY2hlY2tDb250ZW50Q2xhc3MoZS50YXJnZXQsIGUuY3VycmVudFRhcmdldCwgZ3JpZHN0ZXIuJG9wdGlvbnMuZHJhZ2dhYmxlLmlnbm9yZUNvbnRlbnRDbGFzcylcclxuICAgICAgfHwgR3JpZHN0ZXJVdGlscy5jaGVja0NvbnRlbnRDbGFzcyhlLnRhcmdldCwgZS5jdXJyZW50VGFyZ2V0LCBncmlkc3Rlci4kb3B0aW9ucy5kcmFnZ2FibGUuZHJhZ0hhbmRsZUNsYXNzKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjaGVja0NvbnRlbnRDbGFzcyh0YXJnZXQ6IGFueSwgY3VycmVudDogYW55LCBjb250ZW50Q2xhc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0YXJnZXQgfHwgdGFyZ2V0ID09PSBjdXJyZW50KSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmICh0YXJnZXQuaGFzQXR0cmlidXRlKCdjbGFzcycpICYmIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykuc3BsaXQoJyAnKS5pbmRleE9mKGNvbnRlbnRDbGFzcykgPiAtMSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBHcmlkc3RlclV0aWxzLmNoZWNrQ29udGVudENsYXNzKHRhcmdldC5wYXJlbnROb2RlLCBjdXJyZW50LCBjb250ZW50Q2xhc3MpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNvbXBhcmVJdGVtcyhhOiB7IHg6IG51bWJlciwgeTogbnVtYmVyIH0sIGI6IHsgeDogbnVtYmVyLCB5OiBudW1iZXIgfSk6IG51bWJlciB7XHJcbiAgICBpZiAoYS55ID4gYi55KSB7XHJcbiAgICAgIHJldHVybiAtMTtcclxuICAgIH0gZWxzZSBpZiAoYS55IDwgYi55KSB7XHJcbiAgICAgIHJldHVybiAxO1xyXG4gICAgfSBlbHNlIGlmIChhLnggPiBiLngpIHtcclxuICAgICAgcmV0dXJuIC0xO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIDE7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|