@annotorious/svelte 3.0.0-rc.27 → 3.0.0-rc.29

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.
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es11.js","sources":["../../../node_modules/svelte/src/shared/version.js"],"sourcesContent":["// generated during release, do not modify\n\n/**\n * The current version, as set in package.json.\n *\n * https://svelte.dev/docs/svelte-compiler#svelte-version\n * @type {string}\n */\nexport const VERSION = '4.2.17';\nexport const PUBLIC_VERSION = '4';\n"],"names":["PUBLIC_VERSION"],"mappings":"AASY,MAACA,IAAiB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"annotorious-svelte.es11.js","sources":["../../../node_modules/svelte/src/shared/version.js"],"sourcesContent":["// generated during release, do not modify\n\n/**\n * The current version, as set in package.json.\n *\n * https://svelte.dev/docs/svelte-compiler#svelte-version\n * @type {string}\n */\nexport const VERSION = '4.2.18';\nexport const PUBLIC_VERSION = '4';\n"],"names":["PUBLIC_VERSION"],"mappings":"AASY,MAACA,IAAiB;","x_google_ignoreList":[0]}
@@ -1,126 +1,58 @@
1
- var G = { dragStart: !0 }, oe = (t, s, i) => Math.min(Math.max(t, s), i), J = (t) => typeof t == "string", ue = ([t, s], i, c) => {
2
- const u = (w, f) => f === 0 ? 0 : Math.ceil(w / f) * f;
3
- return [u(i, t), u(c, s)];
4
- }, ie = (t, s) => t.some((i) => s.some((c) => i.contains(c)));
5
- function K(t, s) {
6
- if (t === void 0)
7
- return;
8
- if (O(t))
9
- return t.getBoundingClientRect();
10
- if (typeof t == "object") {
11
- const { top: c = 0, left: u = 0, right: w = 0, bottom: f = 0 } = t;
12
- return { top: c, right: window.innerWidth - w, bottom: window.innerHeight - f, left: u };
13
- }
14
- if (t === "parent")
15
- return s.parentNode.getBoundingClientRect();
16
- const i = document.querySelector(t);
17
- if (i === null)
18
- throw new Error("The selector provided for bound doesn't exists in the document.");
19
- return i.getBoundingClientRect();
1
+ import { run_all as i } from "./annotorious-svelte.es5.js";
2
+ import { set_current_component as a, current_component as u } from "./annotorious-svelte.es8.js";
3
+ const r = [], h = [];
4
+ let c = [];
5
+ const d = [], p = /* @__PURE__ */ Promise.resolve();
6
+ let f = !1;
7
+ function w() {
8
+ f || (f = !0, p.then(m));
9
+ }
10
+ function _(e) {
11
+ c.push(e);
20
12
  }
21
- var L = (t, s, i) => t.style.setProperty(s, i), O = (t) => t instanceof HTMLElement, fe = (t, s = {}) => {
22
- let i, c, { bounds: u, axis: w = "both", gpuAcceleration: f = !0, legacyTranslate: Q = !0, transform: T, applyUserSelectHack: X = !0, disabled: V = !1, ignoreMultitouch: Y = !1, recomputeBounds: x = G, grid: q, position: p, cancel: N, handle: D, defaultClass: M = "neodrag", defaultClassDragging: P = "neodrag-dragging", defaultClassDragged: S = "neodrag-dragged", defaultPosition: ae = { x: 0, y: 0 }, onDragStart: se, onDrag: le, onDragEnd: de } = s, B = !1, y = 0, b = 0, A = 0, C = 0, k = 0, z = 0, { x: $, y: R } = p ? { x: (p == null ? void 0 : p.x) ?? 0, y: (p == null ? void 0 : p.y) ?? 0 } : ae;
23
- W($, R);
24
- let g, v, E, I, Z, _ = "", ce = !!p;
25
- x = { ...G, ...x };
26
- let H = /* @__PURE__ */ new Set();
27
- const U = document.body.style, m = t.classList;
28
- function W(e = y, r = b) {
29
- if (!T) {
30
- if (Q) {
31
- let a = `${+e}px, ${+r}px`;
32
- return L(t, "transform", f ? `translate3d(${a}, 0)` : `translate(${a})`);
13
+ const s = /* @__PURE__ */ new Set();
14
+ let l = 0;
15
+ function m() {
16
+ if (l !== 0)
17
+ return;
18
+ const e = u;
19
+ do {
20
+ try {
21
+ for (; l < r.length; ) {
22
+ const t = r[l];
23
+ l++, a(t), g(t.$$);
33
24
  }
34
- return L(t, "translate", `${+e}px ${+r}px ${f ? "1px" : ""}`);
35
- }
36
- const o = T({ offsetX: e, offsetY: r, rootNode: t });
37
- J(o) && L(t, "transform", o);
38
- }
39
- const j = (e, r) => {
40
- const o = { offsetX: y, offsetY: b, rootNode: t, currentNode: Z };
41
- t.dispatchEvent(new CustomEvent(e, { detail: o })), r == null || r(o);
42
- }, F = addEventListener;
43
- F("pointerdown", te, !1), F("pointerup", ne, !1), F("pointermove", re, !1), L(t, "touch-action", "none");
44
- const ee = () => {
45
- let e = t.offsetWidth / v.width;
46
- return isNaN(e) && (e = 1), e;
47
- };
48
- function te(e) {
49
- if (V || e.button === 2)
50
- return;
51
- if (H.add(e.pointerId), Y && H.size > 1)
52
- return e.preventDefault();
53
- if (x.dragStart && (g = K(u, t)), J(D) && J(N) && D === N)
54
- throw new Error("`handle` selector can't be same as `cancel` selector");
55
- if (m.add(M), E = function(n, d) {
56
- if (!n)
57
- return [d];
58
- if (O(n))
59
- return [n];
60
- if (Array.isArray(n))
61
- return n;
62
- const h = d.querySelectorAll(n);
63
- if (h === null)
64
- throw new Error("Selector passed for `handle` option should be child of the element on which the action is applied");
65
- return Array.from(h.values());
66
- }(D, t), I = function(n, d) {
67
- if (!n)
68
- return [];
69
- if (O(n))
70
- return [n];
71
- if (Array.isArray(n))
72
- return n;
73
- const h = d.querySelectorAll(n);
74
- if (h === null)
75
- throw new Error("Selector passed for `cancel` option should be child of the element on which the action is applied");
76
- return Array.from(h.values());
77
- }(N, t), i = /(both|x)/.test(w), c = /(both|y)/.test(w), ie(I, E))
78
- throw new Error("Element being dragged can't be a child of the element on which `cancel` is applied");
79
- const r = e.composedPath()[0];
80
- if (!E.some((n) => {
81
- var d;
82
- return n.contains(r) || ((d = n.shadowRoot) == null ? void 0 : d.contains(r));
83
- }) || ie(I, [r]))
84
- return;
85
- Z = E.length === 1 ? t : E.find((n) => n.contains(r)), B = !0, v = t.getBoundingClientRect(), X && (_ = U.userSelect, U.userSelect = "none"), j("neodrag:start", se);
86
- const { clientX: o, clientY: a } = e, l = ee();
87
- i && (A = o - $ / l), c && (C = a - R / l), g && (k = o - v.left, z = a - v.top);
88
- }
89
- function ne(e) {
90
- H.delete(e.pointerId), B && (x.dragEnd && (g = K(u, t)), m.remove(P), m.add(S), X && (U.userSelect = _), j("neodrag:end", de), i && (A = y), c && (C = b), B = !1);
91
- }
92
- function re(e) {
93
- if (!B || Y && H.size > 1)
94
- return;
95
- x.drag && (g = K(u, t)), m.add(P), e.preventDefault(), v = t.getBoundingClientRect();
96
- let r = e.clientX, o = e.clientY;
97
- const a = ee();
98
- if (g) {
99
- const l = { left: g.left + k, top: g.top + z, right: g.right + k - v.width, bottom: g.bottom + z - v.height };
100
- r = oe(r, l.left, l.right), o = oe(o, l.top, l.bottom);
25
+ } catch (t) {
26
+ throw r.length = 0, l = 0, t;
101
27
  }
102
- if (Array.isArray(q)) {
103
- let [l, n] = q;
104
- if (isNaN(+l) || l < 0)
105
- throw new Error("1st argument of `grid` must be a valid positive number");
106
- if (isNaN(+n) || n < 0)
107
- throw new Error("2nd argument of `grid` must be a valid positive number");
108
- let d = r - A, h = o - C;
109
- [d, h] = ue([l / a, n / a], d, h), r = A + d, o = C + h;
28
+ for (a(null), r.length = 0, l = 0; h.length; ) h.pop()();
29
+ for (let t = 0; t < c.length; t += 1) {
30
+ const n = c[t];
31
+ s.has(n) || (s.add(n), n());
110
32
  }
111
- i && (y = Math.round((r - A) * a)), c && (b = Math.round((o - C) * a)), $ = y, R = b, j("neodrag", le), W();
33
+ c.length = 0;
34
+ } while (r.length);
35
+ for (; d.length; )
36
+ d.pop()();
37
+ f = !1, s.clear(), a(e);
38
+ }
39
+ function g(e) {
40
+ if (e.fragment !== null) {
41
+ e.update(), i(e.before_update);
42
+ const t = e.dirty;
43
+ e.dirty = [-1], e.fragment && e.fragment.p(e.ctx, t), e.after_update.forEach(_);
112
44
  }
113
- return { destroy: () => {
114
- const e = removeEventListener;
115
- e("pointerdown", te, !1), e("pointerup", ne, !1), e("pointermove", re, !1);
116
- }, update: (e) => {
117
- var o, a;
118
- w = e.axis || "both", V = e.disabled ?? !1, Y = e.ignoreMultitouch ?? !1, D = e.handle, u = e.bounds, x = e.recomputeBounds ?? G, N = e.cancel, X = e.applyUserSelectHack ?? !0, q = e.grid, f = e.gpuAcceleration ?? !0, Q = e.legacyTranslate ?? !0, T = e.transform;
119
- const r = m.contains(S);
120
- m.remove(M, S), M = e.defaultClass ?? "neodrag", P = e.defaultClassDragging ?? "neodrag-dragging", S = e.defaultClassDragged ?? "neodrag-dragged", m.add(M), r && m.add(S), ce && ($ = y = ((o = e.position) == null ? void 0 : o.x) ?? y, R = b = ((a = e.position) == null ? void 0 : a.y) ?? b, W());
121
- } };
122
- };
45
+ }
46
+ function y(e) {
47
+ const t = [], n = [];
48
+ c.forEach((o) => e.indexOf(o) === -1 ? t.push(o) : n.push(o)), n.forEach((o) => o()), c = t;
49
+ }
123
50
  export {
124
- fe as draggable
51
+ _ as add_render_callback,
52
+ h as binding_callbacks,
53
+ r as dirty_components,
54
+ m as flush,
55
+ y as flush_render_callbacks,
56
+ w as schedule_update
125
57
  };
126
58
  //# sourceMappingURL=annotorious-svelte.es12.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es12.js","sources":["../../../node_modules/@neodrag/svelte/dist/min/index.js"],"sourcesContent":["var e={dragStart:!0},t=(e,t,n)=>Math.min(Math.max(e,t),n),n=e=>\"string\"==typeof e,r=([e,t],n,r)=>{const o=(e,t)=>0===t?0:Math.ceil(e/t)*t;return[o(n,e),o(r,t)]};var o=(e,t)=>e.some((e=>t.some((t=>e.contains(t)))));function i(e,t){if(void 0===e)return;if(s(e))return e.getBoundingClientRect();if(\"object\"==typeof e){const{top:t=0,left:n=0,right:r=0,bottom:o=0}=e;return{top:t,right:window.innerWidth-r,bottom:window.innerHeight-o,left:n}}if(\"parent\"===e)return t.parentNode.getBoundingClientRect();const n=document.querySelector(e);if(null===n)throw new Error(\"The selector provided for bound doesn't exists in the document.\");return n.getBoundingClientRect()}var a=(e,t,n)=>e.style.setProperty(t,n),s=e=>e instanceof HTMLElement,d=(d,l={})=>{let c,u,{bounds:f,axis:g=\"both\",gpuAcceleration:h=!0,legacyTranslate:p=!0,transform:m,applyUserSelectHack:w=!0,disabled:y=!1,ignoreMultitouch:b=!1,recomputeBounds:v=e,grid:x,position:E,cancel:S,handle:A,defaultClass:C=\"neodrag\",defaultClassDragging:N=\"neodrag-dragging\",defaultClassDragged:D=\"neodrag-dragged\",defaultPosition:M={x:0,y:0},onDragStart:B,onDrag:$,onDragEnd:R}=l,H=!1,L=0,T=0,X=0,Y=0,q=0,P=0,{x:k,y:z}=E?{x:E?.x??0,y:E?.y??0}:M;V(k,z);let I,U,W,j,F,G=\"\",J=!!E;v={...e,...v};let K=new Set;const O=document.body.style,Q=d.classList;function V(e=L,t=T){if(!m){if(p){let n=`${+e}px, ${+t}px`;return a(d,\"transform\",h?`translate3d(${n}, 0)`:`translate(${n})`)}return a(d,\"translate\",`${+e}px ${+t}px ${h?\"1px\":\"\"}`)}const r=m({offsetX:e,offsetY:t,rootNode:d});n(r)&&a(d,\"transform\",r)}const Z=(e,t)=>{const n={offsetX:L,offsetY:T,rootNode:d,currentNode:F};d.dispatchEvent(new CustomEvent(e,{detail:n})),t?.(n)};const _=addEventListener;_(\"pointerdown\",te,!1),_(\"pointerup\",ne,!1),_(\"pointermove\",re,!1),a(d,\"touch-action\",\"none\");const ee=()=>{let e=d.offsetWidth/U.width;return isNaN(e)&&(e=1),e};function te(e){if(y)return;if(2===e.button)return;if(K.add(e.pointerId),b&&K.size>1)return e.preventDefault();if(v.dragStart&&(I=i(f,d)),n(A)&&n(S)&&A===S)throw new Error(\"`handle` selector can't be same as `cancel` selector\");if(Q.add(C),W=function(e,t){if(!e)return[t];if(s(e))return[e];if(Array.isArray(e))return e;const n=t.querySelectorAll(e);if(null===n)throw new Error(\"Selector passed for `handle` option should be child of the element on which the action is applied\");return Array.from(n.values())}(A,d),j=function(e,t){if(!e)return[];if(s(e))return[e];if(Array.isArray(e))return e;const n=t.querySelectorAll(e);if(null===n)throw new Error(\"Selector passed for `cancel` option should be child of the element on which the action is applied\");return Array.from(n.values())}(S,d),c=/(both|x)/.test(g),u=/(both|y)/.test(g),o(j,W))throw new Error(\"Element being dragged can't be a child of the element on which `cancel` is applied\");const t=e.composedPath()[0];if(!W.some((e=>e.contains(t)||e.shadowRoot?.contains(t)))||o(j,[t]))return;F=1===W.length?d:W.find((e=>e.contains(t))),H=!0,U=d.getBoundingClientRect(),w&&(G=O.userSelect,O.userSelect=\"none\"),Z(\"neodrag:start\",B);const{clientX:r,clientY:a}=e,l=ee();c&&(X=r-k/l),u&&(Y=a-z/l),I&&(q=r-U.left,P=a-U.top)}function ne(e){K.delete(e.pointerId),H&&(v.dragEnd&&(I=i(f,d)),Q.remove(N),Q.add(D),w&&(O.userSelect=G),Z(\"neodrag:end\",R),c&&(X=L),u&&(Y=T),H=!1)}function re(e){if(!H||b&&K.size>1)return;v.drag&&(I=i(f,d)),Q.add(N),e.preventDefault(),U=d.getBoundingClientRect();let n=e.clientX,o=e.clientY;const a=ee();if(I){const e={left:I.left+q,top:I.top+P,right:I.right+q-U.width,bottom:I.bottom+P-U.height};n=t(n,e.left,e.right),o=t(o,e.top,e.bottom)}if(Array.isArray(x)){let[e,t]=x;if(isNaN(+e)||e<0)throw new Error(\"1st argument of `grid` must be a valid positive number\");if(isNaN(+t)||t<0)throw new Error(\"2nd argument of `grid` must be a valid positive number\");let i=n-X,s=o-Y;[i,s]=r([e/a,t/a],i,s),n=X+i,o=Y+s}c&&(L=Math.round((n-X)*a)),u&&(T=Math.round((o-Y)*a)),k=L,z=T,Z(\"neodrag\",$),V()}return{destroy:()=>{const e=removeEventListener;e(\"pointerdown\",te,!1),e(\"pointerup\",ne,!1),e(\"pointermove\",re,!1)},update:t=>{g=t.axis||\"both\",y=t.disabled??!1,b=t.ignoreMultitouch??!1,A=t.handle,f=t.bounds,v=t.recomputeBounds??e,S=t.cancel,w=t.applyUserSelectHack??!0,x=t.grid,h=t.gpuAcceleration??!0,p=t.legacyTranslate??!0,m=t.transform;const n=Q.contains(D);Q.remove(C,D),C=t.defaultClass??\"neodrag\",N=t.defaultClassDragging??\"neodrag-dragging\",D=t.defaultClassDragged??\"neodrag-dragged\",Q.add(C),n&&Q.add(D),J&&(k=L=t.position?.x??L,z=T=t.position?.y??T,V())}}};\n//!THIS IS HACK, WE WANNA IMPORT THE TYPE WHEN THE ISSUE IS FIXED LATER\nexport{d as draggable};"],"names":["e","t","n","r","o","i","s","a","d","l","c","u","f","g","h","p","m","w","y","b","v","x","E","S","A","C","N","D","M","B","$","R","H","L","T","X","Y","q","P","k","z","V","I","U","W","j","F","G","J","K","O","Q","Z","_","_a","_b"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"annotorious-svelte.es12.js","sources":["../../../node_modules/svelte/src/runtime/internal/scheduler.js"],"sourcesContent":["import { run_all } from './utils.js';\nimport { current_component, set_current_component } from './lifecycle.js';\n\nexport const dirty_components = [];\nexport const intros = { enabled: false };\nexport const binding_callbacks = [];\n\nlet render_callbacks = [];\n\nconst flush_callbacks = [];\n\nconst resolved_promise = /* @__PURE__ */ Promise.resolve();\n\nlet update_scheduled = false;\n\n/** @returns {void} */\nexport function schedule_update() {\n\tif (!update_scheduled) {\n\t\tupdate_scheduled = true;\n\t\tresolved_promise.then(flush);\n\t}\n}\n\n/** @returns {Promise<void>} */\nexport function tick() {\n\tschedule_update();\n\treturn resolved_promise;\n}\n\n/** @returns {void} */\nexport function add_render_callback(fn) {\n\trender_callbacks.push(fn);\n}\n\n/** @returns {void} */\nexport function add_flush_callback(fn) {\n\tflush_callbacks.push(fn);\n}\n\n// flush() calls callbacks in this order:\n// 1. All beforeUpdate callbacks, in order: parents before children\n// 2. All bind:this callbacks, in reverse order: children before parents.\n// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT\n// for afterUpdates called during the initial onMount, which are called in\n// reverse order: children before parents.\n// Since callbacks might update component values, which could trigger another\n// call to flush(), the following steps guard against this:\n// 1. During beforeUpdate, any updated components will be added to the\n// dirty_components array and will cause a reentrant call to flush(). Because\n// the flush index is kept outside the function, the reentrant call will pick\n// up where the earlier call left off and go through all dirty components. The\n// current_component value is saved and restored so that the reentrant call will\n// not interfere with the \"parent\" flush() call.\n// 2. bind:this callbacks cannot trigger new flush() calls.\n// 3. During afterUpdate, any updated components will NOT have their afterUpdate\n// callback called a second time; the seen_callbacks set, outside the flush()\n// function, guarantees this behavior.\nconst seen_callbacks = new Set();\n\nlet flushidx = 0; // Do *not* move this inside the flush() function\n\n/** @returns {void} */\nexport function flush() {\n\t// Do not reenter flush while dirty components are updated, as this can\n\t// result in an infinite loop. Instead, let the inner flush handle it.\n\t// Reentrancy is ok afterwards for bindings etc.\n\tif (flushidx !== 0) {\n\t\treturn;\n\t}\n\tconst saved_component = current_component;\n\tdo {\n\t\t// first, call beforeUpdate functions\n\t\t// and update components\n\t\ttry {\n\t\t\twhile (flushidx < dirty_components.length) {\n\t\t\t\tconst component = dirty_components[flushidx];\n\t\t\t\tflushidx++;\n\t\t\t\tset_current_component(component);\n\t\t\t\tupdate(component.$$);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t// reset dirty state to not end up in a deadlocked state and then rethrow\n\t\t\tdirty_components.length = 0;\n\t\t\tflushidx = 0;\n\t\t\tthrow e;\n\t\t}\n\t\tset_current_component(null);\n\t\tdirty_components.length = 0;\n\t\tflushidx = 0;\n\t\twhile (binding_callbacks.length) binding_callbacks.pop()();\n\t\t// then, once components are updated, call\n\t\t// afterUpdate functions. This may cause\n\t\t// subsequent updates...\n\t\tfor (let i = 0; i < render_callbacks.length; i += 1) {\n\t\t\tconst callback = render_callbacks[i];\n\t\t\tif (!seen_callbacks.has(callback)) {\n\t\t\t\t// ...so guard against infinite loops\n\t\t\t\tseen_callbacks.add(callback);\n\t\t\t\tcallback();\n\t\t\t}\n\t\t}\n\t\trender_callbacks.length = 0;\n\t} while (dirty_components.length);\n\twhile (flush_callbacks.length) {\n\t\tflush_callbacks.pop()();\n\t}\n\tupdate_scheduled = false;\n\tseen_callbacks.clear();\n\tset_current_component(saved_component);\n}\n\n/** @returns {void} */\nfunction update($$) {\n\tif ($$.fragment !== null) {\n\t\t$$.update();\n\t\trun_all($$.before_update);\n\t\tconst dirty = $$.dirty;\n\t\t$$.dirty = [-1];\n\t\t$$.fragment && $$.fragment.p($$.ctx, dirty);\n\t\t$$.after_update.forEach(add_render_callback);\n\t}\n}\n\n/**\n * Useful for example to execute remaining `afterUpdate` callbacks before executing `destroy`.\n * @param {Function[]} fns\n * @returns {void}\n */\nexport function flush_render_callbacks(fns) {\n\tconst filtered = [];\n\tconst targets = [];\n\trender_callbacks.forEach((c) => (fns.indexOf(c) === -1 ? filtered.push(c) : targets.push(c)));\n\ttargets.forEach((c) => c());\n\trender_callbacks = filtered;\n}\n"],"names":["dirty_components","binding_callbacks","render_callbacks","flush_callbacks","resolved_promise","update_scheduled","schedule_update","flush","add_render_callback","fn","seen_callbacks","flushidx","saved_component","current_component","component","set_current_component","update","e","i","callback","$$","run_all","dirty","flush_render_callbacks","fns","filtered","targets","c"],"mappings":";;AAGY,MAACA,IAAmB,CAAG,GAEtBC,IAAoB,CAAG;AAEpC,IAAIC,IAAmB,CAAA;AAEvB,MAAMC,IAAkB,CAAA,GAElBC,IAAmC,wBAAQ;AAEjD,IAAIC,IAAmB;AAGhB,SAASC,IAAkB;AACjC,EAAKD,MACJA,IAAmB,IACnBD,EAAiB,KAAKG,CAAK;AAE7B;AASO,SAASC,EAAoBC,GAAI;AACvC,EAAAP,EAAiB,KAAKO,CAAE;AACzB;AAyBA,MAAMC,IAAiB,oBAAI;AAE3B,IAAIC,IAAW;AAGR,SAASJ,IAAQ;AAIvB,MAAII,MAAa;AAChB;AAED,QAAMC,IAAkBC;AACxB,KAAG;AAGF,QAAI;AACH,aAAOF,IAAWX,EAAiB,UAAQ;AAC1C,cAAMc,IAAYd,EAAiBW,CAAQ;AAC3C,QAAAA,KACAI,EAAsBD,CAAS,GAC/BE,EAAOF,EAAU,EAAE;AAAA,MACnB;AAAA,IACD,SAAQG,GAAG;AAEX,YAAAjB,EAAiB,SAAS,GAC1BW,IAAW,GACLM;AAAA,IACN;AAID,SAHAF,EAAsB,IAAI,GAC1Bf,EAAiB,SAAS,GAC1BW,IAAW,GACJV,EAAkB,SAAQ,CAAAA,EAAkB,IAAK,EAAA;AAIxD,aAASiB,IAAI,GAAGA,IAAIhB,EAAiB,QAAQgB,KAAK,GAAG;AACpD,YAAMC,IAAWjB,EAAiBgB,CAAC;AACnC,MAAKR,EAAe,IAAIS,CAAQ,MAE/BT,EAAe,IAAIS,CAAQ,GAC3BA;IAED;AACD,IAAAjB,EAAiB,SAAS;AAAA,EAC5B,SAAUF,EAAiB;AAC1B,SAAOG,EAAgB;AACtB,IAAAA,EAAgB,IAAG;AAEpB,EAAAE,IAAmB,IACnBK,EAAe,MAAK,GACpBK,EAAsBH,CAAe;AACtC;AAGA,SAASI,EAAOI,GAAI;AACnB,MAAIA,EAAG,aAAa,MAAM;AACzB,IAAAA,EAAG,OAAM,GACTC,EAAQD,EAAG,aAAa;AACxB,UAAME,IAAQF,EAAG;AACjB,IAAAA,EAAG,QAAQ,CAAC,EAAE,GACdA,EAAG,YAAYA,EAAG,SAAS,EAAEA,EAAG,KAAKE,CAAK,GAC1CF,EAAG,aAAa,QAAQZ,CAAmB;AAAA,EAC3C;AACF;AAOO,SAASe,EAAuBC,GAAK;AAC3C,QAAMC,IAAW,CAAA,GACXC,IAAU,CAAA;AAChB,EAAAxB,EAAiB,QAAQ,CAACyB,MAAOH,EAAI,QAAQG,CAAC,MAAM,KAAKF,EAAS,KAAKE,CAAC,IAAID,EAAQ,KAAKC,CAAC,CAAE,GAC5FD,EAAQ,QAAQ,CAACC,MAAMA,EAAG,CAAA,GAC1BzB,IAAmBuB;AACpB;","x_google_ignoreList":[0]}
@@ -1,2 +1,106 @@
1
-
1
+ var G = { dragStart: !0 }, oe = (t, s, i) => Math.min(Math.max(t, s), i), J = (t) => typeof t == "string", ue = ([t, s], i, c) => {
2
+ const u = (w, f) => f === 0 ? 0 : Math.ceil(w / f) * f;
3
+ return [u(i, t), u(c, s)];
4
+ }, ie = (t, s) => t.some((i) => s.some((c) => i.contains(c)));
5
+ function K(t, s) {
6
+ if (t === void 0) return;
7
+ if (O(t)) return t.getBoundingClientRect();
8
+ if (typeof t == "object") {
9
+ const { top: c = 0, left: u = 0, right: w = 0, bottom: f = 0 } = t;
10
+ return { top: c, right: window.innerWidth - w, bottom: window.innerHeight - f, left: u };
11
+ }
12
+ if (t === "parent") return s.parentNode.getBoundingClientRect();
13
+ const i = document.querySelector(t);
14
+ if (i === null) throw new Error("The selector provided for bound doesn't exists in the document.");
15
+ return i.getBoundingClientRect();
16
+ }
17
+ var L = (t, s, i) => t.style.setProperty(s, i), O = (t) => t instanceof HTMLElement, fe = (t, s = {}) => {
18
+ let i, c, { bounds: u, axis: w = "both", gpuAcceleration: f = !0, legacyTranslate: Q = !0, transform: T, applyUserSelectHack: X = !0, disabled: V = !1, ignoreMultitouch: Y = !1, recomputeBounds: x = G, grid: q, position: p, cancel: N, handle: D, defaultClass: M = "neodrag", defaultClassDragging: P = "neodrag-dragging", defaultClassDragged: S = "neodrag-dragged", defaultPosition: ae = { x: 0, y: 0 }, onDragStart: se, onDrag: le, onDragEnd: de } = s, B = !1, y = 0, b = 0, A = 0, C = 0, k = 0, z = 0, { x: $, y: R } = p ? { x: (p == null ? void 0 : p.x) ?? 0, y: (p == null ? void 0 : p.y) ?? 0 } : ae;
19
+ W($, R);
20
+ let g, v, E, I, Z, _ = "", ce = !!p;
21
+ x = { ...G, ...x };
22
+ let H = /* @__PURE__ */ new Set();
23
+ const U = document.body.style, m = t.classList;
24
+ function W(e = y, r = b) {
25
+ if (!T) {
26
+ if (Q) {
27
+ let a = `${+e}px, ${+r}px`;
28
+ return L(t, "transform", f ? `translate3d(${a}, 0)` : `translate(${a})`);
29
+ }
30
+ return L(t, "translate", `${+e}px ${+r}px ${f ? "1px" : ""}`);
31
+ }
32
+ const o = T({ offsetX: e, offsetY: r, rootNode: t });
33
+ J(o) && L(t, "transform", o);
34
+ }
35
+ const j = (e, r) => {
36
+ const o = { offsetX: y, offsetY: b, rootNode: t, currentNode: Z };
37
+ t.dispatchEvent(new CustomEvent(e, { detail: o })), r == null || r(o);
38
+ }, F = addEventListener;
39
+ F("pointerdown", te, !1), F("pointerup", ne, !1), F("pointermove", re, !1), L(t, "touch-action", "none");
40
+ const ee = () => {
41
+ let e = t.offsetWidth / v.width;
42
+ return isNaN(e) && (e = 1), e;
43
+ };
44
+ function te(e) {
45
+ if (V || e.button === 2) return;
46
+ if (H.add(e.pointerId), Y && H.size > 1) return e.preventDefault();
47
+ if (x.dragStart && (g = K(u, t)), J(D) && J(N) && D === N) throw new Error("`handle` selector can't be same as `cancel` selector");
48
+ if (m.add(M), E = function(n, d) {
49
+ if (!n) return [d];
50
+ if (O(n)) return [n];
51
+ if (Array.isArray(n)) return n;
52
+ const h = d.querySelectorAll(n);
53
+ if (h === null) throw new Error("Selector passed for `handle` option should be child of the element on which the action is applied");
54
+ return Array.from(h.values());
55
+ }(D, t), I = function(n, d) {
56
+ if (!n) return [];
57
+ if (O(n)) return [n];
58
+ if (Array.isArray(n)) return n;
59
+ const h = d.querySelectorAll(n);
60
+ if (h === null) throw new Error("Selector passed for `cancel` option should be child of the element on which the action is applied");
61
+ return Array.from(h.values());
62
+ }(N, t), i = /(both|x)/.test(w), c = /(both|y)/.test(w), ie(I, E)) throw new Error("Element being dragged can't be a child of the element on which `cancel` is applied");
63
+ const r = e.composedPath()[0];
64
+ if (!E.some((n) => {
65
+ var d;
66
+ return n.contains(r) || ((d = n.shadowRoot) == null ? void 0 : d.contains(r));
67
+ }) || ie(I, [r])) return;
68
+ Z = E.length === 1 ? t : E.find((n) => n.contains(r)), B = !0, v = t.getBoundingClientRect(), X && (_ = U.userSelect, U.userSelect = "none"), j("neodrag:start", se);
69
+ const { clientX: o, clientY: a } = e, l = ee();
70
+ i && (A = o - $ / l), c && (C = a - R / l), g && (k = o - v.left, z = a - v.top);
71
+ }
72
+ function ne(e) {
73
+ H.delete(e.pointerId), B && (x.dragEnd && (g = K(u, t)), m.remove(P), m.add(S), X && (U.userSelect = _), j("neodrag:end", de), i && (A = y), c && (C = b), B = !1);
74
+ }
75
+ function re(e) {
76
+ if (!B || Y && H.size > 1) return;
77
+ x.drag && (g = K(u, t)), m.add(P), e.preventDefault(), v = t.getBoundingClientRect();
78
+ let r = e.clientX, o = e.clientY;
79
+ const a = ee();
80
+ if (g) {
81
+ const l = { left: g.left + k, top: g.top + z, right: g.right + k - v.width, bottom: g.bottom + z - v.height };
82
+ r = oe(r, l.left, l.right), o = oe(o, l.top, l.bottom);
83
+ }
84
+ if (Array.isArray(q)) {
85
+ let [l, n] = q;
86
+ if (isNaN(+l) || l < 0) throw new Error("1st argument of `grid` must be a valid positive number");
87
+ if (isNaN(+n) || n < 0) throw new Error("2nd argument of `grid` must be a valid positive number");
88
+ let d = r - A, h = o - C;
89
+ [d, h] = ue([l / a, n / a], d, h), r = A + d, o = C + h;
90
+ }
91
+ i && (y = Math.round((r - A) * a)), c && (b = Math.round((o - C) * a)), $ = y, R = b, j("neodrag", le), W();
92
+ }
93
+ return { destroy: () => {
94
+ const e = removeEventListener;
95
+ e("pointerdown", te, !1), e("pointerup", ne, !1), e("pointermove", re, !1);
96
+ }, update: (e) => {
97
+ var o, a;
98
+ w = e.axis || "both", V = e.disabled ?? !1, Y = e.ignoreMultitouch ?? !1, D = e.handle, u = e.bounds, x = e.recomputeBounds ?? G, N = e.cancel, X = e.applyUserSelectHack ?? !0, q = e.grid, f = e.gpuAcceleration ?? !0, Q = e.legacyTranslate ?? !0, T = e.transform;
99
+ const r = m.contains(S);
100
+ m.remove(M, S), M = e.defaultClass ?? "neodrag", P = e.defaultClassDragging ?? "neodrag-dragging", S = e.defaultClassDragged ?? "neodrag-dragged", m.add(M), r && m.add(S), ce && ($ = y = ((o = e.position) == null ? void 0 : o.x) ?? y, R = b = ((a = e.position) == null ? void 0 : a.y) ?? b, W());
101
+ } };
102
+ };
103
+ export {
104
+ fe as draggable
105
+ };
2
106
  //# sourceMappingURL=annotorious-svelte.es13.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es13.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"annotorious-svelte.es13.js","sources":["../../../node_modules/@neodrag/svelte/dist/min/index.js"],"sourcesContent":["var e={dragStart:!0},t=(e,t,n)=>Math.min(Math.max(e,t),n),n=e=>\"string\"==typeof e,r=([e,t],n,r)=>{const o=(e,t)=>0===t?0:Math.ceil(e/t)*t;return[o(n,e),o(r,t)]};var o=(e,t)=>e.some((e=>t.some((t=>e.contains(t)))));function i(e,t){if(void 0===e)return;if(s(e))return e.getBoundingClientRect();if(\"object\"==typeof e){const{top:t=0,left:n=0,right:r=0,bottom:o=0}=e;return{top:t,right:window.innerWidth-r,bottom:window.innerHeight-o,left:n}}if(\"parent\"===e)return t.parentNode.getBoundingClientRect();const n=document.querySelector(e);if(null===n)throw new Error(\"The selector provided for bound doesn't exists in the document.\");return n.getBoundingClientRect()}var a=(e,t,n)=>e.style.setProperty(t,n),s=e=>e instanceof HTMLElement,d=(d,l={})=>{let c,u,{bounds:f,axis:g=\"both\",gpuAcceleration:h=!0,legacyTranslate:p=!0,transform:m,applyUserSelectHack:w=!0,disabled:y=!1,ignoreMultitouch:b=!1,recomputeBounds:v=e,grid:x,position:E,cancel:S,handle:A,defaultClass:C=\"neodrag\",defaultClassDragging:N=\"neodrag-dragging\",defaultClassDragged:D=\"neodrag-dragged\",defaultPosition:M={x:0,y:0},onDragStart:B,onDrag:$,onDragEnd:R}=l,H=!1,L=0,T=0,X=0,Y=0,q=0,P=0,{x:k,y:z}=E?{x:E?.x??0,y:E?.y??0}:M;V(k,z);let I,U,W,j,F,G=\"\",J=!!E;v={...e,...v};let K=new Set;const O=document.body.style,Q=d.classList;function V(e=L,t=T){if(!m){if(p){let n=`${+e}px, ${+t}px`;return a(d,\"transform\",h?`translate3d(${n}, 0)`:`translate(${n})`)}return a(d,\"translate\",`${+e}px ${+t}px ${h?\"1px\":\"\"}`)}const r=m({offsetX:e,offsetY:t,rootNode:d});n(r)&&a(d,\"transform\",r)}const Z=(e,t)=>{const n={offsetX:L,offsetY:T,rootNode:d,currentNode:F};d.dispatchEvent(new CustomEvent(e,{detail:n})),t?.(n)};const _=addEventListener;_(\"pointerdown\",te,!1),_(\"pointerup\",ne,!1),_(\"pointermove\",re,!1),a(d,\"touch-action\",\"none\");const ee=()=>{let e=d.offsetWidth/U.width;return isNaN(e)&&(e=1),e};function te(e){if(y)return;if(2===e.button)return;if(K.add(e.pointerId),b&&K.size>1)return e.preventDefault();if(v.dragStart&&(I=i(f,d)),n(A)&&n(S)&&A===S)throw new Error(\"`handle` selector can't be same as `cancel` selector\");if(Q.add(C),W=function(e,t){if(!e)return[t];if(s(e))return[e];if(Array.isArray(e))return e;const n=t.querySelectorAll(e);if(null===n)throw new Error(\"Selector passed for `handle` option should be child of the element on which the action is applied\");return Array.from(n.values())}(A,d),j=function(e,t){if(!e)return[];if(s(e))return[e];if(Array.isArray(e))return e;const n=t.querySelectorAll(e);if(null===n)throw new Error(\"Selector passed for `cancel` option should be child of the element on which the action is applied\");return Array.from(n.values())}(S,d),c=/(both|x)/.test(g),u=/(both|y)/.test(g),o(j,W))throw new Error(\"Element being dragged can't be a child of the element on which `cancel` is applied\");const t=e.composedPath()[0];if(!W.some((e=>e.contains(t)||e.shadowRoot?.contains(t)))||o(j,[t]))return;F=1===W.length?d:W.find((e=>e.contains(t))),H=!0,U=d.getBoundingClientRect(),w&&(G=O.userSelect,O.userSelect=\"none\"),Z(\"neodrag:start\",B);const{clientX:r,clientY:a}=e,l=ee();c&&(X=r-k/l),u&&(Y=a-z/l),I&&(q=r-U.left,P=a-U.top)}function ne(e){K.delete(e.pointerId),H&&(v.dragEnd&&(I=i(f,d)),Q.remove(N),Q.add(D),w&&(O.userSelect=G),Z(\"neodrag:end\",R),c&&(X=L),u&&(Y=T),H=!1)}function re(e){if(!H||b&&K.size>1)return;v.drag&&(I=i(f,d)),Q.add(N),e.preventDefault(),U=d.getBoundingClientRect();let n=e.clientX,o=e.clientY;const a=ee();if(I){const e={left:I.left+q,top:I.top+P,right:I.right+q-U.width,bottom:I.bottom+P-U.height};n=t(n,e.left,e.right),o=t(o,e.top,e.bottom)}if(Array.isArray(x)){let[e,t]=x;if(isNaN(+e)||e<0)throw new Error(\"1st argument of `grid` must be a valid positive number\");if(isNaN(+t)||t<0)throw new Error(\"2nd argument of `grid` must be a valid positive number\");let i=n-X,s=o-Y;[i,s]=r([e/a,t/a],i,s),n=X+i,o=Y+s}c&&(L=Math.round((n-X)*a)),u&&(T=Math.round((o-Y)*a)),k=L,z=T,Z(\"neodrag\",$),V()}return{destroy:()=>{const e=removeEventListener;e(\"pointerdown\",te,!1),e(\"pointerup\",ne,!1),e(\"pointermove\",re,!1)},update:t=>{g=t.axis||\"both\",y=t.disabled??!1,b=t.ignoreMultitouch??!1,A=t.handle,f=t.bounds,v=t.recomputeBounds??e,S=t.cancel,w=t.applyUserSelectHack??!0,x=t.grid,h=t.gpuAcceleration??!0,p=t.legacyTranslate??!0,m=t.transform;const n=Q.contains(D);Q.remove(C,D),C=t.defaultClass??\"neodrag\",N=t.defaultClassDragging??\"neodrag-dragging\",D=t.defaultClassDragged??\"neodrag-dragged\",Q.add(C),n&&Q.add(D),J&&(k=L=t.position?.x??L,z=T=t.position?.y??T,V())}}};\n//!THIS IS HACK, WE WANNA IMPORT THE TYPE WHEN THE ISSUE IS FIXED LATER\nexport{d as draggable};"],"names":["e","t","n","r","o","i","s","a","d","l","c","u","f","g","h","p","m","w","y","b","v","x","E","S","A","C","N","D","M","B","$","R","H","L","T","X","Y","q","P","k","z","V","I","U","W","j","F","G","J","K","O","Q","Z","_","_a","_b"],"mappings":"AAAA,IAAIA,IAAE,EAAC,WAAU,GAAE,GAAEC,KAAE,CAACD,GAAEC,GAAEC,MAAI,KAAK,IAAI,KAAK,IAAIF,GAAEC,CAAC,GAAEC,CAAC,GAAEA,IAAE,CAAAF,MAAa,OAAOA,KAAjB,UAAmBG,KAAE,CAAC,CAACH,GAAEC,CAAC,GAAEC,GAAEC,MAAI;AAAC,QAAMC,IAAE,CAACJ,GAAEC,MAAQA,MAAJ,IAAM,IAAE,KAAK,KAAKD,IAAEC,CAAC,IAAEA;AAAE,SAAM,CAACG,EAAEF,GAAEF,CAAC,GAAEI,EAAED,GAAEF,CAAC,CAAC;AAAC,GAAMG,KAAE,CAACJ,GAAEC,MAAID,EAAE,KAAM,CAAAA,MAAGC,EAAE,KAAM,CAAAA,MAAGD,EAAE,SAASC,CAAC,CAAC;AAAK,SAASI,EAAEL,GAAEC,GAAE;AAAC,MAAYD,MAAT,OAAW;AAAO,MAAGM,EAAEN,CAAC,EAAE,QAAOA,EAAE,sBAAqB;AAAG,MAAa,OAAOA,KAAjB,UAAmB;AAAC,UAAK,EAAC,KAAIC,IAAE,GAAE,MAAKC,IAAE,GAAE,OAAMC,IAAE,GAAE,QAAOC,IAAE,EAAC,IAAEJ;AAAE,WAAM,EAAC,KAAIC,GAAE,OAAM,OAAO,aAAWE,GAAE,QAAO,OAAO,cAAYC,GAAE,MAAKF,EAAC;AAAA,EAAC;AAAC,MAAcF,MAAX,SAAa,QAAOC,EAAE,WAAW,sBAAqB;AAAG,QAAMC,IAAE,SAAS,cAAcF,CAAC;AAAE,MAAUE,MAAP,KAAS,OAAM,IAAI,MAAM,iEAAiE;AAAE,SAAOA,EAAE,sBAAqB;AAAE;AAAI,IAACK,IAAE,CAACP,GAAEC,GAAEC,MAAIF,EAAE,MAAM,YAAYC,GAAEC,CAAC,GAAEI,IAAE,CAAAN,MAAGA,aAAa,aAAYQ,KAAE,CAACA,GAAEC,IAAE,CAAA,MAAK;AAAC,MAAIC,GAAEC,GAAE,EAAC,QAAOC,GAAE,MAAKC,IAAE,QAAO,iBAAgBC,IAAE,IAAG,iBAAgBC,IAAE,IAAG,WAAUC,GAAE,qBAAoBC,IAAE,IAAG,UAASC,IAAE,IAAG,kBAAiBC,IAAE,IAAG,iBAAgBC,IAAEpB,GAAE,MAAKqB,GAAE,UAASC,GAAE,QAAOC,GAAE,QAAOC,GAAE,cAAaC,IAAE,WAAU,sBAAqBC,IAAE,oBAAmB,qBAAoBC,IAAE,mBAAkB,iBAAgBC,KAAE,EAAC,GAAE,GAAE,GAAE,EAAC,GAAE,aAAYC,IAAE,QAAOC,IAAE,WAAUC,GAAC,IAAEtB,GAAEuB,IAAE,IAAGC,IAAE,GAAEC,IAAE,GAAEC,IAAE,GAAEC,IAAE,GAAEC,IAAE,GAAEC,IAAE,GAAE,EAAC,GAAEC,GAAE,GAAEC,EAAC,IAAElB,IAAE,EAAC,IAAEA,KAAA,gBAAAA,EAAG,MAAG,GAAE,IAAEA,KAAA,gBAAAA,EAAG,MAAG,EAAC,IAAEM;AAAE,EAAAa,EAAEF,GAAEC,CAAC;AAAE,MAAIE,GAAEC,GAAEC,GAAEC,GAAEC,GAAEC,IAAE,IAAGC,KAAE,CAAC,CAAC1B;AAAE,EAAAF,IAAE,EAAC,GAAGpB,GAAE,GAAGoB,EAAC;AAAE,MAAI6B,IAAE,oBAAI;AAAI,QAAMC,IAAE,SAAS,KAAK,OAAMC,IAAE3C,EAAE;AAAU,WAASiC,EAAE,IAAER,GAAEhC,IAAEiC,GAAE;AAAC,QAAG,CAAClB,GAAE;AAAC,UAAGD,GAAE;AAAC,YAAIb,IAAE,GAAG,CAAC,CAAC,OAAO,CAACD,CAAC;AAAK,eAAOM,EAAEC,GAAE,aAAYM,IAAE,eAAeZ,CAAC,SAAO,aAAaA,CAAC,GAAG;AAAA,MAAC;AAAC,aAAOK,EAAEC,GAAE,aAAY,GAAG,CAAC,CAAC,MAAM,CAACP,CAAC,MAAMa,IAAE,QAAM,EAAE,EAAE;AAAA,IAAC;AAAC,UAAMX,IAAEa,EAAE,EAAC,SAAQ,GAAE,SAAQf,GAAE,UAASO,EAAC,CAAC;AAAE,IAAAN,EAAEC,CAAC,KAAGI,EAAEC,GAAE,aAAYL,CAAC;AAAA,EAAC;AAAC,QAAMiD,IAAE,CAAC,GAAEnD,MAAI;AAAC,UAAMC,IAAE,EAAC,SAAQ+B,GAAE,SAAQC,GAAE,UAAS1B,GAAE,aAAYsC,EAAC;AAAE,IAAAtC,EAAE,cAAc,IAAI,YAAY,GAAE,EAAC,QAAON,EAAC,CAAC,CAAC,GAAED,KAAA,QAAAA,EAAIC;AAAA,EAAE,GAAQmD,IAAE;AAAiB,EAAAA,EAAE,eAAc,IAAG,EAAE,GAAEA,EAAE,aAAY,IAAG,EAAE,GAAEA,EAAE,eAAc,IAAG,EAAE,GAAE9C,EAAEC,GAAE,gBAAe,MAAM;AAAE,QAAM,KAAG,MAAI;AAAC,QAAI,IAAEA,EAAE,cAAYmC,EAAE;AAAM,WAAO,MAAM,CAAC,MAAI,IAAE,IAAG;AAAA,EAAC;AAAE,WAAS,GAAG,GAAE;AAAa,QAATzB,KAAgB,EAAE,WAAN,EAAa;AAAO,QAAG+B,EAAE,IAAI,EAAE,SAAS,GAAE9B,KAAG8B,EAAE,OAAK,EAAE,QAAO,EAAE,eAAgB;AAAC,QAAG7B,EAAE,cAAYsB,IAAErC,EAAEO,GAAEJ,CAAC,IAAGN,EAAEsB,CAAC,KAAGtB,EAAEqB,CAAC,KAAGC,MAAID,EAAE,OAAM,IAAI,MAAM,sDAAsD;AAAE,QAAG4B,EAAE,IAAI1B,CAAC,GAAEmB,IAAE,SAAS5C,GAAEC,GAAE;AAAC,UAAG,CAACD,EAAE,QAAM,CAACC,CAAC;AAAE,UAAGK,EAAEN,CAAC,EAAE,QAAM,CAACA,CAAC;AAAE,UAAG,MAAM,QAAQA,CAAC,EAAE,QAAOA;AAAE,YAAME,IAAED,EAAE,iBAAiBD,CAAC;AAAE,UAAUE,MAAP,KAAS,OAAM,IAAI,MAAM,mGAAmG;AAAE,aAAO,MAAM,KAAKA,EAAE,OAAQ,CAAA;AAAA,IAAC,EAAEsB,GAAEhB,CAAC,GAAEqC,IAAE,SAAS7C,GAAEC,GAAE;AAAC,UAAG,CAACD,EAAE,QAAM,CAAE;AAAC,UAAGM,EAAEN,CAAC,EAAE,QAAM,CAACA,CAAC;AAAE,UAAG,MAAM,QAAQA,CAAC,EAAE,QAAOA;AAAE,YAAME,IAAED,EAAE,iBAAiBD,CAAC;AAAE,UAAUE,MAAP,KAAS,OAAM,IAAI,MAAM,mGAAmG;AAAE,aAAO,MAAM,KAAKA,EAAE,OAAQ,CAAA;AAAA,IAAC,EAAEqB,GAAEf,CAAC,GAAEE,IAAE,WAAW,KAAKG,CAAC,GAAEF,IAAE,WAAW,KAAKE,CAAC,GAAET,GAAEyC,GAAED,CAAC,EAAE,OAAM,IAAI,MAAM,oFAAoF;AAAE,UAAM3C,IAAE,EAAE,aAAY,EAAG,CAAC;AAAE,QAAG,CAAC2C,EAAE,KAAM,CAAA5C,MAAC;AAA1wF,UAAAsD;AAA4wF,aAAAtD,EAAE,SAASC,CAAC,OAAGqD,IAAAtD,EAAE,eAAF,gBAAAsD,EAAc,SAASrD;AAAA,KAAI,KAAEG,GAAEyC,GAAE,CAAC5C,CAAC,CAAC,EAAE;AAAO,IAAA6C,IAAMF,EAAE,WAAN,IAAapC,IAAEoC,EAAE,KAAM,CAAA5C,MAAGA,EAAE,SAASC,CAAC,CAAC,GAAG+B,IAAE,IAAGW,IAAEnC,EAAE,sBAAuB,GAACS,MAAI8B,IAAEG,EAAE,YAAWA,EAAE,aAAW,SAAQE,EAAE,iBAAgBvB,EAAC;AAAE,UAAK,EAAC,SAAQ1B,GAAE,SAAQ,EAAC,IAAE,GAAE,IAAE,GAAI;AAAC,IAAAO,MAAIyB,IAAEhC,IAAEoC,IAAE,IAAG5B,MAAIyB,IAAE,IAAEI,IAAE,IAAGE,MAAIL,IAAElC,IAAEwC,EAAE,MAAKL,IAAE,IAAEK,EAAE;AAAA,EAAI;AAAC,WAAS,GAAG,GAAE;AAAC,IAAAM,EAAE,OAAO,EAAE,SAAS,GAAEjB,MAAIZ,EAAE,YAAUsB,IAAErC,EAAEO,GAAEJ,CAAC,IAAG2C,EAAE,OAAOzB,CAAC,GAAEyB,EAAE,IAAIxB,CAAC,GAAEV,MAAIiC,EAAE,aAAWH,IAAGK,EAAE,eAAcrB,EAAC,GAAErB,MAAIyB,IAAEF,IAAGtB,MAAIyB,IAAEF,IAAGF,IAAE;AAAA,EAAG;AAAC,WAAS,GAAG,GAAE;AAAC,QAAG,CAACA,KAAGb,KAAG8B,EAAE,OAAK,EAAE;AAAO,IAAA7B,EAAE,SAAOsB,IAAErC,EAAEO,GAAEJ,CAAC,IAAG2C,EAAE,IAAIzB,CAAC,GAAE,EAAE,eAAgB,GAACiB,IAAEnC,EAAE,sBAAuB;AAAC,QAAIN,IAAE,EAAE,SAAQ,IAAE,EAAE;AAAQ,UAAM,IAAE,GAAI;AAAC,QAAGwC,GAAE;AAAC,YAAM1C,IAAE,EAAC,MAAK0C,EAAE,OAAKL,GAAE,KAAIK,EAAE,MAAIJ,GAAE,OAAMI,EAAE,QAAML,IAAEM,EAAE,OAAM,QAAOD,EAAE,SAAOJ,IAAEK,EAAE,OAAM;AAAE,MAAAzC,IAAED,GAAEC,GAAEF,EAAE,MAAKA,EAAE,KAAK,GAAE,IAAEC,GAAE,GAAED,EAAE,KAAIA,EAAE,MAAM;AAAA,IAAC;AAAC,QAAG,MAAM,QAAQqB,CAAC,GAAE;AAAC,UAAG,CAACrB,GAAEC,CAAC,IAAEoB;AAAE,UAAG,MAAM,CAACrB,CAAC,KAAGA,IAAE,EAAE,OAAM,IAAI,MAAM,wDAAwD;AAAE,UAAG,MAAM,CAACC,CAAC,KAAGA,IAAE,EAAE,OAAM,IAAI,MAAM,wDAAwD;AAAE,UAAII,IAAEH,IAAEiC,GAAE7B,IAAE,IAAE8B;AAAE,OAAC/B,GAAEC,CAAC,IAAEH,GAAE,CAACH,IAAE,GAAEC,IAAE,CAAC,GAAEI,GAAEC,CAAC,GAAEJ,IAAEiC,IAAE9B,GAAE,IAAE+B,IAAE9B;AAAA,IAAC;AAAC,IAAAI,MAAIuB,IAAE,KAAK,OAAO/B,IAAEiC,KAAG,CAAC,IAAGxB,MAAIuB,IAAE,KAAK,OAAO,IAAEE,KAAG,CAAC,IAAGG,IAAEN,GAAEO,IAAEN,GAAEkB,EAAE,WAAUtB,EAAC,GAAEW;EAAG;AAAC,SAAM,EAAC,SAAQ,MAAI;AAAC,UAAM,IAAE;AAAoB,MAAE,eAAc,IAAG,EAAE,GAAE,EAAE,aAAY,IAAG,EAAE,GAAE,EAAE,eAAc,IAAG,EAAE;AAAA,EAAC,GAAE,QAAO,CAAAxC,MAAG;AAA77H,QAAAqD,GAAAC;AAA87H,IAAA1C,IAAEZ,EAAE,QAAM,QAAOiB,IAAEjB,EAAE,YAAU,IAAGkB,IAAElB,EAAE,oBAAkB,IAAGuB,IAAEvB,EAAE,QAAOW,IAAEX,EAAE,QAAOmB,IAAEnB,EAAE,mBAAiBD,GAAEuB,IAAEtB,EAAE,QAAOgB,IAAEhB,EAAE,uBAAqB,IAAGoB,IAAEpB,EAAE,MAAKa,IAAEb,EAAE,mBAAiB,IAAGc,IAAEd,EAAE,mBAAiB,IAAGe,IAAEf,EAAE;AAAU,UAAMC,IAAEiD,EAAE,SAASxB,CAAC;AAAE,IAAAwB,EAAE,OAAO1B,GAAEE,CAAC,GAAEF,IAAExB,EAAE,gBAAc,WAAUyB,IAAEzB,EAAE,wBAAsB,oBAAmB0B,IAAE1B,EAAE,uBAAqB,mBAAkBkD,EAAE,IAAI1B,CAAC,GAAEvB,KAAGiD,EAAE,IAAIxB,CAAC,GAAEqB,OAAIT,IAAEN,MAAEqB,IAAArD,EAAE,aAAF,gBAAAqD,EAAY,MAAGrB,GAAEO,IAAEN,MAAEqB,IAAAtD,EAAE,aAAF,gBAAAsD,EAAY,MAAGrB,GAAEO,EAAC;AAAA,EAAG,EAAC;AAAC;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es3.js","sources":["../src/osd/OpenSeadragonAnnotator.svelte"],"sourcesContent":["<script lang=\"ts\">\n import { setContext } from 'svelte';\n import { SvelteAnnotator, SvelteAnnotatorState, toSvelteStore } from '@annotorious/core';\n import { createOSDAnnotator, ImageAnnotation } from '@annotorious/openseadragon';\n import type OpenSeadragon from 'openseadragon';\n\n /** props **/\n export let viewer: OpenSeadragon.Viewer;\n export let opts = {};\n export let anno: SvelteAnnotator<ImageAnnotation> = undefined;\n\n $: init(viewer);\n\n const init = (viewer: OpenSeadragon.Viewer) => {\n if (viewer) {\n const annotator = createOSDAnnotator(viewer, opts);\n\n // Wrap the store for Svelte reactivity\n const svelteStore = toSvelteStore(annotator.state.store);\n\n const shim = {\n ...annotator,\n state: {\n ...annotator.state,\n store: svelteStore\n } as SvelteAnnotatorState<ImageAnnotation>\n } as SvelteAnnotator<ImageAnnotation>\n\n setContext('anno', shim);\n setContext('viewer', viewer);\n\n anno = shim;\n }\n }\n</script>\n\n{#if viewer}\n <slot />\n{/if}\n"],"names":["ctx","create_if_block","viewer","$$props","opts","anno","init","annotator","createOSDAnnotator","svelteStore","toSvelteStore","shim","setContext","$$invalidate"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoCKA,EAAM,CAAA,KAAAC,EAAAD,CAAA;AAAA;;;;;;;;;;MAANA,EAAM,CAAA;;;;;;;;;;;;;;;;;6CA7BE,QAAAE,EAA4B,IAAAC,KAC5B,MAAAC,IAAI,GAAA,IAAAD,GACJ,EAAA,MAAAE,IAAyC,OAAS,IAAAF;AAIvD,QAAAG,IAAQ,CAAAJ,MAA4B;QACpCA,GAAM;AACF,YAAAK,IAAYC,EAAmBN,GAAQE,CAAI,GAG3CK,IAAcC,EAAcH,EAAU,MAAM,KAAK,GAEjDI,IAAI;AAAA,WACLJ;AAAA,QACH,YACKA,EAAU,OACb,OAAOE,EAAA;AAAA;AAIX,MAAAG,EAAW,QAAQD,CAAI,GACvBC,EAAW,UAAUV,CAAM,GAE3BW,EAAA,GAAAR,IAAOM,CAAI;AAAA;;;;;;SApBZL,EAAKJ,CAAM;AAAA;;;;;;;;"}
1
+ {"version":3,"file":"annotorious-svelte.es3.js","sources":["../src/osd/OpenSeadragonAnnotator.svelte"],"sourcesContent":["<script lang=\"ts\">\n import { setContext } from 'svelte';\n import { type SvelteAnnotator, type SvelteAnnotatorState, toSvelteStore } from '@annotorious/core';\n import { createOSDAnnotator, type ImageAnnotation } from '@annotorious/openseadragon';\n import type OpenSeadragon from 'openseadragon';\n\n /** props **/\n export let viewer: OpenSeadragon.Viewer;\n export let opts = {};\n export let anno: SvelteAnnotator<ImageAnnotation> = undefined;\n\n $: init(viewer);\n\n const init = (viewer: OpenSeadragon.Viewer) => {\n if (viewer) {\n const annotator = createOSDAnnotator(viewer, opts);\n\n // Wrap the store for Svelte reactivity\n const svelteStore = toSvelteStore(annotator.state.store);\n\n const shim = {\n ...annotator,\n state: {\n ...annotator.state,\n store: svelteStore\n } as SvelteAnnotatorState<ImageAnnotation>\n } as SvelteAnnotator<ImageAnnotation>\n\n setContext('anno', shim);\n setContext('viewer', viewer);\n\n anno = shim;\n }\n }\n</script>\n\n{#if viewer}\n <slot />\n{/if}\n"],"names":["ctx","create_if_block","viewer","$$props","opts","anno","init","annotator","createOSDAnnotator","svelteStore","toSvelteStore","shim","setContext","$$invalidate"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoCKA,EAAM,CAAA,KAAAC,EAAAD,CAAA;AAAA;;;;;;;;;;MAANA,EAAM,CAAA;;;;;;;;;;;;;;;;;6CA7BE,QAAAE,EAA4B,IAAAC,KAC5B,MAAAC,IAAI,GAAA,IAAAD,GACJ,EAAA,MAAAE,IAAyC,OAAS,IAAAF;AAIvD,QAAAG,IAAQ,CAAAJ,MAA4B;QACpCA,GAAM;AACF,YAAAK,IAAYC,EAAmBN,GAAQE,CAAI,GAG3CK,IAAcC,EAAcH,EAAU,MAAM,KAAK,GAEjDI,IAAI;AAAA,WACLJ;AAAA,QACH,YACKA,EAAU,OACb,OAAOE,EAAA;AAAA;AAIX,MAAAG,EAAW,QAAQD,CAAI,GACvBC,EAAW,UAAUV,CAAM,GAE3BW,EAAA,GAAAR,IAAOM,CAAI;AAAA;;;;;;SApBZL,EAAKJ,CAAM;AAAA;;;;;;;;"}
@@ -3,9 +3,9 @@ import { empty as q, insert as y, detach as P, element as x, text as G, attr as
3
3
  import { onMount as z } from "./annotorious-svelte.es8.js";
4
4
  import { SvelteComponent as B, init as F } from "./annotorious-svelte.es9.js";
5
5
  import "./annotorious-svelte.es10.js";
6
- import { draggable as J } from "./annotorious-svelte.es12.js";
6
+ import { draggable as J } from "./annotorious-svelte.es13.js";
7
7
  import b from "openseadragon";
8
- import "./annotorious-svelte.es13.js";
8
+ /* empty css */
9
9
  function w(n) {
10
10
  let o, e = (
11
11
  /*$selection*/
@@ -1,8 +1,7 @@
1
1
  function i() {
2
2
  }
3
3
  function l(t, n) {
4
- for (const e in n)
5
- t[e] = n[e];
4
+ for (const e in n) t[e] = n[e];
6
5
  return (
7
6
  /** @type {T & S} */
8
7
  t
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es5.js","sources":["../../../node_modules/svelte/src/runtime/internal/utils.js"],"sourcesContent":["/** @returns {void} */\nexport function noop() {}\n\nexport const identity = (x) => x;\n\n/**\n * @template T\n * @template S\n * @param {T} tar\n * @param {S} src\n * @returns {T & S}\n */\nexport function assign(tar, src) {\n\t// @ts-ignore\n\tfor (const k in src) tar[k] = src[k];\n\treturn /** @type {T & S} */ (tar);\n}\n\n// Adapted from https://github.com/then/is-promise/blob/master/index.js\n// Distributed under MIT License https://github.com/then/is-promise/blob/master/LICENSE\n/**\n * @param {any} value\n * @returns {value is PromiseLike<any>}\n */\nexport function is_promise(value) {\n\treturn (\n\t\t!!value &&\n\t\t(typeof value === 'object' || typeof value === 'function') &&\n\t\ttypeof (/** @type {any} */ (value).then) === 'function'\n\t);\n}\n\n/** @returns {void} */\nexport function add_location(element, file, line, column, char) {\n\telement.__svelte_meta = {\n\t\tloc: { file, line, column, char }\n\t};\n}\n\nexport function run(fn) {\n\treturn fn();\n}\n\nexport function blank_object() {\n\treturn Object.create(null);\n}\n\n/**\n * @param {Function[]} fns\n * @returns {void}\n */\nexport function run_all(fns) {\n\tfns.forEach(run);\n}\n\n/**\n * @param {any} thing\n * @returns {thing is Function}\n */\nexport function is_function(thing) {\n\treturn typeof thing === 'function';\n}\n\n/** @returns {boolean} */\nexport function safe_not_equal(a, b) {\n\treturn a != a ? b == b : a !== b || (a && typeof a === 'object') || typeof a === 'function';\n}\n\nlet src_url_equal_anchor;\n\n/**\n * @param {string} element_src\n * @param {string} url\n * @returns {boolean}\n */\nexport function src_url_equal(element_src, url) {\n\tif (element_src === url) return true;\n\tif (!src_url_equal_anchor) {\n\t\tsrc_url_equal_anchor = document.createElement('a');\n\t}\n\t// This is actually faster than doing URL(..).href\n\tsrc_url_equal_anchor.href = url;\n\treturn element_src === src_url_equal_anchor.href;\n}\n\n/** @param {string} srcset */\nfunction split_srcset(srcset) {\n\treturn srcset.split(',').map((src) => src.trim().split(' ').filter(Boolean));\n}\n\n/**\n * @param {HTMLSourceElement | HTMLImageElement} element_srcset\n * @param {string | undefined | null} srcset\n * @returns {boolean}\n */\nexport function srcset_url_equal(element_srcset, srcset) {\n\tconst element_urls = split_srcset(element_srcset.srcset);\n\tconst urls = split_srcset(srcset || '');\n\n\treturn (\n\t\turls.length === element_urls.length &&\n\t\turls.every(\n\t\t\t([url, width], i) =>\n\t\t\t\twidth === element_urls[i][1] &&\n\t\t\t\t// We need to test both ways because Vite will create an a full URL with\n\t\t\t\t// `new URL(asset, import.meta.url).href` for the client when `base: './'`, and the\n\t\t\t\t// relative URLs inside srcset are not automatically resolved to absolute URLs by\n\t\t\t\t// browsers (in contrast to img.src). This means both SSR and DOM code could\n\t\t\t\t// contain relative or absolute URLs.\n\t\t\t\t(src_url_equal(element_urls[i][0], url) || src_url_equal(url, element_urls[i][0]))\n\t\t)\n\t);\n}\n\n/** @returns {boolean} */\nexport function not_equal(a, b) {\n\treturn a != a ? b == b : a !== b;\n}\n\n/** @returns {boolean} */\nexport function is_empty(obj) {\n\treturn Object.keys(obj).length === 0;\n}\n\n/** @returns {void} */\nexport function validate_store(store, name) {\n\tif (store != null && typeof store.subscribe !== 'function') {\n\t\tthrow new Error(`'${name}' is not a store with a 'subscribe' method`);\n\t}\n}\n\nexport function subscribe(store, ...callbacks) {\n\tif (store == null) {\n\t\tfor (const callback of callbacks) {\n\t\t\tcallback(undefined);\n\t\t}\n\t\treturn noop;\n\t}\n\tconst unsub = store.subscribe(...callbacks);\n\treturn unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\n\n/**\n * Get the current value from a store by subscribing and immediately unsubscribing.\n *\n * https://svelte.dev/docs/svelte-store#get\n * @template T\n * @param {import('../store/public.js').Readable<T>} store\n * @returns {T}\n */\nexport function get_store_value(store) {\n\tlet value;\n\tsubscribe(store, (_) => (value = _))();\n\treturn value;\n}\n\n/** @returns {void} */\nexport function component_subscribe(component, store, callback) {\n\tcomponent.$$.on_destroy.push(subscribe(store, callback));\n}\n\nexport function create_slot(definition, ctx, $$scope, fn) {\n\tif (definition) {\n\t\tconst slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n\t\treturn definition[0](slot_ctx);\n\t}\n}\n\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n\treturn definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;\n}\n\nexport function get_slot_changes(definition, $$scope, dirty, fn) {\n\tif (definition[2] && fn) {\n\t\tconst lets = definition[2](fn(dirty));\n\t\tif ($$scope.dirty === undefined) {\n\t\t\treturn lets;\n\t\t}\n\t\tif (typeof lets === 'object') {\n\t\t\tconst merged = [];\n\t\t\tconst len = Math.max($$scope.dirty.length, lets.length);\n\t\t\tfor (let i = 0; i < len; i += 1) {\n\t\t\t\tmerged[i] = $$scope.dirty[i] | lets[i];\n\t\t\t}\n\t\t\treturn merged;\n\t\t}\n\t\treturn $$scope.dirty | lets;\n\t}\n\treturn $$scope.dirty;\n}\n\n/** @returns {void} */\nexport function update_slot_base(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tslot_changes,\n\tget_slot_context_fn\n) {\n\tif (slot_changes) {\n\t\tconst slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n\t\tslot.p(slot_context, slot_changes);\n\t}\n}\n\n/** @returns {void} */\nexport function update_slot(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tdirty,\n\tget_slot_changes_fn,\n\tget_slot_context_fn\n) {\n\tconst slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n\tupdate_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn);\n}\n\n/** @returns {any[] | -1} */\nexport function get_all_dirty_from_scope($$scope) {\n\tif ($$scope.ctx.length > 32) {\n\t\tconst dirty = [];\n\t\tconst length = $$scope.ctx.length / 32;\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tdirty[i] = -1;\n\t\t}\n\t\treturn dirty;\n\t}\n\treturn -1;\n}\n\n/** @returns {{}} */\nexport function exclude_internal_props(props) {\n\tconst result = {};\n\tfor (const k in props) if (k[0] !== '$') result[k] = props[k];\n\treturn result;\n}\n\n/** @returns {{}} */\nexport function compute_rest_props(props, keys) {\n\tconst rest = {};\n\tkeys = new Set(keys);\n\tfor (const k in props) if (!keys.has(k) && k[0] !== '$') rest[k] = props[k];\n\treturn rest;\n}\n\n/** @returns {{}} */\nexport function compute_slots(slots) {\n\tconst result = {};\n\tfor (const key in slots) {\n\t\tresult[key] = true;\n\t}\n\treturn result;\n}\n\n/** @returns {(this: any, ...args: any[]) => void} */\nexport function once(fn) {\n\tlet ran = false;\n\treturn function (...args) {\n\t\tif (ran) return;\n\t\tran = true;\n\t\tfn.call(this, ...args);\n\t};\n}\n\nexport function null_to_empty(value) {\n\treturn value == null ? '' : value;\n}\n\nexport function set_store_value(store, ret, value) {\n\tstore.set(value);\n\treturn ret;\n}\n\nexport const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\n\nexport function action_destroyer(action_result) {\n\treturn action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\n/** @param {number | string} value\n * @returns {[number, string]}\n */\nexport function split_css_unit(value) {\n\tconst split = typeof value === 'string' && value.match(/^\\s*(-?[\\d.]+)([^\\s]*)\\s*$/);\n\treturn split ? [parseFloat(split[1]), split[2] || 'px'] : [/** @type {number} */ (value), 'px'];\n}\n\nexport const contenteditable_truthy_values = ['', true, 1, 'true', 'contenteditable'];\n"],"names":["noop","assign","tar","src","k","run","fn","blank_object","run_all","fns","is_function","thing","safe_not_equal","a","b","is_empty","obj","subscribe","store","callbacks","callback","unsub","component_subscribe","component","create_slot","definition","ctx","$$scope","slot_ctx","get_slot_context","get_slot_changes","dirty","lets","merged","len","i","update_slot_base","slot","slot_definition","slot_changes","get_slot_context_fn","slot_context","get_all_dirty_from_scope","length","action_destroyer","action_result"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"annotorious-svelte.es5.js","sources":["../../../node_modules/svelte/src/runtime/internal/utils.js"],"sourcesContent":["/** @returns {void} */\nexport function noop() {}\n\nexport const identity = (x) => x;\n\n/**\n * @template T\n * @template S\n * @param {T} tar\n * @param {S} src\n * @returns {T & S}\n */\nexport function assign(tar, src) {\n\t// @ts-ignore\n\tfor (const k in src) tar[k] = src[k];\n\treturn /** @type {T & S} */ (tar);\n}\n\n// Adapted from https://github.com/then/is-promise/blob/master/index.js\n// Distributed under MIT License https://github.com/then/is-promise/blob/master/LICENSE\n/**\n * @param {any} value\n * @returns {value is PromiseLike<any>}\n */\nexport function is_promise(value) {\n\treturn (\n\t\t!!value &&\n\t\t(typeof value === 'object' || typeof value === 'function') &&\n\t\ttypeof (/** @type {any} */ (value).then) === 'function'\n\t);\n}\n\n/** @returns {void} */\nexport function add_location(element, file, line, column, char) {\n\telement.__svelte_meta = {\n\t\tloc: { file, line, column, char }\n\t};\n}\n\nexport function run(fn) {\n\treturn fn();\n}\n\nexport function blank_object() {\n\treturn Object.create(null);\n}\n\n/**\n * @param {Function[]} fns\n * @returns {void}\n */\nexport function run_all(fns) {\n\tfns.forEach(run);\n}\n\n/**\n * @param {any} thing\n * @returns {thing is Function}\n */\nexport function is_function(thing) {\n\treturn typeof thing === 'function';\n}\n\n/** @returns {boolean} */\nexport function safe_not_equal(a, b) {\n\treturn a != a ? b == b : a !== b || (a && typeof a === 'object') || typeof a === 'function';\n}\n\nlet src_url_equal_anchor;\n\n/**\n * @param {string} element_src\n * @param {string} url\n * @returns {boolean}\n */\nexport function src_url_equal(element_src, url) {\n\tif (element_src === url) return true;\n\tif (!src_url_equal_anchor) {\n\t\tsrc_url_equal_anchor = document.createElement('a');\n\t}\n\t// This is actually faster than doing URL(..).href\n\tsrc_url_equal_anchor.href = url;\n\treturn element_src === src_url_equal_anchor.href;\n}\n\n/** @param {string} srcset */\nfunction split_srcset(srcset) {\n\treturn srcset.split(',').map((src) => src.trim().split(' ').filter(Boolean));\n}\n\n/**\n * @param {HTMLSourceElement | HTMLImageElement} element_srcset\n * @param {string | undefined | null} srcset\n * @returns {boolean}\n */\nexport function srcset_url_equal(element_srcset, srcset) {\n\tconst element_urls = split_srcset(element_srcset.srcset);\n\tconst urls = split_srcset(srcset || '');\n\n\treturn (\n\t\turls.length === element_urls.length &&\n\t\turls.every(\n\t\t\t([url, width], i) =>\n\t\t\t\twidth === element_urls[i][1] &&\n\t\t\t\t// We need to test both ways because Vite will create an a full URL with\n\t\t\t\t// `new URL(asset, import.meta.url).href` for the client when `base: './'`, and the\n\t\t\t\t// relative URLs inside srcset are not automatically resolved to absolute URLs by\n\t\t\t\t// browsers (in contrast to img.src). This means both SSR and DOM code could\n\t\t\t\t// contain relative or absolute URLs.\n\t\t\t\t(src_url_equal(element_urls[i][0], url) || src_url_equal(url, element_urls[i][0]))\n\t\t)\n\t);\n}\n\n/** @returns {boolean} */\nexport function not_equal(a, b) {\n\treturn a != a ? b == b : a !== b;\n}\n\n/** @returns {boolean} */\nexport function is_empty(obj) {\n\treturn Object.keys(obj).length === 0;\n}\n\n/** @returns {void} */\nexport function validate_store(store, name) {\n\tif (store != null && typeof store.subscribe !== 'function') {\n\t\tthrow new Error(`'${name}' is not a store with a 'subscribe' method`);\n\t}\n}\n\nexport function subscribe(store, ...callbacks) {\n\tif (store == null) {\n\t\tfor (const callback of callbacks) {\n\t\t\tcallback(undefined);\n\t\t}\n\t\treturn noop;\n\t}\n\tconst unsub = store.subscribe(...callbacks);\n\treturn unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\n\n/**\n * Get the current value from a store by subscribing and immediately unsubscribing.\n *\n * https://svelte.dev/docs/svelte-store#get\n * @template T\n * @param {import('../store/public.js').Readable<T>} store\n * @returns {T}\n */\nexport function get_store_value(store) {\n\tlet value;\n\tsubscribe(store, (_) => (value = _))();\n\treturn value;\n}\n\n/** @returns {void} */\nexport function component_subscribe(component, store, callback) {\n\tcomponent.$$.on_destroy.push(subscribe(store, callback));\n}\n\nexport function create_slot(definition, ctx, $$scope, fn) {\n\tif (definition) {\n\t\tconst slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n\t\treturn definition[0](slot_ctx);\n\t}\n}\n\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n\treturn definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;\n}\n\nexport function get_slot_changes(definition, $$scope, dirty, fn) {\n\tif (definition[2] && fn) {\n\t\tconst lets = definition[2](fn(dirty));\n\t\tif ($$scope.dirty === undefined) {\n\t\t\treturn lets;\n\t\t}\n\t\tif (typeof lets === 'object') {\n\t\t\tconst merged = [];\n\t\t\tconst len = Math.max($$scope.dirty.length, lets.length);\n\t\t\tfor (let i = 0; i < len; i += 1) {\n\t\t\t\tmerged[i] = $$scope.dirty[i] | lets[i];\n\t\t\t}\n\t\t\treturn merged;\n\t\t}\n\t\treturn $$scope.dirty | lets;\n\t}\n\treturn $$scope.dirty;\n}\n\n/** @returns {void} */\nexport function update_slot_base(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tslot_changes,\n\tget_slot_context_fn\n) {\n\tif (slot_changes) {\n\t\tconst slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n\t\tslot.p(slot_context, slot_changes);\n\t}\n}\n\n/** @returns {void} */\nexport function update_slot(\n\tslot,\n\tslot_definition,\n\tctx,\n\t$$scope,\n\tdirty,\n\tget_slot_changes_fn,\n\tget_slot_context_fn\n) {\n\tconst slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n\tupdate_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn);\n}\n\n/** @returns {any[] | -1} */\nexport function get_all_dirty_from_scope($$scope) {\n\tif ($$scope.ctx.length > 32) {\n\t\tconst dirty = [];\n\t\tconst length = $$scope.ctx.length / 32;\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tdirty[i] = -1;\n\t\t}\n\t\treturn dirty;\n\t}\n\treturn -1;\n}\n\n/** @returns {{}} */\nexport function exclude_internal_props(props) {\n\tconst result = {};\n\tfor (const k in props) if (k[0] !== '$') result[k] = props[k];\n\treturn result;\n}\n\n/** @returns {{}} */\nexport function compute_rest_props(props, keys) {\n\tconst rest = {};\n\tkeys = new Set(keys);\n\tfor (const k in props) if (!keys.has(k) && k[0] !== '$') rest[k] = props[k];\n\treturn rest;\n}\n\n/** @returns {{}} */\nexport function compute_slots(slots) {\n\tconst result = {};\n\tfor (const key in slots) {\n\t\tresult[key] = true;\n\t}\n\treturn result;\n}\n\n/** @returns {(this: any, ...args: any[]) => void} */\nexport function once(fn) {\n\tlet ran = false;\n\treturn function (...args) {\n\t\tif (ran) return;\n\t\tran = true;\n\t\tfn.call(this, ...args);\n\t};\n}\n\nexport function null_to_empty(value) {\n\treturn value == null ? '' : value;\n}\n\nexport function set_store_value(store, ret, value) {\n\tstore.set(value);\n\treturn ret;\n}\n\nexport const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\n\nexport function action_destroyer(action_result) {\n\treturn action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\n/** @param {number | string} value\n * @returns {[number, string]}\n */\nexport function split_css_unit(value) {\n\tconst split = typeof value === 'string' && value.match(/^\\s*(-?[\\d.]+)([^\\s]*)\\s*$/);\n\treturn split ? [parseFloat(split[1]), split[2] || 'px'] : [/** @type {number} */ (value), 'px'];\n}\n\nexport const contenteditable_truthy_values = ['', true, 1, 'true', 'contenteditable'];\n"],"names":["noop","assign","tar","src","k","run","fn","blank_object","run_all","fns","is_function","thing","safe_not_equal","a","b","is_empty","obj","subscribe","store","callbacks","callback","unsub","component_subscribe","component","create_slot","definition","ctx","$$scope","slot_ctx","get_slot_context","get_slot_changes","dirty","lets","merged","len","i","update_slot_base","slot","slot_definition","slot_changes","get_slot_context_fn","slot_context","get_all_dirty_from_scope","length","action_destroyer","action_result"],"mappings":"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","x_google_ignoreList":[0]}
@@ -17,13 +17,11 @@ function d(t, e) {
17
17
  }
18
18
  function _(t, e, o, n) {
19
19
  if (t && t.o) {
20
- if (r.has(t))
21
- return;
20
+ if (r.has(t)) return;
22
21
  r.add(t), i.c.push(() => {
23
22
  r.delete(t), n && (o && t.d(1), n());
24
23
  }), t.o(e);
25
- } else
26
- n && n();
24
+ } else n && n();
27
25
  }
28
26
  export {
29
27
  p as check_outros,
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es7.js","sources":["../../../node_modules/svelte/src/runtime/internal/transitions.js"],"sourcesContent":["import { identity as linear, is_function, noop, run_all } from './utils.js';\nimport { now } from './environment.js';\nimport { loop } from './loop.js';\nimport { create_rule, delete_rule } from './style_manager.js';\nimport { custom_event } from './dom.js';\nimport { add_render_callback } from './scheduler.js';\n\n/**\n * @type {Promise<void> | null}\n */\nlet promise;\n\n/**\n * @returns {Promise<void>}\n */\nfunction wait() {\n\tif (!promise) {\n\t\tpromise = Promise.resolve();\n\t\tpromise.then(() => {\n\t\t\tpromise = null;\n\t\t});\n\t}\n\treturn promise;\n}\n\n/**\n * @param {Element} node\n * @param {INTRO | OUTRO | boolean} direction\n * @param {'start' | 'end'} kind\n * @returns {void}\n */\nfunction dispatch(node, direction, kind) {\n\tnode.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\n\nconst outroing = new Set();\n\n/**\n * @type {Outro}\n */\nlet outros;\n\n/**\n * @returns {void} */\nexport function group_outros() {\n\toutros = {\n\t\tr: 0,\n\t\tc: [],\n\t\tp: outros // parent group\n\t};\n}\n\n/**\n * @returns {void} */\nexport function check_outros() {\n\tif (!outros.r) {\n\t\trun_all(outros.c);\n\t}\n\toutros = outros.p;\n}\n\n/**\n * @param {import('./private.js').Fragment} block\n * @param {0 | 1} [local]\n * @returns {void}\n */\nexport function transition_in(block, local) {\n\tif (block && block.i) {\n\t\toutroing.delete(block);\n\t\tblock.i(local);\n\t}\n}\n\n/**\n * @param {import('./private.js').Fragment} block\n * @param {0 | 1} local\n * @param {0 | 1} [detach]\n * @param {() => void} [callback]\n * @returns {void}\n */\nexport function transition_out(block, local, detach, callback) {\n\tif (block && block.o) {\n\t\tif (outroing.has(block)) return;\n\t\toutroing.add(block);\n\t\toutros.c.push(() => {\n\t\t\toutroing.delete(block);\n\t\t\tif (callback) {\n\t\t\t\tif (detach) block.d(1);\n\t\t\t\tcallback();\n\t\t\t}\n\t\t});\n\t\tblock.o(local);\n\t} else if (callback) {\n\t\tcallback();\n\t}\n}\n\n/**\n * @type {import('../transition/public.js').TransitionConfig}\n */\nconst null_transition = { duration: 0 };\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @returns {{ start(): void; invalidate(): void; end(): void; }}\n */\nexport function create_in_transition(node, fn, params) {\n\t/**\n\t * @type {TransitionOptions} */\n\tconst options = { direction: 'in' };\n\tlet config = fn(node, params, options);\n\tlet running = false;\n\tlet animation_name;\n\tlet task;\n\tlet uid = 0;\n\n\t/**\n\t * @returns {void} */\n\tfunction cleanup() {\n\t\tif (animation_name) delete_rule(node, animation_name);\n\t}\n\n\t/**\n\t * @returns {void} */\n\tfunction go() {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\t\tif (css) animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n\t\ttick(0, 1);\n\t\tconst start_time = now() + delay;\n\t\tconst end_time = start_time + duration;\n\t\tif (task) task.abort();\n\t\trunning = true;\n\t\tadd_render_callback(() => dispatch(node, true, 'start'));\n\t\ttask = loop((now) => {\n\t\t\tif (running) {\n\t\t\t\tif (now >= end_time) {\n\t\t\t\t\ttick(1, 0);\n\t\t\t\t\tdispatch(node, true, 'end');\n\t\t\t\t\tcleanup();\n\t\t\t\t\treturn (running = false);\n\t\t\t\t}\n\t\t\t\tif (now >= start_time) {\n\t\t\t\t\tconst t = easing((now - start_time) / duration);\n\t\t\t\t\ttick(t, 1 - t);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn running;\n\t\t});\n\t}\n\tlet started = false;\n\treturn {\n\t\tstart() {\n\t\t\tif (started) return;\n\t\t\tstarted = true;\n\t\t\tdelete_rule(node);\n\t\t\tif (is_function(config)) {\n\t\t\t\tconfig = config(options);\n\t\t\t\twait().then(go);\n\t\t\t} else {\n\t\t\t\tgo();\n\t\t\t}\n\t\t},\n\t\tinvalidate() {\n\t\t\tstarted = false;\n\t\t},\n\t\tend() {\n\t\t\tif (running) {\n\t\t\t\tcleanup();\n\t\t\t\trunning = false;\n\t\t\t}\n\t\t}\n\t};\n}\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @returns {{ end(reset: any): void; }}\n */\nexport function create_out_transition(node, fn, params) {\n\t/** @type {TransitionOptions} */\n\tconst options = { direction: 'out' };\n\tlet config = fn(node, params, options);\n\tlet running = true;\n\tlet animation_name;\n\tconst group = outros;\n\tgroup.r += 1;\n\t/** @type {boolean} */\n\tlet original_inert_value;\n\n\t/**\n\t * @returns {void} */\n\tfunction go() {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\n\t\tif (css) animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n\n\t\tconst start_time = now() + delay;\n\t\tconst end_time = start_time + duration;\n\t\tadd_render_callback(() => dispatch(node, false, 'start'));\n\n\t\tif ('inert' in node) {\n\t\t\toriginal_inert_value = /** @type {HTMLElement} */ (node).inert;\n\t\t\tnode.inert = true;\n\t\t}\n\n\t\tloop((now) => {\n\t\t\tif (running) {\n\t\t\t\tif (now >= end_time) {\n\t\t\t\t\ttick(0, 1);\n\t\t\t\t\tdispatch(node, false, 'end');\n\t\t\t\t\tif (!--group.r) {\n\t\t\t\t\t\t// this will result in `end()` being called,\n\t\t\t\t\t\t// so we don't need to clean up here\n\t\t\t\t\t\trun_all(group.c);\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (now >= start_time) {\n\t\t\t\t\tconst t = easing((now - start_time) / duration);\n\t\t\t\t\ttick(1 - t, t);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn running;\n\t\t});\n\t}\n\n\tif (is_function(config)) {\n\t\twait().then(() => {\n\t\t\t// @ts-ignore\n\t\t\tconfig = config(options);\n\t\t\tgo();\n\t\t});\n\t} else {\n\t\tgo();\n\t}\n\n\treturn {\n\t\tend(reset) {\n\t\t\tif (reset && 'inert' in node) {\n\t\t\t\tnode.inert = original_inert_value;\n\t\t\t}\n\t\t\tif (reset && config.tick) {\n\t\t\t\tconfig.tick(1, 0);\n\t\t\t}\n\t\t\tif (running) {\n\t\t\t\tif (animation_name) delete_rule(node, animation_name);\n\t\t\t\trunning = false;\n\t\t\t}\n\t\t}\n\t};\n}\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @param {boolean} intro\n * @returns {{ run(b: 0 | 1): void; end(): void; }}\n */\nexport function create_bidirectional_transition(node, fn, params, intro) {\n\t/**\n\t * @type {TransitionOptions} */\n\tconst options = { direction: 'both' };\n\tlet config = fn(node, params, options);\n\tlet t = intro ? 0 : 1;\n\n\t/**\n\t * @type {Program | null} */\n\tlet running_program = null;\n\n\t/**\n\t * @type {PendingProgram | null} */\n\tlet pending_program = null;\n\tlet animation_name = null;\n\n\t/** @type {boolean} */\n\tlet original_inert_value;\n\n\t/**\n\t * @returns {void} */\n\tfunction clear_animation() {\n\t\tif (animation_name) delete_rule(node, animation_name);\n\t}\n\n\t/**\n\t * @param {PendingProgram} program\n\t * @param {number} duration\n\t * @returns {Program}\n\t */\n\tfunction init(program, duration) {\n\t\tconst d = /** @type {Program['d']} */ (program.b - t);\n\t\tduration *= Math.abs(d);\n\t\treturn {\n\t\t\ta: t,\n\t\t\tb: program.b,\n\t\t\td,\n\t\t\tduration,\n\t\t\tstart: program.start,\n\t\t\tend: program.start + duration,\n\t\t\tgroup: program.group\n\t\t};\n\t}\n\n\t/**\n\t * @param {INTRO | OUTRO} b\n\t * @returns {void}\n\t */\n\tfunction go(b) {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\n\t\t/**\n\t\t * @type {PendingProgram} */\n\t\tconst program = {\n\t\t\tstart: now() + delay,\n\t\t\tb\n\t\t};\n\n\t\tif (!b) {\n\t\t\t// @ts-ignore todo: improve typings\n\t\t\tprogram.group = outros;\n\t\t\toutros.r += 1;\n\t\t}\n\n\t\tif ('inert' in node) {\n\t\t\tif (b) {\n\t\t\t\tif (original_inert_value !== undefined) {\n\t\t\t\t\t// aborted/reversed outro — restore previous inert value\n\t\t\t\t\tnode.inert = original_inert_value;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toriginal_inert_value = /** @type {HTMLElement} */ (node).inert;\n\t\t\t\tnode.inert = true;\n\t\t\t}\n\t\t}\n\n\t\tif (running_program || pending_program) {\n\t\t\tpending_program = program;\n\t\t} else {\n\t\t\t// if this is an intro, and there's a delay, we need to do\n\t\t\t// an initial tick and/or apply CSS animation immediately\n\t\t\tif (css) {\n\t\t\t\tclear_animation();\n\t\t\t\tanimation_name = create_rule(node, t, b, duration, delay, easing, css);\n\t\t\t}\n\t\t\tif (b) tick(0, 1);\n\t\t\trunning_program = init(program, duration);\n\t\t\tadd_render_callback(() => dispatch(node, b, 'start'));\n\t\t\tloop((now) => {\n\t\t\t\tif (pending_program && now > pending_program.start) {\n\t\t\t\t\trunning_program = init(pending_program, duration);\n\t\t\t\t\tpending_program = null;\n\t\t\t\t\tdispatch(node, running_program.b, 'start');\n\t\t\t\t\tif (css) {\n\t\t\t\t\t\tclear_animation();\n\t\t\t\t\t\tanimation_name = create_rule(\n\t\t\t\t\t\t\tnode,\n\t\t\t\t\t\t\tt,\n\t\t\t\t\t\t\trunning_program.b,\n\t\t\t\t\t\t\trunning_program.duration,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\teasing,\n\t\t\t\t\t\t\tconfig.css\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (running_program) {\n\t\t\t\t\tif (now >= running_program.end) {\n\t\t\t\t\t\ttick((t = running_program.b), 1 - t);\n\t\t\t\t\t\tdispatch(node, running_program.b, 'end');\n\t\t\t\t\t\tif (!pending_program) {\n\t\t\t\t\t\t\t// we're done\n\t\t\t\t\t\t\tif (running_program.b) {\n\t\t\t\t\t\t\t\t// intro — we can tidy up immediately\n\t\t\t\t\t\t\t\tclear_animation();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// outro — needs to be coordinated\n\t\t\t\t\t\t\t\tif (!--running_program.group.r) run_all(running_program.group.c);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\trunning_program = null;\n\t\t\t\t\t} else if (now >= running_program.start) {\n\t\t\t\t\t\tconst p = now - running_program.start;\n\t\t\t\t\t\tt = running_program.a + running_program.d * easing(p / running_program.duration);\n\t\t\t\t\t\ttick(t, 1 - t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn !!(running_program || pending_program);\n\t\t\t});\n\t\t}\n\t}\n\treturn {\n\t\trun(b) {\n\t\t\tif (is_function(config)) {\n\t\t\t\twait().then(() => {\n\t\t\t\t\tconst opts = { direction: b ? 'in' : 'out' };\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\tconfig = config(opts);\n\t\t\t\t\tgo(b);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tgo(b);\n\t\t\t}\n\t\t},\n\t\tend() {\n\t\t\tclear_animation();\n\t\t\trunning_program = pending_program = null;\n\t\t}\n\t};\n}\n\n/** @typedef {1} INTRO */\n/** @typedef {0} OUTRO */\n/** @typedef {{ direction: 'in' | 'out' | 'both' }} TransitionOptions */\n/** @typedef {(node: Element, params: any, options: TransitionOptions) => import('../transition/public.js').TransitionConfig} TransitionFn */\n\n/**\n * @typedef {Object} Outro\n * @property {number} r\n * @property {Function[]} c\n * @property {Object} p\n */\n\n/**\n * @typedef {Object} PendingProgram\n * @property {number} start\n * @property {INTRO|OUTRO} b\n * @property {Outro} [group]\n */\n\n/**\n * @typedef {Object} Program\n * @property {number} a\n * @property {INTRO|OUTRO} b\n * @property {1|-1} d\n * @property {number} duration\n * @property {number} start\n * @property {number} end\n * @property {Outro} [group]\n */\n"],"names":["outroing","outros","group_outros","check_outros","run_all","transition_in","block","local","transition_out","detach","callback"],"mappings":";AAmCA,MAAMA,IAAW,oBAAI;AAKrB,IAAIC;AAIG,SAASC,IAAe;AAC9B,EAAAD,IAAS;AAAA,IACR,GAAG;AAAA,IACH,GAAG,CAAE;AAAA,IACL,GAAGA;AAAA;AAAA,EACL;AACA;AAIO,SAASE,IAAe;AAC9B,EAAKF,EAAO,KACXG,EAAQH,EAAO,CAAC,GAEjBA,IAASA,EAAO;AACjB;AAOO,SAASI,EAAcC,GAAOC,GAAO;AAC3C,EAAID,KAASA,EAAM,MAClBN,EAAS,OAAOM,CAAK,GACrBA,EAAM,EAAEC,CAAK;AAEf;AASO,SAASC,EAAeF,GAAOC,GAAOE,GAAQC,GAAU;AAC9D,MAAIJ,KAASA,EAAM,GAAG;AACrB,QAAIN,EAAS,IAAIM,CAAK;AAAG;AACzB,IAAAN,EAAS,IAAIM,CAAK,GAClBL,EAAO,EAAE,KAAK,MAAM;AACnB,MAAAD,EAAS,OAAOM,CAAK,GACjBI,MACCD,KAAQH,EAAM,EAAE,CAAC,GACrBI;IAEJ,CAAG,GACDJ,EAAM,EAAEC,CAAK;AAAA,EACb;AAAM,IAAIG,KACVA;AAEF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"annotorious-svelte.es7.js","sources":["../../../node_modules/svelte/src/runtime/internal/transitions.js"],"sourcesContent":["import { identity as linear, is_function, noop, run_all } from './utils.js';\nimport { now } from './environment.js';\nimport { loop } from './loop.js';\nimport { create_rule, delete_rule } from './style_manager.js';\nimport { custom_event } from './dom.js';\nimport { add_render_callback } from './scheduler.js';\n\n/**\n * @type {Promise<void> | null}\n */\nlet promise;\n\n/**\n * @returns {Promise<void>}\n */\nfunction wait() {\n\tif (!promise) {\n\t\tpromise = Promise.resolve();\n\t\tpromise.then(() => {\n\t\t\tpromise = null;\n\t\t});\n\t}\n\treturn promise;\n}\n\n/**\n * @param {Element} node\n * @param {INTRO | OUTRO | boolean} direction\n * @param {'start' | 'end'} kind\n * @returns {void}\n */\nfunction dispatch(node, direction, kind) {\n\tnode.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\n\nconst outroing = new Set();\n\n/**\n * @type {Outro}\n */\nlet outros;\n\n/**\n * @returns {void} */\nexport function group_outros() {\n\toutros = {\n\t\tr: 0,\n\t\tc: [],\n\t\tp: outros // parent group\n\t};\n}\n\n/**\n * @returns {void} */\nexport function check_outros() {\n\tif (!outros.r) {\n\t\trun_all(outros.c);\n\t}\n\toutros = outros.p;\n}\n\n/**\n * @param {import('./private.js').Fragment} block\n * @param {0 | 1} [local]\n * @returns {void}\n */\nexport function transition_in(block, local) {\n\tif (block && block.i) {\n\t\toutroing.delete(block);\n\t\tblock.i(local);\n\t}\n}\n\n/**\n * @param {import('./private.js').Fragment} block\n * @param {0 | 1} local\n * @param {0 | 1} [detach]\n * @param {() => void} [callback]\n * @returns {void}\n */\nexport function transition_out(block, local, detach, callback) {\n\tif (block && block.o) {\n\t\tif (outroing.has(block)) return;\n\t\toutroing.add(block);\n\t\toutros.c.push(() => {\n\t\t\toutroing.delete(block);\n\t\t\tif (callback) {\n\t\t\t\tif (detach) block.d(1);\n\t\t\t\tcallback();\n\t\t\t}\n\t\t});\n\t\tblock.o(local);\n\t} else if (callback) {\n\t\tcallback();\n\t}\n}\n\n/**\n * @type {import('../transition/public.js').TransitionConfig}\n */\nconst null_transition = { duration: 0 };\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @returns {{ start(): void; invalidate(): void; end(): void; }}\n */\nexport function create_in_transition(node, fn, params) {\n\t/**\n\t * @type {TransitionOptions} */\n\tconst options = { direction: 'in' };\n\tlet config = fn(node, params, options);\n\tlet running = false;\n\tlet animation_name;\n\tlet task;\n\tlet uid = 0;\n\n\t/**\n\t * @returns {void} */\n\tfunction cleanup() {\n\t\tif (animation_name) delete_rule(node, animation_name);\n\t}\n\n\t/**\n\t * @returns {void} */\n\tfunction go() {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\t\tif (css) animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n\t\ttick(0, 1);\n\t\tconst start_time = now() + delay;\n\t\tconst end_time = start_time + duration;\n\t\tif (task) task.abort();\n\t\trunning = true;\n\t\tadd_render_callback(() => dispatch(node, true, 'start'));\n\t\ttask = loop((now) => {\n\t\t\tif (running) {\n\t\t\t\tif (now >= end_time) {\n\t\t\t\t\ttick(1, 0);\n\t\t\t\t\tdispatch(node, true, 'end');\n\t\t\t\t\tcleanup();\n\t\t\t\t\treturn (running = false);\n\t\t\t\t}\n\t\t\t\tif (now >= start_time) {\n\t\t\t\t\tconst t = easing((now - start_time) / duration);\n\t\t\t\t\ttick(t, 1 - t);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn running;\n\t\t});\n\t}\n\tlet started = false;\n\treturn {\n\t\tstart() {\n\t\t\tif (started) return;\n\t\t\tstarted = true;\n\t\t\tdelete_rule(node);\n\t\t\tif (is_function(config)) {\n\t\t\t\tconfig = config(options);\n\t\t\t\twait().then(go);\n\t\t\t} else {\n\t\t\t\tgo();\n\t\t\t}\n\t\t},\n\t\tinvalidate() {\n\t\t\tstarted = false;\n\t\t},\n\t\tend() {\n\t\t\tif (running) {\n\t\t\t\tcleanup();\n\t\t\t\trunning = false;\n\t\t\t}\n\t\t}\n\t};\n}\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @returns {{ end(reset: any): void; }}\n */\nexport function create_out_transition(node, fn, params) {\n\t/** @type {TransitionOptions} */\n\tconst options = { direction: 'out' };\n\tlet config = fn(node, params, options);\n\tlet running = true;\n\tlet animation_name;\n\tconst group = outros;\n\tgroup.r += 1;\n\t/** @type {boolean} */\n\tlet original_inert_value;\n\n\t/**\n\t * @returns {void} */\n\tfunction go() {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\n\t\tif (css) animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n\n\t\tconst start_time = now() + delay;\n\t\tconst end_time = start_time + duration;\n\t\tadd_render_callback(() => dispatch(node, false, 'start'));\n\n\t\tif ('inert' in node) {\n\t\t\toriginal_inert_value = /** @type {HTMLElement} */ (node).inert;\n\t\t\tnode.inert = true;\n\t\t}\n\n\t\tloop((now) => {\n\t\t\tif (running) {\n\t\t\t\tif (now >= end_time) {\n\t\t\t\t\ttick(0, 1);\n\t\t\t\t\tdispatch(node, false, 'end');\n\t\t\t\t\tif (!--group.r) {\n\t\t\t\t\t\t// this will result in `end()` being called,\n\t\t\t\t\t\t// so we don't need to clean up here\n\t\t\t\t\t\trun_all(group.c);\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (now >= start_time) {\n\t\t\t\t\tconst t = easing((now - start_time) / duration);\n\t\t\t\t\ttick(1 - t, t);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn running;\n\t\t});\n\t}\n\n\tif (is_function(config)) {\n\t\twait().then(() => {\n\t\t\t// @ts-ignore\n\t\t\tconfig = config(options);\n\t\t\tgo();\n\t\t});\n\t} else {\n\t\tgo();\n\t}\n\n\treturn {\n\t\tend(reset) {\n\t\t\tif (reset && 'inert' in node) {\n\t\t\t\tnode.inert = original_inert_value;\n\t\t\t}\n\t\t\tif (reset && config.tick) {\n\t\t\t\tconfig.tick(1, 0);\n\t\t\t}\n\t\t\tif (running) {\n\t\t\t\tif (animation_name) delete_rule(node, animation_name);\n\t\t\t\trunning = false;\n\t\t\t}\n\t\t}\n\t};\n}\n\n/**\n * @param {Element & ElementCSSInlineStyle} node\n * @param {TransitionFn} fn\n * @param {any} params\n * @param {boolean} intro\n * @returns {{ run(b: 0 | 1): void; end(): void; }}\n */\nexport function create_bidirectional_transition(node, fn, params, intro) {\n\t/**\n\t * @type {TransitionOptions} */\n\tconst options = { direction: 'both' };\n\tlet config = fn(node, params, options);\n\tlet t = intro ? 0 : 1;\n\n\t/**\n\t * @type {Program | null} */\n\tlet running_program = null;\n\n\t/**\n\t * @type {PendingProgram | null} */\n\tlet pending_program = null;\n\tlet animation_name = null;\n\n\t/** @type {boolean} */\n\tlet original_inert_value;\n\n\t/**\n\t * @returns {void} */\n\tfunction clear_animation() {\n\t\tif (animation_name) delete_rule(node, animation_name);\n\t}\n\n\t/**\n\t * @param {PendingProgram} program\n\t * @param {number} duration\n\t * @returns {Program}\n\t */\n\tfunction init(program, duration) {\n\t\tconst d = /** @type {Program['d']} */ (program.b - t);\n\t\tduration *= Math.abs(d);\n\t\treturn {\n\t\t\ta: t,\n\t\t\tb: program.b,\n\t\t\td,\n\t\t\tduration,\n\t\t\tstart: program.start,\n\t\t\tend: program.start + duration,\n\t\t\tgroup: program.group\n\t\t};\n\t}\n\n\t/**\n\t * @param {INTRO | OUTRO} b\n\t * @returns {void}\n\t */\n\tfunction go(b) {\n\t\tconst {\n\t\t\tdelay = 0,\n\t\t\tduration = 300,\n\t\t\teasing = linear,\n\t\t\ttick = noop,\n\t\t\tcss\n\t\t} = config || null_transition;\n\n\t\t/**\n\t\t * @type {PendingProgram} */\n\t\tconst program = {\n\t\t\tstart: now() + delay,\n\t\t\tb\n\t\t};\n\n\t\tif (!b) {\n\t\t\t// @ts-ignore todo: improve typings\n\t\t\tprogram.group = outros;\n\t\t\toutros.r += 1;\n\t\t}\n\n\t\tif ('inert' in node) {\n\t\t\tif (b) {\n\t\t\t\tif (original_inert_value !== undefined) {\n\t\t\t\t\t// aborted/reversed outro — restore previous inert value\n\t\t\t\t\tnode.inert = original_inert_value;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toriginal_inert_value = /** @type {HTMLElement} */ (node).inert;\n\t\t\t\tnode.inert = true;\n\t\t\t}\n\t\t}\n\n\t\tif (running_program || pending_program) {\n\t\t\tpending_program = program;\n\t\t} else {\n\t\t\t// if this is an intro, and there's a delay, we need to do\n\t\t\t// an initial tick and/or apply CSS animation immediately\n\t\t\tif (css) {\n\t\t\t\tclear_animation();\n\t\t\t\tanimation_name = create_rule(node, t, b, duration, delay, easing, css);\n\t\t\t}\n\t\t\tif (b) tick(0, 1);\n\t\t\trunning_program = init(program, duration);\n\t\t\tadd_render_callback(() => dispatch(node, b, 'start'));\n\t\t\tloop((now) => {\n\t\t\t\tif (pending_program && now > pending_program.start) {\n\t\t\t\t\trunning_program = init(pending_program, duration);\n\t\t\t\t\tpending_program = null;\n\t\t\t\t\tdispatch(node, running_program.b, 'start');\n\t\t\t\t\tif (css) {\n\t\t\t\t\t\tclear_animation();\n\t\t\t\t\t\tanimation_name = create_rule(\n\t\t\t\t\t\t\tnode,\n\t\t\t\t\t\t\tt,\n\t\t\t\t\t\t\trunning_program.b,\n\t\t\t\t\t\t\trunning_program.duration,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\teasing,\n\t\t\t\t\t\t\tconfig.css\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (running_program) {\n\t\t\t\t\tif (now >= running_program.end) {\n\t\t\t\t\t\ttick((t = running_program.b), 1 - t);\n\t\t\t\t\t\tdispatch(node, running_program.b, 'end');\n\t\t\t\t\t\tif (!pending_program) {\n\t\t\t\t\t\t\t// we're done\n\t\t\t\t\t\t\tif (running_program.b) {\n\t\t\t\t\t\t\t\t// intro — we can tidy up immediately\n\t\t\t\t\t\t\t\tclear_animation();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// outro — needs to be coordinated\n\t\t\t\t\t\t\t\tif (!--running_program.group.r) run_all(running_program.group.c);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\trunning_program = null;\n\t\t\t\t\t} else if (now >= running_program.start) {\n\t\t\t\t\t\tconst p = now - running_program.start;\n\t\t\t\t\t\tt = running_program.a + running_program.d * easing(p / running_program.duration);\n\t\t\t\t\t\ttick(t, 1 - t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn !!(running_program || pending_program);\n\t\t\t});\n\t\t}\n\t}\n\treturn {\n\t\trun(b) {\n\t\t\tif (is_function(config)) {\n\t\t\t\twait().then(() => {\n\t\t\t\t\tconst opts = { direction: b ? 'in' : 'out' };\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\tconfig = config(opts);\n\t\t\t\t\tgo(b);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tgo(b);\n\t\t\t}\n\t\t},\n\t\tend() {\n\t\t\tclear_animation();\n\t\t\trunning_program = pending_program = null;\n\t\t}\n\t};\n}\n\n/** @typedef {1} INTRO */\n/** @typedef {0} OUTRO */\n/** @typedef {{ direction: 'in' | 'out' | 'both' }} TransitionOptions */\n/** @typedef {(node: Element, params: any, options: TransitionOptions) => import('../transition/public.js').TransitionConfig} TransitionFn */\n\n/**\n * @typedef {Object} Outro\n * @property {number} r\n * @property {Function[]} c\n * @property {Object} p\n */\n\n/**\n * @typedef {Object} PendingProgram\n * @property {number} start\n * @property {INTRO|OUTRO} b\n * @property {Outro} [group]\n */\n\n/**\n * @typedef {Object} Program\n * @property {number} a\n * @property {INTRO|OUTRO} b\n * @property {1|-1} d\n * @property {number} duration\n * @property {number} start\n * @property {number} end\n * @property {Outro} [group]\n */\n"],"names":["outroing","outros","group_outros","check_outros","run_all","transition_in","block","local","transition_out","detach","callback"],"mappings":";AAmCA,MAAMA,IAAW,oBAAI;AAKrB,IAAIC;AAIG,SAASC,IAAe;AAC9B,EAAAD,IAAS;AAAA,IACR,GAAG;AAAA,IACH,GAAG,CAAE;AAAA,IACL,GAAGA;AAAA;AAAA,EACL;AACA;AAIO,SAASE,IAAe;AAC9B,EAAKF,EAAO,KACXG,EAAQH,EAAO,CAAC,GAEjBA,IAASA,EAAO;AACjB;AAOO,SAASI,EAAcC,GAAOC,GAAO;AAC3C,EAAID,KAASA,EAAM,MAClBN,EAAS,OAAOM,CAAK,GACrBA,EAAM,EAAEC,CAAK;AAEf;AASO,SAASC,EAAeF,GAAOC,GAAOE,GAAQC,GAAU;AAC9D,MAAIJ,KAASA,EAAM,GAAG;AACrB,QAAIN,EAAS,IAAIM,CAAK,EAAG;AACzB,IAAAN,EAAS,IAAIM,CAAK,GAClBL,EAAO,EAAE,KAAK,MAAM;AACnB,MAAAD,EAAS,OAAOM,CAAK,GACjBI,MACCD,KAAQH,EAAM,EAAE,CAAC,GACrBI;IAEJ,CAAG,GACDJ,EAAM,EAAEC,CAAK;AAAA,EACb,MAAM,CAAIG,KACVA;AAEF;","x_google_ignoreList":[0]}
@@ -3,8 +3,7 @@ function r(n) {
3
3
  t = n;
4
4
  }
5
5
  function o() {
6
- if (!t)
7
- throw new Error("Function called outside component initialization");
6
+ if (!t) throw new Error("Function called outside component initialization");
8
7
  return t;
9
8
  }
10
9
  function u(n) {
@@ -1 +1 @@
1
- {"version":3,"file":"annotorious-svelte.es8.js","sources":["../../../node_modules/svelte/src/runtime/internal/lifecycle.js"],"sourcesContent":["import { custom_event } from './dom.js';\n\nexport let current_component;\n\n/** @returns {void} */\nexport function set_current_component(component) {\n\tcurrent_component = component;\n}\n\nexport function get_current_component() {\n\tif (!current_component) throw new Error('Function called outside component initialization');\n\treturn current_component;\n}\n\n/**\n * Schedules a callback to run immediately before the component is updated after any state change.\n *\n * The first time the callback runs will be before the initial `onMount`\n *\n * https://svelte.dev/docs/svelte#beforeupdate\n * @param {() => any} fn\n * @returns {void}\n */\nexport function beforeUpdate(fn) {\n\tget_current_component().$$.before_update.push(fn);\n}\n\n/**\n * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.\n * It must be called during the component's initialisation (but doesn't need to live *inside* the component;\n * it can be called from an external module).\n *\n * If a function is returned _synchronously_ from `onMount`, it will be called when the component is unmounted.\n *\n * `onMount` does not run inside a [server-side component](https://svelte.dev/docs#run-time-server-side-component-api).\n *\n * https://svelte.dev/docs/svelte#onmount\n * @template T\n * @param {() => import('./private.js').NotFunction<T> | Promise<import('./private.js').NotFunction<T>> | (() => any)} fn\n * @returns {void}\n */\nexport function onMount(fn) {\n\tget_current_component().$$.on_mount.push(fn);\n}\n\n/**\n * Schedules a callback to run immediately after the component has been updated.\n *\n * The first time the callback runs will be after the initial `onMount`\n *\n * https://svelte.dev/docs/svelte#afterupdate\n * @param {() => any} fn\n * @returns {void}\n */\nexport function afterUpdate(fn) {\n\tget_current_component().$$.after_update.push(fn);\n}\n\n/**\n * Schedules a callback to run immediately before the component is unmounted.\n *\n * Out of `onMount`, `beforeUpdate`, `afterUpdate` and `onDestroy`, this is the\n * only one that runs inside a server-side component.\n *\n * https://svelte.dev/docs/svelte#ondestroy\n * @param {() => any} fn\n * @returns {void}\n */\nexport function onDestroy(fn) {\n\tget_current_component().$$.on_destroy.push(fn);\n}\n\n/**\n * Creates an event dispatcher that can be used to dispatch [component events](https://svelte.dev/docs#template-syntax-component-directives-on-eventname).\n * Event dispatchers are functions that can take two arguments: `name` and `detail`.\n *\n * Component events created with `createEventDispatcher` create a\n * [CustomEvent](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent).\n * These events do not [bubble](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Events#Event_bubbling_and_capture).\n * The `detail` argument corresponds to the [CustomEvent.detail](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/detail)\n * property and can contain any type of data.\n *\n * The event dispatcher can be typed to narrow the allowed event names and the type of the `detail` argument:\n * ```ts\n * const dispatch = createEventDispatcher<{\n * loaded: never; // does not take a detail argument\n * change: string; // takes a detail argument of type string, which is required\n * optional: number | null; // takes an optional detail argument of type number\n * }>();\n * ```\n *\n * https://svelte.dev/docs/svelte#createeventdispatcher\n * @template {Record<string, any>} [EventMap=any]\n * @returns {import('./public.js').EventDispatcher<EventMap>}\n */\nexport function createEventDispatcher() {\n\tconst component = get_current_component();\n\treturn (type, detail, { cancelable = false } = {}) => {\n\t\tconst callbacks = component.$$.callbacks[type];\n\t\tif (callbacks) {\n\t\t\t// TODO are there situations where events could be dispatched\n\t\t\t// in a server (non-DOM) environment?\n\t\t\tconst event = custom_event(/** @type {string} */ (type), detail, { cancelable });\n\t\t\tcallbacks.slice().forEach((fn) => {\n\t\t\t\tfn.call(component, event);\n\t\t\t});\n\t\t\treturn !event.defaultPrevented;\n\t\t}\n\t\treturn true;\n\t};\n}\n\n/**\n * Associates an arbitrary `context` object with the current component and the specified `key`\n * and returns that object. The context is then available to children of the component\n * (including slotted content) with `getContext`.\n *\n * Like lifecycle functions, this must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#setcontext\n * @template T\n * @param {any} key\n * @param {T} context\n * @returns {T}\n */\nexport function setContext(key, context) {\n\tget_current_component().$$.context.set(key, context);\n\treturn context;\n}\n\n/**\n * Retrieves the context that belongs to the closest parent component with the specified `key`.\n * Must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#getcontext\n * @template T\n * @param {any} key\n * @returns {T}\n */\nexport function getContext(key) {\n\treturn get_current_component().$$.context.get(key);\n}\n\n/**\n * Retrieves the whole context map that belongs to the closest parent component.\n * Must be called during component initialisation. Useful, for example, if you\n * programmatically create a component and want to pass the existing context to it.\n *\n * https://svelte.dev/docs/svelte#getallcontexts\n * @template {Map<any, any>} [T=Map<any, any>]\n * @returns {T}\n */\nexport function getAllContexts() {\n\treturn get_current_component().$$.context;\n}\n\n/**\n * Checks whether a given `key` has been set in the context of a parent component.\n * Must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#hascontext\n * @param {any} key\n * @returns {boolean}\n */\nexport function hasContext(key) {\n\treturn get_current_component().$$.context.has(key);\n}\n\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\n/**\n * @param component\n * @param event\n * @returns {void}\n */\nexport function bubble(component, event) {\n\tconst callbacks = component.$$.callbacks[event.type];\n\tif (callbacks) {\n\t\t// @ts-ignore\n\t\tcallbacks.slice().forEach((fn) => fn.call(this, event));\n\t}\n}\n"],"names":["current_component","set_current_component","component","get_current_component","onMount","fn","setContext","key","context","getContext"],"mappings":"AAEU,IAACA;AAGJ,SAASC,EAAsBC,GAAW;AAChD,EAAAF,IAAoBE;AACrB;AAEO,SAASC,IAAwB;AACvC,MAAI,CAACH;AAAmB,UAAM,IAAI,MAAM,kDAAkD;AAC1F,SAAOA;AACR;AA6BO,SAASI,EAAQC,GAAI;AAC3B,EAAAF,EAAuB,EAAC,GAAG,SAAS,KAAKE,CAAE;AAC5C;AAkFO,SAASC,EAAWC,GAAKC,GAAS;AACxC,SAAAL,EAAqB,EAAG,GAAG,QAAQ,IAAII,GAAKC,CAAO,GAC5CA;AACR;AAWO,SAASC,EAAWF,GAAK;AAC/B,SAAOJ,EAAuB,EAAC,GAAG,QAAQ,IAAII,CAAG;AAClD;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"annotorious-svelte.es8.js","sources":["../../../node_modules/svelte/src/runtime/internal/lifecycle.js"],"sourcesContent":["import { custom_event } from './dom.js';\n\nexport let current_component;\n\n/** @returns {void} */\nexport function set_current_component(component) {\n\tcurrent_component = component;\n}\n\nexport function get_current_component() {\n\tif (!current_component) throw new Error('Function called outside component initialization');\n\treturn current_component;\n}\n\n/**\n * Schedules a callback to run immediately before the component is updated after any state change.\n *\n * The first time the callback runs will be before the initial `onMount`\n *\n * https://svelte.dev/docs/svelte#beforeupdate\n * @param {() => any} fn\n * @returns {void}\n */\nexport function beforeUpdate(fn) {\n\tget_current_component().$$.before_update.push(fn);\n}\n\n/**\n * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.\n * It must be called during the component's initialisation (but doesn't need to live *inside* the component;\n * it can be called from an external module).\n *\n * If a function is returned _synchronously_ from `onMount`, it will be called when the component is unmounted.\n *\n * `onMount` does not run inside a [server-side component](https://svelte.dev/docs#run-time-server-side-component-api).\n *\n * https://svelte.dev/docs/svelte#onmount\n * @template T\n * @param {() => import('./private.js').NotFunction<T> | Promise<import('./private.js').NotFunction<T>> | (() => any)} fn\n * @returns {void}\n */\nexport function onMount(fn) {\n\tget_current_component().$$.on_mount.push(fn);\n}\n\n/**\n * Schedules a callback to run immediately after the component has been updated.\n *\n * The first time the callback runs will be after the initial `onMount`\n *\n * https://svelte.dev/docs/svelte#afterupdate\n * @param {() => any} fn\n * @returns {void}\n */\nexport function afterUpdate(fn) {\n\tget_current_component().$$.after_update.push(fn);\n}\n\n/**\n * Schedules a callback to run immediately before the component is unmounted.\n *\n * Out of `onMount`, `beforeUpdate`, `afterUpdate` and `onDestroy`, this is the\n * only one that runs inside a server-side component.\n *\n * https://svelte.dev/docs/svelte#ondestroy\n * @param {() => any} fn\n * @returns {void}\n */\nexport function onDestroy(fn) {\n\tget_current_component().$$.on_destroy.push(fn);\n}\n\n/**\n * Creates an event dispatcher that can be used to dispatch [component events](https://svelte.dev/docs#template-syntax-component-directives-on-eventname).\n * Event dispatchers are functions that can take two arguments: `name` and `detail`.\n *\n * Component events created with `createEventDispatcher` create a\n * [CustomEvent](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent).\n * These events do not [bubble](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Events#Event_bubbling_and_capture).\n * The `detail` argument corresponds to the [CustomEvent.detail](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/detail)\n * property and can contain any type of data.\n *\n * The event dispatcher can be typed to narrow the allowed event names and the type of the `detail` argument:\n * ```ts\n * const dispatch = createEventDispatcher<{\n * loaded: never; // does not take a detail argument\n * change: string; // takes a detail argument of type string, which is required\n * optional: number | null; // takes an optional detail argument of type number\n * }>();\n * ```\n *\n * https://svelte.dev/docs/svelte#createeventdispatcher\n * @template {Record<string, any>} [EventMap=any]\n * @returns {import('./public.js').EventDispatcher<EventMap>}\n */\nexport function createEventDispatcher() {\n\tconst component = get_current_component();\n\treturn (type, detail, { cancelable = false } = {}) => {\n\t\tconst callbacks = component.$$.callbacks[type];\n\t\tif (callbacks) {\n\t\t\t// TODO are there situations where events could be dispatched\n\t\t\t// in a server (non-DOM) environment?\n\t\t\tconst event = custom_event(/** @type {string} */ (type), detail, { cancelable });\n\t\t\tcallbacks.slice().forEach((fn) => {\n\t\t\t\tfn.call(component, event);\n\t\t\t});\n\t\t\treturn !event.defaultPrevented;\n\t\t}\n\t\treturn true;\n\t};\n}\n\n/**\n * Associates an arbitrary `context` object with the current component and the specified `key`\n * and returns that object. The context is then available to children of the component\n * (including slotted content) with `getContext`.\n *\n * Like lifecycle functions, this must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#setcontext\n * @template T\n * @param {any} key\n * @param {T} context\n * @returns {T}\n */\nexport function setContext(key, context) {\n\tget_current_component().$$.context.set(key, context);\n\treturn context;\n}\n\n/**\n * Retrieves the context that belongs to the closest parent component with the specified `key`.\n * Must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#getcontext\n * @template T\n * @param {any} key\n * @returns {T}\n */\nexport function getContext(key) {\n\treturn get_current_component().$$.context.get(key);\n}\n\n/**\n * Retrieves the whole context map that belongs to the closest parent component.\n * Must be called during component initialisation. Useful, for example, if you\n * programmatically create a component and want to pass the existing context to it.\n *\n * https://svelte.dev/docs/svelte#getallcontexts\n * @template {Map<any, any>} [T=Map<any, any>]\n * @returns {T}\n */\nexport function getAllContexts() {\n\treturn get_current_component().$$.context;\n}\n\n/**\n * Checks whether a given `key` has been set in the context of a parent component.\n * Must be called during component initialisation.\n *\n * https://svelte.dev/docs/svelte#hascontext\n * @param {any} key\n * @returns {boolean}\n */\nexport function hasContext(key) {\n\treturn get_current_component().$$.context.has(key);\n}\n\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\n/**\n * @param component\n * @param event\n * @returns {void}\n */\nexport function bubble(component, event) {\n\tconst callbacks = component.$$.callbacks[event.type];\n\tif (callbacks) {\n\t\t// @ts-ignore\n\t\tcallbacks.slice().forEach((fn) => fn.call(this, event));\n\t}\n}\n"],"names":["current_component","set_current_component","component","get_current_component","onMount","fn","setContext","key","context","getContext"],"mappings":"AAEU,IAACA;AAGJ,SAASC,EAAsBC,GAAW;AAChD,EAAAF,IAAoBE;AACrB;AAEO,SAASC,IAAwB;AACvC,MAAI,CAACH,EAAmB,OAAM,IAAI,MAAM,kDAAkD;AAC1F,SAAOA;AACR;AA6BO,SAASI,EAAQC,GAAI;AAC3B,EAAAF,EAAuB,EAAC,GAAG,SAAS,KAAKE,CAAE;AAC5C;AAkFO,SAASC,EAAWC,GAAKC,GAAS;AACxC,SAAAL,EAAqB,EAAG,GAAG,QAAQ,IAAII,GAAKC,CAAO,GAC5CA;AACR;AAWO,SAASC,EAAWF,GAAK;AAC/B,SAAOJ,EAAuB,EAAC,GAAG,QAAQ,IAAII,CAAG;AAClD;","x_google_ignoreList":[0]}
@@ -1,7 +1,7 @@
1
1
  var k = Object.defineProperty;
2
2
  var v = (e, t, r) => t in e ? k(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
- var d = (e, t, r) => (v(e, typeof t != "symbol" ? t + "" : t, r), r);
4
- import { flush as w, add_render_callback as g, flush_render_callbacks as E, dirty_components as j, schedule_update as C } from "./annotorious-svelte.es14.js";
3
+ var d = (e, t, r) => v(e, typeof t != "symbol" ? t + "" : t, r);
4
+ import { flush as w, add_render_callback as g, flush_render_callbacks as E, dirty_components as j, schedule_update as C } from "./annotorious-svelte.es12.js";
5
5
  import { current_component as M, set_current_component as b } from "./annotorious-svelte.es8.js";
6
6
  import { noop as u, blank_object as y, run_all as i, is_function as x, is_empty as O, run as S } from "./annotorious-svelte.es5.js";
7
7
  import { children as z, detach as A } from "./annotorious-svelte.es6.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@annotorious/svelte",
3
- "version": "3.0.0-rc.27",
3
+ "version": "3.0.0-rc.29",
4
4
  "description": "Annotorious Svelte bindings",
5
5
  "author": "Rainer Simon",
6
6
  "license": "BSD-3-Clause",
@@ -15,15 +15,15 @@
15
15
  "types": "./dist/index.d.ts",
16
16
  "svelte": "./src/index.ts",
17
17
  "devDependencies": {
18
- "@sveltejs/vite-plugin-svelte": "^3.1.0",
18
+ "@sveltejs/vite-plugin-svelte": "^3.1.1",
19
19
  "@tsconfig/svelte": "^5.0.4",
20
20
  "@types/openseadragon": "^3.0.10",
21
- "svelte": "^4.2.17",
22
- "svelte-check": "^3.7.1",
23
- "svelte-preprocess": "^5.1.4",
24
- "tslib": "^2.6.2",
21
+ "svelte": "^4.2.18",
22
+ "svelte-check": "^3.8.0",
23
+ "svelte-preprocess": "^6.0.1",
24
+ "tslib": "^2.6.3",
25
25
  "typescript": "^5.4.5",
26
- "vite": "^5.2.11",
26
+ "vite": "^5.3.1",
27
27
  "vite-plugin-dts": "^3.9.1"
28
28
  },
29
29
  "peerDependencies": {
@@ -35,9 +35,9 @@
35
35
  }
36
36
  },
37
37
  "dependencies": {
38
- "@annotorious/core": "3.0.0-rc.27",
39
- "@annotorious/annotorious": "3.0.0-rc.27",
40
- "@annotorious/openseadragon": "3.0.0-rc.27",
38
+ "@annotorious/core": "3.0.0-rc.29",
39
+ "@annotorious/annotorious": "3.0.0-rc.29",
40
+ "@annotorious/openseadragon": "3.0.0-rc.29",
41
41
  "@neodrag/svelte": "^2.0.6"
42
42
  },
43
43
  "sideEffects": false
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { setContext } from 'svelte';
3
- import { SvelteAnnotator, SvelteAnnotatorState, toSvelteStore } from '@annotorious/core';
4
- import { createOSDAnnotator, ImageAnnotation } from '@annotorious/openseadragon';
3
+ import { type SvelteAnnotator, type SvelteAnnotatorState, toSvelteStore } from '@annotorious/core';
4
+ import { createOSDAnnotator, type ImageAnnotation } from '@annotorious/openseadragon';
5
5
  import type OpenSeadragon from 'openseadragon';
6
6
 
7
7
  /** props **/
package/tsconfig.json CHANGED
@@ -8,7 +8,6 @@
8
8
  "esModuleInterop": true,
9
9
  "forceConsistentCasingInFileNames": true,
10
10
  "ignoreDeprecations": "5.0",
11
- "importsNotUsedAsValues": "error",
12
11
  "incremental": false,
13
12
  "isolatedModules": true,
14
13
  "module": "ESNext",
@@ -18,7 +17,8 @@
18
17
  "skipLibCheck": false,
19
18
  "sourceMap": true,
20
19
  "target": "ESNext",
21
- "types": ["svelte"]
20
+ "types": ["svelte"],
21
+ "verbatimModuleSyntax": true
22
22
  },
23
23
  "include": ["./src/**/*", "./test/**/*"],
24
24
  "exclude": ["node_modules", "dist"]
@@ -1,59 +0,0 @@
1
- import { run_all as i } from "./annotorious-svelte.es5.js";
2
- import { set_current_component as a, current_component as u } from "./annotorious-svelte.es8.js";
3
- const r = [], h = [];
4
- let c = [];
5
- const d = [], p = /* @__PURE__ */ Promise.resolve();
6
- let f = !1;
7
- function w() {
8
- f || (f = !0, p.then(m));
9
- }
10
- function _(e) {
11
- c.push(e);
12
- }
13
- const s = /* @__PURE__ */ new Set();
14
- let l = 0;
15
- function m() {
16
- if (l !== 0)
17
- return;
18
- const e = u;
19
- do {
20
- try {
21
- for (; l < r.length; ) {
22
- const t = r[l];
23
- l++, a(t), g(t.$$);
24
- }
25
- } catch (t) {
26
- throw r.length = 0, l = 0, t;
27
- }
28
- for (a(null), r.length = 0, l = 0; h.length; )
29
- h.pop()();
30
- for (let t = 0; t < c.length; t += 1) {
31
- const n = c[t];
32
- s.has(n) || (s.add(n), n());
33
- }
34
- c.length = 0;
35
- } while (r.length);
36
- for (; d.length; )
37
- d.pop()();
38
- f = !1, s.clear(), a(e);
39
- }
40
- function g(e) {
41
- if (e.fragment !== null) {
42
- e.update(), i(e.before_update);
43
- const t = e.dirty;
44
- e.dirty = [-1], e.fragment && e.fragment.p(e.ctx, t), e.after_update.forEach(_);
45
- }
46
- }
47
- function y(e) {
48
- const t = [], n = [];
49
- c.forEach((o) => e.indexOf(o) === -1 ? t.push(o) : n.push(o)), n.forEach((o) => o()), c = t;
50
- }
51
- export {
52
- _ as add_render_callback,
53
- h as binding_callbacks,
54
- r as dirty_components,
55
- m as flush,
56
- y as flush_render_callbacks,
57
- w as schedule_update
58
- };
59
- //# sourceMappingURL=annotorious-svelte.es14.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"annotorious-svelte.es14.js","sources":["../../../node_modules/svelte/src/runtime/internal/scheduler.js"],"sourcesContent":["import { run_all } from './utils.js';\nimport { current_component, set_current_component } from './lifecycle.js';\n\nexport const dirty_components = [];\nexport const intros = { enabled: false };\nexport const binding_callbacks = [];\n\nlet render_callbacks = [];\n\nconst flush_callbacks = [];\n\nconst resolved_promise = /* @__PURE__ */ Promise.resolve();\n\nlet update_scheduled = false;\n\n/** @returns {void} */\nexport function schedule_update() {\n\tif (!update_scheduled) {\n\t\tupdate_scheduled = true;\n\t\tresolved_promise.then(flush);\n\t}\n}\n\n/** @returns {Promise<void>} */\nexport function tick() {\n\tschedule_update();\n\treturn resolved_promise;\n}\n\n/** @returns {void} */\nexport function add_render_callback(fn) {\n\trender_callbacks.push(fn);\n}\n\n/** @returns {void} */\nexport function add_flush_callback(fn) {\n\tflush_callbacks.push(fn);\n}\n\n// flush() calls callbacks in this order:\n// 1. All beforeUpdate callbacks, in order: parents before children\n// 2. All bind:this callbacks, in reverse order: children before parents.\n// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT\n// for afterUpdates called during the initial onMount, which are called in\n// reverse order: children before parents.\n// Since callbacks might update component values, which could trigger another\n// call to flush(), the following steps guard against this:\n// 1. During beforeUpdate, any updated components will be added to the\n// dirty_components array and will cause a reentrant call to flush(). Because\n// the flush index is kept outside the function, the reentrant call will pick\n// up where the earlier call left off and go through all dirty components. The\n// current_component value is saved and restored so that the reentrant call will\n// not interfere with the \"parent\" flush() call.\n// 2. bind:this callbacks cannot trigger new flush() calls.\n// 3. During afterUpdate, any updated components will NOT have their afterUpdate\n// callback called a second time; the seen_callbacks set, outside the flush()\n// function, guarantees this behavior.\nconst seen_callbacks = new Set();\n\nlet flushidx = 0; // Do *not* move this inside the flush() function\n\n/** @returns {void} */\nexport function flush() {\n\t// Do not reenter flush while dirty components are updated, as this can\n\t// result in an infinite loop. Instead, let the inner flush handle it.\n\t// Reentrancy is ok afterwards for bindings etc.\n\tif (flushidx !== 0) {\n\t\treturn;\n\t}\n\tconst saved_component = current_component;\n\tdo {\n\t\t// first, call beforeUpdate functions\n\t\t// and update components\n\t\ttry {\n\t\t\twhile (flushidx < dirty_components.length) {\n\t\t\t\tconst component = dirty_components[flushidx];\n\t\t\t\tflushidx++;\n\t\t\t\tset_current_component(component);\n\t\t\t\tupdate(component.$$);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t// reset dirty state to not end up in a deadlocked state and then rethrow\n\t\t\tdirty_components.length = 0;\n\t\t\tflushidx = 0;\n\t\t\tthrow e;\n\t\t}\n\t\tset_current_component(null);\n\t\tdirty_components.length = 0;\n\t\tflushidx = 0;\n\t\twhile (binding_callbacks.length) binding_callbacks.pop()();\n\t\t// then, once components are updated, call\n\t\t// afterUpdate functions. This may cause\n\t\t// subsequent updates...\n\t\tfor (let i = 0; i < render_callbacks.length; i += 1) {\n\t\t\tconst callback = render_callbacks[i];\n\t\t\tif (!seen_callbacks.has(callback)) {\n\t\t\t\t// ...so guard against infinite loops\n\t\t\t\tseen_callbacks.add(callback);\n\t\t\t\tcallback();\n\t\t\t}\n\t\t}\n\t\trender_callbacks.length = 0;\n\t} while (dirty_components.length);\n\twhile (flush_callbacks.length) {\n\t\tflush_callbacks.pop()();\n\t}\n\tupdate_scheduled = false;\n\tseen_callbacks.clear();\n\tset_current_component(saved_component);\n}\n\n/** @returns {void} */\nfunction update($$) {\n\tif ($$.fragment !== null) {\n\t\t$$.update();\n\t\trun_all($$.before_update);\n\t\tconst dirty = $$.dirty;\n\t\t$$.dirty = [-1];\n\t\t$$.fragment && $$.fragment.p($$.ctx, dirty);\n\t\t$$.after_update.forEach(add_render_callback);\n\t}\n}\n\n/**\n * Useful for example to execute remaining `afterUpdate` callbacks before executing `destroy`.\n * @param {Function[]} fns\n * @returns {void}\n */\nexport function flush_render_callbacks(fns) {\n\tconst filtered = [];\n\tconst targets = [];\n\trender_callbacks.forEach((c) => (fns.indexOf(c) === -1 ? filtered.push(c) : targets.push(c)));\n\ttargets.forEach((c) => c());\n\trender_callbacks = filtered;\n}\n"],"names":["dirty_components","binding_callbacks","render_callbacks","flush_callbacks","resolved_promise","update_scheduled","schedule_update","flush","add_render_callback","fn","seen_callbacks","flushidx","saved_component","current_component","component","set_current_component","update","e","i","callback","$$","run_all","dirty","flush_render_callbacks","fns","filtered","targets","c"],"mappings":";;AAGY,MAACA,IAAmB,CAAG,GAEtBC,IAAoB,CAAG;AAEpC,IAAIC,IAAmB,CAAA;AAEvB,MAAMC,IAAkB,CAAA,GAElBC,IAAmC,wBAAQ;AAEjD,IAAIC,IAAmB;AAGhB,SAASC,IAAkB;AACjC,EAAKD,MACJA,IAAmB,IACnBD,EAAiB,KAAKG,CAAK;AAE7B;AASO,SAASC,EAAoBC,GAAI;AACvC,EAAAP,EAAiB,KAAKO,CAAE;AACzB;AAyBA,MAAMC,IAAiB,oBAAI;AAE3B,IAAIC,IAAW;AAGR,SAASJ,IAAQ;AAIvB,MAAII,MAAa;AAChB;AAED,QAAMC,IAAkBC;AACxB,KAAG;AAGF,QAAI;AACH,aAAOF,IAAWX,EAAiB,UAAQ;AAC1C,cAAMc,IAAYd,EAAiBW,CAAQ;AAC3C,QAAAA,KACAI,EAAsBD,CAAS,GAC/BE,EAAOF,EAAU,EAAE;AAAA,MACnB;AAAA,IACD,SAAQG,GAAG;AAEX,YAAAjB,EAAiB,SAAS,GAC1BW,IAAW,GACLM;AAAA,IACN;AAID,SAHAF,EAAsB,IAAI,GAC1Bf,EAAiB,SAAS,GAC1BW,IAAW,GACJV,EAAkB;AAAQ,MAAAA,EAAkB,IAAK,EAAA;AAIxD,aAASiB,IAAI,GAAGA,IAAIhB,EAAiB,QAAQgB,KAAK,GAAG;AACpD,YAAMC,IAAWjB,EAAiBgB,CAAC;AACnC,MAAKR,EAAe,IAAIS,CAAQ,MAE/BT,EAAe,IAAIS,CAAQ,GAC3BA;IAED;AACD,IAAAjB,EAAiB,SAAS;AAAA,EAC5B,SAAUF,EAAiB;AAC1B,SAAOG,EAAgB;AACtB,IAAAA,EAAgB,IAAG;AAEpB,EAAAE,IAAmB,IACnBK,EAAe,MAAK,GACpBK,EAAsBH,CAAe;AACtC;AAGA,SAASI,EAAOI,GAAI;AACnB,MAAIA,EAAG,aAAa,MAAM;AACzB,IAAAA,EAAG,OAAM,GACTC,EAAQD,EAAG,aAAa;AACxB,UAAME,IAAQF,EAAG;AACjB,IAAAA,EAAG,QAAQ,CAAC,EAAE,GACdA,EAAG,YAAYA,EAAG,SAAS,EAAEA,EAAG,KAAKE,CAAK,GAC1CF,EAAG,aAAa,QAAQZ,CAAmB;AAAA,EAC3C;AACF;AAOO,SAASe,EAAuBC,GAAK;AAC3C,QAAMC,IAAW,CAAA,GACXC,IAAU,CAAA;AAChB,EAAAxB,EAAiB,QAAQ,CAACyB,MAAOH,EAAI,QAAQG,CAAC,MAAM,KAAKF,EAAS,KAAKE,CAAC,IAAID,EAAQ,KAAKC,CAAC,CAAE,GAC5FD,EAAQ,QAAQ,CAACC,MAAMA,EAAG,CAAA,GAC1BzB,IAAmBuB;AACpB;","x_google_ignoreList":[0]}