@arcblock/did-connect-react 3.3.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,7 +12,7 @@ import { getBlockletData as H, getFederatedEnabled as X, getMaster as Q } from "
12
12
  import { startRegistration as Y, startAuthentication as Z } from "@simplewebauthn/browser";
13
13
  import { createAxios as $, getWebAuthnErrorMessage as h, logger as U, getApiErrorMessage as A } from "../utils.js";
14
14
  import { parseResponse as ee, PassportSwitcher as se } from "../components/PassportSwitcher.js";
15
- const F = J({}), { Provider: te, Consumer: he } = F, ae = {
15
+ const F = J({}), { Provider: te, Consumer: he } = F, re = {
16
16
  zh: {
17
17
  cancel: "取消",
18
18
  usePasskey: "使用 Passkey",
@@ -76,7 +76,7 @@ const F = J({}), { Provider: te, Consumer: he } = F, ae = {
76
76
  }
77
77
  }
78
78
  };
79
- function re({
79
+ function ae({
80
80
  children: m,
81
81
  locale: l = "en",
82
82
  onAddPasskey: E = w,
@@ -84,7 +84,7 @@ function re({
84
84
  onSwitchPassport: I = w,
85
85
  session: R = null
86
86
  }) {
87
- const v = S(window.env?.apiPrefix || G, "/api/passkey"), t = g({
87
+ const v = S(window.env?.apiPrefix || G, "/api/passkey"), r = g({
88
88
  baseUrl: "/",
89
89
  session: void 0,
90
90
  connecting: !1,
@@ -117,52 +117,52 @@ function re({
117
117
  reset() {
118
118
  d.creating = !1, d.verifying = !1, d.creatingStatus = "", d.verifyingStatus = "", d.error = "";
119
119
  }
120
- }), n = i((s, e = {}) => q(ae, s, l, "en", e)), c = W(() => $({ baseURL: S(t.baseUrl, v), sessionTokenKey: "__sst", timeout: 60 * 1e3 }), [t.baseUrl, v]), x = i(async () => {
121
- if (t.baseUrl === "/")
120
+ }), n = i((t, e = {}) => q(re, t, l, "en", e)), c = W(() => $({ baseURL: S(r.baseUrl, v), sessionTokenKey: "__sst", timeout: 60 * 1e3 }), [r.baseUrl, v]), x = i(async () => {
121
+ if (r.baseUrl === "/")
122
122
  return window.blocklet;
123
123
  try {
124
- if (new URL(t.baseUrl).host === window.location.host)
124
+ if (new URL(r.baseUrl).host === window.location.host)
125
125
  return window.blocklet;
126
126
  } catch {
127
127
  }
128
- return await H(t.baseUrl);
129
- }), P = window?.blocklet?.componentId, B = (s) => {
130
- t.baseUrl = s || "/";
131
- }, T = (s) => {
132
- t.targetAppPid = s;
133
- }, b = i(async (s) => {
134
- const { data: e } = await c.get("/register", { params: s });
128
+ return await H(r.baseUrl);
129
+ }), P = window?.blocklet?.componentId, B = (t) => {
130
+ r.baseUrl = t || "/";
131
+ }, T = (t) => {
132
+ r.targetAppPid = t;
133
+ }, b = i(async (t) => {
134
+ const { data: e } = await c.get("/register", { params: t });
135
135
  console.warn("passkey.create.options", e);
136
136
  try {
137
- const a = await Y({ optionsJSON: e, useAutoRegister: !1 });
138
- console.warn("passkey.create.response", a);
139
- const { data: r } = await c.post("/register", a, { params: { challenge: e.challenge } });
140
- if (console.warn("passkey.create.result", r), !r.verified)
137
+ const s = await Y({ optionsJSON: e, useAutoRegister: !1 });
138
+ console.warn("passkey.create.response", s);
139
+ const { data: a } = await c.post("/register", s, { params: { challenge: e.challenge } });
140
+ if (console.warn("passkey.create.result", a), !a.verified)
141
141
  throw new Error(n("createPasskeyFailed"));
142
- return r;
143
- } catch (a) {
144
- throw a.name ? new Error(h(a, n("createPasskeyFailed"), n)) : a;
142
+ return a;
143
+ } catch (s) {
144
+ throw console.error("passkey.create.error", s), s.name ? new Error(h(s, n("createPasskeyFailed"), n)) : s;
145
145
  }
146
- }), k = i(async (s) => {
147
- const { data: e } = await c.get("/auth", { params: s });
146
+ }), k = i(async (t) => {
147
+ const { data: e } = await c.get("/auth", { params: t });
148
148
  console.warn("passkey.auth.options", e);
149
149
  try {
150
- const a = await Z({ optionsJSON: e });
151
- console.warn("passkey.auth.response", a);
152
- const { data: r } = await c.post("/auth", a, {
153
- params: { challenge: e.challenge, targetAppPid: t.targetAppPid }
150
+ const s = await Z({ optionsJSON: e });
151
+ console.warn("passkey.auth.response", s);
152
+ const { data: a } = await c.post("/auth", s, {
153
+ params: { challenge: e.challenge, targetAppPid: r.targetAppPid }
154
154
  });
155
- if (console.warn("passkey.auth.result", r), !r.verified)
155
+ if (console.warn("passkey.auth.result", a), !a.verified)
156
156
  throw new Error(n("verifyPasskeyFailed"));
157
- return r;
158
- } catch (a) {
159
- throw a.name ? new Error(h(a, n("verifyPasskeyFailed"), n)) : a;
157
+ return a;
158
+ } catch (s) {
159
+ throw console.error("passkey.auth.error", s), s.name ? new Error(h(s, n("verifyPasskeyFailed"), n)) : s;
160
160
  }
161
- }), M = async (s) => {
162
- t.connecting = !0;
161
+ }), M = async (t) => {
162
+ r.connecting = !0;
163
163
  try {
164
164
  const e = await b({
165
- ...s,
165
+ ...t,
166
166
  locale: l,
167
167
  componentId: P
168
168
  });
@@ -170,54 +170,55 @@ function re({
170
170
  } catch (e) {
171
171
  U.error("Failed to connect passkey", e), u.error(A(e, n("connectPasskeyFailed")));
172
172
  } finally {
173
- t.connecting = !1;
173
+ r.connecting = !1;
174
174
  }
175
- }, D = async ({ session: s, connectedAccount: e }) => {
176
- t.session = s, t.disconnecting = !0;
175
+ }, D = async ({ session: t, connectedAccount: e }) => {
176
+ r.session = t, r.disconnecting = !0;
177
177
  try {
178
- const a = await k({
178
+ const s = await k({
179
179
  action: "disconnect",
180
180
  locale: l,
181
181
  componentId: P,
182
- sourceAppPid: s?.user?.sourceAppPid,
182
+ sourceAppPid: t?.user?.sourceAppPid,
183
183
  credentialId: e.id
184
184
  });
185
- u.success(n("disconnectPasskeySucceed")), C(a);
186
- } catch (a) {
187
- U.error("Failed to disconnect passkey", a), u.error(A(a, n("disconnectPasskeyFailed")));
185
+ u.success(n("disconnectPasskeySucceed")), C(s);
186
+ } catch (s) {
187
+ U.error("Failed to disconnect passkey", s), u.error(A(s, n("disconnectPasskeyFailed")));
188
188
  } finally {
189
- t.disconnecting = !1;
189
+ r.disconnecting = !1;
190
190
  }
191
- }, N = async (s = {}) => {
191
+ }, N = async (t = {}) => {
192
192
  try {
193
193
  const { data: e } = await c.get("/passports");
194
- e.length ? (o.open = !0, o.currentUser = s, o.passports = e || []) : u.error(n("noPassports"));
194
+ e.length ? (o.open = !0, o.currentUser = t, o.passports = e || []) : u.error(n("noPassports"));
195
195
  } catch (e) {
196
196
  u.error(e.message || n("getPassportFailed"));
197
197
  }
198
- }, j = i((...s) => {
199
- o.reset(), I(...s);
200
- }), L = i(async ({ action: s = "login", ...e } = {}) => {
201
- const a = t.baseUrl;
198
+ }, j = i((...t) => {
199
+ o.reset(), I(...t);
200
+ }), L = i(async ({ action: t = "login", ...e } = {}) => {
201
+ const s = r.baseUrl;
202
202
  if (e?.sourceAppPid === window.blocklet?.appPid)
203
- t.baseUrl = window.blocklet?.appUrl || "/";
203
+ r.baseUrl = window.blocklet?.appUrl || "/";
204
204
  else if (e?.sourceAppPid) {
205
- const r = await x(), y = X(r), f = Q(r);
206
- y && f?.appPid && e?.sourceAppPid === f?.appPid && (t.baseUrl = f.appUrl);
205
+ const a = await x(), y = X(a), f = Q(a);
206
+ y && f?.appPid && e?.sourceAppPid === f?.appPid && (r.baseUrl = f.appUrl);
207
207
  }
208
208
  try {
209
- const r = {
209
+ const a = {
210
210
  ...e,
211
- action: s,
211
+ action: t,
212
212
  locale: l,
213
213
  componentId: P
214
214
  };
215
- z(r.inviter) && window.localStorage.getItem("inviter") && (r.inviter = window.localStorage.getItem("inviter"));
216
- const y = ee(await k(r));
215
+ z(a.inviter) && window.localStorage.getItem("inviter") && (a.inviter = window.localStorage.getItem("inviter"));
216
+ const y = ee(await k(a));
217
217
  return y.provider = "passkey", y;
218
- } catch (r) {
219
- const y = h(r, n("verifyPasskeyFailed"), n);
220
- throw t.baseUrl = a, new Error(y);
218
+ } catch (a) {
219
+ console.error("passkey.login.error", a);
220
+ const y = h(a, n("verifyPasskeyFailed"), n);
221
+ throw r.baseUrl = s, new Error(y);
221
222
  }
222
223
  }), _ = i(() => {
223
224
  });
@@ -234,12 +235,12 @@ function re({
234
235
  loginPasskey: L,
235
236
  logoutPasskey: _,
236
237
  switchPassport: N,
237
- baseUrl: t.baseUrl,
238
+ baseUrl: r.baseUrl,
238
239
  setBaseUrl: B,
239
240
  setTargetAppPid: T,
240
241
  passkeyState: d,
241
- disconnecting: t.disconnecting,
242
- connecting: t.connecting,
242
+ disconnecting: r.disconnecting,
243
+ connecting: r.connecting,
243
244
  t: n
244
245
  },
245
246
  children: [
@@ -261,7 +262,7 @@ function re({
261
262
  function me() {
262
263
  return K(F);
263
264
  }
264
- re.propTypes = {
265
+ ae.propTypes = {
265
266
  children: p.node.isRequired,
266
267
  locale: p.string,
267
268
  onAddPasskey: p.func,
@@ -272,6 +273,6 @@ re.propTypes = {
272
273
  export {
273
274
  he as PasskeyConsumer,
274
275
  F as PasskeyContext,
275
- re as PasskeyProvider,
276
+ ae as PasskeyProvider,
276
277
  me as usePasskey
277
278
  };
@@ -1,4 +1,4 @@
1
- const o = "3.3.0", s = {
1
+ const o = "3.3.1", s = {
2
2
  version: o
3
3
  };
4
4
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcblock/did-connect-react",
3
- "version": "3.3.0",
3
+ "version": "3.3.1",
4
4
  "description": "Client side library to work with DID Connect by ArcBlock.",
5
5
  "keywords": [
6
6
  "react",
@@ -32,10 +32,10 @@
32
32
  "url": "https://github.com/ArcBlock/ux/issues"
33
33
  },
34
34
  "dependencies": {
35
- "@arcblock/bridge": "3.3.0",
35
+ "@arcblock/bridge": "3.3.1",
36
36
  "@arcblock/did": "^1.27.16",
37
- "@arcblock/icons": "3.3.0",
38
- "@arcblock/react-hooks": "3.3.0",
37
+ "@arcblock/icons": "3.3.1",
38
+ "@arcblock/react-hooks": "3.3.1",
39
39
  "@arcblock/ws": "^1.27.16",
40
40
  "@blocklet/constant": "^1.17.6",
41
41
  "@fontsource/lexend": "^5.2.9",
@@ -81,5 +81,5 @@
81
81
  "eslint-plugin-react-hooks": "^4.6.2",
82
82
  "jest": "^29.7.0"
83
83
  },
84
- "gitHead": "d23472b198c0bf05d452976ebefedab5cb6d047f"
84
+ "gitHead": "39aec3e1aef080ae289918120dc12629940a75b4"
85
85
  }
@@ -204,6 +204,7 @@ function PasskeyProvider({
204
204
  return result;
205
205
  } catch (err) {
206
206
  // Check if this is a WebAuthn specific error
207
+ console.error('passkey.create.error', err);
207
208
  if (err.name) {
208
209
  throw new Error(getWebAuthnErrorMessage(err, t('createPasskeyFailed'), t));
209
210
  }
@@ -232,6 +233,7 @@ function PasskeyProvider({
232
233
  return result;
233
234
  } catch (err) {
234
235
  // Check if this is a WebAuthn specific error
236
+ console.error('passkey.auth.error', err);
235
237
  if (err.name) {
236
238
  throw new Error(getWebAuthnErrorMessage(err, t('verifyPasskeyFailed'), t));
237
239
  }
@@ -333,6 +335,7 @@ function PasskeyProvider({
333
335
  return result;
334
336
  } catch (err) {
335
337
  // Use the WebAuthn specific error handler if the error has a name property (WebAuthn errors do)
338
+ console.error('passkey.login.error', err);
336
339
  const errMsg = getWebAuthnErrorMessage(err, t('verifyPasskeyFailed'), t);
337
340
  state.baseUrl = backupBaseUrl;
338
341
  throw new Error(errMsg);