@take-out/better-auth-utils 0.1.13 → 0.1.15
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/cjs/createAuthClient.cjs +1 -1
- package/dist/cjs/createAuthClient.js +1 -1
- package/dist/cjs/createAuthClient.js.map +1 -1
- package/dist/cjs/createAuthClient.native.js +1 -1
- package/dist/cjs/createAuthClient.native.js.map +1 -1
- package/dist/esm/createAuthClient.js +1 -1
- package/dist/esm/createAuthClient.js.map +1 -1
- package/dist/esm/createAuthClient.mjs +1 -1
- package/dist/esm/createAuthClient.mjs.map +1 -1
- package/dist/esm/createAuthClient.native.js +1 -1
- package/dist/esm/createAuthClient.native.js.map +1 -1
- package/package.json +2 -2
- package/src/createAuthClient.ts +1 -1
- package/types/createAuthClient.d.ts.map +1 -1
|
@@ -37,7 +37,7 @@ function createBetterAuthClient(options) {
|
|
|
37
37
|
...authClientOptions,
|
|
38
38
|
fetchOptions: {
|
|
39
39
|
credentials: "include",
|
|
40
|
-
headers:
|
|
40
|
+
headers: session ? { Authorization: `Bearer ${session}` } : void 0
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
let authClient = (() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createAuthClient.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,qBAMO,8BACP,gBAA+D;AAmFxD,SAAS,uBACd,SACoF;AAEpF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,aAAa;AAAA,IACb,SAAS;AAAA,IACT,kBAAkB,CAAC,mBAAmB,2BAA2B;AAAA,IACjE,GAAG;AAAA,EACL,IAAI,SAEE,QAA0B;AAAA,IAC9B,OAAO;AAAA,IACP,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT,GAEM,kBAAc,mCAAgC,GAAG,aAAa,OAAO,GACrE,mBAAe,mCAAqC,GAAG,aAAa,QAAQ,GAE5E,8BAA8B,CAAC,gBAC5B,gCAAiB;AAAA,IACtB,GAAG;AAAA,IACH,cAAc;AAAA,MACZ,aAAa;AAAA,MACb,SAAS,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,qBAMO,8BACP,gBAA+D;AAmFxD,SAAS,uBACd,SACoF;AAEpF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,aAAa;AAAA,IACb,SAAS;AAAA,IACT,kBAAkB,CAAC,mBAAmB,2BAA2B;AAAA,IACjE,GAAG;AAAA,EACL,IAAI,SAEE,QAA0B;AAAA,IAC9B,OAAO;AAAA,IACP,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT,GAEM,kBAAc,mCAAgC,GAAG,aAAa,OAAO,GACrE,mBAAe,mCAAqC,GAAG,aAAa,QAAQ,GAE5E,8BAA8B,CAAC,gBAC5B,gCAAiB;AAAA,IACtB,GAAG;AAAA,IACH,cAAc;AAAA,MACZ,aAAa;AAAA,MACb,SAAS,UAAU,EAAE,eAAe,UAAU,OAAO,GAAG,IAAI;AAAA,IAC9D;AAAA,EACF,CAAC;AAGH,MAAI,cAAc,MAAM;AACtB,UAAM,kBAAkB,YAAY,IAAI,GAAG;AAC3C,WAAO,kBACH,4BAA4B,eAAe,QAC3C,gCAAiB;AAAA,MACf,GAAG;AAAA,MACH,cAAc,EAAE,aAAa,UAAU;AAAA,IACzC,CAAS;AAAA,EACf,GAAG;AAEH,QAAM,gBAAY;AAAA,IAChB;AAAA,IACA,aAAa,IAAI,KAAK;AAAA,IACtB,EAAE,YAAY,+BAAgB;AAAA,EAChC,GAEM,wBAAoB,8BAAsB,qBAAqB,CAAC,GAEhE,WAAW,CAAC,WAAsC;AAEtD,UAAM,OAAO,EAAE,GADC,UAAU,OACC,GAAG,OAAO;AACrC,iBAAa,IAAI,IAAI,GACrB,UAAU,KAAK,IAAI,GAGf,KAAK,SAAS,KAAK,UACrB,YAAY,IAAI;AAAA,MACd,OAAO,KAAK;AAAA,MACZ,SAAS,KAAK,QAAQ;AAAA,IACxB,CAAC,IACQ,KAAK,UACd,YAAY,IAAI;AAAA,MACd,OAAO;AAAA,MACP,SAAS,KAAK,QAAQ;AAAA,IACxB,CAAC,IAED,YAAY,IAAI,EAAE,OAAO,IAAI,SAAS,GAAG,CAAC,GAG5C,oBAAoB,IAAI;AAAA,EAC1B,GAEM,qBAAqB,OAAO,UAA8C;AAC9E,gBAAY,IAAI,KAAK,GACrB,iBAAiB,MAAM,OAAO;AAAA,EAChC;AAEA,WAAS,iBAAiB,SAAiB;AACzC,iBAAa,4BAA4B,OAAO,GAChD,kBAAkB,KAAK,KAAK,OAAO,CAAC,GACpC,sBAAsB;AAAA,EACxB;AAEA,MAAI,UAA2B,MAC3B,aAAmD;AAEvD,WAAS,wBAAwB;AAC/B,cAAU,GAEV,UAAU,WAAW,WAAW,UAAU,OAAO,UAAU;AACzD,YAAM,EAAE,MAAM,aAAa,WAAW,MAAM,IAAI;AAEhD,UAAI,OAAO;AACT,sBAAc,KAAK,GACnB,kBAAkB,UAAU;AAC5B;AAAA,MACF;AAEA,YAAM,OAAO,aAQP,sBAAsB,CAAC,CAAC,YAAY,IAAI,GAAG,SAC3C,YAAY,YACd,YACA,MAAM,UACJ,cACA,uBAAuB,SAAS,SAC9B,YACA,cAGF,gBACJ,cAAc,YACV,CAAC,IACD;AAAA,QACE,SAAS,MAAM,WAAW;AAAA,QAC1B,MAAM,MAAM,OAAQ,aAAa,WAAW,KAAK,IAAI,IAAI,KAAK,OAAQ;AAAA,MACxE,GAGA,kBAAkB,UAAU,OAAO,SACnC,eACJ,MAAM,YACL,CAAC,mBACA,gBAAgB,OAAO,KAAK,QAAQ,MACpC,gBAAgB,WAAW,KAAK,QAAQ;AAE5C,eAAS;AAAA,QACP,OAAO;AAAA,QACP,GAAG;AAAA,MACL,CAAC,GAGG,UAAU,MAAM,YAAY,gBAAgB,CAAC,UAAU,MAAM,WAC3D,gBAAgB,UAAU,MAAM,SAClC,SAAS,EAAE,OAAO,KAAK,CAAC,GAG1B,cAAc,EAAE,KAAK,CAAC,UAAU;AAC9B,QAAI,SACF,SAAS,EAAE,MAAM,CAAC;AAAA,MAEtB,CAAC;AAAA,IAEL,CAAC;AAAA,EACH;AAEA,WAAS,kBAAkB,SAAiB;AAC1C,IAAI,cAAY,aAAa,UAAU,GACvC,aAAa,WAAW,MAAM;AAC5B,mBAAa,MACb,sBAAsB;AAAA,IACxB,GAAG,OAAO;AAAA,EACZ;AAEA,iBAAe,gBAA6C;AAC1D,UAAM,MAAM,MAAM,WAAW,OAAO,QAAQ;AAC5C,QAAI,IAAI,OAAO;AACb,cAAQ,MAAM,yBAAyB,IAAI,MAAM,UAAU,EAAE;AAC7D;AAAA,IACF;AACA,WAAQ,IAAI,MAAc;AAAA,EAC5B;AAEA,QAAM,uBAAuB,MAAM;AACjC,gBAAY,OAAO;AAAA,EACrB;AAEA,WAAS,mBAAmB;AAC1B,QAAI,SAAO,WAAa;AAExB,iBAAW,cAAc,iBAAiB;AACxC,iBAAS,SAAS,GAAG,UAAU;AAC/B,cAAM,SAAS,OAAO,SAAS;AAC/B,iBAAS,SAAS,GAAG,UAAU,4DAA4D,MAAM,IAC7F,OAAO,WAAW,GAAG,MACvB,SAAS,SAAS,GAAG,UAAU,4DAA4D,OAAO,MAAM,CAAC,CAAC;AAAA,MAE9G;AAAA,EACF;AAEA,WAAS,eAAe;AACtB,qBAAiB,GACjB,WAAW;AAAA,EACb;AAEA,QAAM,UAAU,MAAM;AACpB,UAAM,QAAQ,WAAW,SAAS;AAClC,WAAO,EAAE,GAAG,OAAO,UAAU,CAAC,CAAC,MAAM,QAAQ;AAAA,EAC/C,GAEM,UAAU,UACP,gCAAgB,SAAS,KAAK;AAGvC,WAAS,aAAa;AACpB,gBAAY,OAAO,GACnB,aAAa,OAAO,GACpB,SAAS,KAAK;AAAA,EAChB;AAIA,MAFA,sBAAsB,GAElB,OAAO,SAAW,OAAe,OAAO,kBAAkB;AAC5D,UAAM,UAAU,MAAM;AACpB,gBAAU,GACN,cAAY,aAAa,UAAU;AAAA,IACzC;AACA,WAAO,iBAAiB,gBAAgB,OAAO;AAAA,EACjD;AAEA,QAAM,oBAAoB,IAAI,MAAM,YAAY;AAAA,IAC9C,IAAI,SAAS,KAAK;AAChB,aAAI,QAAQ,YACH,MAAM;AACX,mBAAW,GAEX,WAAW,UAAU,GACjB,OAAO,SAAW,OACpB,OAAO,UAAU,SAAS;AAAA,MAE9B,IAEK,QAAQ,IAAI,YAAY,GAAG;AAAA,IACpC;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createAuthClient_exports","__export","createBetterAuthClient","module","exports","import_helpers","require","import_client","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","createStorageValue","stateStorage","createAuthClientWithSession","createAuthClient","fetchOptions","credentials","headers","Authorization","authClient","_keysStorage_get","existingSession","get","authState","createEmitter","comparator","isEqualDeepLite","authClientVersion","setState","update","current","next","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","_authState_value","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","_data_session","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","_res_data","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","cookieName","cookie","domain","window","location","hostname","startsWith","slice","err","return","clearAllAuth","clearState","getAuth","loggedIn","useAuth","useEmitterValue","addEventListener"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,wBAAA;AAAAC,QAAA,CAAAD,wBAAA;EAAAE,sBAAA,EAAAA,CAAA,KAAAA;AAAA;AAUAC,MAAA,CAAAC,OAAA,GAAAT,YAMO,CAAAK,wBACP;AAmFO,IAAAK,cAAS,GAAAC,OAAA,oBAEsE;EAAAC,aAAA,GAAAD,OAAA;AAEpF,SAAMJ,uBAAAM,OAAA;EAAA,IACJ;MAAAC,iBAAA;MAAAC,WAAA;MAAAC,UAAA;MAAAC,aAAA;MAAAC,UAAA;MAAAC,MAAA;MAAAC,eAAA,IACA,mBACA;MACA,GAAAC;IAAgB,IAAAR,OAAA;IAAAS,KAAA;MAChBC,KAAA,cAAa;MACbC,OAAA,EAAS;MACTC,IAAA;MACAC,KAAG;IACL;IAAAC,WAEM,OAA0BjB,cAAA,CAAAkB,kBAAA,KAAAX,aAAA;IAAAY,YAAA,OAAAnB,cAAA,CAAAkB,kBAAA,KAAAX,aAAA;IAAAa,2BAAA,YAAAA,CAAAN,OAAA;MAC9B,OAAO,IAAAZ,aAAA,CAAAmB,gBAAA;QACP,GAAAV,iBAAS;QACTW,YAAM;UACNC,WAAO;UAGHC,OAAA,
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createAuthClient_exports","__export","createBetterAuthClient","module","exports","import_helpers","require","import_client","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","createStorageValue","stateStorage","createAuthClientWithSession","createAuthClient","fetchOptions","credentials","headers","Authorization","authClient","_keysStorage_get","existingSession","get","authState","createEmitter","comparator","isEqualDeepLite","authClientVersion","setState","update","current","next","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","_authState_value","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","_data_session","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","_res_data","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","cookieName","cookie","domain","window","location","hostname","startsWith","slice","err","return","clearAllAuth","clearState","getAuth","loggedIn","useAuth","useEmitterValue","addEventListener"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -24,7 +24,7 @@ function createBetterAuthClient(options) {
|
|
|
24
24
|
...authClientOptions,
|
|
25
25
|
fetchOptions: {
|
|
26
26
|
credentials: "include",
|
|
27
|
-
headers:
|
|
27
|
+
headers: session ? { Authorization: `Bearer ${session}` } : void 0
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
let authClient = (() => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createAuthClient.ts"],
|
|
4
|
-
"mappings": "AAUA;AAAA,EACE;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AACP,SAAuC,wBAAwB;AAmFxD,SAAS,uBACd,SACoF;AAEpF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,aAAa;AAAA,IACb,SAAS;AAAA,IACT,kBAAkB,CAAC,mBAAmB,2BAA2B;AAAA,IACjE,GAAG;AAAA,EACL,IAAI,SAEE,QAA0B;AAAA,IAC9B,OAAO;AAAA,IACP,SAAS;AAAA,IACT,MAAM;AAAA,IACN,OAAO;AAAA,EACT,GAEM,cAAc,mBAAgC,GAAG,aAAa,OAAO,GACrE,eAAe,mBAAqC,GAAG,aAAa,QAAQ,GAE5E,8BAA8B,CAAC,YAC5B,iBAAiB;AAAA,IACtB,GAAG;AAAA,IACH,cAAc;AAAA,MACZ,aAAa;AAAA,MACb,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEmitter","createStorageValue","isEqualDeepLite","useEmitterValue","createAuthClient","createBetterAuthClient","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","stateStorage","createAuthClientWithSession","fetchOptions","credentials","headers","Authorization","authClient","existingSession","get","authState","comparator","authClientVersion","setState","update","next","value","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","cookieName","cookie","domain","window","location","hostname","startsWith","slice","clearAllAuth","clearState","getAuth","loggedIn","useAuth","addEventListener","cleanup","proxiedAuthClient","Proxy","_target","key","signOut","reload","Reflect"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":"AAUA,SACEA,aAAA,EACAC,kBAAA,EAEAC,eAAA,EACAC,eAAA,QACK;AACP,SAAuCC,gBAAA,QAAwB;AAmFxD,SAASC,uBACdC,OAAA,EACoF;EAEpF,MAAM;MACJC,iBAAA;MACAC,WAAA;MACAC,UAAA;MACAC,aAAA,GAAgB;MAChBC,UAAA,GAAa;MACbC,MAAA,GAAS;MACTC,eAAA,GAAkB,CAAC,mBAAmB,2BAA2B;MACjE,GAAGC;IACL,IAAIR,OAAA;IAEES,KAAA,GAA0B;MAC9BC,KAAA,EAAO;MACPC,OAAA,EAAS;MACTC,IAAA,EAAM;MACNC,KAAA,EAAO;IACT;IAEMC,WAAA,GAAcnB,kBAAA,CAAgC,GAAGS,aAAa,OAAO;IACrEW,YAAA,GAAepB,kBAAA,CAAqC,GAAGS,aAAa,QAAQ;IAE5EY,2BAAA,GAA+BL,OAAA,IAC5Bb,gBAAA,CAAiB;MACtB,GAAGU,iBAAA;MACHS,YAAA,EAAc;QACZC,WAAA,EAAa;QACbC,OAAA,
|
|
1
|
+
{"version":3,"names":["createEmitter","createStorageValue","isEqualDeepLite","useEmitterValue","createAuthClient","createBetterAuthClient","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","stateStorage","createAuthClientWithSession","fetchOptions","credentials","headers","Authorization","authClient","existingSession","get","authState","comparator","authClientVersion","setState","update","next","value","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","cookieName","cookie","domain","window","location","hostname","startsWith","slice","clearAllAuth","clearState","getAuth","loggedIn","useAuth","addEventListener","cleanup","proxiedAuthClient","Proxy","_target","key","signOut","reload","Reflect"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEmitter","createStorageValue","isEqualDeepLite","useEmitterValue","createAuthClient","createBetterAuthClient","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","stateStorage","createAuthClientWithSession","fetchOptions","credentials","headers","Authorization","authClient","_keysStorage_get","existingSession","get","authState","comparator","authClientVersion","setState","update","current","value","next","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","_authState_value","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","_data_session","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","_res_data","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","cookieName","cookie","domain","window","location","hostname","startsWith","slice","err","return","clearAllAuth","clearState","getAuth","loggedIn","useAuth","addEventListener","cleanup","proxiedAuthClient","Proxy"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":"AAUA,SAAAA,aAAA,EAAAC,kBAAA,EAAAC,eAAA,EAAAC,eAAA;AAAA,SACEC,gBAAA;AAAA,SACAC,uBAAAC,OAAA;EAEA;MAAAC,iBAAA;MAAAC,WAAA;MAAAC,UAAA;MAAAC,aAAA;MAAAC,UAAA;MAAAC,MAAA;MAAAC,eAAA,IACA,8CACK,CACP;MAAA,GAAAC;IAAuC,IAAAR,OAAwB;IAAAS,KAAA;MAmFxDC,KAAS;MAIdC,OAAM;MACJC,IAAA;MACAC,KAAA;IAAA;IACAC,WAAA,GAAAnB,kBAAA,IAAAS,aAAA;IAAAW,YAAA,GAAApB,kBAAA,IAAAS,aAAA;IAAAY,2BAAA,YAAAA,CAAAL,OAAA;MACA,OAAAb,gBAAgB;QAChB,GAAAU,iBAAa;QACbS,YAAS;UACTC,WAAA,WAAmB;UAChBC,OAAA,
|
|
1
|
+
{"version":3,"names":["createEmitter","createStorageValue","isEqualDeepLite","useEmitterValue","createAuthClient","createBetterAuthClient","options","onAuthStateChange","onAuthError","createUser","storagePrefix","retryDelay","useJWT","authCookieNames","authClientOptions","empty","state","session","user","token","keysStorage","stateStorage","createAuthClientWithSession","fetchOptions","credentials","headers","Authorization","authClient","_keysStorage_get","existingSession","get","authState","comparator","authClientVersion","setState","update","current","value","next","set","emit","setAuthClientToken","props","updateAuthClient","Math","random","subscribeToAuthEffect","dispose","retryTimer","useSession","subscribe","_authState_value","data","dataGeneric","isPending","error","scheduleAuthRetry","hasPersistedSession","nextState","_data_session","sessionUpdate","previousSession","isNewSession","id","userId","getValidToken","then","delayMs","clearTimeout","setTimeout","_res_data","res","$fetch","console","statusText","clearAuthClientToken","remove","clearAuthCookies","document","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","cookieName","cookie","domain","window","location","hostname","startsWith","slice","err","return","clearAllAuth","clearState","getAuth","loggedIn","useAuth","addEventListener","cleanup","proxiedAuthClient","Proxy"],"sources":["../../src/createAuthClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@take-out/better-auth-utils",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.15",
|
|
4
4
|
"description": "Better auth utilities and client for React/React Native applications",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@take-out/helpers": "0.1.
|
|
44
|
+
"@take-out/helpers": "0.1.15",
|
|
45
45
|
"jose": "^6.0.10"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
package/src/createAuthClient.ts
CHANGED
|
@@ -128,7 +128,7 @@ export function createBetterAuthClient<const Opts extends BetterAuthClientProps<
|
|
|
128
128
|
...authClientOptions,
|
|
129
129
|
fetchOptions: {
|
|
130
130
|
credentials: 'include',
|
|
131
|
-
headers:
|
|
131
|
+
headers: session ? { Authorization: `Bearer ${session}` } : undefined,
|
|
132
132
|
},
|
|
133
133
|
})
|
|
134
134
|
}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"src/createAuthClient.ts"
|
|
13
13
|
],
|
|
14
14
|
"sourcesContent": [
|
|
15
|
-
"/**\n * Better-auth helpers for React / React Native applications\n *\n * Features:\n * - Session persistence in local storage\n * - State management with emitters\n * - Automatic retry on errors\n * - Optional JWT support (for Tauri, React Native)\n */\n\nimport {\n createEmitter,\n createStorageValue,\n type Emitter,\n isEqualDeepLite,\n useEmitterValue,\n} from '@take-out/helpers'\nimport { type BetterAuthClientOptions, createAuthClient } from 'better-auth/client'\n\nimport type { Session, User } from 'better-auth'\n\nexport interface StorageKeys {\n token: string\n session: string\n}\n\nexport type AuthState<U extends User = User> = {\n state: 'loading' | 'logged-in' | 'logged-out'\n session: Session | null\n user: U | null\n /** JWT token - only populated when useJWT is enabled */\n token: string | null\n}\n\nexport interface BetterAuthClientProps<\n TUser extends User = User,\n> extends BetterAuthClientOptions {\n /**\n * Callback to transform and type the user object\n * @default (user) => user\n */\n createUser?: (user: User) => TUser\n\n /**\n * Optional callback when authentication state changes\n */\n onAuthStateChange?: (state: AuthState<TUser>) => void\n\n /**\n * Optional callback for handling auth errors\n */\n onAuthError?: (error: any) => void\n\n /**\n * Storage key prefix for local storage\n * @default 'auth'\n */\n storagePrefix?: string\n\n /**\n * Retry delay in milliseconds after auth errors\n * @default 4000\n */\n retryDelay?: number\n\n /**\n * Enable JWT token management for native apps (Tauri, React Native)\n * When false (default), auth uses session cookies forwarded by the server\n * When true, fetches and manages JWT tokens for Authorization header auth\n * @default false\n */\n useJWT?: boolean\n\n /**\n * Cookie names to clear on auth invalidation\n * @default ['better-auth.jwt', 'better-auth.session_token']\n */\n authCookieNames?: string[]\n}\n\nexport interface BetterAuthClientReturn<U extends User = User, TClient = any> {\n clearState: () => void\n authState: ReturnType<typeof createEmitter<AuthState<U>>>\n authClient: TClient\n setAuthClientToken: (props: { token: string; session: string }) => Promise<void>\n clearAuthClientToken: () => void\n clearAllAuth: () => void\n useAuth: () => AuthState<U>\n getAuth: () => AuthState<U> & { loggedIn: boolean }\n getValidToken: () => Promise<string | undefined>\n updateAuthClient: (session: string) => void\n authClientVersion: Emitter<number>\n}\n\ntype InferUser<T> = T extends { createUser?: (user: User) => infer R }\n ? R extends User\n ? R\n : User\n : User\n\nexport function createBetterAuthClient<const Opts extends BetterAuthClientProps<any>>(\n options: Opts\n): BetterAuthClientReturn<InferUser<Opts>, ReturnType<typeof createAuthClient<Opts>>> {\n type TUser = InferUser<Opts>\n const {\n onAuthStateChange,\n onAuthError,\n createUser,\n storagePrefix = 'auth',\n retryDelay = 4000,\n useJWT = false,\n authCookieNames = ['better-auth.jwt', 'better-auth.session_token'],\n ...authClientOptions\n } = options\n\n const empty: AuthState<TUser> = {\n state: 'logged-out',\n session: null,\n user: null,\n token: null,\n }\n\n const keysStorage = createStorageValue<StorageKeys>(`${storagePrefix}-keys`)\n const stateStorage = createStorageValue<AuthState<TUser>>(`${storagePrefix}-state`)\n\n const createAuthClientWithSession = (session: string) => {\n return createAuthClient({\n ...authClientOptions,\n fetchOptions: {\n credentials: 'include',\n headers:
|
|
15
|
+
"/**\n * Better-auth helpers for React / React Native applications\n *\n * Features:\n * - Session persistence in local storage\n * - State management with emitters\n * - Automatic retry on errors\n * - Optional JWT support (for Tauri, React Native)\n */\n\nimport {\n createEmitter,\n createStorageValue,\n type Emitter,\n isEqualDeepLite,\n useEmitterValue,\n} from '@take-out/helpers'\nimport { type BetterAuthClientOptions, createAuthClient } from 'better-auth/client'\n\nimport type { Session, User } from 'better-auth'\n\nexport interface StorageKeys {\n token: string\n session: string\n}\n\nexport type AuthState<U extends User = User> = {\n state: 'loading' | 'logged-in' | 'logged-out'\n session: Session | null\n user: U | null\n /** JWT token - only populated when useJWT is enabled */\n token: string | null\n}\n\nexport interface BetterAuthClientProps<\n TUser extends User = User,\n> extends BetterAuthClientOptions {\n /**\n * Callback to transform and type the user object\n * @default (user) => user\n */\n createUser?: (user: User) => TUser\n\n /**\n * Optional callback when authentication state changes\n */\n onAuthStateChange?: (state: AuthState<TUser>) => void\n\n /**\n * Optional callback for handling auth errors\n */\n onAuthError?: (error: any) => void\n\n /**\n * Storage key prefix for local storage\n * @default 'auth'\n */\n storagePrefix?: string\n\n /**\n * Retry delay in milliseconds after auth errors\n * @default 4000\n */\n retryDelay?: number\n\n /**\n * Enable JWT token management for native apps (Tauri, React Native)\n * When false (default), auth uses session cookies forwarded by the server\n * When true, fetches and manages JWT tokens for Authorization header auth\n * @default false\n */\n useJWT?: boolean\n\n /**\n * Cookie names to clear on auth invalidation\n * @default ['better-auth.jwt', 'better-auth.session_token']\n */\n authCookieNames?: string[]\n}\n\nexport interface BetterAuthClientReturn<U extends User = User, TClient = any> {\n clearState: () => void\n authState: ReturnType<typeof createEmitter<AuthState<U>>>\n authClient: TClient\n setAuthClientToken: (props: { token: string; session: string }) => Promise<void>\n clearAuthClientToken: () => void\n clearAllAuth: () => void\n useAuth: () => AuthState<U>\n getAuth: () => AuthState<U> & { loggedIn: boolean }\n getValidToken: () => Promise<string | undefined>\n updateAuthClient: (session: string) => void\n authClientVersion: Emitter<number>\n}\n\ntype InferUser<T> = T extends { createUser?: (user: User) => infer R }\n ? R extends User\n ? R\n : User\n : User\n\nexport function createBetterAuthClient<const Opts extends BetterAuthClientProps<any>>(\n options: Opts\n): BetterAuthClientReturn<InferUser<Opts>, ReturnType<typeof createAuthClient<Opts>>> {\n type TUser = InferUser<Opts>\n const {\n onAuthStateChange,\n onAuthError,\n createUser,\n storagePrefix = 'auth',\n retryDelay = 4000,\n useJWT = false,\n authCookieNames = ['better-auth.jwt', 'better-auth.session_token'],\n ...authClientOptions\n } = options\n\n const empty: AuthState<TUser> = {\n state: 'logged-out',\n session: null,\n user: null,\n token: null,\n }\n\n const keysStorage = createStorageValue<StorageKeys>(`${storagePrefix}-keys`)\n const stateStorage = createStorageValue<AuthState<TUser>>(`${storagePrefix}-state`)\n\n const createAuthClientWithSession = (session: string) => {\n return createAuthClient({\n ...authClientOptions,\n fetchOptions: {\n credentials: 'include',\n headers: session ? { Authorization: `Bearer ${session}` } : undefined,\n },\n })\n }\n\n let authClient = (() => {\n const existingSession = keysStorage.get()?.session\n return existingSession\n ? createAuthClientWithSession(existingSession)\n : createAuthClient({\n ...authClientOptions,\n fetchOptions: { credentials: 'include' },\n } as Opts)\n })()\n\n const authState = createEmitter<AuthState<TUser>>(\n 'authState',\n stateStorage.get() || empty,\n { comparator: isEqualDeepLite }\n )\n\n const authClientVersion = createEmitter<number>('authClientVersion', 0)\n\n const setState = (update: Partial<AuthState<TUser>>) => {\n const current = authState.value!\n const next = { ...current, ...update }\n stateStorage.set(next)\n authState.emit(next)\n\n // update storage keys\n if (next.token && next.session) {\n keysStorage.set({\n token: next.token,\n session: next.session.token,\n })\n } else if (next.session) {\n keysStorage.set({\n token: '',\n session: next.session.token,\n })\n } else {\n keysStorage.set({ token: '', session: '' })\n }\n\n onAuthStateChange?.(next)\n }\n\n const setAuthClientToken = async (props: { token: string; session: string }) => {\n keysStorage.set(props)\n updateAuthClient(props.session)\n }\n\n function updateAuthClient(session: string) {\n authClient = createAuthClientWithSession(session)\n authClientVersion.emit(Math.random())\n subscribeToAuthEffect()\n }\n\n let dispose: Function | null = null\n let retryTimer: ReturnType<typeof setTimeout> | null = null\n\n function subscribeToAuthEffect() {\n dispose?.()\n\n dispose = authClient.useSession.subscribe(async (props) => {\n const { data: dataGeneric, isPending, error } = props\n\n if (error) {\n onAuthError?.(error)\n scheduleAuthRetry(retryDelay)\n return\n }\n\n const data = dataGeneric as\n | undefined\n | {\n session?: AuthState<TUser>['session']\n user?: AuthState<TUser>['user']\n }\n\n // if we have a persisted session but server hasn't confirmed yet, stay loading\n const hasPersistedSession = !!keysStorage.get()?.session\n const nextState = isPending\n ? 'loading'\n : data?.session\n ? 'logged-in'\n : hasPersistedSession && data === undefined\n ? 'loading'\n : 'logged-out'\n\n // only update session/user when we have definitive data\n const sessionUpdate =\n nextState === 'loading'\n ? {}\n : {\n session: data?.session ?? null,\n user: data?.user ? (createUser ? createUser(data.user) : data.user) : null,\n }\n\n // detect new session\n const previousSession = authState.value?.session\n const isNewSession =\n data?.session &&\n (!previousSession ||\n previousSession.id !== data.session.id ||\n previousSession.userId !== data.session.userId)\n\n setState({\n state: nextState,\n ...sessionUpdate,\n })\n\n // fetch JWT token when useJWT is enabled (for native/tauri apps)\n if (useJWT && data?.session && (isNewSession || !authState.value.token)) {\n if (isNewSession && authState.value.token) {\n setState({ token: null })\n }\n\n getValidToken().then((token) => {\n if (token) {\n setState({ token })\n }\n })\n }\n })\n }\n\n function scheduleAuthRetry(delayMs: number) {\n if (retryTimer) clearTimeout(retryTimer)\n retryTimer = setTimeout(() => {\n retryTimer = null\n subscribeToAuthEffect()\n }, delayMs)\n }\n\n async function getValidToken(): Promise<string | undefined> {\n const res = await authClient.$fetch('/token')\n if (res.error) {\n console.error(`Error fetching token: ${res.error.statusText}`)\n return undefined\n }\n return (res.data as any)?.token as string | undefined\n }\n\n const clearAuthClientToken = () => {\n keysStorage.remove()\n }\n\n function clearAuthCookies() {\n if (typeof document === 'undefined') return\n\n for (const cookieName of authCookieNames) {\n document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/`\n const domain = window.location.hostname\n document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${domain}`\n if (domain.startsWith('.')) {\n document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${domain.slice(1)}`\n }\n }\n }\n\n function clearAllAuth() {\n clearAuthCookies()\n clearState()\n }\n\n const getAuth = () => {\n const state = authState?.value || empty\n return { ...state, loggedIn: !!state.session }\n }\n\n const useAuth = () => {\n return useEmitterValue(authState) || empty\n }\n\n function clearState() {\n keysStorage.remove()\n stateStorage.remove()\n setState(empty)\n }\n\n subscribeToAuthEffect()\n\n if (typeof window !== 'undefined' && window.addEventListener) {\n const cleanup = () => {\n dispose?.()\n if (retryTimer) clearTimeout(retryTimer)\n }\n window.addEventListener('beforeunload', cleanup)\n }\n\n const proxiedAuthClient = new Proxy(authClient, {\n get(_target, key) {\n if (key === 'signOut') {\n return () => {\n clearState()\n // @ts-expect-error better-auth type issue\n authClient.signOut?.()\n if (typeof window !== 'undefined') {\n window.location?.reload?.()\n }\n }\n }\n return Reflect.get(authClient, key)\n },\n }) as ReturnType<typeof createAuthClient<Opts>>\n\n return {\n authClientVersion,\n clearState,\n authState,\n authClient: proxiedAuthClient,\n setAuthClientToken,\n clearAuthClientToken,\n clearAllAuth,\n useAuth,\n getAuth,\n getValidToken,\n updateAuthClient,\n }\n}\n"
|
|
16
16
|
],
|
|
17
17
|
"version": 3
|
|
18
18
|
}
|