@missionmind/auth-front 0.0.0-stage → 0.1.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/LICENSE +21 -0
- package/README.md +72 -2
- package/dist/apple-id-token.android.d.ts +7 -0
- package/dist/apple-id-token.android.d.ts.map +1 -0
- package/dist/apple-id-token.android.js +39 -0
- package/dist/apple-id-token.android.js.map +1 -0
- package/dist/apple-id-token.d.ts +12 -0
- package/dist/apple-id-token.ios.d.ts +7 -0
- package/dist/apple-id-token.ios.d.ts.map +1 -0
- package/dist/apple-id-token.ios.js +25 -0
- package/dist/apple-id-token.ios.js.map +1 -0
- package/dist/apple-web-sign-in.d.ts +8 -0
- package/dist/apple-web-sign-in.d.ts.map +1 -0
- package/dist/apple-web-sign-in.js +8 -0
- package/dist/apple-web-sign-in.js.map +1 -0
- package/dist/client.d.ts +130 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +48 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/session.d.ts +132 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +735 -0
- package/dist/session.js.map +1 -0
- package/package.json +43 -4
- package/src/apple-id-token.android.ts +58 -0
- package/src/apple-id-token.d.ts +12 -0
- package/src/apple-id-token.ios.ts +27 -0
- package/src/apple-web-sign-in.ts +7 -0
- package/src/client.ts +71 -0
- package/src/index.ts +18 -0
- package/src/session.ts +1006 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,gFAAgF;AAChF,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,gFAAgF;AAChF,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,sBAAsB,GAAG,IAAI,CAAC;AACpC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,uBAAuB,GAAG,YAAY,CAAC;AAC7C,MAAM,sBAAsB,GAAG,WAAW,CAAC;AA4E3C,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,IAAI,CAAS;IAEb,YAAY,MAAc,EAAE,IAAY;QACtC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,kBAAmB,SAAQ,KAAK;CAAG;AAEzC,SAAS,IAAI,CAAC,EAAU;IACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,gBAAgB,CACvB,KAA2D;IAE3D,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,MAAM,IAAI,mBAAmB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAa;IACtC,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACvD,OAAQ,IAAiC,CAAC,IAAI,CAAC,EAAE,CAAC;IACpD,CAAC;IAED,OAAO;AACT,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAsB,EACtB,OAAuC;IAEvC,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAC/D,MAAM,wBAAwB,GAAG,GAAG,aAAa,eAAe,CAAC;IACjE,MAAM,qBAAqB,GAAG,GAAG,aAAa,YAAY,CAAC;IAC3D,MAAM,6BAA6B,GAAG,GAAG,aAAa,oBAAoB,CAAC;IAC3E,MAAM,wBAAwB,GAAG,GAAG,aAAa,eAAe,CAAC;IAEjE,SAAS,WAAW,CAAC,KAAc;QACjC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,KAAK,CACZ,MAAkB,EAClB,KAAkC,EAClC,GAA2B;QAE3B,OAAO,OAAO,CAAC,WAAW;YACxB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC;YACzC,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,iBAAiB,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAE5C;;;;;;;;OAQG;IACH,SAAS,cAAc;QACrB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;QAE7D,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;YAC/C,SAAS;YACT,OAAO;SACR,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,UAAU,gBAAgB;QAC7B,OAAO,OAAO,CAAC,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,oBAAoB;QAC3B,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,UAAU,WAAW;QACxB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAErE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,QAAQ,GAAG,UAAU,EAAE,CAAC;QAC9B,MAAM,WAAW,CAAC,YAAY,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAEhE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,wBAAwB,CAAC,QAAgB;QACtD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CACpC,qBAAqB,EACrB,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,CACvC,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,kBAAkB,CAC1B,iCAAiC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,mBAAmB,GAAG,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACH,KAAK,UAAU,iBAAiB;QAC9B,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;QAExE,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACvD,6DAA6D;YAC7D,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;YAC5D,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,KAAK,UAAU,gBAAgB;QAC7B,MAAM,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,mBAAmB,CAAC,WAAoB;QACrD,MAAM,WAAW,CAAC,YAAY,CAC5B,6BAA6B,EAC7B,WAAW,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,uBAAuB,CAC/D,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,qEAAqE;YACrE,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,UAAU,mBAAmB,CAAC,MAAc;QAC/C,MAAM,WAAW,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC,KAAK,CACpE,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS,oBAAoB;QAC3B,OAAO,CACL,YAAY,CAAC,6BAA6B,CAAC,KAAK,uBAAuB,CACxE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,UAAU,aAAa;QAC1B,MAAM,OAAO,CAAC,UAAU,CAAC;YACvB,gBAAgB,EAAE;YAClB,WAAW,CAAC,eAAe,CAAC,6BAA6B,CAAC;YAC1D,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC;SACtD,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,KAAK,UAAU,gBAAgB;QAC7B,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,UAAU,kBAAkB;QAC/B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;QAEzC,MAAM,gBAAgB,EAAE,CAAC;QACzB,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACvD,yEAAyE;YACzE,yEAAyE;YACzE,sEAAsE;YACtE,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC9D,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iFAAiF;IACjF,KAAK,UAAU,qBAAqB,CAClC,WAAmB;QAEnB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CACpC,uBAAuB,EACvB;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;SAC7B,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,MAAM,gBAAgB,EAAE,EAAE,CAAC;gBAC7B,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACjE,CAAC;YAED,MAAM,IAAI,kBAAkB,CAC1B,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;YAC9C,gEAAgE;YAChE,MAAM,gBAAgB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;;;OASG;IACH,IAAI,wBAAwB,GAAG,KAAK,CAAC;IAErC;;;;;;OAMG;IACH,SAAS,oBAAoB;QAC3B,wBAAwB,GAAG,IAAI,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,UAAU,gBAAgB,CAAC,MAAe;QAC7C,IAAI,CAAC,wBAAwB,IAAI,CAAC,MAAM,gBAAgB,EAAE,CAAC,EAAE,CAAC;YAC5D,MAAM,iBAAiB,EAAE,CAAC;YAE1B,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,IAAI,MAAM,gBAAgB,EAAE,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,MAAM,UAAU;iBAC7B,UAAU,EAAE;iBACZ,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAEvD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;gBAClE,MAAM,iBAAiB,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,uEAAuE;gBACvE,4DAA4D;gBAC5D,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,MAAM,WAAW,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAE3D,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,mBAAmB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM,iBAAiB,EAAE,CAAC;gBAC1B,oBAAoB,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;gBAC5B,sEAAsE;gBACtE,sEAAsE;gBACtE,8DAA8D;gBAC9D,MAAM,aAAa,EAAE,CAAC;gBACtB,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBAClD,MAAM,gBAAgB,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,oEAAoE;QACpE,IAAI,oBAAoB,EAAE,EAAE,CAAC;YAC3B,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACpD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,CAAC,MAAM,gBAAgB,EAAE,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,kBAAkB,CAC1B,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,oBAAoB,EAAE,CAAC;QAEvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,UAAU,oBAAoB,CAAC,MAAe,EAAE,QAAgB;QACnE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;YACpD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,yCAAyC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,eAAe,GAAsD,IAAI,CAAC;IAC9E,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAElC;;;;;;;OAOG;IACH,SAAS,UAAU,CAAC,MAAe,EAAE,QAAgB;QACnD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,IAAI,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,eAAe,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtC,OAAO,eAAe,CAAC,GAAG,CAAC;YAC7B,CAAC;YACD,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAC7B,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAC3D,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;YACtE,qBAAqB,GAAG,WAAW,CAAC;YAEpC,IAAI,WAAW,EAAE,CAAC;gBAChB,uEAAuE;gBACvE,uBAAuB;gBACvB,wBAAwB,GAAG,KAAK,CAAC;YACnC,CAAC;YAED,eAAe,GAAG,IAAI,CAAC;YAEvB,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,eAAe,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAElC,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,SAAS,aAAa;QACpB,OAAO,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,SAAS,aAAa;QACpB,OAAO,UAAU,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,SAAS,cAAc;QACrB,qBAAqB,GAAG,KAAK,CAAC;QAC9B,oBAAoB,EAAE,CAAC;QAEvB,OAAO,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B;;;;;;;;;OASG;IACH,KAAK,UAAU,cAAc;QAC3B,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,aAAa,GAAG,IAAI,CAAC;QAErB,+BAA+B;QAC/B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAAC;YAClD,KAAK,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/C,gCAAgC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,EAAE,CAAC;IACxB,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,cAAc;QACrB,OAAO,CAAC,CACN,gBAAgB,EAAE;YAClB,YAAY,CAAC,wBAAwB,CAAC;YACtC,YAAY,CAAC,6BAA6B,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAE/B,SAAS,qBAAqB;QAC5B,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,YAAY,CAAC,SAAS,CAAC;YACrB,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;YACvC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;SACxC,CAAC,CAAC;QAEH,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,iEAAiE;IACjE,KAAK,UAAU,gBAAgB;QAC7B,qBAAqB,EAAE,CAAC;QAExB,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC;QAEnD,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,SAAS,aAAa;QACpB,OAAO,eAAe,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,UAAU,qBAAqB;QAClC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAE5C,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,SAAS,eAAe;QACtB,OAAO;YACL,MAAM,EAAE,YAAY,CAAC,wBAAwB,CAAC;YAC9C,aAAa,EAAE,oBAAoB,EAAE;YACrC,YAAY,EACV,YAAY,CAAC,6BAA6B,CAAC,KAAK,sBAAsB;SACzE,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,UAAU,UAAU,CACvB,MAA0B,EAC1B,QAA4C;QAE5C,sEAAsE;QACtE,wEAAwE;QACxE,WAAW;QACX,qBAAqB,GAAG,IAAI,CAAC;QAC7B,wBAAwB,GAAG,KAAK,CAAC;QACjC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE7B,yEAAyE;QACzE,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;YACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM;YAC5B,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC3B,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;QAE7D,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,EAAE,0BAA0B,EAAE,GAAG,OAAO,CAAC;QAE/C,wEAAwE;QACxE,mDAAmD;QACnD,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,kBAAkB,EAAE;YACpB,MAAM,IAAI,QAAQ,CAAC,YAAY,IAAI,0BAA0B;gBAC3D,CAAC,CAAC,gEAAgE;oBAChE,8DAA8D;oBAC9D,oEAAoE;oBACpE,gEAAgE;oBAChE,0CAA0C;oBAC1C,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;wBAClE,OAAO,CAAC,KAAK,CACX,kDAAkD,EAClD,KAAK,CACN,CAAC;wBACF,WAAW,CAAC,KAAK,CAAC,CAAC;oBACrB,CAAC,CAAC;gBACJ,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;QAEH,oBAAoB,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,UAAU,eAAe,CAC5B,KAAa,EACb,QAAgB,EAChB,aAAqC,SAAS;QAE9C,OAAO,MAAM,KAAK,CAChB,SAAS,EACT,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAC9C,KAAK,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;YACnC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;gBACpD,KAAK;gBACL,QAAQ;aACT,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAExB,MAAM,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,eAAe,CAC5B,aAAqC,SAAS;QAE9C,OAAO,MAAM,KAAK,CAChB,SAAS,EACT,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAC9C,KAAK,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,aAAa,EAAE,CAAC;YAEtC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gBACrD,QAAQ,EAAE,OAAO;gBACjB,OAAO;gBACP,YAAY,EAAE;oBACZ,OAAO,EAAE;wBACP,GAAG,CAAC,MAAM,qBAAqB,EAAE,CAAC;wBAClC,aAAa,EAAE,OAAO,CAAC,YAAY;qBACpC;iBACF;aACF,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAExB,MAAM,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,gBAAgB,CAC7B,aAAqC,SAAS;QAE9C,OAAO,MAAM,KAAK,CAChB,SAAS,EACT,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,EAC/C,KAAK,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAEzC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gBACrD,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC3B,YAAY,EAAE;oBACZ,OAAO,EAAE;wBACP,GAAG,CAAC,MAAM,qBAAqB,EAAE,CAAC;wBAClC,aAAa,EAAE,OAAO,CAAC,YAAY;qBACpC;iBACF;aACF,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAExB,MAAM,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,UAAU,aAAa;QAC1B,OAAO,MAAM,KAAK,CAChB,cAAc,EACd,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAC9C,KAAK,IAAI,EAAE;YACT,MAAM,OAAO,GAAG,MAAM,aAAa,EAAE,CAAC;YAEtC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC;gBAC5C,QAAQ,EAAE,OAAO;gBACjB,OAAO;aACR,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAExB,wEAAwE;YACxE,kEAAkE;YAClE,YAAY;YACZ,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,kBAAkB,EAAE,CAAC;YAC3B,oBAAoB,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,cAAc;QAC3B,OAAO,MAAM,KAAK,CAChB,cAAc,EACd,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,EAC/C,KAAK,IAAI,EAAE;YACT,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAEzC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC;gBAC5C,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;aAC5B,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAExB,wEAAwE;YACxE,kEAAkE;YAClE,YAAY;YACZ,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,kBAAkB,EAAE,CAAC;YAC3B,oBAAoB,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,oBAAoB,CAAC,KAAa;QAC/C,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;QAE5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,oBAAoB,CAAC;YACtD,KAAK;YACL,UAAU,EAAE,OAAO,CAAC,gBAAgB;SACrC,CAAC,CAAC;QAEH,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,WAAmB,EAAE,KAAa;QAC7D,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;QAE5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,UAAU,OAAO;QACpB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QAEtB,MAAM,aAAa,EAAE,CAAC;QACtB,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,0EAA0E;QAC1E,2DAA2D;QAC3D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACzE,qBAAqB,GAAG,KAAK,CAAC;QAC9B,MAAM,gBAAgB,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,aAAa;QACb,aAAa;QACb,gBAAgB;QAChB,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,aAAa;QACb,cAAc;QACd,cAAc;QACd,mBAAmB;QACnB,mBAAmB;QACnB,oBAAoB;QACpB,aAAa;QACb,eAAe;QACf,eAAe;QACf,gBAAgB;QAChB,OAAO;QACP,cAAc;KACf,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,45 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@missionmind/auth-front",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Better Auth in an Expo app: an anonymous account per device kept by a device token in the keychain, sign-in with email, Apple and Google, linking, password reset and sign-out.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "MissionMind",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"default": "./dist/index.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"src"
|
|
18
|
+
],
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "rm -rf dist && tsc -p tsconfig.build.json && cp src/apple-id-token.d.ts dist/",
|
|
21
|
+
"types:check": "tsc --noEmit",
|
|
22
|
+
"prepack": "node ../../scripts/package-manifest.mjs prepack",
|
|
23
|
+
"postpack": "node ../../scripts/package-manifest.mjs postpack"
|
|
24
|
+
},
|
|
25
|
+
"publishConfig": {
|
|
26
|
+
"access": "public"
|
|
27
|
+
},
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"@better-auth/expo": "1.7.17",
|
|
30
|
+
"better-auth": "1.7.17"
|
|
31
|
+
},
|
|
32
|
+
"peerDependencies": {
|
|
33
|
+
"@legendapp/state": ">=3.0.0-beta.47",
|
|
34
|
+
"@react-native-google-signin/google-signin": ">=16.1.2",
|
|
35
|
+
"expo-apple-authentication": "*",
|
|
36
|
+
"expo-constants": "*",
|
|
37
|
+
"expo-crypto": "*",
|
|
38
|
+
"expo-secure-store": "*",
|
|
39
|
+
"expo-web-browser": "*",
|
|
40
|
+
"react": ">=19"
|
|
41
|
+
},
|
|
42
|
+
"devDependencies": {
|
|
43
|
+
"typescript": "6.0.3"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import Constants from "expo-constants";
|
|
2
|
+
import {
|
|
3
|
+
CryptoDigestAlgorithm,
|
|
4
|
+
digestStringAsync,
|
|
5
|
+
randomUUID,
|
|
6
|
+
} from "expo-crypto";
|
|
7
|
+
import { openAuthSessionAsync } from "expo-web-browser";
|
|
8
|
+
import { APPLE_WEB_SIGN_IN_APP_PATH } from "./apple-web-sign-in";
|
|
9
|
+
|
|
10
|
+
const USER_CANCELLED = "user_cancelled_authorize";
|
|
11
|
+
|
|
12
|
+
export async function getAppleIdToken({
|
|
13
|
+
webSignInUrl,
|
|
14
|
+
}: {
|
|
15
|
+
webSignInUrl: string;
|
|
16
|
+
}) {
|
|
17
|
+
const scheme = Constants.expoConfig?.scheme;
|
|
18
|
+
if (typeof scheme !== "string") {
|
|
19
|
+
throw new Error("No app scheme");
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const state = randomUUID();
|
|
23
|
+
const nonce = randomUUID();
|
|
24
|
+
// Apple embeds the hash; the server checks it against the raw nonce, so a
|
|
25
|
+
// token caught on its way through the deep link cannot be replayed.
|
|
26
|
+
const hashedNonce = await digestStringAsync(
|
|
27
|
+
CryptoDigestAlgorithm.SHA256,
|
|
28
|
+
nonce
|
|
29
|
+
);
|
|
30
|
+
const startUrl = `${webSignInUrl}?${new URLSearchParams({
|
|
31
|
+
scheme,
|
|
32
|
+
state,
|
|
33
|
+
nonce: hashedNonce,
|
|
34
|
+
}).toString()}`;
|
|
35
|
+
|
|
36
|
+
const result = await openAuthSessionAsync(
|
|
37
|
+
startUrl,
|
|
38
|
+
`${scheme}://${APPLE_WEB_SIGN_IN_APP_PATH}`
|
|
39
|
+
);
|
|
40
|
+
if (result.type !== "success") {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const params = new URL(result.url).searchParams;
|
|
45
|
+
if (params.get("state") !== state) {
|
|
46
|
+
throw new Error("Apple sign-in state mismatch");
|
|
47
|
+
}
|
|
48
|
+
const error = params.get("error");
|
|
49
|
+
if (error === USER_CANCELLED) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
const token = params.get("id_token");
|
|
53
|
+
if (!token) {
|
|
54
|
+
throw new Error(`Apple sign-in failed: ${error ?? "no identity token"}`);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return { token, nonce };
|
|
58
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An Apple identity token for `authClient.signIn.social` / `linkSocial`:
|
|
3
|
+
* from the native sheet on iOS (`.ios.ts`), from Apple's web sign-in in a
|
|
4
|
+
* browser tab on Android (`.android.ts`, opening `webSignInUrl`: the API's
|
|
5
|
+
* `createAppleWebSignInRouter` `/start`). Resolves null when the user backs out.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getAppleIdToken(options: {
|
|
8
|
+
webSignInUrl: string;
|
|
9
|
+
}): Promise<{
|
|
10
|
+
nonce?: string;
|
|
11
|
+
token: string;
|
|
12
|
+
} | null>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// biome-ignore lint/performance/noNamespaceImport: needed for expo-apple-authentication
|
|
2
|
+
import * as AppleAuthentication from "expo-apple-authentication";
|
|
3
|
+
|
|
4
|
+
/** The native sheet: no web sign-in on iOS. */
|
|
5
|
+
export async function getAppleIdToken(_options: { webSignInUrl: string }) {
|
|
6
|
+
try {
|
|
7
|
+
const credential = await AppleAuthentication.signInAsync({
|
|
8
|
+
requestedScopes: [
|
|
9
|
+
AppleAuthentication.AppleAuthenticationScope.FULL_NAME,
|
|
10
|
+
AppleAuthentication.AppleAuthenticationScope.EMAIL,
|
|
11
|
+
],
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
if (!credential.identityToken) {
|
|
15
|
+
throw new Error("No identity token");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return { token: credential.identityToken };
|
|
19
|
+
// biome-ignore lint/suspicious/noExplicitAny: tmp fix
|
|
20
|
+
} catch (err: any) {
|
|
21
|
+
if (err.code === "ERR_REQUEST_CANCELED") {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
throw err;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The deep link path Apple's web sign-in (Android) answers on:
|
|
3
|
+
* `<scheme>://apple-auth`, as the API's `createAppleWebSignInRouter` sends it.
|
|
4
|
+
* The app should consume it rather than navigate to it (Expo Router's
|
|
5
|
+
* `+native-intent`).
|
|
6
|
+
*/
|
|
7
|
+
export const APPLE_WEB_SIGN_IN_APP_PATH = "apple-auth";
|
package/src/client.ts
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import {
|
|
2
|
+
expoClient,
|
|
3
|
+
getCookie,
|
|
4
|
+
storageAdapter,
|
|
5
|
+
} from "@better-auth/expo/client";
|
|
6
|
+
import { anonymousClient } from "better-auth/client/plugins";
|
|
7
|
+
import { createAuthClient } from "better-auth/react";
|
|
8
|
+
// biome-ignore lint/performance/noNamespaceImport: needed for better-auth/expo
|
|
9
|
+
import * as SecureStore from "expo-secure-store";
|
|
10
|
+
|
|
11
|
+
export interface ExpoAuthClientOptions {
|
|
12
|
+
/** The API's URL, where Better Auth is served (`/api/auth`). */
|
|
13
|
+
baseURL: string;
|
|
14
|
+
/** This build's deep link scheme, for the Expo plugin's browser flows. */
|
|
15
|
+
scheme: string;
|
|
16
|
+
/**
|
|
17
|
+
* Prefix of what is kept in the keychain: the session cookie
|
|
18
|
+
* (`<prefix>_cookie`) and, with `createAuthSession`, the device token and
|
|
19
|
+
* the account records (`<prefix>.device-token`…).
|
|
20
|
+
*/
|
|
21
|
+
storagePrefix: string;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* The Better Auth client of an Expo app: the anonymous plugin, and the Expo
|
|
26
|
+
* plugin keeping the session cookie in the keychain, which also caches each
|
|
27
|
+
* `/get-session` reply there so the user is known before the first one comes
|
|
28
|
+
* back, and while offline.
|
|
29
|
+
*/
|
|
30
|
+
export function createExpoAuthClient(options: ExpoAuthClientOptions) {
|
|
31
|
+
const { storagePrefix } = options;
|
|
32
|
+
|
|
33
|
+
const authClient = createAuthClient({
|
|
34
|
+
baseURL: options.baseURL,
|
|
35
|
+
sessionOptions: {
|
|
36
|
+
refetchInterval: 60 * 60 * 24, // 24 hours
|
|
37
|
+
refetchOnWindowFocus: false,
|
|
38
|
+
refetchWhenOffline: false,
|
|
39
|
+
},
|
|
40
|
+
plugins: [
|
|
41
|
+
anonymousClient(),
|
|
42
|
+
expoClient({
|
|
43
|
+
scheme: options.scheme,
|
|
44
|
+
storagePrefix,
|
|
45
|
+
storage: SecureStore,
|
|
46
|
+
}),
|
|
47
|
+
],
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
const cookieStorage = storageAdapter(SecureStore);
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* The session cookie the Expo plugin keeps in the keychain, read
|
|
54
|
+
* synchronously — for the root layout, which decides before the first
|
|
55
|
+
* render. Everything else reads it with `authClient.getCookie()`, which is
|
|
56
|
+
* asynchronous since better-auth 1.7. A keychain that cannot be read counts
|
|
57
|
+
* as empty.
|
|
58
|
+
*/
|
|
59
|
+
function readStoredCookie(): string {
|
|
60
|
+
try {
|
|
61
|
+
return getCookie(cookieStorage.getItem(`${storagePrefix}_cookie`));
|
|
62
|
+
} catch {
|
|
63
|
+
return "";
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return { authClient, readStoredCookie, storagePrefix };
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export type ExpoAuthClient = ReturnType<typeof createExpoAuthClient>;
|
|
71
|
+
export type AuthClient = ExpoAuthClient["authClient"];
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** biome-ignore-all lint/performance/noBarrelFile: the package's entry point */
|
|
2
|
+
|
|
3
|
+
export { APPLE_WEB_SIGN_IN_APP_PATH } from "./apple-web-sign-in";
|
|
4
|
+
export {
|
|
5
|
+
type AuthClient,
|
|
6
|
+
createExpoAuthClient,
|
|
7
|
+
type ExpoAuthClient,
|
|
8
|
+
type ExpoAuthClientOptions,
|
|
9
|
+
} from "./client";
|
|
10
|
+
export {
|
|
11
|
+
type AuthAction,
|
|
12
|
+
type AuthActionProps,
|
|
13
|
+
AuthenticationError,
|
|
14
|
+
type AuthProvider,
|
|
15
|
+
type AuthSession,
|
|
16
|
+
type AuthSessionOptions,
|
|
17
|
+
createAuthSession,
|
|
18
|
+
} from "./session";
|