@idraw/core 0.4.0-beta.2 → 0.4.0-beta.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.
@@ -358,7 +358,7 @@ var __privateMethod = (obj, member, method) => {
358
358
  fontWeight: fontWeight$1,
359
359
  strokeWidth
360
360
  };
361
- var __classPrivateFieldSet = function(receiver, state, value, kind, f) {
361
+ var __classPrivateFieldSet$3 = function(receiver, state, value, kind, f) {
362
362
  if (kind === "m")
363
363
  throw new TypeError("Private method is not writable");
364
364
  if (kind === "a" && !f)
@@ -367,7 +367,7 @@ var __privateMethod = (obj, member, method) => {
367
367
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
368
368
  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
369
369
  };
370
- var __classPrivateFieldGet = function(receiver, state, kind, f) {
370
+ var __classPrivateFieldGet$3 = function(receiver, state, kind, f) {
371
371
  if (kind === "a" && !f)
372
372
  throw new TypeError("Private accessor was defined without a getter");
373
373
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
@@ -379,17 +379,17 @@ var __privateMethod = (obj, member, method) => {
379
379
  constructor(ctx, opts) {
380
380
  _Context2D_ctx.set(this, void 0);
381
381
  _Context2D_opts.set(this, void 0);
382
- __classPrivateFieldSet(this, _Context2D_ctx, ctx, "f");
383
- __classPrivateFieldSet(this, _Context2D_opts, Object.assign({ devicePixelRatio: 1, offscreenCanvas: null }, opts), "f");
382
+ __classPrivateFieldSet$3(this, _Context2D_ctx, ctx, "f");
383
+ __classPrivateFieldSet$3(this, _Context2D_opts, Object.assign({ devicePixelRatio: 1, offscreenCanvas: null }, opts), "f");
384
384
  }
385
385
  $undoPixelRatio(num) {
386
- return num / __classPrivateFieldGet(this, _Context2D_opts, "f").devicePixelRatio;
386
+ return num / __classPrivateFieldGet$3(this, _Context2D_opts, "f").devicePixelRatio;
387
387
  }
388
388
  $doPixelRatio(num) {
389
- return __classPrivateFieldGet(this, _Context2D_opts, "f").devicePixelRatio * num;
389
+ return __classPrivateFieldGet$3(this, _Context2D_opts, "f").devicePixelRatio * num;
390
390
  }
391
391
  $getContext() {
392
- return __classPrivateFieldGet(this, _Context2D_ctx, "f");
392
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f");
393
393
  }
394
394
  $setFont(opts) {
395
395
  const strList = [];
@@ -398,17 +398,17 @@ var __privateMethod = (obj, member, method) => {
398
398
  }
399
399
  strList.push(`${this.$doPixelRatio(opts.fontSize || 12)}px`);
400
400
  strList.push(`${opts.fontFamily || "sans-serif"}`);
401
- __classPrivateFieldGet(this, _Context2D_ctx, "f").font = `${strList.join(" ")}`;
401
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").font = `${strList.join(" ")}`;
402
402
  }
403
403
  $getOffscreenCanvas() {
404
- return __classPrivateFieldGet(this, _Context2D_opts, "f").offscreenCanvas;
404
+ return __classPrivateFieldGet$3(this, _Context2D_opts, "f").offscreenCanvas;
405
405
  }
406
406
  $resize(opts) {
407
407
  const { width, height, devicePixelRatio, resetStyle } = opts;
408
- const { canvas } = __classPrivateFieldGet(this, _Context2D_ctx, "f");
408
+ const { canvas } = __classPrivateFieldGet$3(this, _Context2D_ctx, "f");
409
409
  canvas.width = width * devicePixelRatio;
410
410
  canvas.height = height * devicePixelRatio;
411
- __classPrivateFieldSet(this, _Context2D_opts, Object.assign(Object.assign({}, __classPrivateFieldGet(this, _Context2D_opts, "f")), {
411
+ __classPrivateFieldSet$3(this, _Context2D_opts, Object.assign(Object.assign({}, __classPrivateFieldGet$3(this, _Context2D_opts, "f")), {
412
412
  devicePixelRatio
413
413
  }), "f");
414
414
  if (resetStyle === true) {
@@ -417,8 +417,8 @@ var __privateMethod = (obj, member, method) => {
417
417
  }
418
418
  }
419
419
  $getSize() {
420
- const { devicePixelRatio } = __classPrivateFieldGet(this, _Context2D_opts, "f");
421
- const { width, height } = __classPrivateFieldGet(this, _Context2D_ctx, "f").canvas;
420
+ const { devicePixelRatio } = __classPrivateFieldGet$3(this, _Context2D_opts, "f");
421
+ const { width, height } = __classPrivateFieldGet$3(this, _Context2D_ctx, "f").canvas;
422
422
  return {
423
423
  width: width / devicePixelRatio,
424
424
  height: height / devicePixelRatio,
@@ -426,125 +426,125 @@ var __privateMethod = (obj, member, method) => {
426
426
  };
427
427
  }
428
428
  get canvas() {
429
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").canvas;
429
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").canvas;
430
430
  }
431
431
  get fillStyle() {
432
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").fillStyle;
432
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fillStyle;
433
433
  }
434
434
  set fillStyle(value) {
435
- __classPrivateFieldGet(this, _Context2D_ctx, "f").fillStyle = value;
435
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fillStyle = value;
436
436
  }
437
437
  get strokeStyle() {
438
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").strokeStyle;
438
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").strokeStyle;
439
439
  }
440
440
  set strokeStyle(color2) {
441
- __classPrivateFieldGet(this, _Context2D_ctx, "f").strokeStyle = color2;
441
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").strokeStyle = color2;
442
442
  }
443
443
  get lineWidth() {
444
- return this.$undoPixelRatio(__classPrivateFieldGet(this, _Context2D_ctx, "f").lineWidth);
444
+ return this.$undoPixelRatio(__classPrivateFieldGet$3(this, _Context2D_ctx, "f").lineWidth);
445
445
  }
446
446
  set lineWidth(w2) {
447
- __classPrivateFieldGet(this, _Context2D_ctx, "f").lineWidth = this.$doPixelRatio(w2);
447
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").lineWidth = this.$doPixelRatio(w2);
448
448
  }
449
449
  get textAlign() {
450
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").textAlign;
450
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").textAlign;
451
451
  }
452
452
  set textAlign(align) {
453
- __classPrivateFieldGet(this, _Context2D_ctx, "f").textAlign = align;
453
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").textAlign = align;
454
454
  }
455
455
  get textBaseline() {
456
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").textBaseline;
456
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").textBaseline;
457
457
  }
458
458
  set textBaseline(baseline) {
459
- __classPrivateFieldGet(this, _Context2D_ctx, "f").textBaseline = baseline;
459
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").textBaseline = baseline;
460
460
  }
461
461
  get globalAlpha() {
462
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").globalAlpha;
462
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").globalAlpha;
463
463
  }
464
464
  set globalAlpha(alpha) {
465
- __classPrivateFieldGet(this, _Context2D_ctx, "f").globalAlpha = alpha;
465
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").globalAlpha = alpha;
466
466
  }
467
467
  get shadowColor() {
468
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").shadowColor;
468
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowColor;
469
469
  }
470
470
  set shadowColor(color2) {
471
- __classPrivateFieldGet(this, _Context2D_ctx, "f").shadowColor = color2;
471
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowColor = color2;
472
472
  }
473
473
  get shadowOffsetX() {
474
- return this.$undoPixelRatio(__classPrivateFieldGet(this, _Context2D_ctx, "f").shadowOffsetX);
474
+ return this.$undoPixelRatio(__classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowOffsetX);
475
475
  }
476
476
  set shadowOffsetX(offsetX) {
477
- __classPrivateFieldGet(this, _Context2D_ctx, "f").shadowOffsetX = this.$doPixelRatio(offsetX);
477
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowOffsetX = this.$doPixelRatio(offsetX);
478
478
  }
479
479
  get shadowOffsetY() {
480
- return this.$undoPixelRatio(__classPrivateFieldGet(this, _Context2D_ctx, "f").shadowOffsetY);
480
+ return this.$undoPixelRatio(__classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowOffsetY);
481
481
  }
482
482
  set shadowOffsetY(offsetY) {
483
- __classPrivateFieldGet(this, _Context2D_ctx, "f").shadowOffsetY = this.$doPixelRatio(offsetY);
483
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowOffsetY = this.$doPixelRatio(offsetY);
484
484
  }
485
485
  get shadowBlur() {
486
- return this.$undoPixelRatio(__classPrivateFieldGet(this, _Context2D_ctx, "f").shadowBlur);
486
+ return this.$undoPixelRatio(__classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowBlur);
487
487
  }
488
488
  set shadowBlur(blur) {
489
- __classPrivateFieldGet(this, _Context2D_ctx, "f").shadowBlur = this.$doPixelRatio(blur);
489
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").shadowBlur = this.$doPixelRatio(blur);
490
490
  }
491
491
  get lineCap() {
492
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").lineCap;
492
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").lineCap;
493
493
  }
494
494
  set lineCap(lineCap) {
495
- __classPrivateFieldGet(this, _Context2D_ctx, "f").lineCap = lineCap;
495
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").lineCap = lineCap;
496
496
  }
497
497
  get globalCompositeOperation() {
498
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").globalCompositeOperation;
498
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").globalCompositeOperation;
499
499
  }
500
500
  set globalCompositeOperation(operations) {
501
- __classPrivateFieldGet(this, _Context2D_ctx, "f").globalCompositeOperation = operations;
501
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").globalCompositeOperation = operations;
502
502
  }
503
503
  fill(...args) {
504
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").fill(...args);
504
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fill(...args);
505
505
  }
506
506
  arc(x2, y2, radius, startAngle, endAngle, anticlockwise) {
507
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").arc(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radius), startAngle, endAngle, anticlockwise);
507
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").arc(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radius), startAngle, endAngle, anticlockwise);
508
508
  }
509
509
  rect(x2, y2, w2, h2) {
510
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").rect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
510
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").rect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
511
511
  }
512
512
  fillRect(x2, y2, w2, h2) {
513
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").fillRect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
513
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fillRect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
514
514
  }
515
515
  clearRect(x2, y2, w2, h2) {
516
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").clearRect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
516
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").clearRect(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(w2), this.$doPixelRatio(h2));
517
517
  }
518
518
  beginPath() {
519
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").beginPath();
519
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").beginPath();
520
520
  }
521
521
  closePath() {
522
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").closePath();
522
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").closePath();
523
523
  }
524
524
  lineTo(x2, y2) {
525
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").lineTo(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
525
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").lineTo(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
526
526
  }
527
527
  moveTo(x2, y2) {
528
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").moveTo(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
528
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").moveTo(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
529
529
  }
530
530
  arcTo(x1, y1, x2, y2, radius) {
531
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").arcTo(this.$doPixelRatio(x1), this.$doPixelRatio(y1), this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radius));
531
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").arcTo(this.$doPixelRatio(x1), this.$doPixelRatio(y1), this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radius));
532
532
  }
533
533
  getLineDash() {
534
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").getLineDash();
534
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").getLineDash();
535
535
  }
536
536
  setLineDash(nums) {
537
537
  const dash = nums.map((n) => this.$doPixelRatio(n));
538
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").setLineDash(dash);
538
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").setLineDash(dash);
539
539
  }
540
540
  stroke(path) {
541
- return path ? __classPrivateFieldGet(this, _Context2D_ctx, "f").stroke(path) : __classPrivateFieldGet(this, _Context2D_ctx, "f").stroke();
541
+ return path ? __classPrivateFieldGet$3(this, _Context2D_ctx, "f").stroke(path) : __classPrivateFieldGet$3(this, _Context2D_ctx, "f").stroke();
542
542
  }
543
543
  translate(x2, y2) {
544
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").translate(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
544
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").translate(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
545
545
  }
546
546
  rotate(angle2) {
547
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").rotate(angle2);
547
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").rotate(angle2);
548
548
  }
549
549
  drawImage(...args) {
550
550
  const image = args[0];
@@ -557,64 +557,64 @@ var __privateMethod = (obj, member, method) => {
557
557
  const dw = args[args.length - 2];
558
558
  const dh = args[args.length - 1];
559
559
  if (args.length === 9) {
560
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").drawImage(image, this.$doPixelRatio(sx), this.$doPixelRatio(sy), this.$doPixelRatio(sw), this.$doPixelRatio(sh), this.$doPixelRatio(dx), this.$doPixelRatio(dy), this.$doPixelRatio(dw), this.$doPixelRatio(dh));
560
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").drawImage(image, this.$doPixelRatio(sx), this.$doPixelRatio(sy), this.$doPixelRatio(sw), this.$doPixelRatio(sh), this.$doPixelRatio(dx), this.$doPixelRatio(dy), this.$doPixelRatio(dw), this.$doPixelRatio(dh));
561
561
  } else {
562
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").drawImage(image, this.$doPixelRatio(dx), this.$doPixelRatio(dy), this.$doPixelRatio(dw), this.$doPixelRatio(dh));
562
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").drawImage(image, this.$doPixelRatio(dx), this.$doPixelRatio(dy), this.$doPixelRatio(dw), this.$doPixelRatio(dh));
563
563
  }
564
564
  }
565
565
  createPattern(image, repetition) {
566
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").createPattern(image, repetition);
566
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").createPattern(image, repetition);
567
567
  }
568
568
  measureText(text2) {
569
- const textMetrics = __classPrivateFieldGet(this, _Context2D_ctx, "f").measureText(text2);
569
+ const textMetrics = __classPrivateFieldGet$3(this, _Context2D_ctx, "f").measureText(text2);
570
570
  return textMetrics;
571
571
  }
572
572
  fillText(text2, x2, y2, maxWidth) {
573
573
  if (maxWidth !== void 0) {
574
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").fillText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(maxWidth));
574
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fillText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(maxWidth));
575
575
  } else {
576
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").fillText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
576
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").fillText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
577
577
  }
578
578
  }
579
579
  strokeText(text2, x2, y2, maxWidth) {
580
580
  if (maxWidth !== void 0) {
581
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").strokeText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(maxWidth));
581
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").strokeText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(maxWidth));
582
582
  } else {
583
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").strokeText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
583
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").strokeText(text2, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
584
584
  }
585
585
  }
586
586
  save() {
587
- __classPrivateFieldGet(this, _Context2D_ctx, "f").save();
587
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").save();
588
588
  }
589
589
  restore() {
590
- __classPrivateFieldGet(this, _Context2D_ctx, "f").restore();
590
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").restore();
591
591
  }
592
592
  scale(ratioX, ratioY) {
593
- __classPrivateFieldGet(this, _Context2D_ctx, "f").scale(ratioX, ratioY);
593
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").scale(ratioX, ratioY);
594
594
  }
595
595
  circle(x2, y2, radiusX, radiusY, rotation, startAngle, endAngle, counterclockwise) {
596
- __classPrivateFieldGet(this, _Context2D_ctx, "f").ellipse(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radiusX), this.$doPixelRatio(radiusY), rotation, startAngle, endAngle, counterclockwise);
596
+ __classPrivateFieldGet$3(this, _Context2D_ctx, "f").ellipse(this.$doPixelRatio(x2), this.$doPixelRatio(y2), this.$doPixelRatio(radiusX), this.$doPixelRatio(radiusY), rotation, startAngle, endAngle, counterclockwise);
597
597
  }
598
598
  isPointInPath(x2, y2) {
599
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").isPointInPath(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
599
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").isPointInPath(this.$doPixelRatio(x2), this.$doPixelRatio(y2));
600
600
  }
601
601
  clip(...args) {
602
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").clip(...args);
602
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").clip(...args);
603
603
  }
604
604
  setTransform(a, b, c, d, e, f) {
605
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").setTransform(a, b, c, d, e, f);
605
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").setTransform(a, b, c, d, e, f);
606
606
  }
607
607
  getTransform() {
608
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").getTransform();
608
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").getTransform();
609
609
  }
610
610
  createLinearGradient(x0, y0, x1, y1) {
611
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").createLinearGradient(this.$doPixelRatio(x0), this.$doPixelRatio(y0), this.$doPixelRatio(x1), this.$doPixelRatio(y1));
611
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").createLinearGradient(this.$doPixelRatio(x0), this.$doPixelRatio(y0), this.$doPixelRatio(x1), this.$doPixelRatio(y1));
612
612
  }
613
613
  createRadialGradient(x0, y0, r0, x1, y1, r1) {
614
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").createRadialGradient(this.$doPixelRatio(x0), this.$doPixelRatio(y0), this.$doPixelRatio(r0), this.$doPixelRatio(x1), this.$doPixelRatio(y1), this.$doPixelRatio(r1));
614
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").createRadialGradient(this.$doPixelRatio(x0), this.$doPixelRatio(y0), this.$doPixelRatio(r0), this.$doPixelRatio(x1), this.$doPixelRatio(y1), this.$doPixelRatio(r1));
615
615
  }
616
616
  createConicGradient(startAngle, x2, y2) {
617
- return __classPrivateFieldGet(this, _Context2D_ctx, "f").createConicGradient(startAngle, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
617
+ return __classPrivateFieldGet$3(this, _Context2D_ctx, "f").createConicGradient(startAngle, this.$doPixelRatio(x2), this.$doPixelRatio(y2));
618
618
  }
619
619
  }
620
620
  _Context2D_ctx = /* @__PURE__ */ new WeakMap(), _Context2D_opts = /* @__PURE__ */ new WeakMap();
@@ -641,7 +641,7 @@ var __privateMethod = (obj, member, method) => {
641
641
  });
642
642
  return context2d;
643
643
  }
644
- function createViewContent(canvas, opts) {
644
+ function createBoardContent(canvas, opts) {
645
645
  const { width, height, devicePixelRatio, offscreen } = opts;
646
646
  const ctxOpts = {
647
647
  width,
@@ -1526,7 +1526,8 @@ var __privateMethod = (obj, member, method) => {
1526
1526
  function calcViewBoxSize(viewElem, opts) {
1527
1527
  const { viewScaleInfo } = opts;
1528
1528
  const { scale } = viewScaleInfo;
1529
- let { borderRadius: borderRadius2, boxSizing = defaultElemConfig$1.boxSizing, borderWidth: borderWidth2 } = viewElem.detail;
1529
+ let { borderRadius: borderRadius2 } = viewElem.detail;
1530
+ const { boxSizing = defaultElemConfig$1.boxSizing, borderWidth: borderWidth2 } = viewElem.detail;
1530
1531
  if (typeof borderWidth2 !== "number") {
1531
1532
  borderRadius2 = 0;
1532
1533
  }
@@ -1647,8 +1648,8 @@ var __privateMethod = (obj, member, method) => {
1647
1648
  const scaleH = h2 / originH;
1648
1649
  const viewOriginX = originX * scaleW;
1649
1650
  const viewOriginY = originY * scaleH;
1650
- let internalX = x2 - viewOriginX;
1651
- let internalY = y2 - viewOriginY;
1651
+ const internalX = x2 - viewOriginX;
1652
+ const internalY = y2 - viewOriginY;
1652
1653
  ctx.save();
1653
1654
  ctx.translate(internalX, internalY);
1654
1655
  ctx.scale(totalScale * scaleW, totalScale * scaleH);
@@ -1668,7 +1669,8 @@ var __privateMethod = (obj, member, method) => {
1668
1669
  function drawBoxBackground(ctx, viewElem, opts) {
1669
1670
  var _a, _b;
1670
1671
  const { pattern, viewScaleInfo, viewSizeInfo } = opts;
1671
- let transform = [];
1672
+ const transform = [];
1673
+ viewElem.detail;
1672
1674
  viewElem.detail;
1673
1675
  if (viewElem.detail.background || pattern) {
1674
1676
  const { x: x2, y: y2, w: w2, h: h2, radiusList } = calcViewBoxSize(viewElem, {
@@ -1881,7 +1883,7 @@ var __privateMethod = (obj, member, method) => {
1881
1883
  const { detail, angle: angle2 } = elem;
1882
1884
  const { background: background2 = "#000000", borderColor: borderColor2 = "#000000", borderWidth: borderWidth2 = 0 } = detail;
1883
1885
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
1884
- const { x: x2, y: y2, w: w2, h: h2 } = calculator.elementSize({ x: elem.x, y: elem.y, w: elem.w, h: elem.h }, viewScaleInfo, viewSizeInfo);
1886
+ const { x: x2, y: y2, w: w2, h: h2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize({ x: elem.x, y: elem.y, w: elem.w, h: elem.h }, viewScaleInfo, viewSizeInfo)) || elem;
1885
1887
  const viewElem = Object.assign(Object.assign({}, elem), { x: x2, y: y2, w: w2, h: h2, angle: angle2 });
1886
1888
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
1887
1889
  drawBoxShadow(ctx, viewElem, {
@@ -1925,7 +1927,7 @@ var __privateMethod = (obj, member, method) => {
1925
1927
  }
1926
1928
  function drawRect(ctx, elem, opts) {
1927
1929
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
1928
- let { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
1930
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
1929
1931
  const viewElem = Object.assign(Object.assign({}, elem), { x: x2, y: y2, w: w2, h: h2, angle: angle2 });
1930
1932
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
1931
1933
  drawBoxShadow(ctx, viewElem, {
@@ -1947,7 +1949,7 @@ var __privateMethod = (obj, member, method) => {
1947
1949
  function drawImage(ctx, elem, opts) {
1948
1950
  const content = opts.loader.getContent(elem);
1949
1951
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
1950
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
1952
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
1951
1953
  const viewElem = Object.assign(Object.assign({}, elem), { x: x2, y: y2, w: w2, h: h2, angle: angle2 });
1952
1954
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
1953
1955
  drawBoxShadow(ctx, viewElem, {
@@ -1994,7 +1996,7 @@ var __privateMethod = (obj, member, method) => {
1994
1996
  function drawSVG(ctx, elem, opts) {
1995
1997
  const content = opts.loader.getContent(elem);
1996
1998
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
1997
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
1999
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
1998
2000
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
1999
2001
  if (!content) {
2000
2002
  opts.loader.load(elem, opts.elementAssets || {});
@@ -2010,7 +2012,7 @@ var __privateMethod = (obj, member, method) => {
2010
2012
  function drawHTML(ctx, elem, opts) {
2011
2013
  const content = opts.loader.getContent(elem);
2012
2014
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
2013
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
2015
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
2014
2016
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
2015
2017
  if (!content) {
2016
2018
  opts.loader.load(elem, opts.elementAssets || {});
@@ -2026,7 +2028,7 @@ var __privateMethod = (obj, member, method) => {
2026
2028
  const detailConfig = getDefaultElementDetailConfig();
2027
2029
  function drawText(ctx, elem, opts) {
2028
2030
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
2029
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
2031
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
2030
2032
  const viewElem = Object.assign(Object.assign({}, elem), { x: x2, y: y2, w: w2, h: h2, angle: angle2 });
2031
2033
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
2032
2034
  drawBox(ctx, viewElem, {
@@ -2129,7 +2131,7 @@ var __privateMethod = (obj, member, method) => {
2129
2131
  const { detail } = elem;
2130
2132
  const { originX, originY, originW, originH } = detail;
2131
2133
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
2132
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize(elem, viewScaleInfo, viewSizeInfo);
2134
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize(elem, viewScaleInfo, viewSizeInfo)) || elem;
2133
2135
  const scaleW = w2 / originW;
2134
2136
  const scaleH = h2 / originH;
2135
2137
  const viewOriginX = originX * scaleW;
@@ -2222,7 +2224,7 @@ var __privateMethod = (obj, member, method) => {
2222
2224
  }
2223
2225
  function drawGroup(ctx, elem, opts) {
2224
2226
  const { calculator, viewScaleInfo, viewSizeInfo } = opts;
2225
- const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = calculator.elementSize({ x: elem.x, y: elem.y, w: elem.w, h: elem.h, angle: elem.angle }, viewScaleInfo, viewSizeInfo);
2227
+ const { x: x2, y: y2, w: w2, h: h2, angle: angle2 } = (calculator === null || calculator === void 0 ? void 0 : calculator.elementSize({ x: elem.x, y: elem.y, w: elem.w, h: elem.h, angle: elem.angle }, viewScaleInfo, viewSizeInfo)) || elem;
2226
2228
  const viewElem = Object.assign(Object.assign({}, elem), { x: x2, y: y2, w: w2, h: h2, angle: angle2 });
2227
2229
  rotateElement(ctx, { x: x2, y: y2, w: w2, h: h2, angle: angle2 }, () => {
2228
2230
  drawBoxShadow(ctx, viewElem, {
@@ -2268,8 +2270,10 @@ var __privateMethod = (obj, member, method) => {
2268
2270
  x: newParentSize.x + child.x,
2269
2271
  y: newParentSize.y + child.y
2270
2272
  });
2271
- if (!calculator2.isElementInView(child, opts.viewScaleInfo, opts.viewSizeInfo)) {
2272
- continue;
2273
+ if (opts.forceDrawAll !== true) {
2274
+ if (!(calculator2 === null || calculator2 === void 0 ? void 0 : calculator2.isElementInView(child, opts.viewScaleInfo, opts.viewSizeInfo))) {
2275
+ continue;
2276
+ }
2273
2277
  }
2274
2278
  try {
2275
2279
  drawElement(ctx, child, Object.assign({}, opts));
@@ -2290,14 +2294,17 @@ var __privateMethod = (obj, member, method) => {
2290
2294
  }
2291
2295
  const defaultDetail = getDefaultElementDetailConfig();
2292
2296
  function drawElementList(ctx, data, opts) {
2297
+ var _a;
2293
2298
  const { elements = [] } = data;
2294
2299
  for (let i = 0; i < elements.length; i++) {
2295
2300
  const element = elements[i];
2296
2301
  const elem = Object.assign(Object.assign({}, element), {
2297
2302
  detail: Object.assign(Object.assign({}, defaultDetail), element === null || element === void 0 ? void 0 : element.detail)
2298
2303
  });
2299
- if (!opts.calculator.isElementInView(elem, opts.viewScaleInfo, opts.viewSizeInfo)) {
2300
- continue;
2304
+ if (opts.forceDrawAll !== true) {
2305
+ if (!((_a = opts.calculator) === null || _a === void 0 ? void 0 : _a.isElementInView(elem, opts.viewScaleInfo, opts.viewSizeInfo))) {
2306
+ continue;
2307
+ }
2301
2308
  }
2302
2309
  try {
2303
2310
  drawElement(ctx, elem, opts);
@@ -2333,6 +2340,23 @@ var __privateMethod = (obj, member, method) => {
2333
2340
  step((generator = generator.apply(thisArg, _arguments || [])).next());
2334
2341
  });
2335
2342
  };
2343
+ var __classPrivateFieldGet$2 = function(receiver, state, kind, f) {
2344
+ if (kind === "a" && !f)
2345
+ throw new TypeError("Private accessor was defined without a getter");
2346
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2347
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
2348
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
2349
+ };
2350
+ var __classPrivateFieldSet$2 = function(receiver, state, value, kind, f) {
2351
+ if (kind === "m")
2352
+ throw new TypeError("Private method is not writable");
2353
+ if (kind === "a" && !f)
2354
+ throw new TypeError("Private accessor was defined without a setter");
2355
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2356
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
2357
+ return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
2358
+ };
2359
+ var _Loader_instances, _Loader_loadFuncMap, _Loader_currentLoadItemMap, _Loader_storageLoadItemMap, _Loader_registerLoadFunc, _Loader_getLoadElementSource, _Loader_createLoadItem, _Loader_emitLoad, _Loader_emitError, _Loader_loadResource, _Loader_isExistingErrorStorage;
2336
2360
  const supportElementTypes = ["image", "svg", "html"];
2337
2361
  const getAssetIdFromElement = (element) => {
2338
2362
  var _a, _b, _c;
@@ -2355,10 +2379,11 @@ var __privateMethod = (obj, member, method) => {
2355
2379
  class Loader extends EventEmitter {
2356
2380
  constructor() {
2357
2381
  super();
2358
- this._loadFuncMap = {};
2359
- this._currentLoadItemMap = {};
2360
- this._storageLoadItemMap = {};
2361
- this._registerLoadFunc("image", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2382
+ _Loader_instances.add(this);
2383
+ _Loader_loadFuncMap.set(this, {});
2384
+ _Loader_currentLoadItemMap.set(this, {});
2385
+ _Loader_storageLoadItemMap.set(this, {});
2386
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_registerLoadFunc).call(this, "image", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2362
2387
  var _a;
2363
2388
  const src = ((_a = assets[elem.detail.src]) === null || _a === void 0 ? void 0 : _a.value) || elem.detail.src;
2364
2389
  const content = yield loadImage(src);
@@ -2368,7 +2393,7 @@ var __privateMethod = (obj, member, method) => {
2368
2393
  content
2369
2394
  };
2370
2395
  }));
2371
- this._registerLoadFunc("html", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2396
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_registerLoadFunc).call(this, "html", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2372
2397
  var _b;
2373
2398
  const html2 = ((_b = assets[elem.detail.html]) === null || _b === void 0 ? void 0 : _b.value) || elem.detail.html;
2374
2399
  const content = yield loadHTML(html2, {
@@ -2381,7 +2406,7 @@ var __privateMethod = (obj, member, method) => {
2381
2406
  content
2382
2407
  };
2383
2408
  }));
2384
- this._registerLoadFunc("svg", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2409
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_registerLoadFunc).call(this, "svg", (elem, assets) => __awaiter(this, void 0, void 0, function* () {
2385
2410
  var _c;
2386
2411
  const svg2 = ((_c = assets[elem.detail.svg]) === null || _c === void 0 ? void 0 : _c.value) || elem.detail.svg;
2387
2412
  const content = yield loadSVG(svg2);
@@ -2392,124 +2417,135 @@ var __privateMethod = (obj, member, method) => {
2392
2417
  };
2393
2418
  }));
2394
2419
  }
2395
- _registerLoadFunc(type, func) {
2396
- this._loadFuncMap[type] = func;
2397
- }
2398
- _getLoadElementSource(element) {
2399
- var _a, _b, _c;
2400
- let source = null;
2401
- if (element.type === "image") {
2402
- source = ((_a = element === null || element === void 0 ? void 0 : element.detail) === null || _a === void 0 ? void 0 : _a.src) || null;
2403
- } else if (element.type === "svg") {
2404
- source = ((_b = element === null || element === void 0 ? void 0 : element.detail) === null || _b === void 0 ? void 0 : _b.svg) || null;
2405
- } else if (element.type === "html") {
2406
- source = ((_c = element === null || element === void 0 ? void 0 : element.detail) === null || _c === void 0 ? void 0 : _c.html) || null;
2407
- }
2408
- return source;
2409
- }
2410
- _createLoadItem(element) {
2411
- return {
2412
- element,
2413
- status: "null",
2414
- content: null,
2415
- error: null,
2416
- startTime: -1,
2417
- endTime: -1,
2418
- source: this._getLoadElementSource(element)
2419
- };
2420
- }
2421
- _emitLoad(item) {
2422
- const assetId = getAssetIdFromElement(item.element);
2423
- const storageItem = this._storageLoadItemMap[assetId];
2424
- if (storageItem) {
2425
- if (storageItem.startTime < item.startTime) {
2426
- this._storageLoadItemMap[assetId] = item;
2427
- this.trigger("load", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2428
- }
2429
- } else {
2430
- this._storageLoadItemMap[assetId] = item;
2431
- this.trigger("load", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2432
- }
2433
- }
2434
- _emitError(item) {
2435
- const assetId = getAssetIdFromElement(item.element);
2436
- const storageItem = this._storageLoadItemMap[assetId];
2437
- if (storageItem) {
2438
- if (storageItem.startTime < item.startTime) {
2439
- this._storageLoadItemMap[assetId] = item;
2440
- this.trigger("error", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2441
- }
2442
- } else {
2443
- this._storageLoadItemMap[assetId] = item;
2444
- this.trigger("error", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2445
- }
2446
- }
2447
- _loadResource(element, assets) {
2448
- const item = this._createLoadItem(element);
2449
- const assetId = getAssetIdFromElement(element);
2450
- this._currentLoadItemMap[assetId] = item;
2451
- const loadFunc = this._loadFuncMap[element.type];
2452
- if (typeof loadFunc === "function") {
2453
- item.startTime = Date.now();
2454
- loadFunc(element, assets).then((result) => {
2455
- item.content = result.content;
2456
- item.endTime = Date.now();
2457
- item.status = "load";
2458
- this._emitLoad(item);
2459
- }).catch((err) => {
2460
- console.warn(`Load element source "${item.source}" fail`, err, element);
2461
- item.endTime = Date.now();
2462
- item.status = "error";
2463
- item.error = err;
2464
- this._emitError(item);
2465
- });
2466
- }
2467
- }
2468
- _isExistingErrorStorage(element) {
2469
- var _a;
2470
- const assetId = getAssetIdFromElement(element);
2471
- const existItem = (_a = this._currentLoadItemMap) === null || _a === void 0 ? void 0 : _a[assetId];
2472
- if (existItem && existItem.status === "error" && existItem.source && existItem.source === this._getLoadElementSource(element)) {
2473
- return true;
2474
- }
2475
- return false;
2476
- }
2477
2420
  load(element, assets) {
2478
- if (this._isExistingErrorStorage(element)) {
2421
+ if (__classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_isExistingErrorStorage).call(this, element)) {
2479
2422
  return;
2480
2423
  }
2481
2424
  if (supportElementTypes.includes(element.type)) {
2482
- this._loadResource(element, assets);
2425
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_loadResource).call(this, element, assets);
2483
2426
  }
2484
2427
  }
2485
2428
  getContent(element) {
2486
2429
  var _a, _b;
2487
2430
  const assetId = getAssetIdFromElement(element);
2488
- return ((_b = (_a = this._storageLoadItemMap) === null || _a === void 0 ? void 0 : _a[assetId]) === null || _b === void 0 ? void 0 : _b.content) || null;
2431
+ return ((_b = (_a = __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")) === null || _a === void 0 ? void 0 : _a[assetId]) === null || _b === void 0 ? void 0 : _b.content) || null;
2432
+ }
2433
+ getLoadItemMap() {
2434
+ return __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f");
2435
+ }
2436
+ setLoadItemMap(itemMap) {
2437
+ __classPrivateFieldSet$2(this, _Loader_storageLoadItemMap, itemMap, "f");
2489
2438
  }
2490
2439
  }
2440
+ _Loader_loadFuncMap = /* @__PURE__ */ new WeakMap(), _Loader_currentLoadItemMap = /* @__PURE__ */ new WeakMap(), _Loader_storageLoadItemMap = /* @__PURE__ */ new WeakMap(), _Loader_instances = /* @__PURE__ */ new WeakSet(), _Loader_registerLoadFunc = function _Loader_registerLoadFunc2(type, func) {
2441
+ __classPrivateFieldGet$2(this, _Loader_loadFuncMap, "f")[type] = func;
2442
+ }, _Loader_getLoadElementSource = function _Loader_getLoadElementSource2(element) {
2443
+ var _a, _b, _c;
2444
+ let source = null;
2445
+ if (element.type === "image") {
2446
+ source = ((_a = element === null || element === void 0 ? void 0 : element.detail) === null || _a === void 0 ? void 0 : _a.src) || null;
2447
+ } else if (element.type === "svg") {
2448
+ source = ((_b = element === null || element === void 0 ? void 0 : element.detail) === null || _b === void 0 ? void 0 : _b.svg) || null;
2449
+ } else if (element.type === "html") {
2450
+ source = ((_c = element === null || element === void 0 ? void 0 : element.detail) === null || _c === void 0 ? void 0 : _c.html) || null;
2451
+ }
2452
+ return source;
2453
+ }, _Loader_createLoadItem = function _Loader_createLoadItem2(element) {
2454
+ return {
2455
+ element,
2456
+ status: "null",
2457
+ content: null,
2458
+ error: null,
2459
+ startTime: -1,
2460
+ endTime: -1,
2461
+ source: __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_getLoadElementSource).call(this, element)
2462
+ };
2463
+ }, _Loader_emitLoad = function _Loader_emitLoad2(item) {
2464
+ const assetId = getAssetIdFromElement(item.element);
2465
+ const storageItem = __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId];
2466
+ if (storageItem) {
2467
+ if (storageItem.startTime < item.startTime) {
2468
+ __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId] = item;
2469
+ this.trigger("load", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2470
+ }
2471
+ } else {
2472
+ __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId] = item;
2473
+ this.trigger("load", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2474
+ }
2475
+ }, _Loader_emitError = function _Loader_emitError2(item) {
2476
+ const assetId = getAssetIdFromElement(item.element);
2477
+ const storageItem = __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId];
2478
+ if (storageItem) {
2479
+ if (storageItem.startTime < item.startTime) {
2480
+ __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId] = item;
2481
+ this.trigger("error", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2482
+ }
2483
+ } else {
2484
+ __classPrivateFieldGet$2(this, _Loader_storageLoadItemMap, "f")[assetId] = item;
2485
+ this.trigger("error", Object.assign(Object.assign({}, item), { countTime: item.endTime - item.startTime }));
2486
+ }
2487
+ }, _Loader_loadResource = function _Loader_loadResource2(element, assets) {
2488
+ const item = __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_createLoadItem).call(this, element);
2489
+ const assetId = getAssetIdFromElement(element);
2490
+ __classPrivateFieldGet$2(this, _Loader_currentLoadItemMap, "f")[assetId] = item;
2491
+ const loadFunc = __classPrivateFieldGet$2(this, _Loader_loadFuncMap, "f")[element.type];
2492
+ if (typeof loadFunc === "function") {
2493
+ item.startTime = Date.now();
2494
+ loadFunc(element, assets).then((result) => {
2495
+ item.content = result.content;
2496
+ item.endTime = Date.now();
2497
+ item.status = "load";
2498
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_emitLoad).call(this, item);
2499
+ }).catch((err) => {
2500
+ console.warn(`Load element source "${item.source}" fail`, err, element);
2501
+ item.endTime = Date.now();
2502
+ item.status = "error";
2503
+ item.error = err;
2504
+ __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_emitError).call(this, item);
2505
+ });
2506
+ }
2507
+ }, _Loader_isExistingErrorStorage = function _Loader_isExistingErrorStorage2(element) {
2508
+ var _a;
2509
+ const assetId = getAssetIdFromElement(element);
2510
+ const existItem = (_a = __classPrivateFieldGet$2(this, _Loader_currentLoadItemMap, "f")) === null || _a === void 0 ? void 0 : _a[assetId];
2511
+ if (existItem && existItem.status === "error" && existItem.source && existItem.source === __classPrivateFieldGet$2(this, _Loader_instances, "m", _Loader_getLoadElementSource).call(this, element)) {
2512
+ return true;
2513
+ }
2514
+ return false;
2515
+ };
2516
+ var __classPrivateFieldSet$1 = function(receiver, state, value, kind, f) {
2517
+ if (kind === "m")
2518
+ throw new TypeError("Private method is not writable");
2519
+ if (kind === "a" && !f)
2520
+ throw new TypeError("Private accessor was defined without a setter");
2521
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2522
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
2523
+ return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
2524
+ };
2525
+ var __classPrivateFieldGet$1 = function(receiver, state, kind, f) {
2526
+ if (kind === "a" && !f)
2527
+ throw new TypeError("Private accessor was defined without a getter");
2528
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2529
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
2530
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
2531
+ };
2532
+ var _Renderer_instances, _Renderer_opts, _Renderer_loader, _Renderer_init;
2491
2533
  class Renderer extends EventEmitter {
2492
2534
  constructor(opts) {
2493
2535
  super();
2494
- this._loader = new Loader();
2495
- this._opts = opts;
2496
- this._init();
2497
- }
2498
- _init() {
2499
- const { _loader: loader } = this;
2500
- loader.on("load", (e) => {
2501
- this.trigger("load", e);
2502
- });
2503
- loader.on("error", () => {
2504
- });
2536
+ _Renderer_instances.add(this);
2537
+ _Renderer_opts.set(this, void 0);
2538
+ _Renderer_loader.set(this, new Loader());
2539
+ __classPrivateFieldSet$1(this, _Renderer_opts, opts, "f");
2540
+ __classPrivateFieldGet$1(this, _Renderer_instances, "m", _Renderer_init).call(this);
2505
2541
  }
2506
2542
  updateOptions(opts) {
2507
- this._opts = opts;
2543
+ __classPrivateFieldSet$1(this, _Renderer_opts, opts, "f");
2508
2544
  }
2509
2545
  drawData(data, opts) {
2510
- const { _loader: loader } = this;
2511
- const { calculator } = this._opts;
2512
- const { viewContext } = this._opts.viewContent;
2546
+ const loader = __classPrivateFieldGet$1(this, _Renderer_loader, "f");
2547
+ const { calculator } = __classPrivateFieldGet$1(this, _Renderer_opts, "f");
2548
+ const viewContext = __classPrivateFieldGet$1(this, _Renderer_opts, "f").viewContext;
2513
2549
  viewContext.clearRect(0, 0, viewContext.canvas.width, viewContext.canvas.height);
2514
2550
  const parentElementSize = {
2515
2551
  x: 0,
@@ -2525,7 +2561,10 @@ var __privateMethod = (obj, member, method) => {
2525
2561
  }, opts));
2526
2562
  }
2527
2563
  scale(num) {
2528
- const { sharer } = this._opts;
2564
+ const { sharer } = __classPrivateFieldGet$1(this, _Renderer_opts, "f");
2565
+ if (!sharer) {
2566
+ return;
2567
+ }
2529
2568
  const { data, offsetTop, offsetBottom, offsetLeft, offsetRight, width, height, contextHeight, contextWidth, devicePixelRatio } = sharer.getActiveStoreSnapshot();
2530
2569
  if (data) {
2531
2570
  this.drawData(data, {
@@ -2546,7 +2585,21 @@ var __privateMethod = (obj, member, method) => {
2546
2585
  });
2547
2586
  }
2548
2587
  }
2588
+ setLoadItemMap(itemMap) {
2589
+ __classPrivateFieldGet$1(this, _Renderer_loader, "f").setLoadItemMap(itemMap);
2590
+ }
2591
+ getLoadItemMap() {
2592
+ return __classPrivateFieldGet$1(this, _Renderer_loader, "f").getLoadItemMap();
2593
+ }
2549
2594
  }
2595
+ _Renderer_opts = /* @__PURE__ */ new WeakMap(), _Renderer_loader = /* @__PURE__ */ new WeakMap(), _Renderer_instances = /* @__PURE__ */ new WeakSet(), _Renderer_init = function _Renderer_init2() {
2596
+ const loader = __classPrivateFieldGet$1(this, _Renderer_loader, "f");
2597
+ loader.on("load", (e) => {
2598
+ this.trigger("load", e);
2599
+ });
2600
+ loader.on("error", () => {
2601
+ });
2602
+ };
2550
2603
  class Calculator {
2551
2604
  constructor(opts) {
2552
2605
  this._opts = opts;
@@ -2558,7 +2611,7 @@ var __privateMethod = (obj, member, method) => {
2558
2611
  return isElementInView(elem, { viewScaleInfo, viewSizeInfo });
2559
2612
  }
2560
2613
  isPointInElement(p, elem, viewScaleInfo, viewSizeInfo) {
2561
- const context2d = this._opts.viewContent.boardContext;
2614
+ const context2d = this._opts.viewContext;
2562
2615
  return isViewPointInElement(p, {
2563
2616
  context2d,
2564
2617
  element: elem,
@@ -2567,7 +2620,7 @@ var __privateMethod = (obj, member, method) => {
2567
2620
  });
2568
2621
  }
2569
2622
  getPointElement(p, opts) {
2570
- const context2d = this._opts.viewContent.boardContext;
2623
+ const context2d = this._opts.viewContext;
2571
2624
  return getViewPointAtElement(p, Object.assign(Object.assign({}, opts), { context2d }));
2572
2625
  }
2573
2626
  }
@@ -2691,10 +2744,10 @@ var __privateMethod = (obj, member, method) => {
2691
2744
  });
2692
2745
  }
2693
2746
  _isInTarget(e) {
2694
- return e.target === this._opts.viewContent.boardContext.canvas;
2747
+ return e.target === this._opts.boardContent.boardContext.canvas;
2695
2748
  }
2696
2749
  _getPoint(e) {
2697
- const boardCanvas = this._opts.viewContent.boardContext.canvas;
2750
+ const boardCanvas = this._opts.boardContent.boardContext.canvas;
2698
2751
  const rect = boardCanvas.getBoundingClientRect();
2699
2752
  const p = {
2700
2753
  x: e.clientX - rect.left,
@@ -2812,7 +2865,7 @@ var __privateMethod = (obj, member, method) => {
2812
2865
  this._drawFrameStatus = "DRAWING";
2813
2866
  }
2814
2867
  const snapshot = this._drawFrameSnapshotQueue.shift();
2815
- const { renderer, viewContent, beforeDrawFrame, afterDrawFrame } = this._opts;
2868
+ const { renderer, boardContent, beforeDrawFrame, afterDrawFrame } = this._opts;
2816
2869
  if (snapshot) {
2817
2870
  const { scale, offsetTop, offsetBottom, offsetLeft, offsetRight, width, height, contextHeight, contextWidth, devicePixelRatio } = snapshot.activeStore;
2818
2871
  if (snapshot === null || snapshot === void 0 ? void 0 : snapshot.activeStore.data) {
@@ -2834,7 +2887,7 @@ var __privateMethod = (obj, member, method) => {
2834
2887
  });
2835
2888
  }
2836
2889
  beforeDrawFrame({ snapshot });
2837
- viewContent.drawView();
2890
+ boardContent.drawView();
2838
2891
  afterDrawFrame({ snapshot });
2839
2892
  }
2840
2893
  if (this._drawFrameSnapshotQueue.length === 0) {
@@ -2896,7 +2949,7 @@ var __privateMethod = (obj, member, method) => {
2896
2949
  const originViewSize = sharer.getActiveViewSizeInfo();
2897
2950
  const newViewSize = Object.assign(Object.assign({}, originViewSize), viewSize);
2898
2951
  const { width, height, devicePixelRatio } = newViewSize;
2899
- const { underContext, boardContext, helperContext, viewContext } = this._opts.viewContent;
2952
+ const { underContext, boardContext, helperContext, viewContext } = this._opts.boardContent;
2900
2953
  boardContext.canvas.width = width * devicePixelRatio;
2901
2954
  boardContext.canvas.height = height * devicePixelRatio;
2902
2955
  boardContext.canvas.style.width = `${width}px`;
@@ -2911,283 +2964,328 @@ var __privateMethod = (obj, member, method) => {
2911
2964
  return newViewSize;
2912
2965
  }
2913
2966
  }
2967
+ var __classPrivateFieldSet = function(receiver, state, value, kind, f) {
2968
+ if (kind === "m")
2969
+ throw new TypeError("Private method is not writable");
2970
+ if (kind === "a" && !f)
2971
+ throw new TypeError("Private accessor was defined without a setter");
2972
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2973
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
2974
+ return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
2975
+ };
2976
+ var __classPrivateFieldGet = function(receiver, state, kind, f) {
2977
+ if (kind === "a" && !f)
2978
+ throw new TypeError("Private accessor was defined without a getter");
2979
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
2980
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
2981
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
2982
+ };
2983
+ var _Board_instances, _Board_opts, _Board_middlewareMap, _Board_middlewares, _Board_activeMiddlewareObjs, _Board_watcher, _Board_renderer, _Board_sharer, _Board_viewer, _Board_calculator, _Board_eventHub, _Board_init, _Board_handlePointStart, _Board_handlePointEnd, _Board_handlePointMove, _Board_handleHover, _Board_handleDoubleClick, _Board_handleWheel, _Board_handleWheelScale, _Board_handleScrollX, _Board_handleScrollY, _Board_handleResize, _Board_handleClear, _Board_handleBeforeDrawFrame, _Board_handleAfterDrawFrame, _Board_resetActiveMiddlewareObjs;
2914
2984
  const throttleTime = 10;
2915
- const LOCK_MODES = ["RULER"];
2916
2985
  class Board {
2917
2986
  constructor(opts) {
2918
- this._middlewares = [];
2919
- this._middlewareObjs = [];
2920
- this._activeMiddlewareObjs = [];
2921
- this._eventHub = new EventEmitter();
2922
- this._activeMode = "SELECT";
2923
- const { viewContent } = opts;
2987
+ _Board_instances.add(this);
2988
+ _Board_opts.set(this, void 0);
2989
+ _Board_middlewareMap.set(this, /* @__PURE__ */ new WeakMap());
2990
+ _Board_middlewares.set(this, []);
2991
+ _Board_activeMiddlewareObjs.set(this, []);
2992
+ _Board_watcher.set(this, void 0);
2993
+ _Board_renderer.set(this, void 0);
2994
+ _Board_sharer.set(this, void 0);
2995
+ _Board_viewer.set(this, void 0);
2996
+ _Board_calculator.set(this, void 0);
2997
+ _Board_eventHub.set(this, new EventEmitter());
2998
+ const { boardContent } = opts;
2924
2999
  const sharer = new Sharer();
2925
- const calculator = new Calculator({ viewContent });
3000
+ const calculator = new Calculator({ viewContext: boardContent.viewContext });
2926
3001
  const watcher = new BoardWatcher({
2927
- viewContent,
3002
+ boardContent,
2928
3003
  sharer
2929
3004
  });
2930
3005
  const renderer = new Renderer({
2931
- viewContent,
3006
+ viewContext: boardContent.viewContext,
2932
3007
  sharer,
2933
3008
  calculator
2934
3009
  });
2935
- this._opts = opts;
2936
- this._sharer = sharer;
2937
- this._watcher = watcher;
2938
- this._calculator = calculator;
2939
- this._viewer = new Viewer({
2940
- viewContent: opts.viewContent,
3010
+ __classPrivateFieldSet(this, _Board_opts, opts, "f");
3011
+ __classPrivateFieldSet(this, _Board_sharer, sharer, "f");
3012
+ __classPrivateFieldSet(this, _Board_watcher, watcher, "f");
3013
+ __classPrivateFieldSet(this, _Board_renderer, renderer, "f");
3014
+ __classPrivateFieldSet(this, _Board_calculator, calculator, "f");
3015
+ __classPrivateFieldSet(this, _Board_viewer, new Viewer({
3016
+ boardContent: opts.boardContent,
2941
3017
  sharer,
2942
3018
  renderer,
2943
- calculator,
3019
+ calculator: __classPrivateFieldGet(this, _Board_calculator, "f"),
2944
3020
  beforeDrawFrame: (e) => {
2945
- this._handleBeforeDrawFrame(e);
3021
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleBeforeDrawFrame).call(this, e);
2946
3022
  },
2947
3023
  afterDrawFrame: (e) => {
2948
- this._handleAfterDrawFrame(e);
2949
- }
2950
- });
2951
- this._init();
2952
- this._resetActiveMiddlewareObjs();
2953
- }
2954
- _init() {
2955
- this._watcher.on("pointStart", this._handlePointStart.bind(this));
2956
- this._watcher.on("pointEnd", this._handlePointEnd.bind(this));
2957
- this._watcher.on("pointMove", throttle((e) => {
2958
- this._handlePointMove(e);
2959
- }, throttleTime));
2960
- this._watcher.on("hover", throttle((e) => {
2961
- this._handleHover(e);
2962
- }, throttleTime));
2963
- this._watcher.on("wheel", throttle((e) => {
2964
- this._handleWheel(e);
2965
- }, throttleTime));
2966
- this._watcher.on("wheelScale", throttle((e) => {
2967
- this._handleWheelScale(e);
2968
- }, throttleTime));
2969
- this._watcher.on("scrollX", this._handleScrollX.bind(this));
2970
- this._watcher.on("scrollY", this._handleScrollY.bind(this));
2971
- this._watcher.on("resize", this._handleResize.bind(this));
2972
- this._watcher.on("doubleClick", this._handleDoubleClick.bind(this));
2973
- }
2974
- _handlePointStart(e) {
2975
- var _a;
2976
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
2977
- const obj = this._activeMiddlewareObjs[i];
2978
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointStart) === null || _a === void 0 ? void 0 : _a.call(obj, e);
2979
- if (result === false) {
2980
- return;
2981
- }
2982
- }
2983
- }
2984
- _handlePointEnd(e) {
2985
- var _a;
2986
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
2987
- const obj = this._activeMiddlewareObjs[i];
2988
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointEnd) === null || _a === void 0 ? void 0 : _a.call(obj, e);
2989
- if (result === false) {
2990
- return;
2991
- }
2992
- }
2993
- }
2994
- _handlePointMove(e) {
2995
- var _a;
2996
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
2997
- const obj = this._activeMiddlewareObjs[i];
2998
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointMove) === null || _a === void 0 ? void 0 : _a.call(obj, e);
2999
- if (result === false) {
3000
- return;
3001
- }
3002
- }
3003
- }
3004
- _handleHover(e) {
3005
- var _a;
3006
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3007
- const obj = this._activeMiddlewareObjs[i];
3008
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.hover) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3009
- if (result === false) {
3010
- return;
3011
- }
3012
- }
3013
- }
3014
- _handleDoubleClick(e) {
3015
- var _a;
3016
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3017
- const obj = this._activeMiddlewareObjs[i];
3018
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.doubleClick) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3019
- if (result === false) {
3020
- return;
3021
- }
3022
- }
3023
- }
3024
- _handleWheel(e) {
3025
- var _a;
3026
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3027
- const obj = this._activeMiddlewareObjs[i];
3028
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.wheel) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3029
- if (result === false) {
3030
- return;
3031
- }
3032
- }
3033
- }
3034
- _handleWheelScale(e) {
3035
- var _a;
3036
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3037
- const obj = this._activeMiddlewareObjs[i];
3038
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.wheelScale) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3039
- if (result === false) {
3040
- return;
3041
- }
3042
- }
3043
- }
3044
- _handleScrollX(e) {
3045
- var _a;
3046
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3047
- const obj = this._activeMiddlewareObjs[i];
3048
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.scrollX) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3049
- if (result === false) {
3050
- return;
3051
- }
3052
- }
3053
- }
3054
- _handleScrollY(e) {
3055
- var _a;
3056
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3057
- const obj = this._activeMiddlewareObjs[i];
3058
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.scrollY) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3059
- if (result === false) {
3060
- return;
3061
- }
3062
- }
3063
- }
3064
- _handleResize(e) {
3065
- var _a;
3066
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3067
- const obj = this._activeMiddlewareObjs[i];
3068
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.resize) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3069
- if (result === false) {
3070
- return;
3071
- }
3072
- }
3073
- }
3074
- _handleClear(e) {
3075
- var _a;
3076
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3077
- const obj = this._activeMiddlewareObjs[i];
3078
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.clear) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3079
- if (result === false) {
3080
- return;
3081
- }
3082
- }
3083
- }
3084
- _handleBeforeDrawFrame(e) {
3085
- var _a;
3086
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3087
- const obj = this._activeMiddlewareObjs[i];
3088
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.beforeDrawFrame) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3089
- if (result === false) {
3090
- return;
3091
- }
3092
- }
3093
- }
3094
- _handleAfterDrawFrame(e) {
3095
- var _a;
3096
- for (let i = 0; i < this._activeMiddlewareObjs.length; i++) {
3097
- const obj = this._activeMiddlewareObjs[i];
3098
- const result = (_a = obj === null || obj === void 0 ? void 0 : obj.afterDrawFrame) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3099
- if (result === false) {
3100
- return;
3101
- }
3102
- }
3103
- }
3104
- _resetActiveMiddlewareObjs() {
3105
- const { _activeMode: activeMode } = this;
3106
- const modes = [...LOCK_MODES, activeMode];
3107
- const activeMiddlewareObjs = [];
3108
- this._middlewareObjs.forEach((m) => {
3109
- if (m.isDefault === true) {
3110
- activeMiddlewareObjs.push(m);
3111
- } else if (modes.includes(m.mode)) {
3112
- activeMiddlewareObjs.push(m);
3024
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleAfterDrawFrame).call(this, e);
3113
3025
  }
3114
- });
3115
- this._activeMiddlewareObjs = activeMiddlewareObjs;
3026
+ }), "f");
3027
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_init).call(this);
3028
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_resetActiveMiddlewareObjs).call(this);
3116
3029
  }
3117
3030
  getSharer() {
3118
- return this._sharer;
3031
+ return __classPrivateFieldGet(this, _Board_sharer, "f");
3119
3032
  }
3120
3033
  getViewer() {
3121
- return this._viewer;
3034
+ return __classPrivateFieldGet(this, _Board_viewer, "f");
3035
+ }
3036
+ getRenderer() {
3037
+ return __classPrivateFieldGet(this, _Board_renderer, "f");
3122
3038
  }
3123
3039
  setData(data) {
3124
- const sharer = this._sharer;
3125
- this._sharer.setActiveStorage("data", data);
3040
+ const sharer = __classPrivateFieldGet(this, _Board_sharer, "f");
3041
+ __classPrivateFieldGet(this, _Board_sharer, "f").setActiveStorage("data", data);
3126
3042
  const viewSizeInfo = sharer.getActiveViewSizeInfo();
3127
3043
  const newViewContextSize = calcElementsContextSize(data.elements, {
3128
3044
  viewWidth: viewSizeInfo.width,
3129
3045
  viewHeight: viewSizeInfo.height,
3130
3046
  extend: true
3131
3047
  });
3132
- this._viewer.drawFrame();
3048
+ __classPrivateFieldGet(this, _Board_viewer, "f").drawFrame();
3133
3049
  const newViewSizeInfo = Object.assign(Object.assign({}, viewSizeInfo), newViewContextSize);
3134
- this._sharer.setActiveViewSizeInfo(newViewSizeInfo);
3050
+ __classPrivateFieldGet(this, _Board_sharer, "f").setActiveViewSizeInfo(newViewSizeInfo);
3135
3051
  return { viewSizeInfo: newViewSizeInfo };
3136
3052
  }
3137
3053
  getData() {
3138
- const { data } = this._sharer.getActiveStoreSnapshot();
3054
+ const { data } = __classPrivateFieldGet(this, _Board_sharer, "f").getActiveStoreSnapshot();
3139
3055
  return data;
3140
3056
  }
3141
3057
  use(middleware) {
3142
- const { viewContent, container } = this._opts;
3143
- const { _sharer: sharer, _viewer: viewer, _calculator: calculator, _eventHub: eventHub } = this;
3144
- const obj = middleware({ viewContent, sharer, viewer, calculator, eventHub, container });
3145
- this._middlewares.push(middleware);
3146
- this._activeMiddlewareObjs.push(obj);
3058
+ var _a, _b, _c;
3059
+ if (__classPrivateFieldGet(this, _Board_middlewareMap, "f").has(middleware)) {
3060
+ const item = __classPrivateFieldGet(this, _Board_middlewareMap, "f").get(middleware);
3061
+ if (item) {
3062
+ (_b = (_a = item.middlewareObject).use) === null || _b === void 0 ? void 0 : _b.call(_a);
3063
+ item.status = "enable";
3064
+ __classPrivateFieldGet(this, _Board_middlewareMap, "f").set(middleware, item);
3065
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_resetActiveMiddlewareObjs).call(this);
3066
+ return;
3067
+ }
3068
+ }
3069
+ const { boardContent, container } = __classPrivateFieldGet(this, _Board_opts, "f");
3070
+ const sharer = __classPrivateFieldGet(this, _Board_sharer, "f");
3071
+ const viewer = __classPrivateFieldGet(this, _Board_viewer, "f");
3072
+ const calculator = __classPrivateFieldGet(this, _Board_calculator, "f");
3073
+ const eventHub = __classPrivateFieldGet(this, _Board_eventHub, "f");
3074
+ const obj = middleware({ boardContent, sharer, viewer, calculator, eventHub, container });
3075
+ (_c = obj.use) === null || _c === void 0 ? void 0 : _c.call(obj);
3076
+ __classPrivateFieldGet(this, _Board_middlewares, "f").push(middleware);
3077
+ __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").push(obj);
3078
+ __classPrivateFieldGet(this, _Board_middlewareMap, "f").set(middleware, {
3079
+ status: "enable",
3080
+ middlewareObject: obj
3081
+ });
3082
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_resetActiveMiddlewareObjs).call(this);
3083
+ }
3084
+ disuse(middleware) {
3085
+ var _a, _b;
3086
+ const item = __classPrivateFieldGet(this, _Board_middlewareMap, "f").get(middleware);
3087
+ if (item) {
3088
+ (_b = (_a = item.middlewareObject).disuse) === null || _b === void 0 ? void 0 : _b.call(_a);
3089
+ item.status = "disable";
3090
+ __classPrivateFieldGet(this, _Board_middlewareMap, "f").set(middleware, item);
3091
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_resetActiveMiddlewareObjs).call(this);
3092
+ }
3147
3093
  }
3148
3094
  scale(opts) {
3149
- const { _viewer: viewer } = this;
3095
+ const viewer = __classPrivateFieldGet(this, _Board_viewer, "f");
3150
3096
  const { moveX, moveY } = viewer.scale(opts);
3151
3097
  viewer.scroll({ moveX, moveY });
3152
3098
  }
3153
3099
  scroll(opts) {
3154
- return this._viewer.scroll(opts);
3100
+ return __classPrivateFieldGet(this, _Board_viewer, "f").scroll(opts);
3155
3101
  }
3156
3102
  updateViewScaleInfo(opts) {
3157
- return this._viewer.updateViewScaleInfo(opts);
3103
+ return __classPrivateFieldGet(this, _Board_viewer, "f").updateViewScaleInfo(opts);
3158
3104
  }
3159
3105
  resize(newViewSize) {
3160
- const viewSize = this._viewer.resize(newViewSize);
3106
+ const viewSize = __classPrivateFieldGet(this, _Board_viewer, "f").resize(newViewSize);
3161
3107
  const { width, height, devicePixelRatio } = newViewSize;
3162
- const { viewContent } = this._opts;
3163
- viewContent.viewContext.$resize({ width, height, devicePixelRatio });
3164
- viewContent.helperContext.$resize({ width, height, devicePixelRatio });
3165
- viewContent.boardContext.$resize({ width, height, devicePixelRatio });
3166
- this._viewer.drawFrame();
3167
- this._watcher.trigger("resize", viewSize);
3168
- this._sharer.setActiveViewSizeInfo(newViewSize);
3108
+ const { boardContent } = __classPrivateFieldGet(this, _Board_opts, "f");
3109
+ boardContent.viewContext.$resize({ width, height, devicePixelRatio });
3110
+ boardContent.helperContext.$resize({ width, height, devicePixelRatio });
3111
+ boardContent.boardContext.$resize({ width, height, devicePixelRatio });
3112
+ boardContent.underContext.$resize({ width, height, devicePixelRatio });
3113
+ __classPrivateFieldGet(this, _Board_viewer, "f").drawFrame();
3114
+ __classPrivateFieldGet(this, _Board_watcher, "f").trigger("resize", viewSize);
3115
+ __classPrivateFieldGet(this, _Board_sharer, "f").setActiveViewSizeInfo(newViewSize);
3169
3116
  }
3170
3117
  clear() {
3171
- const { viewContent } = this._opts;
3172
- const { underContext, helperContext, viewContext, boardContext } = viewContent;
3118
+ const { boardContent } = __classPrivateFieldGet(this, _Board_opts, "f");
3119
+ const { underContext, helperContext, viewContext, boardContext } = boardContent;
3173
3120
  underContext.clearRect(0, 0, underContext.canvas.width, underContext.canvas.height);
3174
3121
  helperContext.clearRect(0, 0, helperContext.canvas.width, helperContext.canvas.height);
3175
3122
  viewContext.clearRect(0, 0, viewContext.canvas.width, viewContext.canvas.height);
3176
3123
  boardContext.clearRect(0, 0, boardContext.canvas.width, boardContext.canvas.height);
3177
- this._handleClear();
3124
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleClear).call(this);
3178
3125
  }
3179
3126
  getEventHub() {
3180
- return this._eventHub;
3127
+ return __classPrivateFieldGet(this, _Board_eventHub, "f");
3128
+ }
3129
+ }
3130
+ _Board_opts = /* @__PURE__ */ new WeakMap(), _Board_middlewareMap = /* @__PURE__ */ new WeakMap(), _Board_middlewares = /* @__PURE__ */ new WeakMap(), _Board_activeMiddlewareObjs = /* @__PURE__ */ new WeakMap(), _Board_watcher = /* @__PURE__ */ new WeakMap(), _Board_renderer = /* @__PURE__ */ new WeakMap(), _Board_sharer = /* @__PURE__ */ new WeakMap(), _Board_viewer = /* @__PURE__ */ new WeakMap(), _Board_calculator = /* @__PURE__ */ new WeakMap(), _Board_eventHub = /* @__PURE__ */ new WeakMap(), _Board_instances = /* @__PURE__ */ new WeakSet(), _Board_init = function _Board_init2() {
3131
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("pointStart", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handlePointStart).bind(this));
3132
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("pointEnd", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handlePointEnd).bind(this));
3133
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("pointMove", throttle((e) => {
3134
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handlePointMove).call(this, e);
3135
+ }, throttleTime));
3136
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("hover", throttle((e) => {
3137
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleHover).call(this, e);
3138
+ }, throttleTime));
3139
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("wheel", throttle((e) => {
3140
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleWheel).call(this, e);
3141
+ }, throttleTime));
3142
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("wheelScale", throttle((e) => {
3143
+ __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleWheelScale).call(this, e);
3144
+ }, throttleTime));
3145
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("scrollX", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleScrollX).bind(this));
3146
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("scrollY", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleScrollY).bind(this));
3147
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("resize", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleResize).bind(this));
3148
+ __classPrivateFieldGet(this, _Board_watcher, "f").on("doubleClick", __classPrivateFieldGet(this, _Board_instances, "m", _Board_handleDoubleClick).bind(this));
3149
+ }, _Board_handlePointStart = function _Board_handlePointStart2(e) {
3150
+ var _a;
3151
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3152
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3153
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointStart) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3154
+ if (result === false) {
3155
+ return;
3156
+ }
3181
3157
  }
3182
- }
3158
+ }, _Board_handlePointEnd = function _Board_handlePointEnd2(e) {
3159
+ var _a;
3160
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3161
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3162
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointEnd) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3163
+ if (result === false) {
3164
+ return;
3165
+ }
3166
+ }
3167
+ }, _Board_handlePointMove = function _Board_handlePointMove2(e) {
3168
+ var _a;
3169
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3170
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3171
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.pointMove) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3172
+ if (result === false) {
3173
+ return;
3174
+ }
3175
+ }
3176
+ }, _Board_handleHover = function _Board_handleHover2(e) {
3177
+ var _a;
3178
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3179
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3180
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.hover) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3181
+ if (result === false) {
3182
+ return;
3183
+ }
3184
+ }
3185
+ }, _Board_handleDoubleClick = function _Board_handleDoubleClick2(e) {
3186
+ var _a;
3187
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3188
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3189
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.doubleClick) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3190
+ if (result === false) {
3191
+ return;
3192
+ }
3193
+ }
3194
+ }, _Board_handleWheel = function _Board_handleWheel2(e) {
3195
+ var _a;
3196
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3197
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3198
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.wheel) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3199
+ if (result === false) {
3200
+ return;
3201
+ }
3202
+ }
3203
+ }, _Board_handleWheelScale = function _Board_handleWheelScale2(e) {
3204
+ var _a;
3205
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3206
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3207
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.wheelScale) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3208
+ if (result === false) {
3209
+ return;
3210
+ }
3211
+ }
3212
+ }, _Board_handleScrollX = function _Board_handleScrollX2(e) {
3213
+ var _a;
3214
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3215
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3216
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.scrollX) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3217
+ if (result === false) {
3218
+ return;
3219
+ }
3220
+ }
3221
+ }, _Board_handleScrollY = function _Board_handleScrollY2(e) {
3222
+ var _a;
3223
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3224
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3225
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.scrollY) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3226
+ if (result === false) {
3227
+ return;
3228
+ }
3229
+ }
3230
+ }, _Board_handleResize = function _Board_handleResize2(e) {
3231
+ var _a;
3232
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3233
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3234
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.resize) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3235
+ if (result === false) {
3236
+ return;
3237
+ }
3238
+ }
3239
+ }, _Board_handleClear = function _Board_handleClear2(e) {
3240
+ var _a;
3241
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3242
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3243
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.clear) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3244
+ if (result === false) {
3245
+ return;
3246
+ }
3247
+ }
3248
+ }, _Board_handleBeforeDrawFrame = function _Board_handleBeforeDrawFrame2(e) {
3249
+ var _a;
3250
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3251
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3252
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.beforeDrawFrame) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3253
+ if (result === false) {
3254
+ return;
3255
+ }
3256
+ }
3257
+ }, _Board_handleAfterDrawFrame = function _Board_handleAfterDrawFrame2(e) {
3258
+ var _a;
3259
+ for (let i = 0; i < __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f").length; i++) {
3260
+ const obj = __classPrivateFieldGet(this, _Board_activeMiddlewareObjs, "f")[i];
3261
+ const result = (_a = obj === null || obj === void 0 ? void 0 : obj.afterDrawFrame) === null || _a === void 0 ? void 0 : _a.call(obj, e);
3262
+ if (result === false) {
3263
+ return;
3264
+ }
3265
+ }
3266
+ }, _Board_resetActiveMiddlewareObjs = function _Board_resetActiveMiddlewareObjs2() {
3267
+ const activeMiddlewareObjs = [];
3268
+ const middlewareMap = __classPrivateFieldGet(this, _Board_middlewareMap, "f");
3269
+ __classPrivateFieldGet(this, _Board_middlewares, "f").forEach((middleware) => {
3270
+ const item = middlewareMap.get(middleware);
3271
+ if ((item === null || item === void 0 ? void 0 : item.status) === "enable" && (item === null || item === void 0 ? void 0 : item.middlewareObject)) {
3272
+ activeMiddlewareObjs.push(item.middlewareObject);
3273
+ }
3274
+ });
3275
+ __classPrivateFieldSet(this, _Board_activeMiddlewareObjs, activeMiddlewareObjs, "f");
3276
+ };
3183
3277
  const CURSOR = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF92lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuMTY0NzUzLCAyMDIxLzAyLzE1LTExOjUyOjEzICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDktMTdUMTY6MDc6MjYrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTA5LTE3VDE2OjEyOjUwKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTA5LTE3VDE2OjEyOjUwKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjliMGM0MzI2LWU4ZTQtNDlkNy04MmUzLTgxODkwYTE2ZmU1YSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjMzOGFhZDBmLWZkZjMtODE0MS1iMTZmLWNiZWIzNTQyYTJhMCIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjUwODAxNzc1LWZlNGEtNDQyMy05NDQ3LThkYWRhNzZhYTllOSI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NTA4MDE3NzUtZmU0YS00NDIzLTk0NDctOGRhZGE3NmFhOWU5IiBzdEV2dDp3aGVuPSIyMDIzLTA5LTE3VDE2OjA3OjI2KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6OWIwYzQzMjYtZThlNC00OWQ3LTgyZTMtODE4OTBhMTZmZTVhIiBzdEV2dDp3aGVuPSIyMDIzLTA5LTE3VDE2OjEyOjUwKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7W6XrzAAAGLklEQVRYhb2Xf2iUdRzHX/txtfXLplZ6Wblm6fzRmG6r7Uou1AxKRjQKYUqgaLBACFogppcK1h8aLRkMSYaJIA5hYMomZpskEfPOufCaDpZ6t7rbre263U3vzn3643meu+eu3XNzvz7w4bbdc/e89nl/Pu/v50HUCAQCx1tbW0uAx4CHgSwggxkKERkziUQif2mQ0WjU53a7vwSeBB4BTEDmTICmBBwYGDivVlDjlFAo9KvT6dwIPAHkANkq6MwDXr169bCISENDg9TX14s+BgcHf2hubi5mBmRPCXj06NFPREQ6OjoEkPLycrl06VIMMhKJeFwu1xdMs+wpAYuLi9eIiIyOjkpeXp4AAsj27dvF7/fHQIPB4C9dXV0fME2ypwQEXvX7/bdFRNauXRsDBMRkMsnhw4cTZB8YGGhsamp6hSmW3Qhw1Y0bN86LiNTW1iYAallWViZtbW162ftcLtdO/i/7tAAWtba2ficicvLkyTEBtdy6dasMDg7GQIeHh9s7OzvfBx5nkrIbAS7du3fvxyIiPT09hoBa1tXVJcv+fWNj4zLgUeAhJiC7EeDLwOsiMioisnDhwnFBrlixQi5evKiX/c6tW7c+R5E9lweU3QjwReDV/v7+bhGRqqqqcQFquWnTJvH5fHrZLzocjkoSZU9bTSPA54GV165daxYROXDgwAMBannw4MFk2RsaGhqWME7ZjQDNwIrTp09/JSLS0tIyIUBACgoK5MKFCzHIcDj85+3btz8FZpFGdiPAZ4DCmpqaTSIiPp9vwoBaVlVVidfr1ct+/sqVK+9iILsR4FzgJcASDoeHRUSKioomDQnI/v37E2T3+Xz1hw4dWjSW7EaAeUA+UNbX12cXEdmyZcuUAAJiNpvlzJkzetl73G53rVrN2EmUCjATuA9EgYjL5eoGKCkpGatNHijmz5/Pxo0b2blzJ2azOfZ3k8lUYDabv45Go/Y7d+6sIY0VZQOjGqDT6bxeWlrKqlWrJgRlsVhYv349FRUVWCwWcnJyEt4PBoOuoaEhu9frvdzR0fHTtm3buolvRpLqe3OBp4EllZWV74mIRKNRyc3NTSvf7Nmzpbq6Wk6cOCFut1uSY2RkJOB0Ou3Nzc3Ha2trPwPWAGXAEuBZFFPPAbKMevBhYA6wCKgIBoP9IiKrV682hLPZbP8DEpH7vb29N1paWn602WwHFyxYsAX4EKgE3gIsQBFQgOIeT6j3z0wFqEkc60OPx9Odn58/t6SkhPb29jFLbrVa2bNnDwBer7fv5s2bPQ6Ho7upqcnZ1tbmASJq3gPC6utdYESXYfWeo6mkBaUHRQ/odrv/yM/Pt5SWlqb8kAbncDh+W7lyZYN683u6DOvAwipsOOnniA4wZf9lqhdoVYzY7fbrQMpBsdlsWK1WRkZGAtXV1d8D/wA+wKNLr5o+YEC9ZggIAEHiFbyfDhCUCcoFngIWFxYWrtMaat68eQl9V15eHmu2+vr6OuAd4A2gGFgMLERp/mdQ+noWyuadi9Jr2aQ4k42GBPXDs1Ga97WhoaFbIiIbNmxIANTWq87Ozp9VuApgGfACihPkoRjwI+p3mlSgtA9ZRkYNYwwKJBr2rl27sFqthEKhwZqamqOAX5f/AsPE5btLvM/GJWO6yFb/82eBonPnztWJiJw9e1YAWb58eUzaI0eOfAO8CbwCPIfiZZN+eEoncSaKLPOApbt3794uIuL1ehOktdvtF4C3gRKURXcOSn9lTRRsvIAZKI4+l/gjQFREZMeOHSIiEggE+tetW/cRitkuRhmERxnnxjxZQFDWnzzURwCv1+vUHxHHjh37lri0C1Am9KGpgDMC1G8SQnxxCHs8Hqf2RldX10+bN28+i+JjwyT62KSaP13oAfWTHO7t7f0dIBQK/b1v375GlEnVjPYuyoQaHlNTDahVMALca29vdwBcvnz5+KlTp26OATft1UuODBS7yEOxj0K/329HOSWWopjxlE1tchhtM7FriPfgXSDDbrfXo0gbJr4QzIi0WiRPYBbKZJrUV23b0dYn7XSYcsBkS9EiO/k6lApq1cwiPjzaAM1Y9cYC1G6uAWrPCtrvMwoHqU02Q5caIEzj1KaS+D+vIjxtLug31gAAAABJRU5ErkJggg==";
3184
3278
  const CURSOR_RESIZE = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAApCAYAAABHomvIAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF92lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDYgNzkuMTY0NzUzLCAyMDIxLzAyLzE1LTExOjUyOjEzICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjMtMDktMTdUMTY6MzE6MjMrMDg6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIzLTA5LTE3VDE2OjQ0OjIyKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIzLTA5LTE3VDE2OjQ0OjIyKzA4OjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MTBhYjUzLWM0ZjEtNDVhNS04MjhkLTIxOTczOWFjOTk3MSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjBkMDNmNjM5LTE5MzctY2Y0MC1hMTg0LTIyMjg0NzczNWNmYSIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjgyYjQwZGRmLWE0ZGEtNDY3MC1iYzc2LTBhYjY3ZmI5M2I0ZSI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ODJiNDBkZGYtYTRkYS00NjcwLWJjNzYtMGFiNjdmYjkzYjRlIiBzdEV2dDp3aGVuPSIyMDIzLTA5LTE3VDE2OjMxOjIzKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NjQxMGFiNTMtYzRmMS00NWE1LTgyOGQtMjE5NzM5YWM5OTcxIiBzdEV2dDp3aGVuPSIyMDIzLTA5LTE3VDE2OjQ0OjIyKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjIuMyAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz57vRudAAAEk0lEQVRYhe3ZW0jbVxzA8e8/MX+NYnG9uI4xE3bvoLt0FzradRfGBtsYo32YdAhb6WQyBqV7KOylpYjzZShDGfjmyxgbgjjwyRm16SYMhgiNKDhbL3VtNF4xJOnf3x7+59i/Wf4aTbInf3AwJMdzPjnnf/n9/jFEhGzDMIxMb3uAIsDs6ek5urS05Dtz5syE+uwekAQS6u89YD19gC0NIpJ1c8GZQHlXV9fJRCIxGo/HxxoaGj4CngWOAEGgEihXfT07MeQC3MB1dna+lkgkRkXF6urq3xcuXPgUOAE8DzwGPOiGLARwEy4ej4+JiITD4elr167NiIgsLi7eqq2trQPeBI4Bj7sh8w10xZmmeds0zdn+/v5/RERisdjUuXPnvgLeAl50Q+YTaAA+oKy7u/uE3laNAwSQ4uLiu6FQ6G4G5DG13YeAMjWWkU+gBygJhULHNe769etTTpwDGXUiz58//yXwujp5qoAHgBLAk0+gNxKJHEulUiMKN2ma5gwgPp/vjhOXjlxYWJisq6urBV5RW30IKAW8eQPGYrGjlmXdEBEZHBy8aZrmFCCmac729fVtAHt7e6MO5N2+vr47IiJLS0s3L126dBZ4Sh2LZUBRwVdwYGBgVuwOYh/zsoF0bnPBVzDTMRgOh6dFhROokSIi8/Pz0+pEeaPQx+DGWdzV1XVSX2LcgCIic3NzMzU1NV8D7wIvq9WrLNRZvOk62NHRccqJTAdGo9Hb1dXV3wAfYt9VjgAPFfI66EQWAxU9PT0fuwEvXrzYBJwF3gFeAAJAhfrfrO4k/7lxZxnr2JlJqry8POnWyePx6H4JR0vhktVkHGOXQI20SkpKLLcOhmGsA5YCaZiVLS5XoADi9XpdkznDMERhnE0fCgUHZhvOW+CO4/8A5hR7wFxjD5hr7AFzjZyBlmVlrOYdYaS1HUUuQA/gWV9fd51URDyqn1c1j6MVFGjoidfW1oq2ABrYj0V82OmVzwHNajVdB88C5wOKTdM87NaxsrKyQsFKHC2BnTDo+/TWt8Bd5INeVC44NDT0xXYZdXNz8w/AaeyS8yjwCPdzQu92ht2m/OUjIyOfS1pkAoqItLS0fA+8D7wKPA0cxs6qC1O4T0xMfKYnb21tnXEDNjc3z+nXbW1t3wFvYz9dCAL7KUThHovFPtGTNjU1jQFSX18/lg68cuXKLUAaGxs3vkB7e/u3wHHgCQpUdnpTqdQvesJgMDisUVevXh3Xry9fvnxTv66qqprQ/cfHx/vVNj/J/couv0DAv7q6+pMDeYPNSalkwkUikX7s4ukl4FHgAODPN1CXnPsWFxd/dCAjW+GGhoZCwAfYpeczwMPAPjVW3gv3IvXN98disZ8dyBGNCwQC4/r94eHhfuy6+JS6zATUCeJXY+W9cNfIUuDAwsLCr05kIBDYeBQ8Ojr6h8Lpx25BtbWlGpfv62BG5PLy8m+SFpOTk38C76mVe84NVyhgOvLgysrK7xoXjUb/Uqt2XG1rEDiYCbcd0MgwsWtk+J1EI03An0wmw5Zlefx+/2n1eRKIO5r+rWTTpFsZ/gWFrGMmeObuqwAAAABJRU5ErkJggg==";
3279
+ const CURSOR_DRAG_DEFAULT = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAApCAYAAABHomvIAAAEvUlEQVRYhc2Y20/cVRDHP8v+uKzAWkpDCtZq8BYhJkq8PBoJxgj7I2m0ryaSyFN9IT74pI8+8WJiggRj/APApFkSTGRJ+qKGUiyxbGPEWsUSuVhYC12Wy8+HmeMeYPe3d3WSye/k/M7le+bMzJkZ+J9ToEJreGVYN+vihcytstjQocUlAw0WCSoIVCv3Ae8CXwIt+u8XHVeOG8qLqgAHqAFCQCNwGugCthBJGd7S/tM6LqTzHI5KuqzgaoAHgEvAtwrkG2AG8FzXvep5nue67lX9N6P/PR1/SefXlBtkFXKNDUA/RyX1D9uUbYzOb9D1ygbSQU7eDMxhSSsSiVz3AxiJRK57nuf19/fPad8coqONFCBJPyUOIKc1OvcbgiY9ICDT8+0DHge2gR0gBeyTtviM5HeKAGlrrfMZVwhdAVaAr4F3KNF4gkA9cBbowOc68+3LwDn1Mhdy4/OcYk54nPr6+m54nofruvPa9SFQ6wfQTweNgTwInAGuQWk6mEUvHwb+Au4Dexx7ffK9+0q+CHWIBIOZ9skHYKWfK9tQ8gZoLDjIyWCg3ORY+2T8aYOyg4EaRIFrkCs4QU1NTSvabC20zyIDzuyfkYzEahHX8jHwE/LwXwHeJ4P7KIVIu5ouxFDC+HgLAy4MfEF2v1UpgOezATSiNVf6EvAWsD01NXVtdnb2bk9Pz81sp/q3KIi8t83Ae4DX0tJy0z7t8PDwD4FAYIX/WILVwKMAzc3Nu/agoaGhzmg0ugcsV0hIvlSNoH8IuIiebHJycrls4sotwaxGYvueAPAjEg3jum79yMjIr5WUjFLOxMpBIopWoBN4GfhOJ+4NDg4ulVt6i4uLm7r+BvAscA4fCXrAAfJQJ5Fg8gPgMuCMjo62d3V1LW1sbKRKlpXSxMTEmjZ/5qQrOwHwUAGmkIjiHhJdfKrM/Pz8Y+3t7RvT09Ob5QAYi8X2tbmke2cEZwAaCdoAt5QvIzEbiUSitbe3tyoej++UCnBhYSGkzdu6d1aQxkgOkfwgieQMCeCu8iwSnpNKpcIdHR3BZDJ5UCy4SCSyvL6+/giiSou67wE+eYmhAKKkIaAJUdynkdflNcQF3dFTpooxjmg0aozDAz4DXkB8bxPy1OYM7QzIOuAU0AY8pQu9CrwJ3AK8UCj0RyHgZmZmli1w3wOvAM/oHo1kiZiygbSDh7PAE8DzQA/wBqKnnuM4a2NjY7dygbtw4cICRy31deBFJA09o7eWsU7kJ1KTLJmyRyOSn5zS70fAkwBtbW2/DwwMHHR3d9d3dnY2rK6u7o2Pj2/GYrH9eDzurK2tndM1vwI+QXT7T2BTD5skQz6SCyAcLRoZkGEFGQbeRqpbubK+BPA5MI14h00L3I6Cy2h4+eQbJsKuRa6iQcGFFfB5oBt4DpFsI+Ky7iDBxW3gBhBH/GtC+R7i1lKk3UxRAG2QpvxWr0AbtB3SA5jkx36djH/dVlDbyibN3M8GDvJPyI2PSulixm/u6kZ1OQCaJ/S+tndJX6tvsFBIxcCUdA3vW5ubxMrObc0hDMhd/Rqp5QQHxeW8dubnHGM7tzVv/IECMlxQ/bpcRfRMqaNRheNcUGG9XFWDACfzWs/6Fl3t/xtO//8gpbCORQAAAABJRU5ErkJggg==`;
3280
+ const CURSOR_DRAG_ACTIVE = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAER0lEQVRYhe2YT2hjRRjAf8lL22xsNsm6EWKrSKvuIkIh+O9QRFxEW18KUsoe7FHoRaWCN1FPetOrIHgVKS0q9P5OxaJbodkalgVrtVZjS7Ntd02z6abPw3yzmaT585q+elj2g2HmvZn35jffN/PNNwP35R6XgM/fuif4n+dO2klQvgsaZRc4NJJvoJbHdhrIAkJAN2ADHwFfAw9J3ZoB/b9I0AA6A0SBc0Aa2EVpSqddeZ+QdmfkO+u0gIPSQQR4HfhRQH4AHMDNZDJXXNd1M5nMFalzdB3wJTAOPAD0yEB9066G6wXepVZTd5MpTdporZ6jVqsatmMJoTR3HvgJQ1u2bS+3ArRte9l1XXdsbGyJo1pdBN6Wf3d3ChlAmSQO9LeC8fquQRpDWaerHWSjSr1iu4BkJyOsF9u2s67rkslkluTVxygltAVsJBZqdCngEj5osIlW+4EYytRNF04jeu3vulCT+7QkLH20dEOhumft97pQI4s3+iiRSPwtxVSbd39J8eEGvzFXc1NAs8KSFAZeBt4AHgNeBFDWObkEAne7HAK2gT2gCFQatdca1GbtBj4E3veFprVYVLXXcg4GqM6588BbAMlkcm1qamqzr6/v6ikBet5RgiizJoDPAXdgYGDZXHkzMzPrrk9CdRWngUeAsxxdCzVwpgZ/BigWiz1mo4mJif7jqMajeJrU5hywgGvAej6fvzA0NLThN1Eul9uT4g5VTbYFNKUIfAbsZ7PZvuHh4Wt+As7Ozu5IcY2j219TQB0NV4A7qODgO4CFhYWLg4ODOb8AHccpG4A68m6pRQ1YAQ6A28A+8BXwBcDq6upTqVTquh+AuVyuW4q/opRRaQdZD1gCbgE3ge+BT4HdfD7/ZDwe/z2bzRY6hRsfH1/e3Nx8FDX/sgbgoZfvg6jo4ixqW7oIPA+8CrwHrAJuJBLJd+JaHMf5k6qmPgGeQe1SCenXk0/U21xcIC8AzwGvAJPAEuAmEon1xcXFba9w8/Pz5oqdB14CnpY+oij35km0qwmjwqAU8ISM9hIwBeQA17KsG9PT07+1gxsZGdmgdqW+BjwLDAAPoo4ALU+W9arVwWoIpXp9kouKZpPAO8AwQCwW+2d0dLQ0OTkZSafT0UKhUJ6bm9t2HKeysrIS3tra0g7+KvABUJC0g5rrJdRcbLpImtleRzYashc1P2OSXwbebDVykX3gW+Ab1AHqhuQ3pe6AJlFMO0CoPROHDcio5I8DL1A9C8dQbmod+APYAK4DvwjQnsDdErgyVTfTEaCG1GFYGHXG7TVSo2OkdvhlAflXoHSuNdfStFqaRhEi2kfdprrj6M5LAt0I8EDaaMdflPal48CB95hMr3Bt8h4jD0kyL5E0pN6dysZzW7N2AqjbmhdIZjJvufTOpE19x3g+9s1XJ/ck5tVbfdhu+rxDfLiSO+lFToCjZwrXyH2/0Lwv95z8B1jAqXmDnj4YAAAAAElFTkSuQmCC`;
3185
3281
  class Cursor {
3186
3282
  constructor(container, opts) {
3187
3283
  this._cursorType = null;
3188
3284
  this._resizeCursorBaseImage = null;
3189
3285
  this._cursorImageMap = {
3190
3286
  auto: CURSOR,
3287
+ "drag-default": CURSOR_DRAG_DEFAULT,
3288
+ "drag-active": CURSOR_DRAG_ACTIVE,
3191
3289
  "rotate-0": CURSOR_RESIZE
3192
3290
  };
3193
3291
  this._container = container;
@@ -3204,6 +3302,10 @@ var __privateMethod = (obj, member, method) => {
3204
3302
  this._resetCursor("auto");
3205
3303
  } else if (typeof e.type === "string" && ((_a = e.type) == null ? void 0 : _a.startsWith("resize-"))) {
3206
3304
  this._setCursorResize(e);
3305
+ } else if (e.type === "drag-default") {
3306
+ this._resetCursor("drag-default");
3307
+ } else if (e.type === "drag-active") {
3308
+ this._resetCursor("drag-active");
3207
3309
  } else {
3208
3310
  this._resetCursor("auto");
3209
3311
  }
@@ -3290,18 +3392,18 @@ var __privateMethod = (obj, member, method) => {
3290
3392
  return key2;
3291
3393
  }
3292
3394
  }
3293
- const key$1 = "SELECT";
3294
- const keyActionType = Symbol(`${key$1}_actionType`);
3295
- const keyResizeType = Symbol(`${key$1}_resizeType`);
3296
- const keyAreaStart = Symbol(`${key$1}_areaStart`);
3297
- const keyAreaEnd = Symbol(`${key$1}_areaEnd`);
3298
- const keyHoverElement = Symbol(`${key$1}_hoverElement`);
3299
- const keyHoverElementVertexes = Symbol(`${key$1}_hoverElementVertexes`);
3300
- const keySelectedElementList = Symbol(`${key$1}_selectedElementList`);
3301
- const keySelectedElementListVertexes = Symbol(`${key$1}_selectedElementListVertexes`);
3302
- const keySelectedElementController = Symbol(`${key$1}_selectedElementController`);
3303
- const keyGroupQueue = Symbol(`${key$1}_groupQueue`);
3304
- const keyGroupQueueVertexesList = Symbol(`${key$1}_groupQueueVertexesList`);
3395
+ const key$2 = "SELECT";
3396
+ const keyActionType = Symbol(`${key$2}_actionType`);
3397
+ const keyResizeType = Symbol(`${key$2}_resizeType`);
3398
+ const keyAreaStart = Symbol(`${key$2}_areaStart`);
3399
+ const keyAreaEnd = Symbol(`${key$2}_areaEnd`);
3400
+ const keyHoverElement = Symbol(`${key$2}_hoverElement`);
3401
+ const keyHoverElementVertexes = Symbol(`${key$2}_hoverElementVertexes`);
3402
+ const keySelectedElementList = Symbol(`${key$2}_selectedElementList`);
3403
+ const keySelectedElementListVertexes = Symbol(`${key$2}_selectedElementListVertexes`);
3404
+ const keySelectedElementController = Symbol(`${key$2}_selectedElementController`);
3405
+ const keyGroupQueue = Symbol(`${key$2}_groupQueue`);
3406
+ const keyGroupQueueVertexesList = Symbol(`${key$2}_groupQueueVertexesList`);
3305
3407
  const selectWrapperBorderWidth = 2;
3306
3408
  const resizeControllerBorderWidth = 4;
3307
3409
  const areaBorderWidth = 1;
@@ -4130,9 +4232,8 @@ var __privateMethod = (obj, member, method) => {
4130
4232
  const middlewareEventTextEdit = "@middleware/text-edit";
4131
4233
  const defaultElementDetail = getDefaultElementDetailConfig();
4132
4234
  const MiddlewareTextEditor = (opts) => {
4133
- const key2 = "SELECT";
4134
- const { eventHub, viewContent, viewer } = opts;
4135
- const canvas = viewContent.boardContext.canvas;
4235
+ const { eventHub, boardContent, viewer } = opts;
4236
+ const canvas = boardContent.boardContext.canvas;
4136
4237
  const textarea = document.createElement("textarea");
4137
4238
  const canvasWrapper = document.createElement("div");
4138
4239
  const container = opts.container || document.body;
@@ -4260,48 +4361,28 @@ var __privateMethod = (obj, member, method) => {
4260
4361
  textarea.addEventListener("blur", () => {
4261
4362
  hideTextArea();
4262
4363
  });
4263
- eventHub.on(middlewareEventTextEdit, (e) => {
4364
+ const textEditCallback = (e) => {
4264
4365
  var _a;
4265
4366
  if ((e == null ? void 0 : e.element) && ((_a = e == null ? void 0 : e.element) == null ? void 0 : _a.type) === "text") {
4266
4367
  activeElem = e.element;
4267
4368
  }
4268
4369
  showTextArea(e);
4269
- });
4370
+ };
4270
4371
  return {
4271
- mode: key2,
4272
- isDefault: true
4372
+ use() {
4373
+ eventHub.on(middlewareEventTextEdit, textEditCallback);
4374
+ },
4375
+ disuse() {
4376
+ eventHub.off(middlewareEventTextEdit, textEditCallback);
4377
+ }
4273
4378
  };
4274
4379
  };
4275
4380
  const middlewareEventSelect = "@middleware/select";
4276
4381
  const MiddlewareSelector = (opts) => {
4277
- const { viewer, sharer, viewContent, calculator, eventHub } = opts;
4278
- const { helperContext } = viewContent;
4382
+ const { viewer, sharer, boardContent, calculator, eventHub } = opts;
4383
+ const { helperContext } = boardContent;
4279
4384
  let prevPoint = null;
4280
4385
  let inBusyMode = null;
4281
- eventHub.on(middlewareEventSelect, ({ uuids, positions }) => {
4282
- let elements = [];
4283
- const actionType = sharer.getSharedStorage(keyActionType);
4284
- const data = sharer.getActiveStorage("data");
4285
- if (positions && Array.isArray(positions)) {
4286
- elements = findElementsFromListByPositions(positions, (data == null ? void 0 : data.elements) || []);
4287
- } else {
4288
- elements = findElementsFromList(uuids, (data == null ? void 0 : data.elements) || []);
4289
- }
4290
- let needRefresh = false;
4291
- if (!actionType && elements.length === 1) {
4292
- sharer.setSharedStorage(keyActionType, "select");
4293
- needRefresh = true;
4294
- } else if (actionType === "select" && elements.length === 1) {
4295
- needRefresh = true;
4296
- }
4297
- if (needRefresh) {
4298
- const elem = elements[0];
4299
- const groupQueue = getGroupQueueFromList(elem.uuid, (data == null ? void 0 : data.elements) || []);
4300
- sharer.setSharedStorage(keyGroupQueue, groupQueue);
4301
- updateSelectedElementList(elements);
4302
- viewer.drawFrame();
4303
- }
4304
- });
4305
4386
  sharer.setSharedStorage(keyActionType, null);
4306
4387
  const getActiveElements = () => {
4307
4388
  return sharer.getSharedStorage(keySelectedElementList);
@@ -4378,15 +4459,44 @@ var __privateMethod = (obj, member, method) => {
4378
4459
  sharer.setSharedStorage(keySelectedElementController, null);
4379
4460
  };
4380
4461
  clear();
4462
+ const selectCallback = ({ uuids, positions }) => {
4463
+ let elements = [];
4464
+ const actionType = sharer.getSharedStorage(keyActionType);
4465
+ const data = sharer.getActiveStorage("data");
4466
+ if (positions && Array.isArray(positions)) {
4467
+ elements = findElementsFromListByPositions(positions, (data == null ? void 0 : data.elements) || []);
4468
+ } else {
4469
+ elements = findElementsFromList(uuids, (data == null ? void 0 : data.elements) || []);
4470
+ }
4471
+ let needRefresh = false;
4472
+ if (!actionType && elements.length === 1) {
4473
+ sharer.setSharedStorage(keyActionType, "select");
4474
+ needRefresh = true;
4475
+ } else if (actionType === "select" && elements.length === 1) {
4476
+ needRefresh = true;
4477
+ }
4478
+ if (needRefresh) {
4479
+ const elem = elements[0];
4480
+ const groupQueue = getGroupQueueFromList(elem.uuid, (data == null ? void 0 : data.elements) || []);
4481
+ sharer.setSharedStorage(keyGroupQueue, groupQueue);
4482
+ updateSelectedElementList(elements);
4483
+ viewer.drawFrame();
4484
+ }
4485
+ };
4381
4486
  return {
4382
- mode: key$1,
4487
+ use() {
4488
+ eventHub.on(middlewareEventSelect, selectCallback);
4489
+ },
4490
+ disuse() {
4491
+ eventHub.off(middlewareEventSelect, selectCallback);
4492
+ },
4383
4493
  hover: (e) => {
4384
4494
  var _a, _b;
4385
4495
  const resizeType = sharer.getSharedStorage(keyResizeType);
4386
4496
  const actionType = sharer.getSharedStorage(keyActionType);
4387
4497
  const groupQueue = sharer.getSharedStorage(keyGroupQueue);
4388
4498
  const triggerCursor = (target2) => {
4389
- let cursor = target2.type;
4499
+ const cursor = target2.type;
4390
4500
  if (inBusyMode === null) {
4391
4501
  eventHub.trigger("cursor", {
4392
4502
  type: cursor,
@@ -4719,12 +4829,12 @@ var __privateMethod = (obj, member, method) => {
4719
4829
  }
4720
4830
  };
4721
4831
  };
4722
- const key = "SCROLL";
4723
- const keyXThumbRect = Symbol(`${key}_xThumbRect`);
4724
- const keyYThumbRect = Symbol(`${key}_yThumbRect`);
4725
- const keyPrevPoint = Symbol(`${key}_prevPoint`);
4726
- const keyActivePoint = Symbol(`${key}_activePoint`);
4727
- const keyActiveThumbType = Symbol(`${key}_activeThumbType`);
4832
+ const key$1 = "SCROLL";
4833
+ const keyXThumbRect = Symbol(`${key$1}_xThumbRect`);
4834
+ const keyYThumbRect = Symbol(`${key$1}_yThumbRect`);
4835
+ const keyPrevPoint$1 = Symbol(`${key$1}_prevPoint`);
4836
+ const keyActivePoint = Symbol(`${key$1}_activePoint`);
4837
+ const keyActiveThumbType = Symbol(`${key$1}_activeThumbType`);
4728
4838
  const minScrollerWidth = 12;
4729
4839
  const scrollerLineWidth = 16;
4730
4840
  const scrollerThumbAlpha = 0.36;
@@ -4759,7 +4869,7 @@ var __privateMethod = (obj, member, method) => {
4759
4869
  const { sharedStore } = snapshot;
4760
4870
  const info = {
4761
4871
  activePoint: sharedStore[keyActivePoint] || null,
4762
- prevPoint: sharedStore[keyPrevPoint] || null,
4872
+ prevPoint: sharedStore[keyPrevPoint$1] || null,
4763
4873
  activeThumbType: sharedStore[keyActiveThumbType] || null,
4764
4874
  xThumbRect: sharedStore[keyXThumbRect] || null,
4765
4875
  yThumbRect: sharedStore[keyYThumbRect] || null
@@ -4917,18 +5027,18 @@ var __privateMethod = (obj, member, method) => {
4917
5027
  return { xThumbRect, yThumbRect };
4918
5028
  }
4919
5029
  const MiddlewareScroller = (opts) => {
4920
- const { viewer, viewContent, sharer } = opts;
4921
- const { helperContext } = viewContent;
5030
+ const { viewer, boardContent, sharer } = opts;
5031
+ const { helperContext } = boardContent;
4922
5032
  sharer.setSharedStorage(keyXThumbRect, null);
4923
5033
  sharer.setSharedStorage(keyYThumbRect, null);
4924
5034
  const clear = () => {
4925
- sharer.setSharedStorage(keyPrevPoint, null);
5035
+ sharer.setSharedStorage(keyPrevPoint$1, null);
4926
5036
  sharer.setSharedStorage(keyActivePoint, null);
4927
5037
  sharer.setSharedStorage(keyActiveThumbType, null);
4928
5038
  };
4929
5039
  clear();
4930
5040
  const scrollX = (p) => {
4931
- const prevPoint = sharer.getSharedStorage(keyPrevPoint);
5041
+ const prevPoint = sharer.getSharedStorage(keyPrevPoint$1);
4932
5042
  if (prevPoint) {
4933
5043
  const { offsetLeft, offsetRight } = sharer.getActiveViewScaleInfo();
4934
5044
  const { width } = sharer.getActiveViewSizeInfo();
@@ -4940,7 +5050,7 @@ var __privateMethod = (obj, member, method) => {
4940
5050
  }
4941
5051
  };
4942
5052
  const scrollY = (p) => {
4943
- const prevPoint = sharer.getSharedStorage(keyPrevPoint);
5053
+ const prevPoint = sharer.getSharedStorage(keyPrevPoint$1);
4944
5054
  if (prevPoint) {
4945
5055
  const { offsetTop, offsetBottom } = sharer.getActiveViewScaleInfo();
4946
5056
  const { height } = sharer.getActiveViewSizeInfo();
@@ -4958,7 +5068,6 @@ var __privateMethod = (obj, member, method) => {
4958
5068
  });
4959
5069
  };
4960
5070
  return {
4961
- mode: key,
4962
5071
  wheel: (e) => {
4963
5072
  viewer.scroll({
4964
5073
  moveX: 0 - e.deltaX,
@@ -4971,7 +5080,7 @@ var __privateMethod = (obj, member, method) => {
4971
5080
  const thumbType = getThumbType(point);
4972
5081
  if (thumbType === "X" || thumbType === "Y") {
4973
5082
  sharer.setSharedStorage(keyActiveThumbType, thumbType);
4974
- sharer.setSharedStorage(keyPrevPoint, point);
5083
+ sharer.setSharedStorage(keyPrevPoint$1, point);
4975
5084
  return false;
4976
5085
  }
4977
5086
  },
@@ -4985,11 +5094,11 @@ var __privateMethod = (obj, member, method) => {
4985
5094
  } else if (activeThumbType === "Y") {
4986
5095
  scrollY(point);
4987
5096
  }
4988
- sharer.setSharedStorage(keyPrevPoint, point);
5097
+ sharer.setSharedStorage(keyPrevPoint$1, point);
4989
5098
  return false;
4990
5099
  }
4991
5100
  },
4992
- pointEnd: (e) => {
5101
+ pointEnd: () => {
4993
5102
  const activeThumbType = sharer.getSharedStorage(keyActiveThumbType);
4994
5103
  clear();
4995
5104
  if (activeThumbType === "X" || activeThumbType === "Y") {
@@ -5007,13 +5116,10 @@ var __privateMethod = (obj, member, method) => {
5007
5116
  };
5008
5117
  const middlewareEventScale = "@middleware/scale";
5009
5118
  const MiddlewareScaler = (opts) => {
5010
- const key2 = "SCALE";
5011
5119
  const { viewer, sharer, eventHub } = opts;
5012
5120
  const maxScale = 50;
5013
5121
  const minScale = 0.05;
5014
5122
  return {
5015
- mode: key2,
5016
- isDefault: true,
5017
5123
  wheelScale(e) {
5018
5124
  const { deltaY, point } = e;
5019
5125
  const { scale } = sharer.getActiveViewScaleInfo();
@@ -5220,12 +5326,11 @@ var __privateMethod = (obj, member, method) => {
5220
5326
  }
5221
5327
  const middlewareEventRuler = "@middleware/show-ruler";
5222
5328
  const MiddlewareRuler = (opts) => {
5223
- const key2 = "RULE";
5224
- const { viewContent, viewer, eventHub } = opts;
5225
- const { helperContext, underContext } = viewContent;
5329
+ const { boardContent, viewer, eventHub } = opts;
5330
+ const { helperContext, underContext } = boardContent;
5226
5331
  let show = true;
5227
5332
  let showGrid = true;
5228
- eventHub.on(middlewareEventRuler, (e) => {
5333
+ const rulerCallback = (e) => {
5229
5334
  if (typeof (e == null ? void 0 : e.show) === "boolean") {
5230
5335
  show = e.show;
5231
5336
  }
@@ -5235,10 +5340,14 @@ var __privateMethod = (obj, member, method) => {
5235
5340
  if (typeof (e == null ? void 0 : e.show) === "boolean" || typeof (e == null ? void 0 : e.showGrid) === "boolean") {
5236
5341
  viewer.drawFrame();
5237
5342
  }
5238
- });
5343
+ };
5239
5344
  return {
5240
- mode: key2,
5241
- isDefault: true,
5345
+ use() {
5346
+ eventHub.on(middlewareEventRuler, rulerCallback);
5347
+ },
5348
+ disuse() {
5349
+ eventHub.off(middlewareEventRuler, rulerCallback);
5350
+ },
5242
5351
  beforeDrawFrame: ({ snapshot }) => {
5243
5352
  if (show === true) {
5244
5353
  const viewScaleInfo = getViewScaleInfoFromSnapshot(snapshot);
@@ -5260,6 +5369,48 @@ var __privateMethod = (obj, member, method) => {
5260
5369
  }
5261
5370
  };
5262
5371
  };
5372
+ const key = "DRAG";
5373
+ const keyPrevPoint = Symbol(`${key}_prevPoint`);
5374
+ const MiddlewareDragger = (opts) => {
5375
+ const { eventHub, sharer, viewer } = opts;
5376
+ let isDragging = false;
5377
+ return {
5378
+ hover() {
5379
+ if (isDragging === true) {
5380
+ return;
5381
+ }
5382
+ eventHub.trigger("cursor", {
5383
+ type: "drag-default"
5384
+ });
5385
+ },
5386
+ pointStart(e) {
5387
+ const { point } = e;
5388
+ sharer.setSharedStorage(keyPrevPoint, point);
5389
+ isDragging = true;
5390
+ eventHub.trigger("cursor", {
5391
+ type: "drag-active"
5392
+ });
5393
+ },
5394
+ pointMove(e) {
5395
+ const { point } = e;
5396
+ const prevPoint = sharer.getSharedStorage(keyPrevPoint);
5397
+ if (point && prevPoint) {
5398
+ const moveX = point.x - prevPoint.x;
5399
+ const moveY = point.y - prevPoint.y;
5400
+ viewer.scroll({ moveX, moveY });
5401
+ viewer.drawFrame();
5402
+ }
5403
+ sharer.setSharedStorage(keyPrevPoint, point);
5404
+ },
5405
+ pointEnd() {
5406
+ isDragging = false;
5407
+ sharer.setSharedStorage(keyPrevPoint, null);
5408
+ eventHub.trigger("cursor", {
5409
+ type: "drag-default"
5410
+ });
5411
+ }
5412
+ };
5413
+ };
5263
5414
  class Core {
5264
5415
  constructor(container, opts) {
5265
5416
  __privateAdd(this, _initContainer);
@@ -5272,8 +5423,8 @@ var __privateMethod = (obj, member, method) => {
5272
5423
  const canvas = document.createElement("canvas");
5273
5424
  __privateMethod(this, _initContainer, initContainer_fn).call(this);
5274
5425
  container.appendChild(canvas);
5275
- const viewContent = createViewContent(canvas, { width, height, devicePixelRatio, offscreen: true });
5276
- const board = new Board({ viewContent, container });
5426
+ const boardContent = createBoardContent(canvas, { width, height, devicePixelRatio, offscreen: true });
5427
+ const board = new Board({ boardContent, container });
5277
5428
  const sharer = board.getSharer();
5278
5429
  sharer.setActiveViewSizeInfo({
5279
5430
  width,
@@ -5292,6 +5443,9 @@ var __privateMethod = (obj, member, method) => {
5292
5443
  use(middleware) {
5293
5444
  __privateGet(this, _board).use(middleware);
5294
5445
  }
5446
+ disuse(middleware) {
5447
+ __privateGet(this, _board).disuse(middleware);
5448
+ }
5295
5449
  setData(data) {
5296
5450
  validateElements((data == null ? void 0 : data.elements) || []);
5297
5451
  __privateGet(this, _board).setData(data);
@@ -5344,6 +5498,9 @@ var __privateMethod = (obj, member, method) => {
5344
5498
  setViewScale(opts) {
5345
5499
  __privateGet(this, _board).updateViewScaleInfo(opts);
5346
5500
  }
5501
+ getLoadItemMap() {
5502
+ return __privateGet(this, _board).getRenderer().getLoadItemMap();
5503
+ }
5347
5504
  }
5348
5505
  _board = new WeakMap();
5349
5506
  _container = new WeakMap();
@@ -5353,6 +5510,7 @@ var __privateMethod = (obj, member, method) => {
5353
5510
  container.style.position = "relative";
5354
5511
  };
5355
5512
  exports.Core = Core;
5513
+ exports.MiddlewareDragger = MiddlewareDragger;
5356
5514
  exports.MiddlewareRuler = MiddlewareRuler;
5357
5515
  exports.MiddlewareScaler = MiddlewareScaler;
5358
5516
  exports.MiddlewareScroller = MiddlewareScroller;