cauthy-auth 0.18.0 → 0.20.0

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.
package/dist/vue.mjs CHANGED
@@ -205,6 +205,11 @@ function createAuthClient(options = {}) {
205
205
  }
206
206
  const linkUrl = (provider, o = {}) => `${base}/me/identities/link/${encodeURIComponent(provider)}${o.returnTo ? `?return_to=${encodeURIComponent(o.returnTo)}` : ""}`;
207
207
  const socialUrl = (provider, o = {}) => `${base}/sign-in/social/${encodeURIComponent(provider)}${o.returnTo ? `?return_to=${encodeURIComponent(o.returnTo)}` : ""}`;
208
+ const ssoUrl = (target, o = {}) => {
209
+ const q = new URLSearchParams("connection" in target ? { connection: target.connection } : { email: target.email.trim() });
210
+ if (o.returnTo) q.set("return_to", o.returnTo);
211
+ return `${base}/sign-in/sso?${q}`;
212
+ };
208
213
  const passkeyUrl = (o = {}) => {
209
214
  const q = new URLSearchParams({ method: "passkey" });
210
215
  if (o.returnTo) q.set("return_to", o.returnTo);
@@ -216,11 +221,11 @@ function createAuthClient(options = {}) {
216
221
  const res = await doFetch(`${base}/methods`, { credentials: "same-origin", headers: { accept: "application/json" } });
217
222
  if (res.ok) {
218
223
  const m = await res.json();
219
- return { providers: [], signUp: true, magicLink: false, passkey: false, ...m, passkeyHere: m.passkeyHere === true, passkeyOnCauthy: m.passkeyOnCauthy ?? m.passkey === true };
224
+ return { providers: [], signUp: true, magicLink: false, passkey: false, ...m, passkeyHere: m.passkeyHere === true, passkeyOnCauthy: m.passkeyOnCauthy ?? m.passkey === true, sso: m.sso === true };
220
225
  }
221
226
  } catch {
222
227
  }
223
- return { providers: [], signUp: true, magicLink: false, passkey: false, passkeyHere: false, passkeyOnCauthy: false };
228
+ return { providers: [], signUp: true, magicLink: false, passkey: false, passkeyHere: false, passkeyOnCauthy: false, sso: false };
224
229
  }
225
230
  async function ceremony(begin, finish, form, run, more = {}) {
226
231
  const begun = await post(begin, form, null);
@@ -318,6 +323,11 @@ function createAuthClient(options = {}) {
318
323
  socialUrl,
319
324
  social(provider, o) {
320
325
  window.location.assign(socialUrl(provider, o));
326
+ },
327
+ ssoDiscover: (f) => post("/sign-in/sso/discover", { email: f.email.trim() }, checkEmail(f.email)),
328
+ ssoUrl,
329
+ sso(target, o) {
330
+ window.location.assign(ssoUrl(target, o));
321
331
  }
322
332
  },
323
333
  signUp: {
@@ -376,7 +386,7 @@ function createAuthClient(options = {}) {
376
386
  },
377
387
  addPasskey(f = {}) {
378
388
  if (!canUsePasskeys()) return Promise.resolve({ ok: false, error: { code: "passkey_unavailable", message: "This browser cannot make passkeys." } });
379
- return ceremony("/me/passkeys/add/begin", "/me/passkeys/add/finish", { password: f.password ?? "" }, makePasskey, { name: f.name ?? "" });
389
+ return ceremony("/me/passkeys/add/begin", "/me/passkeys/add/finish", { password: f.password ?? "", ...f.kind ? { kind: f.kind } : {} }, makePasskey, { name: f.name ?? "" });
380
390
  },
381
391
  removePasskey: (id) => post("/me/passkeys/remove", { id }, null)
382
392
  },