mc-react-library 0.7.5 → 0.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/main.css +1 -1
  2. package/dist/main.js +1243 -1162
  3. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import "./main.css";
2
- import _n, { useState as E, useRef as Zt, useEffect as nt, useMemo as Yn } from "react";
3
- import { fromOptimade as Gn, fromStructureData as Kn, fromJSON as Tt, toJSON as mn, parseStructure as on } from "matsci-parse";
4
- var Dt = { exports: {} }, lt = {};
2
+ import mn, { useState as B, useRef as Lt, useEffect as rt, useMemo as Xn } from "react";
3
+ import { fromOptimade as qn, fromStructureData as $n, fromJSON as Tt, toJSON as gn, parseStructure as sn } from "matsci-parse";
4
+ var Dt = { exports: {} }, _t = {};
5
5
  /**
6
6
  * @license React
7
7
  * react-jsx-runtime.production.min.js
@@ -11,21 +11,21 @@ var Dt = { exports: {} }, lt = {};
11
11
  * This source code is licensed under the MIT license found in the
12
12
  * LICENSE file in the root directory of this source tree.
13
13
  */
14
- var sn;
15
- function Qn() {
16
- if (sn) return lt;
17
- sn = 1;
18
- var t = _n, r = Symbol.for("react.element"), i = Symbol.for("react.fragment"), s = Object.prototype.hasOwnProperty, o = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, _ = { key: !0, ref: !0, __self: !0, __source: !0 };
14
+ var an;
15
+ function te() {
16
+ if (an) return _t;
17
+ an = 1;
18
+ var t = mn, r = Symbol.for("react.element"), o = Symbol.for("react.fragment"), s = Object.prototype.hasOwnProperty, i = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, _ = { key: !0, ref: !0, __self: !0, __source: !0 };
19
19
  function m(a, g, l) {
20
- var u, p = {}, f = null, b = null;
21
- l !== void 0 && (f = "" + l), g.key !== void 0 && (f = "" + g.key), g.ref !== void 0 && (b = g.ref);
22
- for (u in g) s.call(g, u) && !_.hasOwnProperty(u) && (p[u] = g[u]);
23
- if (a && a.defaultProps) for (u in g = a.defaultProps, g) p[u] === void 0 && (p[u] = g[u]);
24
- return { $$typeof: r, type: a, key: f, ref: b, props: p, _owner: o.current };
20
+ var b, h = {}, p = null, f = null;
21
+ l !== void 0 && (p = "" + l), g.key !== void 0 && (p = "" + g.key), g.ref !== void 0 && (f = g.ref);
22
+ for (b in g) s.call(g, b) && !_.hasOwnProperty(b) && (h[b] = g[b]);
23
+ if (a && a.defaultProps) for (b in g = a.defaultProps, g) h[b] === void 0 && (h[b] = g[b]);
24
+ return { $$typeof: r, type: a, key: p, ref: f, props: h, _owner: i.current };
25
25
  }
26
- return lt.Fragment = i, lt.jsx = m, lt.jsxs = m, lt;
26
+ return _t.Fragment = o, _t.jsx = m, _t.jsxs = m, _t;
27
27
  }
28
- var _t = {};
28
+ var mt = {};
29
29
  /**
30
30
  * @license React
31
31
  * react-jsx-runtime.development.js
@@ -35,72 +35,72 @@ var _t = {};
35
35
  * This source code is licensed under the MIT license found in the
36
36
  * LICENSE file in the root directory of this source tree.
37
37
  */
38
- var an;
39
- function Wn() {
40
- return an || (an = 1, process.env.NODE_ENV !== "production" && function() {
41
- var t = _n, r = Symbol.for("react.element"), i = Symbol.for("react.portal"), s = Symbol.for("react.fragment"), o = Symbol.for("react.strict_mode"), _ = Symbol.for("react.profiler"), m = Symbol.for("react.provider"), a = Symbol.for("react.context"), g = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), u = Symbol.for("react.suspense_list"), p = Symbol.for("react.memo"), f = Symbol.for("react.lazy"), b = Symbol.for("react.offscreen"), y = Symbol.iterator, R = "@@iterator";
42
- function A(n) {
38
+ var cn;
39
+ function ne() {
40
+ return cn || (cn = 1, process.env.NODE_ENV !== "production" && function() {
41
+ var t = mn, r = Symbol.for("react.element"), o = Symbol.for("react.portal"), s = Symbol.for("react.fragment"), i = Symbol.for("react.strict_mode"), _ = Symbol.for("react.profiler"), m = Symbol.for("react.provider"), a = Symbol.for("react.context"), g = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), b = Symbol.for("react.suspense_list"), h = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), f = Symbol.for("react.offscreen"), P = Symbol.iterator, z = "@@iterator";
42
+ function k(n) {
43
43
  if (n === null || typeof n != "object")
44
44
  return null;
45
- var c = y && n[y] || n[R];
45
+ var c = P && n[P] || n[z];
46
46
  return typeof c == "function" ? c : null;
47
47
  }
48
- var j = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
49
- function I(n) {
48
+ var C = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
49
+ function j(n) {
50
50
  {
51
- for (var c = arguments.length, d = new Array(c > 1 ? c - 1 : 0), P = 1; P < c; P++)
52
- d[P - 1] = arguments[P];
53
- O("error", n, d);
51
+ for (var c = arguments.length, u = new Array(c > 1 ? c - 1 : 0), v = 1; v < c; v++)
52
+ u[v - 1] = arguments[v];
53
+ T("error", n, u);
54
54
  }
55
55
  }
56
- function O(n, c, d) {
56
+ function T(n, c, u) {
57
57
  {
58
- var P = j.ReactDebugCurrentFrame, k = P.getStackAddendum();
59
- k !== "" && (c += "%s", d = d.concat([k]));
60
- var C = d.map(function(w) {
58
+ var v = C.ReactDebugCurrentFrame, A = v.getStackAddendum();
59
+ A !== "" && (c += "%s", u = u.concat([A]));
60
+ var S = u.map(function(w) {
61
61
  return String(w);
62
62
  });
63
- C.unshift("Warning: " + c), Function.prototype.apply.call(console[n], console, C);
63
+ S.unshift("Warning: " + c), Function.prototype.apply.call(console[n], console, S);
64
64
  }
65
65
  }
66
- var z = !1, dt = !1, ot = !1, pt = !1, ht = !1, Y;
67
- Y = Symbol.for("react.module.reference");
68
- function kt(n) {
69
- return !!(typeof n == "string" || typeof n == "function" || n === s || n === _ || ht || n === o || n === l || n === u || pt || n === b || z || dt || ot || typeof n == "object" && n !== null && (n.$$typeof === f || n.$$typeof === p || n.$$typeof === m || n.$$typeof === a || n.$$typeof === g || // This needs to include all possible module reference object
66
+ var I = !1, E = !1, G = !1, pt = !1, ht = !1, K;
67
+ K = Symbol.for("react.module.reference");
68
+ function jt(n) {
69
+ return !!(typeof n == "string" || typeof n == "function" || n === s || n === _ || ht || n === i || n === l || n === b || pt || n === f || I || E || G || typeof n == "object" && n !== null && (n.$$typeof === p || n.$$typeof === h || n.$$typeof === m || n.$$typeof === a || n.$$typeof === g || // This needs to include all possible module reference object
70
70
  // types supported by any Flight configuration anywhere since
71
71
  // we don't know which Flight build this will end up being used
72
72
  // with.
73
- n.$$typeof === Y || n.getModuleId !== void 0));
73
+ n.$$typeof === K || n.getModuleId !== void 0));
74
74
  }
75
- function G(n, c, d) {
76
- var P = n.displayName;
77
- if (P)
78
- return P;
79
- var k = c.displayName || c.name || "";
80
- return k !== "" ? d + "(" + k + ")" : d;
75
+ function Q(n, c, u) {
76
+ var v = n.displayName;
77
+ if (v)
78
+ return v;
79
+ var A = c.displayName || c.name || "";
80
+ return A !== "" ? u + "(" + A + ")" : u;
81
81
  }
82
82
  function ft(n) {
83
83
  return n.displayName || "Context";
84
84
  }
85
- function U(n) {
85
+ function J(n) {
86
86
  if (n == null)
87
87
  return null;
88
- if (typeof n.tag == "number" && I("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof n == "function")
88
+ if (typeof n.tag == "number" && j("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."), typeof n == "function")
89
89
  return n.displayName || n.name || null;
90
90
  if (typeof n == "string")
91
91
  return n;
92
92
  switch (n) {
93
93
  case s:
94
94
  return "Fragment";
95
- case i:
95
+ case o:
96
96
  return "Portal";
97
97
  case _:
98
98
  return "Profiler";
99
- case o:
99
+ case i:
100
100
  return "StrictMode";
101
101
  case l:
102
102
  return "Suspense";
103
- case u:
103
+ case b:
104
104
  return "SuspenseList";
105
105
  }
106
106
  if (typeof n == "object")
@@ -109,17 +109,17 @@ function Wn() {
109
109
  var c = n;
110
110
  return ft(c) + ".Consumer";
111
111
  case m:
112
- var d = n;
113
- return ft(d._context) + ".Provider";
112
+ var u = n;
113
+ return ft(u._context) + ".Provider";
114
114
  case g:
115
- return G(n, n.render, "ForwardRef");
116
- case p:
117
- var P = n.displayName || null;
118
- return P !== null ? P : U(n.type) || "Memo";
119
- case f: {
120
- var k = n, C = k._payload, w = k._init;
115
+ return Q(n, n.render, "ForwardRef");
116
+ case h:
117
+ var v = n.displayName || null;
118
+ return v !== null ? v : J(n.type) || "Memo";
119
+ case p: {
120
+ var A = n, S = A._payload, w = A._init;
121
121
  try {
122
- return U(w(C));
122
+ return J(w(S));
123
123
  } catch {
124
124
  return null;
125
125
  }
@@ -127,18 +127,18 @@ function Wn() {
127
127
  }
128
128
  return null;
129
129
  }
130
- var J = Object.assign, Q = 0, st, at, h, v, S, B, K;
131
- function Ht() {
130
+ var V = Object.assign, X = 0, at, ct, d, y, R, D, W;
131
+ function Ut() {
132
132
  }
133
- Ht.__reactDisabledLog = !0;
134
- function vn() {
133
+ Ut.__reactDisabledLog = !0;
134
+ function kn() {
135
135
  {
136
- if (Q === 0) {
137
- st = console.log, at = console.info, h = console.warn, v = console.error, S = console.group, B = console.groupCollapsed, K = console.groupEnd;
136
+ if (X === 0) {
137
+ at = console.log, ct = console.info, d = console.warn, y = console.error, R = console.group, D = console.groupCollapsed, W = console.groupEnd;
138
138
  var n = {
139
139
  configurable: !0,
140
140
  enumerable: !0,
141
- value: Ht,
141
+ value: Ut,
142
142
  writable: !0
143
143
  };
144
144
  Object.defineProperties(console, {
@@ -151,77 +151,77 @@ function Wn() {
151
151
  groupEnd: n
152
152
  });
153
153
  }
154
- Q++;
154
+ X++;
155
155
  }
156
156
  }
157
- function yn() {
157
+ function An() {
158
158
  {
159
- if (Q--, Q === 0) {
159
+ if (X--, X === 0) {
160
160
  var n = {
161
161
  configurable: !0,
162
162
  enumerable: !0,
163
163
  writable: !0
164
164
  };
165
165
  Object.defineProperties(console, {
166
- log: J({}, n, {
167
- value: st
168
- }),
169
- info: J({}, n, {
166
+ log: V({}, n, {
170
167
  value: at
171
168
  }),
172
- warn: J({}, n, {
173
- value: h
169
+ info: V({}, n, {
170
+ value: ct
174
171
  }),
175
- error: J({}, n, {
176
- value: v
172
+ warn: V({}, n, {
173
+ value: d
177
174
  }),
178
- group: J({}, n, {
179
- value: S
175
+ error: V({}, n, {
176
+ value: y
180
177
  }),
181
- groupCollapsed: J({}, n, {
182
- value: B
178
+ group: V({}, n, {
179
+ value: R
183
180
  }),
184
- groupEnd: J({}, n, {
185
- value: K
181
+ groupCollapsed: V({}, n, {
182
+ value: D
183
+ }),
184
+ groupEnd: V({}, n, {
185
+ value: W
186
186
  })
187
187
  });
188
188
  }
189
- Q < 0 && I("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
189
+ X < 0 && j("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
190
190
  }
191
191
  }
192
- var jt = j.ReactCurrentDispatcher, Ct;
193
- function Pt(n, c, d) {
192
+ var Ct = C.ReactCurrentDispatcher, St;
193
+ function vt(n, c, u) {
194
194
  {
195
- if (Ct === void 0)
195
+ if (St === void 0)
196
196
  try {
197
197
  throw Error();
198
- } catch (k) {
199
- var P = k.stack.trim().match(/\n( *(at )?)/);
200
- Ct = P && P[1] || "";
198
+ } catch (A) {
199
+ var v = A.stack.trim().match(/\n( *(at )?)/);
200
+ St = v && v[1] || "";
201
201
  }
202
202
  return `
203
- ` + Ct + n;
203
+ ` + St + n;
204
204
  }
205
205
  }
206
- var Rt = !1, vt;
206
+ var Rt = !1, Pt;
207
207
  {
208
- var bn = typeof WeakMap == "function" ? WeakMap : Map;
209
- vt = new bn();
208
+ var jn = typeof WeakMap == "function" ? WeakMap : Map;
209
+ Pt = new jn();
210
210
  }
211
- function Ut(n, c) {
211
+ function Jt(n, c) {
212
212
  if (!n || Rt)
213
213
  return "";
214
214
  {
215
- var d = vt.get(n);
216
- if (d !== void 0)
217
- return d;
215
+ var u = Pt.get(n);
216
+ if (u !== void 0)
217
+ return u;
218
218
  }
219
- var P;
219
+ var v;
220
220
  Rt = !0;
221
- var k = Error.prepareStackTrace;
221
+ var A = Error.prepareStackTrace;
222
222
  Error.prepareStackTrace = void 0;
223
- var C;
224
- C = jt.current, jt.current = null, vn();
223
+ var S;
224
+ S = Ct.current, Ct.current = null, kn();
225
225
  try {
226
226
  if (c) {
227
227
  var w = function() {
@@ -234,196 +234,196 @@ function Wn() {
234
234
  }), typeof Reflect == "object" && Reflect.construct) {
235
235
  try {
236
236
  Reflect.construct(w, []);
237
- } catch (D) {
238
- P = D;
237
+ } catch (M) {
238
+ v = M;
239
239
  }
240
240
  Reflect.construct(n, [], w);
241
241
  } else {
242
242
  try {
243
243
  w.call();
244
- } catch (D) {
245
- P = D;
244
+ } catch (M) {
245
+ v = M;
246
246
  }
247
247
  n.call(w.prototype);
248
248
  }
249
249
  } else {
250
250
  try {
251
251
  throw Error();
252
- } catch (D) {
253
- P = D;
252
+ } catch (M) {
253
+ v = M;
254
254
  }
255
255
  n();
256
256
  }
257
- } catch (D) {
258
- if (D && P && typeof D.stack == "string") {
259
- for (var x = D.stack.split(`
260
- `), T = P.stack.split(`
261
- `), N = x.length - 1, F = T.length - 1; N >= 1 && F >= 0 && x[N] !== T[F]; )
257
+ } catch (M) {
258
+ if (M && v && typeof M.stack == "string") {
259
+ for (var x = M.stack.split(`
260
+ `), O = v.stack.split(`
261
+ `), N = x.length - 1, F = O.length - 1; N >= 1 && F >= 0 && x[N] !== O[F]; )
262
262
  F--;
263
263
  for (; N >= 1 && F >= 0; N--, F--)
264
- if (x[N] !== T[F]) {
264
+ if (x[N] !== O[F]) {
265
265
  if (N !== 1 || F !== 1)
266
266
  do
267
- if (N--, F--, F < 0 || x[N] !== T[F]) {
268
- var Z = `
267
+ if (N--, F--, F < 0 || x[N] !== O[F]) {
268
+ var L = `
269
269
  ` + x[N].replace(" at new ", " at ");
270
- return n.displayName && Z.includes("<anonymous>") && (Z = Z.replace("<anonymous>", n.displayName)), typeof n == "function" && vt.set(n, Z), Z;
270
+ return n.displayName && L.includes("<anonymous>") && (L = L.replace("<anonymous>", n.displayName)), typeof n == "function" && Pt.set(n, L), L;
271
271
  }
272
272
  while (N >= 1 && F >= 0);
273
273
  break;
274
274
  }
275
275
  }
276
276
  } finally {
277
- Rt = !1, jt.current = C, yn(), Error.prepareStackTrace = k;
277
+ Rt = !1, Ct.current = S, An(), Error.prepareStackTrace = A;
278
278
  }
279
- var rt = n ? n.displayName || n.name : "", W = rt ? Pt(rt) : "";
280
- return typeof n == "function" && vt.set(n, W), W;
279
+ var it = n ? n.displayName || n.name : "", q = it ? vt(it) : "";
280
+ return typeof n == "function" && Pt.set(n, q), q;
281
281
  }
282
- function xn(n, c, d) {
283
- return Ut(n, !1);
282
+ function Cn(n, c, u) {
283
+ return Jt(n, !1);
284
284
  }
285
- function wn(n) {
285
+ function Sn(n) {
286
286
  var c = n.prototype;
287
287
  return !!(c && c.isReactComponent);
288
288
  }
289
- function yt(n, c, d) {
289
+ function yt(n, c, u) {
290
290
  if (n == null)
291
291
  return "";
292
292
  if (typeof n == "function")
293
- return Ut(n, wn(n));
293
+ return Jt(n, Sn(n));
294
294
  if (typeof n == "string")
295
- return Pt(n);
295
+ return vt(n);
296
296
  switch (n) {
297
297
  case l:
298
- return Pt("Suspense");
299
- case u:
300
- return Pt("SuspenseList");
298
+ return vt("Suspense");
299
+ case b:
300
+ return vt("SuspenseList");
301
301
  }
302
302
  if (typeof n == "object")
303
303
  switch (n.$$typeof) {
304
304
  case g:
305
- return xn(n.render);
306
- case p:
307
- return yt(n.type, c, d);
308
- case f: {
309
- var P = n, k = P._payload, C = P._init;
305
+ return Cn(n.render);
306
+ case h:
307
+ return yt(n.type, c, u);
308
+ case p: {
309
+ var v = n, A = v._payload, S = v._init;
310
310
  try {
311
- return yt(C(k), c, d);
311
+ return yt(S(A), c, u);
312
312
  } catch {
313
313
  }
314
314
  }
315
315
  }
316
316
  return "";
317
317
  }
318
- var ct = Object.prototype.hasOwnProperty, Jt = {}, Vt = j.ReactDebugCurrentFrame;
318
+ var lt = Object.prototype.hasOwnProperty, Vt = {}, Yt = C.ReactDebugCurrentFrame;
319
319
  function bt(n) {
320
320
  if (n) {
321
- var c = n._owner, d = yt(n.type, n._source, c ? c.type : null);
322
- Vt.setExtraStackFrame(d);
321
+ var c = n._owner, u = yt(n.type, n._source, c ? c.type : null);
322
+ Yt.setExtraStackFrame(u);
323
323
  } else
324
- Vt.setExtraStackFrame(null);
324
+ Yt.setExtraStackFrame(null);
325
325
  }
326
- function An(n, c, d, P, k) {
326
+ function Rn(n, c, u, v, A) {
327
327
  {
328
- var C = Function.call.bind(ct);
328
+ var S = Function.call.bind(lt);
329
329
  for (var w in n)
330
- if (C(n, w)) {
330
+ if (S(n, w)) {
331
331
  var x = void 0;
332
332
  try {
333
333
  if (typeof n[w] != "function") {
334
- var T = Error((P || "React class") + ": " + d + " type `" + w + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof n[w] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
335
- throw T.name = "Invariant Violation", T;
334
+ var O = Error((v || "React class") + ": " + u + " type `" + w + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof n[w] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
335
+ throw O.name = "Invariant Violation", O;
336
336
  }
337
- x = n[w](c, w, P, d, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
337
+ x = n[w](c, w, v, u, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
338
338
  } catch (N) {
339
339
  x = N;
340
340
  }
341
- x && !(x instanceof Error) && (bt(k), I("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", P || "React class", d, w, typeof x), bt(null)), x instanceof Error && !(x.message in Jt) && (Jt[x.message] = !0, bt(k), I("Failed %s type: %s", d, x.message), bt(null));
341
+ x && !(x instanceof Error) && (bt(A), j("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", v || "React class", u, w, typeof x), bt(null)), x instanceof Error && !(x.message in Vt) && (Vt[x.message] = !0, bt(A), j("Failed %s type: %s", u, x.message), bt(null));
342
342
  }
343
343
  }
344
344
  }
345
- var kn = Array.isArray;
345
+ var In = Array.isArray;
346
346
  function It(n) {
347
- return kn(n);
347
+ return In(n);
348
348
  }
349
- function jn(n) {
349
+ function Nn(n) {
350
350
  {
351
- var c = typeof Symbol == "function" && Symbol.toStringTag, d = c && n[Symbol.toStringTag] || n.constructor.name || "Object";
352
- return d;
351
+ var c = typeof Symbol == "function" && Symbol.toStringTag, u = c && n[Symbol.toStringTag] || n.constructor.name || "Object";
352
+ return u;
353
353
  }
354
354
  }
355
- function Cn(n) {
355
+ function Fn(n) {
356
356
  try {
357
- return Yt(n), !1;
357
+ return Gt(n), !1;
358
358
  } catch {
359
359
  return !0;
360
360
  }
361
361
  }
362
- function Yt(n) {
362
+ function Gt(n) {
363
363
  return "" + n;
364
364
  }
365
- function Gt(n) {
366
- if (Cn(n))
367
- return I("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", jn(n)), Yt(n);
365
+ function Kt(n) {
366
+ if (Fn(n))
367
+ return j("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", Nn(n)), Gt(n);
368
368
  }
369
- var Kt = j.ReactCurrentOwner, Rn = {
369
+ var Qt = C.ReactCurrentOwner, zn = {
370
370
  key: !0,
371
371
  ref: !0,
372
372
  __self: !0,
373
373
  __source: !0
374
- }, Qt, Wt;
375
- function In(n) {
376
- if (ct.call(n, "ref")) {
374
+ }, Wt, Xt;
375
+ function En(n) {
376
+ if (lt.call(n, "ref")) {
377
377
  var c = Object.getOwnPropertyDescriptor(n, "ref").get;
378
378
  if (c && c.isReactWarning)
379
379
  return !1;
380
380
  }
381
381
  return n.ref !== void 0;
382
382
  }
383
- function Sn(n) {
384
- if (ct.call(n, "key")) {
383
+ function Bn(n) {
384
+ if (lt.call(n, "key")) {
385
385
  var c = Object.getOwnPropertyDescriptor(n, "key").get;
386
386
  if (c && c.isReactWarning)
387
387
  return !1;
388
388
  }
389
389
  return n.key !== void 0;
390
390
  }
391
- function Nn(n, c) {
392
- typeof n.ref == "string" && Kt.current;
391
+ function Tn(n, c) {
392
+ typeof n.ref == "string" && Qt.current;
393
393
  }
394
- function Fn(n, c) {
394
+ function Dn(n, c) {
395
395
  {
396
- var d = function() {
397
- Qt || (Qt = !0, I("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", c));
396
+ var u = function() {
397
+ Wt || (Wt = !0, j("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", c));
398
398
  };
399
- d.isReactWarning = !0, Object.defineProperty(n, "key", {
400
- get: d,
399
+ u.isReactWarning = !0, Object.defineProperty(n, "key", {
400
+ get: u,
401
401
  configurable: !0
402
402
  });
403
403
  }
404
404
  }
405
- function En(n, c) {
405
+ function On(n, c) {
406
406
  {
407
- var d = function() {
408
- Wt || (Wt = !0, I("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", c));
407
+ var u = function() {
408
+ Xt || (Xt = !0, j("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", c));
409
409
  };
410
- d.isReactWarning = !0, Object.defineProperty(n, "ref", {
411
- get: d,
410
+ u.isReactWarning = !0, Object.defineProperty(n, "ref", {
411
+ get: u,
412
412
  configurable: !0
413
413
  });
414
414
  }
415
415
  }
416
- var zn = function(n, c, d, P, k, C, w) {
416
+ var Mn = function(n, c, u, v, A, S, w) {
417
417
  var x = {
418
418
  // This tag allows us to uniquely identify this as a React Element
419
419
  $$typeof: r,
420
420
  // Built-in properties that belong on the element
421
421
  type: n,
422
422
  key: c,
423
- ref: d,
423
+ ref: u,
424
424
  props: w,
425
425
  // Record the component responsible for creating this element.
426
- _owner: C
426
+ _owner: S
427
427
  };
428
428
  return x._store = {}, Object.defineProperty(x._store, "validated", {
429
429
  configurable: !1,
@@ -434,49 +434,49 @@ function Wn() {
434
434
  configurable: !1,
435
435
  enumerable: !1,
436
436
  writable: !1,
437
- value: P
437
+ value: v
438
438
  }), Object.defineProperty(x, "_source", {
439
439
  configurable: !1,
440
440
  enumerable: !1,
441
441
  writable: !1,
442
- value: k
442
+ value: A
443
443
  }), Object.freeze && (Object.freeze(x.props), Object.freeze(x)), x;
444
444
  };
445
- function Bn(n, c, d, P, k) {
445
+ function Ln(n, c, u, v, A) {
446
446
  {
447
- var C, w = {}, x = null, T = null;
448
- d !== void 0 && (Gt(d), x = "" + d), Sn(c) && (Gt(c.key), x = "" + c.key), In(c) && (T = c.ref, Nn(c, k));
449
- for (C in c)
450
- ct.call(c, C) && !Rn.hasOwnProperty(C) && (w[C] = c[C]);
447
+ var S, w = {}, x = null, O = null;
448
+ u !== void 0 && (Kt(u), x = "" + u), Bn(c) && (Kt(c.key), x = "" + c.key), En(c) && (O = c.ref, Tn(c, A));
449
+ for (S in c)
450
+ lt.call(c, S) && !zn.hasOwnProperty(S) && (w[S] = c[S]);
451
451
  if (n && n.defaultProps) {
452
452
  var N = n.defaultProps;
453
- for (C in N)
454
- w[C] === void 0 && (w[C] = N[C]);
453
+ for (S in N)
454
+ w[S] === void 0 && (w[S] = N[S]);
455
455
  }
456
- if (x || T) {
456
+ if (x || O) {
457
457
  var F = typeof n == "function" ? n.displayName || n.name || "Unknown" : n;
458
- x && Fn(w, F), T && En(w, F);
458
+ x && Dn(w, F), O && On(w, F);
459
459
  }
460
- return zn(n, x, T, k, P, Kt.current, w);
460
+ return Mn(n, x, O, A, v, Qt.current, w);
461
461
  }
462
462
  }
463
- var St = j.ReactCurrentOwner, Xt = j.ReactDebugCurrentFrame;
464
- function et(n) {
463
+ var Nt = C.ReactCurrentOwner, qt = C.ReactDebugCurrentFrame;
464
+ function ot(n) {
465
465
  if (n) {
466
- var c = n._owner, d = yt(n.type, n._source, c ? c.type : null);
467
- Xt.setExtraStackFrame(d);
466
+ var c = n._owner, u = yt(n.type, n._source, c ? c.type : null);
467
+ qt.setExtraStackFrame(u);
468
468
  } else
469
- Xt.setExtraStackFrame(null);
469
+ qt.setExtraStackFrame(null);
470
470
  }
471
- var Nt;
472
- Nt = !1;
473
- function Ft(n) {
471
+ var Ft;
472
+ Ft = !1;
473
+ function zt(n) {
474
474
  return typeof n == "object" && n !== null && n.$$typeof === r;
475
475
  }
476
- function qt() {
476
+ function $t() {
477
477
  {
478
- if (St.current) {
479
- var n = U(St.current.type);
478
+ if (Nt.current) {
479
+ var n = J(Nt.current.type);
480
480
  if (n)
481
481
  return `
482
482
 
@@ -485,170 +485,170 @@ Check the render method of \`` + n + "`.";
485
485
  return "";
486
486
  }
487
487
  }
488
- function Tn(n) {
488
+ function Zn(n) {
489
489
  return "";
490
490
  }
491
- var $t = {};
492
- function Dn(n) {
491
+ var tn = {};
492
+ function Hn(n) {
493
493
  {
494
- var c = qt();
494
+ var c = $t();
495
495
  if (!c) {
496
- var d = typeof n == "string" ? n : n.displayName || n.name;
497
- d && (c = `
496
+ var u = typeof n == "string" ? n : n.displayName || n.name;
497
+ u && (c = `
498
498
 
499
- Check the top-level render call using <` + d + ">.");
499
+ Check the top-level render call using <` + u + ">.");
500
500
  }
501
501
  return c;
502
502
  }
503
503
  }
504
- function tn(n, c) {
504
+ function nn(n, c) {
505
505
  {
506
506
  if (!n._store || n._store.validated || n.key != null)
507
507
  return;
508
508
  n._store.validated = !0;
509
- var d = Dn(c);
510
- if ($t[d])
509
+ var u = Hn(c);
510
+ if (tn[u])
511
511
  return;
512
- $t[d] = !0;
513
- var P = "";
514
- n && n._owner && n._owner !== St.current && (P = " It was passed a child from " + U(n._owner.type) + "."), et(n), I('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', d, P), et(null);
512
+ tn[u] = !0;
513
+ var v = "";
514
+ n && n._owner && n._owner !== Nt.current && (v = " It was passed a child from " + J(n._owner.type) + "."), ot(n), j('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', u, v), ot(null);
515
515
  }
516
516
  }
517
- function nn(n, c) {
517
+ function en(n, c) {
518
518
  {
519
519
  if (typeof n != "object")
520
520
  return;
521
521
  if (It(n))
522
- for (var d = 0; d < n.length; d++) {
523
- var P = n[d];
524
- Ft(P) && tn(P, c);
522
+ for (var u = 0; u < n.length; u++) {
523
+ var v = n[u];
524
+ zt(v) && nn(v, c);
525
525
  }
526
- else if (Ft(n))
526
+ else if (zt(n))
527
527
  n._store && (n._store.validated = !0);
528
528
  else if (n) {
529
- var k = A(n);
530
- if (typeof k == "function" && k !== n.entries)
531
- for (var C = k.call(n), w; !(w = C.next()).done; )
532
- Ft(w.value) && tn(w.value, c);
529
+ var A = k(n);
530
+ if (typeof A == "function" && A !== n.entries)
531
+ for (var S = A.call(n), w; !(w = S.next()).done; )
532
+ zt(w.value) && nn(w.value, c);
533
533
  }
534
534
  }
535
535
  }
536
- function On(n) {
536
+ function Un(n) {
537
537
  {
538
538
  var c = n.type;
539
539
  if (c == null || typeof c == "string")
540
540
  return;
541
- var d;
541
+ var u;
542
542
  if (typeof c == "function")
543
- d = c.propTypes;
543
+ u = c.propTypes;
544
544
  else if (typeof c == "object" && (c.$$typeof === g || // Note: Memo only checks outer props here.
545
545
  // Inner props are checked in the reconciler.
546
- c.$$typeof === p))
547
- d = c.propTypes;
546
+ c.$$typeof === h))
547
+ u = c.propTypes;
548
548
  else
549
549
  return;
550
- if (d) {
551
- var P = U(c);
552
- An(d, n.props, "prop", P, n);
553
- } else if (c.PropTypes !== void 0 && !Nt) {
554
- Nt = !0;
555
- var k = U(c);
556
- I("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", k || "Unknown");
550
+ if (u) {
551
+ var v = J(c);
552
+ Rn(u, n.props, "prop", v, n);
553
+ } else if (c.PropTypes !== void 0 && !Ft) {
554
+ Ft = !0;
555
+ var A = J(c);
556
+ j("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", A || "Unknown");
557
557
  }
558
- typeof c.getDefaultProps == "function" && !c.getDefaultProps.isReactClassApproved && I("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
558
+ typeof c.getDefaultProps == "function" && !c.getDefaultProps.isReactClassApproved && j("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
559
559
  }
560
560
  }
561
- function Zn(n) {
561
+ function Jn(n) {
562
562
  {
563
- for (var c = Object.keys(n.props), d = 0; d < c.length; d++) {
564
- var P = c[d];
565
- if (P !== "children" && P !== "key") {
566
- et(n), I("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", P), et(null);
563
+ for (var c = Object.keys(n.props), u = 0; u < c.length; u++) {
564
+ var v = c[u];
565
+ if (v !== "children" && v !== "key") {
566
+ ot(n), j("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", v), ot(null);
567
567
  break;
568
568
  }
569
569
  }
570
- n.ref !== null && (et(n), I("Invalid attribute `ref` supplied to `React.Fragment`."), et(null));
570
+ n.ref !== null && (ot(n), j("Invalid attribute `ref` supplied to `React.Fragment`."), ot(null));
571
571
  }
572
572
  }
573
- var en = {};
574
- function rn(n, c, d, P, k, C) {
573
+ var rn = {};
574
+ function on(n, c, u, v, A, S) {
575
575
  {
576
- var w = kt(n);
576
+ var w = jt(n);
577
577
  if (!w) {
578
578
  var x = "";
579
579
  (n === void 0 || typeof n == "object" && n !== null && Object.keys(n).length === 0) && (x += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");
580
- var T = Tn();
581
- T ? x += T : x += qt();
580
+ var O = Zn();
581
+ O ? x += O : x += $t();
582
582
  var N;
583
- n === null ? N = "null" : It(n) ? N = "array" : n !== void 0 && n.$$typeof === r ? (N = "<" + (U(n.type) || "Unknown") + " />", x = " Did you accidentally export a JSX literal instead of a component?") : N = typeof n, I("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", N, x);
583
+ n === null ? N = "null" : It(n) ? N = "array" : n !== void 0 && n.$$typeof === r ? (N = "<" + (J(n.type) || "Unknown") + " />", x = " Did you accidentally export a JSX literal instead of a component?") : N = typeof n, j("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", N, x);
584
584
  }
585
- var F = Bn(n, c, d, k, C);
585
+ var F = Ln(n, c, u, A, S);
586
586
  if (F == null)
587
587
  return F;
588
588
  if (w) {
589
- var Z = c.children;
590
- if (Z !== void 0)
591
- if (P)
592
- if (It(Z)) {
593
- for (var rt = 0; rt < Z.length; rt++)
594
- nn(Z[rt], n);
595
- Object.freeze && Object.freeze(Z);
589
+ var L = c.children;
590
+ if (L !== void 0)
591
+ if (v)
592
+ if (It(L)) {
593
+ for (var it = 0; it < L.length; it++)
594
+ en(L[it], n);
595
+ Object.freeze && Object.freeze(L);
596
596
  } else
597
- I("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");
597
+ j("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");
598
598
  else
599
- nn(Z, n);
599
+ en(L, n);
600
600
  }
601
- if (ct.call(c, "key")) {
602
- var W = U(n), D = Object.keys(c).filter(function(Vn) {
603
- return Vn !== "key";
604
- }), Et = D.length > 0 ? "{key: someKey, " + D.join(": ..., ") + ": ...}" : "{key: someKey}";
605
- if (!en[W + Et]) {
606
- var Jn = D.length > 0 ? "{" + D.join(": ..., ") + ": ...}" : "{}";
607
- I(`A props object containing a "key" prop is being spread into JSX:
601
+ if (lt.call(c, "key")) {
602
+ var q = J(n), M = Object.keys(c).filter(function(Wn) {
603
+ return Wn !== "key";
604
+ }), Et = M.length > 0 ? "{key: someKey, " + M.join(": ..., ") + ": ...}" : "{key: someKey}";
605
+ if (!rn[q + Et]) {
606
+ var Qn = M.length > 0 ? "{" + M.join(": ..., ") + ": ...}" : "{}";
607
+ j(`A props object containing a "key" prop is being spread into JSX:
608
608
  let props = %s;
609
609
  <%s {...props} />
610
610
  React keys must be passed directly to JSX without using spread:
611
611
  let props = %s;
612
- <%s key={someKey} {...props} />`, Et, W, Jn, W), en[W + Et] = !0;
612
+ <%s key={someKey} {...props} />`, Et, q, Qn, q), rn[q + Et] = !0;
613
613
  }
614
614
  }
615
- return n === s ? Zn(F) : On(F), F;
615
+ return n === s ? Jn(F) : Un(F), F;
616
616
  }
617
617
  }
618
- function Mn(n, c, d) {
619
- return rn(n, c, d, !0);
618
+ function Vn(n, c, u) {
619
+ return on(n, c, u, !0);
620
620
  }
621
- function Ln(n, c, d) {
622
- return rn(n, c, d, !1);
621
+ function Yn(n, c, u) {
622
+ return on(n, c, u, !1);
623
623
  }
624
- var Hn = Ln, Un = Mn;
625
- _t.Fragment = s, _t.jsx = Hn, _t.jsxs = Un;
626
- }()), _t;
624
+ var Gn = Yn, Kn = Vn;
625
+ mt.Fragment = s, mt.jsx = Gn, mt.jsxs = Kn;
626
+ }()), mt;
627
627
  }
628
- process.env.NODE_ENV === "production" ? Dt.exports = Qn() : Dt.exports = Wn();
628
+ process.env.NODE_ENV === "production" ? Dt.exports = te() : Dt.exports = ne();
629
629
  var e = Dt.exports;
630
- const Xn = "_button_qg5kh_1", qn = {
631
- button: Xn
630
+ const ee = "_button_qg5kh_1", re = {
631
+ button: ee
632
632
  };
633
- function so({ className: t = "", ...r }) {
634
- return /* @__PURE__ */ e.jsx("button", { className: `${qn.button} ${t}`, ...r, children: "TEST" });
633
+ function Pi({ className: t = "", ...r }) {
634
+ return /* @__PURE__ */ e.jsx("button", { className: `${re.button} ${t}`, ...r, children: "TEST" });
635
635
  }
636
- const $n = "_archive_doicitation_y1o5i_1", te = "_doi_badge_y1o5i_9", ne = "_doi_left_y1o5i_13", ee = "_doi_right_y1o5i_27", xt = {
637
- archive_doicitation: $n,
638
- doi_badge: te,
639
- doi_left: ne,
640
- doi_right: ee
641
- }, ao = ({
636
+ const oe = "_archive_doicitation_y1o5i_1", ie = "_doi_badge_y1o5i_9", se = "_doi_left_y1o5i_13", ae = "_doi_right_y1o5i_27", xt = {
637
+ archive_doicitation: oe,
638
+ doi_badge: ie,
639
+ doi_left: se,
640
+ doi_right: ae
641
+ }, ce = ({
642
642
  doi_id: t,
643
643
  doi: r,
644
- label: i = "DOI",
644
+ label: o = "DOI",
645
645
  color: s = "#a2cbff",
646
- className: o = "",
646
+ className: i = "",
647
647
  ..._
648
648
  }) => {
649
649
  let m = "";
650
- return t != null ? m = `10.24435/materialscloud:${t}` : m = r, /* @__PURE__ */ e.jsx("div", { className: `${xt.archive_doicitation} ${o}`, ..._, children: /* @__PURE__ */ e.jsxs("span", { className: xt.doi_badge, children: [
651
- /* @__PURE__ */ e.jsx("span", { className: xt.doi_left, children: i }),
650
+ return t != null ? m = `10.24435/materialscloud:${t}` : m = r, /* @__PURE__ */ e.jsx("div", { className: `${xt.archive_doicitation} ${i}`, ..._, children: /* @__PURE__ */ e.jsxs("span", { className: xt.doi_badge, children: [
651
+ /* @__PURE__ */ e.jsx("span", { className: xt.doi_left, children: o }),
652
652
  /* @__PURE__ */ e.jsx(
653
653
  "a",
654
654
  {
@@ -660,50 +660,50 @@ const $n = "_archive_doicitation_y1o5i_1", te = "_doi_badge_y1o5i_9", ne = "_doi
660
660
  }
661
661
  )
662
662
  ] }) });
663
- }, mt = (...t) => t.filter(Boolean).join(" ");
664
- function re(t) {
665
- const r = t == null ? void 0 : t.type, i = (r == null ? void 0 : r.displayName) || (r == null ? void 0 : r.name) || (typeof r == "string" ? r : "");
666
- return typeof i == "string" && i.toLowerCase().includes("popover");
663
+ }, gt = (...t) => t.filter(Boolean).join(" ");
664
+ function le(t) {
665
+ const r = t == null ? void 0 : t.type, o = (r == null ? void 0 : r.displayName) || (r == null ? void 0 : r.name) || (typeof r == "string" ? r : "");
666
+ return typeof o == "string" && o.toLowerCase().includes("popover");
667
667
  }
668
- function ie(t) {
668
+ function _e(t) {
669
669
  let r = t;
670
- for (; r && typeof r == "object" && "props" in r && re(r); )
670
+ for (; r && typeof r == "object" && "props" in r && le(r); )
671
671
  r = r.props.children;
672
672
  return r;
673
673
  }
674
- function co({
674
+ function yi({
675
675
  popover: t,
676
676
  content: r,
677
- placement: i = "top",
677
+ placement: o = "top",
678
678
  className: s,
679
- classes: o = {},
679
+ classes: i = {},
680
680
  children: _ = "?",
681
681
  ...m
682
682
  }) {
683
- const [a, g] = E(!1), l = Zt(null), u = r !== void 0 ? r : t, p = u != null;
684
- return nt(() => {
685
- if (!a || !p) return;
686
- const f = (y) => {
687
- l.current && !l.current.contains(y.target) && g(!1);
688
- }, b = (y) => {
689
- y.key === "Escape" && g(!1);
683
+ const [a, g] = B(!1), l = Lt(null), b = r !== void 0 ? r : t, h = b != null;
684
+ return rt(() => {
685
+ if (!a || !h) return;
686
+ const p = (P) => {
687
+ l.current && !l.current.contains(P.target) && g(!1);
688
+ }, f = (P) => {
689
+ P.key === "Escape" && g(!1);
690
690
  };
691
- return document.addEventListener("pointerdown", f), document.addEventListener("keydown", b), () => {
692
- document.removeEventListener("pointerdown", f), document.removeEventListener("keydown", b);
691
+ return document.addEventListener("pointerdown", p), document.addEventListener("keydown", f), () => {
692
+ document.removeEventListener("pointerdown", p), document.removeEventListener("keydown", f);
693
693
  };
694
- }, [a, p]), p ? /* @__PURE__ */ e.jsxs(
694
+ }, [a, h]), h ? /* @__PURE__ */ e.jsxs(
695
695
  "div",
696
696
  {
697
697
  ref: l,
698
- className: mt("help-button", s, o.root),
698
+ className: gt("help-button", s, i.root),
699
699
  ...m,
700
700
  children: [
701
701
  /* @__PURE__ */ e.jsx(
702
702
  "button",
703
703
  {
704
704
  type: "button",
705
- className: mt("help-button__trigger", o.trigger),
706
- onClick: () => g((f) => !f),
705
+ className: gt("help-button__trigger", i.trigger),
706
+ onClick: () => g((p) => !p),
707
707
  "aria-expanded": a,
708
708
  "aria-haspopup": "dialog",
709
709
  children: _
@@ -713,17 +713,17 @@ function co({
713
713
  "div",
714
714
  {
715
715
  role: "dialog",
716
- "data-placement": i,
717
- className: mt("help-button__popover", o.popover),
718
- children: ie(u)
716
+ "data-placement": o,
717
+ className: gt("help-button__popover", i.popover),
718
+ children: _e(b)
719
719
  }
720
720
  )
721
721
  ]
722
722
  }
723
- ) : /* @__PURE__ */ e.jsx("div", { className: mt("help-button", s, o.root), ...m, children: /* @__PURE__ */ e.jsx("span", { className: mt("help-button__trigger", o.trigger), children: _ }) });
723
+ ) : /* @__PURE__ */ e.jsx("div", { className: gt("help-button", s, i.root), ...m, children: /* @__PURE__ */ e.jsx("span", { className: gt("help-button__trigger", i.trigger), children: _ }) });
724
724
  }
725
- const oe = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!--%20Created%20with%20Inkscape%20(http://www.inkscape.org/)%20--%3e%3csvg%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:cc='http://creativecommons.org/ns%23'%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:svg='http://www.w3.org/2000/svg'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd'%20xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape'%20width='36.012337'%20height='31.802971'%20viewBox='0%200%2036.012336%2031.802972'%20id='svg9098'%20version='1.1'%20inkscape:version='0.91%20r13725'%20sodipodi:docname='mclogo-split-rotate-v9.svg'%3e%3cdefs%20id='defs9100'%20/%3e%3csodipodi:namedview%20id='base'%20pagecolor='%23ffffff'%20bordercolor='%23666666'%20borderopacity='1.0'%20inkscape:pageopacity='0.0'%20inkscape:pageshadow='2'%20inkscape:zoom='11.2'%20inkscape:cx='14.890099'%20inkscape:cy='23.051314'%20inkscape:document-units='px'%20inkscape:current-layer='g9'%20showgrid='false'%20units='px'%20inkscape:window-width='1680'%20inkscape:window-height='940'%20inkscape:window-x='0'%20inkscape:window-y='1'%20inkscape:window-maximized='1'%20fit-margin-top='3'%20fit-margin-left='3'%20fit-margin-right='3'%20fit-margin-bottom='5'%20/%3e%3cmetadata%20id='metadata9103'%3e%3crdf:RDF%3e%3ccc:Work%20rdf:about=''%3e%3cdc:format%3eimage/svg+xml%3c/dc:format%3e%3cdc:type%20rdf:resource='http://purl.org/dc/dcmitype/StillImage'%20/%3e%3cdc:title%20/%3e%3c/cc:Work%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cg%20inkscape:label='Layer%201'%20inkscape:groupmode='layer'%20id='layer1'%20transform='translate(3.0066849,-1015.2422)'%3e%3cg%20id='mctriangle'%20transform='matrix(1.1533275,0,0,1.1556928,-379.094,391.20844)'%3e%3cg%20transform='translate(2975.41,266.50511)'%20style='display:inline;stroke:%23d21f15;stroke-width:0.86616874;stroke-opacity:1'%20id='layer6'%20/%3e%3cg%20id='g9'%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.22655%20C%20334.49344,546.23874%20337.72144,543.00587%20341.70205,543.00587%20345.68227,543.00587%20348.90912,546.23874%20348.90912,550.22655'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88989985;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9220'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.41953%20C%20331.53412,550.41953%20329.1333,552.88285%20329.1333,555.92274%20329.1333,558.96264%20331.53412,561.42596%20334.49344,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9224'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20348.90912,550.41953%20C%20351.86844,550.41953%20354.26926,552.88285%20354.26926,555.92274%20354.26926,558.96264%20351.86844,561.42596%20348.90912,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9228'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.45731,561.42596%20348.92565,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9232'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.22655%20C%20334.49344,546.23874%20337.72144,543.00587%20341.70205,543.00587%20345.68227,543.00587%20348.90912,546.23874%20348.90912,550.22655'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88989985;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9236'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.41953%20C%20331.53412,550.41953%20329.1333,552.88285%20329.1333,555.92274%20329.1333,558.96264%20331.53412,561.42596%20334.49344,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9240'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20348.90912,550.41953%20C%20351.86844,550.41953%20354.26926,552.88285%20354.26926,555.92274%20354.26926,558.96264%20351.86844,561.42596%20348.90912,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9244'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.45731,561.42596%20348.92565,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9248'%20/%3e%3cellipse%20ry='0.25958455'%20rx='0.26011693'%20cy='553.91522'%20cx='341.70126'%20id='ref'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.4000001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20/%3e%3cpath%20id='mctriangleonly'%20d='M%20335.13723,550.18801%20338.41923,555.66439%20341.70129,561.14077%20344.98332,555.66439%20348.26535,550.18801%20341.70129,550.18801%20Z'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.91575587;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20inkscape:connector-curvature='0'%20/%3e%3ccircle%20cy='550.02032'%20cx='348.39252'%20id='circle7840-5'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20r='1.4070433'%20/%3e%3ccircle%20cy='550.02032'%20cx='335.01007'%20id='circle7842-0'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20r='1.4070433'%20/%3e%3ccircle%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20id='circle7844-5'%20cx='341.70132'%20cy='561.30841'%20r='1.4070433'%20/%3e%3ccircle%20r='1.4070433'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate;filter-blend-mode:normal;filter-gaussianBlur-deviation:0'%20id='movingcircle'%20cx='335.01007'%20cy='550.02032'%3e%3canimateTransform%20id='anim1'%20repeatCount='indefinite'%20begin='0s'%20dur='1s'%20values='0.0%200.0;13.38245%200.0;6.69125%2011.28809;0.0%200.0'%20type='translate'%20attributeName='transform'%20/%3e%3c/circle%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
726
- function lo({ className: t = "", style: r, ...i }) {
725
+ const me = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!--%20Created%20with%20Inkscape%20(http://www.inkscape.org/)%20--%3e%3csvg%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:cc='http://creativecommons.org/ns%23'%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:svg='http://www.w3.org/2000/svg'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd'%20xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape'%20width='36.012337'%20height='31.802971'%20viewBox='0%200%2036.012336%2031.802972'%20id='svg9098'%20version='1.1'%20inkscape:version='0.91%20r13725'%20sodipodi:docname='mclogo-split-rotate-v9.svg'%3e%3cdefs%20id='defs9100'%20/%3e%3csodipodi:namedview%20id='base'%20pagecolor='%23ffffff'%20bordercolor='%23666666'%20borderopacity='1.0'%20inkscape:pageopacity='0.0'%20inkscape:pageshadow='2'%20inkscape:zoom='11.2'%20inkscape:cx='14.890099'%20inkscape:cy='23.051314'%20inkscape:document-units='px'%20inkscape:current-layer='g9'%20showgrid='false'%20units='px'%20inkscape:window-width='1680'%20inkscape:window-height='940'%20inkscape:window-x='0'%20inkscape:window-y='1'%20inkscape:window-maximized='1'%20fit-margin-top='3'%20fit-margin-left='3'%20fit-margin-right='3'%20fit-margin-bottom='5'%20/%3e%3cmetadata%20id='metadata9103'%3e%3crdf:RDF%3e%3ccc:Work%20rdf:about=''%3e%3cdc:format%3eimage/svg+xml%3c/dc:format%3e%3cdc:type%20rdf:resource='http://purl.org/dc/dcmitype/StillImage'%20/%3e%3cdc:title%20/%3e%3c/cc:Work%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cg%20inkscape:label='Layer%201'%20inkscape:groupmode='layer'%20id='layer1'%20transform='translate(3.0066849,-1015.2422)'%3e%3cg%20id='mctriangle'%20transform='matrix(1.1533275,0,0,1.1556928,-379.094,391.20844)'%3e%3cg%20transform='translate(2975.41,266.50511)'%20style='display:inline;stroke:%23d21f15;stroke-width:0.86616874;stroke-opacity:1'%20id='layer6'%20/%3e%3cg%20id='g9'%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.22655%20C%20334.49344,546.23874%20337.72144,543.00587%20341.70205,543.00587%20345.68227,543.00587%20348.90912,546.23874%20348.90912,550.22655'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88989985;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9220'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.41953%20C%20331.53412,550.41953%20329.1333,552.88285%20329.1333,555.92274%20329.1333,558.96264%20331.53412,561.42596%20334.49344,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9224'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20348.90912,550.41953%20C%20351.86844,550.41953%20354.26926,552.88285%20354.26926,555.92274%20354.26926,558.96264%20351.86844,561.42596%20348.90912,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9228'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.45731,561.42596%20348.92565,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9232'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.22655%20C%20334.49344,546.23874%20337.72144,543.00587%20341.70205,543.00587%20345.68227,543.00587%20348.90912,546.23874%20348.90912,550.22655'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88989985;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9236'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.49344,550.41953%20C%20331.53412,550.41953%20329.1333,552.88285%20329.1333,555.92274%20329.1333,558.96264%20331.53412,561.42596%20334.49344,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9240'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20348.90912,550.41953%20C%20351.86844,550.41953%20354.26926,552.88285%20354.26926,555.92274%20354.26926,558.96264%20351.86844,561.42596%20348.90912,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9244'%20/%3e%3cpath%20inkscape:connector-curvature='0'%20d='M%20334.45731,561.42596%20348.92565,561.42596'%20style='fill:none;stroke:%23d21f15;stroke-width:0.88643086;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1'%20id='path9248'%20/%3e%3cellipse%20ry='0.25958455'%20rx='0.26011693'%20cy='553.91522'%20cx='341.70126'%20id='ref'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.4000001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20/%3e%3cpath%20id='mctriangleonly'%20d='M%20335.13723,550.18801%20338.41923,555.66439%20341.70129,561.14077%20344.98332,555.66439%20348.26535,550.18801%20341.70129,550.18801%20Z'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.91575587;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20inkscape:connector-curvature='0'%20/%3e%3ccircle%20cy='550.02032'%20cx='348.39252'%20id='circle7840-5'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20r='1.4070433'%20/%3e%3ccircle%20cy='550.02032'%20cx='335.01007'%20id='circle7842-0'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20r='1.4070433'%20/%3e%3ccircle%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate'%20id='circle7844-5'%20cx='341.70132'%20cy='561.30841'%20r='1.4070433'%20/%3e%3ccircle%20r='1.4070433'%20style='color:%23000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000000;solid-opacity:1;fill:%23ffffff;fill-opacity:1;fill-rule:nonzero;stroke:%23d21f15;stroke-width:0.88349211;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate;filter-blend-mode:normal;filter-gaussianBlur-deviation:0'%20id='movingcircle'%20cx='335.01007'%20cy='550.02032'%3e%3canimateTransform%20id='anim1'%20repeatCount='indefinite'%20begin='0s'%20dur='1s'%20values='0.0%200.0;13.38245%200.0;6.69125%2011.28809;0.0%200.0'%20type='translate'%20attributeName='transform'%20/%3e%3c/circle%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e";
726
+ function bi({ className: t = "", style: r, ...o }) {
727
727
  return /* @__PURE__ */ e.jsx(
728
728
  "div",
729
729
  {
@@ -734,11 +734,11 @@ function lo({ className: t = "", style: r, ...i }) {
734
734
  textAlign: "center",
735
735
  ...r
736
736
  },
737
- ...i,
737
+ ...o,
738
738
  children: /* @__PURE__ */ e.jsx(
739
739
  "img",
740
740
  {
741
- src: oe,
741
+ src: me,
742
742
  alt: "Materials Cloud spinner",
743
743
  style: {
744
744
  width: "100%",
@@ -751,7 +751,7 @@ function lo({ className: t = "", style: r, ...i }) {
751
751
  }
752
752
  );
753
753
  }
754
- function gn({ className: t = "h-4 w-4", ...r }) {
754
+ function un({ className: t = "h-4 w-4", ...r }) {
755
755
  return /* @__PURE__ */ e.jsxs(
756
756
  "svg",
757
757
  {
@@ -771,7 +771,7 @@ function gn({ className: t = "h-4 w-4", ...r }) {
771
771
  }
772
772
  );
773
773
  }
774
- function un({ className: t = "h-4 w-4", ...r }) {
774
+ function dn({ className: t = "h-4 w-4", ...r }) {
775
775
  return /* @__PURE__ */ e.jsx(
776
776
  "svg",
777
777
  {
@@ -788,7 +788,7 @@ function un({ className: t = "h-4 w-4", ...r }) {
788
788
  }
789
789
  );
790
790
  }
791
- function Mt({ className: t = "h-4 w-4", ...r }) {
791
+ function Zt({ className: t = "h-4 w-4", ...r }) {
792
792
  return /* @__PURE__ */ e.jsxs(
793
793
  "svg",
794
794
  {
@@ -809,7 +809,7 @@ function Mt({ className: t = "h-4 w-4", ...r }) {
809
809
  }
810
810
  );
811
811
  }
812
- function se({ className: t = "h-4 w-4", ...r }) {
812
+ function ge({ className: t = "h-4 w-4", ...r }) {
813
813
  return /* @__PURE__ */ e.jsxs(
814
814
  "svg",
815
815
  {
@@ -829,36 +829,36 @@ function se({ className: t = "h-4 w-4", ...r }) {
829
829
  }
830
830
  );
831
831
  }
832
- const X = (...t) => t.filter(Boolean).join(" "), ae = [
832
+ const $ = (...t) => t.filter(Boolean).join(" "), ue = [
833
833
  { format: "cif", label: "CIF" },
834
834
  { format: "xsf", label: "XSF" },
835
835
  { format: "xyz", label: "XYZ" }
836
836
  ];
837
- function _o({
837
+ function xi({
838
838
  aiida_rest_url: t,
839
839
  uuid: r,
840
- download_formats: i,
840
+ download_formats: o,
841
841
  title: s = "Download",
842
- className: o,
842
+ className: i,
843
843
  classes: _ = {},
844
844
  ...m
845
845
  }) {
846
- const [a, g] = E(!1), l = Zt(null), u = `${t}/nodes/${r}/download`, p = i || ae;
847
- return nt(() => {
846
+ const [a, g] = B(!1), l = Lt(null), b = `${t}/nodes/${r}/download`, h = o || ue;
847
+ return rt(() => {
848
848
  if (!a) return;
849
- const f = (y) => {
850
- l.current && !l.current.contains(y.target) && g(!1);
851
- }, b = (y) => {
852
- y.key === "Escape" && g(!1);
849
+ const p = (P) => {
850
+ l.current && !l.current.contains(P.target) && g(!1);
851
+ }, f = (P) => {
852
+ P.key === "Escape" && g(!1);
853
853
  };
854
- return document.addEventListener("pointerdown", f), document.addEventListener("keydown", b), () => {
855
- document.removeEventListener("pointerdown", f), document.removeEventListener("keydown", b);
854
+ return document.addEventListener("pointerdown", p), document.addEventListener("keydown", f), () => {
855
+ document.removeEventListener("pointerdown", p), document.removeEventListener("keydown", f);
856
856
  };
857
857
  }, [a]), /* @__PURE__ */ e.jsxs(
858
858
  "div",
859
859
  {
860
860
  ref: l,
861
- className: X("struct-download", o, _.root),
861
+ className: $("struct-download", i, _.root),
862
862
  ...m,
863
863
  children: [
864
864
  /* @__PURE__ */ e.jsx(
@@ -868,38 +868,38 @@ function _o({
868
868
  title: s,
869
869
  "aria-expanded": a,
870
870
  "aria-haspopup": "menu",
871
- onClick: () => g((f) => !f),
872
- className: X("struct-download__button", _.button),
871
+ onClick: () => g((p) => !p),
872
+ className: $("struct-download__button", _.button),
873
873
  children: /* @__PURE__ */ e.jsx(
874
- Mt,
874
+ Zt,
875
875
  {
876
- className: X("struct-download__icon", _.icon)
876
+ className: $("struct-download__icon", _.icon)
877
877
  }
878
878
  )
879
879
  }
880
880
  ),
881
- a && /* @__PURE__ */ e.jsx("div", { className: X("struct-download__dropdown", _.dropdown), children: /* @__PURE__ */ e.jsx(
881
+ a && /* @__PURE__ */ e.jsx("div", { className: $("struct-download__dropdown", _.dropdown), children: /* @__PURE__ */ e.jsx(
882
882
  "ul",
883
883
  {
884
884
  role: "menu",
885
- className: X("struct-download__menu", _.menu),
886
- children: p.map(({ format: f, label: b }) => /* @__PURE__ */ e.jsx(
885
+ className: $("struct-download__menu", _.menu),
886
+ children: h.map(({ format: p, label: f }) => /* @__PURE__ */ e.jsx(
887
887
  "li",
888
888
  {
889
889
  role: "none",
890
- className: X(_.menuItem),
890
+ className: $(_.menuItem),
891
891
  onClick: () => g(!1),
892
892
  children: /* @__PURE__ */ e.jsx(
893
893
  "a",
894
894
  {
895
895
  role: "menuitem",
896
- href: `${u}?download_format=${f}`,
897
- className: X(_.menuLink),
898
- children: b
896
+ href: `${b}?download_format=${p}`,
897
+ className: $(_.menuLink),
898
+ children: f
899
899
  }
900
900
  )
901
901
  },
902
- f
902
+ p
903
903
  ))
904
904
  }
905
905
  ) })
@@ -907,18 +907,18 @@ function _o({
907
907
  }
908
908
  );
909
909
  }
910
- const ce = "data:image/png;base64,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", wt = (...t) => t.filter(Boolean).join(" ");
911
- function mo({
910
+ const de = "data:image/png;base64,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", wt = (...t) => t.filter(Boolean).join(" ");
911
+ function wi({
912
912
  explore_url: t,
913
913
  uuid: r,
914
- placement: i = "bottom",
914
+ placement: o = "bottom",
915
915
  tooltip: s,
916
- className: o,
916
+ className: i,
917
917
  classes: _ = {},
918
918
  ...m
919
919
  }) {
920
920
  const a = `${t}/details/${r}?nodeType=NODE`;
921
- return /* @__PURE__ */ e.jsxs("span", { className: wt("explore-button", o, _.root), ...m, children: [
921
+ return /* @__PURE__ */ e.jsxs("span", { className: wt("explore-button", i, _.root), ...m, children: [
922
922
  /* @__PURE__ */ e.jsx(
923
923
  "a",
924
924
  {
@@ -929,7 +929,7 @@ function mo({
929
929
  children: /* @__PURE__ */ e.jsx(
930
930
  "img",
931
931
  {
932
- src: ce,
932
+ src: de,
933
933
  alt: "Explore provenance",
934
934
  className: wt("explore-button__logo", _.logo)
935
935
  }
@@ -940,7 +940,7 @@ function mo({
940
940
  "span",
941
941
  {
942
942
  role: "tooltip",
943
- "data-placement": i,
943
+ "data-placement": o,
944
944
  className: wt("explore-button__tooltip", _.tooltip),
945
945
  children: s ?? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
946
946
  "Browse provenance",
@@ -951,71 +951,71 @@ function mo({
951
951
  )
952
952
  ] });
953
953
  }
954
- const le = "_toggleSwitchWrapper_i81zd_2", _e = "_toggleLabel_i81zd_11", me = "_toggleSwitchContainer_i81zd_16", ge = "_toggleSwitch_i81zd_2", ue = "_thumb_i81zd_34", de = "_toggled_i81zd_46", q = {
955
- toggleSwitchWrapper: le,
956
- toggleLabel: _e,
957
- toggleSwitchContainer: me,
958
- toggleSwitch: ge,
959
- thumb: ue,
960
- toggled: de
954
+ const pe = "_toggleSwitchWrapper_i81zd_2", he = "_toggleLabel_i81zd_11", fe = "_toggleSwitchContainer_i81zd_16", ve = "_toggleSwitch_i81zd_2", Pe = "_thumb_i81zd_34", ye = "_toggled_i81zd_46", tt = {
955
+ toggleSwitchWrapper: pe,
956
+ toggleLabel: he,
957
+ toggleSwitchContainer: fe,
958
+ toggleSwitch: ve,
959
+ thumb: Pe,
960
+ toggled: ye
961
961
  };
962
- function go({
962
+ function ki({
963
963
  switchLength: t = "50px",
964
964
  labelLeft: r = "Left",
965
- labelRight: i = "Right",
965
+ labelRight: o = "Right",
966
966
  fontSize: s = "12px",
967
- toggled: o,
967
+ toggled: i,
968
968
  onToggle: _ = () => {
969
969
  },
970
970
  labelClassName: m = "",
971
971
  containerClassName: a = "",
972
972
  switchClassName: g = "",
973
973
  thumbClassName: l = "",
974
- ...u
974
+ ...b
975
975
  }) {
976
- const [p, f] = E(!1), b = o !== void 0, y = b ? o : p;
977
- nt(() => {
978
- b && f(o);
979
- }, [o, b]);
980
- const R = () => {
981
- const A = !y;
982
- b || f(A), _(A);
976
+ const [h, p] = B(!1), f = i !== void 0, P = f ? i : h;
977
+ rt(() => {
978
+ f && p(i);
979
+ }, [i, f]);
980
+ const z = () => {
981
+ const k = !P;
982
+ f || p(k), _(k);
983
983
  };
984
984
  return /* @__PURE__ */ e.jsxs(
985
985
  "div",
986
986
  {
987
- className: `${q.toggleSwitchWrapper} ${a}`,
987
+ className: `${tt.toggleSwitchWrapper} ${a}`,
988
988
  style: { fontSize: s },
989
- ...u,
989
+ ...b,
990
990
  children: [
991
- /* @__PURE__ */ e.jsx("span", { className: `${q.toggleLabel} ${m}`, children: r }),
992
- /* @__PURE__ */ e.jsx("div", { className: q.toggleSwitchContainer, children: /* @__PURE__ */ e.jsx(
991
+ /* @__PURE__ */ e.jsx("span", { className: `${tt.toggleLabel} ${m}`, children: r }),
992
+ /* @__PURE__ */ e.jsx("div", { className: tt.toggleSwitchContainer, children: /* @__PURE__ */ e.jsx(
993
993
  "button",
994
994
  {
995
995
  type: "button",
996
- className: `${q.toggleSwitch} ${y ? q.toggled : ""} ${g}`,
997
- onClick: R,
996
+ className: `${tt.toggleSwitch} ${P ? tt.toggled : ""} ${g}`,
997
+ onClick: z,
998
998
  style: { "--switch-length": t },
999
- children: /* @__PURE__ */ e.jsx("div", { className: `${q.thumb} ${l}` })
999
+ children: /* @__PURE__ */ e.jsx("div", { className: `${tt.thumb} ${l}` })
1000
1000
  }
1001
1001
  ) }),
1002
- /* @__PURE__ */ e.jsx("span", { className: `${q.toggleLabel} ${m}`, children: i })
1002
+ /* @__PURE__ */ e.jsx("span", { className: `${tt.toggleLabel} ${m}`, children: o })
1003
1003
  ]
1004
1004
  }
1005
1005
  );
1006
1006
  }
1007
- const pe = "_card_6y0jx_1", he = "_header_6y0jx_13", fe = "_body_6y0jx_18", Pe = "_footer_6y0jx_23", At = {
1008
- card: pe,
1009
- header: he,
1010
- body: fe,
1011
- footer: Pe
1007
+ const be = "_card_6y0jx_1", xe = "_header_6y0jx_13", we = "_body_6y0jx_18", ke = "_footer_6y0jx_23", kt = {
1008
+ card: be,
1009
+ header: xe,
1010
+ body: we,
1011
+ footer: ke
1012
1012
  };
1013
- function uo({
1013
+ function Ai({
1014
1014
  children: t,
1015
1015
  header: r,
1016
- footer: i,
1016
+ footer: o,
1017
1017
  className: s = "",
1018
- childrenClassName: o = "",
1018
+ childrenClassName: i = "",
1019
1019
  style: _,
1020
1020
  scrollable: m = !1,
1021
1021
  maxHeight: a,
@@ -1024,7 +1024,7 @@ function uo({
1024
1024
  return /* @__PURE__ */ e.jsxs(
1025
1025
  "div",
1026
1026
  {
1027
- className: `${At.card} ${s}`,
1027
+ className: `${kt.card} ${s}`,
1028
1028
  style: {
1029
1029
  ..._,
1030
1030
  ...m ? {
@@ -1034,45 +1034,45 @@ function uo({
1034
1034
  },
1035
1035
  ...g,
1036
1036
  children: [
1037
- r && /* @__PURE__ */ e.jsx("div", { className: At.header, children: r }),
1038
- /* @__PURE__ */ e.jsx("div", { className: `${At.body} ${o}`, children: t }),
1039
- i && /* @__PURE__ */ e.jsx("div", { className: At.footer, children: i })
1037
+ r && /* @__PURE__ */ e.jsx("div", { className: kt.header, children: r }),
1038
+ /* @__PURE__ */ e.jsx("div", { className: `${kt.body} ${i}`, children: t }),
1039
+ o && /* @__PURE__ */ e.jsx("div", { className: kt.footer, children: o })
1040
1040
  ]
1041
1041
  }
1042
1042
  );
1043
1043
  }
1044
- const V = (...t) => t.filter(Boolean).join(" ");
1045
- function ve({
1044
+ const Y = (...t) => t.filter(Boolean).join(" ");
1045
+ function Ae({
1046
1046
  onFile: t,
1047
1047
  accept: r,
1048
- fileName: i,
1048
+ fileName: o,
1049
1049
  disabled: s = !1,
1050
- title: o = "Drop your file here",
1050
+ title: i = "Drop your file here",
1051
1051
  subtitle: _,
1052
1052
  replaceHint: m = "Click or drop another file to replace it",
1053
1053
  hint: a,
1054
1054
  className: g,
1055
1055
  classes: l = {},
1056
- ...u
1056
+ ...b
1057
1057
  }) {
1058
- const p = Zt(null), [f, b] = E(!1), y = (A) => {
1059
- !A || s || t == null || t(A);
1060
- }, R = (A) => {
1061
- var j;
1062
- A.preventDefault(), b(!1), y((j = A.dataTransfer.files) == null ? void 0 : j[0]);
1058
+ const h = Lt(null), [p, f] = B(!1), P = (k) => {
1059
+ !k || s || t == null || t(k);
1060
+ }, z = (k) => {
1061
+ var C;
1062
+ k.preventDefault(), f(!1), P((C = k.dataTransfer.files) == null ? void 0 : C[0]);
1063
1063
  };
1064
- return /* @__PURE__ */ e.jsxs("div", { className: V("mc-dropzone", g, l.root), ...u, children: [
1064
+ return /* @__PURE__ */ e.jsxs("div", { className: Y("mc-dropzone", g, l.root), ...b, children: [
1065
1065
  /* @__PURE__ */ e.jsx(
1066
1066
  "input",
1067
1067
  {
1068
- ref: p,
1068
+ ref: h,
1069
1069
  type: "file",
1070
1070
  accept: r,
1071
1071
  disabled: s,
1072
- className: V(l.input),
1073
- onChange: (A) => {
1074
- var j;
1075
- y((j = A.target.files) == null ? void 0 : j[0]), A.target.value = "";
1072
+ className: Y(l.input),
1073
+ onChange: (k) => {
1074
+ var C;
1075
+ P((C = k.target.files) == null ? void 0 : C[0]), k.target.value = "";
1076
1076
  },
1077
1077
  hidden: !0
1078
1078
  }
@@ -1083,212 +1083,212 @@ function ve({
1083
1083
  type: "button",
1084
1084
  disabled: s,
1085
1085
  onClick: () => {
1086
- var A;
1087
- return (A = p.current) == null ? void 0 : A.click();
1086
+ var k;
1087
+ return (k = h.current) == null ? void 0 : k.click();
1088
1088
  },
1089
- onDragOver: (A) => {
1090
- A.preventDefault(), b(!0);
1089
+ onDragOver: (k) => {
1090
+ k.preventDefault(), f(!0);
1091
1091
  },
1092
- onDragLeave: () => b(!1),
1093
- onDrop: R,
1094
- className: V(
1092
+ onDragLeave: () => f(!1),
1093
+ onDrop: z,
1094
+ className: Y(
1095
1095
  "mc-dropzone__button",
1096
- f && "mc-dropzone__button--dragging",
1096
+ p && "mc-dropzone__button--dragging",
1097
1097
  l.button
1098
1098
  ),
1099
1099
  children: [
1100
- /* @__PURE__ */ e.jsx("span", { className: V("mc-dropzone__icon", l.icon), children: /* @__PURE__ */ e.jsx(se, { className: "mc-dropzone__icon-svg" }) }),
1101
- i ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1102
- /* @__PURE__ */ e.jsx("p", { className: V("mc-dropzone__title", l.fileName), children: i }),
1103
- /* @__PURE__ */ e.jsx("p", { className: V("mc-dropzone__subtitle", l.subtitle), children: m })
1100
+ /* @__PURE__ */ e.jsx("span", { className: Y("mc-dropzone__icon", l.icon), children: /* @__PURE__ */ e.jsx(ge, { className: "mc-dropzone__icon-svg" }) }),
1101
+ o ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1102
+ /* @__PURE__ */ e.jsx("p", { className: Y("mc-dropzone__title", l.fileName), children: o }),
1103
+ /* @__PURE__ */ e.jsx("p", { className: Y("mc-dropzone__subtitle", l.subtitle), children: m })
1104
1104
  ] }) : /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1105
- /* @__PURE__ */ e.jsx("p", { className: V("mc-dropzone__title", l.title), children: o }),
1106
- /* @__PURE__ */ e.jsx("p", { className: V("mc-dropzone__subtitle", l.subtitle), children: _ ?? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1105
+ /* @__PURE__ */ e.jsx("p", { className: Y("mc-dropzone__title", l.title), children: i }),
1106
+ /* @__PURE__ */ e.jsx("p", { className: Y("mc-dropzone__subtitle", l.subtitle), children: _ ?? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
1107
1107
  "or",
1108
1108
  " ",
1109
1109
  /* @__PURE__ */ e.jsx("span", { className: "mc-dropzone__browse", children: "browse your files" })
1110
1110
  ] }) }),
1111
- a && /* @__PURE__ */ e.jsx("p", { className: V("mc-dropzone__hint", l.hint), children: a })
1111
+ a && /* @__PURE__ */ e.jsx("p", { className: Y("mc-dropzone__hint", l.hint), children: a })
1112
1112
  ] })
1113
1113
  ]
1114
1114
  }
1115
1115
  )
1116
1116
  ] });
1117
1117
  }
1118
- const M = (...t) => t.filter(Boolean).join(" ");
1119
- function ye(t) {
1118
+ const Z = (...t) => t.filter(Boolean).join(" ");
1119
+ function je(t) {
1120
1120
  if (!t) return null;
1121
1121
  const r = new Date(t);
1122
1122
  return Number.isNaN(r.getTime()) ? String(t) : r.toLocaleString();
1123
1123
  }
1124
- function be({
1124
+ function Ce({
1125
1125
  entries: t = [],
1126
1126
  onLoad: r,
1127
- onDelete: i,
1127
+ onDelete: o,
1128
1128
  onClear: s,
1129
- title: o = "History",
1129
+ title: i = "History",
1130
1130
  clearLabel: _ = "Clear all",
1131
1131
  loadLabel: m = "Load",
1132
1132
  deleteLabel: a = "Delete",
1133
1133
  className: g,
1134
1134
  classes: l = {},
1135
- ...u
1135
+ ...b
1136
1136
  }) {
1137
- return t.length === 0 ? null : /* @__PURE__ */ e.jsxs("div", { className: M("mc-history", g, l.root), ...u, children: [
1138
- /* @__PURE__ */ e.jsxs("div", { className: M("mc-history__header", l.header), children: [
1139
- /* @__PURE__ */ e.jsx("p", { className: M("mc-history__title", l.title), children: o }),
1137
+ return t.length === 0 ? null : /* @__PURE__ */ e.jsxs("div", { className: Z("mc-history", g, l.root), ...b, children: [
1138
+ /* @__PURE__ */ e.jsxs("div", { className: Z("mc-history__header", l.header), children: [
1139
+ /* @__PURE__ */ e.jsx("p", { className: Z("mc-history__title", l.title), children: i }),
1140
1140
  s && /* @__PURE__ */ e.jsx(
1141
1141
  "button",
1142
1142
  {
1143
1143
  type: "button",
1144
1144
  onClick: s,
1145
- className: M("mc-history__clear", l.clearButton),
1145
+ className: Z("mc-history__clear", l.clearButton),
1146
1146
  children: _
1147
1147
  }
1148
1148
  )
1149
1149
  ] }),
1150
- /* @__PURE__ */ e.jsx("ul", { className: M("mc-history__list", l.list), children: t.map((p) => /* @__PURE__ */ e.jsxs(
1150
+ /* @__PURE__ */ e.jsx("ul", { className: Z("mc-history__list", l.list), children: t.map((h) => /* @__PURE__ */ e.jsxs(
1151
1151
  "li",
1152
1152
  {
1153
- className: M("mc-history__item", l.item),
1153
+ className: Z("mc-history__item", l.item),
1154
1154
  children: [
1155
- /* @__PURE__ */ e.jsxs("div", { className: M("mc-history__details", l.details), children: [
1156
- /* @__PURE__ */ e.jsx("p", { className: M("mc-history__name", l.fileName), children: p.fileName }),
1157
- p.date && /* @__PURE__ */ e.jsx("p", { className: M("mc-history__date", l.date), children: ye(p.date) })
1155
+ /* @__PURE__ */ e.jsxs("div", { className: Z("mc-history__details", l.details), children: [
1156
+ /* @__PURE__ */ e.jsx("p", { className: Z("mc-history__name", l.fileName), children: h.fileName }),
1157
+ h.date && /* @__PURE__ */ e.jsx("p", { className: Z("mc-history__date", l.date), children: je(h.date) })
1158
1158
  ] }),
1159
- p.format && /* @__PURE__ */ e.jsx("span", { className: M("mc-history__format", l.format), children: String(p.format).toUpperCase() }),
1159
+ h.format && /* @__PURE__ */ e.jsx("span", { className: Z("mc-history__format", l.format), children: String(h.format).toUpperCase() }),
1160
1160
  r && /* @__PURE__ */ e.jsx(
1161
1161
  "button",
1162
1162
  {
1163
1163
  type: "button",
1164
- onClick: () => r(p),
1165
- className: M("mc-history__load", l.loadButton),
1164
+ onClick: () => r(h),
1165
+ className: Z("mc-history__load", l.loadButton),
1166
1166
  children: m
1167
1167
  }
1168
1168
  ),
1169
- i && /* @__PURE__ */ e.jsx(
1169
+ o && /* @__PURE__ */ e.jsx(
1170
1170
  "button",
1171
1171
  {
1172
1172
  type: "button",
1173
- onClick: () => i(p.id),
1174
- "aria-label": `${a} ${p.fileName}`,
1175
- className: M("mc-history__delete", l.deleteButton),
1173
+ onClick: () => o(h.id),
1174
+ "aria-label": `${a} ${h.fileName}`,
1175
+ className: Z("mc-history__delete", l.deleteButton),
1176
1176
  children: a
1177
1177
  }
1178
1178
  )
1179
1179
  ]
1180
1180
  },
1181
- p.id
1181
+ h.id
1182
1182
  )) })
1183
1183
  ] });
1184
1184
  }
1185
- function dn(t) {
1186
- var i;
1187
- const r = (i = String(t).match(
1185
+ function pn(t) {
1186
+ var o;
1187
+ const r = (o = String(t).match(
1188
1188
  /[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}/
1189
- )) == null ? void 0 : i[0];
1189
+ )) == null ? void 0 : o[0];
1190
1190
  return r ? r.split("-")[0] : null;
1191
1191
  }
1192
- function xe(t) {
1192
+ function Se(t) {
1193
1193
  var r;
1194
1194
  return ((r = t == null ? void 0 : t.data) == null ? void 0 : r.attributes) ?? (t == null ? void 0 : t.data) ?? t;
1195
1195
  }
1196
- function we(t) {
1196
+ function Re(t) {
1197
1197
  const r = (t == null ? void 0 : t.data) ?? t;
1198
1198
  return Array.isArray(r) ? r[0] : r;
1199
1199
  }
1200
- function Ae({
1200
+ function Ie({
1201
1201
  onLoaded: t,
1202
1202
  onError: r,
1203
- fromURL: i,
1203
+ fromURL: o,
1204
1204
  format: s,
1205
- autoLoad: o = !0
1205
+ autoLoad: i = !0
1206
1206
  }) {
1207
- return nt(() => {
1208
- if (!o) return;
1209
- const _ = new URLSearchParams(window.location.search), m = i ?? _.get("fromURL");
1207
+ return rt(() => {
1208
+ if (!i) return;
1209
+ const _ = new URLSearchParams(window.location.search), m = o ?? _.get("fromURL");
1210
1210
  if (!m) return;
1211
1211
  const a = s ?? _.get("format"), g = _.get("tag");
1212
1212
  fetch(m).then((l) => l.json()).then((l) => {
1213
- const u = a === "optimade" ? { structure: Gn(we(l)), format: a } : {
1214
- structure: Kn(xe(l)),
1213
+ const b = a === "optimade" ? { structure: qn(Re(l)), format: a } : {
1214
+ structure: $n(Se(l)),
1215
1215
  format: "aiida"
1216
- }, p = g ?? dn(m) ?? new URL(m).pathname.split("/").filter(Boolean).pop() ?? m;
1217
- t == null || t({ ...u, fileName: p, sourceUrl: m });
1216
+ }, h = g ?? pn(m) ?? new URL(m).pathname.split("/").filter(Boolean).pop() ?? m;
1217
+ t == null || t({ ...b, fileName: h, sourceUrl: m });
1218
1218
  }).catch(
1219
1219
  (l) => r == null ? void 0 : r(l instanceof Error ? l.message : String(l))
1220
1220
  );
1221
1221
  }, []), null;
1222
1222
  }
1223
- const ke = "#", $ = (...t) => t.filter(Boolean).join(" ");
1224
- function zt() {
1223
+ const Ne = "#", nt = (...t) => t.filter(Boolean).join(" ");
1224
+ function Bt() {
1225
1225
  const t = typeof window < "u" ? window.location.hash : "";
1226
- return t.startsWith(ke) ? t.slice(1) : t;
1226
+ return t.startsWith(Ne) ? t.slice(1) : t;
1227
1227
  }
1228
- function po({
1228
+ function ji({
1229
1229
  hash: t,
1230
1230
  open: r,
1231
- onClose: i,
1231
+ onClose: o,
1232
1232
  title: s,
1233
- children: o,
1233
+ children: i,
1234
1234
  maxWidth: _ = "48rem",
1235
1235
  className: m,
1236
1236
  classes: a = {},
1237
1237
  ...g
1238
1238
  }) {
1239
- const [l, u] = E(() => zt() === t);
1240
- nt(() => {
1239
+ const [l, b] = B(() => Bt() === t);
1240
+ rt(() => {
1241
1241
  if (r !== void 0) return;
1242
- const y = () => u(zt() === t);
1243
- return y(), window.addEventListener("hashchange", y), () => window.removeEventListener("hashchange", y);
1242
+ const P = () => b(Bt() === t);
1243
+ return P(), window.addEventListener("hashchange", P), () => window.removeEventListener("hashchange", P);
1244
1244
  }, [t, r]);
1245
- const f = r !== void 0 ? r : l, b = () => {
1246
- if (i) {
1247
- i();
1245
+ const p = r !== void 0 ? r : l, f = () => {
1246
+ if (o) {
1247
+ o();
1248
1248
  return;
1249
1249
  }
1250
- zt() === t && window.history.replaceState(
1250
+ Bt() === t && window.history.replaceState(
1251
1251
  null,
1252
1252
  "",
1253
1253
  window.location.pathname + window.location.search
1254
- ), u(!1);
1254
+ ), b(!1);
1255
1255
  };
1256
- return nt(() => {
1257
- if (!f) return;
1258
- const y = (R) => {
1259
- R.key === "Escape" && b();
1256
+ return rt(() => {
1257
+ if (!p) return;
1258
+ const P = (z) => {
1259
+ z.key === "Escape" && f();
1260
1260
  };
1261
- return document.addEventListener("keydown", y), () => document.removeEventListener("keydown", y);
1262
- }, [f, i, t]), f ? /* @__PURE__ */ e.jsx(
1261
+ return document.addEventListener("keydown", P), () => document.removeEventListener("keydown", P);
1262
+ }, [p, o, t]), p ? /* @__PURE__ */ e.jsx(
1263
1263
  "div",
1264
1264
  {
1265
- className: $("hash-modal", m, a.root),
1266
- onClick: b,
1265
+ className: nt("hash-modal", m, a.root),
1266
+ onClick: f,
1267
1267
  ...g,
1268
1268
  children: /* @__PURE__ */ e.jsxs(
1269
1269
  "div",
1270
1270
  {
1271
- className: $("hash-modal__dialog", a.dialog),
1271
+ className: nt("hash-modal__dialog", a.dialog),
1272
1272
  style: { "--hash-modal-max-width": _ },
1273
- onClick: (y) => y.stopPropagation(),
1273
+ onClick: (P) => P.stopPropagation(),
1274
1274
  role: "dialog",
1275
1275
  "aria-modal": "true",
1276
1276
  children: [
1277
- /* @__PURE__ */ e.jsxs("div", { className: $("hash-modal__header", a.header), children: [
1278
- /* @__PURE__ */ e.jsx("h2", { className: $("hash-modal__title", a.title), children: s }),
1277
+ /* @__PURE__ */ e.jsxs("div", { className: nt("hash-modal__header", a.header), children: [
1278
+ /* @__PURE__ */ e.jsx("h2", { className: nt("hash-modal__title", a.title), children: s }),
1279
1279
  /* @__PURE__ */ e.jsx(
1280
1280
  "button",
1281
1281
  {
1282
1282
  type: "button",
1283
- onClick: b,
1283
+ onClick: f,
1284
1284
  "aria-label": "Close",
1285
- className: $("hash-modal__close", a.closeButton),
1285
+ className: nt("hash-modal__close", a.closeButton),
1286
1286
  children: /* @__PURE__ */ e.jsx(
1287
1287
  "svg",
1288
1288
  {
1289
1289
  viewBox: "0 0 24 24",
1290
1290
  fill: "none",
1291
- className: $("hash-modal__close-icon", a.closeIcon),
1291
+ className: nt("hash-modal__close-icon", a.closeIcon),
1292
1292
  stroke: "currentColor",
1293
1293
  strokeWidth: "2",
1294
1294
  "aria-hidden": "true",
@@ -1298,73 +1298,73 @@ function po({
1298
1298
  }
1299
1299
  )
1300
1300
  ] }),
1301
- /* @__PURE__ */ e.jsx("div", { className: $("hash-modal__body", a.body), children: o })
1301
+ /* @__PURE__ */ e.jsx("div", { className: nt("hash-modal__body", a.body), children: i })
1302
1302
  ]
1303
1303
  }
1304
1304
  )
1305
1305
  }
1306
1306
  ) : null;
1307
1307
  }
1308
- const L = (...t) => t.filter(Boolean).join(" ");
1309
- function ho({
1308
+ const H = (...t) => t.filter(Boolean).join(" ");
1309
+ function Ci({
1310
1310
  title: t,
1311
1311
  text: r,
1312
- filename: i = "text.txt",
1312
+ filename: o = "text.txt",
1313
1313
  open: s,
1314
- onToggle: o,
1314
+ onToggle: i,
1315
1315
  className: _,
1316
1316
  classes: m = {},
1317
1317
  ...a
1318
1318
  }) {
1319
- const [g, l] = E(!0), [u, p] = E(!1), f = s !== void 0 ? s : g, b = () => {
1320
- const A = !f;
1321
- o ? o(A) : l(A);
1322
- }, y = async (A) => {
1323
- A.stopPropagation();
1319
+ const [g, l] = B(!0), [b, h] = B(!1), p = s !== void 0 ? s : g, f = () => {
1320
+ const k = !p;
1321
+ i ? i(k) : l(k);
1322
+ }, P = async (k) => {
1323
+ k.stopPropagation();
1324
1324
  try {
1325
- await navigator.clipboard.writeText(r), p(!0), setTimeout(() => {
1326
- p(!1);
1325
+ await navigator.clipboard.writeText(r), h(!0), setTimeout(() => {
1326
+ h(!1);
1327
1327
  }, 1500);
1328
1328
  } catch {
1329
- p(!1);
1329
+ h(!1);
1330
1330
  }
1331
- }, R = (A) => {
1332
- A.stopPropagation();
1333
- const j = new Blob([r], {
1331
+ }, z = (k) => {
1332
+ k.stopPropagation();
1333
+ const C = new Blob([r], {
1334
1334
  type: "text/plain;charset=utf-8"
1335
- }), I = URL.createObjectURL(j), O = document.createElement("a");
1336
- O.href = I, O.download = i, document.body.appendChild(O), O.click(), O.remove(), URL.revokeObjectURL(I);
1335
+ }), j = URL.createObjectURL(C), T = document.createElement("a");
1336
+ T.href = j, T.download = o, document.body.appendChild(T), T.click(), T.remove(), URL.revokeObjectURL(j);
1337
1337
  };
1338
1338
  return /* @__PURE__ */ e.jsxs(
1339
1339
  "div",
1340
1340
  {
1341
- className: L(
1341
+ className: H(
1342
1342
  "mc-acc",
1343
1343
  "text-renderer",
1344
- f && "mc-acc--open",
1345
- f && "text-renderer--open",
1344
+ p && "mc-acc--open",
1345
+ p && "text-renderer--open",
1346
1346
  _,
1347
1347
  m.root
1348
1348
  ),
1349
1349
  ...a,
1350
1350
  children: [
1351
- /* @__PURE__ */ e.jsxs("div", { className: L("text-renderer__header", m.header), children: [
1351
+ /* @__PURE__ */ e.jsxs("div", { className: H("text-renderer__header", m.header), children: [
1352
1352
  /* @__PURE__ */ e.jsxs(
1353
1353
  "button",
1354
1354
  {
1355
1355
  type: "button",
1356
- onClick: b,
1357
- className: L("text-renderer__toggle", m.toggle),
1358
- "aria-expanded": f,
1356
+ onClick: f,
1357
+ className: H("text-renderer__toggle", m.toggle),
1358
+ "aria-expanded": p,
1359
1359
  children: [
1360
- /* @__PURE__ */ e.jsx("span", { className: L("text-renderer__title", m.title), children: t }),
1360
+ /* @__PURE__ */ e.jsx("span", { className: H("text-renderer__title", m.title), children: t }),
1361
1361
  /* @__PURE__ */ e.jsx(
1362
1362
  "span",
1363
1363
  {
1364
- className: L(
1364
+ className: H(
1365
1365
  "mc-acc__chevron",
1366
1366
  "text-renderer__chevron",
1367
- f && "mc-acc__chevron--open",
1367
+ p && "mc-acc__chevron--open",
1368
1368
  m.chevron
1369
1369
  ),
1370
1370
  children: /* @__PURE__ */ e.jsx(
@@ -1391,21 +1391,21 @@ function ho({
1391
1391
  ]
1392
1392
  }
1393
1393
  ),
1394
- /* @__PURE__ */ e.jsxs("div", { className: L("text-renderer__actions", m.actions), children: [
1394
+ /* @__PURE__ */ e.jsxs("div", { className: H("text-renderer__actions", m.actions), children: [
1395
1395
  /* @__PURE__ */ e.jsxs(
1396
1396
  "button",
1397
1397
  {
1398
1398
  type: "button",
1399
- onClick: y,
1400
- className: L(
1399
+ onClick: P,
1400
+ className: H(
1401
1401
  "text-renderer__action",
1402
1402
  "text-renderer__copy-button",
1403
1403
  m.action,
1404
1404
  m.copyButton
1405
1405
  ),
1406
1406
  children: [
1407
- u ? /* @__PURE__ */ e.jsx(un, { className: "text-renderer__action-icon" }) : /* @__PURE__ */ e.jsx(gn, { className: "text-renderer__action-icon" }),
1408
- /* @__PURE__ */ e.jsx("span", { children: u ? "Copied!" : "Copy" })
1407
+ b ? /* @__PURE__ */ e.jsx(dn, { className: "text-renderer__action-icon" }) : /* @__PURE__ */ e.jsx(un, { className: "text-renderer__action-icon" }),
1408
+ /* @__PURE__ */ e.jsx("span", { children: b ? "Copied!" : "Copy" })
1409
1409
  ]
1410
1410
  }
1411
1411
  ),
@@ -1413,15 +1413,15 @@ function ho({
1413
1413
  "button",
1414
1414
  {
1415
1415
  type: "button",
1416
- onClick: R,
1417
- className: L(
1416
+ onClick: z,
1417
+ className: H(
1418
1418
  "text-renderer__action",
1419
1419
  "text-renderer__download-button",
1420
1420
  m.action,
1421
1421
  m.downloadButton
1422
1422
  ),
1423
1423
  children: [
1424
- /* @__PURE__ */ e.jsx(Mt, { className: "text-renderer__action-icon" }),
1424
+ /* @__PURE__ */ e.jsx(Zt, { className: "text-renderer__action-icon" }),
1425
1425
  /* @__PURE__ */ e.jsx("span", { children: "Download" })
1426
1426
  ]
1427
1427
  }
@@ -1431,21 +1431,21 @@ function ho({
1431
1431
  /* @__PURE__ */ e.jsx(
1432
1432
  "div",
1433
1433
  {
1434
- className: L(
1434
+ className: H(
1435
1435
  "mc-acc__collapse",
1436
1436
  "text-renderer__content-wrapper",
1437
- f && "mc-acc__collapse--open",
1437
+ p && "mc-acc__collapse--open",
1438
1438
  m.contentWrapper
1439
1439
  ),
1440
1440
  children: /* @__PURE__ */ e.jsx("div", { className: "mc-acc__collapse-inner", children: /* @__PURE__ */ e.jsx(
1441
1441
  "div",
1442
1442
  {
1443
- className: L(
1443
+ className: H(
1444
1444
  "mc-acc__panel",
1445
1445
  "text-renderer__content",
1446
1446
  m.content
1447
1447
  ),
1448
- children: /* @__PURE__ */ e.jsx("div", { className: L("text-renderer__scroll", m.scroll), children: /* @__PURE__ */ e.jsx("pre", { className: L("text-renderer__pre", m.pre), children: r }) })
1448
+ children: /* @__PURE__ */ e.jsx("div", { className: H("text-renderer__scroll", m.scroll), children: /* @__PURE__ */ e.jsx("pre", { className: H("text-renderer__pre", m.pre), children: r }) })
1449
1449
  }
1450
1450
  ) })
1451
1451
  }
@@ -1454,67 +1454,67 @@ function ho({
1454
1454
  }
1455
1455
  );
1456
1456
  }
1457
- const H = (...t) => t.filter(Boolean).join(" ");
1458
- function fo({
1457
+ const U = (...t) => t.filter(Boolean).join(" ");
1458
+ function Si({
1459
1459
  title: t,
1460
1460
  text: r,
1461
- filename: i = "text.txt",
1461
+ filename: o = "text.txt",
1462
1462
  open: s,
1463
- onToggle: o,
1463
+ onToggle: i,
1464
1464
  extraActions: _,
1465
1465
  className: m,
1466
1466
  classes: a = {},
1467
1467
  ...g
1468
1468
  }) {
1469
- const [l, u] = E(!0), [p, f] = E(!1), b = s !== void 0 ? s : l, y = () => {
1470
- const j = !b;
1471
- o ? o(j) : u(j);
1472
- }, R = async (j) => {
1473
- j.stopPropagation();
1469
+ const [l, b] = B(!0), [h, p] = B(!1), f = s !== void 0 ? s : l, P = () => {
1470
+ const C = !f;
1471
+ i ? i(C) : b(C);
1472
+ }, z = async (C) => {
1473
+ C.stopPropagation();
1474
1474
  try {
1475
- await navigator.clipboard.writeText(r), f(!0), setTimeout(() => {
1476
- f(!1);
1475
+ await navigator.clipboard.writeText(r), p(!0), setTimeout(() => {
1476
+ p(!1);
1477
1477
  }, 1500);
1478
1478
  } catch {
1479
- f(!1);
1479
+ p(!1);
1480
1480
  }
1481
- }, A = (j) => {
1482
- j.stopPropagation();
1483
- const I = new Blob([r], {
1481
+ }, k = (C) => {
1482
+ C.stopPropagation();
1483
+ const j = new Blob([r], {
1484
1484
  type: "text/plain;charset=utf-8"
1485
- }), O = URL.createObjectURL(I), z = document.createElement("a");
1486
- z.href = O, z.download = i, document.body.appendChild(z), z.click(), z.remove(), URL.revokeObjectURL(O);
1485
+ }), T = URL.createObjectURL(j), I = document.createElement("a");
1486
+ I.href = T, I.download = o, document.body.appendChild(I), I.click(), I.remove(), URL.revokeObjectURL(T);
1487
1487
  };
1488
1488
  return /* @__PURE__ */ e.jsxs(
1489
1489
  "div",
1490
1490
  {
1491
- className: H(
1491
+ className: U(
1492
1492
  "mc-acc",
1493
1493
  "text-renderer",
1494
- b && "mc-acc--open",
1495
- b && "text-renderer--open",
1494
+ f && "mc-acc--open",
1495
+ f && "text-renderer--open",
1496
1496
  m,
1497
1497
  a.root
1498
1498
  ),
1499
1499
  ...g,
1500
1500
  children: [
1501
- /* @__PURE__ */ e.jsxs("div", { className: H("text-renderer__header", a.header), children: [
1501
+ /* @__PURE__ */ e.jsxs("div", { className: U("text-renderer__header", a.header), children: [
1502
1502
  /* @__PURE__ */ e.jsxs(
1503
1503
  "button",
1504
1504
  {
1505
1505
  type: "button",
1506
- onClick: y,
1507
- className: H("text-renderer__toggle", a.toggle),
1508
- "aria-expanded": b,
1506
+ onClick: P,
1507
+ className: U("text-renderer__toggle", a.toggle),
1508
+ "aria-expanded": f,
1509
1509
  children: [
1510
- /* @__PURE__ */ e.jsx("span", { className: H("text-renderer__title", a.title), children: t }),
1510
+ /* @__PURE__ */ e.jsx("span", { className: U("text-renderer__title", a.title), children: t }),
1511
1511
  /* @__PURE__ */ e.jsx(
1512
1512
  "span",
1513
1513
  {
1514
- className: H(
1514
+ className: U(
1515
1515
  "mc-acc__chevron",
1516
1516
  "text-renderer__chevron",
1517
- b && "mc-acc__chevron--open",
1517
+ f && "mc-acc__chevron--open",
1518
1518
  a.chevron
1519
1519
  ),
1520
1520
  children: /* @__PURE__ */ e.jsx(
@@ -1541,21 +1541,21 @@ function fo({
1541
1541
  ]
1542
1542
  }
1543
1543
  ),
1544
- /* @__PURE__ */ e.jsxs("div", { className: H("text-renderer__actions", a.actions), children: [
1544
+ /* @__PURE__ */ e.jsxs("div", { className: U("text-renderer__actions", a.actions), children: [
1545
1545
  /* @__PURE__ */ e.jsxs(
1546
1546
  "button",
1547
1547
  {
1548
1548
  type: "button",
1549
- onClick: R,
1550
- className: H(
1549
+ onClick: z,
1550
+ className: U(
1551
1551
  "text-renderer__action",
1552
1552
  "text-renderer__copy-button",
1553
1553
  a.action,
1554
1554
  a.copyButton
1555
1555
  ),
1556
1556
  children: [
1557
- p ? /* @__PURE__ */ e.jsx(un, { className: "text-renderer__action-icon" }) : /* @__PURE__ */ e.jsx(gn, { className: "text-renderer__action-icon" }),
1558
- /* @__PURE__ */ e.jsx("span", { children: p ? "Copied!" : "Copy" })
1557
+ h ? /* @__PURE__ */ e.jsx(dn, { className: "text-renderer__action-icon" }) : /* @__PURE__ */ e.jsx(un, { className: "text-renderer__action-icon" }),
1558
+ /* @__PURE__ */ e.jsx("span", { children: h ? "Copied!" : "Copy" })
1559
1559
  ]
1560
1560
  }
1561
1561
  ),
@@ -1563,15 +1563,15 @@ function fo({
1563
1563
  "button",
1564
1564
  {
1565
1565
  type: "button",
1566
- onClick: A,
1567
- className: H(
1566
+ onClick: k,
1567
+ className: U(
1568
1568
  "text-renderer__action",
1569
1569
  "text-renderer__download-button",
1570
1570
  a.action,
1571
1571
  a.downloadButton
1572
1572
  ),
1573
1573
  children: [
1574
- /* @__PURE__ */ e.jsx(Mt, { className: "text-renderer__action-icon" }),
1574
+ /* @__PURE__ */ e.jsx(Zt, { className: "text-renderer__action-icon" }),
1575
1575
  /* @__PURE__ */ e.jsx("span", { children: "Download" })
1576
1576
  ]
1577
1577
  }
@@ -1582,21 +1582,21 @@ function fo({
1582
1582
  /* @__PURE__ */ e.jsx(
1583
1583
  "div",
1584
1584
  {
1585
- className: H(
1585
+ className: U(
1586
1586
  "mc-acc__collapse",
1587
1587
  "text-renderer__content-wrapper",
1588
- b && "mc-acc__collapse--open",
1588
+ f && "mc-acc__collapse--open",
1589
1589
  a.contentWrapper
1590
1590
  ),
1591
1591
  children: /* @__PURE__ */ e.jsx("div", { className: "mc-acc__collapse-inner", children: /* @__PURE__ */ e.jsx(
1592
1592
  "div",
1593
1593
  {
1594
- className: H(
1594
+ className: U(
1595
1595
  "mc-acc__panel",
1596
1596
  "text-renderer__content",
1597
1597
  a.content
1598
1598
  ),
1599
- children: /* @__PURE__ */ e.jsx("div", { className: H("text-renderer__scroll", a.scroll), children: /* @__PURE__ */ e.jsx("pre", { className: H("text-renderer__pre", a.pre), children: r }) })
1599
+ children: /* @__PURE__ */ e.jsx("div", { className: U("text-renderer__scroll", a.scroll), children: /* @__PURE__ */ e.jsx("pre", { className: U("text-renderer__pre", a.pre), children: r }) })
1600
1600
  }
1601
1601
  ) })
1602
1602
  }
@@ -1605,29 +1605,29 @@ function fo({
1605
1605
  }
1606
1606
  );
1607
1607
  }
1608
- const it = (...t) => t.filter(Boolean).join(" ");
1609
- function Po({
1608
+ const st = (...t) => t.filter(Boolean).join(" ");
1609
+ function Ri({
1610
1610
  title: t,
1611
1611
  children: r,
1612
- className: i = "",
1612
+ className: o = "",
1613
1613
  open: s,
1614
- onToggle: o,
1614
+ onToggle: i,
1615
1615
  classes: _ = {},
1616
1616
  ...m
1617
1617
  }) {
1618
- const [a, g] = E(!0), l = s !== void 0 ? s : a, u = () => {
1619
- const p = !l;
1620
- o ? o(p) : g(p);
1618
+ const [a, g] = B(!0), l = s !== void 0 ? s : a, b = () => {
1619
+ const h = !l;
1620
+ i ? i(h) : g(h);
1621
1621
  };
1622
1622
  return /* @__PURE__ */ e.jsxs(
1623
1623
  "div",
1624
1624
  {
1625
- className: it(
1625
+ className: st(
1626
1626
  "mc-acc",
1627
1627
  "info-accordion",
1628
1628
  l && "mc-acc--open",
1629
1629
  l && "info-accordion--open",
1630
- i,
1630
+ o,
1631
1631
  _.root
1632
1632
  ),
1633
1633
  ...m,
@@ -1636,15 +1636,15 @@ function Po({
1636
1636
  "button",
1637
1637
  {
1638
1638
  type: "button",
1639
- onClick: u,
1640
- className: it("info-accordion__toggle", _.toggle),
1639
+ onClick: b,
1640
+ className: st("info-accordion__toggle", _.toggle),
1641
1641
  "aria-expanded": l,
1642
1642
  children: [
1643
- /* @__PURE__ */ e.jsx("span", { className: it("info-accordion__title", _.title), children: t }),
1643
+ /* @__PURE__ */ e.jsx("span", { className: st("info-accordion__title", _.title), children: t }),
1644
1644
  /* @__PURE__ */ e.jsx(
1645
1645
  "span",
1646
1646
  {
1647
- className: it(
1647
+ className: st(
1648
1648
  "mc-acc__chevron",
1649
1649
  "info-accordion__chevron",
1650
1650
  l && "mc-acc__chevron--open",
@@ -1677,7 +1677,7 @@ function Po({
1677
1677
  /* @__PURE__ */ e.jsx(
1678
1678
  "div",
1679
1679
  {
1680
- className: it(
1680
+ className: st(
1681
1681
  "mc-acc__collapse",
1682
1682
  "info-accordion__content-wrapper",
1683
1683
  l && "mc-acc__collapse--open",
@@ -1686,7 +1686,7 @@ function Po({
1686
1686
  children: /* @__PURE__ */ e.jsx("div", { className: "mc-acc__collapse-inner", children: /* @__PURE__ */ e.jsx(
1687
1687
  "div",
1688
1688
  {
1689
- className: it(
1689
+ className: st(
1690
1690
  "mc-acc__panel",
1691
1691
  "info-accordion__content",
1692
1692
  _.content
@@ -1700,8 +1700,8 @@ function Po({
1700
1700
  }
1701
1701
  );
1702
1702
  }
1703
- function je(t, { maxEntries: r = 50 } = {}) {
1704
- function i() {
1703
+ function Fe(t, { maxEntries: r = 50 } = {}) {
1704
+ function o() {
1705
1705
  try {
1706
1706
  const a = localStorage.getItem(t);
1707
1707
  if (!a) return [];
@@ -1721,278 +1721,408 @@ function je(t, { maxEntries: r = 50 } = {}) {
1721
1721
  return !1;
1722
1722
  }
1723
1723
  }
1724
- function o(a) {
1725
- const g = [a, ...i().filter((l) => l.id !== a.id)].slice(
1724
+ function i(a) {
1725
+ const g = [a, ...o().filter((l) => l.id !== a.id)].slice(
1726
1726
  0,
1727
1727
  r
1728
1728
  );
1729
1729
  return s(g), g;
1730
1730
  }
1731
1731
  function _(a) {
1732
- const g = i().filter((l) => l.id !== a);
1732
+ const g = o().filter((l) => l.id !== a);
1733
1733
  return s(g), g;
1734
1734
  }
1735
1735
  function m() {
1736
1736
  return s([]), [];
1737
1737
  }
1738
- return { load: i, save: s, add: o, remove: _, clear: m };
1738
+ return { load: o, save: s, add: i, remove: _, clear: m };
1739
+ }
1740
+ const Ot = "https://kv-store.materialscloud.org", ze = /^[A-Za-z0-9_-]+$/, hn = (t) => `${(t || Ot).replace(/\/+$/, "")}/api/shares`, fn = () => window.location.origin + window.location.pathname;
1741
+ function Ee() {
1742
+ const r = [...new URLSearchParams(window.location.search)].find(
1743
+ ([o, s]) => s === "" && ze.test(o)
1744
+ );
1745
+ return r ? r[0] : null;
1739
1746
  }
1740
- const pn = "structure", Ce = 1, vo = ({ structure: t, fileName: r }) => ({
1741
- kind: pn,
1742
- version: Ce,
1747
+ const vn = (t) => `${fn()}?${t}`;
1748
+ function Pn(t) {
1749
+ const r = t ? vn(t) : fn();
1750
+ window.history.replaceState(null, "", r + window.location.hash);
1751
+ }
1752
+ async function Be(t, r) {
1753
+ const o = await fetch(hn(r), {
1754
+ method: "POST",
1755
+ headers: { "Content-Type": "application/json" },
1756
+ body: JSON.stringify(t)
1757
+ });
1758
+ if (o.status === 413) throw new Error("this data is too large to share");
1759
+ if (!o.ok) throw new Error(`share service returned ${o.status}`);
1760
+ const { id: s } = await o.json();
1761
+ return s;
1762
+ }
1763
+ async function Te(t, r) {
1764
+ const o = await fetch(`${hn(r)}/${encodeURIComponent(t)}`);
1765
+ if (o.status === 404)
1766
+ throw new Error("shared data not found (links expire after 30 days)");
1767
+ if (!o.ok) throw new Error(`could not load shared data (${o.status})`);
1768
+ return o.json();
1769
+ }
1770
+ const yn = "structure", De = 1, Ii = ({ structure: t, fileName: r }) => ({
1771
+ kind: yn,
1772
+ version: De,
1743
1773
  fileName: r,
1744
- structure: mn(t)
1774
+ structure: gn(t)
1745
1775
  });
1746
- function Re(t) {
1747
- if ((t == null ? void 0 : t.kind) !== pn || !t.structure)
1776
+ function Oe(t) {
1777
+ if ((t == null ? void 0 : t.kind) !== yn || !t.structure)
1748
1778
  throw new Error("this link does not hold a structure");
1749
1779
  return { structure: Tt(t.structure), fileName: t.fileName };
1750
1780
  }
1751
- const tt = (...t) => t.filter(Boolean).join(" "), Ie = (t) => t.split(/[?#]/)[0].split("/").pop();
1752
- function yo({
1781
+ const et = (...t) => t.filter(Boolean).join(" "), Me = (t) => t.split(/[?#]/)[0].split("/").pop();
1782
+ function Ni({
1753
1783
  onStructureParsed: t,
1754
1784
  validate: r,
1755
- historyKey: i,
1785
+ historyKey: o,
1756
1786
  historyTitle: s = "Previously uploaded structures",
1757
- examples: o = [],
1787
+ examples: i = [],
1758
1788
  examplesTitle: _ = "Otherwise, pick an example",
1759
1789
  label: m = "Upload a crystal structure",
1760
1790
  title: a = "Drop your crystal structure here",
1761
1791
  accept: g = ".cif,.xyz,.vasp,.poscar,.xsf,.in,.pwi",
1762
1792
  hint: l = "CIF, XYZ, POSCAR, XSF and Quantum ESPRESSO files",
1763
- shareStore: u,
1764
- className: p,
1765
- classes: f = {},
1766
- ...b
1793
+ kvUrl: b,
1794
+ className: h,
1795
+ classes: p = {},
1796
+ ...f
1767
1797
  }) {
1768
- const y = Yn(
1769
- () => i ? je(i) : null,
1770
- [i]
1771
- ), [R, A] = E(null), [j, I] = E(null), [O, z] = E(null), [dt, ot] = E(() => (y == null ? void 0 : y.load()) ?? []), [pt, ht] = E(null), [Y] = E(() => {
1798
+ const P = Xn(
1799
+ () => o ? Fe(o) : null,
1800
+ [o]
1801
+ ), [z, k] = B(null), [C, j] = B(null), [T, I] = B(null), [E, G] = B(() => (P == null ? void 0 : P.load()) ?? []), [pt, ht] = B(null), [K] = B(() => {
1772
1802
  try {
1773
- const h = new URLSearchParams(window.location.search).get("fromURL"), v = h && dn(h);
1774
- return v && (y == null ? void 0 : y.load().find((S) => S.fileName === v)) || null;
1803
+ const d = new URLSearchParams(window.location.search).get("fromURL"), y = d && pn(d);
1804
+ return y && (P == null ? void 0 : P.load().find((R) => R.fileName === y)) || null;
1775
1805
  } catch {
1776
1806
  return null;
1777
1807
  }
1778
- }), kt = ({ fileName: h, format: v, structure: S }, { unique: B = !1 } = {}) => {
1779
- y && (B && y.load().some((K) => K.fileName === h) || ot(
1780
- y.add({
1808
+ }), jt = ({ fileName: d, format: y, structure: R }, { unique: D = !1 } = {}) => {
1809
+ P && (D && P.load().some((W) => W.fileName === d) || G(
1810
+ P.add({
1781
1811
  id: crypto.randomUUID(),
1782
- fileName: h,
1783
- format: v,
1812
+ fileName: d,
1813
+ format: y,
1784
1814
  date: (/* @__PURE__ */ new Date()).toISOString(),
1785
- structure: mn(S)
1815
+ structure: gn(R)
1786
1816
  })
1787
1817
  ));
1788
- }, G = (h, { remember: v = !0, fromLink: S = !1 } = {}) => {
1789
- z(null);
1818
+ }, Q = (d, { remember: y = !0, fromLink: R = !1 } = {}) => {
1819
+ I(null);
1790
1820
  try {
1791
- r == null || r(h.structure);
1792
- } catch (B) {
1793
- return z((B == null ? void 0 : B.message) ?? String(B)), !1;
1821
+ r == null || r(d.structure);
1822
+ } catch (D) {
1823
+ return I((D == null ? void 0 : D.message) ?? String(D)), !1;
1794
1824
  }
1795
- return S || u == null || u.syncAddressBar(null), t == null || t(h), v && kt(h, { unique: S }), !0;
1825
+ return R || Pn(null), t == null || t(d), y && jt(d, { unique: R }), !0;
1796
1826
  };
1797
- nt(() => {
1798
- Y && G(
1827
+ rt(() => {
1828
+ K && Q(
1799
1829
  {
1800
- format: Y.format,
1801
- structure: Tt(Y.structure),
1802
- fileName: Y.fileName
1830
+ format: K.format,
1831
+ structure: Tt(K.structure),
1832
+ fileName: K.fileName
1803
1833
  },
1804
1834
  { remember: !1, fromLink: !0 }
1805
1835
  );
1806
- const h = u == null ? void 0 : u.idFromLocation();
1807
- if (!h) return;
1808
- let v = !1;
1809
- return I("shared structure"), u.fetch(h).then((S) => {
1810
- if (v) return;
1811
- const { structure: B, fileName: K } = Re(S);
1812
- G(
1813
- { format: "shared", structure: B, fileName: K ?? h, shareId: h },
1836
+ const d = Ee();
1837
+ if (!d) return;
1838
+ let y = !1;
1839
+ return j("shared structure"), Te(d, b).then((R) => {
1840
+ if (y) return;
1841
+ const { structure: D, fileName: W } = Oe(R);
1842
+ Q(
1843
+ { format: "shared", structure: D, fileName: W ?? d, shareId: d },
1814
1844
  { fromLink: !0 }
1815
1845
  );
1816
- }).catch((S) => {
1817
- v || z(`Loading shared structure failed: ${S.message}`);
1846
+ }).catch((R) => {
1847
+ y || I(`Loading shared structure failed: ${R.message}`);
1818
1848
  }).finally(() => {
1819
- v || I(null);
1849
+ y || j(null);
1820
1850
  }), () => {
1821
- v = !0;
1851
+ y = !0;
1822
1852
  };
1823
1853
  }, []);
1824
- const ft = async (h) => {
1825
- if (h) {
1826
- A(h), z(null), I(h.name);
1854
+ const ft = async (d) => {
1855
+ if (d) {
1856
+ k(d), I(null), j(d.name);
1827
1857
  try {
1828
- const v = await h.text(), { format: S, structure: B } = on(v, {
1829
- fileName: h.name
1858
+ const y = await d.text(), { format: R, structure: D } = sn(y, {
1859
+ fileName: d.name
1830
1860
  });
1831
- G({ format: S, structure: B, fileName: h.name });
1832
- } catch (v) {
1833
- z((v == null ? void 0 : v.message) ?? String(v));
1861
+ Q({ format: R, structure: D, fileName: d.name });
1862
+ } catch (y) {
1863
+ I((y == null ? void 0 : y.message) ?? String(y));
1834
1864
  } finally {
1835
- I(null);
1865
+ j(null);
1836
1866
  }
1837
1867
  }
1838
- }, U = ({ structure: h, format: v, fileName: S }) => {
1839
- G({ format: v, structure: h, fileName: S }, { fromLink: !0 });
1840
- }, J = (h) => {
1868
+ }, J = ({ structure: d, format: y, fileName: R }) => {
1869
+ Q({ format: y, structure: d, fileName: R }, { fromLink: !0 });
1870
+ }, V = (d) => {
1841
1871
  try {
1842
- G(
1872
+ Q(
1843
1873
  {
1844
- format: h.format,
1845
- structure: Tt(h.structure),
1846
- fileName: h.fileName
1874
+ format: d.format,
1875
+ structure: Tt(d.structure),
1876
+ fileName: d.fileName
1847
1877
  },
1848
1878
  { remember: !1 }
1849
1879
  );
1850
- } catch (v) {
1851
- z((v == null ? void 0 : v.message) ?? String(v));
1880
+ } catch (y) {
1881
+ I((y == null ? void 0 : y.message) ?? String(y));
1852
1882
  }
1853
- }, Q = async (h) => {
1854
- z(null), ht(h.url);
1883
+ }, X = async (d) => {
1884
+ I(null), ht(d.url);
1855
1885
  try {
1856
- const v = await fetch(h.url);
1857
- if (!v.ok) throw new Error(`Failed to load example (${v.status})`);
1858
- const S = h.fileName ?? Ie(h.url), { format: B, structure: K } = on(await v.text(), {
1859
- fileName: S
1886
+ const y = await fetch(d.url);
1887
+ if (!y.ok) throw new Error(`Failed to load example (${y.status})`);
1888
+ const R = d.fileName ?? Me(d.url), { format: D, structure: W } = sn(await y.text(), {
1889
+ fileName: R
1860
1890
  });
1861
- G({ format: B, structure: K, fileName: S }, { remember: !1 });
1862
- } catch (v) {
1863
- z((v == null ? void 0 : v.message) ?? String(v));
1891
+ Q({ format: D, structure: W, fileName: R }, { remember: !1 });
1892
+ } catch (y) {
1893
+ I((y == null ? void 0 : y.message) ?? String(y));
1864
1894
  } finally {
1865
1895
  ht(null);
1866
1896
  }
1867
- }, st = o.some((h) => h.family) ? Object.entries(
1868
- o.reduce((h, v) => {
1869
- var S;
1870
- return (h[S = v.family ?? "Other"] || (h[S] = [])).push(v), h;
1897
+ }, at = i.some((d) => d.family) ? Object.entries(
1898
+ i.reduce((d, y) => {
1899
+ var R;
1900
+ return (d[R = y.family ?? "Other"] || (d[R] = [])).push(y), d;
1871
1901
  }, {})
1872
- ) : null, at = (h) => /* @__PURE__ */ e.jsx("option", { value: h.url, children: h.label }, h.url);
1873
- return /* @__PURE__ */ e.jsxs("div", { className: tt("mc-structure-upload", p, f.root), ...b, children: [
1874
- /* @__PURE__ */ e.jsx("label", { className: tt("mc-structure-upload__label", f.label), children: m }),
1902
+ ) : null, ct = (d) => /* @__PURE__ */ e.jsx("option", { value: d.url, children: d.label }, d.url);
1903
+ return /* @__PURE__ */ e.jsxs("div", { className: et("mc-structure-upload", h, p.root), ...f, children: [
1904
+ /* @__PURE__ */ e.jsx("label", { className: et("mc-structure-upload__label", p.label), children: m }),
1875
1905
  /* @__PURE__ */ e.jsx(
1876
- ve,
1906
+ Ae,
1877
1907
  {
1878
1908
  accept: g,
1879
- fileName: R == null ? void 0 : R.name,
1909
+ fileName: z == null ? void 0 : z.name,
1880
1910
  onFile: ft,
1881
1911
  title: a,
1882
1912
  hint: l
1883
1913
  }
1884
1914
  ),
1885
- j && /* @__PURE__ */ e.jsxs("p", { className: tt("mc-structure-upload__status", f.status), children: [
1915
+ C && /* @__PURE__ */ e.jsxs("p", { className: et("mc-structure-upload__status", p.status), children: [
1886
1916
  /* @__PURE__ */ e.jsx("span", { className: "mc-structure-upload__spinner" }),
1887
1917
  "Loading ",
1888
- j,
1918
+ C,
1889
1919
  "…"
1890
1920
  ] }),
1891
- O && /* @__PURE__ */ e.jsx("p", { className: tt("mc-structure-upload__error", f.error), children: O }),
1921
+ T && /* @__PURE__ */ e.jsx("p", { className: et("mc-structure-upload__error", p.error), children: T }),
1892
1922
  /* @__PURE__ */ e.jsx(
1893
- Ae,
1923
+ Ie,
1894
1924
  {
1895
- autoLoad: !Y,
1896
- onLoaded: U,
1897
- onError: (h) => z(h)
1925
+ autoLoad: !K,
1926
+ onLoaded: J,
1927
+ onError: (d) => I(d)
1898
1928
  }
1899
1929
  ),
1900
- o.length > 0 && /* @__PURE__ */ e.jsxs("div", { className: tt("mc-structure-upload__examples", f.examples), children: [
1930
+ i.length > 0 && /* @__PURE__ */ e.jsxs("div", { className: et("mc-structure-upload__examples", p.examples), children: [
1901
1931
  /* @__PURE__ */ e.jsx("p", { className: "mc-structure-upload__examples-title", children: _ }),
1902
1932
  /* @__PURE__ */ e.jsxs(
1903
1933
  "select",
1904
1934
  {
1905
1935
  value: "",
1906
- onChange: (h) => {
1907
- const v = o.find((S) => S.url === h.target.value);
1908
- v && Q(v);
1936
+ onChange: (d) => {
1937
+ const y = i.find((R) => R.url === d.target.value);
1938
+ y && X(y);
1909
1939
  },
1910
1940
  disabled: pt !== null,
1911
- className: tt("mc-structure-upload__select", f.select),
1941
+ className: et("mc-structure-upload__select", p.select),
1912
1942
  children: [
1913
1943
  /* @__PURE__ */ e.jsx("option", { value: "", children: pt ? "Loading example…" : "Select an example…" }),
1914
- st ? st.map(([h, v]) => /* @__PURE__ */ e.jsx("optgroup", { label: h, children: v.map(at) }, h)) : o.map(at)
1944
+ at ? at.map(([d, y]) => /* @__PURE__ */ e.jsx("optgroup", { label: d, children: y.map(ct) }, d)) : i.map(ct)
1915
1945
  ]
1916
1946
  }
1917
1947
  )
1918
1948
  ] }),
1919
- dt.length > 0 && /* @__PURE__ */ e.jsx(
1920
- be,
1949
+ E.length > 0 && /* @__PURE__ */ e.jsx(
1950
+ Ce,
1921
1951
  {
1922
- className: tt("mc-structure-upload__history", f.history),
1952
+ className: et("mc-structure-upload__history", p.history),
1923
1953
  title: s,
1924
- entries: dt,
1925
- onLoad: J,
1926
- onDelete: (h) => ot(y.remove(h)),
1927
- onClear: () => ot(y.clear())
1954
+ entries: E,
1955
+ onLoad: V,
1956
+ onDelete: (d) => G(P.remove(d)),
1957
+ onClear: () => G(P.clear())
1928
1958
  }
1929
1959
  )
1930
1960
  ] });
1931
1961
  }
1932
- const gt = (...t) => t.filter(Boolean).join(" "), cn = { status: "idle" };
1933
- function bo({
1934
- store: t,
1935
- data: r,
1936
- toDocument: i = (u) => u,
1962
+ const ut = (...t) => t.filter(Boolean).join(" "), ln = { status: "idle" }, Le = () => /* @__PURE__ */ e.jsxs(
1963
+ "svg",
1964
+ {
1965
+ viewBox: "0 0 16 16",
1966
+ width: "1em",
1967
+ height: "1em",
1968
+ fill: "none",
1969
+ stroke: "currentColor",
1970
+ strokeWidth: "1.5",
1971
+ strokeLinecap: "round",
1972
+ "aria-hidden": "true",
1973
+ children: [
1974
+ /* @__PURE__ */ e.jsx("circle", { cx: "12", cy: "3.5", r: "2" }),
1975
+ /* @__PURE__ */ e.jsx("circle", { cx: "4", cy: "8", r: "2" }),
1976
+ /* @__PURE__ */ e.jsx("circle", { cx: "12", cy: "12.5", r: "2" }),
1977
+ /* @__PURE__ */ e.jsx("path", { d: "M5.8 7 10.2 4.5M5.8 9l4.4 2.5" })
1978
+ ]
1979
+ }
1980
+ ), Ze = () => /* @__PURE__ */ e.jsxs(
1981
+ "svg",
1982
+ {
1983
+ viewBox: "0 0 16 16",
1984
+ width: "1em",
1985
+ height: "1em",
1986
+ fill: "none",
1987
+ stroke: "currentColor",
1988
+ strokeWidth: "1.5",
1989
+ strokeLinejoin: "round",
1990
+ "aria-hidden": "true",
1991
+ children: [
1992
+ /* @__PURE__ */ e.jsx("rect", { x: "5", y: "5", width: "8.5", height: "9.5", rx: "1.5" }),
1993
+ /* @__PURE__ */ e.jsx("path", { d: "M3 11V3a1.5 1.5 0 0 1 1.5-1.5H10", strokeLinecap: "round" })
1994
+ ]
1995
+ }
1996
+ ), He = () => /* @__PURE__ */ e.jsx(
1997
+ "svg",
1998
+ {
1999
+ viewBox: "0 0 16 16",
2000
+ width: "1em",
2001
+ height: "1em",
2002
+ fill: "none",
2003
+ stroke: "currentColor",
2004
+ strokeWidth: "1.75",
2005
+ strokeLinecap: "round",
2006
+ strokeLinejoin: "round",
2007
+ "aria-hidden": "true",
2008
+ children: /* @__PURE__ */ e.jsx("path", { d: "M3 8.5 6.5 12 13 4.5" })
2009
+ }
2010
+ );
2011
+ async function _n(t) {
2012
+ try {
2013
+ return await navigator.clipboard.writeText(t), !0;
2014
+ } catch {
2015
+ return !1;
2016
+ }
2017
+ }
2018
+ function Fi({
2019
+ data: t,
2020
+ toDocument: r = (h) => h,
2021
+ kvUrl: o = Ot,
1937
2022
  shareId: s,
1938
- onShared: o,
2023
+ onShared: i,
1939
2024
  label: _ = "Share",
1940
2025
  busyLabel: m = "Sharing…",
1941
- className: a,
1942
- classes: g = {},
1943
- ...l
2026
+ children: a,
2027
+ className: g,
2028
+ classes: l = {},
2029
+ ...b
1944
2030
  }) {
1945
- const [u, p] = E(cn), [f, b] = E(r);
1946
- if (r !== f && (b(r), p(cn)), !(t != null && t.enabled) || !r) return null;
1947
- const y = async () => {
1948
- p({ status: "uploading" });
2031
+ const [h, p] = B({ ...ln, data: t }), f = h.data === t ? h : ln;
2032
+ if (!t) return null;
2033
+ const P = `Anyone with this link can view the data. It is stored on ${new URL(o || Ot).host} and expires after 30 days.`, z = async () => {
2034
+ const I = (E) => p({ ...E, data: t });
2035
+ I({ status: "uploading" });
1949
2036
  try {
1950
- const R = u.id ?? s ?? await t.upload(i(r));
1951
- t.syncAddressBar(R), R !== s && (o == null || o(R));
1952
- const A = t.linkFor(R);
1953
- let j = !1;
1954
- try {
1955
- await navigator.clipboard.writeText(A), j = !0;
1956
- } catch {
1957
- }
1958
- p({ status: "done", id: R, link: A, copied: j });
1959
- } catch (R) {
1960
- p({ status: "error", message: (R == null ? void 0 : R.message) ?? String(R) });
2037
+ const E = f.id ?? s ?? await Be(r(t), o);
2038
+ Pn(E), E !== s && (i == null || i(E));
2039
+ const G = vn(E);
2040
+ I({ status: "done", id: E, link: G, copied: await _n(G) });
2041
+ } catch (E) {
2042
+ I({ status: "error", message: (E == null ? void 0 : E.message) ?? String(E) });
2043
+ }
2044
+ }, k = async () => p({ ...f, data: t, copied: await _n(f.link) }), C = f.status === "done" ? /* @__PURE__ */ e.jsxs(
2045
+ "button",
2046
+ {
2047
+ type: "button",
2048
+ onClick: k,
2049
+ title: P,
2050
+ className: ut("mc-share__button", l.button),
2051
+ children: [
2052
+ f.copied ? /* @__PURE__ */ e.jsx(He, {}) : /* @__PURE__ */ e.jsx(Ze, {}),
2053
+ f.copied ? "Copied" : "Copy link"
2054
+ ]
1961
2055
  }
1962
- };
1963
- return /* @__PURE__ */ e.jsxs("div", { className: gt("mc-share", a, g.root), ...l, children: [
1964
- /* @__PURE__ */ e.jsx(
1965
- "button",
2056
+ ) : /* @__PURE__ */ e.jsxs(
2057
+ "button",
2058
+ {
2059
+ type: "button",
2060
+ onClick: z,
2061
+ disabled: f.status === "uploading",
2062
+ title: P,
2063
+ className: ut("mc-share__button", l.button),
2064
+ children: [
2065
+ /* @__PURE__ */ e.jsx(Le, {}),
2066
+ f.status === "uploading" ? m : _
2067
+ ]
2068
+ }
2069
+ ), j = f.status === "error" ? /* @__PURE__ */ e.jsxs("span", { role: "alert", className: ut("mc-share__error", l.error), children: [
2070
+ "Sharing failed: ",
2071
+ f.message
2072
+ ] }) : null, T = f.status === "done" ? /* @__PURE__ */ e.jsx(
2073
+ "input",
2074
+ {
2075
+ readOnly: !0,
2076
+ value: f.link,
2077
+ onFocus: (I) => I.target.select(),
2078
+ "aria-label": "Share link",
2079
+ title: P,
2080
+ className: ut("mc-share__input", l.result)
2081
+ }
2082
+ ) : null;
2083
+ return typeof a == "function" ? a({ button: C, error: j, result: T, status: f.status }) : /* @__PURE__ */ e.jsxs("div", { className: ut("mc-share", g, l.root), ...b, children: [
2084
+ j,
2085
+ T,
2086
+ C
2087
+ ] });
2088
+ }
2089
+ const At = (...t) => t.filter(Boolean).join(" ");
2090
+ function zi({
2091
+ title: t,
2092
+ logo: r,
2093
+ logoAlt: o = "",
2094
+ dois: s = [],
2095
+ children: i,
2096
+ className: _,
2097
+ classes: m = {},
2098
+ ...a
2099
+ }) {
2100
+ return /* @__PURE__ */ e.jsxs("header", { className: At("mc-app-header", _, m.root), ...a, children: [
2101
+ /* @__PURE__ */ e.jsxs("div", { className: "mc-app-header__text", children: [
2102
+ /* @__PURE__ */ e.jsx("h1", { className: At("mc-app-header__title", m.title), children: t }),
2103
+ i,
2104
+ s.length > 0 && /* @__PURE__ */ e.jsx("div", { className: At("mc-app-header__dois", m.dois), children: s.map((g) => {
2105
+ const { doi: l, ...b } = typeof g == "string" ? { doi: g } : g;
2106
+ return /* @__PURE__ */ e.jsx(ce, { doi: l, ...b }, l);
2107
+ }) })
2108
+ ] }),
2109
+ r && (typeof r == "string" ? /* @__PURE__ */ e.jsx(
2110
+ "img",
1966
2111
  {
1967
- type: "button",
1968
- onClick: y,
1969
- disabled: u.status === "uploading",
1970
- className: gt("mc-share__button", g.button),
1971
- children: u.status === "uploading" ? m : _
2112
+ src: r,
2113
+ alt: o,
2114
+ className: At("mc-app-header__logo", m.logo)
1972
2115
  }
1973
- ),
1974
- u.status === "done" && /* @__PURE__ */ e.jsxs("span", { className: gt("mc-share__link", g.link), children: [
1975
- u.copied ? "Link copied: " : "Link: ",
1976
- /* @__PURE__ */ e.jsx("a", { href: u.link, children: u.link })
1977
- ] }),
1978
- u.status === "error" && /* @__PURE__ */ e.jsxs("span", { className: gt("mc-share__error", g.error), children: [
1979
- "Sharing failed: ",
1980
- u.message
1981
- ] }),
1982
- t.name !== "production" && /* @__PURE__ */ e.jsxs("span", { className: gt("mc-share__store", g.store), children: [
1983
- "(",
1984
- t.name,
1985
- " share store)"
1986
- ] })
2116
+ ) : r)
1987
2117
  ] });
1988
2118
  }
1989
- function xo(t) {
1990
- return t.split(/(\d+)/).map((i, s) => i.match(/\d+/) ? /* @__PURE__ */ e.jsx("sub", { children: i }, s) : i);
2119
+ function Ei(t) {
2120
+ return t.split(/(\d+)/).map((o, s) => o.match(/\d+/) ? /* @__PURE__ */ e.jsx("sub", { children: o }, s) : o);
1991
2121
  }
1992
- const Se = {
2122
+ const Ue = {
1993
2123
  display: "inline-block",
1994
2124
  position: "relative"
1995
- }, Ne = {
2125
+ }, Je = {
1996
2126
  position: "absolute",
1997
2127
  top: "0.15em",
1998
2128
  left: 0,
@@ -2001,660 +2131,606 @@ const Se = {
2001
2131
  height: 0,
2002
2132
  zIndex: 1
2003
2133
  };
2004
- function wo(t) {
2005
- let r = !1, i = !1;
2006
- return /* @__PURE__ */ e.jsx("span", { children: t.split("").map((s, o) => s == "-" ? (i = !0, null) : s == "_" ? (r = !0, null) : i ? (i = !1, /* @__PURE__ */ e.jsxs("span", { style: Se, children: [
2007
- /* @__PURE__ */ e.jsx("span", { style: Ne }),
2134
+ function Bi(t) {
2135
+ let r = !1, o = !1;
2136
+ return /* @__PURE__ */ e.jsx("span", { children: t.split("").map((s, i) => s == "-" ? (o = !0, null) : s == "_" ? (r = !0, null) : o ? (o = !1, /* @__PURE__ */ e.jsxs("span", { style: Ue, children: [
2137
+ /* @__PURE__ */ e.jsx("span", { style: Je }),
2008
2138
  s
2009
- ] }, o)) : r ? (r = !1, /* @__PURE__ */ e.jsx("sub", { children: s }, o)) : s) });
2139
+ ] }, i)) : r ? (r = !1, /* @__PURE__ */ e.jsx("sub", { children: s }, i)) : s) });
2010
2140
  }
2011
- const Bt = {
2012
- dev: "https://kv-store.dev.materialscloud.org",
2013
- production: "https://kv-store.materialscloud.org"
2014
- }, Fe = /^[A-Za-z0-9_-]+$/, ln = () => window.location.origin + window.location.pathname;
2015
- function Ao(t) {
2016
- const r = t ? Bt[t] ?? (/^https?:\/\//.test(t) ? t : null) : null;
2017
- if (t && !r)
2018
- throw new Error(
2019
- `Unknown share store '${t}' (expected: ${Object.keys(Bt).join(", ")} or a URL)`
2020
- );
2021
- const i = r !== null, s = i ? Bt[t] ? t : r : null, o = i ? `${r.replace(/\/+$/, "")}/api/shares` : null;
2022
- function _() {
2023
- if (!i) return null;
2024
- const p = [...new URLSearchParams(window.location.search)].find(
2025
- ([f, b]) => b === "" && Fe.test(f)
2026
- );
2027
- return p ? p[0] : null;
2028
- }
2029
- const m = (u) => `${ln()}?${u}`;
2030
- function a(u) {
2031
- if (!i) return;
2032
- const p = u ? m(u) : ln();
2033
- window.history.replaceState(null, "", p + window.location.hash);
2034
- }
2035
- async function g(u) {
2036
- if (!i) throw new Error("sharing is not enabled");
2037
- const p = await fetch(o, {
2038
- method: "POST",
2039
- headers: { "Content-Type": "application/json" },
2040
- body: JSON.stringify(u)
2041
- });
2042
- if (p.status === 413) throw new Error("this data is too large to share");
2043
- if (!p.ok) throw new Error(`share service returned ${p.status}`);
2044
- const { id: f } = await p.json();
2045
- return f;
2046
- }
2047
- async function l(u) {
2048
- if (!i) throw new Error("sharing is not enabled");
2049
- const p = await fetch(`${o}/${encodeURIComponent(u)}`);
2050
- if (p.status === 404)
2051
- throw new Error("shared data not found (links expire after 30 days)");
2052
- if (!p.ok) throw new Error(`could not load shared data (${p.status})`);
2053
- return p.json();
2054
- }
2055
- return {
2056
- enabled: i,
2057
- name: s,
2058
- idFromLocation: _,
2059
- linkFor: m,
2060
- syncAddressBar: a,
2061
- upload: g,
2062
- fetch: l
2063
- };
2064
- }
2065
- function hn(t) {
2066
- return Math.sqrt(t.reduce((r, i) => r + i * i, 0));
2141
+ function bn(t) {
2142
+ return Math.sqrt(t.reduce((r, o) => r + o * o, 0));
2067
2143
  }
2068
- function fn(t, r) {
2069
- return t.reduce((i, s, o) => i + s * r[o], 0);
2144
+ function xn(t, r) {
2145
+ return t.reduce((o, s, i) => o + s * r[i], 0);
2070
2146
  }
2071
- function Ee(t) {
2072
- return t[0].map((r, i) => t.map((s) => s[i]));
2147
+ function Ve(t) {
2148
+ return t[0].map((r, o) => t.map((s) => s[o]));
2073
2149
  }
2074
- function ze(t, r) {
2075
- return t.map((i) => i.map((s) => s * r));
2150
+ function Ye(t, r) {
2151
+ return t.map((o) => o.map((s) => s * r));
2076
2152
  }
2077
- function Be(t) {
2153
+ function Ge(t) {
2078
2154
  return Array.from(
2079
2155
  { length: t },
2080
- (r, i) => Array.from({ length: t }, (s, o) => i === o ? 1 : 0)
2156
+ (r, o) => Array.from({ length: t }, (s, i) => o === i ? 1 : 0)
2081
2157
  );
2082
2158
  }
2083
- function Te(t, r) {
2084
- for (var i = [], s = 0; s < t.length; s++) {
2085
- i[s] = [];
2086
- for (var o = 0; o < r[0].length; o++) {
2159
+ function Ke(t, r) {
2160
+ for (var o = [], s = 0; s < t.length; s++) {
2161
+ o[s] = [];
2162
+ for (var i = 0; i < r[0].length; i++) {
2087
2163
  for (var _ = 0, m = 0; m < t[0].length; m++)
2088
- _ += t[s][m] * r[m][o];
2089
- i[s][o] = _;
2164
+ _ += t[s][m] * r[m][i];
2165
+ o[s][i] = _;
2090
2166
  }
2091
2167
  }
2092
- return i;
2168
+ return o;
2093
2169
  }
2094
- function De(t) {
2095
- const r = t.length, i = t.map((o) => hn(o)), s = Array.from({ length: r }, () => Array(r).fill(0));
2096
- for (let o = 0; o < r; o++)
2170
+ function Qe(t) {
2171
+ const r = t.length, o = t.map((i) => bn(i)), s = Array.from({ length: r }, () => Array(r).fill(0));
2172
+ for (let i = 0; i < r; i++)
2097
2173
  for (let _ = 0; _ < r; _++) {
2098
- if (o === _) {
2099
- s[o][_] = 0;
2174
+ if (i === _) {
2175
+ s[i][_] = 0;
2100
2176
  continue;
2101
2177
  }
2102
- const m = fn(t[o], t[_]), a = i[o], g = i[_];
2178
+ const m = xn(t[i], t[_]), a = o[i], g = o[_];
2103
2179
  if (a > 0 && g > 0) {
2104
2180
  let l = m / (a * g);
2105
2181
  l = Math.max(-1, Math.min(1, l));
2106
- const u = Math.acos(l);
2107
- s[o][_] = u * (180 / Math.PI);
2182
+ const b = Math.acos(l);
2183
+ s[i][_] = b * (180 / Math.PI);
2108
2184
  } else
2109
- s[o][_] = null;
2185
+ s[i][_] = null;
2110
2186
  }
2111
- return { lengths: i, angles: s };
2187
+ return { lengths: o, angles: s };
2112
2188
  }
2113
- function Oe(t) {
2114
- const r = t.length, i = t.map((o) => o.slice()), s = Array.from(
2189
+ function We(t) {
2190
+ const r = t.length, o = t.map((i) => i.slice()), s = Array.from(
2115
2191
  { length: r },
2116
- (o, _) => Array.from({ length: r }, (m, a) => _ === a ? 1 : 0)
2192
+ (i, _) => Array.from({ length: r }, (m, a) => _ === a ? 1 : 0)
2117
2193
  );
2118
- for (let o = 0; o < r; o++) {
2119
- let _ = o;
2120
- for (let a = o + 1; a < r; a++)
2121
- Math.abs(i[a][o]) > Math.abs(i[_][o]) && (_ = a);
2122
- if ([i[o], i[_]] = [i[_], i[o]], [s[o], s[_]] = [s[_], s[o]], i[o][o] === 0)
2194
+ for (let i = 0; i < r; i++) {
2195
+ let _ = i;
2196
+ for (let a = i + 1; a < r; a++)
2197
+ Math.abs(o[a][i]) > Math.abs(o[_][i]) && (_ = a);
2198
+ if ([o[i], o[_]] = [o[_], o[i]], [s[i], s[_]] = [s[_], s[i]], o[i][i] === 0)
2123
2199
  throw new Error("Matrix is singular and cannot be inverted.");
2124
- const m = i[o][o];
2200
+ const m = o[i][i];
2125
2201
  for (let a = 0; a < r; a++)
2126
- i[o][a] /= m, s[o][a] /= m;
2202
+ o[i][a] /= m, s[i][a] /= m;
2127
2203
  for (let a = 0; a < r; a++) {
2128
- if (a === o) continue;
2129
- const g = i[a][o];
2204
+ if (a === i) continue;
2205
+ const g = o[a][i];
2130
2206
  for (let l = 0; l < r; l++)
2131
- i[a][l] -= g * i[o][l], s[a][l] -= g * s[o][l];
2207
+ o[a][l] -= g * o[i][l], s[a][l] -= g * s[i][l];
2132
2208
  }
2133
2209
  }
2134
2210
  return s;
2135
2211
  }
2136
- function Pn(t) {
2212
+ function wn(t) {
2137
2213
  const r = t.length;
2138
2214
  if (r === 1) return t[0][0];
2139
2215
  if (r === 2)
2140
2216
  return t[0][0] * t[1][1] - t[0][1] * t[1][0];
2141
- let i = 0;
2217
+ let o = 0;
2142
2218
  for (let s = 0; s < r; s++) {
2143
- const o = t.slice(1).map((m) => m.filter((a, g) => g !== s)), _ = s % 2 === 0 ? 1 : -1;
2144
- i += _ * t[0][s] * Pn(o);
2219
+ const i = t.slice(1).map((m) => m.filter((a, g) => g !== s)), _ = s % 2 === 0 ? 1 : -1;
2220
+ o += _ * t[0][s] * wn(i);
2145
2221
  }
2146
- return i;
2222
+ return o;
2147
2223
  }
2148
- const ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2224
+ const Ti = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2149
2225
  __proto__: null,
2150
- determinant: Pn,
2151
- dot: fn,
2152
- getMatrixParams: De,
2153
- identityMatrix: Be,
2154
- invertMatrix: Oe,
2155
- multiplyMatrices: Te,
2156
- norm: hn,
2157
- scalarMultiply: ze,
2158
- transpose: Ee
2159
- }, Symbol.toStringTag, { value: "Module" })), Ze = {
2226
+ determinant: wn,
2227
+ dot: xn,
2228
+ getMatrixParams: Qe,
2229
+ identityMatrix: Ge,
2230
+ invertMatrix: We,
2231
+ multiplyMatrices: Ke,
2232
+ norm: bn,
2233
+ scalarMultiply: Ye,
2234
+ transpose: Ve
2235
+ }, Symbol.toStringTag, { value: "Module" })), Xe = {
2160
2236
  Z: 1,
2161
2237
  mz: 1.00794
2162
- }, Me = {
2238
+ }, qe = {
2163
2239
  Z: 2,
2164
2240
  mz: 4.002602
2165
- }, Le = {
2241
+ }, $e = {
2166
2242
  Z: 3,
2167
2243
  mz: 6.941
2168
- }, He = {
2244
+ }, tr = {
2169
2245
  Z: 4,
2170
2246
  mz: 9.012182
2171
- }, Ue = {
2247
+ }, nr = {
2172
2248
  Z: 5,
2173
2249
  mz: 10.811
2174
- }, Je = {
2250
+ }, er = {
2175
2251
  Z: 6,
2176
2252
  mz: 12.0107
2177
- }, Ve = {
2253
+ }, rr = {
2178
2254
  Z: 7,
2179
2255
  mz: 14.0067
2180
- }, Ye = {
2256
+ }, or = {
2181
2257
  Z: 8,
2182
2258
  mz: 15.9994
2183
- }, Ge = {
2259
+ }, ir = {
2184
2260
  Z: 9,
2185
2261
  mz: 18.9984032
2186
- }, Ke = {
2262
+ }, sr = {
2187
2263
  Z: 10,
2188
2264
  mz: 20.1797
2189
- }, Qe = {
2265
+ }, ar = {
2190
2266
  Z: 11,
2191
2267
  mz: 22.98976928
2192
- }, We = {
2268
+ }, cr = {
2193
2269
  Z: 12,
2194
2270
  mz: 24.305
2195
- }, Xe = {
2271
+ }, lr = {
2196
2272
  Z: 13,
2197
2273
  mz: 26.9815386
2198
- }, qe = {
2274
+ }, _r = {
2199
2275
  Z: 14,
2200
2276
  mz: 28.0855
2201
- }, $e = {
2277
+ }, mr = {
2202
2278
  Z: 15,
2203
2279
  mz: 30.973762
2204
- }, tr = {
2280
+ }, gr = {
2205
2281
  Z: 16,
2206
2282
  mz: 32.065
2207
- }, nr = {
2283
+ }, ur = {
2208
2284
  Z: 17,
2209
2285
  mz: 35.453
2210
- }, er = {
2286
+ }, dr = {
2211
2287
  Z: 18,
2212
2288
  mz: 39.948
2213
- }, rr = {
2289
+ }, pr = {
2214
2290
  Z: 19,
2215
2291
  mz: 39.0983
2216
- }, ir = {
2292
+ }, hr = {
2217
2293
  Z: 20,
2218
2294
  mz: 40.078
2219
- }, or = {
2295
+ }, fr = {
2220
2296
  Z: 21,
2221
2297
  mz: 44.955912
2222
- }, sr = {
2298
+ }, vr = {
2223
2299
  Z: 22,
2224
2300
  mz: 47.867
2225
- }, ar = {
2301
+ }, Pr = {
2226
2302
  Z: 23,
2227
2303
  mz: 50.9415
2228
- }, cr = {
2304
+ }, yr = {
2229
2305
  Z: 24,
2230
2306
  mz: 51.9961
2231
- }, lr = {
2307
+ }, br = {
2232
2308
  Z: 25,
2233
2309
  mz: 54.938045
2234
- }, _r = {
2310
+ }, xr = {
2235
2311
  Z: 26,
2236
2312
  mz: 55.845
2237
- }, mr = {
2313
+ }, wr = {
2238
2314
  Z: 27,
2239
2315
  mz: 58.933195
2240
- }, gr = {
2316
+ }, kr = {
2241
2317
  Z: 28,
2242
2318
  mz: 58.6934
2243
- }, ur = {
2319
+ }, Ar = {
2244
2320
  Z: 29,
2245
2321
  mz: 63.546
2246
- }, dr = {
2322
+ }, jr = {
2247
2323
  Z: 30,
2248
2324
  mz: 65.409
2249
- }, pr = {
2325
+ }, Cr = {
2250
2326
  Z: 31,
2251
2327
  mz: 69.723
2252
- }, hr = {
2328
+ }, Sr = {
2253
2329
  Z: 32,
2254
2330
  mz: 72.64
2255
- }, fr = {
2331
+ }, Rr = {
2256
2332
  Z: 33,
2257
2333
  mz: 74.9216
2258
- }, Pr = {
2334
+ }, Ir = {
2259
2335
  Z: 34,
2260
2336
  mz: 78.96
2261
- }, vr = {
2337
+ }, Nr = {
2262
2338
  Z: 35,
2263
2339
  mz: 79.904
2264
- }, yr = {
2340
+ }, Fr = {
2265
2341
  Z: 36,
2266
2342
  mz: 83.798
2267
- }, br = {
2343
+ }, zr = {
2268
2344
  Z: 37,
2269
2345
  mz: 85.4678
2270
- }, xr = {
2346
+ }, Er = {
2271
2347
  Z: 38,
2272
2348
  mz: 87.62
2273
- }, wr = {
2349
+ }, Br = {
2274
2350
  Z: 39,
2275
2351
  mz: 88.90585
2276
- }, Ar = {
2352
+ }, Tr = {
2277
2353
  Z: 40,
2278
2354
  mz: 91.224
2279
- }, kr = {
2355
+ }, Dr = {
2280
2356
  Z: 41,
2281
2357
  mz: 92.90638
2282
- }, jr = {
2358
+ }, Or = {
2283
2359
  Z: 42,
2284
2360
  mz: 95.94
2285
- }, Cr = {
2361
+ }, Mr = {
2286
2362
  Z: 43,
2287
2363
  mz: 98
2288
- }, Rr = {
2364
+ }, Lr = {
2289
2365
  Z: 44,
2290
2366
  mz: 101.07
2291
- }, Ir = {
2367
+ }, Zr = {
2292
2368
  Z: 45,
2293
2369
  mz: 102.9055
2294
- }, Sr = {
2370
+ }, Hr = {
2295
2371
  Z: 46,
2296
2372
  mz: 106.42
2297
- }, Nr = {
2373
+ }, Ur = {
2298
2374
  Z: 47,
2299
2375
  mz: 107.8682
2300
- }, Fr = {
2376
+ }, Jr = {
2301
2377
  Z: 48,
2302
2378
  mz: 112.411
2303
- }, Er = {
2379
+ }, Vr = {
2304
2380
  Z: 49,
2305
2381
  mz: 114.818
2306
- }, zr = {
2382
+ }, Yr = {
2307
2383
  Z: 50,
2308
2384
  mz: 118.71
2309
- }, Br = {
2385
+ }, Gr = {
2310
2386
  Z: 51,
2311
2387
  mz: 121.76
2312
- }, Tr = {
2388
+ }, Kr = {
2313
2389
  Z: 52,
2314
2390
  mz: 127.6
2315
- }, Dr = {
2391
+ }, Qr = {
2316
2392
  Z: 53,
2317
2393
  mz: 126.90447
2318
- }, Or = {
2394
+ }, Wr = {
2319
2395
  Z: 54,
2320
2396
  mz: 131.293
2321
- }, Zr = {
2397
+ }, Xr = {
2322
2398
  Z: 55,
2323
2399
  mz: 132.9054519
2324
- }, Mr = {
2400
+ }, qr = {
2325
2401
  Z: 56,
2326
2402
  mz: 137.327
2327
- }, Lr = {
2403
+ }, $r = {
2328
2404
  Z: 57,
2329
2405
  mz: 138.90547
2330
- }, Hr = {
2406
+ }, to = {
2331
2407
  Z: 58,
2332
2408
  mz: 140.116
2333
- }, Ur = {
2409
+ }, no = {
2334
2410
  Z: 59,
2335
2411
  mz: 140.90765
2336
- }, Jr = {
2412
+ }, eo = {
2337
2413
  Z: 60,
2338
2414
  mz: 144.242
2339
- }, Vr = {
2415
+ }, ro = {
2340
2416
  Z: 61,
2341
2417
  mz: 145
2342
- }, Yr = {
2418
+ }, oo = {
2343
2419
  Z: 62,
2344
2420
  mz: 150.36
2345
- }, Gr = {
2421
+ }, io = {
2346
2422
  Z: 63,
2347
2423
  mz: 151.964
2348
- }, Kr = {
2424
+ }, so = {
2349
2425
  Z: 64,
2350
2426
  mz: 157.25
2351
- }, Qr = {
2427
+ }, ao = {
2352
2428
  Z: 65,
2353
2429
  mz: 158.92535
2354
- }, Wr = {
2430
+ }, co = {
2355
2431
  Z: 66,
2356
2432
  mz: 162.5
2357
- }, Xr = {
2433
+ }, lo = {
2358
2434
  Z: 67,
2359
2435
  mz: 164.93032
2360
- }, qr = {
2436
+ }, _o = {
2361
2437
  Z: 68,
2362
2438
  mz: 167.259
2363
- }, $r = {
2439
+ }, mo = {
2364
2440
  Z: 69,
2365
2441
  mz: 168.93421
2366
- }, ti = {
2442
+ }, go = {
2367
2443
  Z: 70,
2368
2444
  mz: 173.04
2369
- }, ni = {
2445
+ }, uo = {
2370
2446
  Z: 71,
2371
2447
  mz: 174.967
2372
- }, ei = {
2448
+ }, po = {
2373
2449
  Z: 72,
2374
2450
  mz: 178.49
2375
- }, ri = {
2451
+ }, ho = {
2376
2452
  Z: 73,
2377
2453
  mz: 180.94788
2378
- }, ii = {
2454
+ }, fo = {
2379
2455
  Z: 74,
2380
2456
  mz: 183.84
2381
- }, oi = {
2457
+ }, vo = {
2382
2458
  Z: 75,
2383
2459
  mz: 186.207
2384
- }, si = {
2460
+ }, Po = {
2385
2461
  Z: 76,
2386
2462
  mz: 190.23
2387
- }, ai = {
2463
+ }, yo = {
2388
2464
  Z: 77,
2389
2465
  mz: 192.217
2390
- }, ci = {
2466
+ }, bo = {
2391
2467
  Z: 78,
2392
2468
  mz: 195.084
2393
- }, li = {
2469
+ }, xo = {
2394
2470
  Z: 79,
2395
2471
  mz: 196.966569
2396
- }, _i = {
2472
+ }, wo = {
2397
2473
  Z: 80,
2398
2474
  mz: 200.59
2399
- }, mi = {
2475
+ }, ko = {
2400
2476
  Z: 81,
2401
2477
  mz: 204.3833
2402
- }, gi = {
2478
+ }, Ao = {
2403
2479
  Z: 82,
2404
2480
  mz: 207.2
2405
- }, ui = {
2481
+ }, jo = {
2406
2482
  Z: 83,
2407
2483
  mz: 208.9804
2408
- }, di = {
2484
+ }, Co = {
2409
2485
  Z: 84,
2410
2486
  mz: 210
2411
- }, pi = {
2487
+ }, So = {
2412
2488
  Z: 85,
2413
2489
  mz: 210
2414
- }, hi = {
2490
+ }, Ro = {
2415
2491
  Z: 86,
2416
2492
  mz: 220
2417
- }, fi = {
2493
+ }, Io = {
2418
2494
  Z: 87,
2419
2495
  mz: 223
2420
- }, Pi = {
2496
+ }, No = {
2421
2497
  Z: 88,
2422
2498
  mz: 226
2423
- }, vi = {
2499
+ }, Fo = {
2424
2500
  Z: 89,
2425
2501
  mz: 227
2426
- }, yi = {
2502
+ }, zo = {
2427
2503
  Z: 90,
2428
2504
  mz: 232.03806
2429
- }, bi = {
2505
+ }, Eo = {
2430
2506
  Z: 91,
2431
2507
  mz: 231.03588
2432
- }, xi = {
2508
+ }, Bo = {
2433
2509
  Z: 92,
2434
2510
  mz: 238.02891
2435
- }, wi = {
2511
+ }, To = {
2436
2512
  Z: 93,
2437
2513
  mz: 237
2438
- }, Ai = {
2514
+ }, Do = {
2439
2515
  Z: 94,
2440
2516
  mz: 244
2441
- }, ki = {
2517
+ }, Oo = {
2442
2518
  Z: 95,
2443
2519
  mz: 243
2444
- }, ji = {
2520
+ }, Mo = {
2445
2521
  Z: 96,
2446
2522
  mz: 247
2447
- }, Ci = {
2523
+ }, Lo = {
2448
2524
  Z: 97,
2449
2525
  mz: 247
2450
- }, Ri = {
2526
+ }, Zo = {
2451
2527
  Z: 98,
2452
2528
  mz: 251
2453
- }, Ii = {
2529
+ }, Ho = {
2454
2530
  Z: 99,
2455
2531
  mz: 252
2456
- }, Si = {
2532
+ }, Uo = {
2457
2533
  Z: 100,
2458
2534
  mz: 257
2459
- }, Ni = {
2535
+ }, Jo = {
2460
2536
  Z: 101,
2461
2537
  mz: 258
2462
- }, Fi = {
2538
+ }, Vo = {
2463
2539
  Z: 102,
2464
2540
  mz: 259
2465
- }, Ei = {
2541
+ }, Yo = {
2466
2542
  Z: 103,
2467
2543
  mz: 262
2468
- }, zi = {
2544
+ }, Go = {
2469
2545
  Z: 104,
2470
2546
  mz: 267
2471
- }, Bi = {
2547
+ }, Ko = {
2472
2548
  Z: 105,
2473
2549
  mz: 268
2474
- }, Ti = {
2550
+ }, Qo = {
2475
2551
  Z: 106,
2476
2552
  mz: 269
2477
- }, Di = {
2553
+ }, Wo = {
2478
2554
  Z: 107,
2479
2555
  mz: 270
2480
- }, Oi = {
2556
+ }, Xo = {
2481
2557
  Z: 108,
2482
2558
  mz: 270
2483
- }, Zi = {
2559
+ }, qo = {
2484
2560
  Z: 109,
2485
2561
  mz: 278
2486
- }, Mi = {
2562
+ }, $o = {
2487
2563
  Z: 110,
2488
2564
  mz: 281
2489
- }, Li = {
2565
+ }, ti = {
2490
2566
  Z: 111,
2491
2567
  mz: 282
2492
- }, Hi = {
2568
+ }, ni = {
2493
2569
  Z: 112,
2494
2570
  mz: 285
2495
- }, Ui = {
2571
+ }, ei = {
2496
2572
  Z: 113,
2497
2573
  mz: 286
2498
- }, Ji = {
2574
+ }, ri = {
2499
2575
  Z: 114,
2500
2576
  mz: 289
2501
- }, Vi = {
2577
+ }, oi = {
2502
2578
  Z: 115,
2503
2579
  mz: 290
2504
- }, Yi = {
2580
+ }, ii = {
2505
2581
  Z: 116,
2506
2582
  mz: 293
2507
- }, Gi = {
2583
+ }, si = {
2508
2584
  Z: 117,
2509
2585
  mz: 294
2510
- }, Ki = {
2586
+ }, ai = {
2511
2587
  Z: 118,
2512
2588
  mz: 294
2513
- }, Qi = {
2514
- H: Ze,
2515
- He: Me,
2516
- Li: Le,
2517
- Be: He,
2518
- B: Ue,
2519
- C: Je,
2520
- N: Ve,
2521
- O: Ye,
2522
- F: Ge,
2523
- Ne: Ke,
2524
- Na: Qe,
2525
- Mg: We,
2526
- Al: Xe,
2527
- Si: qe,
2528
- P: $e,
2529
- S: tr,
2530
- Cl: nr,
2531
- Ar: er,
2532
- K: rr,
2533
- Ca: ir,
2534
- Sc: or,
2535
- Ti: sr,
2536
- V: ar,
2537
- Cr: cr,
2538
- Mn: lr,
2539
- Fe: _r,
2540
- Co: mr,
2541
- Ni: gr,
2542
- Cu: ur,
2543
- Zn: dr,
2544
- Ga: pr,
2545
- Ge: hr,
2546
- As: fr,
2547
- Se: Pr,
2548
- Br: vr,
2549
- Kr: yr,
2550
- Rb: br,
2551
- Sr: xr,
2552
- Y: wr,
2553
- Zr: Ar,
2554
- Nb: kr,
2555
- Mo: jr,
2556
- Tc: Cr,
2557
- Ru: Rr,
2558
- Rh: Ir,
2559
- Pd: Sr,
2560
- Ag: Nr,
2561
- Cd: Fr,
2562
- In: Er,
2563
- Sn: zr,
2564
- Sb: Br,
2565
- Te: Tr,
2566
- I: Dr,
2567
- Xe: Or,
2568
- Cs: Zr,
2569
- Ba: Mr,
2570
- La: Lr,
2571
- Ce: Hr,
2572
- Pr: Ur,
2573
- Nd: Jr,
2574
- Pm: Vr,
2575
- Sm: Yr,
2576
- Eu: Gr,
2577
- Gd: Kr,
2578
- Tb: Qr,
2579
- Dy: Wr,
2580
- Ho: Xr,
2581
- Er: qr,
2582
- Tm: $r,
2583
- Yb: ti,
2584
- Lu: ni,
2585
- Hf: ei,
2586
- Ta: ri,
2587
- W: ii,
2588
- Re: oi,
2589
- Os: si,
2590
- Ir: ai,
2591
- Pt: ci,
2592
- Au: li,
2593
- Hg: _i,
2594
- Tl: mi,
2595
- Pb: gi,
2596
- Bi: ui,
2597
- Po: di,
2598
- At: pi,
2599
- Rn: hi,
2600
- Fr: fi,
2601
- Ra: Pi,
2602
- Ac: vi,
2603
- Th: yi,
2604
- Pa: bi,
2605
- U: xi,
2606
- Np: wi,
2607
- Pu: Ai,
2608
- Am: ki,
2609
- Cm: ji,
2610
- Bk: Ci,
2611
- Cf: Ri,
2612
- Es: Ii,
2613
- Fm: Si,
2614
- Md: Ni,
2615
- No: Fi,
2616
- Lr: Ei,
2617
- Rf: zi,
2618
- Db: Bi,
2619
- Sg: Ti,
2620
- Bh: Di,
2621
- Hs: Oi,
2622
- Mt: Zi,
2623
- Ds: Mi,
2624
- Rg: Li,
2625
- Cn: Hi,
2626
- Nh: Ui,
2627
- Fl: Ji,
2628
- Mc: Vi,
2629
- Lv: Yi,
2630
- Ts: Gi,
2631
- Og: Ki
2589
+ }, ci = {
2590
+ H: Xe,
2591
+ He: qe,
2592
+ Li: $e,
2593
+ Be: tr,
2594
+ B: nr,
2595
+ C: er,
2596
+ N: rr,
2597
+ O: or,
2598
+ F: ir,
2599
+ Ne: sr,
2600
+ Na: ar,
2601
+ Mg: cr,
2602
+ Al: lr,
2603
+ Si: _r,
2604
+ P: mr,
2605
+ S: gr,
2606
+ Cl: ur,
2607
+ Ar: dr,
2608
+ K: pr,
2609
+ Ca: hr,
2610
+ Sc: fr,
2611
+ Ti: vr,
2612
+ V: Pr,
2613
+ Cr: yr,
2614
+ Mn: br,
2615
+ Fe: xr,
2616
+ Co: wr,
2617
+ Ni: kr,
2618
+ Cu: Ar,
2619
+ Zn: jr,
2620
+ Ga: Cr,
2621
+ Ge: Sr,
2622
+ As: Rr,
2623
+ Se: Ir,
2624
+ Br: Nr,
2625
+ Kr: Fr,
2626
+ Rb: zr,
2627
+ Sr: Er,
2628
+ Y: Br,
2629
+ Zr: Tr,
2630
+ Nb: Dr,
2631
+ Mo: Or,
2632
+ Tc: Mr,
2633
+ Ru: Lr,
2634
+ Rh: Zr,
2635
+ Pd: Hr,
2636
+ Ag: Ur,
2637
+ Cd: Jr,
2638
+ In: Vr,
2639
+ Sn: Yr,
2640
+ Sb: Gr,
2641
+ Te: Kr,
2642
+ I: Qr,
2643
+ Xe: Wr,
2644
+ Cs: Xr,
2645
+ Ba: qr,
2646
+ La: $r,
2647
+ Ce: to,
2648
+ Pr: no,
2649
+ Nd: eo,
2650
+ Pm: ro,
2651
+ Sm: oo,
2652
+ Eu: io,
2653
+ Gd: so,
2654
+ Tb: ao,
2655
+ Dy: co,
2656
+ Ho: lo,
2657
+ Er: _o,
2658
+ Tm: mo,
2659
+ Yb: go,
2660
+ Lu: uo,
2661
+ Hf: po,
2662
+ Ta: ho,
2663
+ W: fo,
2664
+ Re: vo,
2665
+ Os: Po,
2666
+ Ir: yo,
2667
+ Pt: bo,
2668
+ Au: xo,
2669
+ Hg: wo,
2670
+ Tl: ko,
2671
+ Pb: Ao,
2672
+ Bi: jo,
2673
+ Po: Co,
2674
+ At: So,
2675
+ Rn: Ro,
2676
+ Fr: Io,
2677
+ Ra: No,
2678
+ Ac: Fo,
2679
+ Th: zo,
2680
+ Pa: Eo,
2681
+ U: Bo,
2682
+ Np: To,
2683
+ Pu: Do,
2684
+ Am: Oo,
2685
+ Cm: Mo,
2686
+ Bk: Lo,
2687
+ Cf: Zo,
2688
+ Es: Ho,
2689
+ Fm: Uo,
2690
+ Md: Jo,
2691
+ No: Vo,
2692
+ Lr: Yo,
2693
+ Rf: Go,
2694
+ Db: Ko,
2695
+ Sg: Qo,
2696
+ Bh: Wo,
2697
+ Hs: Xo,
2698
+ Mt: qo,
2699
+ Ds: $o,
2700
+ Rg: ti,
2701
+ Cn: ni,
2702
+ Nh: ei,
2703
+ Fl: ri,
2704
+ Mc: oi,
2705
+ Lv: ii,
2706
+ Ts: si,
2707
+ Og: ai
2632
2708
  };
2633
- function Wi(t) {
2634
- var r = t.split(/(?=[A-Z])/), i = 0;
2709
+ function li(t) {
2710
+ var r = t.split(/(?=[A-Z])/), o = 0;
2635
2711
  return r.forEach((s) => {
2636
- let o = s.match(/\d+/), _ = o == null ? 1 : parseInt(o[0]);
2637
- i += _;
2638
- }), i;
2712
+ let i = s.match(/\d+/), _ = i == null ? 1 : parseInt(i[0]);
2713
+ o += _;
2714
+ }), o;
2639
2715
  }
2640
- function Xi(t) {
2716
+ function _i(t) {
2641
2717
  return t.split(/(?=[A-Z])/).length;
2642
2718
  }
2643
- function qi(t, r) {
2644
- var i = t.split(/(?=[A-Z])/);
2719
+ function mi(t, r) {
2720
+ var o = t.split(/(?=[A-Z])/);
2645
2721
  let s = 0;
2646
- return i.forEach((o) => {
2722
+ return o.forEach((i) => {
2647
2723
  var l;
2648
- const _ = o.match(/([a-zA-Z]+)(\d*)/), m = _[1], a = parseInt(_[2] || "1"), g = ((l = Qi[m]) == null ? void 0 : l.mz) || 0;
2724
+ const _ = i.match(/([a-zA-Z]+)(\d*)/), m = _[1], a = parseInt(_[2] || "1"), g = ((l = ci[m]) == null ? void 0 : l.mz) || 0;
2649
2725
  s += g * a;
2650
2726
  }), Math.round(s * 1e4 / (r.value * 6.0223));
2651
2727
  }
2652
- const jo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2728
+ const Di = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2653
2729
  __proto__: null,
2654
- calculateDensity: qi,
2655
- countNumberOfAtoms: Wi,
2656
- countNumberOfElements: Xi
2657
- }, Symbol.toStringTag, { value: "Module" })), Ot = {
2730
+ calculateDensity: mi,
2731
+ countNumberOfAtoms: li,
2732
+ countNumberOfElements: _i
2733
+ }, Symbol.toStringTag, { value: "Module" })), Mt = {
2658
2734
  1: {
2659
2735
  pg_int: "1",
2660
2736
  sg_int: "P1",
@@ -3805,14 +3881,14 @@ const jo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3805
3881
  sg_int: "Ia-3d",
3806
3882
  sg_int_short: "Ia-3d"
3807
3883
  }
3808
- }, Lt = {
3884
+ }, Ht = {
3809
3885
  a: "triclinic",
3810
3886
  m: "monoclinic",
3811
3887
  o: "orthorhombic",
3812
3888
  t: "tetragonal",
3813
3889
  h: "hexagonal",
3814
3890
  c: "cubic"
3815
- }, $i = {
3891
+ }, gi = {
3816
3892
  aP: "triclinic",
3817
3893
  mP: "simple monoclinic",
3818
3894
  mS: "base-centered monoclinic",
@@ -3828,39 +3904,39 @@ const jo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3828
3904
  cI: "body-centered cubic",
3829
3905
  cF: "face-centered cubic"
3830
3906
  };
3831
- function ut(t) {
3907
+ function dt(t) {
3832
3908
  if (t < 1 || t > 230)
3833
3909
  throw new Error(`Invalid space group number ${t}`);
3834
3910
  return t < 3 ? "a" : t < 16 ? "m" : t < 75 ? "o" : t < 143 ? "t" : t < 195 ? "h" : "c";
3835
3911
  }
3836
- function to(t) {
3837
- return t > 142 && t < 168 ? "trigonal" : Lt[ut(t)];
3912
+ function ui(t) {
3913
+ return t > 142 && t < 168 ? "trigonal" : Ht[dt(t)];
3838
3914
  }
3839
- function no(t) {
3840
- return [146, 148, 155, 160, 161, 166, 167].includes(t) ? "rhombohedral" : Lt[ut(t)];
3915
+ function di(t) {
3916
+ return [146, 148, 155, 160, 161, 166, 167].includes(t) ? "rhombohedral" : Ht[dt(t)];
3841
3917
  }
3842
- function eo(t) {
3843
- let r = Ot[t.toString()].sg_int_short.charAt(0), i = r;
3844
- ["A", "C"].includes(r) && (i = "S");
3845
- let s = ut(t) + i;
3846
- return [s, $i[s]];
3918
+ function pi(t) {
3919
+ let r = Mt[t.toString()].sg_int_short.charAt(0), o = r;
3920
+ ["A", "C"].includes(r) && (o = "S");
3921
+ let s = dt(t) + o;
3922
+ return [s, gi[s]];
3847
3923
  }
3848
- function Co(t) {
3924
+ function Oi(t) {
3849
3925
  if (t < 1 || t > 230)
3850
3926
  throw new Error(`Invalid space group number ${t}`);
3851
- let r = eo(t);
3927
+ let r = pi(t);
3852
3928
  return {
3853
- space_group_symbol: Ot[t.toString()].sg_int_short,
3854
- point_group_symbol: Ot[t.toString()].pg_int,
3855
- crystal_family_pearson: ut(t),
3856
- crystal_family: Lt[ut(t)],
3857
- crystal_system: to(t),
3858
- lattice_system: no(t),
3929
+ space_group_symbol: Mt[t.toString()].sg_int_short,
3930
+ point_group_symbol: Mt[t.toString()].pg_int,
3931
+ crystal_family_pearson: dt(t),
3932
+ crystal_family: Ht[dt(t)],
3933
+ crystal_system: ui(t),
3934
+ lattice_system: di(t),
3859
3935
  bravais_lattice_pearson: r[0],
3860
3936
  bravais_lattice: r[1]
3861
3937
  };
3862
3938
  }
3863
- function Ro(t) {
3939
+ function Mi(t) {
3864
3940
  return t.includes("P") ? [
3865
3941
  [1, 0, 0],
3866
3942
  [0, 1, 0],
@@ -3896,33 +3972,38 @@ function Ro(t) {
3896
3972
  ]);
3897
3973
  }
3898
3974
  export {
3899
- ao as DoiBadge,
3900
- mo as ExploreButton,
3901
- po as HashModal,
3902
- co as HelpButton,
3903
- ho as McCopyAccordion,
3904
- fo as McCopyExtraAccordion,
3905
- ve as McDropzone,
3906
- be as McHistoryList,
3907
- Po as McInfoAccordion,
3908
- bo as McShareButton,
3909
- yo as McStructureUpload,
3910
- uo as McloudCard,
3911
- lo as McloudSpinner,
3912
- Ae as RemoteStructureLoader,
3913
- Bt as SHARE_STORES,
3914
- _o as StructDownloadButton,
3915
- so as TestButton,
3916
- go as ToggleSwitch,
3917
- je as createHistoryStore,
3918
- Ao as createShareStore,
3919
- xo as formatChemicalFormula,
3920
- wo as formatSpaceGroupSymbol,
3921
- jo as formula,
3922
- Re as fromStructureShare,
3923
- Ro as getPrimToConvMatrix,
3924
- Co as getSymmetryInfo,
3925
- ko as matrix,
3926
- dn as shortHashForUrl,
3927
- vo as toStructureShare
3975
+ ce as DoiBadge,
3976
+ wi as ExploreButton,
3977
+ ji as HashModal,
3978
+ yi as HelpButton,
3979
+ Ot as KV_STORE_URL,
3980
+ zi as McAppHeader,
3981
+ Ci as McCopyAccordion,
3982
+ Si as McCopyExtraAccordion,
3983
+ Ae as McDropzone,
3984
+ Ce as McHistoryList,
3985
+ Ri as McInfoAccordion,
3986
+ Fi as McShareButton,
3987
+ Ni as McStructureUpload,
3988
+ Ai as McloudCard,
3989
+ bi as McloudSpinner,
3990
+ Ie as RemoteStructureLoader,
3991
+ xi as StructDownloadButton,
3992
+ Pi as TestButton,
3993
+ ki as ToggleSwitch,
3994
+ Fe as createHistoryStore,
3995
+ Te as fetchShare,
3996
+ Ei as formatChemicalFormula,
3997
+ Bi as formatSpaceGroupSymbol,
3998
+ Di as formula,
3999
+ Oe as fromStructureShare,
4000
+ Mi as getPrimToConvMatrix,
4001
+ Oi as getSymmetryInfo,
4002
+ Ti as matrix,
4003
+ Ee as shareIdFromLocation,
4004
+ vn as shareLinkFor,
4005
+ pn as shortHashForUrl,
4006
+ Pn as syncAddressBar,
4007
+ Ii as toStructureShare,
4008
+ Be as uploadShare
3928
4009
  };