@sfgrp/distinguish 0.4.3 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { defineComponent as S, computed as A, createElementBlock as y, openBlock as p, withDirectives as q, createTextVNode as $, createElementVNode as f, vModelCheckbox as se, Fragment as D, renderList as M, toDisplayString as E, vModelSelect as ue, unref as k, normalizeClass as we, renderSlot as F, onMounted as ct, onUnmounted as ut, createBlock as T, Transition as dt, withCtx as w, withModifiers as Vt, normalizeStyle as qt, ref as X, createVNode as v, createCommentVNode as j, watch as Ht, withKeys as pt, vModelText as ft, resolveDynamicComponent as zt, normalizeProps as Ke, guardReactiveProps as Je, createApp as Kt } from "vue";
1
+ import { defineComponent as S, computed as I, createElementBlock as y, openBlock as p, withDirectives as q, createTextVNode as U, createElementVNode as f, vModelCheckbox as se, Fragment as D, renderList as M, toDisplayString as R, vModelSelect as ue, unref as k, normalizeClass as we, renderSlot as N, onMounted as ct, onUnmounted as ut, createBlock as T, Transition as dt, withCtx as w, withModifiers as Vt, normalizeStyle as qt, ref as X, createVNode as v, createCommentVNode as j, watch as Ht, withKeys as pt, vModelText as ft, resolveDynamicComponent as zt, normalizeProps as Ke, guardReactiveProps as Je, createApp as Kt } from "vue";
2
2
  import { defineStore as je, createPinia as Jt } from "pinia";
3
3
  function mt(e, t) {
4
4
  return function() {
@@ -17,12 +17,12 @@ function Qt(e) {
17
17
  let t;
18
18
  return typeof ArrayBuffer < "u" && ArrayBuffer.isView ? t = ArrayBuffer.isView(e) : t = e && e.buffer && ht(e.buffer), t;
19
19
  }
20
- const Gt = ve("string"), V = ve("function"), gt = ve("number"), Ee = (e) => e !== null && typeof e == "object", Yt = (e) => e === !0 || e === !1, he = (e) => {
20
+ const Gt = ve("string"), V = ve("function"), gt = ve("number"), Re = (e) => e !== null && typeof e == "object", Yt = (e) => e === !0 || e === !1, he = (e) => {
21
21
  if (Se(e) !== "object")
22
22
  return !1;
23
23
  const t = Be(e);
24
24
  return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e);
25
- }, Zt = H("Date"), en = H("File"), tn = H("Blob"), nn = H("FileList"), sn = (e) => Ee(e) && V(e.pipe), rn = (e) => {
25
+ }, Zt = H("Date"), en = H("File"), tn = H("Blob"), nn = H("FileList"), sn = (e) => Re(e) && V(e.pipe), rn = (e) => {
26
26
  let t;
27
27
  return e && (typeof FormData == "function" && e instanceof FormData || V(e.append) && ((t = Se(e)) === "formdata" || // detect form-data instance
28
28
  t === "object" && V(e.toString) && e.toString() === "[object FormData]"));
@@ -50,11 +50,11 @@ function yt(e, t) {
50
50
  return r;
51
51
  return null;
52
52
  }
53
- const Y = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : global, bt = (e) => !ce(e) && e !== Y;
54
- function $e() {
53
+ const Z = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : global, bt = (e) => !ce(e) && e !== Z;
54
+ function Ue() {
55
55
  const { caseless: e } = bt(this) && this || {}, t = {}, n = (s, r) => {
56
56
  const o = e && yt(t, r) || r;
57
- he(t[o]) && he(s) ? t[o] = $e(t[o], s) : he(s) ? t[o] = $e({}, s) : re(s) ? t[o] = s.slice() : t[o] = s;
57
+ he(t[o]) && he(s) ? t[o] = Ue(t[o], s) : he(s) ? t[o] = Ue({}, s) : re(s) ? t[o] = s.slice() : t[o] = s;
58
58
  };
59
59
  for (let s = 0, r = arguments.length; s < r; s++)
60
60
  arguments[s] && de(arguments[s], n);
@@ -107,13 +107,13 @@ const pn = (e, t, n, { allOwnKeys: s } = {}) => (de(t, (r, o) => {
107
107
  function(n, s, r) {
108
108
  return s.toUpperCase() + r;
109
109
  }
110
- ), We = (({ hasOwnProperty: e }) => (t, n) => e.call(t, n))(Object.prototype), En = H("RegExp"), _t = (e, t) => {
110
+ ), We = (({ hasOwnProperty: e }) => (t, n) => e.call(t, n))(Object.prototype), Rn = H("RegExp"), _t = (e, t) => {
111
111
  const n = Object.getOwnPropertyDescriptors(e), s = {};
112
112
  de(n, (r, o) => {
113
113
  let i;
114
114
  (i = t(r, o, e)) !== !1 && (s[o] = i || r);
115
115
  }), Object.defineProperties(e, s);
116
- }, Rn = (e) => {
116
+ }, En = (e) => {
117
117
  _t(e, (t, n) => {
118
118
  if (V(e) && ["arguments", "caller", "callee"].indexOf(n) !== -1)
119
119
  return !1;
@@ -140,9 +140,9 @@ const pn = (e, t, n, { allOwnKeys: s } = {}) => (de(t, (r, o) => {
140
140
  function xn(e) {
141
141
  return !!(e && V(e.append) && e[Symbol.toStringTag] === "FormData" && e[Symbol.iterator]);
142
142
  }
143
- const An = (e) => {
143
+ const In = (e) => {
144
144
  const t = new Array(10), n = (s, r) => {
145
- if (Ee(s)) {
145
+ if (Re(s)) {
146
146
  if (t.indexOf(s) >= 0)
147
147
  return;
148
148
  if (!("toJSON" in s)) {
@@ -157,14 +157,14 @@ const An = (e) => {
157
157
  return s;
158
158
  };
159
159
  return n(e, 0);
160
- }, Cn = H("AsyncFunction"), In = (e) => e && (Ee(e) || V(e)) && V(e.then) && V(e.catch), wt = ((e, t) => e ? setImmediate : t ? ((n, s) => (Y.addEventListener("message", ({ source: r, data: o }) => {
161
- r === Y && o === n && s.length && s.shift()();
160
+ }, An = H("AsyncFunction"), Cn = (e) => e && (Re(e) || V(e)) && V(e.then) && V(e.catch), wt = ((e, t) => e ? setImmediate : t ? ((n, s) => (Z.addEventListener("message", ({ source: r, data: o }) => {
161
+ r === Z && o === n && s.length && s.shift()();
162
162
  }, !1), (r) => {
163
- s.push(r), Y.postMessage(n, "*");
163
+ s.push(r), Z.postMessage(n, "*");
164
164
  }))(`axios@${Math.random()}`, []) : (n) => setTimeout(n))(
165
165
  typeof setImmediate == "function",
166
- V(Y.postMessage)
167
- ), Un = typeof queueMicrotask < "u" ? queueMicrotask.bind(Y) : typeof process < "u" && process.nextTick || wt, l = {
166
+ V(Z.postMessage)
167
+ ), $n = typeof queueMicrotask < "u" ? queueMicrotask.bind(Z) : typeof process < "u" && process.nextTick || wt, l = {
168
168
  isArray: re,
169
169
  isArrayBuffer: ht,
170
170
  isBuffer: Xt,
@@ -173,7 +173,7 @@ const An = (e) => {
173
173
  isString: Gt,
174
174
  isNumber: gt,
175
175
  isBoolean: Yt,
176
- isObject: Ee,
176
+ isObject: Re,
177
177
  isPlainObject: he,
178
178
  isReadableStream: an,
179
179
  isRequest: ln,
@@ -183,14 +183,14 @@ const An = (e) => {
183
183
  isDate: Zt,
184
184
  isFile: en,
185
185
  isBlob: tn,
186
- isRegExp: En,
186
+ isRegExp: Rn,
187
187
  isFunction: V,
188
188
  isStream: sn,
189
189
  isURLSearchParams: on,
190
190
  isTypedArray: bn,
191
191
  isFileList: nn,
192
192
  forEach: de,
193
- merge: $e,
193
+ merge: Ue,
194
194
  extend: pn,
195
195
  trim: dn,
196
196
  stripBOM: fn,
@@ -207,20 +207,20 @@ const An = (e) => {
207
207
  hasOwnProp: We,
208
208
  // an alias to avoid ESLint no-prototype-builtins detection
209
209
  reduceDescriptors: _t,
210
- freezeMethods: Rn,
210
+ freezeMethods: En,
211
211
  toObjectSet: Tn,
212
212
  toCamelCase: vn,
213
213
  noop: kn,
214
214
  toFiniteNumber: On,
215
215
  findKey: yt,
216
- global: Y,
216
+ global: Z,
217
217
  isContextDefined: bt,
218
218
  isSpecCompliantForm: xn,
219
- toJSONObject: An,
220
- isAsyncFn: Cn,
221
- isThenable: In,
219
+ toJSONObject: In,
220
+ isAsyncFn: An,
221
+ isThenable: Cn,
222
222
  setImmediate: wt,
223
- asap: Un
223
+ asap: $n
224
224
  };
225
225
  function b(e, t, n, s, r) {
226
226
  Error.call(this), Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = new Error().stack, this.message = e, this.name = "AxiosError", t && (this.code = t), n && (this.config = n), s && (this.request = s), r && (this.response = r, this.status = r.status ? r.status : null);
@@ -272,16 +272,16 @@ b.from = (e, t, n, s, r, o) => {
272
272
  return d !== Error.prototype;
273
273
  }, (a) => a !== "isAxiosError"), b.call(i, e.message, t, n, s, r), i.cause = e, i.name = e.name, o && Object.assign(i, o), i;
274
274
  };
275
- const $n = null;
275
+ const Un = null;
276
276
  function De(e) {
277
277
  return l.isPlainObject(e) || l.isArray(e);
278
278
  }
279
- function Et(e) {
279
+ function Rt(e) {
280
280
  return l.endsWith(e, "[]") ? e.slice(0, -2) : e;
281
281
  }
282
282
  function Xe(e, t, n) {
283
283
  return e ? e.concat(t).map(function(r, o) {
284
- return r = Et(r), !n && o ? "[" + r + "]" : r;
284
+ return r = Rt(r), !n && o ? "[" + r + "]" : r;
285
285
  }).join(n ? "." : "") : t;
286
286
  }
287
287
  function Dn(e) {
@@ -290,7 +290,7 @@ function Dn(e) {
290
290
  const Ln = l.toFlatObject(l, {}, null, function(t) {
291
291
  return /^is[A-Z]/.test(t);
292
292
  });
293
- function Re(e, t, n) {
293
+ function Ee(e, t, n) {
294
294
  if (!l.isObject(e))
295
295
  throw new TypeError("target must be an object");
296
296
  t = t || new FormData(), n = l.toFlatObject(n, {
@@ -317,39 +317,39 @@ function Re(e, t, n) {
317
317
  if (l.endsWith(_, "{}"))
318
318
  _ = s ? _ : _.slice(0, -2), h = JSON.stringify(h);
319
319
  else if (l.isArray(h) && Dn(h) || (l.isFileList(h) || l.endsWith(_, "[]")) && (O = l.toArray(h)))
320
- return _ = Et(_), O.forEach(function(U, K) {
321
- !(l.isUndefined(U) || U === null) && t.append(
320
+ return _ = Rt(_), O.forEach(function($, K) {
321
+ !(l.isUndefined($) || $ === null) && t.append(
322
322
  // eslint-disable-next-line no-nested-ternary
323
323
  i === !0 ? Xe([_], K, o) : i === null ? _ : _ + "[]",
324
- c(U)
324
+ c($)
325
325
  );
326
326
  }), !1;
327
327
  }
328
328
  return De(h) ? !0 : (t.append(Xe(g, _, o), c(h)), !1);
329
329
  }
330
- const m = [], R = Object.assign(Ln, {
330
+ const m = [], E = Object.assign(Ln, {
331
331
  defaultVisitor: u,
332
332
  convertValue: c,
333
333
  isVisitable: De
334
334
  });
335
- function C(h, _) {
335
+ function A(h, _) {
336
336
  if (!l.isUndefined(h)) {
337
337
  if (m.indexOf(h) !== -1)
338
338
  throw Error("Circular reference detected in " + _.join("."));
339
- m.push(h), l.forEach(h, function(O, I) {
339
+ m.push(h), l.forEach(h, function(O, C) {
340
340
  (!(l.isUndefined(O) || O === null) && r.call(
341
341
  t,
342
342
  O,
343
- l.isString(I) ? I.trim() : I,
343
+ l.isString(C) ? C.trim() : C,
344
344
  _,
345
- R
346
- )) === !0 && C(O, _ ? _.concat(I) : [I]);
345
+ E
346
+ )) === !0 && A(O, _ ? _.concat(C) : [C]);
347
347
  }), m.pop();
348
348
  }
349
349
  }
350
350
  if (!l.isObject(e))
351
351
  throw new TypeError("data must be an object");
352
- return C(e), t;
352
+ return A(e), t;
353
353
  }
354
354
  function Qe(e) {
355
355
  const t = {
@@ -366,13 +366,13 @@ function Qe(e) {
366
366
  });
367
367
  }
368
368
  function Me(e, t) {
369
- this._pairs = [], e && Re(e, this, t);
369
+ this._pairs = [], e && Ee(e, this, t);
370
370
  }
371
- const Rt = Me.prototype;
372
- Rt.append = function(t, n) {
371
+ const Et = Me.prototype;
372
+ Et.append = function(t, n) {
373
373
  this._pairs.push([t, n]);
374
374
  };
375
- Rt.toString = function(t) {
375
+ Et.toString = function(t) {
376
376
  const n = t ? function(s) {
377
377
  return t.call(this, s, Qe);
378
378
  } : Qe;
@@ -456,11 +456,11 @@ const kt = {
456
456
  silentJSONParsing: !0,
457
457
  forcedJSONParsing: !0,
458
458
  clarifyTimeoutError: !1
459
- }, Fn = typeof URLSearchParams < "u" ? URLSearchParams : Me, Nn = typeof FormData < "u" ? FormData : null, jn = typeof Blob < "u" ? Blob : null, Bn = {
459
+ }, Nn = typeof URLSearchParams < "u" ? URLSearchParams : Me, Fn = typeof FormData < "u" ? FormData : null, jn = typeof Blob < "u" ? Blob : null, Bn = {
460
460
  isBrowser: !0,
461
461
  classes: {
462
- URLSearchParams: Fn,
463
- FormData: Nn,
462
+ URLSearchParams: Nn,
463
+ FormData: Fn,
464
464
  Blob: jn
465
465
  },
466
466
  protocols: ["http", "https", "file", "blob", "url", "data"]
@@ -477,7 +477,7 @@ self instanceof WorkerGlobalScope && typeof self.importScripts == "function", qn
477
477
  ...Bn
478
478
  };
479
479
  function zn(e, t) {
480
- return Re(e, new P.classes.URLSearchParams(), Object.assign({
480
+ return Ee(e, new P.classes.URLSearchParams(), Object.assign({
481
481
  visitor: function(n, s, r, o) {
482
482
  return P.isNode && l.isBuffer(n) ? (this.append(s, n.toString("base64")), !1) : o.defaultVisitor.apply(this, arguments);
483
483
  }
@@ -539,7 +539,7 @@ const pe = {
539
539
  return zn(t, this.formSerializer).toString();
540
540
  if ((a = l.isFileList(t)) || s.indexOf("multipart/form-data") > -1) {
541
541
  const d = this.env && this.env.FormData;
542
- return Re(
542
+ return Ee(
543
543
  a ? { "files[]": t } : t,
544
544
  d && new d(),
545
545
  this.formSerializer
@@ -629,7 +629,7 @@ function Gn(e) {
629
629
  return t;
630
630
  }
631
631
  const Yn = (e) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());
632
- function Ae(e, t, n, s, r) {
632
+ function Ie(e, t, n, s, r) {
633
633
  if (l.isFunction(s))
634
634
  return s.call(this, t, n);
635
635
  if (r && (t = n), !!l.isString(t)) {
@@ -698,7 +698,7 @@ let B = class {
698
698
  has(t, n) {
699
699
  if (t = ie(t), t) {
700
700
  const s = l.findKey(this, t);
701
- return !!(s && this[s] !== void 0 && (!n || Ae(this, this[s], s, n)));
701
+ return !!(s && this[s] !== void 0 && (!n || Ie(this, this[s], s, n)));
702
702
  }
703
703
  return !1;
704
704
  }
@@ -708,7 +708,7 @@ let B = class {
708
708
  function o(i) {
709
709
  if (i = ie(i), i) {
710
710
  const a = l.findKey(s, i);
711
- a && (!n || Ae(s, s[a], a, n)) && (delete s[a], r = !0);
711
+ a && (!n || Ie(s, s[a], a, n)) && (delete s[a], r = !0);
712
712
  }
713
713
  }
714
714
  return l.isArray(t) ? t.forEach(o) : o(t), r;
@@ -718,7 +718,7 @@ let B = class {
718
718
  let s = n.length, r = !1;
719
719
  for (; s--; ) {
720
720
  const o = n[s];
721
- (!t || Ae(this, this[o], o, t, !0)) && (delete this[o], r = !0);
721
+ (!t || Ie(this, this[o], o, t, !0)) && (delete this[o], r = !0);
722
722
  }
723
723
  return r;
724
724
  }
@@ -782,7 +782,7 @@ l.reduceDescriptors(B.prototype, ({ value: e }, t) => {
782
782
  };
783
783
  });
784
784
  l.freezeMethods(B);
785
- function Ce(e, t) {
785
+ function Ae(e, t) {
786
786
  const n = this || pe, s = t || n, r = B.from(s.headers);
787
787
  let o = s.data;
788
788
  return l.forEach(e, function(a) {
@@ -798,7 +798,7 @@ function oe(e, t, n) {
798
798
  l.inherits(oe, b, {
799
799
  __CANCEL__: !0
800
800
  });
801
- function At(e, t, n) {
801
+ function It(e, t, n) {
802
802
  const s = n.config.validateStatus;
803
803
  !n.status || !s || s(n.status) ? e(n) : t(new b(
804
804
  "Request failed with status code " + n.status,
@@ -819,13 +819,13 @@ function ns(e, t) {
819
819
  return t = t !== void 0 ? t : 1e3, function(d) {
820
820
  const c = Date.now(), u = s[o];
821
821
  i || (i = c), n[r] = d, s[r] = c;
822
- let m = o, R = 0;
822
+ let m = o, E = 0;
823
823
  for (; m !== r; )
824
- R += n[m++], m = m % e;
824
+ E += n[m++], m = m % e;
825
825
  if (r = (r + 1) % e, r === o && (o = (o + 1) % e), c - i < t)
826
826
  return;
827
- const C = u && c - u;
828
- return C ? Math.round(R * 1e3 / C) : void 0;
827
+ const A = u && c - u;
828
+ return A ? Math.round(E * 1e3 / A) : void 0;
829
829
  };
830
830
  }
831
831
  function ss(e, t) {
@@ -902,22 +902,22 @@ function is(e) {
902
902
  function as(e, t) {
903
903
  return t ? e.replace(/\/?\/$/, "") + "/" + t.replace(/^\/+/, "") : e;
904
904
  }
905
- function Ct(e, t, n) {
905
+ function At(e, t, n) {
906
906
  let s = !is(t);
907
907
  return e && (s || n == !1) ? as(e, t) : t;
908
908
  }
909
909
  const tt = (e) => e instanceof B ? { ...e } : e;
910
- function ee(e, t) {
910
+ function te(e, t) {
911
911
  t = t || {};
912
912
  const n = {};
913
- function s(c, u, m, R) {
914
- return l.isPlainObject(c) && l.isPlainObject(u) ? l.merge.call({ caseless: R }, c, u) : l.isPlainObject(u) ? l.merge({}, u) : l.isArray(u) ? u.slice() : u;
913
+ function s(c, u, m, E) {
914
+ return l.isPlainObject(c) && l.isPlainObject(u) ? l.merge.call({ caseless: E }, c, u) : l.isPlainObject(u) ? l.merge({}, u) : l.isArray(u) ? u.slice() : u;
915
915
  }
916
- function r(c, u, m, R) {
916
+ function r(c, u, m, E) {
917
917
  if (l.isUndefined(u)) {
918
918
  if (!l.isUndefined(c))
919
- return s(void 0, c, m, R);
920
- } else return s(c, u, m, R);
919
+ return s(void 0, c, m, E);
920
+ } else return s(c, u, m, E);
921
921
  }
922
922
  function o(c, u) {
923
923
  if (!l.isUndefined(u))
@@ -967,14 +967,14 @@ function ee(e, t) {
967
967
  headers: (c, u, m) => r(tt(c), tt(u), m, !0)
968
968
  };
969
969
  return l.forEach(Object.keys(Object.assign({}, e, t)), function(u) {
970
- const m = d[u] || r, R = m(e[u], t[u], u);
971
- l.isUndefined(R) && m !== a || (n[u] = R);
970
+ const m = d[u] || r, E = m(e[u], t[u], u);
971
+ l.isUndefined(E) && m !== a || (n[u] = E);
972
972
  }), n;
973
973
  }
974
- const It = (e) => {
975
- const t = ee({}, e);
974
+ const Ct = (e) => {
975
+ const t = te({}, e);
976
976
  let { data: n, withXSRFToken: s, xsrfHeaderName: r, xsrfCookieName: o, headers: i, auth: a } = t;
977
- t.headers = i = B.from(i), t.url = Tt(Ct(t.baseURL, t.url, t.allowAbsoluteUrls), e.params, e.paramsSerializer), a && i.set(
977
+ t.headers = i = B.from(i), t.url = Tt(At(t.baseURL, t.url, t.allowAbsoluteUrls), e.params, e.paramsSerializer), a && i.set(
978
978
  "Authorization",
979
979
  "Basic " + btoa((a.username || "") + ":" + (a.password ? unescape(encodeURIComponent(a.password)) : ""))
980
980
  );
@@ -994,33 +994,33 @@ const It = (e) => {
994
994
  return t;
995
995
  }, ls = typeof XMLHttpRequest < "u", cs = ls && function(e) {
996
996
  return new Promise(function(n, s) {
997
- const r = It(e);
997
+ const r = Ct(e);
998
998
  let o = r.data;
999
999
  const i = B.from(r.headers).normalize();
1000
- let { responseType: a, onUploadProgress: d, onDownloadProgress: c } = r, u, m, R, C, h;
1000
+ let { responseType: a, onUploadProgress: d, onDownloadProgress: c } = r, u, m, E, A, h;
1001
1001
  function _() {
1002
- C && C(), h && h(), r.cancelToken && r.cancelToken.unsubscribe(u), r.signal && r.signal.removeEventListener("abort", u);
1002
+ A && A(), h && h(), r.cancelToken && r.cancelToken.unsubscribe(u), r.signal && r.signal.removeEventListener("abort", u);
1003
1003
  }
1004
1004
  let g = new XMLHttpRequest();
1005
1005
  g.open(r.method.toUpperCase(), r.url, !0), g.timeout = r.timeout;
1006
1006
  function O() {
1007
1007
  if (!g)
1008
1008
  return;
1009
- const U = B.from(
1009
+ const $ = B.from(
1010
1010
  "getAllResponseHeaders" in g && g.getAllResponseHeaders()
1011
- ), N = {
1011
+ ), F = {
1012
1012
  data: !a || a === "text" || a === "json" ? g.responseText : g.response,
1013
1013
  status: g.status,
1014
1014
  statusText: g.statusText,
1015
- headers: U,
1015
+ headers: $,
1016
1016
  config: e,
1017
1017
  request: g
1018
1018
  };
1019
- At(function(Q) {
1020
- n(Q), _();
1021
- }, function(Q) {
1022
- s(Q), _();
1023
- }, N), g = null;
1019
+ It(function(G) {
1020
+ n(G), _();
1021
+ }, function(G) {
1022
+ s(G), _();
1023
+ }, F), g = null;
1024
1024
  }
1025
1025
  "onloadend" in g ? g.onloadend = O : g.onreadystatechange = function() {
1026
1026
  !g || g.readyState !== 4 || g.status === 0 && !(g.responseURL && g.responseURL.indexOf("file:") === 0) || setTimeout(O);
@@ -1030,21 +1030,21 @@ const It = (e) => {
1030
1030
  s(new b("Network Error", b.ERR_NETWORK, e, g)), g = null;
1031
1031
  }, g.ontimeout = function() {
1032
1032
  let K = r.timeout ? "timeout of " + r.timeout + "ms exceeded" : "timeout exceeded";
1033
- const N = r.transitional || kt;
1033
+ const F = r.transitional || kt;
1034
1034
  r.timeoutErrorMessage && (K = r.timeoutErrorMessage), s(new b(
1035
1035
  K,
1036
- N.clarifyTimeoutError ? b.ETIMEDOUT : b.ECONNABORTED,
1036
+ F.clarifyTimeoutError ? b.ETIMEDOUT : b.ECONNABORTED,
1037
1037
  e,
1038
1038
  g
1039
1039
  )), g = null;
1040
- }, o === void 0 && i.setContentType(null), "setRequestHeader" in g && l.forEach(i.toJSON(), function(K, N) {
1041
- g.setRequestHeader(N, K);
1042
- }), l.isUndefined(r.withCredentials) || (g.withCredentials = !!r.withCredentials), a && a !== "json" && (g.responseType = r.responseType), c && ([R, h] = be(c, !0), g.addEventListener("progress", R)), d && g.upload && ([m, C] = be(d), g.upload.addEventListener("progress", m), g.upload.addEventListener("loadend", C)), (r.cancelToken || r.signal) && (u = (U) => {
1043
- g && (s(!U || U.type ? new oe(null, e, g) : U), g.abort(), g = null);
1040
+ }, o === void 0 && i.setContentType(null), "setRequestHeader" in g && l.forEach(i.toJSON(), function(K, F) {
1041
+ g.setRequestHeader(F, K);
1042
+ }), l.isUndefined(r.withCredentials) || (g.withCredentials = !!r.withCredentials), a && a !== "json" && (g.responseType = r.responseType), c && ([E, h] = be(c, !0), g.addEventListener("progress", E)), d && g.upload && ([m, A] = be(d), g.upload.addEventListener("progress", m), g.upload.addEventListener("loadend", A)), (r.cancelToken || r.signal) && (u = ($) => {
1043
+ g && (s(!$ || $.type ? new oe(null, e, g) : $), g.abort(), g = null);
1044
1044
  }, r.cancelToken && r.cancelToken.subscribe(u), r.signal && (r.signal.aborted ? u() : r.signal.addEventListener("abort", u)));
1045
- const I = ts(r.url);
1046
- if (I && P.protocols.indexOf(I) === -1) {
1047
- s(new b("Unsupported protocol " + I + ":", b.ERR_BAD_REQUEST, e));
1045
+ const C = ts(r.url);
1046
+ if (C && P.protocols.indexOf(C) === -1) {
1047
+ s(new b("Unsupported protocol " + C + ":", b.ERR_BAD_REQUEST, e));
1048
1048
  return;
1049
1049
  }
1050
1050
  g.send(o || null);
@@ -1115,8 +1115,8 @@ const It = (e) => {
1115
1115
  }
1116
1116
  let m = u.byteLength;
1117
1117
  if (n) {
1118
- let R = o += m;
1119
- n(R);
1118
+ let E = o += m;
1119
+ n(E);
1120
1120
  }
1121
1121
  d.enqueue(new Uint8Array(u));
1122
1122
  } catch (c) {
@@ -1129,13 +1129,13 @@ const It = (e) => {
1129
1129
  }, {
1130
1130
  highWaterMark: 2
1131
1131
  });
1132
- }, Te = typeof fetch == "function" && typeof Request == "function" && typeof Response == "function", Ut = Te && typeof ReadableStream == "function", ms = Te && (typeof TextEncoder == "function" ? /* @__PURE__ */ ((e) => (t) => e.encode(t))(new TextEncoder()) : async (e) => new Uint8Array(await new Response(e).arrayBuffer())), $t = (e, ...t) => {
1132
+ }, Te = typeof fetch == "function" && typeof Request == "function" && typeof Response == "function", $t = Te && typeof ReadableStream == "function", ms = Te && (typeof TextEncoder == "function" ? /* @__PURE__ */ ((e) => (t) => e.encode(t))(new TextEncoder()) : async (e) => new Uint8Array(await new Response(e).arrayBuffer())), Ut = (e, ...t) => {
1133
1133
  try {
1134
1134
  return !!e(...t);
1135
1135
  } catch {
1136
1136
  return !1;
1137
1137
  }
1138
- }, hs = Ut && $t(() => {
1138
+ }, hs = $t && Ut(() => {
1139
1139
  let e = !1;
1140
1140
  const t = new Request(P.origin, {
1141
1141
  body: new ReadableStream(),
@@ -1145,7 +1145,7 @@ const It = (e) => {
1145
1145
  }
1146
1146
  }).headers.has("Content-Type");
1147
1147
  return e && !t;
1148
- }), st = 64 * 1024, Pe = Ut && $t(() => l.isReadableStream(new Response("").body)), _e = {
1148
+ }), st = 64 * 1024, Pe = $t && Ut(() => l.isReadableStream(new Response("").body)), _e = {
1149
1149
  stream: Pe && ((e) => e.body)
1150
1150
  };
1151
1151
  Te && ((e) => {
@@ -1185,66 +1185,66 @@ const gs = async (e) => {
1185
1185
  responseType: c,
1186
1186
  headers: u,
1187
1187
  withCredentials: m = "same-origin",
1188
- fetchOptions: R
1189
- } = It(e);
1188
+ fetchOptions: E
1189
+ } = Ct(e);
1190
1190
  c = c ? (c + "").toLowerCase() : "text";
1191
- let C = us([r, o && o.toAbortSignal()], i), h;
1192
- const _ = C && C.unsubscribe && (() => {
1193
- C.unsubscribe();
1191
+ let A = us([r, o && o.toAbortSignal()], i), h;
1192
+ const _ = A && A.unsubscribe && (() => {
1193
+ A.unsubscribe();
1194
1194
  });
1195
1195
  let g;
1196
1196
  try {
1197
1197
  if (d && hs && n !== "get" && n !== "head" && (g = await ys(u, s)) !== 0) {
1198
- let N = new Request(t, {
1198
+ let F = new Request(t, {
1199
1199
  method: "POST",
1200
1200
  body: s,
1201
1201
  duplex: "half"
1202
1202
  }), W;
1203
- if (l.isFormData(s) && (W = N.headers.get("content-type")) && u.setContentType(W), N.body) {
1204
- const [Q, me] = Ze(
1203
+ if (l.isFormData(s) && (W = F.headers.get("content-type")) && u.setContentType(W), F.body) {
1204
+ const [G, me] = Ze(
1205
1205
  g,
1206
1206
  be(et(d))
1207
1207
  );
1208
- s = nt(N.body, st, Q, me);
1208
+ s = nt(F.body, st, G, me);
1209
1209
  }
1210
1210
  }
1211
1211
  l.isString(m) || (m = m ? "include" : "omit");
1212
1212
  const O = "credentials" in Request.prototype;
1213
1213
  h = new Request(t, {
1214
- ...R,
1215
- signal: C,
1214
+ ...E,
1215
+ signal: A,
1216
1216
  method: n.toUpperCase(),
1217
1217
  headers: u.normalize().toJSON(),
1218
1218
  body: s,
1219
1219
  duplex: "half",
1220
1220
  credentials: O ? m : void 0
1221
1221
  });
1222
- let I = await fetch(h);
1223
- const U = Pe && (c === "stream" || c === "response");
1224
- if (Pe && (a || U && _)) {
1225
- const N = {};
1222
+ let C = await fetch(h);
1223
+ const $ = Pe && (c === "stream" || c === "response");
1224
+ if (Pe && (a || $ && _)) {
1225
+ const F = {};
1226
1226
  ["status", "statusText", "headers"].forEach((ze) => {
1227
- N[ze] = I[ze];
1227
+ F[ze] = C[ze];
1228
1228
  });
1229
- const W = l.toFiniteNumber(I.headers.get("content-length")), [Q, me] = a && Ze(
1229
+ const W = l.toFiniteNumber(C.headers.get("content-length")), [G, me] = a && Ze(
1230
1230
  W,
1231
1231
  be(et(a), !0)
1232
1232
  ) || [];
1233
- I = new Response(
1234
- nt(I.body, st, Q, () => {
1233
+ C = new Response(
1234
+ nt(C.body, st, G, () => {
1235
1235
  me && me(), _ && _();
1236
1236
  }),
1237
- N
1237
+ F
1238
1238
  );
1239
1239
  }
1240
1240
  c = c || "text";
1241
- let K = await _e[l.findKey(_e, c) || "text"](I, e);
1242
- return !U && _ && _(), await new Promise((N, W) => {
1243
- At(N, W, {
1241
+ let K = await _e[l.findKey(_e, c) || "text"](C, e);
1242
+ return !$ && _ && _(), await new Promise((F, W) => {
1243
+ It(F, W, {
1244
1244
  data: K,
1245
- headers: B.from(I.headers),
1246
- status: I.status,
1247
- statusText: I.statusText,
1245
+ headers: B.from(C.headers),
1246
+ status: C.status,
1247
+ statusText: C.statusText,
1248
1248
  config: e,
1249
1249
  request: h
1250
1250
  });
@@ -1257,12 +1257,12 @@ const gs = async (e) => {
1257
1257
  }
1258
1258
  ) : b.from(O, O && O.code, e, h);
1259
1259
  }
1260
- }), Fe = {
1261
- http: $n,
1260
+ }), Ne = {
1261
+ http: Un,
1262
1262
  xhr: cs,
1263
1263
  fetch: bs
1264
1264
  };
1265
- l.forEach(Fe, (e, t) => {
1265
+ l.forEach(Ne, (e, t) => {
1266
1266
  if (e) {
1267
1267
  try {
1268
1268
  Object.defineProperty(e, "name", { value: t });
@@ -1280,7 +1280,7 @@ const rt = (e) => `- ${e}`, _s = (e) => l.isFunction(e) || e === null || e === !
1280
1280
  for (let o = 0; o < t; o++) {
1281
1281
  n = e[o];
1282
1282
  let i;
1283
- if (s = n, !_s(n) && (s = Fe[(i = String(n)).toLowerCase()], s === void 0))
1283
+ if (s = n, !_s(n) && (s = Ne[(i = String(n)).toLowerCase()], s === void 0))
1284
1284
  throw new b(`Unknown adapter '${i}'`);
1285
1285
  if (s)
1286
1286
  break;
@@ -1300,24 +1300,24 @@ const rt = (e) => `- ${e}`, _s = (e) => l.isFunction(e) || e === null || e === !
1300
1300
  }
1301
1301
  return s;
1302
1302
  },
1303
- adapters: Fe
1303
+ adapters: Ne
1304
1304
  };
1305
- function Ie(e) {
1305
+ function Ce(e) {
1306
1306
  if (e.cancelToken && e.cancelToken.throwIfRequested(), e.signal && e.signal.aborted)
1307
1307
  throw new oe(null, e);
1308
1308
  }
1309
1309
  function ot(e) {
1310
- return Ie(e), e.headers = B.from(e.headers), e.data = Ce.call(
1310
+ return Ce(e), e.headers = B.from(e.headers), e.data = Ae.call(
1311
1311
  e,
1312
1312
  e.transformRequest
1313
1313
  ), ["post", "put", "patch"].indexOf(e.method) !== -1 && e.headers.setContentType("application/x-www-form-urlencoded", !1), Dt.getAdapter(e.adapter || pe.adapter)(e).then(function(s) {
1314
- return Ie(e), s.data = Ce.call(
1314
+ return Ce(e), s.data = Ae.call(
1315
1315
  e,
1316
1316
  e.transformResponse,
1317
1317
  s
1318
1318
  ), s.headers = B.from(s.headers), s;
1319
1319
  }, function(s) {
1320
- return xt(s) || (Ie(e), s && s.response && (s.response.data = Ce.call(
1320
+ return xt(s) || (Ce(e), s && s.response && (s.response.data = Ae.call(
1321
1321
  e,
1322
1322
  e.transformResponse,
1323
1323
  s.response
@@ -1373,7 +1373,7 @@ const ye = {
1373
1373
  assertOptions: ws,
1374
1374
  validators: ke
1375
1375
  }, z = ye.validators;
1376
- let Z = class {
1376
+ let ee = class {
1377
1377
  constructor(t) {
1378
1378
  this.defaults = t, this.interceptors = {
1379
1379
  request: new Ge(),
@@ -1406,7 +1406,7 @@ let Z = class {
1406
1406
  }
1407
1407
  }
1408
1408
  _request(t, n) {
1409
- typeof t == "string" ? (n = n || {}, n.url = t) : n = t || {}, n = ee(this.defaults, n);
1409
+ typeof t == "string" ? (n = n || {}, n.url = t) : n = t || {}, n = te(this.defaults, n);
1410
1410
  const { transitional: s, paramsSerializer: r, headers: o } = n;
1411
1411
  s !== void 0 && ye.assertOptions(s, {
1412
1412
  silentJSONParsing: z.transitional(z.boolean),
@@ -1440,42 +1440,42 @@ let Z = class {
1440
1440
  this.interceptors.response.forEach(function(_) {
1441
1441
  c.push(_.fulfilled, _.rejected);
1442
1442
  });
1443
- let u, m = 0, R;
1443
+ let u, m = 0, E;
1444
1444
  if (!d) {
1445
1445
  const h = [ot.bind(this), void 0];
1446
- for (h.unshift.apply(h, a), h.push.apply(h, c), R = h.length, u = Promise.resolve(n); m < R; )
1446
+ for (h.unshift.apply(h, a), h.push.apply(h, c), E = h.length, u = Promise.resolve(n); m < E; )
1447
1447
  u = u.then(h[m++], h[m++]);
1448
1448
  return u;
1449
1449
  }
1450
- R = a.length;
1451
- let C = n;
1452
- for (m = 0; m < R; ) {
1450
+ E = a.length;
1451
+ let A = n;
1452
+ for (m = 0; m < E; ) {
1453
1453
  const h = a[m++], _ = a[m++];
1454
1454
  try {
1455
- C = h(C);
1455
+ A = h(A);
1456
1456
  } catch (g) {
1457
1457
  _.call(this, g);
1458
1458
  break;
1459
1459
  }
1460
1460
  }
1461
1461
  try {
1462
- u = ot.call(this, C);
1462
+ u = ot.call(this, A);
1463
1463
  } catch (h) {
1464
1464
  return Promise.reject(h);
1465
1465
  }
1466
- for (m = 0, R = c.length; m < R; )
1466
+ for (m = 0, E = c.length; m < E; )
1467
1467
  u = u.then(c[m++], c[m++]);
1468
1468
  return u;
1469
1469
  }
1470
1470
  getUri(t) {
1471
- t = ee(this.defaults, t);
1472
- const n = Ct(t.baseURL, t.url, t.allowAbsoluteUrls);
1471
+ t = te(this.defaults, t);
1472
+ const n = At(t.baseURL, t.url, t.allowAbsoluteUrls);
1473
1473
  return Tt(n, t.params, t.paramsSerializer);
1474
1474
  }
1475
1475
  };
1476
1476
  l.forEach(["delete", "get", "head", "options"], function(t) {
1477
- Z.prototype[t] = function(n, s) {
1478
- return this.request(ee(s || {}, {
1477
+ ee.prototype[t] = function(n, s) {
1478
+ return this.request(te(s || {}, {
1479
1479
  method: t,
1480
1480
  url: n,
1481
1481
  data: (s || {}).data
@@ -1485,7 +1485,7 @@ l.forEach(["delete", "get", "head", "options"], function(t) {
1485
1485
  l.forEach(["post", "put", "patch"], function(t) {
1486
1486
  function n(s) {
1487
1487
  return function(o, i, a) {
1488
- return this.request(ee(a || {}, {
1488
+ return this.request(te(a || {}, {
1489
1489
  method: t,
1490
1490
  headers: s ? {
1491
1491
  "Content-Type": "multipart/form-data"
@@ -1495,7 +1495,7 @@ l.forEach(["post", "put", "patch"], function(t) {
1495
1495
  }));
1496
1496
  };
1497
1497
  }
1498
- Z.prototype[t] = n(), Z.prototype[t + "Form"] = n(!0);
1498
+ ee.prototype[t] = n(), ee.prototype[t + "Form"] = n(!0);
1499
1499
  });
1500
1500
  let Ss = class Pt {
1501
1501
  constructor(t) {
@@ -1575,10 +1575,10 @@ function vs(e) {
1575
1575
  return e.apply(null, n);
1576
1576
  };
1577
1577
  }
1578
- function Es(e) {
1578
+ function Rs(e) {
1579
1579
  return l.isObject(e) && e.isAxiosError === !0;
1580
1580
  }
1581
- const Ne = {
1581
+ const Fe = {
1582
1582
  Continue: 100,
1583
1583
  SwitchingProtocols: 101,
1584
1584
  Processing: 102,
@@ -1643,54 +1643,54 @@ const Ne = {
1643
1643
  NotExtended: 510,
1644
1644
  NetworkAuthenticationRequired: 511
1645
1645
  };
1646
- Object.entries(Ne).forEach(([e, t]) => {
1647
- Ne[t] = e;
1646
+ Object.entries(Fe).forEach(([e, t]) => {
1647
+ Fe[t] = e;
1648
1648
  });
1649
- function Ft(e) {
1650
- const t = new Z(e), n = mt(Z.prototype.request, t);
1651
- return l.extend(n, Z.prototype, t, { allOwnKeys: !0 }), l.extend(n, t, null, { allOwnKeys: !0 }), n.create = function(r) {
1652
- return Ft(ee(e, r));
1649
+ function Nt(e) {
1650
+ const t = new ee(e), n = mt(ee.prototype.request, t);
1651
+ return l.extend(n, ee.prototype, t, { allOwnKeys: !0 }), l.extend(n, t, null, { allOwnKeys: !0 }), n.create = function(r) {
1652
+ return Nt(te(e, r));
1653
1653
  }, n;
1654
1654
  }
1655
- const x = Ft(pe);
1656
- x.Axios = Z;
1655
+ const x = Nt(pe);
1656
+ x.Axios = ee;
1657
1657
  x.CanceledError = oe;
1658
1658
  x.CancelToken = Ss;
1659
1659
  x.isCancel = xt;
1660
1660
  x.VERSION = Lt;
1661
- x.toFormData = Re;
1661
+ x.toFormData = Ee;
1662
1662
  x.AxiosError = b;
1663
1663
  x.Cancel = x.CanceledError;
1664
1664
  x.all = function(t) {
1665
1665
  return Promise.all(t);
1666
1666
  };
1667
1667
  x.spread = vs;
1668
- x.isAxiosError = Es;
1669
- x.mergeConfig = ee;
1668
+ x.isAxiosError = Rs;
1669
+ x.mergeConfig = te;
1670
1670
  x.AxiosHeaders = B;
1671
1671
  x.formToJSON = (e) => Ot(l.isHTMLForm(e) ? new FormData(e) : e);
1672
1672
  x.getAdapter = Dt.getAdapter;
1673
- x.HttpStatusCode = Ne;
1673
+ x.HttpStatusCode = Fe;
1674
1674
  x.default = x;
1675
1675
  const {
1676
- Axios: So,
1677
- AxiosError: vo,
1676
+ Axios: vo,
1677
+ AxiosError: Ro,
1678
1678
  CanceledError: Eo,
1679
- isCancel: Ro,
1680
- CancelToken: To,
1681
- VERSION: ko,
1682
- all: Oo,
1683
- Cancel: xo,
1679
+ isCancel: To,
1680
+ CancelToken: ko,
1681
+ VERSION: Oo,
1682
+ all: xo,
1683
+ Cancel: Io,
1684
1684
  isAxiosError: Ao,
1685
1685
  spread: Co,
1686
- toFormData: Io,
1686
+ toFormData: $o,
1687
1687
  AxiosHeaders: Uo,
1688
- HttpStatusCode: $o,
1689
- formToJSON: Do,
1690
- getAdapter: Lo,
1691
- mergeConfig: Po
1692
- } = x, Nt = (e = {}) => {
1693
- const t = te(), {
1688
+ HttpStatusCode: Do,
1689
+ formToJSON: Lo,
1690
+ getAdapter: Po,
1691
+ mergeConfig: No
1692
+ } = x, Ft = (e = {}) => {
1693
+ const t = Q(), {
1694
1694
  baseURL: n,
1695
1695
  projectId: s,
1696
1696
  projectToken: r,
@@ -1709,9 +1709,9 @@ const {
1709
1709
  ...a
1710
1710
  });
1711
1711
  };
1712
- class Rs {
1712
+ class Es {
1713
1713
  static key(t, n) {
1714
- return Nt().get(`/observation_matrices/${t}/key`, n);
1714
+ return Ft().get(`/observation_matrices/${t}/key`, n);
1715
1715
  }
1716
1716
  }
1717
1717
  const le = {
@@ -1754,26 +1754,26 @@ const le = {
1754
1754
  defaultUnit: e.default_unit,
1755
1755
  max: e.max,
1756
1756
  min: e.min
1757
- }), As = (e) => ({
1757
+ }), Is = (e) => ({
1758
1758
  ...fe(e),
1759
1759
  states: e.states.map((t) => jt(t))
1760
- }), Cs = (e) => ({
1760
+ }), As = (e) => ({
1761
1761
  ...fe(e),
1762
1762
  characterStates: e.states.map((t) => Ts(t))
1763
- }), Is = (e) => {
1763
+ }), Cs = (e) => {
1764
1764
  switch (e.type) {
1765
1765
  case ae.Continuous:
1766
1766
  return Os(e);
1767
1767
  case ae.Sample:
1768
1768
  return xs(e);
1769
1769
  case ae.PresenceAbsence:
1770
- return As(e);
1770
+ return Is(e);
1771
1771
  case ae.Qualitative:
1772
- return Cs(e);
1772
+ return As(e);
1773
1773
  default:
1774
1774
  return fe(e);
1775
1775
  }
1776
- }, Us = (e) => ({
1776
+ }, $s = (e) => ({
1777
1777
  observationMatrixId: e.observation_matrix_id,
1778
1778
  name: e.observation_matrix.name,
1779
1779
  globalId: e.observation_matrix.global_id
@@ -1789,7 +1789,7 @@ const le = {
1789
1789
  observationObjectId: e.object.observation_object_id,
1790
1790
  observationObjectType: e.object.observation_object_type,
1791
1791
  rowId: e.object.id
1792
- }), $s = (e) => ({
1792
+ }), Us = (e) => ({
1793
1793
  keywordId: e.id,
1794
1794
  definition: e.description,
1795
1795
  name: e.name
@@ -1839,8 +1839,8 @@ const le = {
1839
1839
  this.observationMatrix = e;
1840
1840
  },
1841
1841
  async requestInteractiveKey({ observationMatrixId: e, params: t = {}, opt: n = {} }) {
1842
- const s = await Rs.key(e, { params: t }), { data: r } = s;
1843
- return n.refreshOnlyTaxa || (this.setObservationMatrix(Us(r)), this.setDescriptors(r.list_of_descriptors.map((o) => Is(o))), this.setKeywords(r.descriptor_available_keywords.map((o) => $s(o))), this.setLanguages(r.descriptor_available_languages.map((o) => Ds(o)))), this.setEliminated(r.eliminated.map((o) => at(o))), this.setRemaining(r.remaining.map((o) => at(o))), s;
1842
+ const s = await Es.key(e, { params: t }), { data: r } = s;
1843
+ return n.refreshOnlyTaxa || (this.setObservationMatrix($s(r)), this.setDescriptors(r.list_of_descriptors.map((o) => Cs(o))), this.setKeywords(r.descriptor_available_keywords.map((o) => Us(o))), this.setLanguages(r.descriptor_available_languages.map((o) => Ds(o)))), this.setEliminated(r.eliminated.map((o) => at(o))), this.setRemaining(r.remaining.map((o) => at(o))), s;
1844
1844
  }
1845
1845
  }
1846
1846
  }), L = je("filter", {
@@ -1869,18 +1869,22 @@ const le = {
1869
1869
  const n = e.descriptors[t];
1870
1870
  return typeof n == "boolean" ? n : n || "";
1871
1871
  },
1872
- getFilterParams: (e) => ({
1873
- selected_descriptors: Object.entries(e.descriptors).map(
1874
- ([n, s]) => Array.isArray(s) ? `${n}:${s.join("|")}` : `${n}:${s}`
1875
- ).join("||"),
1876
- language_id: e.languageId,
1877
- keyword_ids: e.keywordIds,
1878
- sorting: e.sorting,
1879
- identified_to_rank: e.identifiedToRank,
1880
- error_tolerance: e.errorTolerance,
1881
- eliminate_unknown: e.eliminateUnknown,
1882
- row_filter: e.rowFilter ? e.rowIds.join("|") : []
1883
- })
1872
+ getFilterParams: (e) => {
1873
+ const t = Q();
1874
+ return {
1875
+ selected_descriptors: Object.entries(e.descriptors).map(
1876
+ ([s, r]) => Array.isArray(r) ? `${s}:${r.join("|")}` : `${s}:${r}`
1877
+ ).join("||"),
1878
+ language_id: e.languageId,
1879
+ keyword_ids: e.keywordIds,
1880
+ sorting: e.sorting,
1881
+ identified_to_rank: e.identifiedToRank,
1882
+ error_tolerance: e.errorTolerance,
1883
+ eliminate_unknown: e.eliminateUnknown,
1884
+ row_filter: e.rowFilter ? e.rowIds.join("|") : [],
1885
+ otu_filter: t.getOtuId
1886
+ };
1887
+ }
1884
1888
  },
1885
1889
  actions: {
1886
1890
  setDescriptor({
@@ -1911,7 +1915,7 @@ const le = {
1911
1915
  this.eliminateUnknown = e;
1912
1916
  }
1913
1917
  }
1914
- }), te = je("settings", {
1918
+ }), Q = je("settings", {
1915
1919
  state: () => ({
1916
1920
  gridLayout: "distinguish-layout-mode-1",
1917
1921
  isLoading: !1,
@@ -1919,6 +1923,7 @@ const le = {
1919
1923
  refreshOnlyTaxa: !1,
1920
1924
  shouldUpdate: !0,
1921
1925
  observationMatrixId: void 0,
1926
+ otuId: [],
1922
1927
  errorMessage: "",
1923
1928
  apiConfig: {
1924
1929
  baseURL: "",
@@ -1934,6 +1939,10 @@ const le = {
1934
1939
  getRefreshOnlyTaxa: (e) => e.refreshOnlyTaxa,
1935
1940
  getShouldUpdate: (e) => e.shouldUpdate,
1936
1941
  getObservationMatrixId: (e) => e.observationMatrixId,
1942
+ getOtuId: (e) => {
1943
+ var t;
1944
+ return ((t = e.otuId) == null ? void 0 : t.join("|")) || "";
1945
+ },
1937
1946
  getAPIConfig: (e) => e.apiConfig
1938
1947
  },
1939
1948
  actions: {
@@ -1949,9 +1958,12 @@ const le = {
1949
1958
  setAPIConfig(e) {
1950
1959
  this.apiConfig = e;
1951
1960
  },
1961
+ setOtuId(e) {
1962
+ this.otuId = [e].flat();
1963
+ },
1952
1964
  checkUpdate() {
1953
1965
  const e = L(), t = J(), n = this.observationMatrixId;
1954
- this.shouldUpdate && n && (this.isLoading = !0, t.requestInteractiveKey({
1966
+ this.shouldUpdate && typeof n == "number" && (this.isLoading = !0, t.requestInteractiveKey({
1955
1967
  observationMatrixId: n,
1956
1968
  params: e.getFilterParams,
1957
1969
  opt: {
@@ -1963,7 +1975,7 @@ const le = {
1963
1975
  }), Ls = /* @__PURE__ */ S({
1964
1976
  __name: "FilterEliminateUnknowns",
1965
1977
  setup(e) {
1966
- const t = L(), n = A({
1978
+ const t = L(), n = I({
1967
1979
  get: () => !!t.getEliminateUknown,
1968
1980
  set: (s) => {
1969
1981
  t.setEliminateUnknown(s);
@@ -1976,13 +1988,13 @@ const le = {
1976
1988
  }, null, 512), [
1977
1989
  [se, n.value]
1978
1990
  ]),
1979
- r[1] || (r[1] = $(" Eliminate unknowns "))
1991
+ r[1] || (r[1] = U(" Eliminate unknowns "))
1980
1992
  ]));
1981
1993
  }
1982
- }), Ps = ["value"], Fs = /* @__PURE__ */ S({
1994
+ }), Ps = ["value"], Ns = /* @__PURE__ */ S({
1983
1995
  __name: "FilterErrorTolerance",
1984
1996
  setup(e) {
1985
- const t = [0, 1, 2], n = L(), s = A({
1997
+ const t = [0, 1, 2], n = L(), s = I({
1986
1998
  get: () => n.getErrorTolerance,
1987
1999
  set: (r) => {
1988
2000
  n.setErrorTolerance(r);
@@ -2002,13 +2014,13 @@ const le = {
2002
2014
  (p(), y(D, null, M(t, (i) => f("option", {
2003
2015
  key: i,
2004
2016
  value: i
2005
- }, E(i), 9, Ps)), 64))
2017
+ }, R(i), 9, Ps)), 64))
2006
2018
  ], 512), [
2007
2019
  [ue, s.value]
2008
2020
  ])
2009
2021
  ]));
2010
2022
  }
2011
- }), Ns = [
2023
+ }), Fs = [
2012
2024
  "otu",
2013
2025
  "subspecies",
2014
2026
  "species",
@@ -2021,7 +2033,7 @@ const le = {
2021
2033
  ], js = /* @__PURE__ */ S({
2022
2034
  __name: "FilterRank",
2023
2035
  setup(e) {
2024
- const t = L(), n = A({
2036
+ const t = L(), n = I({
2025
2037
  get() {
2026
2038
  return t.getIdentifiedToRank;
2027
2039
  },
@@ -2035,7 +2047,7 @@ const le = {
2035
2047
  "onUpdate:modelValue": r[0] || (r[0] = (o) => n.value = o)
2036
2048
  }, [
2037
2049
  r[1] || (r[1] = f("option", { value: void 0 }, null, -1)),
2038
- (p(!0), y(D, null, M(k(Ns), (o) => (p(), y("option", { key: o }, E(o), 1))), 128))
2050
+ (p(!0), y(D, null, M(k(Fs), (o) => (p(), y("option", { key: o }, R(o), 1))), 128))
2039
2051
  ], 512), [
2040
2052
  [ue, n.value]
2041
2053
  ])
@@ -2044,7 +2056,7 @@ const le = {
2044
2056
  }), Bs = /* @__PURE__ */ S({
2045
2057
  __name: "FilterSort",
2046
2058
  setup(e) {
2047
- const t = ["ordered", "weighted", "optimized"], n = L(), s = A({
2059
+ const t = ["ordered", "weighted", "optimized"], n = L(), s = I({
2048
2060
  get() {
2049
2061
  return n.getSorting;
2050
2062
  },
@@ -2058,7 +2070,7 @@ const le = {
2058
2070
  "onUpdate:modelValue": o[0] || (o[0] = (i) => s.value = i)
2059
2071
  }, [
2060
2072
  o[1] || (o[1] = f("option", { value: void 0 }, null, -1)),
2061
- (p(), y(D, null, M(t, (i) => f("option", { key: i }, E(i), 1)), 64))
2073
+ (p(), y(D, null, M(t, (i) => f("option", { key: i }, R(i), 1)), 64))
2062
2074
  ], 512), [
2063
2075
  [ue, s.value]
2064
2076
  ])
@@ -2067,7 +2079,7 @@ const le = {
2067
2079
  }), Ms = ["value"], Vs = /* @__PURE__ */ S({
2068
2080
  __name: "FilterLanguage",
2069
2081
  setup(e) {
2070
- const t = L(), n = J(), s = A({
2082
+ const t = L(), n = J(), s = I({
2071
2083
  get: () => t.getLanguageId,
2072
2084
  set: (r) => {
2073
2085
  t.setLanguageId(Number(r));
@@ -2086,7 +2098,7 @@ const le = {
2086
2098
  (p(!0), y(D, null, M(k(n).getLanguages, ({ languageId: i, name: a }) => (p(), y("option", {
2087
2099
  key: i,
2088
2100
  value: i
2089
- }, E(a), 9, Ms))), 128))
2101
+ }, R(a), 9, Ms))), 128))
2090
2102
  ], 512), [
2091
2103
  [ue, s.value]
2092
2104
  ])
@@ -2100,7 +2112,7 @@ const le = {
2100
2112
  disabled: { type: Boolean }
2101
2113
  },
2102
2114
  setup(e) {
2103
- const t = e, n = A(() => [
2115
+ const t = e, n = I(() => [
2104
2116
  `distinguish-btn-${t.color}-color`,
2105
2117
  `distinguish-btn-${t.size}-size`
2106
2118
  ]);
@@ -2109,7 +2121,7 @@ const le = {
2109
2121
  class: we(["distinguish-btn", n.value]),
2110
2122
  disabled: s.disabled
2111
2123
  }, [
2112
- F(s.$slots, "default")
2124
+ N(s.$slots, "default")
2113
2125
  ], 10, qs));
2114
2126
  }
2115
2127
  }), Hs = { class: "distinguish-modal-wrapper" }, zs = { class: "distinguish-modal-header" }, Ks = { class: "distinguish-modal-body" }, Js = { class: "distinguish-modal-footer" }, qe = /* @__PURE__ */ S({
@@ -2142,13 +2154,13 @@ const le = {
2142
2154
  class: "distinguish-modal-close",
2143
2155
  onClick: o[0] || (o[0] = (i) => n("close"))
2144
2156
  }),
2145
- F(r.$slots, "header")
2157
+ N(r.$slots, "header")
2146
2158
  ]),
2147
2159
  f("div", Ks, [
2148
- F(r.$slots, "body")
2160
+ N(r.$slots, "body")
2149
2161
  ]),
2150
2162
  f("div", Js, [
2151
- F(r.$slots, "footer")
2163
+ N(r.$slots, "footer")
2152
2164
  ])
2153
2165
  ], 6)
2154
2166
  ])
@@ -2160,7 +2172,7 @@ const le = {
2160
2172
  }), Ws = { class: "distinguish-list-checkboxes" }, Xs = ["value"], Qs = /* @__PURE__ */ S({
2161
2173
  __name: "FilterKeywords",
2162
2174
  setup(e) {
2163
- const t = J(), n = L(), s = X(!1), r = A({
2175
+ const t = J(), n = L(), s = X(!1), r = I({
2164
2176
  get: () => n.getKeywordIds,
2165
2177
  set: (o) => {
2166
2178
  n.$patch({ keywordIds: o });
@@ -2175,7 +2187,7 @@ const le = {
2175
2187
  onClick: i[0] || (i[0] = (a) => s.value = !0)
2176
2188
  }, {
2177
2189
  default: w(() => i[3] || (i[3] = [
2178
- $(" Keyword ")
2190
+ U(" Keyword ")
2179
2191
  ])),
2180
2192
  _: 1
2181
2193
  }, 8, ["disabled", "title"]),
@@ -2197,7 +2209,7 @@ const le = {
2197
2209
  }, null, 8, Xs), [
2198
2210
  [se, r.value]
2199
2211
  ]),
2200
- $(" " + E(d), 1)
2212
+ U(" " + R(d), 1)
2201
2213
  ])
2202
2214
  ]))), 128))
2203
2215
  ])
@@ -2209,7 +2221,7 @@ const le = {
2209
2221
  }), Gs = /* @__PURE__ */ S({
2210
2222
  __name: "SettingRefresh",
2211
2223
  setup(e) {
2212
- const t = te(), n = A({
2224
+ const t = Q(), n = I({
2213
2225
  get: () => t.getRefreshOnlyTaxa,
2214
2226
  set: (s) => {
2215
2227
  t.setRefreshOnlyTaxa(s);
@@ -2222,7 +2234,7 @@ const le = {
2222
2234
  }, null, 512), [
2223
2235
  [se, n.value]
2224
2236
  ]),
2225
- r[1] || (r[1] = $(" Refresh only taxa "))
2237
+ r[1] || (r[1] = U(" Refresh only taxa "))
2226
2238
  ]));
2227
2239
  }
2228
2240
  }), Oe = (e, t) => {
@@ -2233,28 +2245,28 @@ const le = {
2233
2245
  }, Ys = {}, Zs = { class: "distinguish-menu-list" };
2234
2246
  function er(e, t) {
2235
2247
  return p(), y("ul", Zs, [
2236
- F(e.$slots, "default")
2248
+ N(e.$slots, "default")
2237
2249
  ]);
2238
2250
  }
2239
2251
  const tr = /* @__PURE__ */ Oe(Ys, [["render", er]]), nr = {}, sr = { class: "distinguish-list-item" };
2240
2252
  function rr(e, t) {
2241
2253
  return p(), y("li", sr, [
2242
- F(e.$slots, "default")
2254
+ N(e.$slots, "default")
2243
2255
  ]);
2244
2256
  }
2245
- const G = /* @__PURE__ */ Oe(nr, [["render", rr]]), lt = {
2257
+ const Y = /* @__PURE__ */ Oe(nr, [["render", rr]]), lt = {
2246
2258
  "distinguish-layout-mode-1": "distinguish-layout-mode-2",
2247
2259
  "distinguish-layout-mode-2": "distinguish-layout-mode-1"
2248
2260
  }, or = {}, ir = { class: "distinguish-grid" };
2249
2261
  function ar(e, t) {
2250
2262
  return p(), y("div", ir, [
2251
- F(e.$slots, "default")
2263
+ N(e.$slots, "default")
2252
2264
  ]);
2253
2265
  }
2254
2266
  const Bt = /* @__PURE__ */ Oe(or, [["render", ar]]), lr = /* @__PURE__ */ S({
2255
2267
  __name: "GridToggle",
2256
2268
  setup(e) {
2257
- const t = te(), n = A(() => t.getLayout), s = () => {
2269
+ const t = Q(), n = I(() => t.getLayout), s = () => {
2258
2270
  t.$patch({
2259
2271
  gridLayout: lt[n.value]
2260
2272
  });
@@ -2286,7 +2298,7 @@ const Bt = /* @__PURE__ */ Oe(or, [["render", ar]]), lr = /* @__PURE__ */ S({
2286
2298
  onClick: s[0] || (s[0] = (r) => k(t).$reset())
2287
2299
  }, {
2288
2300
  default: w(() => s[1] || (s[1] = [
2289
- $(" Reset ")
2301
+ U(" Reset ")
2290
2302
  ])),
2291
2303
  _: 1
2292
2304
  }));
@@ -2294,8 +2306,8 @@ const Bt = /* @__PURE__ */ Oe(or, [["render", ar]]), lr = /* @__PURE__ */ S({
2294
2306
  }), ur = { class: "distinguish-header-error-message" }, dr = /* @__PURE__ */ S({
2295
2307
  __name: "ErrorMessage",
2296
2308
  setup(e) {
2297
- const t = te();
2298
- return (n, s) => (p(), y("span", ur, E(k(t).getErrorMessage), 1));
2309
+ const t = Q();
2310
+ return (n, s) => (p(), y("span", ur, R(k(t).getErrorMessage), 1));
2299
2311
  }
2300
2312
  }), pr = { class: "distinguish-header-bar" }, fr = { class: "distinguish-header-bar__buttons" }, mr = /* @__PURE__ */ S({
2301
2313
  __name: "HeaderBar",
@@ -2304,43 +2316,43 @@ const Bt = /* @__PURE__ */ Oe(or, [["render", ar]]), lr = /* @__PURE__ */ S({
2304
2316
  v(dr),
2305
2317
  v(tr, null, {
2306
2318
  default: w(() => [
2307
- v(G, null, {
2319
+ v(Y, null, {
2308
2320
  default: w(() => [
2309
2321
  v(Gs)
2310
2322
  ]),
2311
2323
  _: 1
2312
2324
  }),
2313
- v(G, null, {
2325
+ v(Y, null, {
2314
2326
  default: w(() => [
2315
2327
  v(Ls)
2316
2328
  ]),
2317
2329
  _: 1
2318
2330
  }),
2319
- v(G, null, {
2331
+ v(Y, null, {
2320
2332
  default: w(() => [
2321
- v(Fs)
2333
+ v(Ns)
2322
2334
  ]),
2323
2335
  _: 1
2324
2336
  }),
2325
- v(G, null, {
2337
+ v(Y, null, {
2326
2338
  default: w(() => [
2327
2339
  v(js)
2328
2340
  ]),
2329
2341
  _: 1
2330
2342
  }),
2331
- v(G, null, {
2343
+ v(Y, null, {
2332
2344
  default: w(() => [
2333
2345
  v(Vs)
2334
2346
  ]),
2335
2347
  _: 1
2336
2348
  }),
2337
- v(G, null, {
2349
+ v(Y, null, {
2338
2350
  default: w(() => [
2339
2351
  v(Bs)
2340
2352
  ]),
2341
2353
  _: 1
2342
2354
  }),
2343
- v(G, null, {
2355
+ v(Y, null, {
2344
2356
  default: w(() => [
2345
2357
  v(Qs)
2346
2358
  ]),
@@ -2358,7 +2370,7 @@ const Bt = /* @__PURE__ */ Oe(or, [["render", ar]]), lr = /* @__PURE__ */ S({
2358
2370
  }), hr = {}, gr = { class: "distinguish-panel" };
2359
2371
  function yr(e, t) {
2360
2372
  return p(), y("div", gr, [
2361
- F(e.$slots, "default")
2373
+ N(e.$slots, "default")
2362
2374
  ]);
2363
2375
  }
2364
2376
  const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /* @__PURE__ */ S({
@@ -2367,16 +2379,16 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2367
2379
  render: { type: Function }
2368
2380
  },
2369
2381
  setup(e) {
2370
- const t = J(), n = A(() => t.getEliminated);
2382
+ const t = J(), n = I(() => t.getEliminated);
2371
2383
  return (s, r) => (p(), T(He, { class: "distinguish-panel-eliminated" }, {
2372
2384
  default: w(() => [
2373
- f("h2", null, "Eliminated (" + E(n.value.length) + ")", 1),
2385
+ f("h2", null, "Eliminated (" + R(n.value.length) + ")", 1),
2374
2386
  f("ul", null, [
2375
2387
  (p(!0), y(D, null, M(n.value, (o) => (p(), y("li", {
2376
2388
  key: o.rowId,
2377
2389
  class: "distinguish-row-item"
2378
2390
  }, [
2379
- F(s.$slots, "default", { item: o }, () => [
2391
+ N(s.$slots, "default", { item: o }, () => [
2380
2392
  f("span", {
2381
2393
  innerHTML: s.render ? s.render(o) : o.objectTag
2382
2394
  }, null, 8, br)
@@ -2387,13 +2399,13 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2387
2399
  _: 3
2388
2400
  }));
2389
2401
  }
2390
- }), wr = { class: "distinguish-row-filter-buttons" }, Sr = { class: "distinguish-list-checkboxes" }, vr = ["value"], Er = /* @__PURE__ */ S({
2402
+ }), wr = { class: "distinguish-row-filter-buttons" }, Sr = { class: "distinguish-list-checkboxes" }, vr = ["value"], Rr = /* @__PURE__ */ S({
2391
2403
  __name: "FilterRow",
2392
2404
  setup(e) {
2393
- const t = J(), n = te(), s = L(), r = X(!1), o = X([]), i = A(() => {
2405
+ const t = J(), n = Q(), s = L(), r = X(!1), o = X([]), i = I(() => {
2394
2406
  const d = s.getRowIds, c = o.value;
2395
2407
  return d.length !== c.length || !d.every((u) => c.includes(u));
2396
- }), a = A({
2408
+ }), a = I({
2397
2409
  get: () => s.getRowIds,
2398
2410
  set: (d) => {
2399
2411
  s.$patch({ rowIds: d });
@@ -2408,7 +2420,7 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2408
2420
  onClick: c[0] || (c[0] = (u) => r.value = !0)
2409
2421
  }, {
2410
2422
  default: w(() => c[5] || (c[5] = [
2411
- $(" Select ")
2423
+ U(" Select ")
2412
2424
  ])),
2413
2425
  _: 1
2414
2426
  }),
@@ -2429,7 +2441,7 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2429
2441
  onClick: c[1] || (c[1] = () => a.value = k(t).getRemaining.map((u) => u.rowId))
2430
2442
  }, {
2431
2443
  default: w(() => c[7] || (c[7] = [
2432
- $(" Select all ")
2444
+ U(" Select all ")
2433
2445
  ])),
2434
2446
  _: 1
2435
2447
  })) : (p(), T(ne, {
@@ -2439,10 +2451,14 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2439
2451
  onClick: c[2] || (c[2] = () => a.value = [])
2440
2452
  }, {
2441
2453
  default: w(() => c[8] || (c[8] = [
2442
- $(" Unselect all ")
2454
+ U(" Unselect all ")
2443
2455
  ])),
2444
2456
  _: 1
2445
- }))
2457
+ })),
2458
+ N(d.$slots, "select-renaming-options", {
2459
+ selectedIds: a.value,
2460
+ rows: k(t).getRemaining
2461
+ })
2446
2462
  ]),
2447
2463
  f("ul", Sr, [
2448
2464
  (p(!0), y(D, null, M(k(t).getRemaining, (u) => (p(), y("li", {
@@ -2456,35 +2472,35 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2456
2472
  }, null, 8, vr), [
2457
2473
  [se, a.value]
2458
2474
  ]),
2459
- $(" " + E(u.objectLabel), 1)
2475
+ U(" " + R(u.objectLabel), 1)
2460
2476
  ])
2461
2477
  ]))), 128))
2462
2478
  ])
2463
2479
  ])
2464
2480
  ]),
2465
- _: 1
2481
+ _: 3
2466
2482
  })) : j("", !0)
2467
2483
  ], 64));
2468
2484
  }
2469
- }), Rr = { class: "distinguish-title-section" }, Tr = ["innerHTML"], kr = /* @__PURE__ */ S({
2485
+ }), Er = { class: "distinguish-title-section" }, Tr = ["innerHTML"], kr = /* @__PURE__ */ S({
2470
2486
  __name: "PanelRemaining",
2471
2487
  props: {
2472
2488
  render: { type: Function }
2473
2489
  },
2474
2490
  setup(e) {
2475
- const t = J(), n = A(() => t.getRemaining);
2491
+ const t = J(), n = I(() => t.getRemaining);
2476
2492
  return (s, r) => (p(), T(He, { class: "distinguish-panel-remaining" }, {
2477
2493
  default: w(() => [
2478
- f("div", Rr, [
2479
- f("h2", null, "Remaining (" + E(n.value.length) + ")", 1),
2480
- v(Er)
2494
+ f("div", Er, [
2495
+ f("h2", null, "Remaining (" + R(n.value.length) + ")", 1),
2496
+ v(Rr)
2481
2497
  ]),
2482
2498
  f("ul", null, [
2483
2499
  (p(!0), y(D, null, M(n.value, (o) => (p(), y("li", {
2484
2500
  key: o.rowId,
2485
2501
  class: "distinguish-row-item"
2486
2502
  }, [
2487
- F(s.$slots, "default", { item: o }, () => [
2503
+ N(s.$slots, "default", { item: o }, () => [
2488
2504
  f("span", {
2489
2505
  innerHTML: s.render ? s.render(o) : o.objectTag
2490
2506
  }, null, 8, Tr)
@@ -2498,13 +2514,13 @@ const He = /* @__PURE__ */ Oe(hr, [["render", yr]]), br = ["innerHTML"], _r = /*
2498
2514
  });
2499
2515
  class Or {
2500
2516
  static find(t) {
2501
- return Nt().get(`/depictions/${t}.json`, { params: { extend: ["image"] } });
2517
+ return Ft().get(`/depictions/${t}.json`, { params: { extend: ["image"] } });
2502
2518
  }
2503
2519
  }
2504
2520
  const xr = {
2505
2521
  key: 0,
2506
2522
  class: "distinguish-depiction-box"
2507
- }, Ar = ["src"], Mt = /* @__PURE__ */ S({
2523
+ }, Ir = ["src"], Mt = /* @__PURE__ */ S({
2508
2524
  __name: "VDepiction",
2509
2525
  props: {
2510
2526
  depictionId: {}
@@ -2516,17 +2532,17 @@ const xr = {
2516
2532
  }), (s, r) => n.value ? (p(), y("div", xr, [
2517
2533
  f("img", {
2518
2534
  src: n.value.imageUrl
2519
- }, null, 8, Ar)
2535
+ }, null, 8, Ir)
2520
2536
  ])) : j("", !0);
2521
2537
  }
2522
- }), Cr = { class: "distinguish-character-descriptor__cell" }, Ir = ["value"], Ur = /* @__PURE__ */ S({
2538
+ }), Ar = { class: "distinguish-character-descriptor__cell" }, Cr = ["value"], $r = /* @__PURE__ */ S({
2523
2539
  __name: "CharacterStateCell",
2524
2540
  props: {
2525
2541
  characterState: {},
2526
2542
  descriptorId: {}
2527
2543
  },
2528
2544
  setup(e) {
2529
- const t = e, n = L(), s = A({
2545
+ const t = e, n = L(), s = I({
2530
2546
  get: () => n.getDescriptorValueById(t.descriptorId) || [],
2531
2547
  set: (r) => {
2532
2548
  r.length ? n.setDescriptor({
@@ -2535,7 +2551,7 @@ const xr = {
2535
2551
  }) : n.removeDescriptor(t.descriptorId);
2536
2552
  }
2537
2553
  });
2538
- return (r, o) => (p(), y("div", Cr, [
2554
+ return (r, o) => (p(), y("div", Ar, [
2539
2555
  f("label", null, [
2540
2556
  (p(!0), y(D, null, M(r.characterState.depictionIds, (i) => (p(), T(Mt, {
2541
2557
  key: i,
@@ -2545,20 +2561,20 @@ const xr = {
2545
2561
  "onUpdate:modelValue": o[0] || (o[0] = (i) => s.value = i),
2546
2562
  value: r.characterState.characterStateId,
2547
2563
  type: "checkbox"
2548
- }, null, 8, Ir), [
2564
+ }, null, 8, Cr), [
2549
2565
  [se, s.value]
2550
2566
  ]),
2551
- $(" " + E(r.characterState.name), 1)
2567
+ U(" " + R(r.characterState.name), 1)
2552
2568
  ])
2553
2569
  ]));
2554
2570
  }
2555
- }), $r = { class: "distinguish-character-states-grid" }, Dr = /* @__PURE__ */ S({
2571
+ }), Ur = { class: "distinguish-character-states-grid" }, Dr = /* @__PURE__ */ S({
2556
2572
  __name: "CharacterStateGrid",
2557
2573
  props: {
2558
2574
  descriptor: {}
2559
2575
  },
2560
2576
  setup(e) {
2561
- const t = e, n = L(), s = te(), r = X(), o = A(() => {
2577
+ const t = e, n = L(), s = Q(), r = X(), o = I(() => {
2562
2578
  const i = n.getDescriptorValueById(t.descriptor.descriptorId) || [], a = r.value || [];
2563
2579
  return i.length !== a.length || !i.every((d) => a.includes(d));
2564
2580
  });
@@ -2566,15 +2582,15 @@ const xr = {
2566
2582
  s.setShouldUpdate(!1), r.value = n.getDescriptorValueById(t.descriptor.descriptorId);
2567
2583
  }), ut(() => {
2568
2584
  s.setShouldUpdate(!0), o.value && s.checkUpdate();
2569
- }), (i, a) => (p(), y("div", $r, [
2570
- (p(!0), y(D, null, M(i.descriptor.characterStates, (d) => (p(), T(Ur, {
2585
+ }), (i, a) => (p(), y("div", Ur, [
2586
+ (p(!0), y(D, null, M(i.descriptor.characterStates, (d) => (p(), T($r, {
2571
2587
  key: d.characterStateId,
2572
2588
  "descriptor-id": i.descriptor.descriptorId,
2573
2589
  "character-state": d
2574
2590
  }, null, 8, ["descriptor-id", "character-state"]))), 128))
2575
2591
  ]));
2576
2592
  }
2577
- }), Lr = { key: 0 }, Pr = { key: 1 }, Fr = { class: "descriptor-modal__depiction" }, Nr = /* @__PURE__ */ S({
2593
+ }), Lr = { key: 0 }, Pr = { key: 1 }, Nr = { class: "descriptor-modal__depiction" }, Fr = /* @__PURE__ */ S({
2578
2594
  __name: "DescriptorModal",
2579
2595
  props: {
2580
2596
  descriptor: {}
@@ -2582,11 +2598,11 @@ const xr = {
2582
2598
  setup(e) {
2583
2599
  return (t, n) => (p(), T(qe, { "container-class": "distinguish-descriptor-modal" }, {
2584
2600
  header: w(() => [
2585
- f("h3", null, E(t.descriptor.name), 1),
2586
- t.descriptor.description ? (p(), y("span", Lr, E(t.descriptor.description), 1)) : (p(), y("i", Pr, " No further description available. "))
2601
+ f("h3", null, R(t.descriptor.name), 1),
2602
+ t.descriptor.description ? (p(), y("span", Lr, R(t.descriptor.description), 1)) : (p(), y("i", Pr, " No further description available. "))
2587
2603
  ]),
2588
2604
  body: w(() => [
2589
- f("div", Fr, [
2605
+ f("div", Nr, [
2590
2606
  (p(!0), y(D, null, M(t.descriptor.depictionIds, (s) => (p(), T(Mt, {
2591
2607
  key: s,
2592
2608
  "depiction-id": s
@@ -2617,13 +2633,13 @@ const xr = {
2617
2633
  class: "distinguish-link",
2618
2634
  onClick: s[0] || (s[0] = (r) => t.value = !0)
2619
2635
  }, [
2620
- F(n.$slots, "title", {}, () => [
2621
- $(E(n.descriptor.name), 1)
2636
+ N(n.$slots, "title", {}, () => [
2637
+ U(R(n.descriptor.name), 1)
2622
2638
  ])
2623
2639
  ])
2624
2640
  ]),
2625
- F(n.$slots, "default"),
2626
- t.value ? (p(), T(Nr, {
2641
+ N(n.$slots, "default"),
2642
+ t.value ? (p(), T(Fr, {
2627
2643
  key: 0,
2628
2644
  descriptor: n.descriptor,
2629
2645
  onClose: s[1] || (s[1] = (r) => t.value = !1)
@@ -2650,7 +2666,7 @@ const xr = {
2650
2666
  descriptor: o.descriptor
2651
2667
  }, {
2652
2668
  title: w(() => [
2653
- $(E(o.descriptor.name) + " (" + E(o.descriptor.min) + "-" + E(o.descriptor.max) + " " + E(o.descriptor.defaultUnit) + ") ", 1)
2669
+ U(R(o.descriptor.name) + " (" + R(o.descriptor.min) + "-" + R(o.descriptor.max) + " " + R(o.descriptor.defaultUnit) + ") ", 1)
2654
2670
  ]),
2655
2671
  default: w(() => [
2656
2672
  q(f("input", {
@@ -2674,7 +2690,7 @@ const xr = {
2674
2690
  const t = {
2675
2691
  Presence: !0,
2676
2692
  Absent: !1
2677
- }, n = e, s = L(), r = A({
2693
+ }, n = e, s = L(), r = I({
2678
2694
  get: () => s.getDescriptorValueById(
2679
2695
  n.descriptor.descriptorId
2680
2696
  ),
@@ -2704,7 +2720,7 @@ const xr = {
2704
2720
  value: d
2705
2721
  }, [
2706
2722
  i.descriptor.status === k(le).Useless ? (p(), y("span", qr, "-")) : j("", !0),
2707
- $(" " + E(c) + " (" + E(o(d)) + ") ", 1)
2723
+ U(" " + R(c) + " (" + R(o(d)) + ") ", 1)
2708
2724
  ], 8, Vr)), 64))
2709
2725
  ], 512), [
2710
2726
  [ue, r.value]
@@ -2745,7 +2761,7 @@ const xr = {
2745
2761
  }, [
2746
2762
  r(a) ? (p(), y("span", Kr, ">")) : j("", !0),
2747
2763
  a.status === k(le).Useless ? (p(), y("span", Jr, "-")) : j("", !0),
2748
- $(" " + E(a.name) + " (" + E(a.numberOfObjects) + ") ", 1)
2764
+ U(" " + R(a.name) + " (" + R(a.numberOfObjects) + ") ", 1)
2749
2765
  ], 8, zr))), 128))
2750
2766
  ], 32)
2751
2767
  ]),
@@ -2772,7 +2788,7 @@ const xr = {
2772
2788
  descriptor: o.descriptor
2773
2789
  }, {
2774
2790
  title: w(() => [
2775
- $(E(o.descriptor.name) + " (" + E(o.descriptor.min) + "-" + E(o.descriptor.max) + " " + E(o.descriptor.defaultUnit) + ") ", 1)
2791
+ U(R(o.descriptor.name) + " (" + R(o.descriptor.min) + "-" + R(o.descriptor.max) + " " + R(o.descriptor.defaultUnit) + ") ", 1)
2776
2792
  ]),
2777
2793
  default: w(() => [
2778
2794
  q(f("input", {
@@ -2787,7 +2803,7 @@ const xr = {
2787
2803
  _: 1
2788
2804
  }, 8, ["descriptor"]));
2789
2805
  }
2790
- }), Ue = /* @__PURE__ */ S({
2806
+ }), $e = /* @__PURE__ */ S({
2791
2807
  __name: "DescriptorsList",
2792
2808
  props: {
2793
2809
  title: {},
@@ -2804,7 +2820,7 @@ const xr = {
2804
2820
  return t[r];
2805
2821
  };
2806
2822
  return (s, r) => (p(), y(D, null, [
2807
- f("h2", null, E(s.title), 1),
2823
+ f("h2", null, R(s.title), 1),
2808
2824
  f("ol", null, [
2809
2825
  (p(!0), y(D, null, M(s.descriptors, (o) => (p(), y("li", {
2810
2826
  key: o.descriptorId
@@ -2817,7 +2833,7 @@ const xr = {
2817
2833
  }), Qr = { key: 0 }, Gr = /* @__PURE__ */ S({
2818
2834
  __name: "FilterRowCheckbox",
2819
2835
  setup(e) {
2820
- const t = L(), n = A({
2836
+ const t = L(), n = I({
2821
2837
  get: () => t.getRowFilter,
2822
2838
  set: (s) => t.$patch({ rowFilter: s })
2823
2839
  });
@@ -2828,7 +2844,7 @@ const xr = {
2828
2844
  }, null, 512), [
2829
2845
  [se, n.value]
2830
2846
  ]),
2831
- r[1] || (r[1] = $(" Filter "))
2847
+ r[1] || (r[1] = U(" Filter "))
2832
2848
  ])) : j("", !0);
2833
2849
  }
2834
2850
  }), Yr = /* @__PURE__ */ S({
@@ -2838,17 +2854,17 @@ const xr = {
2838
2854
  return (n, s) => (p(), T(He, { class: "distinguish-panel-descriptors" }, {
2839
2855
  default: w(() => [
2840
2856
  v(Gr),
2841
- k(t).getDescriptorsUsed.length ? (p(), T(Ue, {
2857
+ k(t).getDescriptorsUsed.length ? (p(), T($e, {
2842
2858
  key: 0,
2843
2859
  descriptors: k(t).getDescriptorsUsed,
2844
2860
  title: "Used Descriptors"
2845
2861
  }, null, 8, ["descriptors"])) : j("", !0),
2846
- k(t).getDescriptorsUseful.length ? (p(), T(Ue, {
2862
+ k(t).getDescriptorsUseful.length ? (p(), T($e, {
2847
2863
  key: 1,
2848
2864
  descriptors: k(t).getDescriptorsUseful,
2849
2865
  title: "Descriptors Useful for Identification"
2850
2866
  }, null, 8, ["descriptors"])) : j("", !0),
2851
- k(t).getDescriptorsUseless.length ? (p(), T(Ue, {
2867
+ k(t).getDescriptorsUseless.length ? (p(), T($e, {
2852
2868
  key: 2,
2853
2869
  descriptors: k(t).getDescriptorsUseless,
2854
2870
  title: "Descriptors no longer relevant for identification"
@@ -2873,7 +2889,7 @@ const xr = {
2873
2889
  n[0] || (n[0] = f("div", { class: "distinguish-spinner" }, null, -1)),
2874
2890
  f("div", eo, [
2875
2891
  f("span", { innerHTML: e.legend }, null, 8, to),
2876
- F(t.$slots, "default")
2892
+ N(t.$slots, "default")
2877
2893
  ])
2878
2894
  ])
2879
2895
  ])
@@ -2886,21 +2902,21 @@ const xr = {
2886
2902
  setup(e) {
2887
2903
  const t = J();
2888
2904
  return (n, s) => (p(), y("h1", so, [
2889
- s[0] || (s[0] = $(" Interactive key ")),
2890
- k(t).getObservationMatrix ? (p(), y("span", ro, "| " + E(k(t).getObservationMatrix.name), 1)) : j("", !0)
2905
+ s[0] || (s[0] = U(" Interactive key ")),
2906
+ k(t).getObservationMatrix ? (p(), y("span", ro, "| " + R(k(t).getObservationMatrix.name), 1)) : j("", !0)
2891
2907
  ]));
2892
2908
  }
2893
2909
  }), io = ["title"], ao = /* @__PURE__ */ S({
2894
2910
  __name: "TitleMatrixCitation",
2895
2911
  setup(e) {
2896
- const t = J(), n = A(() => {
2912
+ const t = J(), n = I(() => {
2897
2913
  const s = t.getCitation;
2898
2914
  return Object.values(s || {}).filter(Boolean).join(", ");
2899
2915
  });
2900
2916
  return (s, r) => (p(), y("span", {
2901
2917
  class: "distinguish-title-citation",
2902
2918
  title: n.value
2903
- }, E(n.value), 9, io));
2919
+ }, R(n.value), 9, io));
2904
2920
  }
2905
2921
  }), lo = { class: "distinguish-title-section" }, co = /* @__PURE__ */ S({
2906
2922
  __name: "TitleKey",
@@ -2916,12 +2932,13 @@ const xr = {
2916
2932
  props: {
2917
2933
  observationMatrixId: {},
2918
2934
  apiConfig: {},
2919
- renderItem: { type: Function }
2935
+ renderItem: { type: Function },
2936
+ otuId: {}
2920
2937
  },
2921
2938
  setup(e) {
2922
- const t = e, n = te(), s = L(), r = A(() => n.getIsLoading), o = A(() => n.getLayout);
2939
+ const t = e, n = Q(), s = L(), r = I(() => n.getIsLoading), o = I(() => n.getLayout);
2923
2940
  return (() => {
2924
- n.setAPIConfig(t.apiConfig), n.setObservationMatrixId(t.observationMatrixId), n.checkUpdate();
2941
+ n.setAPIConfig(t.apiConfig), n.setObservationMatrixId(t.observationMatrixId), t.otuId && n.setOtuId(t.otuId), n.checkUpdate();
2925
2942
  })(), s.$subscribe((a) => {
2926
2943
  n.shouldUpdate && n.checkUpdate();
2927
2944
  }), (a, d) => (p(), y("div", uo, [
@@ -2936,7 +2953,7 @@ const xr = {
2936
2953
  render: t.renderItem
2937
2954
  }, {
2938
2955
  default: w((c) => [
2939
- F(a.$slots, "remaining-item", Ke(Je(c)))
2956
+ N(a.$slots, "remaining-item", Ke(Je(c)))
2940
2957
  ]),
2941
2958
  _: 3
2942
2959
  }, 8, ["render"]),
@@ -2944,7 +2961,7 @@ const xr = {
2944
2961
  render: t.renderItem
2945
2962
  }, {
2946
2963
  default: w((c) => [
2947
- F(a.$slots, "eliminated-item", Ke(Je(c)))
2964
+ N(a.$slots, "eliminated-item", Ke(Je(c)))
2948
2965
  ]),
2949
2966
  _: 3
2950
2967
  }, 8, ["render"])
@@ -2961,17 +2978,21 @@ const xr = {
2961
2978
  function fo(e) {
2962
2979
  const t = e || '[data-interactive-key="true"]';
2963
2980
  return [...document.querySelectorAll(t)].map(
2964
- (r) => go(r, ho(r))
2981
+ (r) => yo(r, go(r))
2965
2982
  );
2966
2983
  }
2967
2984
  function mo() {
2968
2985
  fo();
2969
2986
  }
2970
2987
  function ho(e) {
2988
+ return e ? e.split(",").map((t) => Number(t.trim())).filter((t) => !isNaN(t)) : [];
2989
+ }
2990
+ function go(e) {
2971
2991
  return {
2972
2992
  observationMatrixId: Number(
2973
2993
  e.getAttribute("data-observation-matrix-id")
2974
2994
  ),
2995
+ otuId: ho(e.getAttribute("data-otu-id")),
2975
2996
  apiConfig: {
2976
2997
  baseURL: e.getAttribute("data-base-url") || "",
2977
2998
  projectToken: e.getAttribute("data-project-token") || void 0,
@@ -2981,7 +3002,7 @@ function ho(e) {
2981
3002
  }
2982
3003
  };
2983
3004
  }
2984
- function go(e, t) {
3005
+ function yo(e, t) {
2985
3006
  const { apiConfig: n, observationMatrixId: s } = t;
2986
3007
  if (!s)
2987
3008
  throw "Missing observation matrix ID";
@@ -2996,6 +3017,6 @@ function go(e, t) {
2996
3017
  typeof window < "u" && window.addEventListener("DOMContentLoaded", mo);
2997
3018
  export {
2998
3019
  po as VueInteractiveKey,
2999
- go as createInteractiveKey,
3020
+ yo as createInteractiveKey,
3000
3021
  fo as discoverInteractiveKey
3001
3022
  };