@whitesev/pops 1.7.2 → 1.7.4

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/dist/index.umd.js CHANGED
@@ -38,1405 +38,37 @@
38
38
  return PopsCoreEnv.self;
39
39
  },
40
40
  };
41
- const OriginPrototype$1 = {
41
+ const OriginPrototype = {
42
42
  Object: {
43
43
  defineProperty: Object.defineProperty,
44
44
  },
45
45
  };
46
46
 
47
- // @ts-nocheck
48
-
49
- const AnyTouch = function () {
50
- return (function (global, factory) {
51
- return factory();
52
- })(globalThis || window, function () {
53
-
54
- /*! *****************************************************************************
55
- Copyright (c) Microsoft Corporation.
56
-
57
- Permission to use, copy, modify, and/or distribute this software for any
58
- purpose with or without fee is hereby granted.
59
-
60
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
61
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
62
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
63
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
64
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
65
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
66
- PERFORMANCE OF THIS SOFTWARE.
67
- ***************************************************************************** */
68
- /* global Reflect, Promise */
69
-
70
- var extendStatics = function (d, b) {
71
- extendStatics =
72
- Object.setPrototypeOf ||
73
- ({ __proto__: [] } instanceof Array &&
74
- function (d, b) {
75
- d.__proto__ = b;
76
- }) ||
77
- function (d, b) {
78
- for (var p in b) if (Object.hasOwnProperty.call(b, p)) d[p] = b[p];
79
- };
80
- return extendStatics(d, b);
81
- };
82
-
83
- function __extends(d, b) {
84
- if (typeof b !== "function" && b !== null)
85
- throw new TypeError(
86
- "Class extends value " + String(b) + " is not a constructor or null"
87
- );
88
- extendStatics(d, b);
89
- function __() {
90
- this.constructor = d;
91
- }
92
- d.prototype =
93
- b === null
94
- ? Object.create(b)
95
- : ((__.prototype = b.prototype), new __());
96
- }
97
-
98
- var __assign = function () {
99
- __assign =
100
- Object.assign ||
101
- function __assign(t) {
102
- for (var s, i = 1, n = arguments.length; i < n; i++) {
103
- s = arguments[i];
104
- for (var p in s) if (Object.hasOwnProperty.call(s, p)) t[p] = s[p];
105
- }
106
- return t;
107
- };
108
-
109
- return __assign.apply(this, arguments);
110
- };
111
-
112
- function __values(o) {
113
- var s = typeof Symbol === "function" && Symbol.iterator,
114
- m = s && o[s],
115
- i = 0;
116
- if (m) return m.call(o);
117
- if (o && typeof o.length === "number")
118
- return {
119
- next: function () {
120
- if (o && i >= o.length) o = void 0;
121
- return { value: o && o[i++], done: !o };
122
- },
123
- };
124
- throw new TypeError(
125
- s ? "Object is not iterable." : "Symbol.iterator is not defined."
126
- );
127
- }
128
-
129
- var AnyEvent = (function () {
130
- function AnyEvent() {
131
- this.__map = {};
132
- }
133
-
134
- AnyEvent.prototype.beforeEach = function (interceptor) {
135
- this.__interceptor = interceptor;
136
- };
137
-
138
- AnyEvent.prototype.on = function (typeOrTypes, listener) {
139
- var e_1, _a;
140
- var types = Array.isArray(typeOrTypes) ? typeOrTypes : [typeOrTypes];
141
- try {
142
- for (
143
- var types_1 = __values(types), types_1_1 = types_1.next();
144
- !types_1_1.done;
145
- types_1_1 = types_1.next()
146
- ) {
147
- var type = types_1_1.value;
148
-
149
- this.__map[type] = this.__map[type] || [];
150
-
151
- var listeners = this.__map[type];
152
- if (listeners) {
153
- listeners.push(listener);
154
- }
155
- }
156
- } catch (e_1_1) {
157
- e_1 = { error: e_1_1 };
158
- } finally {
159
- try {
160
- if (types_1_1 && !types_1_1.done && (_a = types_1.return))
161
- _a.call(types_1);
162
- } finally {
163
- if (e_1) throw e_1.error;
164
- }
165
- }
166
- return this;
167
- };
168
-
169
- AnyEvent.prototype.emit = function (type, payload, callback) {
170
- var _this = this;
171
- if (void 0 !== this.__interceptor) {
172
- this.__interceptor(type, function () {
173
- _this.__emit(type, payload);
174
- callback && callback();
175
- });
176
- } else {
177
- this.__emit(type, payload);
178
- callback && callback();
179
- }
180
- };
181
-
182
- AnyEvent.prototype.__emit = function (type, event) {
183
- var e_2, _a;
184
-
185
- var listeners = this.__map[type];
186
- if (
187
- Array.isArray(listeners) &&
188
- (listeners === null || listeners === void 0
189
- ? void 0
190
- : listeners.length)
191
- ) {
192
- try {
193
- for (
194
- var listeners_1 = __values(listeners),
195
- listeners_1_1 = listeners_1.next();
196
- !listeners_1_1.done;
197
- listeners_1_1 = listeners_1.next()
198
- ) {
199
- var listener = listeners_1_1.value;
200
- listener(event, type);
201
- }
202
- } catch (e_2_1) {
203
- e_2 = { error: e_2_1 };
204
- } finally {
205
- try {
206
- if (
207
- listeners_1_1 &&
208
- !listeners_1_1.done &&
209
- (_a = listeners_1.return)
210
- )
211
- _a.call(listeners_1);
212
- } finally {
213
- if (e_2) throw e_2.error;
214
- }
215
- }
216
- }
217
- this.event = event;
218
- };
219
-
220
- AnyEvent.prototype.off = function (type, listener) {
221
- var listeners = this.__map[type];
222
- if (void 0 !== listeners) {
223
- if (void 0 === listener) {
224
- delete this.__map[type];
225
- } else {
226
- var index = listeners.findIndex(function (cb) {
227
- return cb === listener;
228
- });
229
- listeners.splice(index, 1);
230
- }
231
- }
232
- };
233
- AnyEvent.prototype.destroy = function () {
234
- this.__map = {};
235
- };
236
- return AnyEvent;
237
- })();
238
-
239
- var TOUCH_START = "touchstart";
240
- var TOUCH_MOVE = "touchmove";
241
- var TOUCH_END = "touchend";
242
- var TOUCH_CANCEL = "touchcancel";
243
- var MOUSE_UP = "mouseup";
244
- var MOUSE_MOVE = "mousemove";
245
- var MOUSE_DOWN = "mousedown";
246
- var TYPE_START$1 = "start";
247
- var TYPE_MOVE$1 = "move";
248
- var TYPE_END$1 = "end";
249
-
250
- function isFunction(input) {
251
- return "[object Function]" === Object.prototype.toString.call(input);
252
- }
253
-
254
- var CLIENT_X = "clientX";
255
- var CLIENT_Y = "clientY";
256
- var COMPUTE_INTERVAL = 16;
257
- var TYPE_START = "start";
258
- var TYPE_MOVE = "move";
259
- var TYPE_CANCEL = "cancel";
260
- var TYPE_END = "end";
261
- var DIRECTION_LEFT = "left";
262
- var DIRECTION_RIGHT = "right";
263
- var DIRECTION_UP = "up";
264
- var DIRECTION_DOWN = "down";
265
-
266
- var _a;
267
- var STATUS_CODE_AND_NAME_MAP =
268
- ((_a = {}),
269
- (_a[4] = TYPE_START),
270
- (_a[5] = TYPE_MOVE),
271
- (_a[1] = TYPE_END),
272
- (_a[3] = TYPE_CANCEL),
273
- _a);
274
-
275
- function getStatusName(code) {
276
- return STATUS_CODE_AND_NAME_MAP[code];
277
- }
278
-
279
- function flow(isVaild, lastStatus, phase) {
280
- var _a, _b, _c, _d, _e, _f, _g;
281
- var STATE_MAP = {
282
- 1:
283
- ((_a = {}),
284
- (_a[0] = ((_b = {}), (_b[TYPE_MOVE] = 4), _b)),
285
- (_a[4] =
286
- ((_c = {}),
287
- (_c[TYPE_MOVE] = 5),
288
- (_c[TYPE_END] = 1),
289
- (_c[TYPE_CANCEL] = 3),
290
- _c)),
291
- (_a[5] =
292
- ((_d = {}),
293
- (_d[TYPE_MOVE] = 5),
294
- (_d[TYPE_END] = 1),
295
- (_d[TYPE_CANCEL] = 3),
296
- _d)),
297
- _a),
298
- 0:
299
- ((_e = {}),
300
- (_e[4] =
301
- ((_f = {}),
302
- (_f[TYPE_MOVE] = 2),
303
- (_f[TYPE_END] = 1),
304
- (_f[TYPE_CANCEL] = 3),
305
- _f)),
306
- (_e[5] =
307
- ((_g = {}),
308
- (_g[TYPE_START] = 2),
309
- (_g[TYPE_MOVE] = 2),
310
- (_g[TYPE_END] = 1),
311
- (_g[TYPE_CANCEL] = 3),
312
- _g)),
313
- _e),
314
- };
315
-
316
- var map = STATE_MAP[Number(isVaild)][lastStatus];
317
- return (void 0 !== map && map[phase]) || 0;
318
- }
319
-
320
- function resetState(context) {
321
- if ([1, 3, 2].includes(context.state)) {
322
- context.state = 0;
323
- }
324
- }
325
-
326
- function isMoveOrEndOrCancel(state) {
327
- return [5, 1, 3].includes(state);
328
- }
329
-
330
- function isDisabled(context) {
331
- if (context.disabled) {
332
- context.state = 0;
333
- return true;
334
- }
335
- }
336
-
337
- function createPluginContext(defaultOptions, options) {
338
- return __assign(__assign(__assign({}, defaultOptions), options), {
339
- state: 0,
340
- disabled: false,
341
- });
342
- }
343
-
344
- function round2(n) {
345
- return Math.round(n * 100) / 100;
346
- }
347
-
348
- function inputCreator() {
349
- var id = 0;
350
- var prevInput;
351
-
352
- var activeInput;
353
-
354
- var startInput;
355
-
356
- var startMultiInput;
357
-
358
- return function (basicsInput) {
359
- prevInput = activeInput;
360
- if (void 0 !== basicsInput) {
361
- id = Number.MAX_SAFE_INTEGER > id ? ++id : 1;
362
- var pureInput = extendInput(basicsInput, id);
363
- activeInput = pureInput;
364
- var isStart = pureInput.isStart,
365
- pointLength = pureInput.pointLength;
366
- if (isStart) {
367
- startInput = pureInput;
368
- prevInput = void 0;
369
- if (1 < pointLength) {
370
- startMultiInput = pureInput;
371
- } else {
372
- startMultiInput = void 0;
373
- }
374
- }
375
- return __assign(__assign({}, pureInput), {
376
- prevInput: prevInput,
377
-
378
- startMultiInput: startMultiInput,
379
-
380
- startInput: startInput,
381
- });
382
- }
383
- };
384
- }
385
-
386
- function getCenter(points) {
387
- var length = points.length;
388
- if (0 < length) {
389
- if (1 === length) {
390
- var _a = points[0],
391
- clientX = _a.clientX,
392
- clientY = _a.clientY;
393
- return { x: Math.round(clientX), y: Math.round(clientY) };
394
- }
395
- var countPoint = points.reduce(
396
- function (countPoint, point) {
397
- countPoint.x += point[CLIENT_X];
398
- countPoint.y += point[CLIENT_Y];
399
- return countPoint;
400
- },
401
- { x: 0, y: 0 }
402
- );
403
- return {
404
- x: Math.round(countPoint.x / length),
405
- y: Math.round(countPoint.y / length),
406
- };
407
- }
408
- }
409
-
410
- function extendInput(basicsInput, id) {
411
- var phase = basicsInput.phase,
412
- points = basicsInput.points,
413
- changedPoints = basicsInput.changedPoints,
414
- nativeEvent = basicsInput.nativeEvent;
415
- var pointLength = points.length;
416
- var isStart = TYPE_START === phase;
417
- var isEnd =
418
- (TYPE_END === phase && 0 === pointLength) || TYPE_CANCEL === phase;
419
- var timestamp = Date.now();
420
- var _a = getCenter(points) || getCenter(changedPoints),
421
- x = _a.x,
422
- y = _a.y;
423
- var currentTarget = nativeEvent.currentTarget;
424
- return Object.assign(basicsInput, {
425
- id: id,
426
- x: x,
427
- y: y,
428
- timestamp: timestamp,
429
- isStart: isStart,
430
- isEnd: isEnd,
431
- pointLength: pointLength,
432
- currentTarget: currentTarget,
433
-
434
- getOffset: function (el) {
435
- if (el === void 0) {
436
- el = currentTarget;
437
- }
438
- var rect = el.getBoundingClientRect();
439
- return {
440
- x: x - Math.round(rect.left),
441
- y: y - Math.round(rect.top),
442
- };
443
- },
444
- });
445
- }
446
-
447
- function mouse() {
448
- var prevPoints;
449
- var isPressed = false;
450
-
451
- var _target = null;
452
- var createInput = inputCreator();
453
-
454
- return function (event) {
455
- var clientX = event.clientX,
456
- clientY = event.clientY,
457
- type = event.type,
458
- button = event.button,
459
- target = event.target;
460
- var points = [{ clientX: clientX, clientY: clientY, target: target }];
461
- var phase;
462
- if (MOUSE_DOWN === type && 0 === button) {
463
- _target = target;
464
- isPressed = true;
465
- phase = TYPE_START$1;
466
- } else if (isPressed) {
467
- if (MOUSE_MOVE === type) {
468
- phase = TYPE_MOVE$1;
469
- } else if (MOUSE_UP === type) {
470
- points = [];
471
- phase = TYPE_END$1;
472
- isPressed = false;
473
- }
474
- } else {
475
- return;
476
- }
477
-
478
- var changedPoints = prevPoints || [
479
- { clientX: clientX, clientY: clientY, target: target },
480
- ];
481
- prevPoints = [{ clientX: clientX, clientY: clientY, target: target }];
482
- if (void 0 !== phase) {
483
- return createInput({
484
- phase: phase,
485
- changedPoints: changedPoints,
486
- points: points,
487
-
488
- target: _target,
489
-
490
- targets: [_target],
491
- nativeEvent: event,
492
- });
493
- }
494
- };
495
- }
496
-
497
- function touch(el) {
498
- var createInput = inputCreator();
499
-
500
- return function (event) {
501
- var targets = [];
502
-
503
- var points = [];
504
- Array.from(event.touches).forEach(function (_a) {
505
- var clientX = _a.clientX,
506
- clientY = _a.clientY,
507
- target = _a.target;
508
- if (el === null || el === void 0 ? void 0 : el.contains(target)) {
509
- targets.push(target);
510
- points.push({
511
- clientX: clientX,
512
- clientY: clientY,
513
- target: target,
514
- });
515
- }
516
- });
517
- var changedPoints = Array.from(event.changedTouches).map(function (_a) {
518
- var clientX = _a.clientX,
519
- clientY = _a.clientY,
520
- target = _a.target;
521
- return { clientX: clientX, clientY: clientY, target: target };
522
- });
523
- return createInput({
524
- phase: event.type.replace("touch", ""),
525
- changedPoints: changedPoints,
526
-
527
- points: points,
528
- nativeEvent: event,
529
- target: event.target,
530
-
531
- targets: targets,
532
- });
533
- };
534
- }
535
-
536
- function dispatchDomEvent(typeName, el, payload, eventInit) {
537
- var data = {};
538
- for (var key in payload) {
539
- if (!["target", "currentTarget", "type"].includes(key)) {
540
- data[key] = payload[key];
541
- }
542
- }
543
-
544
- var event;
545
- if (document.createEvent) {
546
- event = document.createEvent("HTMLEvents");
547
- event.initEvent(
548
- typeName,
549
- eventInit === null || eventInit === void 0
550
- ? void 0
551
- : eventInit.bubbles,
552
- eventInit === null || eventInit === void 0
553
- ? void 0
554
- : eventInit.cancelable
555
- );
556
- } else {
557
- event = new Event(typeName, eventInit);
558
- }
559
- Object.assign(event, data, {
560
- match: function () {
561
- return (
562
- payload.targets &&
563
- 0 < payload.targets.length &&
564
- payload.targets.every(function (target) {
565
- return event.currentTarget.contains(target);
566
- })
567
- );
568
- },
569
- });
570
- return el.dispatchEvent(event);
571
- }
572
-
573
- function canPreventDefault(event, options) {
574
- var preventDefault = options.preventDefault;
575
- if (isFunction(preventDefault)) {
576
- return preventDefault(event);
577
- } else {
578
- return !!preventDefault;
579
- }
580
- }
581
-
582
- var ELEMENT_TYPES = [
583
- TOUCH_START,
584
- TOUCH_MOVE,
585
- TOUCH_END,
586
- TOUCH_CANCEL,
587
- MOUSE_DOWN,
588
- ];
589
- var WINDOW_TYPES = [MOUSE_MOVE, MOUSE_UP];
590
-
591
- function bindElement(el, catchEvent, options) {
592
- ELEMENT_TYPES.forEach(function (type) {
593
- el.addEventListener(type, catchEvent, options);
594
- });
595
- WINDOW_TYPES.forEach(function (type) {
596
- window.addEventListener(type, catchEvent, options);
597
- });
598
- return function () {
599
- ELEMENT_TYPES.forEach(function (types) {
600
- el.removeEventListener(types, catchEvent);
601
- });
602
- WINDOW_TYPES.forEach(function (type) {
603
- window.removeEventListener(type, catchEvent);
604
- });
605
- };
606
- }
607
-
608
- var TYPE_COMPUTED = "computed";
609
- var DEFAULT_OPTIONS$6 = {
610
- domEvents: { bubbles: true, cancelable: true },
611
-
612
- preventDefault: function (event) {
613
- if (event.target && "tagName" in event.target) {
614
- var tagName = event.target.tagName;
615
- return !/^(?:INPUT|TEXTAREA|BUTTON|SELECT)$/.test(tagName);
616
- }
617
- return false;
618
- },
619
- };
620
- var TYPE_UNBIND = "u";
621
- var TYPE_INPUT = "input";
622
- var TYPE_AT_AFTER = "at:after";
623
- var default_1$1 = (function (_super) {
624
- __extends(default_1, _super);
625
-
626
- function default_1(el, options) {
627
- var _a;
628
-
629
- var _this = _super.call(this) || this;
630
-
631
- _this.v = "2.1.3";
632
-
633
- _this.__computeFunctionList = [];
634
-
635
- _this.__computeFunctionCreatorList = [];
636
-
637
- _this.__pluginContexts = [];
638
- _this.__isIgnoreMouse = false;
639
-
640
- _this.el = el;
641
- _this.c = {};
642
- _this.__options = __assign(__assign({}, DEFAULT_OPTIONS$6), options);
643
-
644
- var createInputFromTouch = touch(_this.el);
645
- var createInputFromMouse = mouse();
646
-
647
- _this.__inputCreatorMap =
648
- ((_a = {}),
649
- (_a[TOUCH_START] = createInputFromTouch),
650
- (_a[TOUCH_MOVE] = createInputFromTouch),
651
- (_a[TOUCH_END] = createInputFromTouch),
652
- (_a[TOUCH_CANCEL] = createInputFromTouch),
653
- (_a[MOUSE_DOWN] = createInputFromMouse),
654
- (_a[MOUSE_MOVE] = createInputFromMouse),
655
- (_a[MOUSE_UP] = createInputFromMouse),
656
- _a);
657
-
658
- _this.on(TYPE_AT_AFTER, function (payload) {
659
- var target = payload.target,
660
- __type = payload.__type;
661
- var domEvents = _this.__options.domEvents;
662
-
663
- if (!!domEvents && void 0 !== _this.el && !!target) {
664
- dispatchDomEvent(__type, target, payload, domEvents);
665
- dispatchDomEvent(TYPE_AT_AFTER, target, payload, domEvents);
666
- }
667
- });
668
- if (void 0 !== el) {
669
- el.style.webkitTapHighlightColor = "rgba(0,0,0,0)";
670
- var supportsPassive_1 = false;
671
- try {
672
- var opts = {};
673
- OriginPrototype.Object.defineProperty(opts, "passive", {
674
- get: function () {
675
- supportsPassive_1 = true;
676
- },
677
- });
678
- window.addEventListener(
679
- "_",
680
- function () {
681
- return void 0;
682
- },
683
- opts
684
- );
685
- } catch (_b) {}
686
-
687
- _this.on(
688
- TYPE_UNBIND,
689
- bindElement(
690
- el,
691
- _this.catchEvent.bind(_this),
692
- false === _this.__options.preventDefault && supportsPassive_1
693
- ? { passive: true }
694
- : { passive: false }
695
- )
696
- );
697
- }
698
- return _this;
699
- }
700
-
701
- default_1.prototype.use = function (plugin, pluginOptions) {
702
- this.__pluginContexts.push(plugin(this, pluginOptions));
703
- };
704
-
705
- default_1.prototype.catchEvent = function (event) {
706
- var input = this.__inputCreatorMap[event.type](event);
707
- if (void 0 !== input) {
708
- var stopPropagation = function () {
709
- return event.stopPropagation();
710
- };
711
- var stopImmediatePropagation = function () {
712
- return event.stopImmediatePropagation();
713
- };
714
- var preventDefault = function () {
715
- return event.preventDefault();
716
- };
717
- if (canPreventDefault(event, this.__options)) {
718
- preventDefault();
719
- } else {
720
- if ("touchstart" === event.type) {
721
- this.__isIgnoreMouse = true;
722
- } else if ("touchmove" === event.type) {
723
- this.__isIgnoreMouse = false;
724
- }
725
- if (this.__isIgnoreMouse && event.type.startsWith("mouse")) {
726
- if ("mouseup" === event.type) {
727
- this.__isIgnoreMouse = false;
728
- }
729
- return;
730
- }
731
- }
732
-
733
- this.emit(TYPE_INPUT, input);
734
- this.emit2("at:".concat(input.phase), input, {});
735
- var computed_1 = {};
736
-
737
- this.__computeFunctionList.forEach(function (compute) {
738
- var result = compute(input, computed_1);
739
- if (void 0 !== result) {
740
- for (var key in result) {
741
- computed_1[key] = result[key];
742
- }
743
- }
744
- });
745
-
746
- this.emit(
747
- TYPE_COMPUTED,
748
- __assign(__assign(__assign({}, input), computed_1), {
749
- stopPropagation: stopPropagation,
750
- stopImmediatePropagation: stopImmediatePropagation,
751
- preventDefault: preventDefault,
752
- })
753
- );
754
- }
755
- };
756
- default_1.prototype.compute = function (
757
- computeFunctionCreatorList,
758
-
759
- callback
760
- ) {
761
- var e_1, _a;
762
- try {
763
- for (
764
- var computeFunctionCreatorList_1 = __values(
765
- computeFunctionCreatorList
766
- ),
767
- computeFunctionCreatorList_1_1 =
768
- computeFunctionCreatorList_1.next();
769
- !computeFunctionCreatorList_1_1.done;
770
- computeFunctionCreatorList_1_1 = computeFunctionCreatorList_1.next()
771
- ) {
772
- var computeFunctionCreator = computeFunctionCreatorList_1_1.value;
773
- if (
774
- !this.__computeFunctionCreatorList.includes(
775
- computeFunctionCreator
776
- )
777
- ) {
778
- this.__computeFunctionCreatorList.push(computeFunctionCreator);
779
-
780
- this.__computeFunctionList.push(computeFunctionCreator());
781
- }
782
- }
783
- } catch (e_1_1) {
784
- e_1 = { error: e_1_1 };
785
- } finally {
786
- try {
787
- if (
788
- computeFunctionCreatorList_1_1 &&
789
- !computeFunctionCreatorList_1_1.done &&
790
- (_a = computeFunctionCreatorList_1.return)
791
- )
792
- _a.call(computeFunctionCreatorList_1);
793
- } finally {
794
- if (e_1) throw e_1.error;
795
- }
796
- }
797
-
798
- this.on(TYPE_COMPUTED, callback);
799
- };
800
-
801
- default_1.prototype.beforeEach = function (interceptor) {
802
- var _this = this;
803
-
804
- _super.prototype.beforeEach.call(this, function (type, next) {
805
- var _a;
806
- if ((_a = _this.c) === null || _a === void 0 ? void 0 : _a.name) {
807
- interceptor(type, next);
808
- } else {
809
- next();
810
- }
811
- });
812
- };
813
-
814
- default_1.prototype.get = function (name) {
815
- return this.__pluginContexts.find(function (pluginContext) {
816
- return name === pluginContext.name;
817
- });
818
- };
819
-
820
- default_1.prototype.set = function (newOptions) {
821
- this.__options = __assign(__assign({}, this.__options), newOptions);
822
- };
823
-
824
- default_1.prototype.emit2 = function (type, payload, pluginContext) {
825
- var _this = this;
826
- this.c = pluginContext;
827
-
828
- this.emit(
829
- type,
830
- __assign(__assign({}, payload), { type: type }),
831
- function () {
832
- _this.emit(
833
- TYPE_AT_AFTER,
834
- __assign(__assign({}, payload), { name: type, __type: type })
835
- );
836
- }
837
- );
838
- };
839
- default_1.prototype.destroy = function () {
840
- this.emit(TYPE_UNBIND);
841
- _super.prototype.destroy.call(this);
842
- };
843
- return default_1;
844
- })(AnyEvent);
845
-
846
- var getVLength = function (v) {
847
- return Math.sqrt(v.x * v.x + v.y * v.y);
848
- };
849
-
850
- var getDotProduct = function (v1, v2) {
851
- return v1.x * v2.x + v1.y * v2.y;
852
- };
853
-
854
- var getRadian = function (v1, v2) {
855
- var mr = getVLength(v1) * getVLength(v2);
856
- if (mr === 0) return 0;
857
- var r = getDotProduct(v1, v2) / mr;
858
- if (r > 1) r = 1;
859
- return Math.acos(r);
860
- };
861
-
862
- var getCross = function (v1, v2) {
863
- return v1.x * v2.y - v2.x * v1.y;
864
- };
865
-
866
- var radianToAngle = function (radian) {
867
- return (radian / Math.PI) * 180;
868
- };
869
-
870
- var getAngle = function (v1, v2) {
871
- var angle = getRadian(v1, v2);
872
- if (getCross(v1, v2) > 0) {
873
- angle *= -1;
874
- }
875
- return radianToAngle(angle);
876
- };
877
-
878
- var getDirection = function (x, y) {
879
- if (0 === x && 0 === y) {
880
- return;
881
- }
882
- if (Math.abs(x) >= Math.abs(y)) {
883
- return 0 < x ? DIRECTION_RIGHT : DIRECTION_LEFT;
884
- } else {
885
- return 0 < y ? DIRECTION_DOWN : DIRECTION_UP;
886
- }
887
- };
888
-
889
- function ComputeAngle() {
890
- var angle = 0;
891
- var deltaAngle = 0;
892
-
893
- return function (input, computed) {
894
- var prevVecotr = computed.prevVecotr,
895
- startVecotr = computed.startVecotr,
896
- activeVecotr = computed.activeVecotr;
897
- if (activeVecotr) {
898
- deltaAngle = Math.round(getAngle(activeVecotr, prevVecotr));
899
- angle = Math.round(getAngle(activeVecotr, startVecotr));
900
- }
901
- return { angle: angle, deltaAngle: deltaAngle };
902
- };
903
- }
904
-
905
- function ComputeDeltaXY() {
906
- return function (input) {
907
- var prevInput = input.prevInput;
908
- var deltaX = 0;
909
- var deltaY = 0;
910
- var deltaXYAngle = 0;
911
- if (void 0 !== prevInput) {
912
- deltaX = input.x - prevInput.x;
913
- deltaY = input.y - prevInput.y;
914
- if (0 !== deltaX || 0 !== deltaY) {
915
- var deltaXY = Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY, 2));
916
- deltaXYAngle = Math.round(
917
- radianToAngle(Math.acos(Math.abs(deltaX) / deltaXY))
918
- );
919
- }
920
- }
921
- return {
922
- deltaX: deltaX,
923
- deltaY: deltaY,
924
- deltaXYAngle: deltaXYAngle,
925
- };
926
- };
927
- }
928
-
929
- function ComputeDistance() {
930
- var displacementX = 0;
931
- var displacementY = 0;
932
- var distanceX = 0;
933
- var distanceY = 0;
934
- var distance = 0;
935
-
936
- var overallDirection;
937
-
938
- return function (input) {
939
- var phase = input.phase,
940
- startInput = input.startInput;
941
- if (TYPE_START === phase) {
942
- displacementX = 0;
943
- displacementY = 0;
944
- distanceX = 0;
945
- distanceY = 0;
946
- distance = 0;
947
- } else if (TYPE_MOVE === phase) {
948
- displacementX = Math.round(
949
- input.points[0][CLIENT_X] - startInput.points[0][CLIENT_X]
950
- );
951
- displacementY = Math.round(
952
- input.points[0][CLIENT_Y] - startInput.points[0][CLIENT_Y]
953
- );
954
- distanceX = Math.abs(displacementX);
955
- distanceY = Math.abs(displacementY);
956
- distance = Math.round(getVLength({ x: distanceX, y: distanceY }));
957
- overallDirection = getDirection(displacementX, displacementY);
958
- }
959
- return {
960
- displacementX: displacementX,
961
- displacementY: displacementY,
962
- distanceX: distanceX,
963
- distanceY: distanceY,
964
- distance: distance,
965
-
966
- overallDirection: overallDirection,
967
- };
968
- };
969
- }
970
-
971
- function ComputeScale() {
972
- var scale = 1;
973
-
974
- return function (input, computed) {
975
- var deltaScale = 1;
976
- var prevVecotr = computed.prevVecotr,
977
- startVecotr = computed.startVecotr,
978
- activeVecotr = computed.activeVecotr;
979
- if (activeVecotr) {
980
- deltaScale = round2(
981
- getVLength(activeVecotr) / getVLength(prevVecotr)
982
- );
983
- scale = round2(getVLength(activeVecotr) / getVLength(startVecotr));
984
- }
985
- return { scale: scale, deltaScale: deltaScale };
986
- };
987
- }
988
-
989
- function ComputeVAndDir() {
990
- var velocityX = 0;
991
- var velocityY = 0;
992
- var speedX = 0;
993
- var speedY = 0;
994
-
995
- var direction;
996
-
997
- var lastValidInput;
998
-
999
- return function (input) {
1000
- if (void 0 !== input) {
1001
- lastValidInput = lastValidInput || input.startInput;
1002
- var deltaTime = input.timestamp - lastValidInput.timestamp;
1003
- if (COMPUTE_INTERVAL < deltaTime) {
1004
- var deltaX = input.x - lastValidInput.x;
1005
- var deltaY = input.y - lastValidInput.y;
1006
- speedX = Math.round((deltaX / deltaTime) * 100) / 100;
1007
- speedY = Math.round((deltaY / deltaTime) * 100) / 100;
1008
- velocityX = Math.abs(speedX);
1009
- velocityY = Math.abs(speedY);
1010
- direction = getDirection(deltaX, deltaY);
1011
- lastValidInput = input;
1012
- }
1013
- }
1014
- return {
1015
- velocityX: velocityX,
1016
- velocityY: velocityY,
1017
- speedX: speedX,
1018
- speedY: speedY,
1019
-
1020
- direction: direction,
1021
- };
1022
- };
1023
- }
1024
-
1025
- function ComputeMaxLength() {
1026
- var maxPointLength = 0;
1027
-
1028
- return function (input) {
1029
- var phase = input.phase;
1030
- if (TYPE_START === phase) {
1031
- maxPointLength = input.pointLength;
1032
- }
1033
- return { maxPointLength: maxPointLength };
1034
- };
1035
- }
1036
-
1037
- function computeVector(input) {
1038
- return {
1039
- x: input.points[1][CLIENT_X] - input.points[0][CLIENT_X],
1040
- y: input.points[1][CLIENT_Y] - input.points[0][CLIENT_Y],
1041
- };
1042
- }
1043
- function ComputeVectorForMutli() {
1044
- var startVecotr;
1045
-
1046
- var prevVecotr;
1047
- var activeVecotr;
1048
-
1049
- return function (input) {
1050
- var prevInput = input.prevInput,
1051
- startMultiInput = input.startMultiInput;
1052
- if (
1053
- void 0 !== startMultiInput &&
1054
- void 0 !== prevInput &&
1055
- input.id !== startMultiInput.id &&
1056
- 1 < prevInput.pointLength &&
1057
- 1 < input.pointLength
1058
- ) {
1059
- startVecotr = computeVector(startMultiInput);
1060
- prevVecotr = computeVector(prevInput);
1061
- activeVecotr = computeVector(input);
1062
- } else {
1063
- activeVecotr = void 0;
1064
- }
1065
- return {
1066
- startVecotr: startVecotr,
1067
-
1068
- prevVecotr: prevVecotr,
1069
- activeVecotr: activeVecotr,
1070
- };
1071
- };
1072
- }
1073
-
1074
- var DEFAULT_OPTIONS$5 = {
1075
- name: "tap",
1076
- pointLength: 1,
1077
- tapTimes: 1,
1078
- waitNextTapTime: 300,
1079
- maxDistance: 2,
1080
- maxDistanceFromPrevTap: 9,
1081
- maxPressTime: 250,
1082
- };
1083
-
1084
- function tap(at, options) {
1085
- var context = createPluginContext(DEFAULT_OPTIONS$5, options);
1086
- var tapCount = 0;
1087
-
1088
- var prevTapPoint;
1089
-
1090
- var prevTapTime;
1091
-
1092
- var countDownToFailTimer;
1093
- function reset() {
1094
- tapCount = 0;
1095
- prevTapPoint = void 0;
1096
- prevTapTime = void 0;
1097
- }
1098
- function countDownToFail() {
1099
- countDownToFailTimer = setTimeout(function () {
1100
- context.state = 2;
1101
- reset();
1102
- }, context.waitNextTapTime);
1103
- }
1104
-
1105
- function isValidDistanceFromPrevTap(center, options) {
1106
- if (void 0 !== prevTapPoint) {
1107
- var distanceFromPreviousTap = getVLength({
1108
- x: center.x - prevTapPoint.x,
1109
-
1110
- y: center.y - prevTapPoint.y,
1111
- });
1112
- prevTapPoint = center;
1113
- return options.maxDistanceFromPrevTap >= distanceFromPreviousTap;
1114
- } else {
1115
- prevTapPoint = center;
1116
- return true;
1117
- }
1118
- }
1119
-
1120
- function isValidInterval(waitNextTapTime) {
1121
- var now = performance.now();
1122
-
1123
- if (void 0 === prevTapTime) {
1124
- prevTapTime = now;
1125
- return true;
1126
- } else {
1127
- var interval = now - prevTapTime;
1128
- prevTapTime = now;
1129
- return interval < waitNextTapTime;
1130
- }
1131
- }
1132
-
1133
- at.compute([ComputeDistance, ComputeMaxLength], function (computed) {
1134
- if (isDisabled(context)) return;
1135
- var phase = computed.phase,
1136
- x = computed.x,
1137
- y = computed.y;
1138
- if (TYPE_END !== phase) return;
1139
- context.state = 0;
1140
- if (test()) {
1141
- clearTimeout(countDownToFailTimer);
1142
- if (
1143
- isValidDistanceFromPrevTap({ x: x, y: y }, context) &&
1144
- isValidInterval(context.waitNextTapTime)
1145
- ) {
1146
- tapCount++;
1147
- } else {
1148
- tapCount = 1;
1149
- }
1150
- if (0 === tapCount % context.tapTimes) {
1151
- context.state = 1;
1152
- at.emit2(context.name, computed, context);
1153
- reset();
1154
- } else {
1155
- countDownToFail();
1156
- }
1157
- } else {
1158
- reset();
1159
- context.state = 2;
1160
- }
1161
- function test() {
1162
- var startInput = computed.startInput,
1163
- pointLength = computed.pointLength,
1164
- timestamp = computed.timestamp;
1165
- var deltaTime = timestamp - startInput.timestamp;
1166
- var distance = computed.distance,
1167
- maxPointLength = computed.maxPointLength;
1168
- return (
1169
- maxPointLength === context.pointLength &&
1170
- 0 === pointLength &&
1171
- context.maxDistance >= distance &&
1172
- context.maxPressTime > deltaTime
1173
- );
1174
- }
1175
- });
1176
- return context;
1177
- }
1178
-
1179
- var DEFAULT_OPTIONS$4 = { name: "pan", threshold: 10, pointLength: 1 };
1180
-
1181
- function pan(at, options) {
1182
- var context = createPluginContext(DEFAULT_OPTIONS$4, options);
1183
- at.compute(
1184
- [ComputeVAndDir, ComputeDistance, ComputeDeltaXY],
1185
-
1186
- function (computed) {
1187
- resetState(context);
1188
- if (isDisabled(context)) return;
1189
- var isValid = test();
1190
- context.state = flow(isValid, context.state, computed.phase);
1191
- if (isValid || isMoveOrEndOrCancel(context.state)) {
1192
- var name_1 = context.name;
1193
- at.emit2(name_1, computed, context);
1194
- at.emit2(name_1 + getStatusName(context.state), computed, context);
1195
- if (
1196
- ![TYPE_END, TYPE_CANCEL].includes(computed.phase) &&
1197
- computed.direction
1198
- ) {
1199
- at.emit2(name_1 + computed.direction, computed, context);
1200
- }
1201
- }
1202
- function test() {
1203
- var pointLength = computed.pointLength,
1204
- distance = computed.distance;
1205
- return (
1206
- context.pointLength === pointLength &&
1207
- context.threshold <= distance
1208
- );
1209
- }
1210
- }
1211
- );
1212
- return context;
1213
- }
1214
-
1215
- var DEFAULT_OPTIONS$3 = {
1216
- name: "swipe",
1217
- threshold: 10,
1218
- velocity: 0.3,
1219
- pointLength: 1,
1220
- };
1221
-
1222
- function swipe(at, options) {
1223
- var context = createPluginContext(DEFAULT_OPTIONS$3, options);
1224
- at.compute(
1225
- [ComputeDistance, ComputeVAndDir, ComputeMaxLength],
1226
-
1227
- function (computed) {
1228
- context.state = 0;
1229
- if (context.disabled) return;
1230
- if (test()) {
1231
- var name_1 = context.name;
1232
- context.state = 1;
1233
- at.emit2(name_1, computed, context);
1234
- at.emit2(name_1 + computed.direction, computed, context);
1235
- }
1236
- function test() {
1237
- if (TYPE_END !== computed.phase) return false;
1238
- var velocityX = computed.velocityX,
1239
- velocityY = computed.velocityY,
1240
- distance = computed.distance,
1241
- maxPointLength = computed.maxPointLength;
1242
- return (
1243
- maxPointLength === context.pointLength &&
1244
- 0 === computed.points.length &&
1245
- context.threshold < distance &&
1246
- context.velocity < Math.max(velocityX, velocityY)
1247
- );
1248
- }
1249
- }
1250
- );
1251
- return context;
1252
- }
1253
-
1254
- var DEFAULT_OPTIONS$2 = {
1255
- name: "press",
1256
- pointLength: 1,
1257
- maxDistance: 9,
1258
- minPressTime: 251,
1259
- };
1260
-
1261
- function press(at, options) {
1262
- var context = createPluginContext(DEFAULT_OPTIONS$2, options);
1263
- var timeoutId = 0;
1264
-
1265
- at.compute([ComputeDistance], function (computed) {
1266
- if (isDisabled(context)) return;
1267
- var phase = computed.phase,
1268
- startInput = computed.startInput,
1269
- pointLength = computed.pointLength;
1270
- if (TYPE_START === phase && context.pointLength === pointLength) {
1271
- resetState(context);
1272
- clearTimeout(timeoutId);
1273
- timeoutId = setTimeout(function () {
1274
- context.state = 1;
1275
- at.emit2(context.name, computed, context);
1276
- }, context.minPressTime);
1277
- } else if (TYPE_END === phase && 1 === context.state) {
1278
- at.emit2(
1279
- "".concat(context.name).concat(DIRECTION_UP),
1280
- computed,
1281
- context
1282
- );
1283
- } else if (1 !== context.state) {
1284
- var deltaTime = computed.timestamp - startInput.timestamp;
1285
- if (
1286
- !test() ||
1287
- (context.minPressTime > deltaTime &&
1288
- [TYPE_END, TYPE_CANCEL].includes(phase))
1289
- ) {
1290
- clearTimeout(timeoutId);
1291
- context.state = 2;
1292
- }
1293
- }
1294
- function test() {
1295
- var distance = computed.distance;
1296
- return distance && context.maxDistance > distance;
1297
- }
1298
- });
1299
- return context;
1300
- }
1301
-
1302
- var DEFAULT_OPTIONS$1 = {
1303
- name: "pinch",
1304
- threshold: 0,
1305
- pointLength: 2,
1306
- };
1307
-
1308
- function pinch(at, options) {
1309
- var context = createPluginContext(DEFAULT_OPTIONS$1, options);
1310
- at.compute(
1311
- [ComputeVectorForMutli, ComputeScale],
1312
-
1313
- function (computed) {
1314
- resetState(context);
1315
- if (isDisabled(context)) return;
1316
- var isValid = test();
1317
- context.state = flow(isValid, context.state, computed.phase);
1318
- var name = context.name;
1319
- if (isValid || isMoveOrEndOrCancel(context.state)) {
1320
- at.emit2(name, computed, context);
1321
- var deltaScale = computed.deltaScale;
1322
- if (1 !== deltaScale) {
1323
- at.emit2(
1324
- name + (1 < deltaScale ? "in" : "out"),
1325
- computed,
1326
- context
1327
- );
1328
- }
1329
- }
1330
- var stateName = getStatusName(context.state);
1331
- if (stateName) {
1332
- at.emit2(name + stateName, computed, context);
1333
- }
1334
- function test() {
1335
- var pointLength = computed.pointLength,
1336
- scale = computed.scale;
1337
- computed.deltaScale;
1338
- computed.phase;
1339
- return (
1340
- context.pointLength === pointLength &&
1341
- context.threshold < Math.abs(scale - 1)
1342
- );
1343
- }
1344
- }
1345
- );
1346
- return context;
1347
- }
1348
-
1349
- var DEFAULT_OPTIONS = {
1350
- name: "rotate",
1351
- threshold: 0,
1352
- pointLength: 2,
1353
- };
1354
-
1355
- function rotate(at, options) {
1356
- var context = createPluginContext(DEFAULT_OPTIONS, options);
1357
- at.compute(
1358
- [ComputeVectorForMutli, ComputeAngle],
1359
-
1360
- function (computed) {
1361
- if (isDisabled(context)) return;
1362
- resetState(context);
1363
- var isValid = test();
1364
- context.state = flow(isValid, context.state, computed.phase);
1365
- var name = context.name;
1366
- if (isValid || isMoveOrEndOrCancel(context.state)) {
1367
- at.emit2(name, computed, context);
1368
- }
1369
- var stateName = getStatusName(context.state);
1370
- if (stateName) {
1371
- at.emit2(name + stateName, computed, context);
1372
- }
1373
- function test() {
1374
- var pointLength = computed.pointLength,
1375
- angle = computed.angle;
1376
- return (
1377
- context.pointLength === pointLength &&
1378
- context.threshold < Math.abs(angle)
1379
- );
1380
- }
1381
- }
1382
- );
1383
- return context;
1384
- }
1385
-
1386
- function doubletap(at) {
1387
- at.use(tap, { name: "doubletap", tapTimes: 2 });
1388
- var doubleTapContext = at.get("doubletap");
1389
-
1390
- var timeID;
1391
-
1392
- at.beforeEach(function (type, next) {
1393
- if ("tap" === type) {
1394
- clearTimeout(timeID);
1395
- timeID = setTimeout(function () {
1396
- if ([0, 2].includes(doubleTapContext.state)) {
1397
- next();
1398
- }
1399
- }, 300);
1400
- } else {
1401
- next();
1402
- }
1403
- });
1404
- return doubleTapContext;
1405
- }
1406
-
1407
- var default_1 = (function (_super) {
1408
- __extends(default_1, _super);
1409
-
1410
- function default_1(el, options) {
1411
- var _this = _super.call(this, el, options) || this;
1412
- _this.use(tap);
1413
- _this.use(pan);
1414
- _this.use(swipe);
1415
- _this.use(press);
1416
- _this.use(pinch);
1417
- _this.use(rotate);
1418
- return _this;
1419
- }
1420
- default_1.STATE_POSSIBLE = 0;
1421
- default_1.STATE_START = 4;
1422
- default_1.STATE_MOVE = 5;
1423
- default_1.STATE_END = 1;
1424
- default_1.STATE_CANCELLED = 3;
1425
- default_1.STATE_FAILED = 2;
1426
- default_1.STATE_RECOGNIZED = 1;
1427
- default_1.tap = tap;
1428
- default_1.pan = pan;
1429
- default_1.swipe = swipe;
1430
- default_1.press = press;
1431
- default_1.rotate = rotate;
1432
- default_1.pinch = pinch;
1433
- default_1.doubletap = doubletap;
1434
- return default_1;
1435
- })(default_1$1);
1436
-
1437
- return default_1;
1438
- });
1439
- };
47
+ let t$1 = class t{constructor(){this.__map={};}beforeEach(t){this.__interceptor=t;}on(t,i){const s=Array.isArray(t)?t:[t];for(const t of s){this.__map[t]=this.__map[t]||[];const s=this.__map[t];s&&s.push(i);}return this}emit(t,i,s){void 0!==this.__interceptor?this.__interceptor(t,(()=>{this.__emit(t,i),s&&s();})):(this.__emit(t,i),s&&s());}__emit(t,i){const s=this.__map[t];if(Array.isArray(s)&&(null==s?void 0:s.length))for(const _ of s)_(i,t);this.event=i;}off(t,i){const s=this.__map[t];if(void 0!==s)if(void 0===i)delete this.__map[t];else {const t=s.findIndex((t=>t===i));s.splice(t,1);}}destroy(){this.__map={};}};
48
+
49
+ const n$1="clientX",e$2="clientY",t=16,c$3="start",o$1="move",s$1="cancel",u$3="end",a$2="left",i$3="right",r$4="up",d$1="down",m$2={4:"start",5:"move",1:"end",3:"cancel"};function v$1(n){return m$2[n]}function b(n,e,t){const c={1:{0:{move:4},4:{move:5,end:1,cancel:3},5:{move:5,end:1,cancel:3}},0:{4:{move:2,end:1,cancel:3},5:{start:2,move:2,end:1,cancel:3}}}[Number(n)][e];return void 0!==c&&c[t]||0}function g$1(n){[1,3,2].includes(n.state)&&(n.state=0);}function h$3(n){return [5,1,3].includes(n)}function j(n){if(n.disabled)return n.state=0,!0}function O(n,e){return Object.assign(Object.assign(Object.assign({},n),e),{state:0,disabled:!1})}function p$3(n){return Math.round(100*n)/100}
50
+
51
+ function r$3(){let t,o,i,r,a=0;return function(u){if(t=o,void 0!==u){a=Number.MAX_SAFE_INTEGER>a?++a:1;const h=function(t,o){const{phase:i,points:r,changedPoints:a,nativeEvent:u}=t,h=r.length,p=c$3===i,g=u$3===i&&0===h||s$1===i,l=Date.now(),{x:d,y:m}=c$2(r)||c$2(a),{currentTarget:v}=u;return Object.assign(t,{id:o,x:d,y:m,timestamp:l,isStart:p,isEnd:g,pointLength:h,currentTarget:v,getOffset(t=v){const e=t.getBoundingClientRect();return {x:d-Math.round(e.left),y:m-Math.round(e.top)}}})}(u,a);o=h;const{isStart:p,pointLength:g}=h;return p&&(i=h,t=void 0,r=1<g?h:void 0),Object.assign(Object.assign({},h),{prevInput:t,startMultiInput:r,startInput:i})}}}function c$2(t){const{length:e}=t;if(0<e){if(1===e){const{clientX:e,clientY:n}=t[0];return {x:Math.round(e),y:Math.round(n)}}const n=t.reduce(((t,e)=>(t.x+=e[n$1],t.y+=e[e$2],t)),{x:0,y:0});return {x:Math.round(n.x/e),y:Math.round(n.y/e)}}}function a$1(t,e,n,s){const o={};for(const t in n)["target","currentTarget","type"].includes(t)||(o[t]=n[t]);let i;return document.createEvent?(i=document.createEvent("HTMLEvents"),i.initEvent(t,null==s?void 0:s.bubbles,null==s?void 0:s.cancelable)):i=new Event(t,s),Object.assign(i,o,{match:()=>n.targets&&0<n.targets.length&&n.targets.every((t=>i.currentTarget.contains(t)))}),e.dispatchEvent(i)}function u$2(t,e){const{preventDefault:n}=e;return s=n,"[object Function]"===Object.prototype.toString.call(s)?n(t):!!n;var s;}const h$2=["touchstart","touchmove","touchend","touchcancel","mousedown"],p$2=["mousemove","mouseup"];const g={domEvents:{bubbles:!0,cancelable:!0},preventDefault:t=>{if(t.target&&"tagName"in t.target){const{tagName:e}=t.target;return !/^(?:INPUT|TEXTAREA|BUTTON|SELECT)$/.test(e)}return !1}};let l$1 = class l extends t$1{constructor(t,e){super(),this.v="2.1.3",this.__computeFunctionList=[],this.__computeFunctionCreatorList=[],this.__pluginContexts=[],this.__isIgnoreMouse=!1,this.el=t,this.c={},this.__options=Object.assign(Object.assign({},g),e);const n=function(t){const e=r$3();return function(n){const s=[],o=[];Array.from(n.touches).forEach((({clientX:e,clientY:n,target:i})=>{(null==t?void 0:t.contains(i))&&(s.push(i),o.push({clientX:e,clientY:n,target:i}));}));const i=Array.from(n.changedTouches).map((({clientX:t,clientY:e,target:n})=>({clientX:t,clientY:e,target:n})));return e({phase:n.type.replace("touch",""),changedPoints:i,points:o,nativeEvent:n,target:n.target,targets:s})}}(this.el),s=function(){let t,e=!1,n=null;const s=r$3();return function(o){const{clientX:i,clientY:r,type:c,button:a,target:u}=o;let h,p=[{clientX:i,clientY:r,target:u}];if("mousedown"===c&&0===a)n=u,e=!0,h="start";else {if(!e)return;"mousemove"===c?h="move":"mouseup"===c&&(p=[],h="end",e=!1);}const g=t||[{clientX:i,clientY:r,target:u}];if(t=[{clientX:i,clientY:r,target:u}],void 0!==h)return s({phase:h,changedPoints:g,points:p,target:n,targets:[n],nativeEvent:o})}}();if(this.__inputCreatorMap={touchstart:n,touchmove:n,touchend:n,touchcancel:n,mousedown:s,mousemove:s,mouseup:s},this.on("at:after",(t=>{const{target:e,__type:n}=t,{domEvents:s}=this.__options;s&&void 0!==this.el&&e&&(a$1(n,e,t,s),a$1("at:after",e,t,s));})),void 0!==t){t.style.webkitTapHighlightColor="rgba(0,0,0,0)";let e=!1;try{const t={};Object.defineProperty(t,"passive",{get(){e=!0;}}),window.addEventListener("_",(()=>{}),t);}catch(t){}this.on("u",function(t,e,n){return h$2.forEach((s=>{t.addEventListener(s,e,n);})),p$2.forEach((t=>{window.addEventListener(t,e,n);})),()=>{h$2.forEach((n=>{t.removeEventListener(n,e);})),p$2.forEach((t=>{window.removeEventListener(t,e);}));}}(t,this.catchEvent.bind(this),!1===this.__options.preventDefault&&e?{passive:!0}:{passive:!1}));}}use(t,e){this.__pluginContexts.push(t(this,e));}catchEvent(t){const e=this.__inputCreatorMap[t.type](t);if(void 0!==e){const n=()=>t.stopPropagation(),s=()=>t.stopImmediatePropagation(),o=()=>t.preventDefault();if(u$2(t,this.__options))o();else if("touchstart"===t.type?this.__isIgnoreMouse=!0:"touchmove"===t.type&&(this.__isIgnoreMouse=!1),this.__isIgnoreMouse&&t.type.startsWith("mouse"))return void("mouseup"===t.type&&(this.__isIgnoreMouse=!1));this.emit("input",e),this.emit2(`at:${e.phase}`,e,{});const i={};this.__computeFunctionList.forEach((t=>{const n=t(e,i);if(void 0!==n)for(const t in n)i[t]=n[t];})),this.emit("computed",Object.assign(Object.assign(Object.assign({},e),i),{stopPropagation:n,stopImmediatePropagation:s,preventDefault:o}));}}compute(t,e){for(const e of t)this.__computeFunctionCreatorList.includes(e)||(this.__computeFunctionCreatorList.push(e),this.__computeFunctionList.push(e()));this.on("computed",e);}beforeEach(t){super.beforeEach(((e,n)=>{var s;(null===(s=this.c)||void 0===s?void 0:s.name)?t(e,n):n();}));}get(t){return this.__pluginContexts.find((e=>t===e.name))}set(t){this.__options=Object.assign(Object.assign({},this.__options),t);}emit2(t,e,n){this.c=n,this.emit(t,Object.assign(Object.assign({},e),{type:t}),(()=>{this.emit("at:after",Object.assign(Object.assign({},e),{name:t,__type:t}));}));}destroy(){this.emit("u"),super.destroy();}};
52
+
53
+ var x=r=>Math.sqrt(r.x*r.x+r.y*r.y),y=(r,a)=>r.x*a.x+r.y*a.y,e$1=(r,a)=>{var t=x(r)*x(a);if(0===t)return 0;var h=y(r,a)/t;return h>1&&(h=1),Math.acos(h)},n=(r,a)=>r.x*a.y-a.x*r.y,o=r=>r/Math.PI*180,s=(r,a)=>{var t=e$1(r,a);return n(r,a)>0&&(t*=-1),o(t)},u$1=(x,y)=>{if(0!==x||0!==y)return Math.abs(x)>=Math.abs(y)?0<x?i$3:a$2:0<y?d$1:r$4};
54
+
55
+ function p$1(){let n=0,e=0;return function(o,r){const{prevVecotr:i,startVecotr:a,activeVecotr:c}=r;return c&&(e=Math.round(s(c,i)),n=Math.round(s(c,a))),{angle:n,deltaAngle:e}}}function d(){return function(t){const{prevInput:e}=t;let o$1=0,r=0,i=0;if(void 0!==e&&(o$1=t.x-e.x,r=t.y-e.y,0!==o$1||0!==r)){const t=Math.sqrt(Math.pow(o$1,2)+Math.pow(r,2));i=Math.round(o(Math.acos(Math.abs(o$1)/t)));}return {deltaX:o$1,deltaY:r,deltaXYAngle:i}}}function h$1(){let t,n=0,u=0,s=0,p=0,d=0;return function(h){const{phase:l,startInput:f}=h;return c$3===l?(n=0,u=0,s=0,p=0,d=0):o$1===l&&(n=Math.round(h.points[0][n$1]-f.points[0][n$1]),u=Math.round(h.points[0][e$2]-f.points[0][e$2]),s=Math.abs(n),p=Math.abs(u),d=Math.round(x({x:s,y:p})),t=u$1(n,u)),{displacementX:n,displacementY:u,distanceX:s,distanceY:p,distance:d,overallDirection:t}}}function l(){let t=1;return function(n,o){let r=1;const{prevVecotr:i,startVecotr:a,activeVecotr:c}=o;return c&&(r=p$3(x(c)/x(i)),t=p$3(x(c)/x(a))),{scale:t,deltaScale:r}}}function f(){let t$1,n,e=0,r=0,i=0,a=0;return function(c){if(void 0!==c){n=n||c.startInput;const u=c.timestamp-n.timestamp;if(t<u){const s=c.x-n.x,p=c.y-n.y;i=Math.round(s/u*100)/100,a=Math.round(p/u*100)/100,e=Math.abs(i),r=Math.abs(a),t$1=u$1(s,p),n=c;}}return {velocityX:e,velocityY:r,speedX:i,speedY:a,direction:t$1}}}function M(){let t=0;return function(n){const{phase:e}=n;return c$3===e&&(t=n.pointLength),{maxPointLength:t}}}function v(t){return {x:t.points[1][n$1]-t.points[0][n$1],y:t.points[1][e$2]-t.points[0][e$2]}}function m$1(){let t,n,e;return function(o){const{prevInput:r,startMultiInput:i}=o;return void 0!==i&&void 0!==r&&o.id!==i.id&&1<r.pointLength&&1<o.pointLength?(t=v(i),n=v(r),e=v(o)):e=void 0,{startVecotr:t,prevVecotr:n,activeVecotr:e}}}
56
+
57
+ const m={name:"tap",pointLength:1,tapTimes:1,waitNextTapTime:300,maxDistance:2,maxDistanceFromPrevTap:9,maxPressTime:250};function r$2(r,s){const c=O(m,s);let p,u,x$1,T=0;function f(){T=0,p=void 0,u=void 0;}return r.compute([h$1,M],(t=>{if(j(c))return;const{phase:i,x:o,y:m}=t;u$3===i&&(c.state=0,!function(){const{startInput:e,pointLength:n,timestamp:a}=t,i=a-e.timestamp,{distance:o,maxPointLength:m}=t;return m===c.pointLength&&0===n&&c.maxDistance>=o&&c.maxPressTime>i}()?(f(),c.state=2):(clearTimeout(x$1),function(t,e){if(void 0!==p){const n=x({x:t.x-p.x,y:t.y-p.y});return p=t,e.maxDistanceFromPrevTap>=n}return p=t,!0}({x:o,y:m},c)&&function(t){const e=performance.now();if(void 0===u)return u=e,!0;{const n=e-u;return u=e,n<t}}(c.waitNextTapTime)?T++:T=1,0==T%c.tapTimes?(c.state=1,r.emit2(c.name,t,c),f()):x$1=setTimeout((()=>{c.state=2,f();}),c.waitNextTapTime)));})),c}
58
+
59
+ const p={name:"pan",threshold:10,pointLength:1};function u(u,d$1){const f$1=O(p,d$1);return u.compute([f,h$1,d],(t=>{if(g$1(f$1),j(f$1))return;const c=function(){const{pointLength:e,distance:n}=t;return f$1.pointLength===e&&f$1.threshold<=n}();if(f$1.state=b(c,f$1.state,t.phase),c||h$3(f$1.state)){const{name:e}=f$1;u.emit2(e,t,f$1),u.emit2(e+v$1(f$1.state),t,f$1),![u$3,s$1].includes(t.phase)&&t.direction&&u.emit2(e+t.direction,t,f$1);}})),f$1}
60
+
61
+ const c$1={name:"swipe",threshold:10,velocity:.3,pointLength:1};function a(a,r){const s=O(c$1,r);return a.compute([h$1,f,M],(t=>{if(s.state=0,!s.disabled&&function(){if(u$3!==t.phase)return !1;const{velocityX:o,velocityY:n,distance:i,maxPointLength:c}=t;return c===s.pointLength&&0===t.points.length&&s.threshold<i&&s.velocity<Math.max(o,n)}()){const{name:e}=s;s.state=1,a.emit2(e,t,s),a.emit2(e+t.direction,t,s);}})),s}
62
+
63
+ const r$1={name:"press",pointLength:1,maxDistance:9,minPressTime:251};function c(c,u){const p=O(r$1,u);let f=0;return c.compute([h$1],(t=>{if(j(p))return;const{phase:o,startInput:r,pointLength:u}=t;if(c$3===o&&p.pointLength===u)g$1(p),clearTimeout(f),f=setTimeout((()=>{p.state=1,c.emit2(p.name,t,p);}),p.minPressTime);else if(u$3===o&&1===p.state)c.emit2(`${p.name}${r$4}`,t,p);else if(1!==p.state){const e=t.timestamp-r.timestamp;(!function(){const{distance:e}=t;return e&&p.maxDistance>e}()||p.minPressTime>e&&[u$3,s$1].includes(o))&&(clearTimeout(f),p.state=2);}})),p}
64
+
65
+ const i$2={name:"pinch",threshold:0,pointLength:2};function r(r,m){const p=O(i$2,m);return r.compute([m$1,l],(t=>{if(g$1(p),j(p))return;const c=function(){const{pointLength:e,scale:n,deltaScale:o,phase:a}=t;return p.pointLength===e&&p.threshold<Math.abs(n-1)}();p.state=b(c,p.state,t.phase);const{name:h}=p;if(c||h$3(p.state)){r.emit2(h,t,p);const{deltaScale:e}=t;1!==e&&r.emit2(h+(1<e?"in":"out"),t,p);}const i=v$1(p.state);i&&r.emit2(h+i,t,p);})),p}
66
+
67
+ const h={name:"rotate",threshold:0,pointLength:2};function i$1(i,m){const u=O(h,m);return i.compute([m$1,p$1],(t=>{if(j(u))return;g$1(u);const r=function(){const{pointLength:e,angle:n}=t;return u.pointLength===e&&u.threshold<Math.abs(n)}();u.state=b(r,u.state,t.phase);const{name:c}=u;(r||h$3(u.state))&&i.emit2(c,t,u);const h=v$1(u.state);h&&i.emit2(c+h,t,u);})),u}
68
+
69
+ function e(e){e.use(r$2,{name:"doubletap",tapTimes:2});const a=e.get("doubletap");let o;return e.beforeEach(((t,e)=>{"tap"===t?(clearTimeout(o),o=setTimeout((()=>{[0,2].includes(a.state)&&e();}),300)):e();})),a}
70
+
71
+ class i extends l$1{constructor(t,u$1){super(t,u$1),this.use(r$2),this.use(u),this.use(a),this.use(c),this.use(r),this.use(i$1);}}i.STATE_POSSIBLE=0,i.STATE_START=4,i.STATE_MOVE=5,i.STATE_END=1,i.STATE_CANCELLED=3,i.STATE_FAILED=2,i.STATE_RECOGNIZED=1,i.tap=r$2,i.pan=u,i.swipe=a,i.press=c,i.rotate=i$1,i.pinch=r,i.doubletap=e;
1440
72
 
1441
73
  class PopsUtils {
1442
74
  /**
@@ -1675,7 +307,9 @@
1675
307
  : parseFloat(result.toString());
1676
308
  return result;
1677
309
  }
1678
- AnyTouch = AnyTouch;
310
+ AnyTouch = () => {
311
+ return i;
312
+ };
1679
313
  }
1680
314
  const popsUtils = new PopsUtils();
1681
315
 
@@ -1773,7 +407,7 @@
1773
407
  /* 在上层与主元素之间寻找可以被selector所匹配到的 */
1774
408
  let closestElement = target.closest(_selector_);
1775
409
  /* event的target值不能直接修改 */
1776
- OriginPrototype$1.Object.defineProperty(event, "target", {
410
+ OriginPrototype.Object.defineProperty(event, "target", {
1777
411
  get() {
1778
412
  return closestElement;
1779
413
  },
@@ -3405,7 +2039,7 @@
3405
2039
  let clickElementTopOffset = 0;
3406
2040
  let AnyTouch = popsUtils.AnyTouch();
3407
2041
  let anyTouchElement = new AnyTouch(options.dragElement, {
3408
- preventEvent(event) {
2042
+ preventDefault(event) {
3409
2043
  if (typeof options.preventEvent === "function") {
3410
2044
  return options.preventEvent(event);
3411
2045
  }
@@ -3573,7 +2207,7 @@
3573
2207
  }
3574
2208
  });
3575
2209
  /* 因为会覆盖上面的点击事件,主动触发一下 */
3576
- anyTouchElement.on(["click", "tap"], function (event) {
2210
+ anyTouchElement.on(["tap"], function (event) {
3577
2211
  event.changedPoints.forEach((item) => {
3578
2212
  popsDOMUtils.trigger(item.target, "click", void 0, true);
3579
2213
  });
@@ -3621,7 +2255,7 @@
3621
2255
  },
3622
2256
  };
3623
2257
 
3624
- var indexCSS = "@charset \"utf-8\";\r\n* {\r\n\t-webkit-box-sizing: border-box;\r\n\tbox-sizing: border-box;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\t-webkit-tap-highlight-color: transparent;\r\n\t/* 代替::-webkit-scrollbar */\r\n\tscrollbar-width: thin;\r\n}\r\n.pops {\r\n\t--pops-bg-opacity: 1;\r\n\t--pops-bd-opacity: 1;\r\n\t--pops-font-size: 16px;\r\n}\r\n.pops-mask {\r\n\t--pops-mask-bg-opacity: 0.4;\r\n}\r\n.pops {\r\n\tbackground-color: rgb(255, 255, 255, var(--pops-bg-opacity));\r\n\tborder-radius: 4px;\r\n\tborder: 1px solid rgb(235, 238, 245, var(--pops-bd-opacity));\r\n\tfont-size: var(--pops-font-size);\r\n\tbox-shadow: 0 0 12px rgba(0, 0, 0, 0.12);\r\n\tbox-sizing: border-box;\r\n\toverflow: hidden;\r\n\ttransition: all 0.35s;\r\n}\r\n.pops-anim {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n}\r\n.pops-anim[anim=\"\"] {\r\n\ttop: unset;\r\n\tright: unset;\r\n\tbottom: unset;\r\n\tleft: unset;\r\n\twidth: unset;\r\n\theight: unset;\r\n\ttransition: none;\r\n}\r\n/* 底部图标动画和样式 */\r\n.pops i.pops-bottom-icon[is-loading=\"true\"] {\r\n\tanimation: rotating 2s linear infinite;\r\n}\r\n.pops i.pops-bottom-icon {\r\n\theight: 1em;\r\n\twidth: 1em;\r\n\tline-height: 1em;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n\tcolor: inherit;\r\n\tfont-size: inherit;\r\n}\r\n\r\n/* 遮罩层样式 */\r\n.pops-mask {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tborder: 0;\r\n\tborder-radius: 0;\r\n\tbackground-color: rgba(0, 0, 0, var(--pops-mask-bg-opacity));\r\n\tbox-shadow: none;\r\n\ttransition: none;\r\n}\r\n\r\n.pops-header-controls button.pops-header-control[type][data-header] {\r\n\tfloat: right;\r\n\tmargin: 0 0;\r\n\toutline: 0;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: #888;\r\n\tcursor: pointer;\r\n}\r\n.pops-header-controls button.pops-header-control[type=\"max\"],\r\n.pops-header-controls button.pops-header-control[type=\"mise\"],\r\n.pops-header-controls button.pops-header-control[type=\"min\"] {\r\n\tposition: relative;\r\n\tfloat: right;\r\n\tmargin: 0 2px;\r\n\toutline: 0 !important;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: rgb(136, 136, 136);\r\n\tcursor: pointer;\r\n\ttransition: all 0.3s ease-in-out;\r\n}\r\nbutton.pops-header-control i {\r\n\tcolor: rgb(144, 147, 153);\r\n\tfont-size: inherit;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n}\r\nbutton.pops-header-control svg {\r\n\theight: 1.25em;\r\n\twidth: 1.25em;\r\n}\r\nbutton.pops-header-control {\r\n\tright: 15px;\r\n\tpadding: 0;\r\n\tborder: none;\r\n\toutline: 0;\r\n\tbackground: 0 0;\r\n\tcursor: pointer;\r\n\tposition: unset;\r\n\tline-height: 1.15;\r\n}\r\nbutton.pops-header-control i:hover {\r\n\tcolor: rgb(64, 158, 255);\r\n}\r\n.pops-header-controls[data-margin] button.pops-header-control {\r\n\tmargin: 0 6px;\r\n}\r\n.pops[type-value] .pops-header-controls {\r\n\tdisplay: flex;\r\n}\r\n";
2258
+ var indexCSS = "@charset \"utf-8\";\r\n* {\r\n\t-webkit-box-sizing: border-box;\r\n\tbox-sizing: border-box;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\t-webkit-tap-highlight-color: transparent;\r\n\t/* 代替::-webkit-scrollbar */\r\n\tscrollbar-width: thin;\r\n}\r\n.pops {\r\n\t--pops-bg-opacity: 1;\r\n\t--pops-bd-opacity: 1;\r\n\t--pops-font-size: 16px;\r\n}\r\n.pops-mask {\r\n\t--pops-mask-bg-opacity: 0.4;\r\n}\r\n.pops {\r\n\tbackground-color: rgb(255, 255, 255, var(--pops-bg-opacity));\r\n\tborder-radius: 4px;\r\n\tborder: 1px solid rgb(235, 238, 245, var(--pops-bd-opacity));\r\n\tfont-size: var(--pops-font-size);\r\n\tbox-shadow: 0 0 12px rgba(0, 0, 0, 0.12);\r\n\tbox-sizing: border-box;\r\n\toverflow: hidden;\r\n\ttransition: all 0.35s;\r\n}\r\n.pops-anim {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n}\r\n.pops-anim[anim=\"\"] {\r\n\ttop: unset;\r\n\tright: unset;\r\n\tbottom: unset;\r\n\tleft: unset;\r\n\twidth: unset;\r\n\theight: unset;\r\n\ttransition: none;\r\n}\r\n/* 底部图标动画和样式 */\r\n.pops i.pops-bottom-icon[is-loading=\"true\"] {\r\n\tanimation: rotating 2s linear infinite;\r\n}\r\n.pops i.pops-bottom-icon {\r\n\theight: 1em;\r\n\twidth: 1em;\r\n\tline-height: 1em;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n\tcolor: inherit;\r\n\tfont-size: inherit;\r\n}\r\n\r\n/* 遮罩层样式 */\r\n.pops-mask {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tborder: 0;\r\n\tborder-radius: 0;\r\n\tbackground-color: rgba(0, 0, 0, var(--pops-mask-bg-opacity));\r\n\tbox-shadow: none;\r\n\ttransition: none;\r\n}\r\n\r\n.pops-header-controls button.pops-header-control[type][data-header] {\r\n\tfloat: right;\r\n\tmargin: 0 0;\r\n\toutline: 0;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: #888;\r\n\tcursor: pointer;\r\n}\r\n.pops-header-controls button.pops-header-control[type=\"max\"],\r\n.pops-header-controls button.pops-header-control[type=\"mise\"],\r\n.pops-header-controls button.pops-header-control[type=\"min\"] {\r\n\tposition: relative;\r\n\tfloat: right;\r\n\tmargin: 0 2px;\r\n\toutline: 0 !important;\r\n\tborder: 0;\r\n\tborder-color: rgb(136, 136, 136, var(--pops-bd-opacity));\r\n\tbackground-color: transparent;\r\n\tcolor: rgb(136, 136, 136);\r\n\tcursor: pointer;\r\n\ttransition: all 0.3s ease-in-out;\r\n}\r\nbutton.pops-header-control i {\r\n\tcolor: rgb(144, 147, 153);\r\n\tfont-size: inherit;\r\n\tdisplay: inline-flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tfill: currentColor;\r\n}\r\nbutton.pops-header-control svg {\r\n\theight: 1.25em;\r\n\twidth: 1.25em;\r\n}\r\nbutton.pops-header-control {\r\n\tright: 15px;\r\n\tpadding: 0;\r\n\tborder: none;\r\n\toutline: 0;\r\n\tbackground: 0 0;\r\n\tcursor: pointer;\r\n\tposition: unset;\r\n\tline-height: 1.15;\r\n}\r\nbutton.pops-header-control i:hover {\r\n\tcolor: rgb(64, 158, 255);\r\n}\r\n.pops-header-controls[data-margin] button.pops-header-control {\r\n\tmargin: 0 6px;\r\n}\r\n.pops[type-value] .pops-header-controls {\r\n\tdisplay: flex;\r\n}\r\n\r\n/* 标题禁止选中文字 */\r\n.pops [class^=\"pops\"][class*=\"-title\"] p[pops] {\r\n\t-webkit-user-select: none;\r\n\t-moz-user-select: none;\r\n\t-ms-user-select: none;\r\n\tuser-select: none;\r\n}\r\n";
3625
2259
 
3626
2260
  var ninePalaceGridPositionCSS = ".pops[position=\"top_left\"] {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tleft: 0;\r\n}\r\n.pops[position=\"top\"] {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tleft: 50%;\r\n\ttransform: translateX(-50%);\r\n}\r\n.pops[position=\"top_right\"] {\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tright: 0;\r\n}\r\n.pops[position=\"center_left\"] {\r\n\tposition: fixed;\r\n\ttop: 50%;\r\n\tleft: 0;\r\n\ttransform: translateY(-50%);\r\n}\r\n.pops[position=\"center\"] {\r\n\tposition: fixed;\r\n\ttop: 50%;\r\n\tleft: 50%;\r\n\ttransform: translate(-50%, -50%);\r\n}\r\n.pops[position=\"center_right\"] {\r\n\tposition: fixed;\r\n\ttop: 50%;\r\n\tright: 0;\r\n\ttransform: translateY(-50%);\r\n}\r\n.pops[position=\"bottom_left\"] {\r\n\tposition: fixed;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n}\r\n.pops[position=\"bottom\"] {\r\n\tposition: fixed;\r\n\tbottom: 0;\r\n\tleft: 50%;\r\n\ttransform: translate(-50%, 0);\r\n}\r\n.pops[position=\"bottom_right\"] {\r\n\tposition: fixed;\r\n\tright: 0;\r\n\tbottom: 0;\r\n}\r\n";
3627
2261
 
@@ -3709,6 +2343,49 @@
3709
2343
 
3710
2344
  var SVG_arrowLeft = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1024 1024\">\r\n\t<path\r\n\t\td=\"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z\"></path>\r\n</svg>\r\n";
3711
2345
 
2346
+ const GlobalConfig = {
2347
+ config: {},
2348
+ /**
2349
+ * 为所有弹窗设置全局属性
2350
+ */
2351
+ setGlobalConfig(config) {
2352
+ Reflect.ownKeys(config).forEach((keyName) => {
2353
+ Reflect.set(GlobalConfig.config, keyName, Reflect.get(config, keyName));
2354
+ });
2355
+ },
2356
+ /**
2357
+ * 获取全局配置
2358
+ */
2359
+ getGlobalConfig() {
2360
+ let result = {};
2361
+ let style = GlobalConfig.config.style == null
2362
+ ? ""
2363
+ : typeof GlobalConfig.config.style === "function"
2364
+ ? GlobalConfig.config.style()
2365
+ : GlobalConfig.config.style;
2366
+ if (typeof style === "string") {
2367
+ result.style = style;
2368
+ }
2369
+ let zIndex = GlobalConfig.config.zIndex == null
2370
+ ? ""
2371
+ : typeof GlobalConfig.config.zIndex === "function"
2372
+ ? GlobalConfig.config.zIndex()
2373
+ : GlobalConfig.config.zIndex;
2374
+ if (typeof zIndex === "string") {
2375
+ let newIndex = (zIndex = parseInt(zIndex));
2376
+ if (!isNaN(newIndex)) {
2377
+ result.zIndex = newIndex;
2378
+ }
2379
+ }
2380
+ else {
2381
+ if (!isNaN(zIndex)) {
2382
+ result.zIndex = zIndex;
2383
+ }
2384
+ }
2385
+ return result;
2386
+ },
2387
+ };
2388
+
3712
2389
  const PopsElementHandler = {
3713
2390
  /**
3714
2391
  * 获取遮罩层HTML
@@ -4515,6 +3192,7 @@
4515
3192
  pops.config.cssText.alertCSS,
4516
3193
  ]);
4517
3194
  let config = PopsAlertConfig();
3195
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
4518
3196
  config = popsUtils.assign(config, details);
4519
3197
  let guid = popsUtils.getRandomGUID();
4520
3198
  // 设置当前类型
@@ -4704,6 +3382,7 @@
4704
3382
  pops.config.cssText.confirmCSS,
4705
3383
  ]);
4706
3384
  let config = PopsConfirmConfig();
3385
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
4707
3386
  config = popsUtils.assign(config, details);
4708
3387
  let guid = popsUtils.getRandomGUID();
4709
3388
  // 设置当前类型
@@ -4903,6 +3582,7 @@
4903
3582
  pops.config.cssText.promptCSS,
4904
3583
  ]);
4905
3584
  let config = PopsPromptConfig();
3585
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
4906
3586
  config = popsUtils.assign(config, details);
4907
3587
  let guid = popsUtils.getRandomGUID();
4908
3588
  const PopsType = "prompt";
@@ -5035,6 +3715,7 @@
5035
3715
  class PopsLoading {
5036
3716
  constructor(details) {
5037
3717
  let config = PopsLoadingConfig();
3718
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
5038
3719
  config = popsUtils.assign(config, details);
5039
3720
  let guid = popsUtils.getRandomGUID();
5040
3721
  const PopsType = "loading";
@@ -5169,6 +3850,7 @@
5169
3850
  pops.config.cssText.iframeCSS,
5170
3851
  ]);
5171
3852
  let config = PopsIframeConfig();
3853
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
5172
3854
  config = popsUtils.assign(config, details);
5173
3855
  if (config.url == null) {
5174
3856
  throw "config.url不能为空";
@@ -5421,6 +4103,7 @@
5421
4103
  pops.config.cssText.tooltipCSS,
5422
4104
  ]);
5423
4105
  let config = PopsTooltipConfig();
4106
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
5424
4107
  config = popsUtils.assign(config, details);
5425
4108
  if (!(config.target instanceof HTMLElement)) {
5426
4109
  throw "config.target 必须是HTMLElement类型";
@@ -5761,6 +4444,7 @@
5761
4444
  pops.config.cssText.drawerCSS,
5762
4445
  ]);
5763
4446
  let config = PopsDrawerConfig();
4447
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
5764
4448
  config = popsUtils.assign(config, details);
5765
4449
  let guid = popsUtils.getRandomGUID();
5766
4450
  const PopsType = "drawer";
@@ -6099,6 +4783,8 @@
6099
4783
  pops.config.cssText.folderCSS,
6100
4784
  ]);
6101
4785
  let config = PopsFolderConfig();
4786
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
4787
+ config = popsUtils.assign(config, details);
6102
4788
  /* 办公几件套 */
6103
4789
  Folder_ICON.docx = Folder_ICON.doc;
6104
4790
  Folder_ICON.rtf = Folder_ICON.doc;
@@ -6152,7 +4838,6 @@
6152
4838
  androidIconList.forEach((keyName) => {
6153
4839
  Folder_ICON[keyName] = Folder_ICON.apk;
6154
4840
  });
6155
- config = popsUtils.assign(config, details);
6156
4841
  if (details?.folder) {
6157
4842
  config.folder = details.folder;
6158
4843
  }
@@ -8084,7 +6769,7 @@
8084
6769
  setPanEvent() {
8085
6770
  const AnyTouch = popsUtils.AnyTouch();
8086
6771
  this.$tooltip = new AnyTouch(this.$ele.button, {
8087
- preventEvent() {
6772
+ preventDefault() {
8088
6773
  return false;
8089
6774
  },
8090
6775
  });
@@ -9635,6 +8320,7 @@
9635
8320
  pops.config.cssText.panelCSS,
9636
8321
  ]);
9637
8322
  let config = PopsPanelConfig();
8323
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
9638
8324
  config = popsUtils.assign(config, details);
9639
8325
  if (details && Array.isArray(details.content)) {
9640
8326
  config.content = details.content;
@@ -9872,6 +8558,7 @@
9872
8558
  pops.config.cssText.rightClickMenu,
9873
8559
  ]);
9874
8560
  let config = rightClickMenuConfig();
8561
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
9875
8562
  config = popsUtils.assign(config, details);
9876
8563
  if (config.target == null) {
9877
8564
  throw "config.target 不能为空";
@@ -10245,7 +8932,7 @@
10245
8932
  */
10246
8933
  async function liElementClickEvent(clickEvent) {
10247
8934
  if (typeof item.callback === "function") {
10248
- OriginPrototype$1.Object.defineProperty(menuEvent, "target", {
8935
+ OriginPrototype.Object.defineProperty(menuEvent, "target", {
10249
8936
  get() {
10250
8937
  return menuEventTarget;
10251
8938
  },
@@ -10349,6 +9036,7 @@
10349
9036
  pops.config.cssText.common,
10350
9037
  ]);
10351
9038
  let config = searchSuggestionConfig();
9039
+ config = popsUtils.assign(config, GlobalConfig.getGlobalConfig());
10352
9040
  config = popsUtils.assign(config, details);
10353
9041
  if (config.target == null) {
10354
9042
  throw new TypeError("config.target 不能为空");
@@ -10887,7 +9575,7 @@
10887
9575
  /** 配置 */
10888
9576
  config = {
10889
9577
  /** 版本号 */
10890
- version: "2024.10.1",
9578
+ version: "2024.10.19",
10891
9579
  cssText: {
10892
9580
  /** 主CSS */
10893
9581
  index: indexCSS,
@@ -11025,6 +9713,10 @@
11025
9713
  isPhone(userAgent = PopsCore.globalThis.navigator.userAgent) {
11026
9714
  return Boolean(/(iPhone|iPad|iPod|iOS|Android)/i.test(userAgent));
11027
9715
  }
9716
+ /**
9717
+ * 为所有弹窗设置全局属性
9718
+ */
9719
+ GlobalConfig = GlobalConfig;
11028
9720
  /**
11029
9721
  * 普通信息框
11030
9722
  * @param details 配置