@strands.gg/accui 2.1.7 → 2.1.9

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 (117) hide show
  1. package/dist/accui.css +1 -0
  2. package/dist/index.cjs.js +1 -0
  3. package/dist/{js/auth-components-BJhPF4dS.js → index.es.js} +7358 -153
  4. package/dist/nuxt/module.cjs.js +1 -0
  5. package/dist/{js/nuxt/module-YfdoaPCb.js → nuxt/module.es.js} +0 -2
  6. package/dist/nuxt/runtime/composables/useAuthenticatedFetch.cjs.js +1 -0
  7. package/dist/{js/nuxt/runtime/composables/useAuthenticatedFetch-DToDCO6a.js → nuxt/runtime/composables/useAuthenticatedFetch.es.js} +1 -1
  8. package/dist/nuxt/runtime/composables/useStrandsAuth.cjs.js +1 -0
  9. package/dist/{js/nuxt/runtime/composables/useStrandsAuth-8b_bomlH.js → nuxt/runtime/composables/useStrandsAuth.es.js} +1 -1
  10. package/dist/nuxt/runtime/middleware/auth.global.cjs.js +1 -0
  11. package/dist/{js/nuxt/runtime/middleware/auth.global-_2xq-SvK.js → nuxt/runtime/middleware/auth.global.es.js} +1 -1
  12. package/dist/nuxt/runtime/plugin.client.cjs.js +1 -0
  13. package/dist/{js/nuxt/runtime/plugin.client-KK_pCEfA.js → nuxt/runtime/plugin.client.es.js} +2 -2
  14. package/dist/nuxt/runtime/plugin.server.cjs.js +1 -0
  15. package/dist/{js/nuxt/runtime/plugin.server-CGdeJOoz.js → nuxt/runtime/plugin.server.es.js} +1 -1
  16. package/dist/nuxt/runtime/plugins/auth-interceptor.client.cjs.js +1 -0
  17. package/dist/{js/nuxt-v4/runtime/plugins/auth-interceptor.client-Qht8QSLW.js → nuxt/runtime/plugins/auth-interceptor.client.es.js} +1 -1
  18. package/dist/nuxt-v4/module.cjs.js +1 -0
  19. package/dist/{js/nuxt-v4/module-CCvkwSrU.js → nuxt-v4/module.es.js} +0 -2
  20. package/dist/nuxt-v4/runtime/composables/useAuthenticatedFetch.cjs.js +1 -0
  21. package/dist/{js/nuxt-v4/runtime/composables/useAuthenticatedFetch-I0BKB43E.js → nuxt-v4/runtime/composables/useAuthenticatedFetch.es.js} +1 -1
  22. package/dist/nuxt-v4/runtime/composables/useStrandsAuth.cjs.js +1 -0
  23. package/dist/{js/nuxt-v4/runtime/composables/useStrandsAuth-BZe8CTx0.js → nuxt-v4/runtime/composables/useStrandsAuth.es.js} +1 -1
  24. package/dist/nuxt-v4/runtime/middleware/auth.global.cjs.js +1 -0
  25. package/dist/{js/nuxt-v4/runtime/middleware/auth.global-C_saJaMU.js → nuxt-v4/runtime/middleware/auth.global.es.js} +1 -1
  26. package/dist/nuxt-v4/runtime/plugin.client.cjs.js +1 -0
  27. package/dist/{js/nuxt-v4/runtime/plugin.client-CxLmYQfu.js → nuxt-v4/runtime/plugin.client.es.js} +2 -2
  28. package/dist/nuxt-v4/runtime/plugin.server.cjs.js +1 -0
  29. package/dist/{js/nuxt-v4/runtime/plugin.server-BM6HYyiZ.js → nuxt-v4/runtime/plugin.server.es.js} +1 -1
  30. package/dist/nuxt-v4/runtime/plugins/auth-interceptor.client.cjs.js +1 -0
  31. package/dist/{js/nuxt/runtime/plugins/auth-interceptor.client-DIa4pC59.js → nuxt-v4/runtime/plugins/auth-interceptor.client.es.js} +1 -1
  32. package/dist/nuxt-v4.cjs.js +1 -0
  33. package/dist/{js/nuxt-v4-C5JN4uyM.js → nuxt-v4.es.js} +3 -3
  34. package/dist/nuxt.cjs.js +1 -0
  35. package/dist/{js/nuxt-MUpTW0D9.js → nuxt.es.js} +3 -3
  36. package/dist/shared/defaults.d.ts +1 -0
  37. package/dist/types/index.d.ts +1 -0
  38. package/dist/useStrandsAuth-Ce_6sRDL.es.js +869 -0
  39. package/dist/useStrandsAuth-s1xHo4S-.cjs.js +1 -0
  40. package/dist/useStrandsConfig-CzIbm2Z6.cjs.js +1 -0
  41. package/dist/useStrandsConfig-Dkr8gpzR.es.js +217 -0
  42. package/dist/utils/colors.d.ts +1 -0
  43. package/dist/utils/index.d.ts +1 -0
  44. package/dist/utils/slots.d.ts +1 -0
  45. package/dist/utils/validation.d.ts +1 -0
  46. package/dist/vue/components/StrandsNav/index.d.ts +1 -0
  47. package/dist/vue/components/icons/index.d.ts +1 -0
  48. package/dist/vue/components/index.d.ts +1 -0
  49. package/dist/vue/composables/useAuthenticatedFetch.d.ts +1 -0
  50. package/dist/vue/composables/useDarkMode.d.ts +1 -0
  51. package/dist/vue/composables/useOAuthProviders.d.ts +1 -0
  52. package/dist/vue/composables/useStrandsAuth.d.ts +1 -0
  53. package/dist/vue/composables/useStrandsConfig.d.ts +1 -0
  54. package/dist/vue/composables/useStrandsMfa.d.ts +1 -0
  55. package/dist/vue/index.d.ts +1 -0
  56. package/dist/vue/plugins/StrandsUIPlugin.d.ts +1 -0
  57. package/dist/vue/ui/index.d.ts +1 -0
  58. package/dist/vue/utils/contrast.d.ts +1 -0
  59. package/dist/vue/utils/debounce.d.ts +1 -0
  60. package/dist/vue/utils/fontPreloader.d.ts +1 -0
  61. package/dist/vue/utils/iconProps.d.ts +1 -0
  62. package/dist/vue/utils/lazyComponents.d.ts +1 -0
  63. package/dist/vue/utils/levels.d.ts +1 -0
  64. package/dist/vue/utils/performanceInit.d.ts +1 -0
  65. package/dist/vue/utils/requestCache.d.ts +1 -0
  66. package/dist/vue/utils/sounds.d.ts +1 -0
  67. package/package.json +1 -1
  68. package/dist/js/auth-components-BJhPF4dS.js.br +0 -0
  69. package/dist/js/auth-components-BJhPF4dS.js.gz +0 -0
  70. package/dist/js/auth-components-CXT-W3fG.js +0 -1
  71. package/dist/js/auth-components-CXT-W3fG.js.br +0 -0
  72. package/dist/js/auth-components-CXT-W3fG.js.gz +0 -0
  73. package/dist/js/composables-BqIRpDGP.js +0 -1609
  74. package/dist/js/composables-BqIRpDGP.js.br +0 -0
  75. package/dist/js/composables-BqIRpDGP.js.gz +0 -0
  76. package/dist/js/composables-BqLSXNon.js +0 -1
  77. package/dist/js/composables-BqLSXNon.js.br +0 -0
  78. package/dist/js/composables-BqLSXNon.js.gz +0 -0
  79. package/dist/js/icons-CQ3z-CUv.js +0 -398
  80. package/dist/js/icons-CQ3z-CUv.js.br +0 -0
  81. package/dist/js/icons-CQ3z-CUv.js.gz +0 -0
  82. package/dist/js/icons-MGGFfB13.js +0 -1
  83. package/dist/js/index-87OecKtg.js +0 -1
  84. package/dist/js/index-B113vWue.js +0 -106
  85. package/dist/js/nuxt/module-BA8ZjBpp.js +0 -1
  86. package/dist/js/nuxt/runtime/composables/useAuthenticatedFetch-qYkd06Dm.js +0 -1
  87. package/dist/js/nuxt/runtime/composables/useStrandsAuth-Dn15YEQw.js +0 -1
  88. package/dist/js/nuxt/runtime/middleware/auth.global-dZpk-3-I.js +0 -1
  89. package/dist/js/nuxt/runtime/plugin.client-D7S6ulTg.js +0 -1
  90. package/dist/js/nuxt/runtime/plugin.server-BpSAN5Gh.js +0 -1
  91. package/dist/js/nuxt/runtime/plugins/auth-interceptor.client-BQu0eR16.js +0 -1
  92. package/dist/js/nuxt-DqhAWeo-.js +0 -1
  93. package/dist/js/nuxt-v4/module-CDtxGAn8.js +0 -1
  94. package/dist/js/nuxt-v4/runtime/composables/useAuthenticatedFetch-fAO6ieYd.js +0 -1
  95. package/dist/js/nuxt-v4/runtime/composables/useStrandsAuth-DPGVMZ-e.js +0 -1
  96. package/dist/js/nuxt-v4/runtime/middleware/auth.global-B0pyByUu.js +0 -1
  97. package/dist/js/nuxt-v4/runtime/plugin.client-DGO53i-e.js +0 -1
  98. package/dist/js/nuxt-v4/runtime/plugin.server-D_dUMHYo.js +0 -1
  99. package/dist/js/nuxt-v4/runtime/plugins/auth-interceptor.client-CUNOTFBp.js +0 -1
  100. package/dist/js/nuxt-v4-DuwGUuhX.js +0 -1
  101. package/dist/js/ui-components-BC1UK39i.js +0 -5204
  102. package/dist/js/ui-components-BC1UK39i.js.br +0 -0
  103. package/dist/js/ui-components-BC1UK39i.js.gz +0 -0
  104. package/dist/js/ui-components-CocLXkUI.js +0 -1
  105. package/dist/js/ui-components-CocLXkUI.js.br +0 -0
  106. package/dist/js/ui-components-CocLXkUI.js.gz +0 -0
  107. package/dist/js/utils-B9zcSW52.js +0 -1
  108. package/dist/js/utils-B9zcSW52.js.br +0 -0
  109. package/dist/js/utils-B9zcSW52.js.gz +0 -0
  110. package/dist/js/utils-BZHeJkZf.js +0 -1080
  111. package/dist/js/utils-BZHeJkZf.js.br +0 -0
  112. package/dist/js/utils-BZHeJkZf.js.gz +0 -0
  113. package/dist/robots.txt +0 -4
  114. package/dist/sitemap.xml +0 -9
  115. package/dist/styles/accui-DF7zRGFD.css +0 -1
  116. package/dist/styles/accui-DF7zRGFD.css.br +0 -0
  117. package/dist/styles/accui-DF7zRGFD.css.gz +0 -0
@@ -0,0 +1 @@
1
+ "use strict";const t=require("@nuxt/kit");var e="undefined"!=typeof document?document.currentScript:null;const s=t.defineNuxtModule({meta:{name:"@strands.gg/accui/nuxt",configKey:"strandsAuth",compatibility:{nuxt:"^3.0.0"}},defaults:{baseUrl:"https://your-api.example.com",accentColor:"#EA00A8",redirectUrl:"/",onSignInUrl:"/dashboard",onSignOutUrl:"/",autoRefresh:1,refreshInterval:4,protectedRoutes:[],guestOnlyRoutes:["/auth","/login","/register"],devMode:0,styles:1,supportEmail:"",oauth2RedirectUrl:""},async setup(s,n){const r=t.createResolver("undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&"SCRIPT"===e.tagName.toUpperCase()&&e.src||new URL("nuxt/module.cjs.js",document.baseURI).href);n.options.runtimeConfig.public=n.options.runtimeConfig.public||{},n.options.runtimeConfig.public.strandsAuth={...s,styles:0!=s.styles},0!=s.styles&&n.options.css.push("@strands.gg/accui/style.css");const a="es.js";t.addPlugin({src:r.resolve(`./runtime/plugin.client.${a}`),mode:"client"}),t.addPlugin({src:r.resolve(`./runtime/plugin.server.${a}`),mode:"server"}),t.addPlugin({src:r.resolve(`./runtime/plugins/auth-interceptor.client.${a}`),mode:"client"}),t.addRouteMiddleware({name:"auth",path:r.resolve(`./runtime/middleware/auth.global.${a}`),global:1}),n.hook("pages:extend",t=>{}),t.addImports([{name:"useStrandsAuth",as:"useStrandsAuth",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthUser",as:"useAuthUser",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthState",as:"useAuthState",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthenticatedFetch",as:"useAuthenticatedFetch",from:r.resolve(`./runtime/composables/useAuthenticatedFetch.${a}`)}]);const u=["StrandsAuth","StrandsSignIn","StrandsSignUp","StrandsCompleteSignUp","StrandsUserProfile","StrandsUserButton","StrandsPasswordReset","StrandsMFASetup","StrandsConfigProvider","SignedIn","SignedOut","StrandsLogo","StrandsSecuredFooter","StrandsUiAlert","StrandsUiButton","StrandsUiCard","StrandsUiInput","StrandsUiLink","StrandsUiTabs","StrandsUiLoader"];for(const e of u)t.addComponent({name:e,export:e,filePath:"@strands.gg/accui"});n.hook("prepare:types",t=>{t.references.push({types:"@strands.gg/auth-nuxt"})})}});module.exports=s;
@@ -1,6 +1,4 @@
1
1
  import { defineNuxtModule, createResolver, addPlugin, addRouteMiddleware, addImports, addComponent } from "@nuxt/kit";
2
- import "./runtime/composables/useStrandsAuth-8b_bomlH.js";
3
- import "./runtime/composables/useAuthenticatedFetch-DToDCO6a.js";
4
2
  const moduleDefaults = {
5
3
  baseUrl: "https://your-api.example.com",
6
4
  accentColor: "#EA00A8",
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("nuxt/app"),e=require("./useStrandsAuth.cjs.js");function n(){const n=t.useRuntimeConfig().public.strandsAuth,{currentSession:o,refreshToken:s,getAuthHeaders:r}=e.useStrandsAuth(),c=async(t,e={})=>{const{autoRefresh:c=1,requireAuth:a=1,baseURL:p,...u}=e;if(a&&!o.value?.accessToken)throw new Error("User is not authenticated");let h=t;const d=p||n.baseUrl;d&&"string"==typeof t&&!t.startsWith("http")&&(h=new URL(t,d).toString());const y=new Headers(u.headers);if(o.value?.accessToken)try{const t=r();Object.entries(t).forEach(([t,e])=>{y.set(t,e)})}catch(b){if(a)throw b}const i={...u,headers:y};let f=await fetch(h,i);if(401===f.status&&c&&o.value?.refreshToken)try{if(await s()&&o.value?.accessToken){const t=r();Object.entries(t).forEach(([t,e])=>{y.set(t,e)}),f=await fetch(h,{...i,headers:y})}}catch(j){}return f};return{authenticatedFetch:c,get:(t,e)=>c(t,{...e,method:"GET"}),post:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"POST",headers:o,body:"object"==typeof e?JSON.stringify(e):e})},put:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"PUT",headers:o,body:"object"==typeof e?JSON.stringify(e):e})},delete:(t,e)=>c(t,{...e,method:"DELETE"}),patch:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"PATCH",headers:o,body:"object"==typeof e?JSON.stringify(e):e})}}}const o={get:async(t,e)=>{const{get:o}=n();return o(t,e)},post:async(t,e,o)=>{const{post:s}=n();return s(t,e,o)},put:async(t,e,o)=>{const{put:s}=n();return s(t,e,o)},delete:async(t,e)=>{const{delete:o}=n();return o(t,e)},patch:async(t,e,o)=>{const{patch:s}=n();return s(t,e,o)}};exports.$authFetch=o,exports.useAuthenticatedFetch=n;
@@ -1,5 +1,5 @@
1
1
  import { useRuntimeConfig } from "nuxt/app";
2
- import { useStrandsAuth } from "./useStrandsAuth-8b_bomlH.js";
2
+ import { useStrandsAuth } from "./useStrandsAuth.es.js";
3
3
  function useAuthenticatedFetch() {
4
4
  const config = useRuntimeConfig().public["strandsAuth"];
5
5
  const { currentSession, refreshToken, getAuthHeaders } = useStrandsAuth();
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("nuxt/app"),s=require("../../../useStrandsAuth-s1xHo4S-.cjs.js"),a=()=>{const a=t.useRuntimeConfig().public.strandsAuth,e=s.useStrandsAuth();return{...e,initialize:async()=>{await e.initialize()},signIn:async s=>{const i=await e.signIn(s);return i&&a.onSignInUrl&&await t.navigateTo(a.onSignInUrl),i},signUp:async t=>await e.signUp({email:t.email,password:"",firstName:"",lastName:""}),signOut:async()=>{await e.signOut(),a.onSignOutUrl&&await t.navigateTo(a.onSignOutUrl)}}};exports.useAuthState=()=>{const{isAuthenticated:t,isLoading:s}=a();return{isAuthenticated:t,isLoading:s}},exports.useAuthUser=()=>{const{user:t}=a();return{user:t}},exports.useStrandsAuth=a;
@@ -1,5 +1,5 @@
1
1
  import { useRuntimeConfig, navigateTo } from "nuxt/app";
2
- import { b as useStrandsAuth$1 } from "../../../composables-BqIRpDGP.js";
2
+ import { u as useStrandsAuth$1 } from "../../../useStrandsAuth-Ce_6sRDL.es.js";
3
3
  const useStrandsAuth = () => {
4
4
  const config = useRuntimeConfig().public["strandsAuth"];
5
5
  const vueAuth = useStrandsAuth$1();
@@ -0,0 +1 @@
1
+ "use strict";const e=require("nuxt/app"),s=e.defineNuxtRouteMiddleware(s=>{const t=e.useRuntimeConfig().public.strandsAuth;if(!process.server)return new Promise(r=>{Promise.resolve().then(()=>require("../composables/useStrandsAuth.cjs.js")).then(({useStrandsAuth:o})=>{const{isAuthenticated:n,isLoading:i}=o(),u=()=>{if(i.value)return void setTimeout(u,50);const o=s.path,c=t.protectedRoutes?.some(e=>e.endsWith("*")?o.startsWith(e.slice(0,-1)):o===e||o.startsWith(e+"/")),d=t.guestOnlyRoutes?.some(e=>e.endsWith("*")?o.startsWith(e.slice(0,-1)):o===e||o.startsWith(e+"/"));return c&&!n.value?e.navigateTo("/auth?redirect="+encodeURIComponent(o)):d&&n.value?e.navigateTo(t.onSignInUrl||"/dashboard"):void r()};u()})})});module.exports=s;
@@ -3,7 +3,7 @@ const auth_global = defineNuxtRouteMiddleware((to) => {
3
3
  const config = useRuntimeConfig().public["strandsAuth"];
4
4
  if (process.server) return;
5
5
  return new Promise((resolve) => {
6
- import("../composables/useStrandsAuth-8b_bomlH.js").then(({ useStrandsAuth }) => {
6
+ import("../composables/useStrandsAuth.es.js").then(({ useStrandsAuth }) => {
7
7
  const { isAuthenticated, isLoading } = useStrandsAuth();
8
8
  const checkAuth = () => {
9
9
  if (isLoading.value) {
@@ -0,0 +1 @@
1
+ "use strict";const e=require("nuxt/app"),s=require("../../useStrandsConfig-CzIbm2Z6.cjs.js"),n=e.defineNuxtPlugin({name:"strands-auth-client",async setup(){const n=e.useRuntimeConfig().public.strandsAuth,t={...s.STRANDS_AUTH_DEFAULTS,...n};s.setStrandsConfig(t),"undefined"!=typeof window&&(window.__STRANDS_CONFIG__=t),t?.accentColor&&"undefined"!=typeof window&&document.documentElement.style.setProperty("--strands-accent",t.accentColor);const{useStrandsAuth:i}=await Promise.resolve().then(()=>require("./composables/useStrandsAuth.cjs.js")),{initialize:a}=i();await a()}});module.exports=n;
@@ -1,5 +1,5 @@
1
1
  import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
2
- import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../composables-BqIRpDGP.js";
2
+ import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../useStrandsConfig-Dkr8gpzR.es.js";
3
3
  const plugin_client = defineNuxtPlugin({
4
4
  name: "strands-auth-client",
5
5
  async setup() {
@@ -16,7 +16,7 @@ const plugin_client = defineNuxtPlugin({
16
16
  if (mergedConfig?.accentColor && typeof window !== "undefined") {
17
17
  document.documentElement.style.setProperty("--strands-accent", mergedConfig.accentColor);
18
18
  }
19
- const { useStrandsAuth } = await import("./composables/useStrandsAuth-8b_bomlH.js");
19
+ const { useStrandsAuth } = await import("./composables/useStrandsAuth.es.js");
20
20
  const { initialize } = useStrandsAuth();
21
21
  await initialize();
22
22
  }
@@ -0,0 +1 @@
1
+ "use strict";const s=require("nuxt/app"),e=require("../../useStrandsConfig-CzIbm2Z6.cjs.js"),r=s.defineNuxtPlugin({name:"strands-auth-server",setup(){const r=s.useRuntimeConfig().public.strandsAuth,t={...e.STRANDS_AUTH_DEFAULTS,...r};e.setStrandsConfig(t)}});module.exports=r;
@@ -1,5 +1,5 @@
1
1
  import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
2
- import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../composables-BqIRpDGP.js";
2
+ import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../useStrandsConfig-Dkr8gpzR.es.js";
3
3
  const plugin_server = defineNuxtPlugin({
4
4
  name: "strands-auth-server",
5
5
  setup() {
@@ -0,0 +1 @@
1
+ "use strict";const t=require("nuxt/app").defineNuxtPlugin({name:"strands-auth-interceptor",setup(){if(process.server)return;const t=globalThis.fetch;globalThis.fetch=async(r,e)=>{try{const{useStrandsAuth:o}=await Promise.resolve().then(()=>require("../composables/useStrandsAuth.cjs.js")),{currentSession:c,getAuthHeaders:i}=o();let n;n="string"==typeof r?r:r instanceof URL?r.toString():r.url;const a=function(t){if(!t.startsWith("http"))return 0;if(["googleapis.com","github.com/api","api.github.com","discord.com/api","graph.microsoft.com","api.stripe.com","api.twilio.com"].some(r=>t.includes(r)))return 0;const r=["/api/","/v1/","/v2/","/graphql","/trpc"].some(r=>t.includes(r)),e=[":3001",":8000",":8080",":5000",":4000"].some(r=>t.includes(r));return r||e}(n);if(a&&c.value?.accessToken)try{const s=i(),o=new Headers(e?.headers);Object.entries(s).forEach(([t,r])=>{o.set(t,r)});const c={...e,headers:o};return t(r,c)}catch(s){}return t(r,e)}catch(s){return t(r,e)}}}});module.exports=t;
@@ -6,7 +6,7 @@ const authInterceptor_client = defineNuxtPlugin({
6
6
  const originalFetch = globalThis.fetch;
7
7
  globalThis.fetch = async (input, init) => {
8
8
  try {
9
- const { useStrandsAuth } = await import("../composables/useStrandsAuth-BZe8CTx0.js");
9
+ const { useStrandsAuth } = await import("../composables/useStrandsAuth.es.js");
10
10
  const { currentSession, getAuthHeaders } = useStrandsAuth();
11
11
  let url;
12
12
  if (typeof input === "string") {
@@ -0,0 +1 @@
1
+ "use strict";const t=require("@nuxt/kit");var e="undefined"!=typeof document?document.currentScript:null;const s=t.defineNuxtModule({meta:{name:"@strands.gg/accui/nuxt-v4",configKey:"strandsAuth",compatibility:{nuxt:"^4.0.0"}},defaults:{baseUrl:"https://your-api.example.com",accentColor:"#EA00A8",redirectUrl:"/",onSignInUrl:"/dashboard",onSignOutUrl:"/",autoRefresh:1,refreshInterval:4,protectedRoutes:[],guestOnlyRoutes:["/auth","/login","/register"],devMode:0,styles:1,supportEmail:"",oauth2RedirectUrl:""},async setup(s,n){const r=t.createResolver("undefined"==typeof document?require("url").pathToFileURL(__filename).href:e&&"SCRIPT"===e.tagName.toUpperCase()&&e.src||new URL("nuxt-v4/module.cjs.js",document.baseURI).href);n.options.runtimeConfig.public=n.options.runtimeConfig.public||{};const u={...s,styles:0!=s.styles};n.options.runtimeConfig.public.strandsAuth=u,n.options.appConfig.strandsAuth=u,0!=s.styles&&n.options.css.push("@strands.gg/accui/style.css");const a="es.js",o=r.resolve(`./runtime/plugin.client.${a}`),d=r.resolve(`./runtime/plugin.server.${a}`),i=r.resolve(`./runtime/middleware/auth.global.${a}`);t.addPlugin({src:o,mode:"client"}),t.addPlugin({src:d,mode:"server"}),t.addPlugin({src:r.resolve(`./runtime/plugins/auth-interceptor.client.${a}`),mode:"client"}),t.addRouteMiddleware({name:"auth",path:i,global:1}),t.addImports([{name:"useStrandsAuth",as:"useStrandsAuth",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthUser",as:"useAuthUser",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthState",as:"useAuthState",from:r.resolve(`./runtime/composables/useStrandsAuth.${a}`)},{name:"useAuthenticatedFetch",as:"useAuthenticatedFetch",from:r.resolve(`./runtime/composables/useAuthenticatedFetch.${a}`)}]);const c=["StrandsAuth","StrandsSignIn","StrandsSignUp","StrandsCompleteSignUp","StrandsUserProfile","StrandsUserButton","StrandsPasswordReset","StrandsMFASetup","StrandsConfigProvider","SignedIn","SignedOut","StrandsLogo","StrandsSecuredFooter","StrandsUiAlert","StrandsUiButton","StrandsUiCard","StrandsUiInput","StrandsUiLink","StrandsUiTabs","StrandsUiLoader"];for(const e of c)t.addComponent({name:e,export:e,filePath:"@strands.gg/accui"});n.hook("prepare:types",t=>{t.references.push({types:"@strands.gg/auth-nuxt-v4"}),t.declarations.push(`\n declare global {\n const useStrandsAuth: typeof import('${r.resolve("./runtime/composables/useStrandsAuth.d.ts")}')['useStrandsAuth']\n const useAuthUser: typeof import('${r.resolve("./runtime/composables/useStrandsAuth.d.ts")}')['useAuthUser']\n const useAuthState: typeof import('${r.resolve("./runtime/composables/useStrandsAuth.d.ts")}')['useAuthState']\n }\n `)})}});module.exports=s;
@@ -1,6 +1,4 @@
1
1
  import { defineNuxtModule, createResolver, addPlugin, addRouteMiddleware, addImports, addComponent } from "@nuxt/kit";
2
- import "./runtime/composables/useStrandsAuth-BZe8CTx0.js";
3
- import "./runtime/composables/useAuthenticatedFetch-I0BKB43E.js";
4
2
  const moduleDefaults = {
5
3
  baseUrl: "https://your-api.example.com",
6
4
  accentColor: "#EA00A8",
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("nuxt/app"),e=require("./useStrandsAuth.cjs.js");function n(){const n=t.useRuntimeConfig().public.strandsAuth,{currentSession:o,refreshToken:s,getAuthHeaders:r}=e.useStrandsAuth(),c=async(t,e={})=>{const{autoRefresh:c=1,requireAuth:a=1,baseURL:p,...u}=e;if(a&&!o.value?.accessToken)throw new Error("User is not authenticated");let h=t;const d=p||n.baseUrl;d&&"string"==typeof t&&!t.startsWith("http")&&(h=new URL(t,d).toString());const y=new Headers(u.headers);if(o.value?.accessToken)try{const t=r();Object.entries(t).forEach(([t,e])=>{y.set(t,e)})}catch(b){if(a)throw b}const i={...u,headers:y};let f=await fetch(h,i);if(401===f.status&&c&&o.value?.refreshToken)try{if(await s()&&o.value?.accessToken){const t=r();Object.entries(t).forEach(([t,e])=>{y.set(t,e)}),f=await fetch(h,{...i,headers:y})}}catch(j){}return f};return{authenticatedFetch:c,get:(t,e)=>c(t,{...e,method:"GET"}),post:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"POST",headers:o,body:"object"==typeof e?JSON.stringify(e):e})},put:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"PUT",headers:o,body:"object"==typeof e?JSON.stringify(e):e})},delete:(t,e)=>c(t,{...e,method:"DELETE"}),patch:(t,e,n)=>{const o=new Headers(n?.headers);return e&&"object"==typeof e&&!o.has("Content-Type")&&o.set("Content-Type","application/json"),c(t,{...n,method:"PATCH",headers:o,body:"object"==typeof e?JSON.stringify(e):e})}}}const o={get:async(t,e)=>{const{get:o}=n();return o(t,e)},post:async(t,e,o)=>{const{post:s}=n();return s(t,e,o)},put:async(t,e,o)=>{const{put:s}=n();return s(t,e,o)},delete:async(t,e)=>{const{delete:o}=n();return o(t,e)},patch:async(t,e,o)=>{const{patch:s}=n();return s(t,e,o)}};exports.$authFetch=o,exports.useAuthenticatedFetch=n;
@@ -1,5 +1,5 @@
1
1
  import { useRuntimeConfig } from "nuxt/app";
2
- import { useStrandsAuth } from "./useStrandsAuth-BZe8CTx0.js";
2
+ import { useStrandsAuth } from "./useStrandsAuth.es.js";
3
3
  function useAuthenticatedFetch() {
4
4
  const config = useRuntimeConfig().public["strandsAuth"];
5
5
  const { currentSession, refreshToken, getAuthHeaders } = useStrandsAuth();
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("nuxt/app"),e=require("../../../useStrandsAuth-s1xHo4S-.cjs.js"),s=()=>{const s=t.useRuntimeConfig().public.strandsAuth,a=e.useStrandsAuth();return{user:a.user,currentUser:a.currentUser,currentSession:a.currentSession,isAuthenticated:a.isAuthenticated,isLoading:a.isLoading,loading:a.loading,signIn:async e=>{const i=await a.signIn(e);return i&&s.onSignInUrl&&await t.navigateTo(s.onSignInUrl),i},signUp:async t=>await a.signUp({email:t.email,password:"",firstName:"",lastName:""}),signOut:async()=>{await a.signOut(),s.onSignOutUrl&&await t.navigateTo(s.onSignOutUrl)},refreshToken:a.refreshToken,updateProfile:a.updateProfile,setAuthData:a.setAuthData,getAuthHeaders:a.getAuthHeaders,initialize:async()=>{try{await a.initialize()}catch(t){}}}};exports.useAuthState=()=>{const{isAuthenticated:t,isLoading:e}=s();return{isAuthenticated:t,isLoading:e}},exports.useAuthUser=()=>{const{user:t}=s();return{user:t}},exports.useStrandsAuth=s;
@@ -1,5 +1,5 @@
1
1
  import { useRuntimeConfig, navigateTo } from "nuxt/app";
2
- import { b as useStrandsAuth$1 } from "../../../composables-BqIRpDGP.js";
2
+ import { u as useStrandsAuth$1 } from "../../../useStrandsAuth-Ce_6sRDL.es.js";
3
3
  const useStrandsAuth = () => {
4
4
  const config = useRuntimeConfig().public["strandsAuth"];
5
5
  const vueAuth = useStrandsAuth$1();
@@ -0,0 +1 @@
1
+ "use strict";const e=require("nuxt/app"),s=e.defineNuxtRouteMiddleware(s=>{const t=e.useRuntimeConfig().public.strandsAuth;if(!process.server)return new Promise(r=>{Promise.resolve().then(()=>require("../composables/useStrandsAuth.cjs.js")).then(({useStrandsAuth:o})=>{const{isAuthenticated:n,isLoading:i}=o(),u=()=>{if(i.value)return void setTimeout(u,50);const o=s.path,c=t.protectedRoutes?.some(e=>e.endsWith("*")?o.startsWith(e.slice(0,-1)):o===e||o.startsWith(e+"/")),d=t.guestOnlyRoutes?.some(e=>e.endsWith("*")?o.startsWith(e.slice(0,-1)):o===e||o.startsWith(e+"/"));return c&&!n.value?e.navigateTo("/auth?redirect="+encodeURIComponent(o)):d&&n.value?e.navigateTo(t.onSignInUrl||"/dashboard"):void r()};u()})})});module.exports=s;
@@ -3,7 +3,7 @@ const auth_global = defineNuxtRouteMiddleware((to) => {
3
3
  const config = useRuntimeConfig().public["strandsAuth"];
4
4
  if (process.server) return;
5
5
  return new Promise((resolve) => {
6
- import("../composables/useStrandsAuth-BZe8CTx0.js").then(({ useStrandsAuth }) => {
6
+ import("../composables/useStrandsAuth.es.js").then(({ useStrandsAuth }) => {
7
7
  const { isAuthenticated, isLoading } = useStrandsAuth();
8
8
  const checkAuth = () => {
9
9
  if (isLoading.value) {
@@ -0,0 +1 @@
1
+ "use strict";const e=require("nuxt/app"),s=require("../../useStrandsConfig-CzIbm2Z6.cjs.js"),n=e.defineNuxtPlugin({name:"strands-auth-client-v4",async setup(){const n=e.useRuntimeConfig().public.strandsAuth,t={...s.STRANDS_AUTH_DEFAULTS,...n};s.setStrandsConfig(t),"undefined"!=typeof window&&(window.__STRANDS_CONFIG__=t),t?.accentColor&&"undefined"!=typeof window&&document.documentElement.style.setProperty("--strands-accent",t.accentColor);const{useStrandsAuth:i}=await Promise.resolve().then(()=>require("./composables/useStrandsAuth.cjs.js")),{initialize:a}=i();await a()}});module.exports=n;
@@ -1,5 +1,5 @@
1
1
  import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
2
- import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../composables-BqIRpDGP.js";
2
+ import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../useStrandsConfig-Dkr8gpzR.es.js";
3
3
  const plugin_client = defineNuxtPlugin({
4
4
  name: "strands-auth-client-v4",
5
5
  async setup() {
@@ -16,7 +16,7 @@ const plugin_client = defineNuxtPlugin({
16
16
  if (mergedConfig?.accentColor && typeof window !== "undefined") {
17
17
  document.documentElement.style.setProperty("--strands-accent", mergedConfig.accentColor);
18
18
  }
19
- const { useStrandsAuth } = await import("./composables/useStrandsAuth-BZe8CTx0.js");
19
+ const { useStrandsAuth } = await import("./composables/useStrandsAuth.es.js");
20
20
  const { initialize } = useStrandsAuth();
21
21
  await initialize();
22
22
  }
@@ -0,0 +1 @@
1
+ "use strict";const s=require("nuxt/app"),e=require("../../useStrandsConfig-CzIbm2Z6.cjs.js"),t=s.defineNuxtPlugin({name:"strands-auth-server-v4",setup(){try{const t=s.useRuntimeConfig(),r=t.public?.strandsAuth,u={...e.STRANDS_AUTH_DEFAULTS,...r||{}};e.setStrandsConfig(u)}catch(t){e.setStrandsConfig(e.STRANDS_AUTH_DEFAULTS)}}});module.exports=t;
@@ -1,5 +1,5 @@
1
1
  import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
2
- import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../composables-BqIRpDGP.js";
2
+ import { s as setStrandsConfig, S as STRANDS_AUTH_DEFAULTS } from "../../useStrandsConfig-Dkr8gpzR.es.js";
3
3
  const plugin_server = defineNuxtPlugin({
4
4
  name: "strands-auth-server-v4",
5
5
  setup() {
@@ -0,0 +1 @@
1
+ "use strict";const t=require("nuxt/app").defineNuxtPlugin({name:"strands-auth-interceptor",setup(){if(process.server)return;const t=globalThis.fetch;globalThis.fetch=async(r,e)=>{try{const{useStrandsAuth:o}=await Promise.resolve().then(()=>require("../composables/useStrandsAuth.cjs.js")),{currentSession:c,getAuthHeaders:i}=o();let n;n="string"==typeof r?r:r instanceof URL?r.toString():r.url;const a=function(t){if(!t.startsWith("http"))return 0;if(["googleapis.com","github.com/api","api.github.com","discord.com/api","graph.microsoft.com","api.stripe.com","api.twilio.com"].some(r=>t.includes(r)))return 0;const r=["/api/","/v1/","/v2/","/graphql","/trpc"].some(r=>t.includes(r)),e=[":3001",":8000",":8080",":5000",":4000"].some(r=>t.includes(r));return r||e}(n);if(a&&c.value?.accessToken)try{const s=i(),o=new Headers(e?.headers);Object.entries(s).forEach(([t,r])=>{o.set(t,r)});const c={...e,headers:o};return t(r,c)}catch(s){}return t(r,e)}catch(s){return t(r,e)}}}});module.exports=t;
@@ -6,7 +6,7 @@ const authInterceptor_client = defineNuxtPlugin({
6
6
  const originalFetch = globalThis.fetch;
7
7
  globalThis.fetch = async (input, init) => {
8
8
  try {
9
- const { useStrandsAuth } = await import("../composables/useStrandsAuth-8b_bomlH.js");
9
+ const { useStrandsAuth } = await import("../composables/useStrandsAuth.es.js");
10
10
  const { currentSession, getAuthHeaders } = useStrandsAuth();
11
11
  let url;
12
12
  if (typeof input === "string") {
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{t:{value:1},[Symbol.toStringTag]:{value:"Module"}});const e=require("./nuxt-v4/module.cjs.js"),s=require("./nuxt-v4/runtime/composables/useStrandsAuth.cjs.js"),t=require("./nuxt-v4/runtime/composables/useAuthenticatedFetch.cjs.js");exports.default=e,exports.useAuthState=s.useAuthState,exports.useAuthUser=s.useAuthUser,exports.useStrandsAuth=s.useStrandsAuth,exports.$authFetch=t.$authFetch,exports.useAuthenticatedFetch=t.useAuthenticatedFetch;
@@ -1,6 +1,6 @@
1
- import { default as default2 } from "./nuxt-v4/module-CCvkwSrU.js";
2
- import { useAuthState, useAuthUser, useStrandsAuth } from "./nuxt-v4/runtime/composables/useStrandsAuth-BZe8CTx0.js";
3
- import { $authFetch, useAuthenticatedFetch } from "./nuxt-v4/runtime/composables/useAuthenticatedFetch-I0BKB43E.js";
1
+ import { default as default2 } from "./nuxt-v4/module.es.js";
2
+ import { useAuthState, useAuthUser, useStrandsAuth } from "./nuxt-v4/runtime/composables/useStrandsAuth.es.js";
3
+ import { $authFetch, useAuthenticatedFetch } from "./nuxt-v4/runtime/composables/useAuthenticatedFetch.es.js";
4
4
  export {
5
5
  $authFetch,
6
6
  default2 as default,
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{t:{value:1},[Symbol.toStringTag]:{value:"Module"}});const e=require("./nuxt/module.cjs.js"),s=require("./nuxt/runtime/composables/useStrandsAuth.cjs.js"),t=require("./nuxt/runtime/composables/useAuthenticatedFetch.cjs.js");exports.default=e,exports.useAuthState=s.useAuthState,exports.useAuthUser=s.useAuthUser,exports.useStrandsAuth=s.useStrandsAuth,exports.$authFetch=t.$authFetch,exports.useAuthenticatedFetch=t.useAuthenticatedFetch;
@@ -1,6 +1,6 @@
1
- import { default as default2 } from "./nuxt/module-YfdoaPCb.js";
2
- import { useAuthState, useAuthUser, useStrandsAuth } from "./nuxt/runtime/composables/useStrandsAuth-8b_bomlH.js";
3
- import { $authFetch, useAuthenticatedFetch } from "./nuxt/runtime/composables/useAuthenticatedFetch-DToDCO6a.js";
1
+ import { default as default2 } from "./nuxt/module.es.js";
2
+ import { useAuthState, useAuthUser, useStrandsAuth } from "./nuxt/runtime/composables/useStrandsAuth.es.js";
3
+ import { $authFetch, useAuthenticatedFetch } from "./nuxt/runtime/composables/useAuthenticatedFetch.es.js";
4
4
  export {
5
5
  $authFetch,
6
6
  default2 as default,
@@ -0,0 +1 @@
1
+ export * from '../../../src/shared/defaults.ts';
@@ -0,0 +1 @@
1
+ export * from '../../../src/types/index.ts';