@prosopo/procaptcha-bundle 0.3.42 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,24 +1,24 @@
1
- import { z as Y, r as f, l as J, d as Q, j as u, a as I, b as g, A as K, h as le, P as xe, R as Se, C as Pe, W as Oe, c as De, e as ke, f as He, g as Le, i as _e, L as Re, k as Me, m as We, n as Ue } from "./index-D2wR16rY.js";
2
- import { _ as je, a as Ge, b as ze, I as Fe, R as Be, g as Ke, c as $e, d as Ve, i as Ye, P as R, o as Xe, E as qe, e as P, f as C, h as $, j as ue, s as Ce, k as Je, l as Qe, w as de, t as re, m as Ze, n as et, r as tt, p as nt, q as rt, u as ot, A as at, W as st, K as ct, v as it, C as lt, x as ut, y as dt } from "./utils-DkNQ67NF.js";
3
- const ve = Y.object({
4
- account: Y.string().optional(),
5
- blockNumber: Y.number().optional(),
6
- providerUrl: Y.string().optional()
1
+ import { z as X, r as f, l as Q, d as Z, j as u, a as N, b as g, A as b, P as ve, R as Le, C as _e, W as He, c as Re, e as Ue, f as We, g as Me, h as Ge, L as je, i as ze, k as Be, m as Fe } from "./index-Bvarorfv.js";
2
+ import { _ as Ke, a as $e, b as Ve, I as Xe, R as Ye, g as qe, c as Je, d as Qe, i as Ze, P as U, u as et, o as tt, E as nt, e as O, f as x, h as $, j as de, s as Ae, k as rt, l as ot, w as pe, t as ae, m as at, n as st, p as Y, r as ct, q as it, v as lt, x as ut, A as dt, W as pt, K as ht, y as ft, C as gt, z as mt, B as wt } from "./utils-o59wPRMZ.js";
3
+ const Ee = X.object({
4
+ account: X.string().optional(),
5
+ blockNumber: X.number().optional(),
6
+ providerUrl: X.string().optional()
7
7
  });
8
- function pt() {
8
+ function bt() {
9
9
  if (console && console.warn) {
10
10
  for (var t, e = arguments.length, n = new Array(e), r = 0; r < e; r++)
11
11
  n[r] = arguments[r];
12
12
  typeof n[0] == "string" && (n[0] = "react-i18next:: ".concat(n[0])), (t = console).warn.apply(t, n);
13
13
  }
14
14
  }
15
- var pe = {};
16
- function ae() {
15
+ var he = {};
16
+ function ce() {
17
17
  for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++)
18
18
  e[n] = arguments[n];
19
- typeof e[0] == "string" && pe[e[0]] || (typeof e[0] == "string" && (pe[e[0]] = /* @__PURE__ */ new Date()), pt.apply(void 0, e));
19
+ typeof e[0] == "string" && he[e[0]] || (typeof e[0] == "string" && (he[e[0]] = /* @__PURE__ */ new Date()), bt.apply(void 0, e));
20
20
  }
21
- function he(t, e, n) {
21
+ function fe(t, e, n) {
22
22
  t.loadNamespaces(e, function() {
23
23
  if (t.isInitialized)
24
24
  n();
@@ -32,54 +32,54 @@ function he(t, e, n) {
32
32
  }
33
33
  });
34
34
  }
35
- function ht(t, e) {
35
+ function yt(t, e) {
36
36
  var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, r = e.languages[0], a = e.options ? e.options.fallbackLng : !1, o = e.languages[e.languages.length - 1];
37
37
  if (r.toLowerCase() === "cimode")
38
38
  return !0;
39
- var s = function(i, p) {
40
- var b = e.services.backendConnector.state["".concat(i, "|").concat(p)];
41
- return b === -1 || b === 2;
39
+ var s = function(c, p) {
40
+ var y = e.services.backendConnector.state["".concat(c, "|").concat(p)];
41
+ return y === -1 || y === 2;
42
42
  };
43
43
  return n.bindI18n && n.bindI18n.indexOf("languageChanging") > -1 && e.services.backendConnector.backend && e.isLanguageChangingTo && !s(e.isLanguageChangingTo, t) ? !1 : !!(e.hasResourceBundle(r, t) || !e.services.backendConnector.backend || e.options.resources && !e.options.partialBundledLanguages || s(r, t) && (!a || s(o, t)));
44
44
  }
45
- function ft(t, e) {
45
+ function Ct(t, e) {
46
46
  var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
47
47
  if (!e.languages || !e.languages.length)
48
- return ae("i18n.languages were undefined or empty", e.languages), !0;
48
+ return ce("i18n.languages were undefined or empty", e.languages), !0;
49
49
  var r = e.options.ignoreJSONStructure !== void 0;
50
50
  return r ? e.hasLoadedNamespace(t, {
51
51
  precheck: function(o, s) {
52
52
  if (n.bindI18n && n.bindI18n.indexOf("languageChanging") > -1 && o.services.backendConnector.backend && o.isLanguageChangingTo && !s(o.isLanguageChangingTo, t))
53
53
  return !1;
54
54
  }
55
- }) : ht(t, e, n);
55
+ }) : yt(t, e, n);
56
56
  }
57
- function gt(t, e) {
57
+ function xt(t, e) {
58
58
  var n = t == null ? null : typeof Symbol < "u" && t[Symbol.iterator] || t["@@iterator"];
59
59
  if (n != null) {
60
- var r, a, o, s, c = [], i = !0, p = !1;
60
+ var r, a, o, s, i = [], c = !0, p = !1;
61
61
  try {
62
62
  if (o = (n = n.call(t)).next, e !== 0)
63
- for (; !(i = (r = o.call(n)).done) && (c.push(r.value), c.length !== e); i = !0)
63
+ for (; !(c = (r = o.call(n)).done) && (i.push(r.value), i.length !== e); c = !0)
64
64
  ;
65
- } catch (b) {
66
- p = !0, a = b;
65
+ } catch (y) {
66
+ p = !0, a = y;
67
67
  } finally {
68
68
  try {
69
- if (!i && n.return != null && (s = n.return(), Object(s) !== s))
69
+ if (!c && n.return != null && (s = n.return(), Object(s) !== s))
70
70
  return;
71
71
  } finally {
72
72
  if (p)
73
73
  throw a;
74
74
  }
75
75
  }
76
- return c;
76
+ return i;
77
77
  }
78
78
  }
79
- function mt(t, e) {
80
- return je(t) || gt(t, e) || Ge(t, e) || ze();
79
+ function vt(t, e) {
80
+ return Ke(t) || xt(t, e) || $e(t, e) || Ve();
81
81
  }
82
- function fe(t, e) {
82
+ function ge(t, e) {
83
83
  var n = Object.keys(t);
84
84
  if (Object.getOwnPropertySymbols) {
85
85
  var r = Object.getOwnPropertySymbols(t);
@@ -89,80 +89,80 @@ function fe(t, e) {
89
89
  }
90
90
  return n;
91
91
  }
92
- function oe(t) {
92
+ function se(t) {
93
93
  for (var e = 1; e < arguments.length; e++) {
94
94
  var n = arguments[e] != null ? arguments[e] : {};
95
- e % 2 ? fe(Object(n), !0).forEach(function(r) {
96
- $e(t, r, n[r]);
97
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(n)) : fe(Object(n)).forEach(function(r) {
95
+ e % 2 ? ge(Object(n), !0).forEach(function(r) {
96
+ Je(t, r, n[r]);
97
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(n)) : ge(Object(n)).forEach(function(r) {
98
98
  Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(n, r));
99
99
  });
100
100
  }
101
101
  return t;
102
102
  }
103
- var wt = function(e, n) {
103
+ var At = function(e, n) {
104
104
  var r = f.useRef();
105
105
  return f.useEffect(function() {
106
106
  r.current = e;
107
107
  }, [e, n]), r.current;
108
108
  };
109
- function bt(t) {
110
- var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, n = e.i18n, r = f.useContext(Fe) || {}, a = r.i18n, o = n || a || Ve();
111
- if (o && !o.reportNamespaces && (o.reportNamespaces = new Be()), !o) {
112
- ae("You will need to pass in an i18next instance by using initReactI18next");
109
+ function Et(t) {
110
+ var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, n = e.i18n, r = f.useContext(Xe) || {}, a = r.i18n, o = n || a || Qe();
111
+ if (o && !o.reportNamespaces && (o.reportNamespaces = new Ye()), !o) {
112
+ ce("You will need to pass in an i18next instance by using initReactI18next");
113
113
  var s = function(E) {
114
114
  return Array.isArray(E) ? E[E.length - 1] : E;
115
- }, c = [s, {}, !1];
116
- return c.t = s, c.i18n = {}, c.ready = !1, c;
115
+ }, i = [s, {}, !1];
116
+ return i.t = s, i.i18n = {}, i.ready = !1, i;
117
117
  }
118
- o.options.react && o.options.react.wait !== void 0 && ae("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");
119
- var i = oe(oe(oe({}, Ke()), o.options.react), e), p = i.useSuspense, b = i.keyPrefix, m = t;
118
+ o.options.react && o.options.react.wait !== void 0 && ce("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");
119
+ var c = se(se(se({}, qe()), o.options.react), e), p = c.useSuspense, y = c.keyPrefix, m = t;
120
120
  m = typeof m == "string" ? [m] : m || ["translation"], o.reportNamespaces.addUsedNamespaces && o.reportNamespaces.addUsedNamespaces(m);
121
- var O = (o.isInitialized || o.initializedStoreOnce) && m.every(function(A) {
122
- return ft(A, o, i);
121
+ var k = (o.isInitialized || o.initializedStoreOnce) && m.every(function(A) {
122
+ return Ct(A, o, c);
123
123
  });
124
- function v() {
125
- return o.getFixedT(null, i.nsMode === "fallback" ? m : m[0], b);
124
+ function I() {
125
+ return o.getFixedT(null, c.nsMode === "fallback" ? m : m[0], y);
126
126
  }
127
- var Z = f.useState(v), M = mt(Z, 2), j = M[0], L = M[1], G = m.join(), F = wt(G), _ = f.useRef(!0);
127
+ var ee = f.useState(I), W = vt(ee, 2), j = W[0], H = W[1], z = m.join(), F = At(z), R = f.useRef(!0);
128
128
  f.useEffect(function() {
129
- var A = i.bindI18n, E = i.bindI18nStore;
130
- _.current = !0, !O && !p && he(o, m, function() {
131
- _.current && L(v);
132
- }), O && F && F !== G && _.current && L(v);
133
- function W() {
134
- _.current && L(v);
129
+ var A = c.bindI18n, E = c.bindI18nStore;
130
+ R.current = !0, !k && !p && fe(o, m, function() {
131
+ R.current && H(I);
132
+ }), k && F && F !== z && R.current && H(I);
133
+ function M() {
134
+ R.current && H(I);
135
135
  }
136
- return A && o && o.on(A, W), E && o && o.store.on(E, W), function() {
137
- _.current = !1, A && o && A.split(" ").forEach(function(V) {
138
- return o.off(V, W);
136
+ return A && o && o.on(A, M), E && o && o.store.on(E, M), function() {
137
+ R.current = !1, A && o && A.split(" ").forEach(function(V) {
138
+ return o.off(V, M);
139
139
  }), E && o && E.split(" ").forEach(function(V) {
140
- return o.store.off(V, W);
140
+ return o.store.off(V, M);
141
141
  });
142
142
  };
143
- }, [o, G]);
144
- var T = f.useRef(!0);
143
+ }, [o, z]);
144
+ var S = f.useRef(!0);
145
145
  f.useEffect(function() {
146
- _.current && !T.current && L(v), T.current = !1;
147
- }, [o, b]);
148
- var x = [j, o, O];
149
- if (x.t = j, x.i18n = o, x.ready = O, O || !O && !p)
150
- return x;
146
+ R.current && !S.current && H(I), S.current = !1;
147
+ }, [o, y]);
148
+ var v = [j, o, k];
149
+ if (v.t = j, v.i18n = o, v.ready = k, k || !k && !p)
150
+ return v;
151
151
  throw new Promise(function(A) {
152
- he(o, m, function() {
152
+ fe(o, m, function() {
153
153
  A();
154
154
  });
155
155
  });
156
156
  }
157
- function yt(t) {
158
- return bt("translation", { i18n: Ye, ...t });
157
+ function It(t) {
158
+ return Et("translation", { i18n: Ze, ...t });
159
159
  }
160
- const xt = (t) => {
160
+ const Tt = (t) => {
161
161
  if (!t.hash)
162
- throw new R("CAPTCHA.MISSING_ITEM_HASH", { context: { item: t } });
162
+ throw new U("CAPTCHA.MISSING_ITEM_HASH", { context: { item: t } });
163
163
  return t.hash;
164
- }, Ct = ({ challenge: t, solution: e, onClick: n, themeColor: r }) => {
165
- const a = t.captcha.items, o = f.useMemo(() => r === "light" ? J : Q, [r]), s = "ontouchstart" in window;
164
+ }, Nt = ({ challenge: t, solution: e, onClick: n, themeColor: r }) => {
165
+ const a = t.captcha.items, o = f.useMemo(() => r === "light" ? Q : Z, [r]), s = "ontouchstart" in window;
166
166
  return u("div", { style: {
167
167
  paddingRight: 0.5,
168
168
  paddingBottom: 0.5,
@@ -171,15 +171,15 @@ const xt = (t) => {
171
171
  display: "flex",
172
172
  flexDirection: "row",
173
173
  flexWrap: "wrap"
174
- }, children: a.map((c, i) => {
175
- const p = xt(c);
174
+ }, children: a.map((i, c) => {
175
+ const p = Tt(i);
176
176
  return u("div", { style: {
177
177
  paddingTop: "4px",
178
178
  paddingLeft: "4px",
179
179
  flexGrow: 1,
180
180
  flexBasis: "33.3333%",
181
181
  boxSizing: "border-box"
182
- }, children: I("div", { style: { cursor: "pointer", height: "100%", width: "100%" }, onClick: s ? void 0 : () => n(p), onTouchStart: s ? () => n(p) : void 0, children: [u("div", { style: { border: 1, borderColor: o.palette.grey[300] }, children: u("img", { style: {
182
+ }, children: N("div", { style: { cursor: "pointer", height: "100%", width: "100%" }, onClick: s ? void 0 : () => n(p), onTouchStart: s ? () => n(p) : void 0, children: [u("div", { style: { border: 1, borderColor: o.palette.grey[300] }, children: u("img", { style: {
183
183
  width: "100%",
184
184
  backgroundColor: o.palette.grey[300],
185
185
  opacity: e.includes(p) && s ? "50%" : "100%",
@@ -187,7 +187,7 @@ const xt = (t) => {
187
187
  objectFit: "contain",
188
188
  aspectRatio: "1/1",
189
189
  height: "auto"
190
- }, src: c.data, alt: `Captcha image ${i + 1}` }) }), u("div", { style: {
190
+ }, src: i.data, alt: `Captcha image ${c + 1}` }) }), u("div", { style: {
191
191
  position: "relative",
192
192
  width: "100%",
193
193
  height: "100%",
@@ -215,18 +215,18 @@ const xt = (t) => {
215
215
  transition: "fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms",
216
216
  userSelect: "none",
217
217
  fill: "currentcolor"
218
- }, focusable: "false", color: "#fff", "aria-hidden": "true", viewBox: "0 0 24 24", "data-testid": "CheckIcon", children: u("path", { d: "M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) }) }) })] }) }, i);
218
+ }, focusable: "false", color: "#fff", "aria-hidden": "true", viewBox: "0 0 24 24", "data-testid": "CheckIcon", "aria-label": "Check icon", children: u("path", { d: "M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) }) }) })] }) }, c);
219
219
  }) });
220
- };
221
- function vt(t = {}) {
220
+ }, St = (t) => Array.isArray(t) && t !== null, me = (t) => St(t) ? et(new Uint8Array(t)) : t.toString();
221
+ function Pt(t = {}) {
222
222
  return Object.keys(t).reduce((e, n) => ({ ...e, [`data-${n}`]: t[n] }), {});
223
223
  }
224
- function se({ general: t, dev: e }) {
224
+ function ie({ general: t, dev: e }) {
225
225
  return {
226
- ...vt(t)
226
+ ...Pt(t)
227
227
  };
228
228
  }
229
- const At = {
229
+ const Ot = {
230
230
  display: "inline-flex",
231
231
  alignItems: "center",
232
232
  justifyContent: "center",
@@ -252,25 +252,25 @@ const At = {
252
252
  color: "rgb(0, 0, 0)",
253
253
  backgroundColor: "#ffffff",
254
254
  boxShadow: "rgba(0, 0, 0, 0.2) 0px 3px 1px -2px, rgba(0, 0, 0, 0.14) 0px 2px 2px 0px, rgba(0, 0, 0, 0.12) 0px 1px 5px 0px"
255
- }, ge = ({ themeColor: t, buttonType: e, text: n, onClick: r }) => {
256
- const a = f.useMemo(() => t === "light" ? J : Q, [t]), [o, s] = f.useState(!1), c = f.useMemo(() => {
257
- const i = {
258
- ...At,
255
+ }, we = ({ themeColor: t, buttonType: e, text: n, onClick: r }) => {
256
+ const a = f.useMemo(() => t === "light" ? Q : Z, [t]), [o, s] = f.useState(!1), i = f.useMemo(() => {
257
+ const c = {
258
+ ...Ot,
259
259
  color: o ? a.palette.primary.contrastText : a.palette.background.contrastText
260
260
  };
261
261
  return e === "cancel" ? {
262
- ...i,
262
+ ...c,
263
263
  backgroundColor: o ? a.palette.grey[600] : "transparent"
264
264
  } : {
265
- ...i,
265
+ ...c,
266
266
  backgroundColor: o ? a.palette.primary.main : a.palette.background.default
267
267
  };
268
268
  }, [e, o, a]);
269
- return u("button", { ...se({ dev: { cy: `button-${e}` } }), onMouseEnter: () => s(!0), onMouseLeave: () => s(!1), style: c, onClick: (i) => {
270
- i.preventDefault(), r();
271
- }, children: n });
272
- }, Et = ({ challenge: t, index: e, solutions: n, onSubmit: r, onCancel: a, onClick: o, onNext: s, themeColor: c }) => {
273
- const { t: i } = yt(), p = t.captchas ? g(t.captchas, e) : null, b = n ? g(n, e) : [], m = f.useMemo(() => c === "light" ? J : Q, [c]);
269
+ return u("button", { ...ie({ dev: { cy: `button-${e}` } }), onMouseEnter: () => s(!0), onMouseLeave: () => s(!1), style: i, onClick: (c) => {
270
+ c.preventDefault(), r();
271
+ }, "aria-label": n, children: n });
272
+ }, kt = ({ challenge: t, index: e, solutions: n, onSubmit: r, onCancel: a, onClick: o, onNext: s, themeColor: i }) => {
273
+ const { t: c } = It(), p = t.captchas ? g(t.captchas, e) : null, y = n ? g(n, e) : [], m = f.useMemo(() => i === "light" ? Q : Z, [i]);
274
274
  return u(f.Suspense, { fallback: u("div", { children: "Loading..." }), children: u("div", { style: {
275
275
  overflowX: "auto",
276
276
  overflowY: "auto",
@@ -279,143 +279,143 @@ const At = {
279
279
  maxHeight: "100%",
280
280
  display: "flex",
281
281
  flexDirection: "column"
282
- }, children: I("div", { style: {
282
+ }, children: N("div", { style: {
283
283
  backgroundColor: m.palette.background.default,
284
284
  display: "flex",
285
285
  flexDirection: "column",
286
286
  minWidth: "300px"
287
- }, children: [I("div", { style: {
287
+ }, children: [N("div", { style: {
288
288
  display: "flex",
289
289
  alignItems: "center",
290
290
  width: "100%",
291
291
  backgroundColor: m.palette.primary.main,
292
292
  padding: "24px 16px"
293
- }, children: [I("p", { style: {
293
+ }, children: [N("p", { style: {
294
294
  color: "#ffffff",
295
295
  fontWeight: 700,
296
296
  lineHeight: 1.5
297
- }, children: [i("WIDGET.SELECT_ALL"), ": "] }), u("p", { style: {
297
+ }, children: [c("WIDGET.SELECT_ALL"), ": "] }), u("p", { style: {
298
298
  color: "#ffffff",
299
299
  fontWeight: 700,
300
300
  textTransform: "capitalize",
301
301
  lineHeight: 1.5
302
- }, children: `${g(t.captchas, e).captcha.target}` })] }), u("div", { ...se({ dev: { cy: "captcha-" + e } }), children: p && u(Ct, { challenge: p, solution: b, onClick: o, themeColor: c }) }), u("div", { style: {
302
+ }, children: `${g(t.captchas, e).captcha.target}` })] }), u("div", { ...ie({ dev: { cy: "captcha-" + e } }), children: p && u(Nt, { challenge: p, solution: y, onClick: o, themeColor: i }) }), u("div", { style: {
303
303
  display: "flex",
304
304
  alignItems: "center",
305
305
  justifyContent: "center",
306
306
  width: "100%"
307
- }, ...se({ dev: { cy: "dots-captcha" } }) }), u("div", { style: {
307
+ }, ...ie({ dev: { cy: "dots-captcha" } }) }), u("div", { style: {
308
308
  padding: "8px 16px",
309
309
  display: "flex",
310
310
  width: "100%"
311
- } }), I("div", { style: {
311
+ } }), N("div", { style: {
312
312
  padding: "0 16px 16px",
313
313
  display: "flex",
314
314
  alignItems: "center",
315
315
  justifyContent: "space-between",
316
316
  lineHeight: 1.75
317
- }, children: [u(ge, { themeColor: c, buttonType: "cancel", onClick: a, text: i("WIDGET.CANCEL") }), u(ge, { themeColor: c, buttonType: "next", text: e < t.captchas.length - 1 ? i("WIDGET.NEXT") : i("WIDGET.SUBMIT"), onClick: e < t.captchas.length - 1 ? s : r })] })] }) }) });
317
+ }, children: [u(we, { themeColor: i, buttonType: "cancel", onClick: a, text: c("WIDGET.CANCEL"), "aria-label": c("WIDGET.CANCEL") }), u(we, { themeColor: i, buttonType: "next", text: e < t.captchas.length - 1 ? c("WIDGET.NEXT") : c("WIDGET.SUBMIT"), onClick: e < t.captchas.length - 1 ? s : r, "aria-label": e < t.captchas.length - 1 ? c("WIDGET.NEXT") : c("WIDGET.SUBMIT") })] })] }) }) });
318
318
  };
319
- function It(t) {
319
+ function Dt(t) {
320
320
  return new Promise((e) => {
321
321
  document.readyState === "complete" ? e(t()) : window.addEventListener("load", () => e(t()));
322
322
  });
323
323
  }
324
- const q = window;
325
- q.injectedWeb3 = q.injectedWeb3 || {};
326
- Ae();
327
- let me = null;
328
- function Ae() {
329
- return Object.values(q.injectedWeb3).filter(({ connect: t, enable: e }) => !!(t || e)).length !== 0;
324
+ const J = window;
325
+ J.injectedWeb3 = J.injectedWeb3 || {};
326
+ Ie();
327
+ let be = null;
328
+ function Ie() {
329
+ return Object.values(J.injectedWeb3).filter(({ connect: t, enable: e }) => !!(t || e)).length !== 0;
330
330
  }
331
- function Tt(t) {
332
- return Promise.all(Object.entries(q.injectedWeb3).map(([e, { connect: n, enable: r, version: a }]) => Promise.resolve().then(() => n ? n(t) : r ? r(t).then((o) => Xe({ name: e, version: a || "unknown" }, o)) : Promise.reject(new Error("No connect(..) or enable(...) hook found"))).catch(({ message: o }) => {
331
+ function Lt(t) {
332
+ return Promise.all(Object.entries(J.injectedWeb3).map(([e, { connect: n, enable: r, version: a }]) => Promise.resolve().then(() => n ? n(t) : r ? r(t).then((o) => tt({ name: e, version: a || "unknown" }, o)) : Promise.reject(new Error("No connect(..) or enable(...) hook found"))).catch(({ message: o }) => {
333
333
  console.error(`Error initializing ${e}: ${o}`);
334
334
  }))).then((e) => e.filter((n) => !!n));
335
335
  }
336
- function Nt(t, e = []) {
336
+ function _t(t, e = []) {
337
337
  if (!t)
338
338
  throw new Error("You must pass a name for your app to the web3Enable function");
339
339
  const n = e.length ? Promise.all(e.map((r) => r().catch(() => !1))) : Promise.resolve([!0]);
340
- return me = It(() => n.then(() => Tt(t).then((r) => r.map((a) => (a.accounts.subscribe || (a.accounts.subscribe = (o) => (a.accounts.get().then(o).catch(console.error), () => {
340
+ return be = Dt(() => n.then(() => Lt(t).then((r) => r.map((a) => (a.accounts.subscribe || (a.accounts.subscribe = (o) => (a.accounts.get().then(o).catch(console.error), () => {
341
341
  })), a))).catch(() => []).then((r) => {
342
342
  const a = r.map(({ name: o, version: s }) => `${o}/${s}`);
343
- return Ae(), `${r.length}`, r.length, `${a.join(", ")}`, r;
344
- }))), me;
343
+ return Ie(), `${r.length}`, r.length, `${a.join(", ")}`, r;
344
+ }))), be;
345
345
  }
346
- class St extends qe {
346
+ class Ht extends nt {
347
347
  async getAccount(e) {
348
348
  const { dappName: n, userAccountAddress: r } = e;
349
349
  if (!r)
350
- throw new P("WIDGET.NO_ACCOUNTS_FOUND", { context: { error: "No account address provided" } });
351
- const a = await Nt(n);
350
+ throw new O("WIDGET.NO_ACCOUNTS_FOUND", { context: { error: "No account address provided" } });
351
+ const a = await _t(n);
352
352
  if (a.length === 0)
353
- throw new P("WIDGET.NO_EXTENSION_FOUND");
353
+ throw new O("WIDGET.NO_EXTENSION_FOUND");
354
354
  for (const o of a) {
355
- const c = (await o.accounts.get()).find((i) => i.address === r);
356
- if (c)
357
- return { account: c, extension: o };
355
+ const i = (await o.accounts.get()).find((c) => c.address === r);
356
+ if (i)
357
+ return { account: i, extension: o };
358
358
  }
359
- throw new P("WIDGET.ACCOUNT_NOT_FOUND", {
359
+ throw new O("WIDGET.ACCOUNT_NOT_FOUND", {
360
360
  context: { error: `No account found matching ${r}` }
361
361
  });
362
362
  }
363
363
  }
364
- async function Pt(t) {
364
+ async function Rt(t) {
365
365
  try {
366
366
  const e = await fetch(t);
367
367
  if (!e.ok)
368
- throw new R("API.BAD_REQUEST", {
368
+ throw new U("API.BAD_REQUEST", {
369
369
  context: { error: `Network response was not ok, status: ${e.status}`, url: t }
370
370
  });
371
371
  const n = await e.arrayBuffer();
372
372
  return new Uint8Array(n);
373
373
  } catch (e) {
374
- throw new C("DATABASE.IMAGE_GET_FAILED", { context: { error: e } });
374
+ throw new x("DATABASE.IMAGE_GET_FAILED", { context: { error: e } });
375
375
  }
376
376
  }
377
- const Ot = "NO_SOLUTION";
378
- function Ee(t, e = !1, n = !1, r) {
377
+ const Ut = "NO_SOLUTION";
378
+ function Te(t, e = !1, n = !1, r) {
379
379
  try {
380
380
  const a = t.items.map((o, s) => {
381
381
  if (o.hash)
382
382
  return o.hash;
383
- throw new R("CAPTCHA.MISSING_ITEM_HASH", {
383
+ throw new U("CAPTCHA.MISSING_ITEM_HASH", {
384
384
  context: {
385
- computeCaptchaHashName: Ee.name,
385
+ computeCaptchaHashName: Te.name,
386
386
  index: s
387
387
  }
388
388
  });
389
389
  });
390
390
  return $([
391
391
  t.target,
392
- ...e ? Dt(t.solution) : [],
392
+ ...e ? Wt(t.solution) : [],
393
393
  n ? t.salt : "",
394
394
  r ? a.sort() : a
395
395
  ]);
396
396
  } catch (a) {
397
- throw new R("DATASET.HASH_ERROR", { context: { error: a } });
397
+ throw new U("DATASET.HASH_ERROR", { context: { error: a } });
398
398
  }
399
399
  }
400
- function Dt(t) {
401
- return t !== void 0 ? t.sort() : [Ot];
400
+ function Wt(t) {
401
+ return t !== void 0 ? t.sort() : [Ut];
402
402
  }
403
- async function kt(t) {
403
+ async function Mt(t) {
404
404
  if (t.type === "text")
405
- return { ...t, hash: ue(t.data) };
405
+ return { ...t, hash: de(t.data) };
406
406
  if (t.type === "image")
407
- return { ...t, hash: ue(await Pt(t.data)) };
408
- throw new R("CAPTCHA.INVALID_ITEM_FORMAT");
407
+ return { ...t, hash: de(await Rt(t.data)) };
408
+ throw new U("CAPTCHA.INVALID_ITEM_FORMAT");
409
409
  }
410
- function Ht(t) {
410
+ function Gt(t) {
411
411
  return $([t.captchaId, t.captchaContentId, [...t.solution].sort(), t.salt]);
412
412
  }
413
- class we {
413
+ class ye {
414
414
  constructor(e) {
415
415
  this.hash = e, this.parent = null;
416
416
  }
417
417
  }
418
- class Lt {
418
+ class jt {
419
419
  constructor() {
420
420
  this.leaves = [], this.layers = [];
421
421
  }
@@ -423,7 +423,7 @@ class Lt {
423
423
  this.layers.length && (this.layers = []);
424
424
  const n = [];
425
425
  for (const r of e) {
426
- const a = new we(r);
426
+ const a = new ye(r);
427
427
  this.leaves.push(a), n.push(a.hash);
428
428
  }
429
429
  this.layers.push(n), this.root = this.buildMerkleTree(this.leaves)[0];
@@ -438,14 +438,14 @@ class Lt {
438
438
  for (; a < n; ) {
439
439
  const s = e[a];
440
440
  if (s === void 0)
441
- throw new P("DEVELOPER.GENERAL", { context: { error: "leftChild undefined" } });
442
- const c = a + 1 < n ? g(e, a + 1) : s, i = this.createParent(s, c);
443
- o.push(i.hash), r.push(i), a += 2;
441
+ throw new O("DEVELOPER.GENERAL", { context: { error: "leftChild undefined" } });
442
+ const i = a + 1 < n ? g(e, a + 1) : s, c = this.createParent(s, i);
443
+ o.push(c.hash), r.push(c), a += 2;
444
444
  }
445
445
  return this.layers.push(o), this.buildMerkleTree(r);
446
446
  }
447
447
  createParent(e, n) {
448
- const r = new we($([e.hash, n.hash]));
448
+ const r = new ye($([e.hash, n.hash]));
449
449
  return e.parent = r.hash, n.parent = r.hash, r;
450
450
  }
451
451
  proof(e) {
@@ -454,20 +454,20 @@ class Lt {
454
454
  for (; r < this.layers.length - 1; ) {
455
455
  const o = this.layers[r];
456
456
  if (o === void 0)
457
- throw new P("DATASET.MERKLE_ERROR", {
457
+ throw new O("DATASET.MERKLE_ERROR", {
458
458
  context: { error: "layer undefined", failedFuncName: this.proof.name, layerNum: r }
459
459
  });
460
460
  const s = o.indexOf(e);
461
- let c = s % 2 && s > 0 ? s - 1 : s + 1;
462
- c > o.length - 1 && (c = s);
463
- const i = [e], p = g(o, c);
464
- c > s ? i.push(p) : i.unshift(p), n.push([g(i, 0), g(i, 1)]), r += 1, e = $(i);
461
+ let i = s % 2 && s > 0 ? s - 1 : s + 1;
462
+ i > o.length - 1 && (i = s);
463
+ const c = [e], p = g(o, i);
464
+ i > s ? c.push(p) : c.unshift(p), n.push([g(c, 0), g(c, 1)]), r += 1, e = $(c);
465
465
  }
466
466
  const a = g(this.layers, this.layers.length - 1);
467
467
  return [...n, [g(a, 0)]];
468
468
  }
469
469
  }
470
- function _t(t, e) {
470
+ function zt(t, e) {
471
471
  try {
472
472
  if (g(e, 0).indexOf(t) === -1)
473
473
  return !1;
@@ -483,7 +483,7 @@ function _t(t, e) {
483
483
  return !1;
484
484
  }
485
485
  }
486
- class Rt {
486
+ class Bt {
487
487
  constructor(e, n, r, a, o, s) {
488
488
  this.userAccount = e, this.contract = n, this.provider = r, this.providerApi = a, this._web2 = o, this.dappAccount = s;
489
489
  }
@@ -499,69 +499,69 @@ class Rt {
499
499
  });
500
500
  }), e;
501
501
  } catch (e) {
502
- throw new C("CAPTCHA.INVALID_CAPTCHA_CHALLENGE", { context: { error: e } });
502
+ throw new x("CAPTCHA.INVALID_CAPTCHA_CHALLENGE", { context: { error: e } });
503
503
  }
504
504
  }
505
505
  verifyCaptchaChallengeContent(e, n) {
506
506
  const r = g(n.captchas, 0), a = r.proof.length, o = g(r.proof, a - 1);
507
507
  if (e.provider.datasetIdContent.toString() !== g(o, 0))
508
- throw new C("CAPTCHA.INVALID_DATASET_CONTENT_ID");
508
+ throw new x("CAPTCHA.INVALID_DATASET_CONTENT_ID");
509
509
  for (const s of n.captchas) {
510
- if (!Mt(s))
511
- throw new C("CAPTCHA.INVALID_CAPTCHA_CHALLENGE");
512
- if (!_t(s.captcha.captchaContentId, s.proof))
513
- throw new C("CAPTCHA.INVALID_CAPTCHA_CHALLENGE");
510
+ if (!Ft(s))
511
+ throw new x("CAPTCHA.INVALID_CAPTCHA_CHALLENGE");
512
+ if (!zt(s.captcha.captchaContentId, s.proof))
513
+ throw new x("CAPTCHA.INVALID_CAPTCHA_CHALLENGE");
514
514
  }
515
515
  }
516
516
  async submitCaptchaSolution(e, n, r, a, o) {
517
- const s = new Lt(), c = a.map((v) => Ht(v));
518
- s.build(c);
519
- const i = s.root.hash, p = void 0;
520
- let b;
517
+ const s = new jt(), i = a.map((I) => Gt(I));
518
+ s.build(i);
519
+ const c = s.root.hash, p = void 0;
520
+ let y;
521
521
  if (!e || !e.signRaw)
522
- throw new C("GENERAL.CANT_FIND_KEYRINGPAIR", {
522
+ throw new x("GENERAL.CANT_FIND_KEYRINGPAIR", {
523
523
  context: { error: "Signer is not defined, cannot sign message to prove account ownership" }
524
524
  });
525
525
  let m;
526
- b = (await e.signRaw({
526
+ y = (await e.signRaw({
527
527
  address: this.userAccount,
528
- data: Ce(n),
528
+ data: Ae(n),
529
529
  type: "bytes"
530
530
  })).signature;
531
531
  try {
532
- m = await this.providerApi.submitCaptchaSolution(a, n, this.contract.pair.address, o, b);
533
- } catch (v) {
534
- throw new R("CAPTCHA.INVALID_CAPTCHA_CHALLENGE", { context: { error: v } });
532
+ m = await this.providerApi.submitCaptchaSolution(a, n, this.contract.pair.address, o, y);
533
+ } catch (I) {
534
+ throw new U("CAPTCHA.INVALID_CAPTCHA_CHALLENGE", { context: { error: I } });
535
535
  }
536
- return [m, i, p];
536
+ return [m, c, p];
537
537
  }
538
538
  }
539
- async function Mt(t) {
539
+ async function Ft(t) {
540
540
  const e = t.captcha, n = t.proof;
541
- if (!(await Promise.all(e.items.map(async (a) => (await kt(a)).hash === a.hash))).every((a) => a === !0))
541
+ if (!(await Promise.all(e.items.map(async (a) => (await Mt(a)).hash === a.hash))).every((a) => a === !0))
542
542
  return !1;
543
- const r = Ee(e, !1, !1, !1);
543
+ const r = Te(e, !1, !1, !1);
544
544
  return r !== e.captchaContentId ? !1 : g(n, 0).indexOf(r) !== -1;
545
545
  }
546
- const Ie = "@prosopo/procaptcha";
547
- function ce() {
548
- return ve.parse(JSON.parse(Je(localStorage.getItem(Ie) || "0x7b7d")));
546
+ const Ne = "@prosopo/procaptcha";
547
+ function le() {
548
+ return Ee.parse(JSON.parse(rt(localStorage.getItem(Ne) || "0x7b7d")));
549
549
  }
550
- function Te(t) {
551
- localStorage.setItem(Ie, Ce(JSON.stringify(ve.parse(t))));
550
+ function Se(t) {
551
+ localStorage.setItem(Ne, Ae(JSON.stringify(Ee.parse(t))));
552
552
  }
553
- function Wt(t) {
554
- Te({ ...ce(), account: t });
553
+ function Kt(t) {
554
+ Se({ ...le(), account: t });
555
555
  }
556
- function Ut() {
557
- return ce().account || null;
556
+ function $t() {
557
+ return le().account || null;
558
558
  }
559
- const z = {
560
- setAccount: Wt,
561
- getAccount: Ut,
562
- setProcaptchaStorage: Te,
563
- getProcaptchaStorage: ce
564
- }, jt = () => ({
559
+ const B = {
560
+ setAccount: Kt,
561
+ getAccount: $t,
562
+ setProcaptchaStorage: Se,
563
+ getProcaptchaStorage: le
564
+ }, Vt = () => ({
565
565
  showModal: !1,
566
566
  loading: !1,
567
567
  index: 0,
@@ -570,269 +570,281 @@ const z = {
570
570
  isHuman: !1,
571
571
  captchaApi: void 0,
572
572
  account: void 0
573
- }), be = (t) => {
573
+ }), Ce = (t) => {
574
574
  const e = t.networks[t.defaultNetwork];
575
575
  if (!e)
576
- throw new C("DEVELOPER.NETWORK_NOT_FOUND", {
576
+ throw new x("DEVELOPER.NETWORK_NOT_FOUND", {
577
577
  context: { error: `No network found for environment ${t.defaultEnvironment}` }
578
578
  });
579
579
  return e;
580
580
  };
581
- function Gt(t, e, n, r) {
582
- const a = Qe(n, e, r), o = (l) => {
581
+ function Xt(t, e, n, r) {
582
+ const a = ot(n, e, r), o = (l) => {
583
583
  const d = l instanceof Error ? l : new Error(String(l));
584
584
  a.onError(d);
585
- }, s = Ze(e, n), c = () => {
585
+ }, s = at(e, n), i = () => {
586
586
  const l = {
587
587
  userAccountAddress: "",
588
588
  ...t
589
589
  };
590
- return e.account && (l.userAccountAddress = e.account.account.address), xe.parse(l);
591
- }, i = async (l) => {
590
+ return e.account && (l.userAccountAddress = e.account.account.address), ve.parse(l);
591
+ }, c = async (l) => {
592
592
  try {
593
593
  await l();
594
594
  } catch (d) {
595
595
  console.error(d), o(d), s({ isHuman: !1, showModal: !1, loading: !1 });
596
596
  }
597
597
  }, p = async () => {
598
- a.onOpen(), await i(async () => {
598
+ a.onOpen(), await c(async () => {
599
599
  if (e.loading || e.isHuman)
600
600
  return;
601
- G(), s({ loading: !0 });
602
- const l = c();
603
- s({ dappAccount: l.account.address }), await et(100);
604
- const d = await _(), h = await W();
601
+ z(), s({ loading: !0 });
602
+ const l = i();
603
+ s({ dappAccount: l.account.address }), await st(100);
604
+ const d = await R(), h = await M();
605
605
  let w = !1;
606
606
  try {
607
607
  w = (await h.query.dappOperatorIsHumanUser(d.account.address, l.solutionThreshold)).value.unwrap().unwrap();
608
- } catch (S) {
608
+ } catch (T) {
609
609
  }
610
610
  if (w) {
611
- s({ isHuman: !0, loading: !1 }), a.onHuman({
612
- user: d.account.address,
613
- dapp: x()
614
- }), L();
611
+ s({ isHuman: !0, loading: !1 }), a.onHuman(Y({
612
+ [b.user]: d.account.address,
613
+ [b.dapp]: v(),
614
+ [b.blockNumber]: A()
615
+ })), H();
615
616
  return;
616
617
  }
617
- const y = z.getProcaptchaStorage();
618
+ const C = B.getProcaptchaStorage();
618
619
  let D;
619
- if (y.providerUrl && y.blockNumber) {
620
- D = await M(y.providerUrl);
620
+ if (C.providerUrl && C.blockNumber) {
621
+ D = await W(C.providerUrl);
621
622
  try {
622
- const S = await D.verifyDappUser(x(), d.account.address, y.blockNumber, void 0, t.captchas.image.cachedTimeout);
623
- if (S.verified) {
623
+ const T = E(d);
624
+ if (!T || !T.signer || !T.signer.signRaw)
625
+ throw new x("ACCOUNT.NO_POLKADOT_EXTENSION");
626
+ const re = T.signer.signRaw, { signature: Oe } = await re({
627
+ address: d.account.address,
628
+ data: C.blockNumber.toString(),
629
+ type: "bytes"
630
+ }), ke = Y({
631
+ [b.user]: d.account.address,
632
+ [b.dapp]: v(),
633
+ [b.blockNumber]: C.blockNumber
634
+ }), oe = await D.verifyUser(ke, Oe, t.captchas.image.cachedTimeout);
635
+ if (oe.verified) {
624
636
  s({ isHuman: !0, loading: !1 });
625
- const ne = {
626
- [K.providerUrl]: y.providerUrl,
627
- [K.user]: d.account.address,
628
- [K.dapp]: x(),
629
- [K.commitmentId]: le(S.commitmentId),
630
- [K.blockNumber]: S.blockNumber
637
+ const De = {
638
+ [b.providerUrl]: C.providerUrl,
639
+ [b.user]: d.account.address,
640
+ [b.dapp]: v(),
641
+ [b.commitmentId]: me(oe.commitmentId),
642
+ [b.blockNumber]: oe.blockNumber
631
643
  };
632
- a.onHuman(ne), L();
644
+ a.onHuman(Y(De)), H();
633
645
  return;
634
646
  }
635
647
  } catch {
636
- console.error("Error contacting provider from storage", y.providerUrl);
648
+ console.error("Error contacting provider from storage", C.providerUrl);
637
649
  }
638
650
  }
639
- const k = await de(h.query.getRandomActiveProvider, h.query)(d.account.address, x()), H = parseInt(k.blockNumber.toString()), U = re(k.provider.url.toString());
640
- D = await M(U);
641
- const N = await (await Z(h, k, D)).getCaptchaChallenge();
642
- if (N.captchas.length <= 0)
643
- throw new R("DEVELOPER.PROVIDER_NO_CAPTCHA");
644
- const ee = N.captchas.map((S) => S.captcha.timeLimitMs || l.captchas.image.challengeTimeout).reduce((S, ne) => S + ne), te = setTimeout(() => {
651
+ const L = await pe(h.query.getRandomActiveProvider, h.query)(d.account.address, v()), _ = parseInt(L.blockNumber.toString()), G = ae(L.provider.url.toString());
652
+ D = await W(G);
653
+ const P = await (await ee(h, L, D)).getCaptchaChallenge();
654
+ if (P.captchas.length <= 0)
655
+ throw new U("DEVELOPER.PROVIDER_NO_CAPTCHA");
656
+ const te = P.captchas.map((T) => T.captcha.timeLimitMs || l.captchas.image.challengeTimeout).reduce((T, re) => T + re), ne = setTimeout(() => {
645
657
  a.onChallengeExpired(), s({ isHuman: !1, showModal: !1, loading: !1 });
646
- }, ee);
658
+ }, te);
647
659
  s({
648
660
  index: 0,
649
- solutions: N.captchas.map(() => []),
650
- challenge: N,
661
+ solutions: P.captchas.map(() => []),
662
+ challenge: P,
651
663
  showModal: !0,
652
- timeout: te,
653
- blockNumber: H
664
+ timeout: ne,
665
+ blockNumber: _
654
666
  });
655
667
  });
656
- }, b = async () => {
657
- await i(async () => {
668
+ }, y = async () => {
669
+ await c(async () => {
658
670
  if (j(), !e.challenge)
659
- throw new P("CAPTCHA.NO_CAPTCHA", {
671
+ throw new O("CAPTCHA.NO_CAPTCHA", {
660
672
  context: { error: "Cannot submit, no Captcha found in state" }
661
673
  });
662
674
  s({ showModal: !1 });
663
- const l = e.challenge, d = tt(), h = e.challenge.captchas.map((N, ee) => {
664
- const te = g(e.solutions, ee);
675
+ const l = e.challenge, d = ct(), h = e.challenge.captchas.map((P, te) => {
676
+ const ne = g(e.solutions, te);
665
677
  return {
666
- captchaId: N.captcha.captchaId,
667
- captchaContentId: N.captcha.captchaContentId,
678
+ captchaId: P.captcha.captchaId,
679
+ captchaContentId: P.captcha.captchaContentId,
668
680
  salt: d,
669
- solution: te
681
+ solution: ne
670
682
  };
671
- }), w = T(), y = A(), D = E(w).signer, k = g(l.captchas, 0);
672
- if (!k.captcha.datasetId)
673
- throw new R("CAPTCHA.INVALID_CAPTCHA_ID", {
683
+ }), w = S(), C = A(), D = E(w).signer, L = g(l.captchas, 0);
684
+ if (!L.captcha.datasetId)
685
+ throw new U("CAPTCHA.INVALID_CAPTCHA_ID", {
674
686
  context: { error: "No datasetId set for challenge" }
675
687
  });
676
- const H = F(), U = await H.submitCaptchaSolution(D, l.requestHash, k.captcha.datasetId, h, d), B = U[0].verified;
677
- if (B || a.onFailed(), s({
678
- submission: U,
679
- isHuman: B,
688
+ const _ = F(), G = await _.submitCaptchaSolution(D, l.requestHash, L.captcha.datasetId, h, d), K = G[0].verified;
689
+ if (K || a.onFailed(), s({
690
+ submission: G,
691
+ isHuman: K,
680
692
  loading: !1
681
693
  }), e.isHuman) {
682
- const N = re(H.provider.provider.url.toString());
683
- z.setProcaptchaStorage({ ...z.getProcaptchaStorage(), providerUrl: N, blockNumber: y }), a.onHuman({
684
- providerUrl: N,
685
- user: w.account.address,
686
- dapp: x(),
687
- commitmentId: le(U[1]),
688
- blockNumber: y
689
- }), L();
694
+ const P = ae(_.provider.provider.url.toString());
695
+ B.setProcaptchaStorage({ ...B.getProcaptchaStorage(), providerUrl: P, blockNumber: C }), a.onHuman(Y({
696
+ [b.providerUrl]: P,
697
+ [b.user]: w.account.address,
698
+ [b.dapp]: v(),
699
+ [b.commitmentId]: me(G[1]),
700
+ [b.blockNumber]: C
701
+ })), H();
690
702
  }
691
703
  });
692
704
  }, m = async () => {
693
- j(), G(), a.onClose();
694
- }, O = (l) => {
705
+ j(), z(), a.onClose();
706
+ }, k = (l) => {
695
707
  if (!e.challenge)
696
- throw new P("CAPTCHA.NO_CAPTCHA", {
708
+ throw new O("CAPTCHA.NO_CAPTCHA", {
697
709
  context: { error: "Cannot select, no Captcha found in state" }
698
710
  });
699
711
  if (e.index >= e.challenge.captchas.length || e.index < 0)
700
- throw new P("CAPTCHA.NO_CAPTCHA", {
712
+ throw new O("CAPTCHA.NO_CAPTCHA", {
701
713
  context: { error: "Cannot select, index is out of range for this Captcha" }
702
714
  });
703
715
  const d = e.index, h = e.solutions, w = g(h, d);
704
716
  w.includes(l) ? w.splice(w.indexOf(l), 1) : w.push(l), s({ solutions: h });
705
- }, v = () => {
717
+ }, I = () => {
706
718
  if (!e.challenge)
707
- throw new P("CAPTCHA.NO_CAPTCHA", {
719
+ throw new O("CAPTCHA.NO_CAPTCHA", {
708
720
  context: { error: "Cannot select, no Captcha found in state" }
709
721
  });
710
722
  if (e.index + 1 >= e.challenge.captchas.length)
711
- throw new P("CAPTCHA.NO_CAPTCHA", {
723
+ throw new O("CAPTCHA.NO_CAPTCHA", {
712
724
  context: { error: "Cannot select, index is out of range for this Captcha" }
713
725
  });
714
726
  s({ index: e.index + 1 });
715
- }, Z = async (l, d, h) => {
716
- const w = c(), y = new Rt(T().account.address, l, d, h, w.web2, x());
717
- return s({ captchaApi: y }), F();
718
- }, M = async (l) => {
719
- const d = c(), h = be(d);
727
+ }, ee = async (l, d, h) => {
728
+ const w = i(), C = new Bt(S().account.address, l, d, h, w.web2, v());
729
+ return s({ captchaApi: C }), F();
730
+ }, W = async (l) => {
731
+ const d = i(), h = Ce(d);
720
732
  if (!d.account.address)
721
- throw new C("GENERAL.SITE_KEY_MISSING");
722
- return new nt(h, l, d.account.address);
733
+ throw new x("GENERAL.SITE_KEY_MISSING");
734
+ return new it(h, l, d.account.address);
723
735
  }, j = () => {
724
736
  window.clearTimeout(e.timeout), s({ timeout: void 0 });
725
- }, L = () => {
737
+ }, H = () => {
726
738
  const l = t.captchas.image.solutionTimeout, d = setTimeout(() => {
727
739
  s({ isHuman: !1 }), a.onExpired();
728
740
  }, l);
729
741
  s({ successfullChallengeTimeout: d });
730
- }, G = () => {
731
- j(), s(jt());
742
+ }, z = () => {
743
+ j(), s(Vt());
732
744
  }, F = () => {
733
745
  if (!e.captchaApi)
734
- throw new C("API.UNKNOWN", {
746
+ throw new x("API.UNKNOWN", {
735
747
  context: { error: "Captcha api not set", state: e }
736
748
  });
737
749
  return e.captchaApi;
738
- }, _ = async () => {
739
- const l = c();
750
+ }, R = async () => {
751
+ const l = i();
740
752
  if (!l.web2 && !l.userAccountAddress)
741
- throw new C("GENERAL.ACCOUNT_NOT_FOUND", {
753
+ throw new x("GENERAL.ACCOUNT_NOT_FOUND", {
742
754
  context: { error: "Account address has not been set for web3 mode" }
743
755
  });
744
- const h = await (l.web2 ? new rt() : new St()).getAccount(l);
745
- return z.setAccount(h.account.address), s({ account: h }), T();
746
- }, T = () => {
756
+ const h = await (l.web2 ? new lt() : new Ht()).getAccount(l);
757
+ return B.setAccount(h.account.address), s({ account: h }), S();
758
+ }, S = () => {
747
759
  if (!e.account)
748
- throw new C("GENERAL.ACCOUNT_NOT_FOUND", { context: { error: "Account not loaded" } });
760
+ throw new x("GENERAL.ACCOUNT_NOT_FOUND", { context: { error: "Account not loaded" } });
749
761
  return e.account;
750
- }, x = () => {
762
+ }, v = () => {
751
763
  if (!e.dappAccount)
752
- throw new C("GENERAL.SITE_KEY_MISSING");
764
+ throw new x("GENERAL.SITE_KEY_MISSING");
753
765
  return e.dappAccount;
754
766
  }, A = () => {
755
767
  if (!e.blockNumber)
756
- throw new ot("CAPTCHA.INVALID_BLOCK_NO", { context: { error: "Block number not found" } });
768
+ throw new ut("CAPTCHA.INVALID_BLOCK_NO", { context: { error: "Block number not found" } });
757
769
  return e.blockNumber;
758
770
  }, E = (l) => {
759
- if (l = l || T(), !l.extension)
760
- throw new C("ACCOUNT.NO_POLKADOT_EXTENSION", { context: { error: "Extension not loaded" } });
771
+ if (l = l || S(), !l.extension)
772
+ throw new x("ACCOUNT.NO_POLKADOT_EXTENSION", { context: { error: "Extension not loaded" } });
761
773
  return l.extension;
762
- }, W = async () => {
763
- const l = c(), d = be(l), h = await at.create({
764
- provider: new st(d.endpoint),
774
+ }, M = async () => {
775
+ const l = i(), d = Ce(l), h = await dt.create({
776
+ provider: new pt(d.endpoint),
765
777
  initWasm: !1,
766
778
  noInitWarn: !0
767
- }), w = "sr25519", y = new ct({ type: w, ss58Format: h.registry.chainSS58 });
768
- return new it(h, JSON.parse(lt), d.contract.address, "prosopo", 0, y.addFromAddress(T().account.address));
779
+ }), w = "sr25519", C = new ht({ type: w, ss58Format: h.registry.chainSS58 });
780
+ return new ft(h, JSON.parse(gt), d.contract.address, "prosopo", 0, C.addFromAddress(S().account.address));
769
781
  };
770
782
  return {
771
783
  start: p,
772
784
  cancel: m,
773
- submit: b,
774
- select: O,
775
- nextRound: v,
785
+ submit: y,
786
+ select: k,
787
+ nextRound: I,
776
788
  exportData: async (l) => {
777
- var k;
778
- const h = z.getProcaptchaStorage().providerUrl;
789
+ var L;
790
+ const h = B.getProcaptchaStorage().providerUrl;
779
791
  let w;
780
792
  if (h)
781
- w = await M(h);
793
+ w = await W(h);
782
794
  else {
783
- const H = await W(), U = await de(H.query.getRandomActiveProvider, H.query)(T().account.address, x()), B = re(U.provider.url.toString());
784
- w = await M(B);
795
+ const _ = await M(), G = await pe(_.query.getRandomActiveProvider, _.query)(S().account.address, v()), K = ae(G.provider.url.toString());
796
+ w = await W(K);
785
797
  }
786
- if (!(z.getProcaptchaStorage().providerUrl || ((k = e.captchaApi) == null ? void 0 : k.provider.provider.url.toString())))
798
+ if (!(B.getProcaptchaStorage().providerUrl || ((L = e.captchaApi) == null ? void 0 : L.provider.provider.url.toString())))
787
799
  return;
788
800
  let D = "";
789
801
  try {
790
- D = T().account.address;
791
- } catch (H) {
792
- console.error(H);
802
+ D = S().account.address;
803
+ } catch (_) {
804
+ console.error(_);
793
805
  }
794
806
  await w.submitUserEvents(l, D);
795
807
  }
796
808
  };
797
809
  }
798
- const zt = 1e4, ie = (t, e) => {
810
+ const Yt = 1e4, ue = (t, e) => {
799
811
  e((n) => {
800
812
  let r = [...n, t];
801
- return r.length > zt && (r = r.slice(1)), r;
813
+ return r.length > Yt && (r = r.slice(1)), r;
802
814
  });
803
- }, Ft = (t, e) => {
815
+ }, qt = (t, e) => {
804
816
  const n = {
805
817
  x: t.x,
806
818
  y: t.y,
807
819
  timestamp: t.timeStamp
808
820
  };
809
- ie(n, e);
810
- }, ye = (t, e) => {
821
+ ue(n, e);
822
+ }, xe = (t, e) => {
811
823
  const n = {
812
824
  key: t.key,
813
825
  timestamp: t.timeStamp,
814
826
  isShiftKey: t.shiftKey,
815
827
  isCtrlKey: t.ctrlKey
816
828
  };
817
- ie(n, e);
818
- }, X = (t, e) => {
829
+ ue(n, e);
830
+ }, q = (t, e) => {
819
831
  for (const n of Array.from(t.touches))
820
- ie({ x: n.clientX, y: n.clientY, timestamp: t.timeStamp }, e);
821
- }, Bt = (t, e, n, r) => {
822
- const a = Ne(r);
823
- a && (a.addEventListener("mousemove", (o) => Ft(o, t)), a.addEventListener("keydown", (o) => ye(o, n)), a.addEventListener("keyup", (o) => ye(o, n)), a.addEventListener("touchstart", (o) => X(o, e)), a.addEventListener("touchend", (o) => X(o, e)), a.addEventListener("touchcancel", (o) => X(o, e)), a.addEventListener("touchmove", (o) => X(o, e)));
824
- }, Ne = (t) => t.tagName === "FORM" ? t : t.parentElement ? Ne(t.parentElement) : null, Kt = ({ onProcessData: t, sendData: e, account: n }) => {
825
- const [r, a] = f.useState([]), [o, s] = f.useState([]), [c, i] = f.useState([]), p = f.useRef(null);
832
+ ue({ x: n.clientX, y: n.clientY, timestamp: t.timeStamp }, e);
833
+ }, Jt = (t, e, n, r) => {
834
+ const a = Pe(r);
835
+ a && (a.addEventListener("mousemove", (o) => qt(o, t)), a.addEventListener("keydown", (o) => xe(o, n)), a.addEventListener("keyup", (o) => xe(o, n)), a.addEventListener("touchstart", (o) => q(o, e)), a.addEventListener("touchend", (o) => q(o, e)), a.addEventListener("touchcancel", (o) => q(o, e)), a.addEventListener("touchmove", (o) => q(o, e)));
836
+ }, Pe = (t) => t.tagName === "FORM" ? t : t.parentElement ? Pe(t.parentElement) : null, Qt = ({ onProcessData: t, sendData: e, account: n }) => {
837
+ const [r, a] = f.useState([]), [o, s] = f.useState([]), [i, c] = f.useState([]), p = f.useRef(null);
826
838
  return f.useEffect(() => {
827
- p && p.current && Bt(a, s, i, p.current);
839
+ p && p.current && Jt(a, s, c, p.current);
828
840
  }, []), f.useEffect(() => {
829
841
  n && t({
830
842
  mouseEvents: r,
831
843
  touchEvents: o,
832
- keyboardEvents: c
844
+ keyboardEvents: i
833
845
  });
834
846
  }, [e, n]), u("div", { ref: p });
835
- }, $t = Se.memo((t, e) => {
847
+ }, Zt = Le.memo((t, e) => {
836
848
  const { show: n, children: r } = t, o = {
837
849
  position: "fixed",
838
850
  zIndex: 2147483646,
@@ -849,7 +861,7 @@ const zt = 1e4, ie = (t, e) => {
849
861
  left: 0,
850
862
  backgroundColor: "rgba(0, 0, 0, 0.5)",
851
863
  zIndex: -1
852
- }, c = {
864
+ }, i = {
853
865
  position: "absolute",
854
866
  top: "50%",
855
867
  left: "50%",
@@ -859,25 +871,25 @@ const zt = 1e4, ie = (t, e) => {
859
871
  border: "none",
860
872
  boxShadow: "rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px,"
861
873
  };
862
- return I("div", { className: "modalOuter", style: o, children: [u("div", { className: "modalBackground", style: s }), u("div", { className: "modalInner", style: c, children: r })] });
863
- }), Xt = (t) => {
864
- const e = xe.parse(t.config), n = t.callbacks || {}, [r, a] = ut(f.useState, f.useRef), o = Gt(e, r, a, n), s = t.config.theme === "light" ? "light" : "dark", c = t.config.theme === "light" ? J : Q;
865
- return u("div", { children: I("div", { style: { maxWidth: "100%", maxHeight: "100%", overflowX: "auto" }, children: [u($t, { show: r.showModal, children: r.challenge ? u(Et, { challenge: r.challenge, index: r.index, solutions: r.solutions, onSubmit: o.submit, onCancel: o.cancel, onClick: o.select, onNext: o.nextRound, themeColor: e.theme ?? "light" }) : u("div", { children: "No challenge set." }) }), I(Pe, { children: [u(Oe, { children: I("div", { style: De, "data-cy": "button-human", children: [" ", I("div", { style: {
866
- padding: ke,
867
- border: He,
868
- backgroundColor: c.palette.background.default,
869
- borderColor: c.palette.grey[300],
870
- borderRadius: Le,
874
+ return N("div", { className: "modalOuter", style: o, children: [u("div", { className: "modalBackground", style: s }), u("div", { className: "modalInner", style: i, children: r })] });
875
+ }), nn = (t) => {
876
+ const e = ve.parse(t.config), n = t.callbacks || {}, [r, a] = mt(f.useState, f.useRef), o = Xt(e, r, a, n), s = t.config.theme === "light" ? "light" : "dark", i = t.config.theme === "light" ? Q : Z;
877
+ return u("div", { children: N("div", { style: { maxWidth: "100%", maxHeight: "100%", overflowX: "auto" }, children: [u(Zt, { show: r.showModal, children: r.challenge ? u(kt, { challenge: r.challenge, index: r.index, solutions: r.solutions, onSubmit: o.submit, onCancel: o.cancel, onClick: o.select, onNext: o.nextRound, themeColor: e.theme ?? "light" }) : u("div", { children: "No challenge set." }) }), N(_e, { children: [u(He, { children: N("div", { style: Re, "data-cy": "button-human", children: [" ", N("div", { style: {
878
+ padding: Ue,
879
+ border: We,
880
+ backgroundColor: i.palette.background.default,
881
+ borderColor: i.palette.grey[300],
882
+ borderRadius: Me,
871
883
  display: "flex",
872
884
  alignItems: "center",
873
885
  flexWrap: "wrap",
874
886
  justifyContent: "space-between",
875
- minHeight: `${_e}px`,
887
+ minHeight: `${Ge}px`,
876
888
  overflow: "hidden"
877
889
  }, children: [u("div", { style: { display: "inline-flex", flexDirection: "column" }, children: u("div", { style: {
878
890
  alignItems: "center",
879
891
  flex: 1
880
- }, children: I("div", { style: {
892
+ }, children: N("div", { style: {
881
893
  display: "flex",
882
894
  alignItems: "center",
883
895
  justifyContent: "center",
@@ -885,10 +897,10 @@ const zt = 1e4, ie = (t, e) => {
885
897
  verticalAlign: "middle"
886
898
  }, children: [u("div", { style: {
887
899
  display: r.loading ? "none" : "flex"
888
- }, children: u(dt, { themeColor: s, onChange: o.start, checked: r.isHuman, labelText: "I am human" }) }), u("div", { style: {
900
+ }, children: u(wt, { themeColor: s, onChange: o.start, checked: r.isHuman, labelText: "I am human", "aria-label": "human checkbox" }) }), u("div", { style: {
889
901
  display: r.loading ? "flex" : "none"
890
- }, children: u("div", { style: { display: "inline-flex" }, children: u(Re, { themeColor: s }) }) })] }) }) }), u("div", { style: { display: "inline-flex", flexDirection: "column" }, children: u("a", { href: Me, target: "_blank", "aria-label": We, children: u("div", { style: { flex: 1 }, children: u(Ue, { themeColor: s }) }) }) })] })] }) }), e.devOnlyWatchEvents && u(Kt, { onProcessData: o.exportData, sendData: r.sendData, account: r.account })] })] }) });
902
+ }, children: u("div", { style: { display: "inline-flex" }, children: u(je, { themeColor: s, "aria-label": "Loading spinner" }) }) })] }) }) }), u("div", { style: { display: "inline-flex", flexDirection: "column" }, children: u("a", { href: ze, target: "_blank", "aria-label": Be, children: u("div", { style: { flex: 1 }, children: u(Fe, { themeColor: s, "aria-label": "Prosopo logo" }) }) }) })] })] }) }), e.devOnlyWatchEvents && u(Qt, { onProcessData: o.exportData, sendData: r.sendData, account: r.account })] })] }) });
891
903
  };
892
904
  export {
893
- Xt as default
905
+ nn as default
894
906
  };