@measured/puck-plugin-heading-analyzer 0.14.1 → 0.14.2-canary.23db292

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/dist/index.js +3081 -202
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -62,6 +62,60 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
62
62
  mod
63
63
  ));
64
64
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
65
+ var __publicField = (obj, key, value) => {
66
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
67
+ return value;
68
+ };
69
+ var __accessCheck = (obj, member, msg) => {
70
+ if (!member.has(obj))
71
+ throw TypeError("Cannot " + msg);
72
+ };
73
+ var __privateGet = (obj, member, getter) => {
74
+ __accessCheck(obj, member, "read from private field");
75
+ return getter ? getter.call(obj) : member.get(obj);
76
+ };
77
+ var __privateAdd = (obj, member, value) => {
78
+ if (member.has(obj))
79
+ throw TypeError("Cannot add the same private member more than once");
80
+ member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
81
+ };
82
+ var __privateSet = (obj, member, value, setter) => {
83
+ __accessCheck(obj, member, "write to private field");
84
+ setter ? setter.call(obj, value) : member.set(obj, value);
85
+ return value;
86
+ };
87
+ var __privateWrapper = (obj, member, setter, getter) => ({
88
+ set _(value) {
89
+ __privateSet(obj, member, value, setter);
90
+ },
91
+ get _() {
92
+ return __privateGet(obj, member, getter);
93
+ }
94
+ });
95
+ var __privateMethod = (obj, member, method) => {
96
+ __accessCheck(obj, member, "access private method");
97
+ return method;
98
+ };
99
+ var __async = (__this, __arguments, generator) => {
100
+ return new Promise((resolve, reject) => {
101
+ var fulfilled = (value) => {
102
+ try {
103
+ step(generator.next(value));
104
+ } catch (e2) {
105
+ reject(e2);
106
+ }
107
+ };
108
+ var rejected = (value) => {
109
+ try {
110
+ step(generator.throw(value));
111
+ } catch (e2) {
112
+ reject(e2);
113
+ }
114
+ };
115
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
116
+ step((generator = generator.apply(__this, __arguments)).next());
117
+ });
118
+ };
65
119
 
66
120
  // ../tsup-config/react-import.js
67
121
  var import_react;
@@ -198,8 +252,8 @@ var init_colors = __esm({
198
252
  });
199
253
 
200
254
  // ../../node_modules/react-spinners/esm/BarLoader.js
201
- function BarLoader(_a) {
202
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 4 : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, additionalprops = __rest(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width"]);
255
+ function BarLoader(_a3) {
256
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.height, height = _f === void 0 ? 4 : _f, _g = _a3.width, width = _g === void 0 ? 100 : _g, additionalprops = __rest(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width"]);
203
257
  var wrapper = __assign({ display: "inherit", position: "relative", width: cssValue(width), height: cssValue(height), overflow: "hidden", backgroundColor: calculateRgba(color, 0.2), backgroundClip: "padding-box" }, cssOverride);
204
258
  var style2 = function(i2) {
205
259
  return {
@@ -264,8 +318,8 @@ var init_BarLoader = __esm({
264
318
  });
265
319
 
266
320
  // ../../node_modules/react-spinners/esm/BeatLoader.js
267
- function BeatLoader(_a) {
268
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest2(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
321
+ function BeatLoader(_a3) {
322
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest2(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
269
323
  var wrapper = __assign2({ display: "inherit" }, cssOverride);
270
324
  var style2 = function(i2) {
271
325
  return {
@@ -327,8 +381,8 @@ var init_BeatLoader = __esm({
327
381
  });
328
382
 
329
383
  // ../../node_modules/react-spinners/esm/BounceLoader.js
330
- function BounceLoader(_a) {
331
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest3(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
384
+ function BounceLoader(_a3) {
385
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest3(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
332
386
  var style2 = function(i2) {
333
387
  var animationTiming = i2 === 1 ? "".concat(1 / speedMultiplier, "s") : "0s";
334
388
  return {
@@ -392,11 +446,11 @@ var init_BounceLoader = __esm({
392
446
  });
393
447
 
394
448
  // ../../node_modules/react-spinners/esm/CircleLoader.js
395
- function CircleLoader(_a) {
396
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest4(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
449
+ function CircleLoader(_a3) {
450
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest4(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
397
451
  var wrapper = __assign4({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size) }, cssOverride);
398
452
  var style2 = function(i2) {
399
- var _a2 = parseLengthAndUnit(size), value = _a2.value, unit = _a2.unit;
453
+ var _a4 = parseLengthAndUnit(size), value = _a4.value, unit = _a4.unit;
400
454
  return {
401
455
  position: "absolute",
402
456
  height: "".concat(value * (1 - i2 / 10)).concat(unit),
@@ -462,8 +516,8 @@ var init_CircleLoader = __esm({
462
516
  });
463
517
 
464
518
  // ../../node_modules/react-spinners/esm/ClimbingBoxLoader.js
465
- function ClimbingBoxLoader(_a) {
466
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest5(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
519
+ function ClimbingBoxLoader(_a3) {
520
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest5(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
467
521
  var container = __assign5({ display: "inherit", position: "relative", width: "7.1em", height: "7.1em" }, cssOverride);
468
522
  var wrapper = {
469
523
  position: "absolute",
@@ -548,8 +602,8 @@ var init_ClimbingBoxLoader = __esm({
548
602
  });
549
603
 
550
604
  // ../../node_modules/react-spinners/esm/ClipLoader.js
551
- function ClipLoader(_a) {
552
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest6(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
605
+ function ClipLoader(_a3) {
606
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 35 : _f, additionalprops = __rest6(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
553
607
  var style2 = __assign6({ background: "transparent !important", width: cssValue(size), height: cssValue(size), borderRadius: "100%", border: "2px solid", borderTopColor: color, borderBottomColor: "transparent", borderLeftColor: color, borderRightColor: color, display: "inline-block", animation: "".concat(clip, " ").concat(0.75 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "both" }, cssOverride);
554
608
  if (!loading) {
555
609
  return null;
@@ -593,8 +647,8 @@ var init_ClipLoader = __esm({
593
647
  });
594
648
 
595
649
  // ../../node_modules/react-spinners/esm/ClockLoader.js
596
- function ClockLoader(_a) {
597
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest7(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
650
+ function ClockLoader(_a3) {
651
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest7(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
598
652
  var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
599
653
  var wrapper = __assign7({ display: "inherit", position: "relative", width: "".concat(value).concat(unit), height: "".concat(value).concat(unit), backgroundColor: "transparent", boxShadow: "inset 0px 0px 0px 2px ".concat(color), borderRadius: "50%" }, cssOverride);
600
654
  var minute = {
@@ -664,11 +718,11 @@ var init_ClockLoader = __esm({
664
718
  });
665
719
 
666
720
  // ../../node_modules/react-spinners/esm/DotLoader.js
667
- function DotLoader(_a) {
668
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest8(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
721
+ function DotLoader(_a3) {
722
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest8(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
669
723
  var wrapper = __assign8({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size), animationFillMode: "forwards", animation: "".concat(rotate2, " ").concat(2 / speedMultiplier, "s 0s infinite linear") }, cssOverride);
670
724
  var style2 = function(i2) {
671
- var _a2 = parseLengthAndUnit(size), value = _a2.value, unit = _a2.unit;
725
+ var _a4 = parseLengthAndUnit(size), value = _a4.value, unit = _a4.unit;
672
726
  return {
673
727
  position: "absolute",
674
728
  top: i2 % 2 ? "0" : "auto",
@@ -729,8 +783,8 @@ var init_DotLoader = __esm({
729
783
  });
730
784
 
731
785
  // ../../node_modules/react-spinners/esm/FadeLoader.js
732
- function FadeLoader(_a) {
733
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 15 : _f, _g = _a.width, width = _g === void 0 ? 5 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest9(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
786
+ function FadeLoader(_a3) {
787
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.height, height = _f === void 0 ? 15 : _f, _g = _a3.width, width = _g === void 0 ? 5 : _g, _h = _a3.radius, radius = _h === void 0 ? 2 : _h, _j = _a3.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest9(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
734
788
  var value = parseLengthAndUnit(margin).value;
735
789
  var radiusValue = value + 18;
736
790
  var quarter = radiusValue / 2 + radiusValue / 5.5;
@@ -809,8 +863,8 @@ var init_FadeLoader = __esm({
809
863
  });
810
864
 
811
865
  // ../../node_modules/react-spinners/esm/GridLoader.js
812
- function GridLoader(_a) {
813
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest10(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
866
+ function GridLoader(_a3) {
867
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest10(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
814
868
  var sizeWithUnit = parseLengthAndUnit(size);
815
869
  var marginWithUnit = parseLengthAndUnit(margin);
816
870
  var width = parseFloat(sizeWithUnit.value.toString()) * 3 + parseFloat(marginWithUnit.value.toString()) * 6;
@@ -888,8 +942,8 @@ var init_GridLoader = __esm({
888
942
  });
889
943
 
890
944
  // ../../node_modules/react-spinners/esm/HashLoader.js
891
- function HashLoader(_a) {
892
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest11(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
945
+ function HashLoader(_a3) {
946
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest11(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
893
947
  var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
894
948
  var wrapper = __assign11({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size), transform: "rotate(165deg)" }, cssOverride);
895
949
  var thickness = value / 5;
@@ -959,8 +1013,8 @@ var init_HashLoader = __esm({
959
1013
  });
960
1014
 
961
1015
  // ../../node_modules/react-spinners/esm/MoonLoader.js
962
- function MoonLoader(_a) {
963
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest12(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1016
+ function MoonLoader(_a3) {
1017
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest12(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
964
1018
  var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
965
1019
  var moonSize = value / 7;
966
1020
  var wrapper = __assign12({ display: "inherit", position: "relative", width: "".concat("".concat(value + moonSize * 2).concat(unit)), height: "".concat("".concat(value + moonSize * 2).concat(unit)), animation: "".concat(moon, " ").concat(0.6 / speedMultiplier, "s 0s infinite linear"), animationFillMode: "forwards" }, cssOverride);
@@ -1020,8 +1074,8 @@ var init_MoonLoader = __esm({
1020
1074
  });
1021
1075
 
1022
1076
  // ../../node_modules/react-spinners/esm/PacmanLoader.js
1023
- function PacmanLoader(_a) {
1024
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 25 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest13(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1077
+ function PacmanLoader(_a3) {
1078
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 25 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest13(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1025
1079
  var _h = parseLengthAndUnit(size), value = _h.value, unit = _h.unit;
1026
1080
  var wrapper = __assign13({ display: "inherit", position: "relative", fontSize: 0, height: "".concat(value * 2).concat(unit), width: "".concat(value * 2).concat(unit) }, cssOverride);
1027
1081
  var ball = createAnimation("PacmanLoader", "75% {opacity: 0.7}\n 100% {transform: translate(".concat("".concat(-4 * value).concat(unit), ", ").concat("".concat(-value / 4).concat(unit), ")}"), "ball");
@@ -1112,8 +1166,8 @@ var init_PacmanLoader = __esm({
1112
1166
  });
1113
1167
 
1114
1168
  // ../../node_modules/react-spinners/esm/PropagateLoader.js
1115
- function PropagateLoader(_a) {
1116
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest14(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1169
+ function PropagateLoader(_a3) {
1170
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, additionalprops = __rest14(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1117
1171
  var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
1118
1172
  var wrapper = __assign14({ display: "inherit", position: "relative" }, cssOverride);
1119
1173
  var style2 = function(i2) {
@@ -1187,8 +1241,8 @@ var init_PropagateLoader = __esm({
1187
1241
  });
1188
1242
 
1189
1243
  // ../../node_modules/react-spinners/esm/PulseLoader.js
1190
- function PulseLoader(_a) {
1191
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest15(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1244
+ function PulseLoader(_a3) {
1245
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest15(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1192
1246
  var wrapper = __assign15({ display: "inherit" }, cssOverride);
1193
1247
  var style2 = function(i2) {
1194
1248
  return {
@@ -1250,8 +1304,8 @@ var init_PulseLoader = __esm({
1250
1304
  });
1251
1305
 
1252
1306
  // ../../node_modules/react-spinners/esm/PuffLoader.js
1253
- function PuffLoader(_a) {
1254
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest16(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1307
+ function PuffLoader(_a3) {
1308
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest16(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1255
1309
  var wrapper = __assign16({ display: "inherit", position: "relative", width: cssValue(size), height: cssValue(size) }, cssOverride);
1256
1310
  var style2 = function(i2) {
1257
1311
  return {
@@ -1321,8 +1375,8 @@ var init_PuffLoader = __esm({
1321
1375
  });
1322
1376
 
1323
1377
  // ../../node_modules/react-spinners/esm/RingLoader.js
1324
- function RingLoader(_a) {
1325
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest17(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1378
+ function RingLoader(_a3) {
1379
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 60 : _f, additionalprops = __rest17(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1326
1380
  var _g = parseLengthAndUnit(size), value = _g.value, unit = _g.unit;
1327
1381
  var wrapper = __assign17({ display: "inherit", width: cssValue(size), height: cssValue(size), position: "relative" }, cssOverride);
1328
1382
  var style2 = function(i2) {
@@ -1388,8 +1442,8 @@ var init_RingLoader = __esm({
1388
1442
  });
1389
1443
 
1390
1444
  // ../../node_modules/react-spinners/esm/RiseLoader.js
1391
- function RiseLoader(_a) {
1392
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest18(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1445
+ function RiseLoader(_a3) {
1446
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest18(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1393
1447
  var wrapper = __assign18({ display: "inherit" }, cssOverride);
1394
1448
  var even = createAnimation("RiseLoader", "0% {transform: scale(1.1)}\n 25% {transform: translateY(-".concat(size, "px)}\n 50% {transform: scale(0.4)}\n 75% {transform: translateY(").concat(size, "px)}\n 100% {transform: translateY(0) scale(1.0)}"), "even");
1395
1449
  var odd = createAnimation("RiseLoader", "0% {transform: scale(0.4)}\n 25% {transform: translateY(".concat(size, "px)}\n 50% {transform: scale(1.1)}\n 75% {transform: translateY(").concat(-size, "px)}\n 100% {transform: translateY(0) scale(0.75)}"), "odd");
@@ -1454,8 +1508,8 @@ var init_RiseLoader = __esm({
1454
1508
  });
1455
1509
 
1456
1510
  // ../../node_modules/react-spinners/esm/RotateLoader.js
1457
- function RotateLoader(_a) {
1458
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest19(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1511
+ function RotateLoader(_a3) {
1512
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest19(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1459
1513
  var _h = parseLengthAndUnit(margin), value = _h.value, unit = _h.unit;
1460
1514
  var ball = {
1461
1515
  backgroundColor: color,
@@ -1520,8 +1574,8 @@ var init_RotateLoader = __esm({
1520
1574
  });
1521
1575
 
1522
1576
  // ../../node_modules/react-spinners/esm/ScaleLoader.js
1523
- function ScaleLoader(_a) {
1524
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.height, height = _f === void 0 ? 35 : _f, _g = _a.width, width = _g === void 0 ? 4 : _g, _h = _a.radius, radius = _h === void 0 ? 2 : _h, _j = _a.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest20(_a, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
1577
+ function ScaleLoader(_a3) {
1578
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.height, height = _f === void 0 ? 35 : _f, _g = _a3.width, width = _g === void 0 ? 4 : _g, _h = _a3.radius, radius = _h === void 0 ? 2 : _h, _j = _a3.margin, margin = _j === void 0 ? 2 : _j, additionalprops = __rest20(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "height", "width", "radius", "margin"]);
1525
1579
  var wrapper = __assign20({ display: "inherit" }, cssOverride);
1526
1580
  var style2 = function(i2) {
1527
1581
  return {
@@ -1585,8 +1639,8 @@ var init_ScaleLoader = __esm({
1585
1639
  });
1586
1640
 
1587
1641
  // ../../node_modules/react-spinners/esm/SkewLoader.js
1588
- function SkewLoader(_a) {
1589
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest21(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1642
+ function SkewLoader(_a3) {
1643
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 20 : _f, additionalprops = __rest21(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1590
1644
  var style2 = __assign21({ width: "0", height: "0", borderLeft: "".concat(cssValue(size), " solid transparent"), borderRight: "".concat(cssValue(size), " solid transparent"), borderBottom: "".concat(cssValue(size), " solid ").concat(color), display: "inline-block", animation: "".concat(skew, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
1591
1645
  if (!loading) {
1592
1646
  return null;
@@ -1630,8 +1684,8 @@ var init_SkewLoader = __esm({
1630
1684
  });
1631
1685
 
1632
1686
  // ../../node_modules/react-spinners/esm/SquareLoader.js
1633
- function SquareLoader(_a) {
1634
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest22(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1687
+ function SquareLoader(_a3) {
1688
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 50 : _f, additionalprops = __rest22(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size"]);
1635
1689
  var style2 = __assign22({ backgroundColor: color, width: cssValue(size), height: cssValue(size), display: "inline-block", animation: "".concat(square, " ").concat(3 / speedMultiplier, "s 0s infinite cubic-bezier(0.09, 0.57, 0.49, 0.9)"), animationFillMode: "both" }, cssOverride);
1636
1690
  if (!loading) {
1637
1691
  return null;
@@ -1675,8 +1729,8 @@ var init_SquareLoader = __esm({
1675
1729
  });
1676
1730
 
1677
1731
  // ../../node_modules/react-spinners/esm/SyncLoader.js
1678
- function SyncLoader(_a) {
1679
- var _b = _a.loading, loading = _b === void 0 ? true : _b, _c = _a.color, color = _c === void 0 ? "#000000" : _c, _d = _a.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a.size, size = _f === void 0 ? 15 : _f, _g = _a.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest23(_a, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1732
+ function SyncLoader(_a3) {
1733
+ var _b = _a3.loading, loading = _b === void 0 ? true : _b, _c = _a3.color, color = _c === void 0 ? "#000000" : _c, _d = _a3.speedMultiplier, speedMultiplier = _d === void 0 ? 1 : _d, _e = _a3.cssOverride, cssOverride = _e === void 0 ? {} : _e, _f = _a3.size, size = _f === void 0 ? 15 : _f, _g = _a3.margin, margin = _g === void 0 ? 2 : _g, additionalprops = __rest23(_a3, ["loading", "color", "speedMultiplier", "cssOverride", "size", "margin"]);
1680
1734
  var wrapper = __assign23({ display: "inherit" }, cssOverride);
1681
1735
  var style2 = function(i2) {
1682
1736
  return {
@@ -24768,7 +24822,7 @@ var require_react_dom_development = __commonJS({
24768
24822
  break;
24769
24823
  }
24770
24824
  case "backwards": {
24771
- var _tail = null;
24825
+ var _tail2 = null;
24772
24826
  var row = workInProgress2.child;
24773
24827
  workInProgress2.child = null;
24774
24828
  while (row !== null) {
@@ -24778,15 +24832,15 @@ var require_react_dom_development = __commonJS({
24778
24832
  break;
24779
24833
  }
24780
24834
  var nextRow = row.sibling;
24781
- row.sibling = _tail;
24782
- _tail = row;
24835
+ row.sibling = _tail2;
24836
+ _tail2 = row;
24783
24837
  row = nextRow;
24784
24838
  }
24785
24839
  initSuspenseListRenderState(
24786
24840
  workInProgress2,
24787
24841
  true,
24788
24842
  // isBackwards
24789
- _tail,
24843
+ _tail2,
24790
24844
  null,
24791
24845
  // last
24792
24846
  tailMode
@@ -28432,10 +28486,10 @@ var require_react_dom_development = __commonJS({
28432
28486
  return;
28433
28487
  }
28434
28488
  } else {
28435
- var _next = unwindWork(current2, completedWork);
28436
- if (_next !== null) {
28437
- _next.flags &= HostEffectMask;
28438
- workInProgress = _next;
28489
+ var _next2 = unwindWork(current2, completedWork);
28490
+ if (_next2 !== null) {
28491
+ _next2.flags &= HostEffectMask;
28492
+ workInProgress = _next2;
28439
28493
  return;
28440
28494
  }
28441
28495
  if ((completedWork.mode & ProfileMode) !== NoMode) {
@@ -33511,6 +33565,1370 @@ var init_raf_schd_esm = __esm({
33511
33565
  }
33512
33566
  });
33513
33567
 
33568
+ // ../../node_modules/@measured/dnd/node_modules/lru-cache/dist/esm/index.js
33569
+ var perf, warned, PROCESS, emitWarning, AC, AS, _a, shouldWarn, TYPE, isPosInt, getUintArray, ZeroArray, _constructing, _Stack, Stack, _max, _maxSize, _dispose, _disposeAfter, _fetchMethod, _size, _calculatedSize, _keyMap, _keyList, _valList, _next, _prev, _head, _tail, _free, _disposed, _sizes, _starts, _ttls, _hasDispose, _hasFetchMethod, _hasDisposeAfter, _initializeTTLTracking, initializeTTLTracking_fn, _updateItemAge, _statusTTL, _setItemTTL, _isStale, _initializeSizeTracking, initializeSizeTracking_fn, _removeItemSize, _addItemSize, _requireSize, _indexes, indexes_fn, _rindexes, rindexes_fn, _isValidIndex, isValidIndex_fn, _a2, _evict, evict_fn, _backgroundFetch, backgroundFetch_fn, _isBackgroundFetch, isBackgroundFetch_fn, _connect, connect_fn, _moveToTail, moveToTail_fn, _LRUCache, LRUCache;
33570
+ var init_esm2 = __esm({
33571
+ "../../node_modules/@measured/dnd/node_modules/lru-cache/dist/esm/index.js"() {
33572
+ init_react_import();
33573
+ perf = typeof performance === "object" && performance && typeof performance.now === "function" ? performance : Date;
33574
+ warned = /* @__PURE__ */ new Set();
33575
+ PROCESS = typeof process === "object" && !!process ? process : {};
33576
+ emitWarning = (msg, type, code, fn) => {
33577
+ typeof PROCESS.emitWarning === "function" ? PROCESS.emitWarning(msg, type, code, fn) : console.error(`[${code}] ${type}: ${msg}`);
33578
+ };
33579
+ AC = globalThis.AbortController;
33580
+ AS = globalThis.AbortSignal;
33581
+ if (typeof AC === "undefined") {
33582
+ AS = class AbortSignal {
33583
+ constructor() {
33584
+ __publicField(this, "onabort");
33585
+ __publicField(this, "_onabort", []);
33586
+ __publicField(this, "reason");
33587
+ __publicField(this, "aborted", false);
33588
+ }
33589
+ addEventListener(_, fn) {
33590
+ this._onabort.push(fn);
33591
+ }
33592
+ };
33593
+ AC = class AbortController {
33594
+ constructor() {
33595
+ __publicField(this, "signal", new AS());
33596
+ warnACPolyfill();
33597
+ }
33598
+ abort(reason) {
33599
+ var _a3, _b;
33600
+ if (this.signal.aborted)
33601
+ return;
33602
+ this.signal.reason = reason;
33603
+ this.signal.aborted = true;
33604
+ for (const fn of this.signal._onabort) {
33605
+ fn(reason);
33606
+ }
33607
+ (_b = (_a3 = this.signal).onabort) == null ? void 0 : _b.call(_a3, reason);
33608
+ }
33609
+ };
33610
+ let printACPolyfillWarning = ((_a = PROCESS.env) == null ? void 0 : _a.LRU_CACHE_IGNORE_AC_WARNING) !== "1";
33611
+ const warnACPolyfill = () => {
33612
+ if (!printACPolyfillWarning)
33613
+ return;
33614
+ printACPolyfillWarning = false;
33615
+ emitWarning("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.", "NO_ABORT_CONTROLLER", "ENOTSUP", warnACPolyfill);
33616
+ };
33617
+ }
33618
+ shouldWarn = (code) => !warned.has(code);
33619
+ TYPE = Symbol("type");
33620
+ isPosInt = (n2) => n2 && n2 === Math.floor(n2) && n2 > 0 && isFinite(n2);
33621
+ getUintArray = (max) => !isPosInt(max) ? null : max <= Math.pow(2, 8) ? Uint8Array : max <= Math.pow(2, 16) ? Uint16Array : max <= Math.pow(2, 32) ? Uint32Array : max <= Number.MAX_SAFE_INTEGER ? ZeroArray : null;
33622
+ ZeroArray = class extends Array {
33623
+ constructor(size) {
33624
+ super(size);
33625
+ this.fill(0);
33626
+ }
33627
+ };
33628
+ _Stack = class {
33629
+ constructor(max, HeapCls) {
33630
+ __publicField(this, "heap");
33631
+ __publicField(this, "length");
33632
+ if (!__privateGet(_Stack, _constructing)) {
33633
+ throw new TypeError("instantiate Stack using Stack.create(n)");
33634
+ }
33635
+ this.heap = new HeapCls(max);
33636
+ this.length = 0;
33637
+ }
33638
+ static create(max) {
33639
+ const HeapCls = getUintArray(max);
33640
+ if (!HeapCls)
33641
+ return [];
33642
+ __privateSet(_Stack, _constructing, true);
33643
+ const s = new _Stack(max, HeapCls);
33644
+ __privateSet(_Stack, _constructing, false);
33645
+ return s;
33646
+ }
33647
+ push(n2) {
33648
+ this.heap[this.length++] = n2;
33649
+ }
33650
+ pop() {
33651
+ return this.heap[--this.length];
33652
+ }
33653
+ };
33654
+ Stack = _Stack;
33655
+ _constructing = new WeakMap();
33656
+ // private constructor
33657
+ __privateAdd(Stack, _constructing, false);
33658
+ _LRUCache = class {
33659
+ constructor(options) {
33660
+ __privateAdd(this, _initializeTTLTracking);
33661
+ __privateAdd(this, _initializeSizeTracking);
33662
+ __privateAdd(this, _indexes);
33663
+ __privateAdd(this, _rindexes);
33664
+ __privateAdd(this, _isValidIndex);
33665
+ __privateAdd(this, _evict);
33666
+ __privateAdd(this, _backgroundFetch);
33667
+ __privateAdd(this, _isBackgroundFetch);
33668
+ __privateAdd(this, _connect);
33669
+ __privateAdd(this, _moveToTail);
33670
+ // properties coming in from the options of these, only max and maxSize
33671
+ // really *need* to be protected. The rest can be modified, as they just
33672
+ // set defaults for various methods.
33673
+ __privateAdd(this, _max, void 0);
33674
+ __privateAdd(this, _maxSize, void 0);
33675
+ __privateAdd(this, _dispose, void 0);
33676
+ __privateAdd(this, _disposeAfter, void 0);
33677
+ __privateAdd(this, _fetchMethod, void 0);
33678
+ /**
33679
+ * {@link LRUCache.OptionsBase.ttl}
33680
+ */
33681
+ __publicField(this, "ttl");
33682
+ /**
33683
+ * {@link LRUCache.OptionsBase.ttlResolution}
33684
+ */
33685
+ __publicField(this, "ttlResolution");
33686
+ /**
33687
+ * {@link LRUCache.OptionsBase.ttlAutopurge}
33688
+ */
33689
+ __publicField(this, "ttlAutopurge");
33690
+ /**
33691
+ * {@link LRUCache.OptionsBase.updateAgeOnGet}
33692
+ */
33693
+ __publicField(this, "updateAgeOnGet");
33694
+ /**
33695
+ * {@link LRUCache.OptionsBase.updateAgeOnHas}
33696
+ */
33697
+ __publicField(this, "updateAgeOnHas");
33698
+ /**
33699
+ * {@link LRUCache.OptionsBase.allowStale}
33700
+ */
33701
+ __publicField(this, "allowStale");
33702
+ /**
33703
+ * {@link LRUCache.OptionsBase.noDisposeOnSet}
33704
+ */
33705
+ __publicField(this, "noDisposeOnSet");
33706
+ /**
33707
+ * {@link LRUCache.OptionsBase.noUpdateTTL}
33708
+ */
33709
+ __publicField(this, "noUpdateTTL");
33710
+ /**
33711
+ * {@link LRUCache.OptionsBase.maxEntrySize}
33712
+ */
33713
+ __publicField(this, "maxEntrySize");
33714
+ /**
33715
+ * {@link LRUCache.OptionsBase.sizeCalculation}
33716
+ */
33717
+ __publicField(this, "sizeCalculation");
33718
+ /**
33719
+ * {@link LRUCache.OptionsBase.noDeleteOnFetchRejection}
33720
+ */
33721
+ __publicField(this, "noDeleteOnFetchRejection");
33722
+ /**
33723
+ * {@link LRUCache.OptionsBase.noDeleteOnStaleGet}
33724
+ */
33725
+ __publicField(this, "noDeleteOnStaleGet");
33726
+ /**
33727
+ * {@link LRUCache.OptionsBase.allowStaleOnFetchAbort}
33728
+ */
33729
+ __publicField(this, "allowStaleOnFetchAbort");
33730
+ /**
33731
+ * {@link LRUCache.OptionsBase.allowStaleOnFetchRejection}
33732
+ */
33733
+ __publicField(this, "allowStaleOnFetchRejection");
33734
+ /**
33735
+ * {@link LRUCache.OptionsBase.ignoreFetchAbort}
33736
+ */
33737
+ __publicField(this, "ignoreFetchAbort");
33738
+ // computed properties
33739
+ __privateAdd(this, _size, void 0);
33740
+ __privateAdd(this, _calculatedSize, void 0);
33741
+ __privateAdd(this, _keyMap, void 0);
33742
+ __privateAdd(this, _keyList, void 0);
33743
+ __privateAdd(this, _valList, void 0);
33744
+ __privateAdd(this, _next, void 0);
33745
+ __privateAdd(this, _prev, void 0);
33746
+ __privateAdd(this, _head, void 0);
33747
+ __privateAdd(this, _tail, void 0);
33748
+ __privateAdd(this, _free, void 0);
33749
+ __privateAdd(this, _disposed, void 0);
33750
+ __privateAdd(this, _sizes, void 0);
33751
+ __privateAdd(this, _starts, void 0);
33752
+ __privateAdd(this, _ttls, void 0);
33753
+ __privateAdd(this, _hasDispose, void 0);
33754
+ __privateAdd(this, _hasFetchMethod, void 0);
33755
+ __privateAdd(this, _hasDisposeAfter, void 0);
33756
+ // conditionally set private methods related to TTL
33757
+ __privateAdd(this, _updateItemAge, () => {
33758
+ });
33759
+ __privateAdd(this, _statusTTL, () => {
33760
+ });
33761
+ __privateAdd(this, _setItemTTL, () => {
33762
+ });
33763
+ /* c8 ignore stop */
33764
+ __privateAdd(this, _isStale, () => false);
33765
+ __privateAdd(this, _removeItemSize, (_i) => {
33766
+ });
33767
+ __privateAdd(this, _addItemSize, (_i, _s, _st) => {
33768
+ });
33769
+ __privateAdd(this, _requireSize, (_k, _v, size, sizeCalculation) => {
33770
+ if (size || sizeCalculation) {
33771
+ throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");
33772
+ }
33773
+ return 0;
33774
+ });
33775
+ /**
33776
+ * A String value that is used in the creation of the default string description of an object.
33777
+ * Called by the built-in method Object.prototype.toString.
33778
+ */
33779
+ __publicField(this, _a2, "LRUCache");
33780
+ const { max = 0, ttl, ttlResolution = 1, ttlAutopurge, updateAgeOnGet, updateAgeOnHas, allowStale, dispose, disposeAfter, noDisposeOnSet, noUpdateTTL, maxSize = 0, maxEntrySize = 0, sizeCalculation, fetchMethod, noDeleteOnFetchRejection, noDeleteOnStaleGet, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort } = options;
33781
+ if (max !== 0 && !isPosInt(max)) {
33782
+ throw new TypeError("max option must be a nonnegative integer");
33783
+ }
33784
+ const UintArray = max ? getUintArray(max) : Array;
33785
+ if (!UintArray) {
33786
+ throw new Error("invalid max value: " + max);
33787
+ }
33788
+ __privateSet(this, _max, max);
33789
+ __privateSet(this, _maxSize, maxSize);
33790
+ this.maxEntrySize = maxEntrySize || __privateGet(this, _maxSize);
33791
+ this.sizeCalculation = sizeCalculation;
33792
+ if (this.sizeCalculation) {
33793
+ if (!__privateGet(this, _maxSize) && !this.maxEntrySize) {
33794
+ throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");
33795
+ }
33796
+ if (typeof this.sizeCalculation !== "function") {
33797
+ throw new TypeError("sizeCalculation set to non-function");
33798
+ }
33799
+ }
33800
+ if (fetchMethod !== void 0 && typeof fetchMethod !== "function") {
33801
+ throw new TypeError("fetchMethod must be a function if specified");
33802
+ }
33803
+ __privateSet(this, _fetchMethod, fetchMethod);
33804
+ __privateSet(this, _hasFetchMethod, !!fetchMethod);
33805
+ __privateSet(this, _keyMap, /* @__PURE__ */ new Map());
33806
+ __privateSet(this, _keyList, new Array(max).fill(void 0));
33807
+ __privateSet(this, _valList, new Array(max).fill(void 0));
33808
+ __privateSet(this, _next, new UintArray(max));
33809
+ __privateSet(this, _prev, new UintArray(max));
33810
+ __privateSet(this, _head, 0);
33811
+ __privateSet(this, _tail, 0);
33812
+ __privateSet(this, _free, Stack.create(max));
33813
+ __privateSet(this, _size, 0);
33814
+ __privateSet(this, _calculatedSize, 0);
33815
+ if (typeof dispose === "function") {
33816
+ __privateSet(this, _dispose, dispose);
33817
+ }
33818
+ if (typeof disposeAfter === "function") {
33819
+ __privateSet(this, _disposeAfter, disposeAfter);
33820
+ __privateSet(this, _disposed, []);
33821
+ } else {
33822
+ __privateSet(this, _disposeAfter, void 0);
33823
+ __privateSet(this, _disposed, void 0);
33824
+ }
33825
+ __privateSet(this, _hasDispose, !!__privateGet(this, _dispose));
33826
+ __privateSet(this, _hasDisposeAfter, !!__privateGet(this, _disposeAfter));
33827
+ this.noDisposeOnSet = !!noDisposeOnSet;
33828
+ this.noUpdateTTL = !!noUpdateTTL;
33829
+ this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection;
33830
+ this.allowStaleOnFetchRejection = !!allowStaleOnFetchRejection;
33831
+ this.allowStaleOnFetchAbort = !!allowStaleOnFetchAbort;
33832
+ this.ignoreFetchAbort = !!ignoreFetchAbort;
33833
+ if (this.maxEntrySize !== 0) {
33834
+ if (__privateGet(this, _maxSize) !== 0) {
33835
+ if (!isPosInt(__privateGet(this, _maxSize))) {
33836
+ throw new TypeError("maxSize must be a positive integer if specified");
33837
+ }
33838
+ }
33839
+ if (!isPosInt(this.maxEntrySize)) {
33840
+ throw new TypeError("maxEntrySize must be a positive integer if specified");
33841
+ }
33842
+ __privateMethod(this, _initializeSizeTracking, initializeSizeTracking_fn).call(this);
33843
+ }
33844
+ this.allowStale = !!allowStale;
33845
+ this.noDeleteOnStaleGet = !!noDeleteOnStaleGet;
33846
+ this.updateAgeOnGet = !!updateAgeOnGet;
33847
+ this.updateAgeOnHas = !!updateAgeOnHas;
33848
+ this.ttlResolution = isPosInt(ttlResolution) || ttlResolution === 0 ? ttlResolution : 1;
33849
+ this.ttlAutopurge = !!ttlAutopurge;
33850
+ this.ttl = ttl || 0;
33851
+ if (this.ttl) {
33852
+ if (!isPosInt(this.ttl)) {
33853
+ throw new TypeError("ttl must be a positive integer if specified");
33854
+ }
33855
+ __privateMethod(this, _initializeTTLTracking, initializeTTLTracking_fn).call(this);
33856
+ }
33857
+ if (__privateGet(this, _max) === 0 && this.ttl === 0 && __privateGet(this, _maxSize) === 0) {
33858
+ throw new TypeError("At least one of max, maxSize, or ttl is required");
33859
+ }
33860
+ if (!this.ttlAutopurge && !__privateGet(this, _max) && !__privateGet(this, _maxSize)) {
33861
+ const code = "LRU_CACHE_UNBOUNDED";
33862
+ if (shouldWarn(code)) {
33863
+ warned.add(code);
33864
+ const msg = "TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.";
33865
+ emitWarning(msg, "UnboundedCacheWarning", code, _LRUCache);
33866
+ }
33867
+ }
33868
+ }
33869
+ /**
33870
+ * Do not call this method unless you need to inspect the
33871
+ * inner workings of the cache. If anything returned by this
33872
+ * object is modified in any way, strange breakage may occur.
33873
+ *
33874
+ * These fields are private for a reason!
33875
+ *
33876
+ * @internal
33877
+ */
33878
+ static unsafeExposeInternals(c2) {
33879
+ return {
33880
+ // properties
33881
+ starts: __privateGet(c2, _starts),
33882
+ ttls: __privateGet(c2, _ttls),
33883
+ sizes: __privateGet(c2, _sizes),
33884
+ keyMap: __privateGet(c2, _keyMap),
33885
+ keyList: __privateGet(c2, _keyList),
33886
+ valList: __privateGet(c2, _valList),
33887
+ next: __privateGet(c2, _next),
33888
+ prev: __privateGet(c2, _prev),
33889
+ get head() {
33890
+ return __privateGet(c2, _head);
33891
+ },
33892
+ get tail() {
33893
+ return __privateGet(c2, _tail);
33894
+ },
33895
+ free: __privateGet(c2, _free),
33896
+ // methods
33897
+ isBackgroundFetch: (p) => {
33898
+ var _a3;
33899
+ return __privateMethod(_a3 = c2, _isBackgroundFetch, isBackgroundFetch_fn).call(_a3, p);
33900
+ },
33901
+ backgroundFetch: (k, index, options, context) => {
33902
+ var _a3;
33903
+ return __privateMethod(_a3 = c2, _backgroundFetch, backgroundFetch_fn).call(_a3, k, index, options, context);
33904
+ },
33905
+ moveToTail: (index) => {
33906
+ var _a3;
33907
+ return __privateMethod(_a3 = c2, _moveToTail, moveToTail_fn).call(_a3, index);
33908
+ },
33909
+ indexes: (options) => {
33910
+ var _a3;
33911
+ return __privateMethod(_a3 = c2, _indexes, indexes_fn).call(_a3, options);
33912
+ },
33913
+ rindexes: (options) => {
33914
+ var _a3;
33915
+ return __privateMethod(_a3 = c2, _rindexes, rindexes_fn).call(_a3, options);
33916
+ },
33917
+ isStale: (index) => {
33918
+ var _a3;
33919
+ return __privateGet(_a3 = c2, _isStale).call(_a3, index);
33920
+ }
33921
+ };
33922
+ }
33923
+ // Protected read-only members
33924
+ /**
33925
+ * {@link LRUCache.OptionsBase.max} (read-only)
33926
+ */
33927
+ get max() {
33928
+ return __privateGet(this, _max);
33929
+ }
33930
+ /**
33931
+ * {@link LRUCache.OptionsBase.maxSize} (read-only)
33932
+ */
33933
+ get maxSize() {
33934
+ return __privateGet(this, _maxSize);
33935
+ }
33936
+ /**
33937
+ * The total computed size of items in the cache (read-only)
33938
+ */
33939
+ get calculatedSize() {
33940
+ return __privateGet(this, _calculatedSize);
33941
+ }
33942
+ /**
33943
+ * The number of items stored in the cache (read-only)
33944
+ */
33945
+ get size() {
33946
+ return __privateGet(this, _size);
33947
+ }
33948
+ /**
33949
+ * {@link LRUCache.OptionsBase.fetchMethod} (read-only)
33950
+ */
33951
+ get fetchMethod() {
33952
+ return __privateGet(this, _fetchMethod);
33953
+ }
33954
+ /**
33955
+ * {@link LRUCache.OptionsBase.dispose} (read-only)
33956
+ */
33957
+ get dispose() {
33958
+ return __privateGet(this, _dispose);
33959
+ }
33960
+ /**
33961
+ * {@link LRUCache.OptionsBase.disposeAfter} (read-only)
33962
+ */
33963
+ get disposeAfter() {
33964
+ return __privateGet(this, _disposeAfter);
33965
+ }
33966
+ /**
33967
+ * Return the remaining TTL time for a given entry key
33968
+ */
33969
+ getRemainingTTL(key) {
33970
+ return __privateGet(this, _keyMap).has(key) ? Infinity : 0;
33971
+ }
33972
+ /**
33973
+ * Return a generator yielding `[key, value]` pairs,
33974
+ * in order from most recently used to least recently used.
33975
+ */
33976
+ *entries() {
33977
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this)) {
33978
+ if (__privateGet(this, _valList)[i2] !== void 0 && __privateGet(this, _keyList)[i2] !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
33979
+ yield [__privateGet(this, _keyList)[i2], __privateGet(this, _valList)[i2]];
33980
+ }
33981
+ }
33982
+ }
33983
+ /**
33984
+ * Inverse order version of {@link LRUCache.entries}
33985
+ *
33986
+ * Return a generator yielding `[key, value]` pairs,
33987
+ * in order from least recently used to most recently used.
33988
+ */
33989
+ *rentries() {
33990
+ for (const i2 of __privateMethod(this, _rindexes, rindexes_fn).call(this)) {
33991
+ if (__privateGet(this, _valList)[i2] !== void 0 && __privateGet(this, _keyList)[i2] !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
33992
+ yield [__privateGet(this, _keyList)[i2], __privateGet(this, _valList)[i2]];
33993
+ }
33994
+ }
33995
+ }
33996
+ /**
33997
+ * Return a generator yielding the keys in the cache,
33998
+ * in order from most recently used to least recently used.
33999
+ */
34000
+ *keys() {
34001
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this)) {
34002
+ const k = __privateGet(this, _keyList)[i2];
34003
+ if (k !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
34004
+ yield k;
34005
+ }
34006
+ }
34007
+ }
34008
+ /**
34009
+ * Inverse order version of {@link LRUCache.keys}
34010
+ *
34011
+ * Return a generator yielding the keys in the cache,
34012
+ * in order from least recently used to most recently used.
34013
+ */
34014
+ *rkeys() {
34015
+ for (const i2 of __privateMethod(this, _rindexes, rindexes_fn).call(this)) {
34016
+ const k = __privateGet(this, _keyList)[i2];
34017
+ if (k !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
34018
+ yield k;
34019
+ }
34020
+ }
34021
+ }
34022
+ /**
34023
+ * Return a generator yielding the values in the cache,
34024
+ * in order from most recently used to least recently used.
34025
+ */
34026
+ *values() {
34027
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this)) {
34028
+ const v = __privateGet(this, _valList)[i2];
34029
+ if (v !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
34030
+ yield __privateGet(this, _valList)[i2];
34031
+ }
34032
+ }
34033
+ }
34034
+ /**
34035
+ * Inverse order version of {@link LRUCache.values}
34036
+ *
34037
+ * Return a generator yielding the values in the cache,
34038
+ * in order from least recently used to most recently used.
34039
+ */
34040
+ *rvalues() {
34041
+ for (const i2 of __privateMethod(this, _rindexes, rindexes_fn).call(this)) {
34042
+ const v = __privateGet(this, _valList)[i2];
34043
+ if (v !== void 0 && !__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, __privateGet(this, _valList)[i2])) {
34044
+ yield __privateGet(this, _valList)[i2];
34045
+ }
34046
+ }
34047
+ }
34048
+ /**
34049
+ * Iterating over the cache itself yields the same results as
34050
+ * {@link LRUCache.entries}
34051
+ */
34052
+ [Symbol.iterator]() {
34053
+ return this.entries();
34054
+ }
34055
+ /**
34056
+ * Find a value for which the supplied fn method returns a truthy value,
34057
+ * similar to Array.find(). fn is called as fn(value, key, cache).
34058
+ */
34059
+ find(fn, getOptions2 = {}) {
34060
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this)) {
34061
+ const v = __privateGet(this, _valList)[i2];
34062
+ const value = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34063
+ if (value === void 0)
34064
+ continue;
34065
+ if (fn(value, __privateGet(this, _keyList)[i2], this)) {
34066
+ return this.get(__privateGet(this, _keyList)[i2], getOptions2);
34067
+ }
34068
+ }
34069
+ }
34070
+ /**
34071
+ * Call the supplied function on each item in the cache, in order from
34072
+ * most recently used to least recently used. fn is called as
34073
+ * fn(value, key, cache). Does not update age or recenty of use.
34074
+ * Does not iterate over stale values.
34075
+ */
34076
+ forEach(fn, thisp = this) {
34077
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this)) {
34078
+ const v = __privateGet(this, _valList)[i2];
34079
+ const value = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34080
+ if (value === void 0)
34081
+ continue;
34082
+ fn.call(thisp, value, __privateGet(this, _keyList)[i2], this);
34083
+ }
34084
+ }
34085
+ /**
34086
+ * The same as {@link LRUCache.forEach} but items are iterated over in
34087
+ * reverse order. (ie, less recently used items are iterated over first.)
34088
+ */
34089
+ rforEach(fn, thisp = this) {
34090
+ for (const i2 of __privateMethod(this, _rindexes, rindexes_fn).call(this)) {
34091
+ const v = __privateGet(this, _valList)[i2];
34092
+ const value = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34093
+ if (value === void 0)
34094
+ continue;
34095
+ fn.call(thisp, value, __privateGet(this, _keyList)[i2], this);
34096
+ }
34097
+ }
34098
+ /**
34099
+ * Delete any stale entries. Returns true if anything was removed,
34100
+ * false otherwise.
34101
+ */
34102
+ purgeStale() {
34103
+ let deleted = false;
34104
+ for (const i2 of __privateMethod(this, _rindexes, rindexes_fn).call(this, { allowStale: true })) {
34105
+ if (__privateGet(this, _isStale).call(this, i2)) {
34106
+ this.delete(__privateGet(this, _keyList)[i2]);
34107
+ deleted = true;
34108
+ }
34109
+ }
34110
+ return deleted;
34111
+ }
34112
+ /**
34113
+ * Get the extended info about a given entry, to get its value, size, and
34114
+ * TTL info simultaneously. Like {@link LRUCache#dump}, but just for a
34115
+ * single key. Always returns stale values, if their info is found in the
34116
+ * cache, so be sure to check for expired TTLs if relevant.
34117
+ */
34118
+ info(key) {
34119
+ const i2 = __privateGet(this, _keyMap).get(key);
34120
+ if (i2 === void 0)
34121
+ return void 0;
34122
+ const v = __privateGet(this, _valList)[i2];
34123
+ const value = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34124
+ if (value === void 0)
34125
+ return void 0;
34126
+ const entry = { value };
34127
+ if (__privateGet(this, _ttls) && __privateGet(this, _starts)) {
34128
+ const ttl = __privateGet(this, _ttls)[i2];
34129
+ const start2 = __privateGet(this, _starts)[i2];
34130
+ if (ttl && start2) {
34131
+ const remain = ttl - (perf.now() - start2);
34132
+ entry.ttl = remain;
34133
+ entry.start = Date.now();
34134
+ }
34135
+ }
34136
+ if (__privateGet(this, _sizes)) {
34137
+ entry.size = __privateGet(this, _sizes)[i2];
34138
+ }
34139
+ return entry;
34140
+ }
34141
+ /**
34142
+ * Return an array of [key, {@link LRUCache.Entry}] tuples which can be
34143
+ * passed to cache.load()
34144
+ */
34145
+ dump() {
34146
+ const arr = [];
34147
+ for (const i2 of __privateMethod(this, _indexes, indexes_fn).call(this, { allowStale: true })) {
34148
+ const key = __privateGet(this, _keyList)[i2];
34149
+ const v = __privateGet(this, _valList)[i2];
34150
+ const value = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34151
+ if (value === void 0 || key === void 0)
34152
+ continue;
34153
+ const entry = { value };
34154
+ if (__privateGet(this, _ttls) && __privateGet(this, _starts)) {
34155
+ entry.ttl = __privateGet(this, _ttls)[i2];
34156
+ const age = perf.now() - __privateGet(this, _starts)[i2];
34157
+ entry.start = Math.floor(Date.now() - age);
34158
+ }
34159
+ if (__privateGet(this, _sizes)) {
34160
+ entry.size = __privateGet(this, _sizes)[i2];
34161
+ }
34162
+ arr.unshift([key, entry]);
34163
+ }
34164
+ return arr;
34165
+ }
34166
+ /**
34167
+ * Reset the cache and load in the items in entries in the order listed.
34168
+ * Note that the shape of the resulting cache may be different if the
34169
+ * same options are not used in both caches.
34170
+ */
34171
+ load(arr) {
34172
+ this.clear();
34173
+ for (const [key, entry] of arr) {
34174
+ if (entry.start) {
34175
+ const age = Date.now() - entry.start;
34176
+ entry.start = perf.now() - age;
34177
+ }
34178
+ this.set(key, entry.value, entry);
34179
+ }
34180
+ }
34181
+ /**
34182
+ * Add a value to the cache.
34183
+ *
34184
+ * Note: if `undefined` is specified as a value, this is an alias for
34185
+ * {@link LRUCache#delete}
34186
+ */
34187
+ set(k, v, setOptions = {}) {
34188
+ var _a3, _b, _c, _d, _e;
34189
+ if (v === void 0) {
34190
+ this.delete(k);
34191
+ return this;
34192
+ }
34193
+ const { ttl = this.ttl, start: start2, noDisposeOnSet = this.noDisposeOnSet, sizeCalculation = this.sizeCalculation, status } = setOptions;
34194
+ let { noUpdateTTL = this.noUpdateTTL } = setOptions;
34195
+ const size = __privateGet(this, _requireSize).call(this, k, v, setOptions.size || 0, sizeCalculation);
34196
+ if (this.maxEntrySize && size > this.maxEntrySize) {
34197
+ if (status) {
34198
+ status.set = "miss";
34199
+ status.maxEntrySizeExceeded = true;
34200
+ }
34201
+ this.delete(k);
34202
+ return this;
34203
+ }
34204
+ let index = __privateGet(this, _size) === 0 ? void 0 : __privateGet(this, _keyMap).get(k);
34205
+ if (index === void 0) {
34206
+ index = __privateGet(this, _size) === 0 ? __privateGet(this, _tail) : __privateGet(this, _free).length !== 0 ? __privateGet(this, _free).pop() : __privateGet(this, _size) === __privateGet(this, _max) ? __privateMethod(this, _evict, evict_fn).call(this, false) : __privateGet(this, _size);
34207
+ __privateGet(this, _keyList)[index] = k;
34208
+ __privateGet(this, _valList)[index] = v;
34209
+ __privateGet(this, _keyMap).set(k, index);
34210
+ __privateGet(this, _next)[__privateGet(this, _tail)] = index;
34211
+ __privateGet(this, _prev)[index] = __privateGet(this, _tail);
34212
+ __privateSet(this, _tail, index);
34213
+ __privateWrapper(this, _size)._++;
34214
+ __privateGet(this, _addItemSize).call(this, index, size, status);
34215
+ if (status)
34216
+ status.set = "add";
34217
+ noUpdateTTL = false;
34218
+ } else {
34219
+ __privateMethod(this, _moveToTail, moveToTail_fn).call(this, index);
34220
+ const oldVal = __privateGet(this, _valList)[index];
34221
+ if (v !== oldVal) {
34222
+ if (__privateGet(this, _hasFetchMethod) && __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, oldVal)) {
34223
+ oldVal.__abortController.abort(new Error("replaced"));
34224
+ const { __staleWhileFetching: s } = oldVal;
34225
+ if (s !== void 0 && !noDisposeOnSet) {
34226
+ if (__privateGet(this, _hasDispose)) {
34227
+ (_a3 = __privateGet(this, _dispose)) == null ? void 0 : _a3.call(this, s, k, "set");
34228
+ }
34229
+ if (__privateGet(this, _hasDisposeAfter)) {
34230
+ (_b = __privateGet(this, _disposed)) == null ? void 0 : _b.push([s, k, "set"]);
34231
+ }
34232
+ }
34233
+ } else if (!noDisposeOnSet) {
34234
+ if (__privateGet(this, _hasDispose)) {
34235
+ (_c = __privateGet(this, _dispose)) == null ? void 0 : _c.call(this, oldVal, k, "set");
34236
+ }
34237
+ if (__privateGet(this, _hasDisposeAfter)) {
34238
+ (_d = __privateGet(this, _disposed)) == null ? void 0 : _d.push([oldVal, k, "set"]);
34239
+ }
34240
+ }
34241
+ __privateGet(this, _removeItemSize).call(this, index);
34242
+ __privateGet(this, _addItemSize).call(this, index, size, status);
34243
+ __privateGet(this, _valList)[index] = v;
34244
+ if (status) {
34245
+ status.set = "replace";
34246
+ const oldValue = oldVal && __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, oldVal) ? oldVal.__staleWhileFetching : oldVal;
34247
+ if (oldValue !== void 0)
34248
+ status.oldValue = oldValue;
34249
+ }
34250
+ } else if (status) {
34251
+ status.set = "update";
34252
+ }
34253
+ }
34254
+ if (ttl !== 0 && !__privateGet(this, _ttls)) {
34255
+ __privateMethod(this, _initializeTTLTracking, initializeTTLTracking_fn).call(this);
34256
+ }
34257
+ if (__privateGet(this, _ttls)) {
34258
+ if (!noUpdateTTL) {
34259
+ __privateGet(this, _setItemTTL).call(this, index, ttl, start2);
34260
+ }
34261
+ if (status)
34262
+ __privateGet(this, _statusTTL).call(this, status, index);
34263
+ }
34264
+ if (!noDisposeOnSet && __privateGet(this, _hasDisposeAfter) && __privateGet(this, _disposed)) {
34265
+ const dt = __privateGet(this, _disposed);
34266
+ let task;
34267
+ while (task = dt == null ? void 0 : dt.shift()) {
34268
+ (_e = __privateGet(this, _disposeAfter)) == null ? void 0 : _e.call(this, ...task);
34269
+ }
34270
+ }
34271
+ return this;
34272
+ }
34273
+ /**
34274
+ * Evict the least recently used item, returning its value or
34275
+ * `undefined` if cache is empty.
34276
+ */
34277
+ pop() {
34278
+ var _a3;
34279
+ try {
34280
+ while (__privateGet(this, _size)) {
34281
+ const val = __privateGet(this, _valList)[__privateGet(this, _head)];
34282
+ __privateMethod(this, _evict, evict_fn).call(this, true);
34283
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, val)) {
34284
+ if (val.__staleWhileFetching) {
34285
+ return val.__staleWhileFetching;
34286
+ }
34287
+ } else if (val !== void 0) {
34288
+ return val;
34289
+ }
34290
+ }
34291
+ } finally {
34292
+ if (__privateGet(this, _hasDisposeAfter) && __privateGet(this, _disposed)) {
34293
+ const dt = __privateGet(this, _disposed);
34294
+ let task;
34295
+ while (task = dt == null ? void 0 : dt.shift()) {
34296
+ (_a3 = __privateGet(this, _disposeAfter)) == null ? void 0 : _a3.call(this, ...task);
34297
+ }
34298
+ }
34299
+ }
34300
+ }
34301
+ /**
34302
+ * Check if a key is in the cache, without updating the recency of use.
34303
+ * Will return false if the item is stale, even though it is technically
34304
+ * in the cache.
34305
+ *
34306
+ * Will not update item age unless
34307
+ * {@link LRUCache.OptionsBase.updateAgeOnHas} is set.
34308
+ */
34309
+ has(k, hasOptions = {}) {
34310
+ const { updateAgeOnHas = this.updateAgeOnHas, status } = hasOptions;
34311
+ const index = __privateGet(this, _keyMap).get(k);
34312
+ if (index !== void 0) {
34313
+ const v = __privateGet(this, _valList)[index];
34314
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) && v.__staleWhileFetching === void 0) {
34315
+ return false;
34316
+ }
34317
+ if (!__privateGet(this, _isStale).call(this, index)) {
34318
+ if (updateAgeOnHas) {
34319
+ __privateGet(this, _updateItemAge).call(this, index);
34320
+ }
34321
+ if (status) {
34322
+ status.has = "hit";
34323
+ __privateGet(this, _statusTTL).call(this, status, index);
34324
+ }
34325
+ return true;
34326
+ } else if (status) {
34327
+ status.has = "stale";
34328
+ __privateGet(this, _statusTTL).call(this, status, index);
34329
+ }
34330
+ } else if (status) {
34331
+ status.has = "miss";
34332
+ }
34333
+ return false;
34334
+ }
34335
+ /**
34336
+ * Like {@link LRUCache#get} but doesn't update recency or delete stale
34337
+ * items.
34338
+ *
34339
+ * Returns `undefined` if the item is stale, unless
34340
+ * {@link LRUCache.OptionsBase.allowStale} is set.
34341
+ */
34342
+ peek(k, peekOptions = {}) {
34343
+ const { allowStale = this.allowStale } = peekOptions;
34344
+ const index = __privateGet(this, _keyMap).get(k);
34345
+ if (index === void 0 || !allowStale && __privateGet(this, _isStale).call(this, index)) {
34346
+ return;
34347
+ }
34348
+ const v = __privateGet(this, _valList)[index];
34349
+ return __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v) ? v.__staleWhileFetching : v;
34350
+ }
34351
+ fetch(_0) {
34352
+ return __async(this, arguments, function* (k, fetchOptions = {}) {
34353
+ const {
34354
+ // get options
34355
+ allowStale = this.allowStale,
34356
+ updateAgeOnGet = this.updateAgeOnGet,
34357
+ noDeleteOnStaleGet = this.noDeleteOnStaleGet,
34358
+ // set options
34359
+ ttl = this.ttl,
34360
+ noDisposeOnSet = this.noDisposeOnSet,
34361
+ size = 0,
34362
+ sizeCalculation = this.sizeCalculation,
34363
+ noUpdateTTL = this.noUpdateTTL,
34364
+ // fetch exclusive options
34365
+ noDeleteOnFetchRejection = this.noDeleteOnFetchRejection,
34366
+ allowStaleOnFetchRejection = this.allowStaleOnFetchRejection,
34367
+ ignoreFetchAbort = this.ignoreFetchAbort,
34368
+ allowStaleOnFetchAbort = this.allowStaleOnFetchAbort,
34369
+ context,
34370
+ forceRefresh = false,
34371
+ status,
34372
+ signal
34373
+ } = fetchOptions;
34374
+ if (!__privateGet(this, _hasFetchMethod)) {
34375
+ if (status)
34376
+ status.fetch = "get";
34377
+ return this.get(k, {
34378
+ allowStale,
34379
+ updateAgeOnGet,
34380
+ noDeleteOnStaleGet,
34381
+ status
34382
+ });
34383
+ }
34384
+ const options = {
34385
+ allowStale,
34386
+ updateAgeOnGet,
34387
+ noDeleteOnStaleGet,
34388
+ ttl,
34389
+ noDisposeOnSet,
34390
+ size,
34391
+ sizeCalculation,
34392
+ noUpdateTTL,
34393
+ noDeleteOnFetchRejection,
34394
+ allowStaleOnFetchRejection,
34395
+ allowStaleOnFetchAbort,
34396
+ ignoreFetchAbort,
34397
+ status,
34398
+ signal
34399
+ };
34400
+ let index = __privateGet(this, _keyMap).get(k);
34401
+ if (index === void 0) {
34402
+ if (status)
34403
+ status.fetch = "miss";
34404
+ const p = __privateMethod(this, _backgroundFetch, backgroundFetch_fn).call(this, k, index, options, context);
34405
+ return p.__returned = p;
34406
+ } else {
34407
+ const v = __privateGet(this, _valList)[index];
34408
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34409
+ const stale = allowStale && v.__staleWhileFetching !== void 0;
34410
+ if (status) {
34411
+ status.fetch = "inflight";
34412
+ if (stale)
34413
+ status.returnedStale = true;
34414
+ }
34415
+ return stale ? v.__staleWhileFetching : v.__returned = v;
34416
+ }
34417
+ const isStale = __privateGet(this, _isStale).call(this, index);
34418
+ if (!forceRefresh && !isStale) {
34419
+ if (status)
34420
+ status.fetch = "hit";
34421
+ __privateMethod(this, _moveToTail, moveToTail_fn).call(this, index);
34422
+ if (updateAgeOnGet) {
34423
+ __privateGet(this, _updateItemAge).call(this, index);
34424
+ }
34425
+ if (status)
34426
+ __privateGet(this, _statusTTL).call(this, status, index);
34427
+ return v;
34428
+ }
34429
+ const p = __privateMethod(this, _backgroundFetch, backgroundFetch_fn).call(this, k, index, options, context);
34430
+ const hasStale = p.__staleWhileFetching !== void 0;
34431
+ const staleVal = hasStale && allowStale;
34432
+ if (status) {
34433
+ status.fetch = isStale ? "stale" : "refresh";
34434
+ if (staleVal && isStale)
34435
+ status.returnedStale = true;
34436
+ }
34437
+ return staleVal ? p.__staleWhileFetching : p.__returned = p;
34438
+ }
34439
+ });
34440
+ }
34441
+ /**
34442
+ * Return a value from the cache. Will update the recency of the cache
34443
+ * entry found.
34444
+ *
34445
+ * If the key is not found, get() will return `undefined`.
34446
+ */
34447
+ get(k, getOptions2 = {}) {
34448
+ const { allowStale = this.allowStale, updateAgeOnGet = this.updateAgeOnGet, noDeleteOnStaleGet = this.noDeleteOnStaleGet, status } = getOptions2;
34449
+ const index = __privateGet(this, _keyMap).get(k);
34450
+ if (index !== void 0) {
34451
+ const value = __privateGet(this, _valList)[index];
34452
+ const fetching = __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, value);
34453
+ if (status)
34454
+ __privateGet(this, _statusTTL).call(this, status, index);
34455
+ if (__privateGet(this, _isStale).call(this, index)) {
34456
+ if (status)
34457
+ status.get = "stale";
34458
+ if (!fetching) {
34459
+ if (!noDeleteOnStaleGet) {
34460
+ this.delete(k);
34461
+ }
34462
+ if (status && allowStale)
34463
+ status.returnedStale = true;
34464
+ return allowStale ? value : void 0;
34465
+ } else {
34466
+ if (status && allowStale && value.__staleWhileFetching !== void 0) {
34467
+ status.returnedStale = true;
34468
+ }
34469
+ return allowStale ? value.__staleWhileFetching : void 0;
34470
+ }
34471
+ } else {
34472
+ if (status)
34473
+ status.get = "hit";
34474
+ if (fetching) {
34475
+ return value.__staleWhileFetching;
34476
+ }
34477
+ __privateMethod(this, _moveToTail, moveToTail_fn).call(this, index);
34478
+ if (updateAgeOnGet) {
34479
+ __privateGet(this, _updateItemAge).call(this, index);
34480
+ }
34481
+ return value;
34482
+ }
34483
+ } else if (status) {
34484
+ status.get = "miss";
34485
+ }
34486
+ }
34487
+ /**
34488
+ * Deletes a key out of the cache.
34489
+ * Returns true if the key was deleted, false otherwise.
34490
+ */
34491
+ delete(k) {
34492
+ var _a3, _b, _c, _d;
34493
+ let deleted = false;
34494
+ if (__privateGet(this, _size) !== 0) {
34495
+ const index = __privateGet(this, _keyMap).get(k);
34496
+ if (index !== void 0) {
34497
+ deleted = true;
34498
+ if (__privateGet(this, _size) === 1) {
34499
+ this.clear();
34500
+ } else {
34501
+ __privateGet(this, _removeItemSize).call(this, index);
34502
+ const v = __privateGet(this, _valList)[index];
34503
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34504
+ v.__abortController.abort(new Error("deleted"));
34505
+ } else if (__privateGet(this, _hasDispose) || __privateGet(this, _hasDisposeAfter)) {
34506
+ if (__privateGet(this, _hasDispose)) {
34507
+ (_a3 = __privateGet(this, _dispose)) == null ? void 0 : _a3.call(this, v, k, "delete");
34508
+ }
34509
+ if (__privateGet(this, _hasDisposeAfter)) {
34510
+ (_b = __privateGet(this, _disposed)) == null ? void 0 : _b.push([v, k, "delete"]);
34511
+ }
34512
+ }
34513
+ __privateGet(this, _keyMap).delete(k);
34514
+ __privateGet(this, _keyList)[index] = void 0;
34515
+ __privateGet(this, _valList)[index] = void 0;
34516
+ if (index === __privateGet(this, _tail)) {
34517
+ __privateSet(this, _tail, __privateGet(this, _prev)[index]);
34518
+ } else if (index === __privateGet(this, _head)) {
34519
+ __privateSet(this, _head, __privateGet(this, _next)[index]);
34520
+ } else {
34521
+ const pi = __privateGet(this, _prev)[index];
34522
+ __privateGet(this, _next)[pi] = __privateGet(this, _next)[index];
34523
+ const ni = __privateGet(this, _next)[index];
34524
+ __privateGet(this, _prev)[ni] = __privateGet(this, _prev)[index];
34525
+ }
34526
+ __privateWrapper(this, _size)._--;
34527
+ __privateGet(this, _free).push(index);
34528
+ }
34529
+ }
34530
+ }
34531
+ if (__privateGet(this, _hasDisposeAfter) && ((_c = __privateGet(this, _disposed)) == null ? void 0 : _c.length)) {
34532
+ const dt = __privateGet(this, _disposed);
34533
+ let task;
34534
+ while (task = dt == null ? void 0 : dt.shift()) {
34535
+ (_d = __privateGet(this, _disposeAfter)) == null ? void 0 : _d.call(this, ...task);
34536
+ }
34537
+ }
34538
+ return deleted;
34539
+ }
34540
+ /**
34541
+ * Clear the cache entirely, throwing away all values.
34542
+ */
34543
+ clear() {
34544
+ var _a3, _b, _c;
34545
+ for (const index of __privateMethod(this, _rindexes, rindexes_fn).call(this, { allowStale: true })) {
34546
+ const v = __privateGet(this, _valList)[index];
34547
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34548
+ v.__abortController.abort(new Error("deleted"));
34549
+ } else {
34550
+ const k = __privateGet(this, _keyList)[index];
34551
+ if (__privateGet(this, _hasDispose)) {
34552
+ (_a3 = __privateGet(this, _dispose)) == null ? void 0 : _a3.call(this, v, k, "delete");
34553
+ }
34554
+ if (__privateGet(this, _hasDisposeAfter)) {
34555
+ (_b = __privateGet(this, _disposed)) == null ? void 0 : _b.push([v, k, "delete"]);
34556
+ }
34557
+ }
34558
+ }
34559
+ __privateGet(this, _keyMap).clear();
34560
+ __privateGet(this, _valList).fill(void 0);
34561
+ __privateGet(this, _keyList).fill(void 0);
34562
+ if (__privateGet(this, _ttls) && __privateGet(this, _starts)) {
34563
+ __privateGet(this, _ttls).fill(0);
34564
+ __privateGet(this, _starts).fill(0);
34565
+ }
34566
+ if (__privateGet(this, _sizes)) {
34567
+ __privateGet(this, _sizes).fill(0);
34568
+ }
34569
+ __privateSet(this, _head, 0);
34570
+ __privateSet(this, _tail, 0);
34571
+ __privateGet(this, _free).length = 0;
34572
+ __privateSet(this, _calculatedSize, 0);
34573
+ __privateSet(this, _size, 0);
34574
+ if (__privateGet(this, _hasDisposeAfter) && __privateGet(this, _disposed)) {
34575
+ const dt = __privateGet(this, _disposed);
34576
+ let task;
34577
+ while (task = dt == null ? void 0 : dt.shift()) {
34578
+ (_c = __privateGet(this, _disposeAfter)) == null ? void 0 : _c.call(this, ...task);
34579
+ }
34580
+ }
34581
+ }
34582
+ };
34583
+ LRUCache = _LRUCache;
34584
+ _a2 = Symbol.toStringTag;
34585
+ _max = new WeakMap();
34586
+ _maxSize = new WeakMap();
34587
+ _dispose = new WeakMap();
34588
+ _disposeAfter = new WeakMap();
34589
+ _fetchMethod = new WeakMap();
34590
+ _size = new WeakMap();
34591
+ _calculatedSize = new WeakMap();
34592
+ _keyMap = new WeakMap();
34593
+ _keyList = new WeakMap();
34594
+ _valList = new WeakMap();
34595
+ _next = new WeakMap();
34596
+ _prev = new WeakMap();
34597
+ _head = new WeakMap();
34598
+ _tail = new WeakMap();
34599
+ _free = new WeakMap();
34600
+ _disposed = new WeakMap();
34601
+ _sizes = new WeakMap();
34602
+ _starts = new WeakMap();
34603
+ _ttls = new WeakMap();
34604
+ _hasDispose = new WeakMap();
34605
+ _hasFetchMethod = new WeakMap();
34606
+ _hasDisposeAfter = new WeakMap();
34607
+ _initializeTTLTracking = new WeakSet();
34608
+ initializeTTLTracking_fn = function() {
34609
+ const ttls = new ZeroArray(__privateGet(this, _max));
34610
+ const starts = new ZeroArray(__privateGet(this, _max));
34611
+ __privateSet(this, _ttls, ttls);
34612
+ __privateSet(this, _starts, starts);
34613
+ __privateSet(this, _setItemTTL, (index, ttl, start2 = perf.now()) => {
34614
+ starts[index] = ttl !== 0 ? start2 : 0;
34615
+ ttls[index] = ttl;
34616
+ if (ttl !== 0 && this.ttlAutopurge) {
34617
+ const t2 = setTimeout(() => {
34618
+ if (__privateGet(this, _isStale).call(this, index)) {
34619
+ this.delete(__privateGet(this, _keyList)[index]);
34620
+ }
34621
+ }, ttl + 1);
34622
+ if (t2.unref) {
34623
+ t2.unref();
34624
+ }
34625
+ }
34626
+ });
34627
+ __privateSet(this, _updateItemAge, (index) => {
34628
+ starts[index] = ttls[index] !== 0 ? perf.now() : 0;
34629
+ });
34630
+ __privateSet(this, _statusTTL, (status, index) => {
34631
+ if (ttls[index]) {
34632
+ const ttl = ttls[index];
34633
+ const start2 = starts[index];
34634
+ if (!ttl || !start2)
34635
+ return;
34636
+ status.ttl = ttl;
34637
+ status.start = start2;
34638
+ status.now = cachedNow || getNow();
34639
+ const age = status.now - start2;
34640
+ status.remainingTTL = ttl - age;
34641
+ }
34642
+ });
34643
+ let cachedNow = 0;
34644
+ const getNow = () => {
34645
+ const n2 = perf.now();
34646
+ if (this.ttlResolution > 0) {
34647
+ cachedNow = n2;
34648
+ const t2 = setTimeout(() => cachedNow = 0, this.ttlResolution);
34649
+ if (t2.unref) {
34650
+ t2.unref();
34651
+ }
34652
+ }
34653
+ return n2;
34654
+ };
34655
+ this.getRemainingTTL = (key) => {
34656
+ const index = __privateGet(this, _keyMap).get(key);
34657
+ if (index === void 0) {
34658
+ return 0;
34659
+ }
34660
+ const ttl = ttls[index];
34661
+ const start2 = starts[index];
34662
+ if (!ttl || !start2) {
34663
+ return Infinity;
34664
+ }
34665
+ const age = (cachedNow || getNow()) - start2;
34666
+ return ttl - age;
34667
+ };
34668
+ __privateSet(this, _isStale, (index) => {
34669
+ const s = starts[index];
34670
+ const t2 = ttls[index];
34671
+ return !!t2 && !!s && (cachedNow || getNow()) - s > t2;
34672
+ });
34673
+ };
34674
+ _updateItemAge = new WeakMap();
34675
+ _statusTTL = new WeakMap();
34676
+ _setItemTTL = new WeakMap();
34677
+ _isStale = new WeakMap();
34678
+ _initializeSizeTracking = new WeakSet();
34679
+ initializeSizeTracking_fn = function() {
34680
+ const sizes = new ZeroArray(__privateGet(this, _max));
34681
+ __privateSet(this, _calculatedSize, 0);
34682
+ __privateSet(this, _sizes, sizes);
34683
+ __privateSet(this, _removeItemSize, (index) => {
34684
+ __privateSet(this, _calculatedSize, __privateGet(this, _calculatedSize) - sizes[index]);
34685
+ sizes[index] = 0;
34686
+ });
34687
+ __privateSet(this, _requireSize, (k, v, size, sizeCalculation) => {
34688
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34689
+ return 0;
34690
+ }
34691
+ if (!isPosInt(size)) {
34692
+ if (sizeCalculation) {
34693
+ if (typeof sizeCalculation !== "function") {
34694
+ throw new TypeError("sizeCalculation must be a function");
34695
+ }
34696
+ size = sizeCalculation(v, k);
34697
+ if (!isPosInt(size)) {
34698
+ throw new TypeError("sizeCalculation return invalid (expect positive integer)");
34699
+ }
34700
+ } else {
34701
+ throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");
34702
+ }
34703
+ }
34704
+ return size;
34705
+ });
34706
+ __privateSet(this, _addItemSize, (index, size, status) => {
34707
+ sizes[index] = size;
34708
+ if (__privateGet(this, _maxSize)) {
34709
+ const maxSize = __privateGet(this, _maxSize) - sizes[index];
34710
+ while (__privateGet(this, _calculatedSize) > maxSize) {
34711
+ __privateMethod(this, _evict, evict_fn).call(this, true);
34712
+ }
34713
+ }
34714
+ __privateSet(this, _calculatedSize, __privateGet(this, _calculatedSize) + sizes[index]);
34715
+ if (status) {
34716
+ status.entrySize = size;
34717
+ status.totalCalculatedSize = __privateGet(this, _calculatedSize);
34718
+ }
34719
+ });
34720
+ };
34721
+ _removeItemSize = new WeakMap();
34722
+ _addItemSize = new WeakMap();
34723
+ _requireSize = new WeakMap();
34724
+ _indexes = new WeakSet();
34725
+ indexes_fn = function* ({ allowStale = this.allowStale } = {}) {
34726
+ if (__privateGet(this, _size)) {
34727
+ for (let i2 = __privateGet(this, _tail); true; ) {
34728
+ if (!__privateMethod(this, _isValidIndex, isValidIndex_fn).call(this, i2)) {
34729
+ break;
34730
+ }
34731
+ if (allowStale || !__privateGet(this, _isStale).call(this, i2)) {
34732
+ yield i2;
34733
+ }
34734
+ if (i2 === __privateGet(this, _head)) {
34735
+ break;
34736
+ } else {
34737
+ i2 = __privateGet(this, _prev)[i2];
34738
+ }
34739
+ }
34740
+ }
34741
+ };
34742
+ _rindexes = new WeakSet();
34743
+ rindexes_fn = function* ({ allowStale = this.allowStale } = {}) {
34744
+ if (__privateGet(this, _size)) {
34745
+ for (let i2 = __privateGet(this, _head); true; ) {
34746
+ if (!__privateMethod(this, _isValidIndex, isValidIndex_fn).call(this, i2)) {
34747
+ break;
34748
+ }
34749
+ if (allowStale || !__privateGet(this, _isStale).call(this, i2)) {
34750
+ yield i2;
34751
+ }
34752
+ if (i2 === __privateGet(this, _tail)) {
34753
+ break;
34754
+ } else {
34755
+ i2 = __privateGet(this, _next)[i2];
34756
+ }
34757
+ }
34758
+ }
34759
+ };
34760
+ _isValidIndex = new WeakSet();
34761
+ isValidIndex_fn = function(index) {
34762
+ return index !== void 0 && __privateGet(this, _keyMap).get(__privateGet(this, _keyList)[index]) === index;
34763
+ };
34764
+ _evict = new WeakSet();
34765
+ evict_fn = function(free) {
34766
+ var _a3, _b;
34767
+ const head = __privateGet(this, _head);
34768
+ const k = __privateGet(this, _keyList)[head];
34769
+ const v = __privateGet(this, _valList)[head];
34770
+ if (__privateGet(this, _hasFetchMethod) && __privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34771
+ v.__abortController.abort(new Error("evicted"));
34772
+ } else if (__privateGet(this, _hasDispose) || __privateGet(this, _hasDisposeAfter)) {
34773
+ if (__privateGet(this, _hasDispose)) {
34774
+ (_a3 = __privateGet(this, _dispose)) == null ? void 0 : _a3.call(this, v, k, "evict");
34775
+ }
34776
+ if (__privateGet(this, _hasDisposeAfter)) {
34777
+ (_b = __privateGet(this, _disposed)) == null ? void 0 : _b.push([v, k, "evict"]);
34778
+ }
34779
+ }
34780
+ __privateGet(this, _removeItemSize).call(this, head);
34781
+ if (free) {
34782
+ __privateGet(this, _keyList)[head] = void 0;
34783
+ __privateGet(this, _valList)[head] = void 0;
34784
+ __privateGet(this, _free).push(head);
34785
+ }
34786
+ if (__privateGet(this, _size) === 1) {
34787
+ __privateSet(this, _head, __privateSet(this, _tail, 0));
34788
+ __privateGet(this, _free).length = 0;
34789
+ } else {
34790
+ __privateSet(this, _head, __privateGet(this, _next)[head]);
34791
+ }
34792
+ __privateGet(this, _keyMap).delete(k);
34793
+ __privateWrapper(this, _size)._--;
34794
+ return head;
34795
+ };
34796
+ _backgroundFetch = new WeakSet();
34797
+ backgroundFetch_fn = function(k, index, options, context) {
34798
+ const v = index === void 0 ? void 0 : __privateGet(this, _valList)[index];
34799
+ if (__privateMethod(this, _isBackgroundFetch, isBackgroundFetch_fn).call(this, v)) {
34800
+ return v;
34801
+ }
34802
+ const ac = new AC();
34803
+ const { signal } = options;
34804
+ signal == null ? void 0 : signal.addEventListener("abort", () => ac.abort(signal.reason), {
34805
+ signal: ac.signal
34806
+ });
34807
+ const fetchOpts = {
34808
+ signal: ac.signal,
34809
+ options,
34810
+ context
34811
+ };
34812
+ const cb = (v2, updateCache = false) => {
34813
+ const { aborted } = ac.signal;
34814
+ const ignoreAbort = options.ignoreFetchAbort && v2 !== void 0;
34815
+ if (options.status) {
34816
+ if (aborted && !updateCache) {
34817
+ options.status.fetchAborted = true;
34818
+ options.status.fetchError = ac.signal.reason;
34819
+ if (ignoreAbort)
34820
+ options.status.fetchAbortIgnored = true;
34821
+ } else {
34822
+ options.status.fetchResolved = true;
34823
+ }
34824
+ }
34825
+ if (aborted && !ignoreAbort && !updateCache) {
34826
+ return fetchFail(ac.signal.reason);
34827
+ }
34828
+ const bf2 = p;
34829
+ if (__privateGet(this, _valList)[index] === p) {
34830
+ if (v2 === void 0) {
34831
+ if (bf2.__staleWhileFetching) {
34832
+ __privateGet(this, _valList)[index] = bf2.__staleWhileFetching;
34833
+ } else {
34834
+ this.delete(k);
34835
+ }
34836
+ } else {
34837
+ if (options.status)
34838
+ options.status.fetchUpdated = true;
34839
+ this.set(k, v2, fetchOpts.options);
34840
+ }
34841
+ }
34842
+ return v2;
34843
+ };
34844
+ const eb = (er) => {
34845
+ if (options.status) {
34846
+ options.status.fetchRejected = true;
34847
+ options.status.fetchError = er;
34848
+ }
34849
+ return fetchFail(er);
34850
+ };
34851
+ const fetchFail = (er) => {
34852
+ const { aborted } = ac.signal;
34853
+ const allowStaleAborted = aborted && options.allowStaleOnFetchAbort;
34854
+ const allowStale = allowStaleAborted || options.allowStaleOnFetchRejection;
34855
+ const noDelete = allowStale || options.noDeleteOnFetchRejection;
34856
+ const bf2 = p;
34857
+ if (__privateGet(this, _valList)[index] === p) {
34858
+ const del = !noDelete || bf2.__staleWhileFetching === void 0;
34859
+ if (del) {
34860
+ this.delete(k);
34861
+ } else if (!allowStaleAborted) {
34862
+ __privateGet(this, _valList)[index] = bf2.__staleWhileFetching;
34863
+ }
34864
+ }
34865
+ if (allowStale) {
34866
+ if (options.status && bf2.__staleWhileFetching !== void 0) {
34867
+ options.status.returnedStale = true;
34868
+ }
34869
+ return bf2.__staleWhileFetching;
34870
+ } else if (bf2.__returned === bf2) {
34871
+ throw er;
34872
+ }
34873
+ };
34874
+ const pcall = (res, rej) => {
34875
+ var _a3;
34876
+ const fmp = (_a3 = __privateGet(this, _fetchMethod)) == null ? void 0 : _a3.call(this, k, v, fetchOpts);
34877
+ if (fmp && fmp instanceof Promise) {
34878
+ fmp.then((v2) => res(v2 === void 0 ? void 0 : v2), rej);
34879
+ }
34880
+ ac.signal.addEventListener("abort", () => {
34881
+ if (!options.ignoreFetchAbort || options.allowStaleOnFetchAbort) {
34882
+ res(void 0);
34883
+ if (options.allowStaleOnFetchAbort) {
34884
+ res = (v2) => cb(v2, true);
34885
+ }
34886
+ }
34887
+ });
34888
+ };
34889
+ if (options.status)
34890
+ options.status.fetchDispatched = true;
34891
+ const p = new Promise(pcall).then(cb, eb);
34892
+ const bf = Object.assign(p, {
34893
+ __abortController: ac,
34894
+ __staleWhileFetching: v,
34895
+ __returned: void 0
34896
+ });
34897
+ if (index === void 0) {
34898
+ this.set(k, bf, __spreadProps(__spreadValues({}, fetchOpts.options), { status: void 0 }));
34899
+ index = __privateGet(this, _keyMap).get(k);
34900
+ } else {
34901
+ __privateGet(this, _valList)[index] = bf;
34902
+ }
34903
+ return bf;
34904
+ };
34905
+ _isBackgroundFetch = new WeakSet();
34906
+ isBackgroundFetch_fn = function(p) {
34907
+ if (!__privateGet(this, _hasFetchMethod))
34908
+ return false;
34909
+ const b = p;
34910
+ return !!b && b instanceof Promise && b.hasOwnProperty("__staleWhileFetching") && b.__abortController instanceof AC;
34911
+ };
34912
+ _connect = new WeakSet();
34913
+ connect_fn = function(p, n2) {
34914
+ __privateGet(this, _prev)[n2] = p;
34915
+ __privateGet(this, _next)[p] = n2;
34916
+ };
34917
+ _moveToTail = new WeakSet();
34918
+ moveToTail_fn = function(index) {
34919
+ if (index !== __privateGet(this, _tail)) {
34920
+ if (index === __privateGet(this, _head)) {
34921
+ __privateSet(this, _head, __privateGet(this, _next)[index]);
34922
+ } else {
34923
+ __privateMethod(this, _connect, connect_fn).call(this, __privateGet(this, _prev)[index], __privateGet(this, _next)[index]);
34924
+ }
34925
+ __privateMethod(this, _connect, connect_fn).call(this, __privateGet(this, _tail), index);
34926
+ __privateSet(this, _tail, index);
34927
+ }
34928
+ };
34929
+ }
34930
+ });
34931
+
33514
34932
  // ../../node_modules/@measured/dnd/node_modules/@babel/runtime/helpers/esm/extends.js
33515
34933
  function _extends2() {
33516
34934
  _extends2 = Object.assign ? Object.assign.bind() : function(target) {
@@ -33576,7 +34994,7 @@ function bindEvent(win, binding, options) {
33576
34994
  }
33577
34995
  function bindEvents(el, bindings, sharedOptions) {
33578
34996
  const unbindings = bindings.flatMap((binding) => {
33579
- const iframes = querySelectorAll(window.document, "iframe");
34997
+ const iframes = querySelectorAll(window.document, "[data-rfd-iframe]");
33580
34998
  const windows = [el, ...iframes.map((iframe) => iframe.contentWindow)];
33581
34999
  return windows.map((win) => {
33582
35000
  if (!win)
@@ -33786,6 +35204,26 @@ function getFurthestAway({
33786
35204
  }).sort((a2, b) => b.distance - a2.distance);
33787
35205
  return sorted[0] ? sorted[0].id : null;
33788
35206
  }
35207
+ function normalizeFamilies(pageBorderBox, candidates) {
35208
+ const families = candidates.reduce((acc, candidate) => {
35209
+ var _a3;
35210
+ const familyName = ((_a3 = candidate.parents[0]) == null ? void 0 : _a3.id) || candidate.descriptor.id;
35211
+ const family = acc[familyName] || [];
35212
+ const generation = candidate.parents.length;
35213
+ family[generation] = [...family[generation] || [], candidate];
35214
+ return __spreadProps(__spreadValues({}, acc), {
35215
+ [familyName]: family
35216
+ });
35217
+ }, {});
35218
+ return Object.keys(families).map((familyName) => {
35219
+ const family = families[familyName].flat();
35220
+ const reversedFamily = [...family].reverse();
35221
+ const chosenMember = reversedFamily.find((member) => {
35222
+ return pageBorderBox.center.x < member.page.borderBox.right && pageBorderBox.center.x > member.page.borderBox.left && pageBorderBox.center.y > member.page.borderBox.top && pageBorderBox.center.y < member.page.borderBox.bottom;
35223
+ });
35224
+ return chosenMember || family[0];
35225
+ });
35226
+ }
33789
35227
  function getDroppableOver({
33790
35228
  pageBorderBox,
33791
35229
  draggable: draggable2,
@@ -33826,10 +35264,14 @@ function getDroppableOver({
33826
35264
  if (candidates.length === 1) {
33827
35265
  return candidates[0].descriptor.id;
33828
35266
  }
35267
+ const normalizedCandidates = normalizeFamilies(pageBorderBox, candidates);
35268
+ if (normalizedCandidates.length === 1) {
35269
+ return normalizedCandidates[0].descriptor.id;
35270
+ }
33829
35271
  return getFurthestAway({
33830
35272
  pageBorderBox,
33831
35273
  draggable: draggable2,
33832
- candidates
35274
+ candidates: normalizedCandidates
33833
35275
  });
33834
35276
  }
33835
35277
  function getIsDisplaced({
@@ -34046,8 +35488,16 @@ function shouldPublishUpdate(registry, dragging, entry) {
34046
35488
  return true;
34047
35489
  }
34048
35490
  function querySelectorAllIframe(selector) {
34049
- const iframes = querySelectorAll(document, "iframe");
34050
- const iframePossible = iframes.reduce((acc, iframe) => [...acc, ...querySelectorAll(iframe.contentWindow.document, selector)], []);
35491
+ let iframes = iframeCache.get("iframes");
35492
+ if (!iframes) {
35493
+ iframes = querySelectorAll(document, "iframe");
35494
+ iframes = iframes.filter((iframe) => iframe.hasAttribute("data-rfd-iframe"));
35495
+ iframeCache.set("iframes", iframes);
35496
+ }
35497
+ const iframePossible = iframes.reduce((acc, iframe) => {
35498
+ var _a3;
35499
+ return [...acc, ...((_a3 = iframe.contentWindow) == null ? void 0 : _a3.document) ? querySelectorAll(iframe.contentWindow.document, selector) : []];
35500
+ }, []);
34051
35501
  return [...querySelectorAll(document, selector), ...iframePossible];
34052
35502
  }
34053
35503
  function useStyleMarshal(contextId, nonce) {
@@ -34069,7 +35519,10 @@ function useStyleMarshal(contextId, nonce) {
34069
35519
  useLayoutEffect2(() => {
34070
35520
  const alwaysSelector = `[${alwaysDataAttr}="${contextId}"]`;
34071
35521
  const dynamicSelector = `[${dynamicDataAttr}="${contextId}"]`;
34072
- const heads = [getHead(document), ...querySelectorAll(document, `[${prefix2}-iframe]`).map((iframe) => getHead(iframe.contentWindow.document))];
35522
+ const heads = [getHead(document), ...querySelectorAll(document, `[${prefix2}-iframe]`).filter((iframe) => {
35523
+ var _a3;
35524
+ return (_a3 = iframe.contentWindow) == null ? void 0 : _a3.document;
35525
+ }).map((iframe) => getHead(iframe.contentWindow.document))];
34073
35526
  heads.forEach((head) => {
34074
35527
  if (!head)
34075
35528
  return;
@@ -34122,6 +35575,10 @@ function isHtmlElement(el) {
34122
35575
  }
34123
35576
  function findDragHandle(contextId, draggableId) {
34124
35577
  const selector = `[${dragHandle.contextId}="${contextId}"]`;
35578
+ const cachedHandle = dragHandleCache.get(selector);
35579
+ if (cachedHandle) {
35580
+ return cachedHandle;
35581
+ }
34125
35582
  const possible = querySelectorAllIframe(selector);
34126
35583
  if (!possible.length) {
34127
35584
  process.env.NODE_ENV !== "production" ? warning2(`Unable to find any drag handles in the context "${contextId}" ${selector}`) : void 0;
@@ -34138,6 +35595,7 @@ function findDragHandle(contextId, draggableId) {
34138
35595
  process.env.NODE_ENV !== "production" ? warning2("drag handle needs to be a HTMLElement") : void 0;
34139
35596
  return null;
34140
35597
  }
35598
+ dragHandleCache.set(selector, handle);
34141
35599
  return handle;
34142
35600
  }
34143
35601
  function useFocusMarshal(contextId) {
@@ -34498,20 +35956,22 @@ function offsetPoint(x, y, win) {
34498
35956
  let offsetY = 0;
34499
35957
  if (win.parent !== win.self) {
34500
35958
  const iframe = win.frameElement;
34501
- const rect = iframe.getBoundingClientRect();
34502
- const transform = getTransform(iframe);
34503
- offsetX = rect.left;
34504
- offsetY = rect.top;
34505
- if (transform) {
34506
- const {
34507
- x: transformedX,
34508
- y: transformedY
34509
- } = applyTransformPoint(x, y, transform.matrix, transform.origin);
34510
- const point2 = {
34511
- x: transformedX + offsetX,
34512
- y: transformedY + offsetY
34513
- };
34514
- return point2;
35959
+ if (iframe) {
35960
+ const rect = iframe.getBoundingClientRect();
35961
+ const transform = getTransform(iframe);
35962
+ offsetX = rect.left;
35963
+ offsetY = rect.top;
35964
+ if (transform) {
35965
+ const {
35966
+ x: transformedX,
35967
+ y: transformedY
35968
+ } = applyTransformPoint(x, y, transform.matrix, transform.origin);
35969
+ const point2 = {
35970
+ x: transformedX + offsetX,
35971
+ y: transformedY + offsetY
35972
+ };
35973
+ return point2;
35974
+ }
34515
35975
  }
34516
35976
  }
34517
35977
  const point = {
@@ -35207,10 +36667,10 @@ function isActive({
35207
36667
  expected,
35208
36668
  phase,
35209
36669
  isLockActive,
35210
- shouldWarn
36670
+ shouldWarn: shouldWarn2
35211
36671
  }) {
35212
36672
  if (!isLockActive()) {
35213
- if (shouldWarn) {
36673
+ if (shouldWarn2) {
35214
36674
  process.env.NODE_ENV !== "production" ? warning2(`
35215
36675
  Cannot perform action.
35216
36676
  The sensor no longer has an action lock.
@@ -35224,7 +36684,7 @@ function isActive({
35224
36684
  return false;
35225
36685
  }
35226
36686
  if (expected !== phase) {
35227
- if (shouldWarn) {
36687
+ if (shouldWarn2) {
35228
36688
  process.env.NODE_ENV !== "production" ? warning2(`
35229
36689
  Cannot perform action.
35230
36690
  The actions you used belong to an outdated phase
@@ -35636,7 +37096,7 @@ function DragDropContext(props) {
35636
37096
  }, props.children));
35637
37097
  }
35638
37098
  function getDraggingStyle(dragging) {
35639
- var _a, _b, _c, _d, _e, _f;
37099
+ var _a3, _b, _c, _d, _e, _f;
35640
37100
  const dimension = dragging.dimension;
35641
37101
  const box = dimension.client;
35642
37102
  const {
@@ -35648,7 +37108,7 @@ function getDraggingStyle(dragging) {
35648
37108
  const shouldAnimate = getShouldDraggingAnimate(dragging);
35649
37109
  const isDropAnimating = Boolean(dropping);
35650
37110
  const untransformedOffset = {
35651
- x: offset3.x / (((_a = dimension == null ? void 0 : dimension.transform) == null ? void 0 : _a.matrix.scaleX) || 1),
37111
+ x: offset3.x / (((_a3 = dimension == null ? void 0 : dimension.transform) == null ? void 0 : _a3.matrix.scaleX) || 1),
35652
37112
  y: offset3.y / (((_b = dimension == null ? void 0 : dimension.transform) == null ? void 0 : _b.matrix.scaleY) || 1)
35653
37113
  };
35654
37114
  const transform = isDropAnimating ? transforms.drop(untransformedOffset, isCombining) : transforms.moveTo(untransformedOffset);
@@ -35668,14 +37128,14 @@ function getDraggingStyle(dragging) {
35668
37128
  return style2;
35669
37129
  }
35670
37130
  function getSecondaryStyle(secondary) {
35671
- var _a, _b;
37131
+ var _a3, _b;
35672
37132
  const {
35673
37133
  offset: offset3,
35674
37134
  sourceDroppable
35675
37135
  } = secondary;
35676
37136
  return {
35677
37137
  transform: transforms.moveTo({
35678
- x: offset3.x / (((_a = sourceDroppable == null ? void 0 : sourceDroppable.transform) == null ? void 0 : _a.matrix.scaleX) || 1),
37138
+ x: offset3.x / (((_a3 = sourceDroppable == null ? void 0 : sourceDroppable.transform) == null ? void 0 : _a3.matrix.scaleX) || 1),
35679
37139
  y: offset3.y / (((_b = sourceDroppable == null ? void 0 : sourceDroppable.transform) == null ? void 0 : _b.matrix.scaleY) || 1)
35680
37140
  }),
35681
37141
  transition: secondary.shouldAnimateDisplacement ? void 0 : "none"
@@ -35710,7 +37170,7 @@ function getIframeOffset(el) {
35710
37170
  return offset3;
35711
37171
  }
35712
37172
  function applyOffset(rect, offset3) {
35713
- var _a, _b;
37173
+ var _a3, _b;
35714
37174
  return __spreadProps(__spreadValues({}, rect), {
35715
37175
  top: (rect.top || 0) + offset3.top,
35716
37176
  left: (rect.left || 0) + offset3.left,
@@ -35719,7 +37179,7 @@ function applyOffset(rect, offset3) {
35719
37179
  x: (rect.x || 0) + offset3.left,
35720
37180
  y: (rect.y || 0) + offset3.top,
35721
37181
  center: {
35722
- x: (((_a = rect.center) == null ? void 0 : _a.x) || 0) + offset3.left,
37182
+ x: (((_a3 = rect.center) == null ? void 0 : _a3.x) || 0) + offset3.left,
35723
37183
  y: (((_b = rect.center) == null ? void 0 : _b.y) || 0) + offset3.top
35724
37184
  },
35725
37185
  width: rect.width || 0,
@@ -36184,7 +37644,7 @@ function getBody() {
36184
37644
  !document.body ? process.env.NODE_ENV !== "production" ? invariant2(false, "document.body is not ready") : invariant2(false) : void 0;
36185
37645
  return document.body;
36186
37646
  }
36187
- var import_react5, import_react_dom2, isProduction$1, spacesAndTabs, lineStartWithSpaces, clean$2, getDevMessage, getFormattedMessage, isDisabledFlag, warning2, error, loaded, isProduction2, prefix$1, RbdInvariant, ErrorBoundary, dragHandleUsageInstructions, position, onDragStart, withLocation, withCombine, onDragUpdate, returnedToStart, onDragEnd, preset, preset$1, origin, add, subtract, isEqual$1, negate, patch, distance2, closest$1, apply, executeClip, offsetByPosition, getCorners, noSpacing2, scroll$1, increase, clip2, getSubject, scrollDroppable, toDroppableMap, toDraggableMap, toDroppableList, toDraggableList, getDraggablesInsideDroppable, removeDraggableFromList, moveToNextCombine, isHomeOf, noDisplacedBy, emptyGroups, noImpact, noImpact$1, isWithin, isPartiallyVisibleThroughFrame, isTotallyVisibleThroughFrame, vertical, horizontal, isTotallyVisibleThroughFrameOnAxis, getDroppableDisplaced, isVisibleInDroppable, isVisibleInViewport, isVisible$1, isPartiallyVisible, isTotallyVisible, isTotallyVisibleOnAxis, getShouldAnimate, fromCombine, fromReorder, moveToNextIndex, getCombinedItemDisplacement, whenCombining, distanceFromStartToBorderBoxCenter, distanceFromEndToBorderBoxCenter, getCrossAxisBorderBoxCenter, goAfter, goBefore, goIntoStart, whenReordering, withDroppableDisplacement, getResultWithoutDroppableDisplacement, getPageBorderBoxCenterFromImpact, scrollViewport, speculativelyIncrease, withViewportDisplacement, getClientFromPageBorderBoxCenter, isTotallyVisibleInNewLocation, moveToNextPlace, getKnownActive, getBestCrossAxisDroppable, getCurrentPageBorderBoxCenter, getCurrentPageBorderBox, getClosestDraggable, getDisplacedBy, getRequiredGrowthForPlaceholder, withMaxScroll, addPlaceholder, removePlaceholder, moveToNewDroppable, moveCrossAxis, whatIsDraggedOver, getDroppableOver$1, moveInDirection, offsetRectByPosition, withDroppableScroll, getReorderImpact, combineThresholdDivisor, getCombineImpact, getDragImpact, patchDroppableMap, clearUnusedPlaceholder, recomputePlaceholders, update, recompute, getClientBorderBoxCenter, refreshSnap, getHomeLocation, getLiftEffect, patchDimensionMap, start, finish, offsetDraggable, getFrame, adjustAdditionsForScrollChanges, timingsKey, publishWhileDraggingInVirtual, isSnapping, postDroppableChange, idle$2, reducer, beforeInitialCapture, lift$1, initialPublish, publishWhileDragging, collectionStarting, updateDroppableScroll, updateDroppableIsEnabled, updateDroppableIsCombineEnabled, move, moveByWindowScroll, updateViewportMaxScroll, moveUp, moveDown, moveRight, moveLeft, flush, animateDrop, completeDrop, drop$1, dropPending, dropAnimationFinished, lift, style, curves, combine, timings, outOfTheWayTiming, transitions, moveTo, transforms, minDropTime, maxDropTime, dropTimeRange, maxDropTimeAtDistance, cancelDropModifier, getDropDuration, getNewHomeClientOffset, getDropImpact, dropMiddleware, drop, getWindowScroll3, shouldEnd, scrollListener, scrollListener$1, getExpiringAnnounce, getAsyncMarshal, areLocationsEqual, isCombineEqual, isCriticalEqual, withTimings, getDragStart, getPublisher, responders, dropAnimationFinishMiddleware, dropAnimationFinish, dropAnimationFlushOnScrollMiddleware, dropAnimationFlushOnScroll, dimensionMarshalStopper, focus, shouldStop, autoScroll, pendingDrop, pendingDrop$1, composeEnhancers, createStore2, clean$1, getMaxScroll, getDocumentElement, getMaxWindowScroll, getViewport, getInitialPublish, createDimensionMarshal, canStartDrag, scrollWindow, getScrollableDroppables, getScrollableDroppableOver, getBestScrollableDroppable, defaultAutoScrollerOptions, getDistanceThresholds, getPercentage, minScroll, getValueFromDistance, dampenValueByTime, getValue, getScrollOnAxis, adjustForSizeLimits, clean, getScroll$1, smallestSigned, getOverlap, canPartiallyScroll, canScrollWindow, getWindowOverlap, canScrollDroppable, getDroppableOverlap, getWindowScrollChange, getDroppableScrollChange, createCol, matrixPattern, getMatrix, getOrigin, findNearestTransform, defaultTransform, getTransform, applyTransformPoint, applyTransformRect, applyTransformSpacing, applyTransformBox, resetToOrigin, getIframeScroll, scroll, createFluidScroller, createJumpScroller, createAutoScroller, prefix2, dragHandle, draggable, droppable, scrollContainer, makeGetSelector, getStyles, noPointerEvents, getStyles$1, useIsomorphicLayoutEffect2, useLayoutEffect2, getHead, createStyleEl, alwaysDataAttr, dynamicDataAttr, getWindowFromEl, StoreContext, getBodyElement, visuallyHidden, visuallyHidden$1, getId, count$1, defaults, useUniqueId$1, AppContext, peerDependencies, semver, getVersion, isSatisfied, checkReactVersion, suffix, checkDoctype, tab, enter, escape, space, pageUp, pageDown, end, home, arrowLeft, arrowUp, arrowRight, arrowDown, preventedKeys, preventStandardKeyEvents, supportedEventName, supportedPageVisibilityEventName, primaryButton, sloppyClickThreshold, idle$1, scrollJumpKeys, idle, timeForLongPress, forcePressThreshold, interactiveTagNames, getBorderBoxCenterPosition, supportedMatchesName, defaultSensors, createResponders, createAutoScrollerOptions, count, useUniqueContextId$1, zIndexOptions, getDraggingTransition, getDraggingOpacity, getShouldDraggingAnimate, applyOffsetBox, DroppableContext, Draggable, Draggable$1, isStrictEqual, whatIsDraggedOverFromResult, getCombineWithFromResult, getCombineWithFromImpact, atRest, makeMapStateToProps$1, mapDispatchToProps$1, ConnectedDraggable, ConnectedDraggable$1, getScroll, isEqual2, isScroll, isAuto, isVisible, isEither, isBoth, isElementScrollable, isBodyScrollable, getClosestScrollable, getClosestScrollable$1, getIsFixed, getEnv, getDroppableDimension, getClient, getDimension, immediate, delayed, getListenerOptions, getScrollable, getClosestScrollableFromDrag, empty, getSize, getStyle, Placeholder, Placeholder$1, shared, standard, virtual, AnimateInOut, Droppable, Droppable$1, defaultProps, attachDefaultPropsToOwnProps, isMatchingType, getDraggable, makeMapStateToProps, mapDispatchToProps, ConnectedDroppable, ConnectedDroppable$1;
37647
+ var import_react5, import_react_dom2, isProduction$1, spacesAndTabs, lineStartWithSpaces, clean$2, getDevMessage, getFormattedMessage, isDisabledFlag, warning2, error, loaded, isProduction2, prefix$1, RbdInvariant, ErrorBoundary, dragHandleUsageInstructions, position, onDragStart, withLocation, withCombine, onDragUpdate, returnedToStart, onDragEnd, preset, preset$1, origin, add, subtract, isEqual$1, negate, patch, distance2, closest$1, apply, executeClip, offsetByPosition, getCorners, noSpacing2, scroll$1, increase, clip2, getSubject, scrollDroppable, toDroppableMap, toDraggableMap, toDroppableList, toDraggableList, getDraggablesInsideDroppable, removeDraggableFromList, moveToNextCombine, isHomeOf, noDisplacedBy, emptyGroups, noImpact, noImpact$1, isWithin, isPartiallyVisibleThroughFrame, isTotallyVisibleThroughFrame, vertical, horizontal, isTotallyVisibleThroughFrameOnAxis, getDroppableDisplaced, isVisibleInDroppable, isVisibleInViewport, isVisible$1, isPartiallyVisible, isTotallyVisible, isTotallyVisibleOnAxis, getShouldAnimate, fromCombine, fromReorder, moveToNextIndex, getCombinedItemDisplacement, whenCombining, distanceFromStartToBorderBoxCenter, distanceFromEndToBorderBoxCenter, getCrossAxisBorderBoxCenter, goAfter, goBefore, goIntoStart, whenReordering, withDroppableDisplacement, getResultWithoutDroppableDisplacement, getPageBorderBoxCenterFromImpact, scrollViewport, speculativelyIncrease, withViewportDisplacement, getClientFromPageBorderBoxCenter, isTotallyVisibleInNewLocation, moveToNextPlace, getKnownActive, getBestCrossAxisDroppable, getCurrentPageBorderBoxCenter, getCurrentPageBorderBox, getClosestDraggable, getDisplacedBy, getRequiredGrowthForPlaceholder, withMaxScroll, addPlaceholder, removePlaceholder, moveToNewDroppable, moveCrossAxis, whatIsDraggedOver, getDroppableOver$1, moveInDirection, offsetRectByPosition, withDroppableScroll, getReorderImpact, combineThresholdDivisor, getCombineImpact, getDragImpact, patchDroppableMap, clearUnusedPlaceholder, recomputePlaceholders, update, recompute, getClientBorderBoxCenter, refreshSnap, getHomeLocation, getLiftEffect, patchDimensionMap, start, finish, offsetDraggable, getFrame, adjustAdditionsForScrollChanges, timingsKey, publishWhileDraggingInVirtual, isSnapping, postDroppableChange, idle$2, reducer, beforeInitialCapture, lift$1, initialPublish, publishWhileDragging, collectionStarting, updateDroppableScroll, updateDroppableIsEnabled, updateDroppableIsCombineEnabled, move, moveByWindowScroll, updateViewportMaxScroll, moveUp, moveDown, moveRight, moveLeft, flush, animateDrop, completeDrop, drop$1, dropPending, dropAnimationFinished, lift, style, curves, combine, timings, outOfTheWayTiming, transitions, moveTo, transforms, minDropTime, maxDropTime, dropTimeRange, maxDropTimeAtDistance, cancelDropModifier, getDropDuration, getNewHomeClientOffset, getDropImpact, dropMiddleware, drop, getWindowScroll3, shouldEnd, scrollListener, scrollListener$1, getExpiringAnnounce, getAsyncMarshal, areLocationsEqual, isCombineEqual, isCriticalEqual, withTimings, getDragStart, getPublisher, responders, dropAnimationFinishMiddleware, dropAnimationFinish, dropAnimationFlushOnScrollMiddleware, dropAnimationFlushOnScroll, dimensionMarshalStopper, focus, shouldStop, autoScroll, pendingDrop, pendingDrop$1, composeEnhancers, createStore2, clean$1, getMaxScroll, getDocumentElement, getMaxWindowScroll, getViewport, getInitialPublish, createDimensionMarshal, canStartDrag, scrollWindow, getScrollableDroppables, getScrollableDroppableOver, getBestScrollableDroppable, defaultAutoScrollerOptions, getDistanceThresholds, getPercentage, minScroll, getValueFromDistance, dampenValueByTime, getValue, getScrollOnAxis, adjustForSizeLimits, clean, getScroll$1, smallestSigned, getOverlap, canPartiallyScroll, canScrollWindow, getWindowOverlap, canScrollDroppable, getDroppableOverlap, getWindowScrollChange, getDroppableScrollChange, iframeCache, createCol, matrixPattern, getMatrix, getOrigin, findNearestTransform, defaultTransform, getTransform, applyTransformPoint, applyTransformRect, applyTransformSpacing, applyTransformBox, resetToOrigin, getIframeScroll, scroll, createFluidScroller, createJumpScroller, createAutoScroller, prefix2, dragHandle, draggable, droppable, scrollContainer, makeGetSelector, getStyles, noPointerEvents, getStyles$1, useIsomorphicLayoutEffect2, useLayoutEffect2, getHead, createStyleEl, alwaysDataAttr, dynamicDataAttr, getWindowFromEl, dragHandleCache, StoreContext, getBodyElement, visuallyHidden, visuallyHidden$1, getId, count$1, defaults, useUniqueId$1, AppContext, peerDependencies, semver, getVersion, isSatisfied, checkReactVersion, suffix, checkDoctype, tab, enter, escape, space, pageUp, pageDown, end, home, arrowLeft, arrowUp, arrowRight, arrowDown, preventedKeys, preventStandardKeyEvents, supportedEventName, supportedPageVisibilityEventName, primaryButton, sloppyClickThreshold, idle$1, scrollJumpKeys, idle, timeForLongPress, forcePressThreshold, interactiveTagNames, getBorderBoxCenterPosition, supportedMatchesName, defaultSensors, createResponders, createAutoScrollerOptions, count, useUniqueContextId$1, zIndexOptions, getDraggingTransition, getDraggingOpacity, getShouldDraggingAnimate, applyOffsetBox, DroppableContext, Draggable, Draggable$1, isStrictEqual, whatIsDraggedOverFromResult, getCombineWithFromResult, getCombineWithFromImpact, atRest, makeMapStateToProps$1, mapDispatchToProps$1, ConnectedDraggable, ConnectedDraggable$1, getScroll, isEqual2, isScroll, isAuto, isVisible, isEither, isBoth, isElementScrollable, isBodyScrollable, getClosestScrollable, getClosestScrollable$1, getIsFixed, getEnv, getDroppableDimension, getClient, getParents, getDimension, immediate, delayed, getListenerOptions, getScrollable, getClosestScrollableFromDrag, empty, getSize, getStyle, Placeholder, Placeholder$1, shared, standard, virtual, AnimateInOut, Droppable, Droppable$1, defaultProps, attachDefaultPropsToOwnProps, isMatchingType, getDraggable, makeMapStateToProps, mapDispatchToProps, ConnectedDroppable, ConnectedDroppable$1;
36188
37648
  var init_dnd_esm = __esm({
36189
37649
  "../../node_modules/@measured/dnd/dist/dnd.esm.js"() {
36190
37650
  init_react_import();
@@ -36196,6 +37656,7 @@ var init_dnd_esm = __esm({
36196
37656
  init_css_box_model_esm();
36197
37657
  init_memoize_one_esm();
36198
37658
  init_raf_schd_esm();
37659
+ init_esm2();
36199
37660
  init_extends2();
36200
37661
  isProduction$1 = process.env.NODE_ENV === "production";
36201
37662
  spacesAndTabs = /[ \t]{2,}/g;
@@ -39553,6 +41014,10 @@ var init_dnd_esm = __esm({
39553
41014
  });
39554
41015
  return scroll2 && canScrollDroppable(droppable2, scroll2) ? scroll2 : null;
39555
41016
  };
41017
+ iframeCache = new LRUCache({
41018
+ max: 1,
41019
+ ttl: 1e3
41020
+ });
39556
41021
  createCol = (name) => `((?<${name}>-?((\\d|\\.)+))(,\\s)?)`;
39557
41022
  matrixPattern = new RegExp(`^matrix\\(${createCol("scaleX")}${createCol("skewY")}${createCol("skewX")}${createCol("scaleY")}${createCol("translateX")}${createCol("translateY")}\\)`);
39558
41023
  getMatrix = (transform) => {
@@ -39587,7 +41052,7 @@ var init_dnd_esm = __esm({
39587
41052
  }
39588
41053
  if (!el.parentElement) {
39589
41054
  const refWindow = el.ownerDocument.defaultView;
39590
- if (refWindow && refWindow.self !== refWindow.parent) {
41055
+ if (refWindow && refWindow.self !== refWindow.parent && refWindow.frameElement) {
39591
41056
  const iframe = refWindow.frameElement;
39592
41057
  return findNearestTransform(iframe);
39593
41058
  }
@@ -39709,7 +41174,7 @@ var init_dnd_esm = __esm({
39709
41174
  }) => {
39710
41175
  const el = querySelectorAllIframe(`[data-rfd-draggable-id="${state.critical.draggable.id}"]`)[0];
39711
41176
  const win = (el == null ? void 0 : el.ownerDocument.defaultView) || window;
39712
- const isInIframe = win !== window;
41177
+ const isInIframe = win !== window && win.frameElement;
39713
41178
  if (isInIframe) {
39714
41179
  const iframe = win.frameElement;
39715
41180
  const viewportBox = getBox(iframe);
@@ -40070,6 +41535,10 @@ var init_dnd_esm = __esm({
40070
41535
  }
40071
41536
  return window;
40072
41537
  };
41538
+ dragHandleCache = new LRUCache({
41539
+ max: 5e3,
41540
+ ttl: 1e3
41541
+ });
40073
41542
  StoreContext = import_react5.default.createContext(null);
40074
41543
  getBodyElement = () => {
40075
41544
  const body = document.body;
@@ -40495,7 +41964,7 @@ var init_dnd_esm = __esm({
40495
41964
  return false;
40496
41965
  };
40497
41966
  getClosestScrollable = (el) => {
40498
- var _a, _b;
41967
+ var _a3, _b;
40499
41968
  if (el == null) {
40500
41969
  return null;
40501
41970
  }
@@ -40503,7 +41972,7 @@ var init_dnd_esm = __esm({
40503
41972
  if (isBodyScrollable(el)) {
40504
41973
  return el;
40505
41974
  }
40506
- if ((_a = el.ownerDocument.defaultView) == null ? void 0 : _a.frameElement) {
41975
+ if ((_a3 = el.ownerDocument.defaultView) == null ? void 0 : _a3.frameElement) {
40507
41976
  return (_b = el.ownerDocument.defaultView) == null ? void 0 : _b.frameElement;
40508
41977
  }
40509
41978
  return null;
@@ -40544,7 +42013,8 @@ var init_dnd_esm = __esm({
40544
42013
  client,
40545
42014
  page,
40546
42015
  closest: closest2,
40547
- transform
42016
+ transform,
42017
+ parents
40548
42018
  }) => {
40549
42019
  const frame = (() => {
40550
42020
  if (!closest2) {
@@ -40593,7 +42063,8 @@ var init_dnd_esm = __esm({
40593
42063
  page,
40594
42064
  frame,
40595
42065
  subject,
40596
- transform
42066
+ transform,
42067
+ parents
40597
42068
  };
40598
42069
  return dimension;
40599
42070
  };
@@ -40630,6 +42101,27 @@ var init_dnd_esm = __esm({
40630
42101
  });
40631
42102
  return client;
40632
42103
  };
42104
+ getParents = (ref2) => {
42105
+ var _a3;
42106
+ const contextId = ref2.getAttribute(`${prefix2}-droppable-context-id`);
42107
+ const parentDescriptors = [];
42108
+ if (!contextId)
42109
+ return [];
42110
+ let currentEl = ref2;
42111
+ while (currentEl) {
42112
+ currentEl = (_a3 = currentEl.parentElement) == null ? void 0 : _a3.closest(`[${prefix2}-droppable-context-id="${contextId}"]`);
42113
+ const id = currentEl == null ? void 0 : currentEl.getAttribute(`${prefix2}-droppable-id`);
42114
+ if (id) {
42115
+ parentDescriptors.push({
42116
+ id,
42117
+ mode: "standard",
42118
+ type: "DEFAULT"
42119
+ });
42120
+ }
42121
+ }
42122
+ parentDescriptors.reverse();
42123
+ return parentDescriptors;
42124
+ };
40633
42125
  getDimension = ({
40634
42126
  ref: ref2,
40635
42127
  descriptor,
@@ -40665,6 +42157,7 @@ var init_dnd_esm = __esm({
40665
42157
  shouldClipSubject
40666
42158
  };
40667
42159
  })();
42160
+ const parents = getParents(ref2);
40668
42161
  const dimension = getDroppableDimension({
40669
42162
  descriptor,
40670
42163
  isEnabled: !isDropDisabled,
@@ -40674,7 +42167,8 @@ var init_dnd_esm = __esm({
40674
42167
  client,
40675
42168
  page,
40676
42169
  closest: closest2,
40677
- transform
42170
+ transform,
42171
+ parents
40678
42172
  });
40679
42173
  return dimension;
40680
42174
  };
@@ -41145,6 +42639,1291 @@ var init_dnd_esm = __esm({
41145
42639
  }
41146
42640
  });
41147
42641
 
42642
+ // ../../node_modules/ua-parser-js/src/ua-parser.js
42643
+ var require_ua_parser = __commonJS({
42644
+ "../../node_modules/ua-parser-js/src/ua-parser.js"(exports, module2) {
42645
+ init_react_import();
42646
+ (function(window2, undefined2) {
42647
+ "use strict";
42648
+ var LIBVERSION = "1.0.37", EMPTY = "", UNKNOWN = "?", FUNC_TYPE = "function", UNDEF_TYPE = "undefined", OBJ_TYPE = "object", STR_TYPE = "string", MAJOR = "major", MODEL = "model", NAME = "name", TYPE2 = "type", VENDOR = "vendor", VERSION = "version", ARCHITECTURE = "architecture", CONSOLE = "console", MOBILE = "mobile", TABLET = "tablet", SMARTTV = "smarttv", WEARABLE = "wearable", EMBEDDED = "embedded", UA_MAX_LENGTH = 500;
42649
+ var AMAZON = "Amazon", APPLE = "Apple", ASUS = "ASUS", BLACKBERRY = "BlackBerry", BROWSER = "Browser", CHROME = "Chrome", EDGE = "Edge", FIREFOX = "Firefox", GOOGLE = "Google", HUAWEI = "Huawei", LG = "LG", MICROSOFT = "Microsoft", MOTOROLA = "Motorola", OPERA = "Opera", SAMSUNG = "Samsung", SHARP = "Sharp", SONY = "Sony", XIAOMI = "Xiaomi", ZEBRA = "Zebra", FACEBOOK = "Facebook", CHROMIUM_OS = "Chromium OS", MAC_OS = "Mac OS";
42650
+ var extend = function(regexes2, extensions) {
42651
+ var mergedRegexes = {};
42652
+ for (var i2 in regexes2) {
42653
+ if (extensions[i2] && extensions[i2].length % 2 === 0) {
42654
+ mergedRegexes[i2] = extensions[i2].concat(regexes2[i2]);
42655
+ } else {
42656
+ mergedRegexes[i2] = regexes2[i2];
42657
+ }
42658
+ }
42659
+ return mergedRegexes;
42660
+ }, enumerize = function(arr) {
42661
+ var enums = {};
42662
+ for (var i2 = 0; i2 < arr.length; i2++) {
42663
+ enums[arr[i2].toUpperCase()] = arr[i2];
42664
+ }
42665
+ return enums;
42666
+ }, has = function(str1, str2) {
42667
+ return typeof str1 === STR_TYPE ? lowerize(str2).indexOf(lowerize(str1)) !== -1 : false;
42668
+ }, lowerize = function(str) {
42669
+ return str.toLowerCase();
42670
+ }, majorize = function(version2) {
42671
+ return typeof version2 === STR_TYPE ? version2.replace(/[^\d\.]/g, EMPTY).split(".")[0] : undefined2;
42672
+ }, trim = function(str, len) {
42673
+ if (typeof str === STR_TYPE) {
42674
+ str = str.replace(/^\s\s*/, EMPTY);
42675
+ return typeof len === UNDEF_TYPE ? str : str.substring(0, UA_MAX_LENGTH);
42676
+ }
42677
+ };
42678
+ var rgxMapper = function(ua, arrays) {
42679
+ var i2 = 0, j, k, p, q, matches, match;
42680
+ while (i2 < arrays.length && !matches) {
42681
+ var regex = arrays[i2], props = arrays[i2 + 1];
42682
+ j = k = 0;
42683
+ while (j < regex.length && !matches) {
42684
+ if (!regex[j]) {
42685
+ break;
42686
+ }
42687
+ matches = regex[j++].exec(ua);
42688
+ if (!!matches) {
42689
+ for (p = 0; p < props.length; p++) {
42690
+ match = matches[++k];
42691
+ q = props[p];
42692
+ if (typeof q === OBJ_TYPE && q.length > 0) {
42693
+ if (q.length === 2) {
42694
+ if (typeof q[1] == FUNC_TYPE) {
42695
+ this[q[0]] = q[1].call(this, match);
42696
+ } else {
42697
+ this[q[0]] = q[1];
42698
+ }
42699
+ } else if (q.length === 3) {
42700
+ if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {
42701
+ this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined2;
42702
+ } else {
42703
+ this[q[0]] = match ? match.replace(q[1], q[2]) : undefined2;
42704
+ }
42705
+ } else if (q.length === 4) {
42706
+ this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined2;
42707
+ }
42708
+ } else {
42709
+ this[q] = match ? match : undefined2;
42710
+ }
42711
+ }
42712
+ }
42713
+ }
42714
+ i2 += 2;
42715
+ }
42716
+ }, strMapper = function(str, map) {
42717
+ for (var i2 in map) {
42718
+ if (typeof map[i2] === OBJ_TYPE && map[i2].length > 0) {
42719
+ for (var j = 0; j < map[i2].length; j++) {
42720
+ if (has(map[i2][j], str)) {
42721
+ return i2 === UNKNOWN ? undefined2 : i2;
42722
+ }
42723
+ }
42724
+ } else if (has(map[i2], str)) {
42725
+ return i2 === UNKNOWN ? undefined2 : i2;
42726
+ }
42727
+ }
42728
+ return str;
42729
+ };
42730
+ var oldSafariMap = {
42731
+ "1.0": "/8",
42732
+ "1.2": "/1",
42733
+ "1.3": "/3",
42734
+ "2.0": "/412",
42735
+ "2.0.2": "/416",
42736
+ "2.0.3": "/417",
42737
+ "2.0.4": "/419",
42738
+ "?": "/"
42739
+ }, windowsVersionMap = {
42740
+ "ME": "4.90",
42741
+ "NT 3.11": "NT3.51",
42742
+ "NT 4.0": "NT4.0",
42743
+ "2000": "NT 5.0",
42744
+ "XP": ["NT 5.1", "NT 5.2"],
42745
+ "Vista": "NT 6.0",
42746
+ "7": "NT 6.1",
42747
+ "8": "NT 6.2",
42748
+ "8.1": "NT 6.3",
42749
+ "10": ["NT 6.4", "NT 10.0"],
42750
+ "RT": "ARM"
42751
+ };
42752
+ var regexes = {
42753
+ browser: [
42754
+ [
42755
+ /\b(?:crmo|crios)\/([\w\.]+)/i
42756
+ // Chrome for Android/iOS
42757
+ ],
42758
+ [VERSION, [NAME, "Chrome"]],
42759
+ [
42760
+ /edg(?:e|ios|a)?\/([\w\.]+)/i
42761
+ // Microsoft Edge
42762
+ ],
42763
+ [VERSION, [NAME, "Edge"]],
42764
+ [
42765
+ // Presto based
42766
+ /(opera mini)\/([-\w\.]+)/i,
42767
+ // Opera Mini
42768
+ /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
42769
+ // Opera Mobi/Tablet
42770
+ /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
42771
+ // Opera
42772
+ ],
42773
+ [NAME, VERSION],
42774
+ [
42775
+ /opios[\/ ]+([\w\.]+)/i
42776
+ // Opera mini on iphone >= 8.0
42777
+ ],
42778
+ [VERSION, [NAME, OPERA + " Mini"]],
42779
+ [
42780
+ /\bopr\/([\w\.]+)/i
42781
+ // Opera Webkit
42782
+ ],
42783
+ [VERSION, [NAME, OPERA]],
42784
+ [
42785
+ // Mixed
42786
+ /\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i
42787
+ // Baidu
42788
+ ],
42789
+ [VERSION, [NAME, "Baidu"]],
42790
+ [
42791
+ /(kindle)\/([\w\.]+)/i,
42792
+ // Kindle
42793
+ /(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,
42794
+ // Lunascape/Maxthon/Netfront/Jasmine/Blazer
42795
+ // Trident based
42796
+ /(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i,
42797
+ // Avant/IEMobile/SlimBrowser
42798
+ /(?:ms|\()(ie) ([\w\.]+)/i,
42799
+ // Internet Explorer
42800
+ // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
42801
+ /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,
42802
+ // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ
42803
+ /(heytap|ovi)browser\/([\d\.]+)/i,
42804
+ // Heytap/Ovi
42805
+ /(weibo)__([\d\.]+)/i
42806
+ // Weibo
42807
+ ],
42808
+ [NAME, VERSION],
42809
+ [
42810
+ /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i
42811
+ // UCBrowser
42812
+ ],
42813
+ [VERSION, [NAME, "UC" + BROWSER]],
42814
+ [
42815
+ /microm.+\bqbcore\/([\w\.]+)/i,
42816
+ // WeChat Desktop for Windows Built-in Browser
42817
+ /\bqbcore\/([\w\.]+).+microm/i,
42818
+ /micromessenger\/([\w\.]+)/i
42819
+ // WeChat
42820
+ ],
42821
+ [VERSION, [NAME, "WeChat"]],
42822
+ [
42823
+ /konqueror\/([\w\.]+)/i
42824
+ // Konqueror
42825
+ ],
42826
+ [VERSION, [NAME, "Konqueror"]],
42827
+ [
42828
+ /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i
42829
+ // IE11
42830
+ ],
42831
+ [VERSION, [NAME, "IE"]],
42832
+ [
42833
+ /ya(?:search)?browser\/([\w\.]+)/i
42834
+ // Yandex
42835
+ ],
42836
+ [VERSION, [NAME, "Yandex"]],
42837
+ [
42838
+ /slbrowser\/([\w\.]+)/i
42839
+ // Smart Lenovo Browser
42840
+ ],
42841
+ [VERSION, [NAME, "Smart Lenovo " + BROWSER]],
42842
+ [
42843
+ /(avast|avg)\/([\w\.]+)/i
42844
+ // Avast/AVG Secure Browser
42845
+ ],
42846
+ [[NAME, /(.+)/, "$1 Secure " + BROWSER], VERSION],
42847
+ [
42848
+ /\bfocus\/([\w\.]+)/i
42849
+ // Firefox Focus
42850
+ ],
42851
+ [VERSION, [NAME, FIREFOX + " Focus"]],
42852
+ [
42853
+ /\bopt\/([\w\.]+)/i
42854
+ // Opera Touch
42855
+ ],
42856
+ [VERSION, [NAME, OPERA + " Touch"]],
42857
+ [
42858
+ /coc_coc\w+\/([\w\.]+)/i
42859
+ // Coc Coc Browser
42860
+ ],
42861
+ [VERSION, [NAME, "Coc Coc"]],
42862
+ [
42863
+ /dolfin\/([\w\.]+)/i
42864
+ // Dolphin
42865
+ ],
42866
+ [VERSION, [NAME, "Dolphin"]],
42867
+ [
42868
+ /coast\/([\w\.]+)/i
42869
+ // Opera Coast
42870
+ ],
42871
+ [VERSION, [NAME, OPERA + " Coast"]],
42872
+ [
42873
+ /miuibrowser\/([\w\.]+)/i
42874
+ // MIUI Browser
42875
+ ],
42876
+ [VERSION, [NAME, "MIUI " + BROWSER]],
42877
+ [
42878
+ /fxios\/([-\w\.]+)/i
42879
+ // Firefox for iOS
42880
+ ],
42881
+ [VERSION, [NAME, FIREFOX]],
42882
+ [
42883
+ /\bqihu|(qi?ho?o?|360)browser/i
42884
+ // 360
42885
+ ],
42886
+ [[NAME, "360 " + BROWSER]],
42887
+ [
42888
+ /(oculus|sailfish|huawei|vivo)browser\/([\w\.]+)/i
42889
+ ],
42890
+ [[NAME, /(.+)/, "$1 " + BROWSER], VERSION],
42891
+ [
42892
+ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser
42893
+ /samsungbrowser\/([\w\.]+)/i
42894
+ // Samsung Internet
42895
+ ],
42896
+ [VERSION, [NAME, SAMSUNG + " Internet"]],
42897
+ [
42898
+ /(comodo_dragon)\/([\w\.]+)/i
42899
+ // Comodo Dragon
42900
+ ],
42901
+ [[NAME, /_/g, " "], VERSION],
42902
+ [
42903
+ /metasr[\/ ]?([\d\.]+)/i
42904
+ // Sogou Explorer
42905
+ ],
42906
+ [VERSION, [NAME, "Sogou Explorer"]],
42907
+ [
42908
+ /(sogou)mo\w+\/([\d\.]+)/i
42909
+ // Sogou Mobile
42910
+ ],
42911
+ [[NAME, "Sogou Mobile"], VERSION],
42912
+ [
42913
+ /(electron)\/([\w\.]+) safari/i,
42914
+ // Electron-based App
42915
+ /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
42916
+ // Tesla
42917
+ /m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i
42918
+ // QQBrowser/2345 Browser
42919
+ ],
42920
+ [NAME, VERSION],
42921
+ [
42922
+ /(lbbrowser)/i,
42923
+ // LieBao Browser
42924
+ /\[(linkedin)app\]/i
42925
+ // LinkedIn App for iOS & Android
42926
+ ],
42927
+ [NAME],
42928
+ [
42929
+ // WebView
42930
+ /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
42931
+ // Facebook App for iOS & Android
42932
+ ],
42933
+ [[NAME, FACEBOOK], VERSION],
42934
+ [
42935
+ /(Klarna)\/([\w\.]+)/i,
42936
+ // Klarna Shopping Browser for iOS & Android
42937
+ /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
42938
+ // Kakao App
42939
+ /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
42940
+ // Naver InApp
42941
+ /safari (line)\/([\w\.]+)/i,
42942
+ // Line App for iOS
42943
+ /\b(line)\/([\w\.]+)\/iab/i,
42944
+ // Line App for Android
42945
+ /(alipay)client\/([\w\.]+)/i,
42946
+ // Alipay
42947
+ /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i
42948
+ // Chromium/Instagram/Snapchat
42949
+ ],
42950
+ [NAME, VERSION],
42951
+ [
42952
+ /\bgsa\/([\w\.]+) .*safari\//i
42953
+ // Google Search Appliance on iOS
42954
+ ],
42955
+ [VERSION, [NAME, "GSA"]],
42956
+ [
42957
+ /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i
42958
+ // TikTok
42959
+ ],
42960
+ [VERSION, [NAME, "TikTok"]],
42961
+ [
42962
+ /headlesschrome(?:\/([\w\.]+)| )/i
42963
+ // Chrome Headless
42964
+ ],
42965
+ [VERSION, [NAME, CHROME + " Headless"]],
42966
+ [
42967
+ / wv\).+(chrome)\/([\w\.]+)/i
42968
+ // Chrome WebView
42969
+ ],
42970
+ [[NAME, CHROME + " WebView"], VERSION],
42971
+ [
42972
+ /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
42973
+ // Android Browser
42974
+ ],
42975
+ [VERSION, [NAME, "Android " + BROWSER]],
42976
+ [
42977
+ /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i
42978
+ // Chrome/OmniWeb/Arora/Tizen/Nokia
42979
+ ],
42980
+ [NAME, VERSION],
42981
+ [
42982
+ /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i
42983
+ // Mobile Safari
42984
+ ],
42985
+ [VERSION, [NAME, "Mobile Safari"]],
42986
+ [
42987
+ /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i
42988
+ // Safari & Safari Mobile
42989
+ ],
42990
+ [VERSION, NAME],
42991
+ [
42992
+ /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i
42993
+ // Safari < 3.0
42994
+ ],
42995
+ [NAME, [VERSION, strMapper, oldSafariMap]],
42996
+ [
42997
+ /(webkit|khtml)\/([\w\.]+)/i
42998
+ ],
42999
+ [NAME, VERSION],
43000
+ [
43001
+ // Gecko based
43002
+ /(navigator|netscape\d?)\/([-\w\.]+)/i
43003
+ // Netscape
43004
+ ],
43005
+ [[NAME, "Netscape"], VERSION],
43006
+ [
43007
+ /mobile vr; rv:([\w\.]+)\).+firefox/i
43008
+ // Firefox Reality
43009
+ ],
43010
+ [VERSION, [NAME, FIREFOX + " Reality"]],
43011
+ [
43012
+ /ekiohf.+(flow)\/([\w\.]+)/i,
43013
+ // Flow
43014
+ /(swiftfox)/i,
43015
+ // Swiftfox
43016
+ /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,
43017
+ // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar
43018
+ /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
43019
+ // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
43020
+ /(firefox)\/([\w\.]+)/i,
43021
+ // Other Firefox-based
43022
+ /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
43023
+ // Mozilla
43024
+ // Other
43025
+ /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
43026
+ // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser
43027
+ /(links) \(([\w\.]+)/i,
43028
+ // Links
43029
+ /panasonic;(viera)/i
43030
+ // Panasonic Viera
43031
+ ],
43032
+ [NAME, VERSION],
43033
+ [
43034
+ /(cobalt)\/([\w\.]+)/i
43035
+ // Cobalt
43036
+ ],
43037
+ [NAME, [VERSION, /master.|lts./, ""]]
43038
+ ],
43039
+ cpu: [
43040
+ [
43041
+ /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i
43042
+ // AMD64 (x64)
43043
+ ],
43044
+ [[ARCHITECTURE, "amd64"]],
43045
+ [
43046
+ /(ia32(?=;))/i
43047
+ // IA32 (quicktime)
43048
+ ],
43049
+ [[ARCHITECTURE, lowerize]],
43050
+ [
43051
+ /((?:i[346]|x)86)[;\)]/i
43052
+ // IA32 (x86)
43053
+ ],
43054
+ [[ARCHITECTURE, "ia32"]],
43055
+ [
43056
+ /\b(aarch64|arm(v?8e?l?|_?64))\b/i
43057
+ // ARM64
43058
+ ],
43059
+ [[ARCHITECTURE, "arm64"]],
43060
+ [
43061
+ /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i
43062
+ // ARMHF
43063
+ ],
43064
+ [[ARCHITECTURE, "armhf"]],
43065
+ [
43066
+ // PocketPC mistakenly identified as PowerPC
43067
+ /windows (ce|mobile); ppc;/i
43068
+ ],
43069
+ [[ARCHITECTURE, "arm"]],
43070
+ [
43071
+ /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i
43072
+ // PowerPC
43073
+ ],
43074
+ [[ARCHITECTURE, /ower/, EMPTY, lowerize]],
43075
+ [
43076
+ /(sun4\w)[;\)]/i
43077
+ // SPARC
43078
+ ],
43079
+ [[ARCHITECTURE, "sparc"]],
43080
+ [
43081
+ /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
43082
+ // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
43083
+ ],
43084
+ [[ARCHITECTURE, lowerize]]
43085
+ ],
43086
+ device: [
43087
+ [
43088
+ //////////////////////////
43089
+ // MOBILES & TABLETS
43090
+ /////////////////////////
43091
+ // Samsung
43092
+ /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
43093
+ ],
43094
+ [MODEL, [VENDOR, SAMSUNG], [TYPE2, TABLET]],
43095
+ [
43096
+ /\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
43097
+ /samsung[- ]([-\w]+)/i,
43098
+ /sec-(sgh\w+)/i
43099
+ ],
43100
+ [MODEL, [VENDOR, SAMSUNG], [TYPE2, MOBILE]],
43101
+ [
43102
+ // Apple
43103
+ /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i
43104
+ // iPod/iPhone
43105
+ ],
43106
+ [MODEL, [VENDOR, APPLE], [TYPE2, MOBILE]],
43107
+ [
43108
+ /\((ipad);[-\w\),; ]+apple/i,
43109
+ // iPad
43110
+ /applecoremedia\/[\w\.]+ \((ipad)/i,
43111
+ /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
43112
+ ],
43113
+ [MODEL, [VENDOR, APPLE], [TYPE2, TABLET]],
43114
+ [
43115
+ /(macintosh);/i
43116
+ ],
43117
+ [MODEL, [VENDOR, APPLE]],
43118
+ [
43119
+ // Sharp
43120
+ /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
43121
+ ],
43122
+ [MODEL, [VENDOR, SHARP], [TYPE2, MOBILE]],
43123
+ [
43124
+ // Huawei
43125
+ /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
43126
+ ],
43127
+ [MODEL, [VENDOR, HUAWEI], [TYPE2, TABLET]],
43128
+ [
43129
+ /(?:huawei|honor)([-\w ]+)[;\)]/i,
43130
+ /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
43131
+ ],
43132
+ [MODEL, [VENDOR, HUAWEI], [TYPE2, MOBILE]],
43133
+ [
43134
+ // Xiaomi
43135
+ /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,
43136
+ // Xiaomi POCO
43137
+ /\b; (\w+) build\/hm\1/i,
43138
+ // Xiaomi Hongmi 'numeric' models
43139
+ /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
43140
+ // Xiaomi Hongmi
43141
+ /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
43142
+ // Xiaomi Redmi
43143
+ /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,
43144
+ // Xiaomi Redmi 'numeric' models
43145
+ /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i
43146
+ // Xiaomi Mi
43147
+ ],
43148
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE2, MOBILE]],
43149
+ [
43150
+ /oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,
43151
+ // Redmi Pad
43152
+ /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i
43153
+ // Mi Pad tablets
43154
+ ],
43155
+ [[MODEL, /_/g, " "], [VENDOR, XIAOMI], [TYPE2, TABLET]],
43156
+ [
43157
+ // OPPO
43158
+ /; (\w+) bui.+ oppo/i,
43159
+ /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
43160
+ ],
43161
+ [MODEL, [VENDOR, "OPPO"], [TYPE2, MOBILE]],
43162
+ [
43163
+ // Vivo
43164
+ /vivo (\w+)(?: bui|\))/i,
43165
+ /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
43166
+ ],
43167
+ [MODEL, [VENDOR, "Vivo"], [TYPE2, MOBILE]],
43168
+ [
43169
+ // Realme
43170
+ /\b(rmx[1-3]\d{3})(?: bui|;|\))/i
43171
+ ],
43172
+ [MODEL, [VENDOR, "Realme"], [TYPE2, MOBILE]],
43173
+ [
43174
+ // Motorola
43175
+ /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
43176
+ /\bmot(?:orola)?[- ](\w*)/i,
43177
+ /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
43178
+ ],
43179
+ [MODEL, [VENDOR, MOTOROLA], [TYPE2, MOBILE]],
43180
+ [
43181
+ /\b(mz60\d|xoom[2 ]{0,2}) build\//i
43182
+ ],
43183
+ [MODEL, [VENDOR, MOTOROLA], [TYPE2, TABLET]],
43184
+ [
43185
+ // LG
43186
+ /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
43187
+ ],
43188
+ [MODEL, [VENDOR, LG], [TYPE2, TABLET]],
43189
+ [
43190
+ /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
43191
+ /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
43192
+ /\blg-?([\d\w]+) bui/i
43193
+ ],
43194
+ [MODEL, [VENDOR, LG], [TYPE2, MOBILE]],
43195
+ [
43196
+ // Lenovo
43197
+ /(ideatab[-\w ]+)/i,
43198
+ /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
43199
+ ],
43200
+ [MODEL, [VENDOR, "Lenovo"], [TYPE2, TABLET]],
43201
+ [
43202
+ // Nokia
43203
+ /(?:maemo|nokia).*(n900|lumia \d+)/i,
43204
+ /nokia[-_ ]?([-\w\.]*)/i
43205
+ ],
43206
+ [[MODEL, /_/g, " "], [VENDOR, "Nokia"], [TYPE2, MOBILE]],
43207
+ [
43208
+ // Google
43209
+ /(pixel c)\b/i
43210
+ // Google Pixel C
43211
+ ],
43212
+ [MODEL, [VENDOR, GOOGLE], [TYPE2, TABLET]],
43213
+ [
43214
+ /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i
43215
+ // Google Pixel
43216
+ ],
43217
+ [MODEL, [VENDOR, GOOGLE], [TYPE2, MOBILE]],
43218
+ [
43219
+ // Sony
43220
+ /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
43221
+ ],
43222
+ [MODEL, [VENDOR, SONY], [TYPE2, MOBILE]],
43223
+ [
43224
+ /sony tablet [ps]/i,
43225
+ /\b(?:sony)?sgp\w+(?: bui|\))/i
43226
+ ],
43227
+ [[MODEL, "Xperia Tablet"], [VENDOR, SONY], [TYPE2, TABLET]],
43228
+ [
43229
+ // OnePlus
43230
+ / (kb2005|in20[12]5|be20[12][59])\b/i,
43231
+ /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
43232
+ ],
43233
+ [MODEL, [VENDOR, "OnePlus"], [TYPE2, MOBILE]],
43234
+ [
43235
+ // Amazon
43236
+ /(alexa)webm/i,
43237
+ /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,
43238
+ // Kindle Fire without Silk / Echo Show
43239
+ /(kf[a-z]+)( bui|\)).+silk\//i
43240
+ // Kindle Fire HD
43241
+ ],
43242
+ [MODEL, [VENDOR, AMAZON], [TYPE2, TABLET]],
43243
+ [
43244
+ /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
43245
+ // Fire Phone
43246
+ ],
43247
+ [[MODEL, /(.+)/g, "Fire Phone $1"], [VENDOR, AMAZON], [TYPE2, MOBILE]],
43248
+ [
43249
+ // BlackBerry
43250
+ /(playbook);[-\w\),; ]+(rim)/i
43251
+ // BlackBerry PlayBook
43252
+ ],
43253
+ [MODEL, VENDOR, [TYPE2, TABLET]],
43254
+ [
43255
+ /\b((?:bb[a-f]|st[hv])100-\d)/i,
43256
+ /\(bb10; (\w+)/i
43257
+ // BlackBerry 10
43258
+ ],
43259
+ [MODEL, [VENDOR, BLACKBERRY], [TYPE2, MOBILE]],
43260
+ [
43261
+ // Asus
43262
+ /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
43263
+ ],
43264
+ [MODEL, [VENDOR, ASUS], [TYPE2, TABLET]],
43265
+ [
43266
+ / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
43267
+ ],
43268
+ [MODEL, [VENDOR, ASUS], [TYPE2, MOBILE]],
43269
+ [
43270
+ // HTC
43271
+ /(nexus 9)/i
43272
+ // HTC Nexus 9
43273
+ ],
43274
+ [MODEL, [VENDOR, "HTC"], [TYPE2, TABLET]],
43275
+ [
43276
+ /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
43277
+ // HTC
43278
+ // ZTE
43279
+ /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
43280
+ /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
43281
+ // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
43282
+ ],
43283
+ [VENDOR, [MODEL, /_/g, " "], [TYPE2, MOBILE]],
43284
+ [
43285
+ // Acer
43286
+ /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
43287
+ ],
43288
+ [MODEL, [VENDOR, "Acer"], [TYPE2, TABLET]],
43289
+ [
43290
+ // Meizu
43291
+ /droid.+; (m[1-5] note) bui/i,
43292
+ /\bmz-([-\w]{2,})/i
43293
+ ],
43294
+ [MODEL, [VENDOR, "Meizu"], [TYPE2, MOBILE]],
43295
+ [
43296
+ // Ulefone
43297
+ /; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
43298
+ ],
43299
+ [MODEL, [VENDOR, "Ulefone"], [TYPE2, MOBILE]],
43300
+ [
43301
+ // MIXED
43302
+ /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,
43303
+ // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
43304
+ /(hp) ([\w ]+\w)/i,
43305
+ // HP iPAQ
43306
+ /(asus)-?(\w+)/i,
43307
+ // Asus
43308
+ /(microsoft); (lumia[\w ]+)/i,
43309
+ // Microsoft Lumia
43310
+ /(lenovo)[-_ ]?([-\w]+)/i,
43311
+ // Lenovo
43312
+ /(jolla)/i,
43313
+ // Jolla
43314
+ /(oppo) ?([\w ]+) bui/i
43315
+ // OPPO
43316
+ ],
43317
+ [VENDOR, MODEL, [TYPE2, MOBILE]],
43318
+ [
43319
+ /(kobo)\s(ereader|touch)/i,
43320
+ // Kobo
43321
+ /(archos) (gamepad2?)/i,
43322
+ // Archos
43323
+ /(hp).+(touchpad(?!.+tablet)|tablet)/i,
43324
+ // HP TouchPad
43325
+ /(kindle)\/([\w\.]+)/i,
43326
+ // Kindle
43327
+ /(nook)[\w ]+build\/(\w+)/i,
43328
+ // Nook
43329
+ /(dell) (strea[kpr\d ]*[\dko])/i,
43330
+ // Dell Streak
43331
+ /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
43332
+ // Le Pan Tablets
43333
+ /(trinity)[- ]*(t\d{3}) bui/i,
43334
+ // Trinity Tablets
43335
+ /(gigaset)[- ]+(q\w{1,9}) bui/i,
43336
+ // Gigaset Tablets
43337
+ /(vodafone) ([\w ]+)(?:\)| bui)/i
43338
+ // Vodafone
43339
+ ],
43340
+ [VENDOR, MODEL, [TYPE2, TABLET]],
43341
+ [
43342
+ /(surface duo)/i
43343
+ // Surface Duo
43344
+ ],
43345
+ [MODEL, [VENDOR, MICROSOFT], [TYPE2, TABLET]],
43346
+ [
43347
+ /droid [\d\.]+; (fp\du?)(?: b|\))/i
43348
+ // Fairphone
43349
+ ],
43350
+ [MODEL, [VENDOR, "Fairphone"], [TYPE2, MOBILE]],
43351
+ [
43352
+ /(u304aa)/i
43353
+ // AT&T
43354
+ ],
43355
+ [MODEL, [VENDOR, "AT&T"], [TYPE2, MOBILE]],
43356
+ [
43357
+ /\bsie-(\w*)/i
43358
+ // Siemens
43359
+ ],
43360
+ [MODEL, [VENDOR, "Siemens"], [TYPE2, MOBILE]],
43361
+ [
43362
+ /\b(rct\w+) b/i
43363
+ // RCA Tablets
43364
+ ],
43365
+ [MODEL, [VENDOR, "RCA"], [TYPE2, TABLET]],
43366
+ [
43367
+ /\b(venue[\d ]{2,7}) b/i
43368
+ // Dell Venue Tablets
43369
+ ],
43370
+ [MODEL, [VENDOR, "Dell"], [TYPE2, TABLET]],
43371
+ [
43372
+ /\b(q(?:mv|ta)\w+) b/i
43373
+ // Verizon Tablet
43374
+ ],
43375
+ [MODEL, [VENDOR, "Verizon"], [TYPE2, TABLET]],
43376
+ [
43377
+ /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i
43378
+ // Barnes & Noble Tablet
43379
+ ],
43380
+ [MODEL, [VENDOR, "Barnes & Noble"], [TYPE2, TABLET]],
43381
+ [
43382
+ /\b(tm\d{3}\w+) b/i
43383
+ ],
43384
+ [MODEL, [VENDOR, "NuVision"], [TYPE2, TABLET]],
43385
+ [
43386
+ /\b(k88) b/i
43387
+ // ZTE K Series Tablet
43388
+ ],
43389
+ [MODEL, [VENDOR, "ZTE"], [TYPE2, TABLET]],
43390
+ [
43391
+ /\b(nx\d{3}j) b/i
43392
+ // ZTE Nubia
43393
+ ],
43394
+ [MODEL, [VENDOR, "ZTE"], [TYPE2, MOBILE]],
43395
+ [
43396
+ /\b(gen\d{3}) b.+49h/i
43397
+ // Swiss GEN Mobile
43398
+ ],
43399
+ [MODEL, [VENDOR, "Swiss"], [TYPE2, MOBILE]],
43400
+ [
43401
+ /\b(zur\d{3}) b/i
43402
+ // Swiss ZUR Tablet
43403
+ ],
43404
+ [MODEL, [VENDOR, "Swiss"], [TYPE2, TABLET]],
43405
+ [
43406
+ /\b((zeki)?tb.*\b) b/i
43407
+ // Zeki Tablets
43408
+ ],
43409
+ [MODEL, [VENDOR, "Zeki"], [TYPE2, TABLET]],
43410
+ [
43411
+ /\b([yr]\d{2}) b/i,
43412
+ /\b(dragon[- ]+touch |dt)(\w{5}) b/i
43413
+ // Dragon Touch Tablet
43414
+ ],
43415
+ [[VENDOR, "Dragon Touch"], MODEL, [TYPE2, TABLET]],
43416
+ [
43417
+ /\b(ns-?\w{0,9}) b/i
43418
+ // Insignia Tablets
43419
+ ],
43420
+ [MODEL, [VENDOR, "Insignia"], [TYPE2, TABLET]],
43421
+ [
43422
+ /\b((nxa|next)-?\w{0,9}) b/i
43423
+ // NextBook Tablets
43424
+ ],
43425
+ [MODEL, [VENDOR, "NextBook"], [TYPE2, TABLET]],
43426
+ [
43427
+ /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i
43428
+ // Voice Xtreme Phones
43429
+ ],
43430
+ [[VENDOR, "Voice"], MODEL, [TYPE2, MOBILE]],
43431
+ [
43432
+ /\b(lvtel\-)?(v1[12]) b/i
43433
+ // LvTel Phones
43434
+ ],
43435
+ [[VENDOR, "LvTel"], MODEL, [TYPE2, MOBILE]],
43436
+ [
43437
+ /\b(ph-1) /i
43438
+ // Essential PH-1
43439
+ ],
43440
+ [MODEL, [VENDOR, "Essential"], [TYPE2, MOBILE]],
43441
+ [
43442
+ /\b(v(100md|700na|7011|917g).*\b) b/i
43443
+ // Envizen Tablets
43444
+ ],
43445
+ [MODEL, [VENDOR, "Envizen"], [TYPE2, TABLET]],
43446
+ [
43447
+ /\b(trio[-\w\. ]+) b/i
43448
+ // MachSpeed Tablets
43449
+ ],
43450
+ [MODEL, [VENDOR, "MachSpeed"], [TYPE2, TABLET]],
43451
+ [
43452
+ /\btu_(1491) b/i
43453
+ // Rotor Tablets
43454
+ ],
43455
+ [MODEL, [VENDOR, "Rotor"], [TYPE2, TABLET]],
43456
+ [
43457
+ /(shield[\w ]+) b/i
43458
+ // Nvidia Shield Tablets
43459
+ ],
43460
+ [MODEL, [VENDOR, "Nvidia"], [TYPE2, TABLET]],
43461
+ [
43462
+ /(sprint) (\w+)/i
43463
+ // Sprint Phones
43464
+ ],
43465
+ [VENDOR, MODEL, [TYPE2, MOBILE]],
43466
+ [
43467
+ /(kin\.[onetw]{3})/i
43468
+ // Microsoft Kin
43469
+ ],
43470
+ [[MODEL, /\./g, " "], [VENDOR, MICROSOFT], [TYPE2, MOBILE]],
43471
+ [
43472
+ /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
43473
+ // Zebra
43474
+ ],
43475
+ [MODEL, [VENDOR, ZEBRA], [TYPE2, TABLET]],
43476
+ [
43477
+ /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
43478
+ ],
43479
+ [MODEL, [VENDOR, ZEBRA], [TYPE2, MOBILE]],
43480
+ [
43481
+ ///////////////////
43482
+ // SMARTTVS
43483
+ ///////////////////
43484
+ /smart-tv.+(samsung)/i
43485
+ // Samsung
43486
+ ],
43487
+ [VENDOR, [TYPE2, SMARTTV]],
43488
+ [
43489
+ /hbbtv.+maple;(\d+)/i
43490
+ ],
43491
+ [[MODEL, /^/, "SmartTV"], [VENDOR, SAMSUNG], [TYPE2, SMARTTV]],
43492
+ [
43493
+ /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i
43494
+ // LG SmartTV
43495
+ ],
43496
+ [[VENDOR, LG], [TYPE2, SMARTTV]],
43497
+ [
43498
+ /(apple) ?tv/i
43499
+ // Apple TV
43500
+ ],
43501
+ [VENDOR, [MODEL, APPLE + " TV"], [TYPE2, SMARTTV]],
43502
+ [
43503
+ /crkey/i
43504
+ // Google Chromecast
43505
+ ],
43506
+ [[MODEL, CHROME + "cast"], [VENDOR, GOOGLE], [TYPE2, SMARTTV]],
43507
+ [
43508
+ /droid.+aft(\w+)( bui|\))/i
43509
+ // Fire TV
43510
+ ],
43511
+ [MODEL, [VENDOR, AMAZON], [TYPE2, SMARTTV]],
43512
+ [
43513
+ /\(dtv[\);].+(aquos)/i,
43514
+ /(aquos-tv[\w ]+)\)/i
43515
+ // Sharp
43516
+ ],
43517
+ [MODEL, [VENDOR, SHARP], [TYPE2, SMARTTV]],
43518
+ [
43519
+ /(bravia[\w ]+)( bui|\))/i
43520
+ // Sony
43521
+ ],
43522
+ [MODEL, [VENDOR, SONY], [TYPE2, SMARTTV]],
43523
+ [
43524
+ /(mitv-\w{5}) bui/i
43525
+ // Xiaomi
43526
+ ],
43527
+ [MODEL, [VENDOR, XIAOMI], [TYPE2, SMARTTV]],
43528
+ [
43529
+ /Hbbtv.*(technisat) (.*);/i
43530
+ // TechniSAT
43531
+ ],
43532
+ [VENDOR, MODEL, [TYPE2, SMARTTV]],
43533
+ [
43534
+ /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,
43535
+ // Roku
43536
+ /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
43537
+ // HbbTV devices
43538
+ ],
43539
+ [[VENDOR, trim], [MODEL, trim], [TYPE2, SMARTTV]],
43540
+ [
43541
+ /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i
43542
+ // SmartTV from Unidentified Vendors
43543
+ ],
43544
+ [[TYPE2, SMARTTV]],
43545
+ [
43546
+ ///////////////////
43547
+ // CONSOLES
43548
+ ///////////////////
43549
+ /(ouya)/i,
43550
+ // Ouya
43551
+ /(nintendo) ([wids3utch]+)/i
43552
+ // Nintendo
43553
+ ],
43554
+ [VENDOR, MODEL, [TYPE2, CONSOLE]],
43555
+ [
43556
+ /droid.+; (shield) bui/i
43557
+ // Nvidia
43558
+ ],
43559
+ [MODEL, [VENDOR, "Nvidia"], [TYPE2, CONSOLE]],
43560
+ [
43561
+ /(playstation [345portablevi]+)/i
43562
+ // Playstation
43563
+ ],
43564
+ [MODEL, [VENDOR, SONY], [TYPE2, CONSOLE]],
43565
+ [
43566
+ /\b(xbox(?: one)?(?!; xbox))[\); ]/i
43567
+ // Microsoft Xbox
43568
+ ],
43569
+ [MODEL, [VENDOR, MICROSOFT], [TYPE2, CONSOLE]],
43570
+ [
43571
+ ///////////////////
43572
+ // WEARABLES
43573
+ ///////////////////
43574
+ /((pebble))app/i
43575
+ // Pebble
43576
+ ],
43577
+ [VENDOR, MODEL, [TYPE2, WEARABLE]],
43578
+ [
43579
+ /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
43580
+ // Apple Watch
43581
+ ],
43582
+ [MODEL, [VENDOR, APPLE], [TYPE2, WEARABLE]],
43583
+ [
43584
+ /droid.+; (glass) \d/i
43585
+ // Google Glass
43586
+ ],
43587
+ [MODEL, [VENDOR, GOOGLE], [TYPE2, WEARABLE]],
43588
+ [
43589
+ /droid.+; (wt63?0{2,3})\)/i
43590
+ ],
43591
+ [MODEL, [VENDOR, ZEBRA], [TYPE2, WEARABLE]],
43592
+ [
43593
+ /(quest( 2| pro)?)/i
43594
+ // Oculus Quest
43595
+ ],
43596
+ [MODEL, [VENDOR, FACEBOOK], [TYPE2, WEARABLE]],
43597
+ [
43598
+ ///////////////////
43599
+ // EMBEDDED
43600
+ ///////////////////
43601
+ /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
43602
+ // Tesla
43603
+ ],
43604
+ [VENDOR, [TYPE2, EMBEDDED]],
43605
+ [
43606
+ /(aeobc)\b/i
43607
+ // Echo Dot
43608
+ ],
43609
+ [MODEL, [VENDOR, AMAZON], [TYPE2, EMBEDDED]],
43610
+ [
43611
+ ////////////////////
43612
+ // MIXED (GENERIC)
43613
+ ///////////////////
43614
+ /droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i
43615
+ // Android Phones from Unidentified Vendors
43616
+ ],
43617
+ [MODEL, [TYPE2, MOBILE]],
43618
+ [
43619
+ /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i
43620
+ // Android Tablets from Unidentified Vendors
43621
+ ],
43622
+ [MODEL, [TYPE2, TABLET]],
43623
+ [
43624
+ /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i
43625
+ // Unidentifiable Tablet
43626
+ ],
43627
+ [[TYPE2, TABLET]],
43628
+ [
43629
+ /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
43630
+ // Unidentifiable Mobile
43631
+ ],
43632
+ [[TYPE2, MOBILE]],
43633
+ [
43634
+ /(android[-\w\. ]{0,9});.+buil/i
43635
+ // Generic Android Device
43636
+ ],
43637
+ [MODEL, [VENDOR, "Generic"]]
43638
+ ],
43639
+ engine: [
43640
+ [
43641
+ /windows.+ edge\/([\w\.]+)/i
43642
+ // EdgeHTML
43643
+ ],
43644
+ [VERSION, [NAME, EDGE + "HTML"]],
43645
+ [
43646
+ /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i
43647
+ // Blink
43648
+ ],
43649
+ [VERSION, [NAME, "Blink"]],
43650
+ [
43651
+ /(presto)\/([\w\.]+)/i,
43652
+ // Presto
43653
+ /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,
43654
+ // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
43655
+ /ekioh(flow)\/([\w\.]+)/i,
43656
+ // Flow
43657
+ /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
43658
+ // KHTML/Tasman/Links
43659
+ /(icab)[\/ ]([23]\.[\d\.]+)/i,
43660
+ // iCab
43661
+ /\b(libweb)/i
43662
+ ],
43663
+ [NAME, VERSION],
43664
+ [
43665
+ /rv\:([\w\.]{1,9})\b.+(gecko)/i
43666
+ // Gecko
43667
+ ],
43668
+ [VERSION, NAME]
43669
+ ],
43670
+ os: [
43671
+ [
43672
+ // Windows
43673
+ /microsoft (windows) (vista|xp)/i
43674
+ // Windows (iTunes)
43675
+ ],
43676
+ [NAME, VERSION],
43677
+ [
43678
+ /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i
43679
+ // Windows Phone
43680
+ ],
43681
+ [NAME, [VERSION, strMapper, windowsVersionMap]],
43682
+ [
43683
+ /windows nt 6\.2; (arm)/i,
43684
+ // Windows RT
43685
+ /windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,
43686
+ /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i
43687
+ ],
43688
+ [[VERSION, strMapper, windowsVersionMap], [NAME, "Windows"]],
43689
+ [
43690
+ // iOS/macOS
43691
+ /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,
43692
+ // iOS
43693
+ /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,
43694
+ /cfnetwork\/.+darwin/i
43695
+ ],
43696
+ [[VERSION, /_/g, "."], [NAME, "iOS"]],
43697
+ [
43698
+ /(mac os x) ?([\w\. ]*)/i,
43699
+ /(macintosh|mac_powerpc\b)(?!.+haiku)/i
43700
+ // Mac OS
43701
+ ],
43702
+ [[NAME, MAC_OS], [VERSION, /_/g, "."]],
43703
+ [
43704
+ // Mobile OSes
43705
+ /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i
43706
+ // Android-x86/HarmonyOS
43707
+ ],
43708
+ [VERSION, NAME],
43709
+ [
43710
+ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
43711
+ /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
43712
+ /(blackberry)\w*\/([\w\.]*)/i,
43713
+ // Blackberry
43714
+ /(tizen|kaios)[\/ ]([\w\.]+)/i,
43715
+ // Tizen/KaiOS
43716
+ /\((series40);/i
43717
+ // Series 40
43718
+ ],
43719
+ [NAME, VERSION],
43720
+ [
43721
+ /\(bb(10);/i
43722
+ // BlackBerry 10
43723
+ ],
43724
+ [VERSION, [NAME, BLACKBERRY]],
43725
+ [
43726
+ /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i
43727
+ // Symbian
43728
+ ],
43729
+ [VERSION, [NAME, "Symbian"]],
43730
+ [
43731
+ /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i
43732
+ // Firefox OS
43733
+ ],
43734
+ [VERSION, [NAME, FIREFOX + " OS"]],
43735
+ [
43736
+ /web0s;.+rt(tv)/i,
43737
+ /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i
43738
+ // WebOS
43739
+ ],
43740
+ [VERSION, [NAME, "webOS"]],
43741
+ [
43742
+ /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i
43743
+ // watchOS
43744
+ ],
43745
+ [VERSION, [NAME, "watchOS"]],
43746
+ [
43747
+ // Google Chromecast
43748
+ /crkey\/([\d\.]+)/i
43749
+ // Google Chromecast
43750
+ ],
43751
+ [VERSION, [NAME, CHROME + "cast"]],
43752
+ [
43753
+ /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i
43754
+ // Chromium OS
43755
+ ],
43756
+ [[NAME, CHROMIUM_OS], VERSION],
43757
+ [
43758
+ // Smart TVs
43759
+ /panasonic;(viera)/i,
43760
+ // Panasonic Viera
43761
+ /(netrange)mmh/i,
43762
+ // Netrange
43763
+ /(nettv)\/(\d+\.[\w\.]+)/i,
43764
+ // NetTV
43765
+ // Console
43766
+ /(nintendo|playstation) ([wids345portablevuch]+)/i,
43767
+ // Nintendo/Playstation
43768
+ /(xbox); +xbox ([^\);]+)/i,
43769
+ // Microsoft Xbox (360, One, X, S, Series X, Series S)
43770
+ // Other
43771
+ /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
43772
+ // Joli/Palm
43773
+ /(mint)[\/\(\) ]?(\w*)/i,
43774
+ // Mint
43775
+ /(mageia|vectorlinux)[; ]/i,
43776
+ // Mageia/VectorLinux
43777
+ /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
43778
+ // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
43779
+ /(hurd|linux) ?([\w\.]*)/i,
43780
+ // Hurd/Linux
43781
+ /(gnu) ?([\w\.]*)/i,
43782
+ // GNU
43783
+ /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
43784
+ // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
43785
+ /(haiku) (\w+)/i
43786
+ // Haiku
43787
+ ],
43788
+ [NAME, VERSION],
43789
+ [
43790
+ /(sunos) ?([\w\.\d]*)/i
43791
+ // Solaris
43792
+ ],
43793
+ [[NAME, "Solaris"], VERSION],
43794
+ [
43795
+ /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
43796
+ // Solaris
43797
+ /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
43798
+ // AIX
43799
+ /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
43800
+ // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
43801
+ /(unix) ?([\w\.]*)/i
43802
+ // UNIX
43803
+ ],
43804
+ [NAME, VERSION]
43805
+ ]
43806
+ };
43807
+ var UAParser2 = function(ua, extensions) {
43808
+ if (typeof ua === OBJ_TYPE) {
43809
+ extensions = ua;
43810
+ ua = undefined2;
43811
+ }
43812
+ if (!(this instanceof UAParser2)) {
43813
+ return new UAParser2(ua, extensions).getResult();
43814
+ }
43815
+ var _navigator = typeof window2 !== UNDEF_TYPE && window2.navigator ? window2.navigator : undefined2;
43816
+ var _ua = ua || (_navigator && _navigator.userAgent ? _navigator.userAgent : EMPTY);
43817
+ var _uach = _navigator && _navigator.userAgentData ? _navigator.userAgentData : undefined2;
43818
+ var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
43819
+ var _isSelfNav = _navigator && _navigator.userAgent == _ua;
43820
+ this.getBrowser = function() {
43821
+ var _browser = {};
43822
+ _browser[NAME] = undefined2;
43823
+ _browser[VERSION] = undefined2;
43824
+ rgxMapper.call(_browser, _ua, _rgxmap.browser);
43825
+ _browser[MAJOR] = majorize(_browser[VERSION]);
43826
+ if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {
43827
+ _browser[NAME] = "Brave";
43828
+ }
43829
+ return _browser;
43830
+ };
43831
+ this.getCPU = function() {
43832
+ var _cpu = {};
43833
+ _cpu[ARCHITECTURE] = undefined2;
43834
+ rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
43835
+ return _cpu;
43836
+ };
43837
+ this.getDevice = function() {
43838
+ var _device = {};
43839
+ _device[VENDOR] = undefined2;
43840
+ _device[MODEL] = undefined2;
43841
+ _device[TYPE2] = undefined2;
43842
+ rgxMapper.call(_device, _ua, _rgxmap.device);
43843
+ if (_isSelfNav && !_device[TYPE2] && _uach && _uach.mobile) {
43844
+ _device[TYPE2] = MOBILE;
43845
+ }
43846
+ if (_isSelfNav && _device[MODEL] == "Macintosh" && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
43847
+ _device[MODEL] = "iPad";
43848
+ _device[TYPE2] = TABLET;
43849
+ }
43850
+ return _device;
43851
+ };
43852
+ this.getEngine = function() {
43853
+ var _engine = {};
43854
+ _engine[NAME] = undefined2;
43855
+ _engine[VERSION] = undefined2;
43856
+ rgxMapper.call(_engine, _ua, _rgxmap.engine);
43857
+ return _engine;
43858
+ };
43859
+ this.getOS = function() {
43860
+ var _os = {};
43861
+ _os[NAME] = undefined2;
43862
+ _os[VERSION] = undefined2;
43863
+ rgxMapper.call(_os, _ua, _rgxmap.os);
43864
+ if (_isSelfNav && !_os[NAME] && _uach && _uach.platform != "Unknown") {
43865
+ _os[NAME] = _uach.platform.replace(/chrome os/i, CHROMIUM_OS).replace(/macos/i, MAC_OS);
43866
+ }
43867
+ return _os;
43868
+ };
43869
+ this.getResult = function() {
43870
+ return {
43871
+ ua: this.getUA(),
43872
+ browser: this.getBrowser(),
43873
+ engine: this.getEngine(),
43874
+ os: this.getOS(),
43875
+ device: this.getDevice(),
43876
+ cpu: this.getCPU()
43877
+ };
43878
+ };
43879
+ this.getUA = function() {
43880
+ return _ua;
43881
+ };
43882
+ this.setUA = function(ua2) {
43883
+ _ua = typeof ua2 === STR_TYPE && ua2.length > UA_MAX_LENGTH ? trim(ua2, UA_MAX_LENGTH) : ua2;
43884
+ return this;
43885
+ };
43886
+ this.setUA(_ua);
43887
+ return this;
43888
+ };
43889
+ UAParser2.VERSION = LIBVERSION;
43890
+ UAParser2.BROWSER = enumerize([NAME, VERSION, MAJOR]);
43891
+ UAParser2.CPU = enumerize([ARCHITECTURE]);
43892
+ UAParser2.DEVICE = enumerize([MODEL, VENDOR, TYPE2, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
43893
+ UAParser2.ENGINE = UAParser2.OS = enumerize([NAME, VERSION]);
43894
+ if (typeof exports !== UNDEF_TYPE) {
43895
+ if (typeof module2 !== UNDEF_TYPE && module2.exports) {
43896
+ exports = module2.exports = UAParser2;
43897
+ }
43898
+ exports.UAParser = UAParser2;
43899
+ } else {
43900
+ if (typeof define === FUNC_TYPE && define.amd) {
43901
+ define(function() {
43902
+ return UAParser2;
43903
+ });
43904
+ } else if (typeof window2 !== UNDEF_TYPE) {
43905
+ window2.UAParser = UAParser2;
43906
+ }
43907
+ }
43908
+ var $ = typeof window2 !== UNDEF_TYPE && (window2.jQuery || window2.Zepto);
43909
+ if ($ && !$.ua) {
43910
+ var parser = new UAParser2();
43911
+ $.ua = parser.getResult();
43912
+ $.ua.get = function() {
43913
+ return parser.getUA();
43914
+ };
43915
+ $.ua.set = function(ua) {
43916
+ parser.setUA(ua);
43917
+ var result = parser.getResult();
43918
+ for (var prop in result) {
43919
+ $.ua[prop] = result[prop];
43920
+ }
43921
+ };
43922
+ }
43923
+ })(typeof window === "object" ? window : exports);
43924
+ }
43925
+ });
43926
+
41148
43927
  // ../../node_modules/use-debounce/dist/index.module.js
41149
43928
  var index_module_exports = {};
41150
43929
  __export(index_module_exports, {
@@ -43089,6 +45868,26 @@ var require_dist = __commonJS({
43089
45868
  mod
43090
45869
  ));
43091
45870
  var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
45871
+ var __async2 = (__this, __arguments, generator) => {
45872
+ return new Promise((resolve, reject) => {
45873
+ var fulfilled = (value) => {
45874
+ try {
45875
+ step(generator.next(value));
45876
+ } catch (e2) {
45877
+ reject(e2);
45878
+ }
45879
+ };
45880
+ var rejected = (value) => {
45881
+ try {
45882
+ step(generator.throw(value));
45883
+ } catch (e2) {
45884
+ reject(e2);
45885
+ }
45886
+ };
45887
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
45888
+ step((generator = generator.apply(__this, __arguments)).next());
45889
+ });
45890
+ };
43092
45891
  var auto_frame_component_exports = {};
43093
45892
  __export2(auto_frame_component_exports, {
43094
45893
  default: () => AutoFrameComponent_default
@@ -43107,6 +45906,23 @@ var require_dist = __commonJS({
43107
45906
  });
43108
45907
  return collected;
43109
45908
  };
45909
+ var getStyleSheet = (el) => {
45910
+ return Array.from(document.styleSheets).find((ss) => ss.ownerNode === el);
45911
+ };
45912
+ var getStyles2 = (styleSheet) => {
45913
+ if (styleSheet) {
45914
+ try {
45915
+ return [...styleSheet.cssRules].map((rule) => rule.cssText).join("");
45916
+ } catch (e2) {
45917
+ console.warn(
45918
+ "Access to stylesheet %s is denied. Ignoring\u2026",
45919
+ styleSheet.href
45920
+ );
45921
+ }
45922
+ }
45923
+ return "";
45924
+ };
45925
+ var defer = (fn) => setTimeout(fn, 0);
43110
45926
  var CopyHostStyles = ({
43111
45927
  children,
43112
45928
  debug = false,
@@ -43121,7 +45937,7 @@ var require_dist = __commonJS({
43121
45937
  const elements = [];
43122
45938
  const lookupEl = (el) => elements.findIndex((elementMap) => elementMap.original === el);
43123
45939
  const addEl = (el, onLoad = () => {
43124
- }) => {
45940
+ }) => __async2(void 0, null, function* () {
43125
45941
  const index = lookupEl(el);
43126
45942
  if (index > -1) {
43127
45943
  if (debug)
@@ -43132,10 +45948,34 @@ var require_dist = __commonJS({
43132
45948
  onLoad();
43133
45949
  return;
43134
45950
  }
43135
- const elHash = (0, import_object_hash.default)(el.outerHTML);
45951
+ let mirror;
45952
+ if (el.nodeName === "LINK") {
45953
+ mirror = document.createElement("style");
45954
+ mirror.type = "text/css";
45955
+ let styleSheet = getStyleSheet(el);
45956
+ if (!styleSheet) {
45957
+ yield new Promise((resolve) => el.onload = resolve);
45958
+ styleSheet = getStyleSheet(el);
45959
+ }
45960
+ const styles = getStyles2(styleSheet);
45961
+ if (!styles) {
45962
+ if (debug) {
45963
+ console.warn(
45964
+ `Tried to load styles for link element, but couldn't find them. Skipping...`
45965
+ );
45966
+ }
45967
+ onLoad();
45968
+ return;
45969
+ }
45970
+ mirror.innerHTML = styles;
45971
+ mirror.setAttribute("data-href", el.getAttribute("href"));
45972
+ } else {
45973
+ mirror = el.cloneNode(true);
45974
+ }
45975
+ const elHash = (0, import_object_hash.default)(mirror.outerHTML);
43136
45976
  const existingHashes = collectStyles(doc).map(
43137
- (existingStyle) => (0, import_object_hash.default)(existingStyle.outerHTML)
43138
- );
45977
+ (existingStyle) => existingStyle !== mirror && (0, import_object_hash.default)(existingStyle.outerHTML)
45978
+ ).filter(Boolean);
43139
45979
  if (existingHashes.indexOf(elHash) > -1) {
43140
45980
  if (debug)
43141
45981
  console.log(
@@ -43144,13 +45984,12 @@ var require_dist = __commonJS({
43144
45984
  onLoad();
43145
45985
  return;
43146
45986
  }
43147
- const mirror = el.cloneNode(true);
43148
45987
  mirror.onload = onLoad;
43149
45988
  doc.head.append(mirror);
43150
45989
  elements.push({ original: el, mirror });
43151
45990
  if (debug)
43152
45991
  console.log(`Added style node ${el.outerHTML}`);
43153
- };
45992
+ });
43154
45993
  const removeEl = (el) => {
43155
45994
  const index = lookupEl(el);
43156
45995
  if (index === -1) {
@@ -43171,7 +46010,7 @@ var require_dist = __commonJS({
43171
46010
  if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
43172
46011
  const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
43173
46012
  if (el && el.matches(styleSelector)) {
43174
- addEl(el);
46013
+ defer(() => addEl(el));
43175
46014
  }
43176
46015
  }
43177
46016
  });
@@ -43179,7 +46018,7 @@ var require_dist = __commonJS({
43179
46018
  if (node.nodeType === Node.TEXT_NODE || node.nodeType === Node.ELEMENT_NODE) {
43180
46019
  const el = node.nodeType === Node.TEXT_NODE ? node.parentElement : node;
43181
46020
  if (el && el.matches(styleSelector)) {
43182
- removeEl(el);
46021
+ defer(() => removeEl(el));
43183
46022
  }
43184
46023
  }
43185
46024
  });
@@ -43190,12 +46029,14 @@ var require_dist = __commonJS({
43190
46029
  const collectedStyles = collectStyles(parentDocument);
43191
46030
  let mountedCounter = 0;
43192
46031
  collectedStyles.forEach((styleNode) => {
43193
- addEl(styleNode, () => {
43194
- mountedCounter += 1;
43195
- if (mountedCounter === collectedStyles.length) {
43196
- onStylesLoaded();
43197
- }
43198
- });
46032
+ defer(
46033
+ () => addEl(styleNode, () => {
46034
+ mountedCounter += 1;
46035
+ if (mountedCounter === collectedStyles.length) {
46036
+ onStylesLoaded();
46037
+ }
46038
+ })
46039
+ );
43199
46040
  });
43200
46041
  observer.observe(parentDocument.head, { childList: true, subtree: true });
43201
46042
  return () => {
@@ -43204,10 +46045,14 @@ var require_dist = __commonJS({
43204
46045
  }, []);
43205
46046
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, { children });
43206
46047
  };
43207
- var AutoFrameComponent_default = import_react22.default.forwardRef(function(_a, ref2) {
43208
- var _b = _a, { children, debug, onStylesLoaded } = _b, props = __objRest2(_b, ["children", "debug", "onStylesLoaded"]);
43209
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_react_frame_component.default, __spreadProps2(__spreadValues2({}, props), { ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
43210
- });
46048
+ var AutoFrameComponent = import_react22.default.forwardRef(
46049
+ function(_a3, ref2) {
46050
+ var _b = _a3, { children, debug, onStylesLoaded } = _b, props = __objRest2(_b, ["children", "debug", "onStylesLoaded"]);
46051
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_react_frame_component.default, __spreadProps2(__spreadValues2({}, props), { ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CopyHostStyles, { debug, onStylesLoaded, children }) }));
46052
+ }
46053
+ );
46054
+ AutoFrameComponent.displayName = "AutoFrameComponent";
46055
+ var AutoFrameComponent_default = AutoFrameComponent;
43211
46056
  }
43212
46057
  });
43213
46058
 
@@ -43746,7 +46591,7 @@ var require_dist2 = __commonJS({
43746
46591
  mod
43747
46592
  ));
43748
46593
  var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
43749
- var __async = (__this, __arguments, generator) => {
46594
+ var __async2 = (__this, __arguments, generator) => {
43750
46595
  return new Promise((resolve, reject) => {
43751
46596
  var fulfilled = (value) => {
43752
46597
  try {
@@ -66789,7 +69634,7 @@ var require_dist2 = __commonJS({
66789
69634
  break;
66790
69635
  }
66791
69636
  case "backwards": {
66792
- var _tail = null;
69637
+ var _tail2 = null;
66793
69638
  var row = workInProgress2.child;
66794
69639
  workInProgress2.child = null;
66795
69640
  while (row !== null) {
@@ -66799,15 +69644,15 @@ var require_dist2 = __commonJS({
66799
69644
  break;
66800
69645
  }
66801
69646
  var nextRow = row.sibling;
66802
- row.sibling = _tail;
66803
- _tail = row;
69647
+ row.sibling = _tail2;
69648
+ _tail2 = row;
66804
69649
  row = nextRow;
66805
69650
  }
66806
69651
  initSuspenseListRenderState(
66807
69652
  workInProgress2,
66808
69653
  true,
66809
69654
  // isBackwards
66810
- _tail,
69655
+ _tail2,
66811
69656
  null,
66812
69657
  // last
66813
69658
  tailMode
@@ -70453,10 +73298,10 @@ var require_dist2 = __commonJS({
70453
73298
  return;
70454
73299
  }
70455
73300
  } else {
70456
- var _next = unwindWork(current2, completedWork);
70457
- if (_next !== null) {
70458
- _next.flags &= HostEffectMask;
70459
- workInProgress = _next;
73301
+ var _next2 = unwindWork(current2, completedWork);
73302
+ if (_next2 !== null) {
73303
+ _next2.flags &= HostEffectMask;
73304
+ workInProgress = _next2;
70460
73305
  return;
70461
73306
  }
70462
73307
  if ((completedWork.mode & ProfileMode) !== NoMode) {
@@ -72937,10 +75782,10 @@ var require_dist2 = __commonJS({
72937
75782
  var getItem2 = (selector, data, dynamicProps = {}) => {
72938
75783
  if (!selector.zone || selector.zone === rootDroppableId2) {
72939
75784
  const item2 = data.content[selector.index];
72940
- return __spreadProps2(__spreadValues2({}, item2), { props: dynamicProps[item2.props.id] || item2.props });
75785
+ return (item2 == null ? void 0 : item2.props) ? __spreadProps2(__spreadValues2({}, item2), { props: dynamicProps[item2.props.id] || item2.props }) : void 0;
72941
75786
  }
72942
75787
  const item = setupZone2(data, selector.zone).zones[selector.zone][selector.index];
72943
- return __spreadProps2(__spreadValues2({}, item), { props: dynamicProps[item.props.id] || item.props });
75788
+ return (item == null ? void 0 : item.props) ? __spreadProps2(__spreadValues2({}, item), { props: dynamicProps[item.props.id] || item.props }) : void 0;
72944
75789
  };
72945
75790
  init_react_import2();
72946
75791
  var defaultViewports2 = [
@@ -72948,6 +75793,7 @@ var require_dist2 = __commonJS({
72948
75793
  { width: 768, height: "auto", icon: "Tablet", label: "Medium" },
72949
75794
  { width: 1280, height: "auto", icon: "Monitor", label: "Large" }
72950
75795
  ];
75796
+ var import_ua_parser_js2 = require_ua_parser();
72951
75797
  var import_jsx_runtime22 = require("react/jsx-runtime");
72952
75798
  var defaultAppState2 = {
72953
75799
  data: { content: [], root: { props: { title: "" } } },
@@ -72987,7 +75833,8 @@ var require_dist2 = __commonJS({
72987
75833
  setZoomConfig: () => null,
72988
75834
  status: "LOADING",
72989
75835
  setStatus: () => null,
72990
- iframe: {}
75836
+ iframe: {},
75837
+ safariFallbackMode: false
72991
75838
  };
72992
75839
  var appContext2 = (0, import_react32.createContext)(defaultContext2);
72993
75840
  var AppProvider = ({
@@ -72999,10 +75846,34 @@ var require_dist2 = __commonJS({
72999
75846
  (0, import_react32.useEffect)(() => {
73000
75847
  setStatus("MOUNTED");
73001
75848
  }, []);
75849
+ const [safariFallbackMode, setSafariFallbackMode] = (0, import_react32.useState)(false);
75850
+ (0, import_react32.useEffect)(() => {
75851
+ var _a3, _b, _c;
75852
+ const ua = new import_ua_parser_js2.UAParser(navigator.userAgent);
75853
+ const { browser } = ua.getResult();
75854
+ if (browser.name === "Safari" && (((_a3 = browser.version) == null ? void 0 : _a3.indexOf("17.2.")) || ((_b = browser.version) == null ? void 0 : _b.indexOf("17.3.")) || ((_c = browser.version) == null ? void 0 : _c.indexOf("17.4.")))) {
75855
+ if (process.env.NODE_ENV !== "production" && value.iframe.enabled) {
75856
+ console.warn(
75857
+ `Detected Safari ${browser.version}, which contains a bug that prevents Puck DropZones from detecting a mouseover event within an iframe. This affects Safari versions 17.2, 17.3 and 17.4.
75858
+
75859
+ Running in compatibility mode, which may have some DropZone side-effects. Alternatively, consider disabling iframes: https://puckeditor.com/docs/integrating-puck/viewports#opting-out-of-iframes.
75860
+
75861
+ See https://github.com/measuredco/puck/issues/411 for more information. This message will not show in production.`
75862
+ );
75863
+ }
75864
+ setSafariFallbackMode(true);
75865
+ }
75866
+ }, []);
73002
75867
  return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
73003
75868
  appContext2.Provider,
73004
75869
  {
73005
- value: __spreadProps2(__spreadValues2({}, value), { zoomConfig, setZoomConfig, status, setStatus }),
75870
+ value: __spreadProps2(__spreadValues2({}, value), {
75871
+ zoomConfig,
75872
+ setZoomConfig,
75873
+ status,
75874
+ setStatus,
75875
+ safariFallbackMode
75876
+ }),
73006
75877
  children
73007
75878
  }
73008
75879
  );
@@ -73084,7 +75955,7 @@ var require_dist2 = __commonJS({
73084
75955
  const { status } = useAppContext2();
73085
75956
  const El = status !== "LOADING" ? import_dnd2.Draggable : DefaultDraggable;
73086
75957
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(El, { draggableId: id, index, isDragDisabled, children: (provided, snapshot) => {
73087
- var _a;
75958
+ var _a3;
73088
75959
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
73089
75960
  /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
73090
75961
  "div",
@@ -73093,7 +75964,7 @@ var require_dist2 = __commonJS({
73093
75964
  ref: provided.innerRef
73094
75965
  }, provided.draggableProps), provided.dragHandleProps), {
73095
75966
  style: __spreadProps2(__spreadValues2({}, provided.draggableProps.style), {
73096
- transform: snapshot.isDragging || !disableAnimations ? (_a = provided.draggableProps.style) == null ? void 0 : _a.transform : "translate(0px, 0px)"
75967
+ transform: snapshot.isDragging || !disableAnimations ? (_a3 = provided.draggableProps.style) == null ? void 0 : _a3.transform : "translate(0px, 0px)"
73097
75968
  }),
73098
75969
  children: children(provided, snapshot)
73099
75970
  })
@@ -73198,7 +76069,7 @@ var require_dist2 = __commonJS({
73198
76069
  var import_react72 = require("react");
73199
76070
  var import_dnd3 = (init_dnd_esm(), __toCommonJS(dnd_esm_exports));
73200
76071
  init_react_import2();
73201
- var styles_module_default32 = { "DraggableComponent": "_DraggableComponent_1542z_1", "DraggableComponent--isDragging": "_DraggableComponent--isDragging_1542z_11", "DraggableComponent-contents": "_DraggableComponent-contents_1542z_16", "DraggableComponent-overlay": "_DraggableComponent-overlay_1542z_29", "DraggableComponent-loadingOverlay": "_DraggableComponent-loadingOverlay_1542z_49", "DraggableComponent--isLocked": "_DraggableComponent--isLocked_1542z_65", "DraggableComponent--forceHover": "_DraggableComponent--forceHover_1542z_71", "DraggableComponent--isSelected": "_DraggableComponent--isSelected_1542z_76", "DraggableComponent--indicativeHover": "_DraggableComponent--indicativeHover_1542z_81", "DraggableComponent-actionsOverlay": "_DraggableComponent-actionsOverlay_1542z_97", "DraggableComponent-actions": "_DraggableComponent-actions_1542z_97", "DraggableComponent-actionsLabel": "_DraggableComponent-actionsLabel_1542z_127", "DraggableComponent-action": "_DraggableComponent-action_1542z_97" };
76072
+ var styles_module_default32 = { "DraggableComponent": "_DraggableComponent_59z7f_1", "DraggableComponent--isDragging": "_DraggableComponent--isDragging_59z7f_11", "DraggableComponent-contents": "_DraggableComponent-contents_59z7f_16", "DraggableComponent-overlay": "_DraggableComponent-overlay_59z7f_29", "DraggableComponent-loadingOverlay": "_DraggableComponent-loadingOverlay_59z7f_49", "DraggableComponent--isLocked": "_DraggableComponent--isLocked_59z7f_65", "DraggableComponent--forceHover": "_DraggableComponent--forceHover_59z7f_71", "DraggableComponent--isSelected": "_DraggableComponent--isSelected_59z7f_76", "DraggableComponent--indicativeHover": "_DraggableComponent--indicativeHover_59z7f_81", "DraggableComponent-actionsOverlay": "_DraggableComponent-actionsOverlay_59z7f_97", "DraggableComponent-actions": "_DraggableComponent-actions_59z7f_97", "DraggableComponent-actionsLabel": "_DraggableComponent-actionsLabel_59z7f_127", "DraggableComponent-action": "_DraggableComponent-action_59z7f_97" };
73202
76073
  init_react_import2();
73203
76074
  init_react_import2();
73204
76075
  var import_react52 = require("react");
@@ -73217,8 +76088,8 @@ var require_dist2 = __commonJS({
73217
76088
  var toKebabCase2 = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase().trim();
73218
76089
  var createLucideIcon2 = (iconName, iconNode) => {
73219
76090
  const Component = (0, import_react52.forwardRef)(
73220
- (_a, ref2) => {
73221
- var _b = _a, { color = "currentColor", size = 24, strokeWidth = 2, absoluteStrokeWidth, className = "", children } = _b, rest = __objRest2(_b, ["color", "size", "strokeWidth", "absoluteStrokeWidth", "className", "children"]);
76091
+ (_a3, ref2) => {
76092
+ var _b = _a3, { color = "currentColor", size = 24, strokeWidth = 2, absoluteStrokeWidth, className = "", children } = _b, rest = __objRest2(_b, ["color", "size", "strokeWidth", "absoluteStrokeWidth", "className", "children"]);
73222
76093
  return (0, import_react52.createElement)(
73223
76094
  "svg",
73224
76095
  __spreadValues2(__spreadProps2(__spreadValues2({
@@ -73539,7 +76410,7 @@ var require_dist2 = __commonJS({
73539
76410
  );
73540
76411
  };
73541
76412
  init_react_import2();
73542
- var styles_module_default42 = { "DropZone": "_DropZone_w4btq_1", "DropZone-content": "_DropZone-content_w4btq_10", "DropZone--userIsDragging": "_DropZone--userIsDragging_w4btq_15", "DropZone--draggingOverArea": "_DropZone--draggingOverArea_w4btq_19", "DropZone--draggingNewComponent": "_DropZone--draggingNewComponent_w4btq_20", "DropZone--isAreaSelected": "_DropZone--isAreaSelected_w4btq_26", "DropZone--hoveringOverArea": "_DropZone--hoveringOverArea_w4btq_27", "DropZone--isDisabled": "_DropZone--isDisabled_w4btq_28", "DropZone--isRootZone": "_DropZone--isRootZone_w4btq_29", "DropZone--hasChildren": "_DropZone--hasChildren_w4btq_30", "DropZone--isDestination": "_DropZone--isDestination_w4btq_40", "DropZone-item": "_DropZone-item_w4btq_52", "DropZone-hitbox": "_DropZone-hitbox_w4btq_56" };
76413
+ var styles_module_default42 = { "DropZone": "_DropZone_djoti_1", "DropZone-content": "_DropZone-content_djoti_10", "DropZone--userIsDragging": "_DropZone--userIsDragging_djoti_15", "DropZone--draggingOverArea": "_DropZone--draggingOverArea_djoti_19", "DropZone--draggingNewComponent": "_DropZone--draggingNewComponent_djoti_20", "DropZone--isAreaSelected": "_DropZone--isAreaSelected_djoti_26", "DropZone--hoveringOverArea": "_DropZone--hoveringOverArea_djoti_27", "DropZone--isDisabled": "_DropZone--isDisabled_djoti_28", "DropZone--isRootZone": "_DropZone--isRootZone_djoti_29", "DropZone--hasChildren": "_DropZone--hasChildren_djoti_30", "DropZone--isDestination": "_DropZone--isDestination_djoti_40", "DropZone-item": "_DropZone-item_djoti_52", "DropZone-hitbox": "_DropZone-hitbox_djoti_56" };
73543
76414
  init_react_import2();
73544
76415
  var import_react82 = require("react");
73545
76416
  var import_use_debounce = (init_index_module(), __toCommonJS(index_module_exports));
@@ -73658,7 +76529,7 @@ var require_dist2 = __commonJS({
73658
76529
  var import_jsx_runtime9 = require("react/jsx-runtime");
73659
76530
  var getClassName5 = get_class_name_factory_default2("DropZone", styles_module_default42);
73660
76531
  function DropZoneEdit({ zone, allow, disallow, style: style2 }) {
73661
- var _a;
76532
+ var _a3;
73662
76533
  const appContext22 = useAppContext2();
73663
76534
  const ctx = (0, import_react92.useContext)(dropZoneContext2);
73664
76535
  const {
@@ -73702,7 +76573,7 @@ var require_dist2 = __commonJS({
73702
76573
  }
73703
76574
  const isRootZone = zoneCompound === rootDroppableId2 || zone === rootDroppableId2 || areaId === "root";
73704
76575
  const draggedSourceId = draggedItem && draggedItem.source.droppableId;
73705
- const draggedDestinationId = draggedItem && ((_a = draggedItem.destination) == null ? void 0 : _a.droppableId);
76576
+ const draggedDestinationId = draggedItem && ((_a3 = draggedItem.destination) == null ? void 0 : _a3.droppableId);
73706
76577
  const [zoneArea] = getZoneId2(zoneCompound);
73707
76578
  const [draggedSourceArea] = getZoneId2(draggedSourceId);
73708
76579
  const userWillDrag = zoneWillDrag === zone;
@@ -73724,7 +76595,11 @@ var require_dist2 = __commonJS({
73724
76595
  let isEnabled = userWillDrag;
73725
76596
  if (userIsDragging) {
73726
76597
  if (draggingNewComponent) {
73727
- isEnabled = hoveringOverArea;
76598
+ if (appContext22.safariFallbackMode) {
76599
+ isEnabled = true;
76600
+ } else {
76601
+ isEnabled = hoveringOverArea;
76602
+ }
73728
76603
  } else {
73729
76604
  isEnabled = draggingOverArea && hoveringOverZone;
73730
76605
  }
@@ -73785,9 +76660,9 @@ var require_dist2 = __commonJS({
73785
76660
  },
73786
76661
  children: [
73787
76662
  content.map((item, i2) => {
73788
- var _a2, _b, _c;
76663
+ var _a22, _b, _c;
73789
76664
  const componentId = item.props.id;
73790
- const defaultedProps = __spreadProps2(__spreadValues2(__spreadValues2({}, (_a2 = config.components[item.type]) == null ? void 0 : _a2.defaultProps), item.props), {
76665
+ const defaultedProps = __spreadProps2(__spreadValues2(__spreadValues2({}, (_a22 = config.components[item.type]) == null ? void 0 : _a22.defaultProps), item.props), {
73791
76666
  puck: { renderDropZone: DropZone },
73792
76667
  editMode: true
73793
76668
  });
@@ -74034,7 +76909,7 @@ var require_dist2 = __commonJS({
74034
76909
  const queryAttr = "data-rfd-drag-handle-draggable-id";
74035
76910
  const [placeholderStyle, setPlaceholderStyle] = (0, import_react112.useState)();
74036
76911
  const onDragStartOrUpdate = (draggedItem) => {
74037
- var _a;
76912
+ var _a3;
74038
76913
  const draggableId = draggedItem.draggableId;
74039
76914
  const destinationIndex = (draggedItem.destination || draggedItem.source).index;
74040
76915
  const droppableId = (draggedItem.destination || draggedItem.source).droppableId;
@@ -74052,7 +76927,7 @@ var require_dist2 = __commonJS({
74052
76927
  return;
74053
76928
  }
74054
76929
  let clientY = 0;
74055
- const isSameDroppable = draggedItem.source.droppableId === ((_a = draggedItem.destination) == null ? void 0 : _a.droppableId);
76930
+ const isSameDroppable = draggedItem.source.droppableId === ((_a3 = draggedItem.destination) == null ? void 0 : _a3.droppableId);
74056
76931
  if (destinationIndex > 0) {
74057
76932
  const end2 = destinationIndex > draggedItem.source.index && isSameDroppable ? destinationIndex + 1 : destinationIndex;
74058
76933
  const children = Array.from(targetListElement.children).filter(
@@ -74539,9 +77414,9 @@ var require_dist2 = __commonJS({
74539
77414
  var import_react132 = require("react");
74540
77415
  init_react_import2();
74541
77416
  var cache = { lastChange: {} };
74542
- var resolveAllComponentData = (content, config, onResolveStart, onResolveEnd) => __async(void 0, null, function* () {
77417
+ var resolveAllComponentData = (content, config, onResolveStart, onResolveEnd) => __async2(void 0, null, function* () {
74543
77418
  return yield Promise.all(
74544
- content.map((item) => __async(void 0, null, function* () {
77419
+ content.map((item) => __async2(void 0, null, function* () {
74545
77420
  return yield resolveComponentData(
74546
77421
  item,
74547
77422
  config,
@@ -74551,7 +77426,7 @@ var require_dist2 = __commonJS({
74551
77426
  }))
74552
77427
  );
74553
77428
  });
74554
- var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __async(void 0, null, function* () {
77429
+ var resolveComponentData = (item, config, onResolveStart, onResolveEnd) => __async2(void 0, null, function* () {
74555
77430
  const configForItem = config.components[item.type];
74556
77431
  if (configForItem.resolveData) {
74557
77432
  let changed = Object.keys(item.props).reduce(
@@ -74610,9 +77485,9 @@ var require_dist2 = __commonJS({
74610
77485
  };
74611
77486
  init_react_import2();
74612
77487
  var cache2 = {};
74613
- var resolveRootData = (data, config) => __async(void 0, null, function* () {
74614
- var _a, _b;
74615
- if (((_a = config.root) == null ? void 0 : _a.resolveData) && data.root.props) {
77488
+ var resolveRootData = (data, config) => __async2(void 0, null, function* () {
77489
+ var _a3, _b;
77490
+ if (((_a3 = config.root) == null ? void 0 : _a3.resolveData) && data.root.props) {
74616
77491
  let changed = Object.keys(data.root.props).reduce(
74617
77492
  (acc, item) => __spreadProps2(__spreadValues2({}, acc), { [item]: true }),
74618
77493
  {}
@@ -74664,11 +77539,11 @@ var require_dist2 = __commonJS({
74664
77539
  },
74665
77540
  []
74666
77541
  );
74667
- const runResolvers = () => __async(void 0, null, function* () {
77542
+ const runResolvers = () => __async2(void 0, null, function* () {
74668
77543
  const newData = newAppState.data;
74669
77544
  const flatContent = Object.keys(newData.zones || {}).reduce((acc, zone) => [...acc, ...newData.zones[zone]], newData.content).filter((item) => {
74670
- var _a;
74671
- return !!((_a = config.components[item.type]) == null ? void 0 : _a.resolveData);
77545
+ var _a3;
77546
+ return !!((_a3 = config.components[item.type]) == null ? void 0 : _a3.resolveData);
74672
77547
  });
74673
77548
  const applyIfChange = (dynamicDataMap, dynamicRoot) => {
74674
77549
  const processed = applyDynamicProps(
@@ -74691,7 +77566,7 @@ var require_dist2 = __commonJS({
74691
77566
  };
74692
77567
  const promises = [];
74693
77568
  promises.push(
74694
- (() => __async(void 0, null, function* () {
77569
+ (() => __async2(void 0, null, function* () {
74695
77570
  setComponentLoading("puck-root", true, 50);
74696
77571
  const dynamicRoot = yield resolveRootData(newData, config);
74697
77572
  applyIfChange({}, dynamicRoot);
@@ -74700,7 +77575,7 @@ var require_dist2 = __commonJS({
74700
77575
  );
74701
77576
  flatContent.forEach((item) => {
74702
77577
  promises.push(
74703
- (() => __async(void 0, null, function* () {
77578
+ (() => __async2(void 0, null, function* () {
74704
77579
  const dynamicData = yield resolveComponentData(
74705
77580
  item,
74706
77581
  config,
@@ -74756,12 +77631,12 @@ var require_dist2 = __commonJS({
74756
77631
  {
74757
77632
  className: getClassName9({ menuOpen }),
74758
77633
  onClick: (event) => {
74759
- var _a;
77634
+ var _a3;
74760
77635
  const element = event.target;
74761
77636
  if (window.matchMedia("(min-width: 638px)").matches) {
74762
77637
  return;
74763
77638
  }
74764
- if (element.tagName === "A" && ((_a = element.getAttribute("href")) == null ? void 0 : _a.startsWith("#"))) {
77639
+ if (element.tagName === "A" && ((_a3 = element.getAttribute("href")) == null ? void 0 : _a3.startsWith("#"))) {
74765
77640
  setMenuOpen(false);
74766
77641
  }
74767
77642
  },
@@ -74870,11 +77745,11 @@ var require_dist2 = __commonJS({
74870
77745
  (value2) => {
74871
77746
  let highestIndex = getHighestIndex();
74872
77747
  const newItems = Array.from(value2 || []).map((item, idx) => {
74873
- var _a;
77748
+ var _a3;
74874
77749
  const arrayStateItem = arrayState.items[idx];
74875
77750
  const newItem = {
74876
77751
  _originalIndex: typeof (arrayStateItem == null ? void 0 : arrayStateItem._originalIndex) !== "undefined" ? arrayStateItem._originalIndex : highestIndex + 1,
74877
- _arrayId: ((_a = arrayState.items[idx]) == null ? void 0 : _a._arrayId) || `${id}-${highestIndex + 1}`
77752
+ _arrayId: ((_a3 = arrayState.items[idx]) == null ? void 0 : _a3._arrayId) || `${id}-${highestIndex + 1}`
74878
77753
  };
74879
77754
  if (newItem._originalIndex > highestIndex) {
74880
77755
  highestIndex = newItem._originalIndex;
@@ -74906,12 +77781,12 @@ var require_dist2 = __commonJS({
74906
77781
  DragDropContext2,
74907
77782
  {
74908
77783
  onDragEnd: (event) => {
74909
- var _a, _b;
77784
+ var _a3, _b;
74910
77785
  if (event.destination) {
74911
77786
  const newValue = reorder(
74912
77787
  value,
74913
77788
  event.source.index,
74914
- (_a = event.destination) == null ? void 0 : _a.index
77789
+ (_a3 = event.destination) == null ? void 0 : _a3.index
74915
77790
  );
74916
77791
  const newArrayStateItems = reorder(
74917
77792
  arrayState.items,
@@ -75198,7 +78073,7 @@ var require_dist2 = __commonJS({
75198
78073
  }, [mappedData]);
75199
78074
  const [searchQuery, setSearchQuery] = (0, import_react16.useState)(field.initialQuery || "");
75200
78075
  const search = (0, import_react16.useCallback)(
75201
- (query, filters2) => __async(void 0, null, function* () {
78076
+ (query, filters2) => __async2(void 0, null, function* () {
75202
78077
  setIsLoading(true);
75203
78078
  const cacheKey = `${id}-${query}-${JSON.stringify(filters2)}`;
75204
78079
  const listData = dataCache[cacheKey] || (yield field.fetchList({ query, filters: filters2 }));
@@ -75366,7 +78241,7 @@ var require_dist2 = __commonJS({
75366
78241
  label,
75367
78242
  id
75368
78243
  }) => {
75369
- var _a, _b, _c;
78244
+ var _a3, _b, _c;
75370
78245
  const validField = field;
75371
78246
  const deprecatedField = field;
75372
78247
  (0, import_react17.useEffect)(() => {
@@ -75391,10 +78266,10 @@ var require_dist2 = __commonJS({
75391
78266
  name,
75392
78267
  field: __spreadProps2(__spreadValues2({}, validField), {
75393
78268
  // DEPRECATED
75394
- placeholder: ((_a = deprecatedField.adaptor) == null ? void 0 : _a.name) ? `Select from ${deprecatedField.adaptor.name}` : validField.placeholder || "Select data",
78269
+ placeholder: ((_a3 = deprecatedField.adaptor) == null ? void 0 : _a3.name) ? `Select from ${deprecatedField.adaptor.name}` : validField.placeholder || "Select data",
75395
78270
  mapProp: ((_b = deprecatedField.adaptor) == null ? void 0 : _b.mapProp) || validField.mapProp,
75396
78271
  mapRow: validField.mapRow,
75397
- fetchList: ((_c = deprecatedField.adaptor) == null ? void 0 : _c.fetchList) ? () => __async(void 0, null, function* () {
78272
+ fetchList: ((_c = deprecatedField.adaptor) == null ? void 0 : _c.fetchList) ? () => __async2(void 0, null, function* () {
75398
78273
  return yield deprecatedField.adaptor.fetchList(
75399
78274
  deprecatedField.adaptorParams
75400
78275
  );
@@ -75490,7 +78365,7 @@ var require_dist2 = __commonJS({
75490
78365
  disabled: readOnly,
75491
78366
  onChange: (e2) => {
75492
78367
  if (e2.currentTarget.value === "true" || e2.currentTarget.value === "false") {
75493
- onChange(Boolean(e2.currentTarget.value));
78368
+ onChange(JSON.parse(e2.currentTarget.value));
75494
78369
  return;
75495
78370
  }
75496
78371
  onChange(e2.currentTarget.value);
@@ -75644,9 +78519,9 @@ var require_dist2 = __commonJS({
75644
78519
  }
75645
78520
  );
75646
78521
  };
75647
- var InputOrGroup = (_a) => {
75648
- var _b = _a, { onChange } = _b, props = __objRest2(_b, ["onChange"]);
75649
- var _a2, _b2, _c, _d, _e, _f, _g, _h;
78522
+ var InputOrGroup = (_a3) => {
78523
+ var _b = _a3, { onChange } = _b, props = __objRest2(_b, ["onChange"]);
78524
+ var _a22, _b2, _c, _d, _e, _f, _g, _h;
75650
78525
  const { overrides } = useAppContext2();
75651
78526
  const { name, field, value, readOnly } = props;
75652
78527
  const [localValue, setLocalValue] = (0, import_react18.useState)(value);
@@ -75689,7 +78564,7 @@ var require_dist2 = __commonJS({
75689
78564
  number: DefaultField
75690
78565
  };
75691
78566
  const render = __spreadProps2(__spreadValues2({}, overrides.fieldTypes), {
75692
- array: ((_a2 = overrides.fieldTypes) == null ? void 0 : _a2.array) || defaultFields.array,
78567
+ array: ((_a22 = overrides.fieldTypes) == null ? void 0 : _a22.array) || defaultFields.array,
75693
78568
  external: ((_b2 = overrides.fieldTypes) == null ? void 0 : _b2.external) || defaultFields.external,
75694
78569
  object: ((_c = overrides.fieldTypes) == null ? void 0 : _c.object) || defaultFields.object,
75695
78570
  select: ((_d = overrides.fieldTypes) == null ? void 0 : _d.select) || defaultFields.select,
@@ -75721,7 +78596,7 @@ var require_dist2 = __commonJS({
75721
78596
  ] });
75722
78597
  };
75723
78598
  var Fields = () => {
75724
- var _a, _b, _c, _d;
78599
+ var _a3, _b, _c, _d;
75725
78600
  const {
75726
78601
  selectedItem,
75727
78602
  state,
@@ -75733,7 +78608,7 @@ var require_dist2 = __commonJS({
75733
78608
  } = useAppContext2();
75734
78609
  const { data, ui } = state;
75735
78610
  const { itemSelector } = ui;
75736
- const rootFields = ((_a = config.root) == null ? void 0 : _a.fields) || defaultPageFields;
78611
+ const rootFields = ((_a3 = config.root) == null ? void 0 : _a3.fields) || defaultPageFields;
75737
78612
  const fields = selectedItem ? ((_b = config.components[selectedItem.type]) == null ? void 0 : _b.fields) || {} : rootFields;
75738
78613
  const isLoading = selectedItem ? (_c = componentState[selectedItem == null ? void 0 : selectedItem.props.id]) == null ? void 0 : _c.loading : (_d = componentState["puck-root"]) == null ? void 0 : _d.loading;
75739
78614
  const rootProps = data.root.props || data.root;
@@ -75748,7 +78623,7 @@ var require_dist2 = __commonJS({
75748
78623
  children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Wrapper, { isLoading, itemSelector, children: Object.keys(fields).map((fieldName) => {
75749
78624
  const field = fields[fieldName];
75750
78625
  const onChange = (value, updatedUi) => {
75751
- var _a2, _b2;
78626
+ var _a22, _b2;
75752
78627
  let currentProps;
75753
78628
  if (selectedItem) {
75754
78629
  currentProps = selectedItem.props;
@@ -75773,7 +78648,7 @@ var require_dist2 = __commonJS({
75773
78648
  ui: __spreadValues2(__spreadValues2({}, ui), updatedUi)
75774
78649
  }
75775
78650
  };
75776
- if ((_a2 = config.components[selectedItem.type]) == null ? void 0 : _a2.resolveData) {
78651
+ if ((_a22 = config.components[selectedItem.type]) == null ? void 0 : _a22.resolveData) {
75777
78652
  resolveData(setAction(state, setActionData));
75778
78653
  } else {
75779
78654
  dispatch(__spreadProps2(__spreadValues2({}, setActionData), {
@@ -75889,11 +78764,11 @@ var require_dist2 = __commonJS({
75889
78764
  }
75890
78765
  ),
75891
78766
  /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: getClassName20("content"), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Drawer, { droppableId: `component-list${title ? `:${title}` : ""}`, children: children || Object.keys(config.components).map((componentKey, i2) => {
75892
- var _a;
78767
+ var _a3;
75893
78768
  return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
75894
78769
  ComponentListItem,
75895
78770
  {
75896
- label: (_a = config.components[componentKey]["label"]) != null ? _a : componentKey,
78771
+ label: (_a3 = config.components[componentKey]["label"]) != null ? _a3 : componentKey,
75897
78772
  name: componentKey,
75898
78773
  index: i2
75899
78774
  },
@@ -75907,7 +78782,7 @@ var require_dist2 = __commonJS({
75907
78782
  var useComponentList = (config, ui) => {
75908
78783
  const [componentList, setComponentList] = (0, import_react20.useState)();
75909
78784
  (0, import_react20.useEffect)(() => {
75910
- var _a, _b, _c;
78785
+ var _a3, _b, _c;
75911
78786
  if (Object.keys(ui.componentList).length > 0) {
75912
78787
  const matchedComponents = [];
75913
78788
  let _componentList;
@@ -75922,12 +78797,13 @@ var require_dist2 = __commonJS({
75922
78797
  id: categoryKey,
75923
78798
  title: category.title || categoryKey,
75924
78799
  children: category.components.map((componentName, i2) => {
75925
- var _a2;
78800
+ var _a22;
75926
78801
  matchedComponents.push(componentName);
78802
+ const componentConf = config.components[componentName] || {};
75927
78803
  return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
75928
78804
  ComponentList.Item,
75929
78805
  {
75930
- label: (_a2 = config.components[componentName]["label"]) != null ? _a2 : componentName,
78806
+ label: (_a22 = componentConf["label"]) != null ? _a22 : componentName,
75931
78807
  name: componentName,
75932
78808
  index: i2
75933
78809
  },
@@ -75942,7 +78818,7 @@ var require_dist2 = __commonJS({
75942
78818
  const remainingComponents = Object.keys(config.components).filter(
75943
78819
  (component) => matchedComponents.indexOf(component) === -1
75944
78820
  );
75945
- if (remainingComponents.length > 0 && !((_a = ui.componentList.other) == null ? void 0 : _a.components) && ((_b = ui.componentList.other) == null ? void 0 : _b.visible) !== false) {
78821
+ if (remainingComponents.length > 0 && !((_a3 = ui.componentList.other) == null ? void 0 : _a3.components) && ((_b = ui.componentList.other) == null ? void 0 : _b.visible) !== false) {
75946
78822
  _componentList.push(
75947
78823
  /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
75948
78824
  ComponentList,
@@ -75950,12 +78826,13 @@ var require_dist2 = __commonJS({
75950
78826
  id: "other",
75951
78827
  title: ((_c = ui.componentList.other) == null ? void 0 : _c.title) || "Other",
75952
78828
  children: remainingComponents.map((componentName, i2) => {
75953
- var _a2;
78829
+ var _a22;
78830
+ const componentConf = config.components[componentName] || {};
75954
78831
  return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
75955
78832
  ComponentList.Item,
75956
78833
  {
75957
78834
  name: componentName,
75958
- label: (_a2 = config.components[componentName]["label"]) != null ? _a2 : componentName,
78835
+ label: (_a22 = componentConf["label"]) != null ? _a22 : componentName,
75959
78836
  index: i2
75960
78837
  },
75961
78838
  componentName
@@ -75983,15 +78860,15 @@ var require_dist2 = __commonJS({
75983
78860
  var import_react222 = require("react");
75984
78861
  var import_auto_frame_component = __toESM2(require_dist());
75985
78862
  init_react_import2();
75986
- var styles_module_default16 = { "PuckPreview": "_PuckPreview_1mia0_1", "PuckPreview-frame": "_PuckPreview-frame_1mia0_5" };
78863
+ var styles_module_default16 = { "PuckPreview": "_PuckPreview_rxwlr_1", "PuckPreview-frame": "_PuckPreview-frame_rxwlr_5" };
75987
78864
  var import_jsx_runtime29 = require("react/jsx-runtime");
75988
78865
  var getClassName21 = get_class_name_factory_default2("PuckPreview", styles_module_default16);
75989
78866
  var Preview = ({ id = "puck-preview" }) => {
75990
78867
  const { config, dispatch, state, setStatus, iframe } = useAppContext2();
75991
78868
  const Page = (0, import_react222.useCallback)(
75992
78869
  (pageProps) => {
75993
- var _a, _b;
75994
- return ((_a = config.root) == null ? void 0 : _a.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps2(__spreadValues2({
78870
+ var _a3, _b;
78871
+ return ((_a3 = config.root) == null ? void 0 : _a3.render) ? (_b = config.root) == null ? void 0 : _b.render(__spreadProps2(__spreadValues2({
75995
78872
  id: "puck-root"
75996
78873
  }, pageProps), {
75997
78874
  editMode: true,
@@ -76057,9 +78934,9 @@ var require_dist2 = __commonJS({
76057
78934
  var import_react23 = require("react");
76058
78935
  init_react_import2();
76059
78936
  var isChildOfZone = (item, maybeChild, ctx) => {
76060
- var _a;
78937
+ var _a3;
76061
78938
  const { data, pathData = {} } = ctx || {};
76062
- return maybeChild && data ? !!((_a = pathData[maybeChild.props.id]) == null ? void 0 : _a.path.find((zoneCompound) => {
78939
+ return maybeChild && data ? !!((_a3 = pathData[maybeChild.props.id]) == null ? void 0 : _a3.path.find((zoneCompound) => {
76063
78940
  const [area] = getZoneId2(zoneCompound);
76064
78941
  return area === item.props.id;
76065
78942
  })) : false;
@@ -76087,7 +78964,7 @@ var require_dist2 = __commonJS({
76087
78964
  /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("ul", { className: getClassName222(), children: [
76088
78965
  zoneContent.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassName222("helper"), children: "No items" }),
76089
78966
  zoneContent.map((item, i2) => {
76090
- var _a;
78967
+ var _a3;
76091
78968
  const isSelected = (itemSelector == null ? void 0 : itemSelector.index) === i2 && (itemSelector.zone === zone || itemSelector.zone === rootDroppableId2 && !zone);
76092
78969
  const zonesForItem = findZonesForArea(data, item.props.id);
76093
78970
  const containsZone = Object.keys(zonesForItem).length > 0;
@@ -76153,7 +79030,7 @@ var require_dist2 = __commonJS({
76153
79030
  ),
76154
79031
  /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: getClassNameLayer("title"), children: [
76155
79032
  /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("icon"), children: item.type === "Text" || item.type === "Heading" ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Type, { size: "16" }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(LayoutGrid, { size: "16" }) }),
76156
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("name"), children: (_a = config.components[item.type]["label"]) != null ? _a : item.type })
79033
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: getClassNameLayer("name"), children: (_a3 = config.components[item.type]["label"]) != null ? _a3 : item.type })
76157
79034
  ] })
76158
79035
  ]
76159
79036
  }
@@ -76262,11 +79139,11 @@ var require_dist2 = __commonJS({
76262
79139
  historyStore
76263
79140
  }) {
76264
79141
  const back = () => {
76265
- var _a;
79142
+ var _a3;
76266
79143
  if (historyStore.hasPast) {
76267
79144
  dispatch({
76268
79145
  type: "set",
76269
- state: ((_a = historyStore.prevHistory) == null ? void 0 : _a.data) || initialAppState
79146
+ state: ((_a3 = historyStore.prevHistory) == null ? void 0 : _a3.data) || initialAppState
76270
79147
  });
76271
79148
  historyStore.back();
76272
79149
  }
@@ -76495,7 +79372,7 @@ var require_dist2 = __commonJS({
76495
79372
  onViewportChange,
76496
79373
  onZoom
76497
79374
  }) => {
76498
- var _a, _b;
79375
+ var _a3, _b;
76499
79376
  const { viewports } = useAppContext2();
76500
79377
  const defaultsContainAutoZoom = defaultZoomOptions.find(
76501
79378
  (option) => option.value === autoZoom
@@ -76529,7 +79406,7 @@ var require_dist2 = __commonJS({
76529
79406
  IconButton,
76530
79407
  {
76531
79408
  title: "Zoom viewport out",
76532
- disabled: zoom <= ((_a = zoomOptions[0]) == null ? void 0 : _a.value),
79409
+ disabled: zoom <= ((_a3 = zoomOptions[0]) == null ? void 0 : _a3.value),
76533
79410
  onClick: (e2) => {
76534
79411
  e2.stopPropagation();
76535
79412
  onZoom(
@@ -76711,7 +79588,7 @@ var require_dist2 = __commonJS({
76711
79588
  {
76712
79589
  className: getClassName24("root"),
76713
79590
  style: {
76714
- width: iframe.enabled ? ui.viewports.current.width : void 0,
79591
+ width: iframe.enabled ? ui.viewports.current.width : "100%",
76715
79592
  height: zoomConfig.rootHeight,
76716
79593
  transform: iframe.enabled ? `scale(${zoomConfig.zoom})` : void 0,
76717
79594
  transition: showTransition ? "width 150ms ease-out, height 150ms ease-out, transform 150ms ease-out" : "",
@@ -76745,13 +79622,13 @@ var require_dist2 = __commonJS({
76745
79622
  enabled: true
76746
79623
  }
76747
79624
  }) {
76748
- var _a;
79625
+ var _a3;
76749
79626
  const historyStore = useHistoryStore();
76750
79627
  const [reducer2] = (0, import_react28.useState)(
76751
79628
  () => createReducer({ config, record: historyStore.record })
76752
79629
  );
76753
79630
  const [initialAppState] = (0, import_react28.useState)(() => {
76754
- var _a2, _b, _c, _d;
79631
+ var _a22, _b, _c, _d;
76755
79632
  const initial = __spreadValues2(__spreadValues2({}, defaultAppState2.ui), initialUi);
76756
79633
  let clientUiState = {};
76757
79634
  if (typeof window !== "undefined") {
@@ -76771,7 +79648,7 @@ var require_dist2 = __commonJS({
76771
79648
  clientUiState = {
76772
79649
  viewports: __spreadProps2(__spreadValues2({}, initial.viewports), {
76773
79650
  current: __spreadProps2(__spreadValues2({}, initial.viewports.current), {
76774
- height: ((_b = (_a2 = initialUi == null ? void 0 : initialUi.viewports) == null ? void 0 : _a2.current) == null ? void 0 : _b.height) || viewports[closestViewport].height || "auto",
79651
+ height: ((_b = (_a22 = initialUi == null ? void 0 : initialUi.viewports) == null ? void 0 : _a22.current) == null ? void 0 : _b.height) || viewports[closestViewport].height || "auto",
76775
79652
  width: ((_d = (_c = initialUi == null ? void 0 : initialUi.viewports) == null ? void 0 : _c.current) == null ? void 0 : _d.width) || viewports[closestViewport].width
76776
79653
  })
76777
79654
  })
@@ -76884,8 +79761,8 @@ var require_dist2 = __commonJS({
76884
79761
  console.warn(
76885
79762
  "`renderHeader` is deprecated. Please use `overrides.header` and the `usePuck` hook instead"
76886
79763
  );
76887
- const RenderHeader = (_a2) => {
76888
- var _b = _a2, { actions } = _b, props = __objRest2(_b, ["actions"]);
79764
+ const RenderHeader = (_a22) => {
79765
+ var _b = _a22, { actions } = _b, props = __objRest2(_b, ["actions"]);
76889
79766
  const Comp = renderHeader;
76890
79767
  return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Comp, __spreadProps2(__spreadValues2({}, props), { dispatch, state: appState, children: actions }));
76891
79768
  };
@@ -77104,7 +79981,7 @@ var require_dist2 = __commonJS({
77104
79981
  noPadding: true,
77105
79982
  noBorderTop: true,
77106
79983
  showBreadcrumbs: true,
77107
- title: selectedItem ? (_a = config.components[selectedItem.type]["label"]) != null ? _a : selectedItem.type : "Page",
79984
+ title: selectedItem ? (_a3 = config.components[selectedItem.type]["label"]) != null ? _a3 : selectedItem.type : "Page",
77108
79985
  children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Fields, {})
77109
79986
  }
77110
79987
  ) })
@@ -77136,10 +80013,10 @@ var require_dist2 = __commonJS({
77136
80013
  config,
77137
80014
  data
77138
80015
  }) {
77139
- var _a;
80016
+ var _a3;
77140
80017
  const rootProps = data.root.props || data.root;
77141
80018
  const title = (rootProps == null ? void 0 : rootProps.title) || "";
77142
- if ((_a = config.root) == null ? void 0 : _a.render) {
80019
+ if ((_a3 = config.root) == null ? void 0 : _a3.render) {
77143
80020
  return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(DropZoneProvider, { value: { data, config, mode: "render" }, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
77144
80021
  config.root.render,
77145
80022
  __spreadProps2(__spreadValues2({}, rootProps), {
@@ -77209,7 +80086,7 @@ var require_dist2 = __commonJS({
77209
80086
  }
77210
80087
  init_react_import2();
77211
80088
  function resolveAllData(data, config, onResolveStart, onResolveEnd) {
77212
- return __async(this, null, function* () {
80089
+ return __async2(this, null, function* () {
77213
80090
  const dynamicRoot = yield resolveRootData(data, config);
77214
80091
  const { zones = {} } = data;
77215
80092
  const zoneKeys = Object.keys(zones);
@@ -77407,8 +80284,8 @@ var defaultAttributes = {
77407
80284
  var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase().trim();
77408
80285
  var createLucideIcon = (iconName, iconNode) => {
77409
80286
  const Component = (0, import_react8.forwardRef)(
77410
- (_a, ref2) => {
77411
- var _b = _a, { color = "currentColor", size = 24, strokeWidth = 2, absoluteStrokeWidth, className = "", children } = _b, rest = __objRest(_b, ["color", "size", "strokeWidth", "absoluteStrokeWidth", "className", "children"]);
80287
+ (_a3, ref2) => {
80288
+ var _b = _a3, { color = "currentColor", size = 24, strokeWidth = 2, absoluteStrokeWidth, className = "", children } = _b, rest = __objRest(_b, ["color", "size", "strokeWidth", "absoluteStrokeWidth", "className", "children"]);
77412
80289
  return (0, import_react8.createElement)(
77413
80290
  "svg",
77414
80291
  __spreadValues(__spreadProps(__spreadValues({
@@ -77468,10 +80345,10 @@ var setupZone = (data, zoneKey) => {
77468
80345
  var getItem = (selector, data, dynamicProps = {}) => {
77469
80346
  if (!selector.zone || selector.zone === rootDroppableId) {
77470
80347
  const item2 = data.content[selector.index];
77471
- return __spreadProps(__spreadValues({}, item2), { props: dynamicProps[item2.props.id] || item2.props });
80348
+ return (item2 == null ? void 0 : item2.props) ? __spreadProps(__spreadValues({}, item2), { props: dynamicProps[item2.props.id] || item2.props }) : void 0;
77472
80349
  }
77473
80350
  const item = setupZone(data, selector.zone).zones[selector.zone][selector.index];
77474
- return __spreadProps(__spreadValues({}, item), { props: dynamicProps[item.props.id] || item.props });
80351
+ return (item == null ? void 0 : item.props) ? __spreadProps(__spreadValues({}, item), { props: dynamicProps[item.props.id] || item.props }) : void 0;
77475
80352
  };
77476
80353
 
77477
80354
  // ../core/lib/get-zone-id.ts
@@ -77503,6 +80380,7 @@ var defaultViewports = [
77503
80380
  ];
77504
80381
 
77505
80382
  // ../core/components/Puck/context.tsx
80383
+ var import_ua_parser_js = __toESM(require_ua_parser());
77506
80384
  var import_jsx_runtime4 = require("react/jsx-runtime");
77507
80385
  var defaultAppState = {
77508
80386
  data: { content: [], root: { props: { title: "" } } },
@@ -77542,7 +80420,8 @@ var defaultContext = {
77542
80420
  setZoomConfig: () => null,
77543
80421
  status: "LOADING",
77544
80422
  setStatus: () => null,
77545
- iframe: {}
80423
+ iframe: {},
80424
+ safariFallbackMode: false
77546
80425
  };
77547
80426
  var appContext = (0, import_react10.createContext)(defaultContext);
77548
80427
  function useAppContext() {
@@ -77740,7 +80619,7 @@ var getOutline = ({
77740
80619
  return _outline;
77741
80620
  };
77742
80621
  function buildHierarchy(frame) {
77743
- var _a, _b;
80622
+ var _a3, _b;
77744
80623
  const headings = getOutline({ addDataAttr: true, frame });
77745
80624
  const root = { rank: 0, children: [], text: "" };
77746
80625
  let path = [root];
@@ -77764,7 +80643,7 @@ function buildHierarchy(frame) {
77764
80643
  children: [],
77765
80644
  text: ""
77766
80645
  };
77767
- (_a = path[path.length - 1].children) == null ? void 0 : _a.push(missingNode);
80646
+ (_a3 = path[path.length - 1].children) == null ? void 0 : _a3.push(missingNode);
77768
80647
  path.push(missingNode);
77769
80648
  }
77770
80649
  }