@annotorious/react 3.0.0-rc.9 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/Annotorious.d.ts +14 -43
  2. package/dist/Annotorious.d.ts.map +1 -1
  3. package/dist/AnnotoriousPlugin.d.ts +12 -6
  4. package/dist/AnnotoriousPlugin.d.ts.map +1 -1
  5. package/dist/AnnotoriousPopupProps.d.ts +10 -0
  6. package/dist/AnnotoriousPopupProps.d.ts.map +1 -0
  7. package/dist/ImageAnnotationPopup.d.ts +9 -0
  8. package/dist/ImageAnnotationPopup.d.ts.map +1 -0
  9. package/dist/ImageAnnotator.d.ts +2 -3
  10. package/dist/ImageAnnotator.d.ts.map +1 -1
  11. package/dist/annotorious-react.css +1 -1
  12. package/dist/annotorious-react.es.js +37 -34
  13. package/dist/annotorious-react.es.js.map +1 -1
  14. package/dist/annotorious-react.es10.js +15 -35
  15. package/dist/annotorious-react.es10.js.map +1 -1
  16. package/dist/annotorious-react.es11.js +6 -16
  17. package/dist/annotorious-react.es11.js.map +1 -1
  18. package/dist/annotorious-react.es12.js +8 -4
  19. package/dist/annotorious-react.es12.js.map +1 -1
  20. package/dist/annotorious-react.es13.js +272 -8
  21. package/dist/annotorious-react.es13.js.map +1 -1
  22. package/dist/annotorious-react.es14.js +9 -153
  23. package/dist/annotorious-react.es14.js.map +1 -1
  24. package/dist/annotorious-react.es15.js +193 -6
  25. package/dist/annotorious-react.es15.js.map +1 -1
  26. package/dist/annotorious-react.es16.js +327 -22113
  27. package/dist/annotorious-react.es16.js.map +1 -1
  28. package/dist/annotorious-react.es17.js +11 -32
  29. package/dist/annotorious-react.es17.js.map +1 -1
  30. package/dist/annotorious-react.es19.js +6 -10
  31. package/dist/annotorious-react.es19.js.map +1 -1
  32. package/dist/annotorious-react.es2.js +87 -68
  33. package/dist/annotorious-react.es2.js.map +1 -1
  34. package/dist/annotorious-react.es20.js +214 -207
  35. package/dist/annotorious-react.es20.js.map +1 -1
  36. package/dist/annotorious-react.es21.js +126 -2
  37. package/dist/annotorious-react.es21.js.map +1 -1
  38. package/dist/annotorious-react.es22.js +2 -2
  39. package/dist/annotorious-react.es23.js +5 -0
  40. package/dist/annotorious-react.es23.js.map +1 -0
  41. package/dist/annotorious-react.es24.js +10 -0
  42. package/dist/annotorious-react.es24.js.map +1 -0
  43. package/dist/annotorious-react.es25.js +8 -0
  44. package/dist/annotorious-react.es25.js.map +1 -0
  45. package/dist/annotorious-react.es26.js +10 -0
  46. package/dist/annotorious-react.es26.js.map +1 -0
  47. package/dist/annotorious-react.es27.js +129 -0
  48. package/dist/annotorious-react.es27.js.map +1 -0
  49. package/dist/annotorious-react.es28.js +466 -0
  50. package/dist/annotorious-react.es28.js.map +1 -0
  51. package/dist/annotorious-react.es3.js +10 -11
  52. package/dist/annotorious-react.es3.js.map +1 -1
  53. package/dist/annotorious-react.es4.js +90 -12
  54. package/dist/annotorious-react.es4.js.map +1 -1
  55. package/dist/annotorious-react.es5.js +21 -20
  56. package/dist/annotorious-react.es5.js.map +1 -1
  57. package/dist/annotorious-react.es8.js +27 -80
  58. package/dist/annotorious-react.es8.js.map +1 -1
  59. package/dist/annotorious-react.es9.js +103 -26
  60. package/dist/annotorious-react.es9.js.map +1 -1
  61. package/dist/index.d.ts +10 -10
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/openseadragon/OpenSeadragonAnnotationPopup.d.ts +9 -0
  64. package/dist/openseadragon/OpenSeadragonAnnotationPopup.d.ts.map +1 -0
  65. package/dist/openseadragon/OpenSeadragonAnnotator.d.ts +7 -8
  66. package/dist/openseadragon/OpenSeadragonAnnotator.d.ts.map +1 -1
  67. package/dist/openseadragon/OpenSeadragonViewer.d.ts +2 -3
  68. package/dist/openseadragon/OpenSeadragonViewer.d.ts.map +1 -1
  69. package/dist/openseadragon/index.d.ts +1 -1
  70. package/dist/openseadragon/index.d.ts.map +1 -1
  71. package/dist/openseadragon/setPosition.d.ts +1 -1
  72. package/dist/openseadragon/setPosition.d.ts.map +1 -1
  73. package/dist/utils/toClientRects.d.ts +6 -0
  74. package/dist/utils/toClientRects.d.ts.map +1 -0
  75. package/package.json +15 -13
  76. package/dist/AnnotoriousPopup.d.ts +0 -16
  77. package/dist/AnnotoriousPopup.d.ts.map +0 -1
  78. package/dist/annotorious-react.es6.js +0 -5
  79. package/dist/annotorious-react.es6.js.map +0 -1
  80. package/dist/annotorious-react.es7.js +0 -5
  81. package/dist/annotorious-react.es7.js.map +0 -1
  82. package/dist/openseadragon/OpenSeadragonPopup.d.ts +0 -11
  83. package/dist/openseadragon/OpenSeadragonPopup.d.ts.map +0 -1
@@ -0,0 +1,129 @@
1
+ const l = Math.min, a = Math.max, P = Math.round, M = Math.floor, O = (t) => ({
2
+ x: t,
3
+ y: t
4
+ }), m = {
5
+ left: "right",
6
+ right: "left",
7
+ bottom: "top",
8
+ top: "bottom"
9
+ }, p = {
10
+ start: "end",
11
+ end: "start"
12
+ };
13
+ function S(t, n, e) {
14
+ return a(t, l(n, e));
15
+ }
16
+ function w(t, n) {
17
+ return typeof t == "function" ? t(n) : t;
18
+ }
19
+ function f(t) {
20
+ return t.split("-")[0];
21
+ }
22
+ function g(t) {
23
+ return t.split("-")[1];
24
+ }
25
+ function h(t) {
26
+ return t === "x" ? "y" : "x";
27
+ }
28
+ function x(t) {
29
+ return t === "y" ? "height" : "width";
30
+ }
31
+ function b(t) {
32
+ return ["top", "bottom"].includes(f(t)) ? "y" : "x";
33
+ }
34
+ function d(t) {
35
+ return h(b(t));
36
+ }
37
+ function j(t, n, e) {
38
+ e === void 0 && (e = !1);
39
+ const r = g(t), o = d(t), i = x(o);
40
+ let c = o === "x" ? r === (e ? "end" : "start") ? "right" : "left" : r === "start" ? "bottom" : "top";
41
+ return n.reference[i] > n.floating[i] && (c = u(c)), [c, u(c)];
42
+ }
43
+ function C(t) {
44
+ const n = u(t);
45
+ return [s(t), n, s(n)];
46
+ }
47
+ function s(t) {
48
+ return t.replace(/start|end/g, (n) => p[n]);
49
+ }
50
+ function A(t, n, e) {
51
+ const r = ["left", "right"], o = ["right", "left"], i = ["top", "bottom"], c = ["bottom", "top"];
52
+ switch (t) {
53
+ case "top":
54
+ case "bottom":
55
+ return e ? n ? o : r : n ? r : o;
56
+ case "left":
57
+ case "right":
58
+ return n ? i : c;
59
+ default:
60
+ return [];
61
+ }
62
+ }
63
+ function L(t, n, e, r) {
64
+ const o = g(t);
65
+ let i = A(f(t), e === "start", r);
66
+ return o && (i = i.map((c) => c + "-" + o), n && (i = i.concat(i.map(s)))), i;
67
+ }
68
+ function u(t) {
69
+ return t.replace(/left|right|bottom|top/g, (n) => m[n]);
70
+ }
71
+ function y(t) {
72
+ return {
73
+ top: 0,
74
+ right: 0,
75
+ bottom: 0,
76
+ left: 0,
77
+ ...t
78
+ };
79
+ }
80
+ function E(t) {
81
+ return typeof t != "number" ? y(t) : {
82
+ top: t,
83
+ right: t,
84
+ bottom: t,
85
+ left: t
86
+ };
87
+ }
88
+ function R(t) {
89
+ const {
90
+ x: n,
91
+ y: e,
92
+ width: r,
93
+ height: o
94
+ } = t;
95
+ return {
96
+ width: r,
97
+ height: o,
98
+ top: e,
99
+ left: n,
100
+ right: n + r,
101
+ bottom: e + o,
102
+ x: n,
103
+ y: e
104
+ };
105
+ }
106
+ export {
107
+ S as clamp,
108
+ O as createCoords,
109
+ w as evaluate,
110
+ y as expandPaddingObject,
111
+ M as floor,
112
+ g as getAlignment,
113
+ d as getAlignmentAxis,
114
+ j as getAlignmentSides,
115
+ x as getAxisLength,
116
+ C as getExpandedPlacements,
117
+ s as getOppositeAlignmentPlacement,
118
+ h as getOppositeAxis,
119
+ L as getOppositeAxisPlacements,
120
+ u as getOppositePlacement,
121
+ E as getPaddingObject,
122
+ f as getSide,
123
+ b as getSideAxis,
124
+ a as max,
125
+ l as min,
126
+ R as rectToClientRect,
127
+ P as round
128
+ };
129
+ //# sourceMappingURL=annotorious-react.es27.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotorious-react.es27.js","sources":["../../../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs"],"sourcesContent":["/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n"],"names":["min","max","round","floor","createCoords","v","oppositeSideMap","oppositeAlignmentMap","clamp","start","value","end","evaluate","param","getSide","placement","getAlignment","getOppositeAxis","axis","getAxisLength","getSideAxis","getAlignmentAxis","getAlignmentSides","rects","rtl","alignment","alignmentAxis","length","mainAlignmentSide","getOppositePlacement","getExpandedPlacements","oppositePlacement","getOppositeAlignmentPlacement","getSideList","side","isStart","lr","rl","tb","bt","getOppositeAxisPlacements","flipAlignment","direction","list","expandPaddingObject","padding","getPaddingObject","rectToClientRect","rect","x","y","width","height"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,466 @@
1
+ import { evaluate as Y, getSide as F, getSideAxis as M, getOppositePlacement as Q, getExpandedPlacements as U, getOppositeAxisPlacements as Z, getAlignmentSides as tt, rectToClientRect as $, getPaddingObject as H, clamp as _, getAlignmentAxis as q, getAlignment as I, min as X, max as z, getOppositeAxis as et, getAxisLength as G } from "./annotorious-react.es27.js";
2
+ function W(i, s, l) {
3
+ let {
4
+ reference: e,
5
+ floating: o
6
+ } = i;
7
+ const t = M(s), f = q(s), a = G(f), d = F(s), g = t === "y", u = e.x + e.width / 2 - o.width / 2, c = e.y + e.height / 2 - o.height / 2, m = e[a] / 2 - o[a] / 2;
8
+ let n;
9
+ switch (d) {
10
+ case "top":
11
+ n = {
12
+ x: u,
13
+ y: e.y - o.height
14
+ };
15
+ break;
16
+ case "bottom":
17
+ n = {
18
+ x: u,
19
+ y: e.y + e.height
20
+ };
21
+ break;
22
+ case "right":
23
+ n = {
24
+ x: e.x + e.width,
25
+ y: c
26
+ };
27
+ break;
28
+ case "left":
29
+ n = {
30
+ x: e.x - o.width,
31
+ y: c
32
+ };
33
+ break;
34
+ default:
35
+ n = {
36
+ x: e.x,
37
+ y: e.y
38
+ };
39
+ }
40
+ switch (I(s)) {
41
+ case "start":
42
+ n[f] -= m * (l && g ? -1 : 1);
43
+ break;
44
+ case "end":
45
+ n[f] += m * (l && g ? -1 : 1);
46
+ break;
47
+ }
48
+ return n;
49
+ }
50
+ const st = async (i, s, l) => {
51
+ const {
52
+ placement: e = "bottom",
53
+ strategy: o = "absolute",
54
+ middleware: t = [],
55
+ platform: f
56
+ } = l, a = t.filter(Boolean), d = await (f.isRTL == null ? void 0 : f.isRTL(s));
57
+ let g = await f.getElementRects({
58
+ reference: i,
59
+ floating: s,
60
+ strategy: o
61
+ }), {
62
+ x: u,
63
+ y: c
64
+ } = W(g, e, d), m = e, n = {}, r = 0;
65
+ for (let h = 0; h < a.length; h++) {
66
+ const {
67
+ name: x,
68
+ fn: w
69
+ } = a[h], {
70
+ x: b,
71
+ y,
72
+ data: R,
73
+ reset: p
74
+ } = await w({
75
+ x: u,
76
+ y: c,
77
+ initialPlacement: e,
78
+ placement: m,
79
+ strategy: o,
80
+ middlewareData: n,
81
+ rects: g,
82
+ platform: f,
83
+ elements: {
84
+ reference: i,
85
+ floating: s
86
+ }
87
+ });
88
+ u = b ?? u, c = y ?? c, n = {
89
+ ...n,
90
+ [x]: {
91
+ ...n[x],
92
+ ...R
93
+ }
94
+ }, p && r <= 50 && (r++, typeof p == "object" && (p.placement && (m = p.placement), p.rects && (g = p.rects === !0 ? await f.getElementRects({
95
+ reference: i,
96
+ floating: s,
97
+ strategy: o
98
+ }) : p.rects), {
99
+ x: u,
100
+ y: c
101
+ } = W(g, m, d)), h = -1);
102
+ }
103
+ return {
104
+ x: u,
105
+ y: c,
106
+ placement: m,
107
+ strategy: o,
108
+ middlewareData: n
109
+ };
110
+ };
111
+ async function J(i, s) {
112
+ var l;
113
+ s === void 0 && (s = {});
114
+ const {
115
+ x: e,
116
+ y: o,
117
+ platform: t,
118
+ rects: f,
119
+ elements: a,
120
+ strategy: d
121
+ } = i, {
122
+ boundary: g = "clippingAncestors",
123
+ rootBoundary: u = "viewport",
124
+ elementContext: c = "floating",
125
+ altBoundary: m = !1,
126
+ padding: n = 0
127
+ } = Y(s, i), r = H(n), x = a[m ? c === "floating" ? "reference" : "floating" : c], w = $(await t.getClippingRect({
128
+ element: (l = await (t.isElement == null ? void 0 : t.isElement(x))) == null || l ? x : x.contextElement || await (t.getDocumentElement == null ? void 0 : t.getDocumentElement(a.floating)),
129
+ boundary: g,
130
+ rootBoundary: u,
131
+ strategy: d
132
+ })), b = c === "floating" ? {
133
+ x: e,
134
+ y: o,
135
+ width: f.floating.width,
136
+ height: f.floating.height
137
+ } : f.reference, y = await (t.getOffsetParent == null ? void 0 : t.getOffsetParent(a.floating)), R = await (t.isElement == null ? void 0 : t.isElement(y)) ? await (t.getScale == null ? void 0 : t.getScale(y)) || {
138
+ x: 1,
139
+ y: 1
140
+ } : {
141
+ x: 1,
142
+ y: 1
143
+ }, p = $(t.convertOffsetParentRelativeRectToViewportRelativeRect ? await t.convertOffsetParentRelativeRectToViewportRelativeRect({
144
+ elements: a,
145
+ rect: b,
146
+ offsetParent: y,
147
+ strategy: d
148
+ }) : b);
149
+ return {
150
+ top: (w.top - p.top + r.top) / R.y,
151
+ bottom: (p.bottom - w.bottom + r.bottom) / R.y,
152
+ left: (w.left - p.left + r.left) / R.x,
153
+ right: (p.right - w.right + r.right) / R.x
154
+ };
155
+ }
156
+ const ct = (i) => ({
157
+ name: "arrow",
158
+ options: i,
159
+ async fn(s) {
160
+ const {
161
+ x: l,
162
+ y: e,
163
+ placement: o,
164
+ rects: t,
165
+ platform: f,
166
+ elements: a,
167
+ middlewareData: d
168
+ } = s, {
169
+ element: g,
170
+ padding: u = 0
171
+ } = Y(i, s) || {};
172
+ if (g == null)
173
+ return {};
174
+ const c = H(u), m = {
175
+ x: l,
176
+ y: e
177
+ }, n = q(o), r = G(n), h = await f.getDimensions(g), x = n === "y", w = x ? "top" : "left", b = x ? "bottom" : "right", y = x ? "clientHeight" : "clientWidth", R = t.reference[r] + t.reference[n] - m[n] - t.floating[r], p = m[n] - t.reference[n], C = await (f.getOffsetParent == null ? void 0 : f.getOffsetParent(g));
178
+ let k = C ? C[y] : 0;
179
+ (!k || !await (f.isElement == null ? void 0 : f.isElement(C))) && (k = a.floating[y] || t.floating[r]);
180
+ const j = R / 2 - p / 2, T = k / 2 - h[r] / 2 - 1, v = X(c[w], T), L = X(c[b], T), S = v, B = k - h[r] - L, A = k / 2 - h[r] / 2 + j, D = _(S, A, B), P = !d.arrow && I(o) != null && A !== D && t.reference[r] / 2 - (A < S ? v : L) - h[r] / 2 < 0, O = P ? A < S ? A - S : A - B : 0;
181
+ return {
182
+ [n]: m[n] + O,
183
+ data: {
184
+ [n]: D,
185
+ centerOffset: A - D - O,
186
+ ...P && {
187
+ alignmentOffset: O
188
+ }
189
+ },
190
+ reset: P
191
+ };
192
+ }
193
+ }), lt = function(i) {
194
+ return i === void 0 && (i = {}), {
195
+ name: "flip",
196
+ options: i,
197
+ async fn(s) {
198
+ var l, e;
199
+ const {
200
+ placement: o,
201
+ middlewareData: t,
202
+ rects: f,
203
+ initialPlacement: a,
204
+ platform: d,
205
+ elements: g
206
+ } = s, {
207
+ mainAxis: u = !0,
208
+ crossAxis: c = !0,
209
+ fallbackPlacements: m,
210
+ fallbackStrategy: n = "bestFit",
211
+ fallbackAxisSideDirection: r = "none",
212
+ flipAlignment: h = !0,
213
+ ...x
214
+ } = Y(i, s);
215
+ if ((l = t.arrow) != null && l.alignmentOffset)
216
+ return {};
217
+ const w = F(o), b = M(a), y = F(a) === a, R = await (d.isRTL == null ? void 0 : d.isRTL(g.floating)), p = m || (y || !h ? [Q(a)] : U(a)), C = r !== "none";
218
+ !m && C && p.push(...Z(a, h, r, R));
219
+ const k = [a, ...p], j = await J(s, x), T = [];
220
+ let v = ((e = t.flip) == null ? void 0 : e.overflows) || [];
221
+ if (u && T.push(j[w]), c) {
222
+ const A = tt(o, f, R);
223
+ T.push(j[A[0]], j[A[1]]);
224
+ }
225
+ if (v = [...v, {
226
+ placement: o,
227
+ overflows: T
228
+ }], !T.every((A) => A <= 0)) {
229
+ var L, S;
230
+ const A = (((L = t.flip) == null ? void 0 : L.index) || 0) + 1, D = k[A];
231
+ if (D)
232
+ return {
233
+ data: {
234
+ index: A,
235
+ overflows: v
236
+ },
237
+ reset: {
238
+ placement: D
239
+ }
240
+ };
241
+ let P = (S = v.filter((O) => O.overflows[0] <= 0).sort((O, E) => O.overflows[1] - E.overflows[1])[0]) == null ? void 0 : S.placement;
242
+ if (!P)
243
+ switch (n) {
244
+ case "bestFit": {
245
+ var B;
246
+ const O = (B = v.filter((E) => {
247
+ if (C) {
248
+ const V = M(E.placement);
249
+ return V === b || // Create a bias to the `y` side axis due to horizontal
250
+ // reading directions favoring greater width.
251
+ V === "y";
252
+ }
253
+ return !0;
254
+ }).map((E) => [E.placement, E.overflows.filter((V) => V > 0).reduce((V, N) => V + N, 0)]).sort((E, V) => E[1] - V[1])[0]) == null ? void 0 : B[0];
255
+ O && (P = O);
256
+ break;
257
+ }
258
+ case "initialPlacement":
259
+ P = a;
260
+ break;
261
+ }
262
+ if (o !== P)
263
+ return {
264
+ reset: {
265
+ placement: P
266
+ }
267
+ };
268
+ }
269
+ return {};
270
+ }
271
+ };
272
+ };
273
+ function K(i) {
274
+ const s = X(...i.map((t) => t.left)), l = X(...i.map((t) => t.top)), e = z(...i.map((t) => t.right)), o = z(...i.map((t) => t.bottom));
275
+ return {
276
+ x: s,
277
+ y: l,
278
+ width: e - s,
279
+ height: o - l
280
+ };
281
+ }
282
+ function nt(i) {
283
+ const s = i.slice().sort((o, t) => o.y - t.y), l = [];
284
+ let e = null;
285
+ for (let o = 0; o < s.length; o++) {
286
+ const t = s[o];
287
+ !e || t.y - e.y > e.height / 2 ? l.push([t]) : l[l.length - 1].push(t), e = t;
288
+ }
289
+ return l.map((o) => $(K(o)));
290
+ }
291
+ const at = function(i) {
292
+ return i === void 0 && (i = {}), {
293
+ name: "inline",
294
+ options: i,
295
+ async fn(s) {
296
+ const {
297
+ placement: l,
298
+ elements: e,
299
+ rects: o,
300
+ platform: t,
301
+ strategy: f
302
+ } = s, {
303
+ padding: a = 2,
304
+ x: d,
305
+ y: g
306
+ } = Y(i, s), u = Array.from(await (t.getClientRects == null ? void 0 : t.getClientRects(e.reference)) || []), c = nt(u), m = $(K(u)), n = H(a);
307
+ function r() {
308
+ if (c.length === 2 && c[0].left > c[1].right && d != null && g != null)
309
+ return c.find((x) => d > x.left - n.left && d < x.right + n.right && g > x.top - n.top && g < x.bottom + n.bottom) || m;
310
+ if (c.length >= 2) {
311
+ if (M(l) === "y") {
312
+ const v = c[0], L = c[c.length - 1], S = F(l) === "top", B = v.top, A = L.bottom, D = S ? v.left : L.left, P = S ? v.right : L.right, O = P - D, E = A - B;
313
+ return {
314
+ top: B,
315
+ bottom: A,
316
+ left: D,
317
+ right: P,
318
+ width: O,
319
+ height: E,
320
+ x: D,
321
+ y: B
322
+ };
323
+ }
324
+ const x = F(l) === "left", w = z(...c.map((v) => v.right)), b = X(...c.map((v) => v.left)), y = c.filter((v) => x ? v.left === b : v.right === w), R = y[0].top, p = y[y.length - 1].bottom, C = b, k = w, j = k - C, T = p - R;
325
+ return {
326
+ top: R,
327
+ bottom: p,
328
+ left: C,
329
+ right: k,
330
+ width: j,
331
+ height: T,
332
+ x: C,
333
+ y: R
334
+ };
335
+ }
336
+ return m;
337
+ }
338
+ const h = await t.getElementRects({
339
+ reference: {
340
+ getBoundingClientRect: r
341
+ },
342
+ floating: e.floating,
343
+ strategy: f
344
+ });
345
+ return o.reference.x !== h.reference.x || o.reference.y !== h.reference.y || o.reference.width !== h.reference.width || o.reference.height !== h.reference.height ? {
346
+ reset: {
347
+ rects: h
348
+ }
349
+ } : {};
350
+ }
351
+ };
352
+ };
353
+ async function it(i, s) {
354
+ const {
355
+ placement: l,
356
+ platform: e,
357
+ elements: o
358
+ } = i, t = await (e.isRTL == null ? void 0 : e.isRTL(o.floating)), f = F(l), a = I(l), d = M(l) === "y", g = ["left", "top"].includes(f) ? -1 : 1, u = t && d ? -1 : 1, c = Y(s, i);
359
+ let {
360
+ mainAxis: m,
361
+ crossAxis: n,
362
+ alignmentAxis: r
363
+ } = typeof c == "number" ? {
364
+ mainAxis: c,
365
+ crossAxis: 0,
366
+ alignmentAxis: null
367
+ } : {
368
+ mainAxis: 0,
369
+ crossAxis: 0,
370
+ alignmentAxis: null,
371
+ ...c
372
+ };
373
+ return a && typeof r == "number" && (n = a === "end" ? r * -1 : r), d ? {
374
+ x: n * u,
375
+ y: m * g
376
+ } : {
377
+ x: m * g,
378
+ y: n * u
379
+ };
380
+ }
381
+ const rt = function(i) {
382
+ return i === void 0 && (i = 0), {
383
+ name: "offset",
384
+ options: i,
385
+ async fn(s) {
386
+ var l, e;
387
+ const {
388
+ x: o,
389
+ y: t,
390
+ placement: f,
391
+ middlewareData: a
392
+ } = s, d = await it(s, i);
393
+ return f === ((l = a.offset) == null ? void 0 : l.placement) && (e = a.arrow) != null && e.alignmentOffset ? {} : {
394
+ x: o + d.x,
395
+ y: t + d.y,
396
+ data: {
397
+ ...d,
398
+ placement: f
399
+ }
400
+ };
401
+ }
402
+ };
403
+ }, ft = function(i) {
404
+ return i === void 0 && (i = {}), {
405
+ name: "shift",
406
+ options: i,
407
+ async fn(s) {
408
+ const {
409
+ x: l,
410
+ y: e,
411
+ placement: o
412
+ } = s, {
413
+ mainAxis: t = !0,
414
+ crossAxis: f = !1,
415
+ limiter: a = {
416
+ fn: (x) => {
417
+ let {
418
+ x: w,
419
+ y: b
420
+ } = x;
421
+ return {
422
+ x: w,
423
+ y: b
424
+ };
425
+ }
426
+ },
427
+ ...d
428
+ } = Y(i, s), g = {
429
+ x: l,
430
+ y: e
431
+ }, u = await J(s, d), c = M(F(o)), m = et(c);
432
+ let n = g[m], r = g[c];
433
+ if (t) {
434
+ const x = m === "y" ? "top" : "left", w = m === "y" ? "bottom" : "right", b = n + u[x], y = n - u[w];
435
+ n = _(b, n, y);
436
+ }
437
+ if (f) {
438
+ const x = c === "y" ? "top" : "left", w = c === "y" ? "bottom" : "right", b = r + u[x], y = r - u[w];
439
+ r = _(b, r, y);
440
+ }
441
+ const h = a.fn({
442
+ ...s,
443
+ [m]: n,
444
+ [c]: r
445
+ });
446
+ return {
447
+ ...h,
448
+ data: {
449
+ x: h.x - l,
450
+ y: h.y - e
451
+ }
452
+ };
453
+ }
454
+ };
455
+ };
456
+ export {
457
+ ct as arrow,
458
+ st as computePosition,
459
+ J as detectOverflow,
460
+ lt as flip,
461
+ at as inline,
462
+ rt as offset,
463
+ $ as rectToClientRect,
464
+ ft as shift
465
+ };
466
+ //# sourceMappingURL=annotorious-react.es28.js.map