@passlock/client 0.9.22 → 0.9.23
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/authentication/authenticate.d.ts +15 -15
- package/dist/authentication/authenticate.fixture.d.ts +20 -6
- package/dist/authentication/authenticate.fixture.js +7 -5
- package/dist/authentication/authenticate.fixture.js.map +1 -1
- package/dist/authentication/authenticate.js +19 -8
- package/dist/authentication/authenticate.js.map +1 -1
- package/dist/capabilities/capabilities.d.ts +8 -4
- package/dist/capabilities/capabilities.js +10 -1
- package/dist/capabilities/capabilities.js.map +1 -1
- package/dist/connection/connection.d.ts +11 -7
- package/dist/connection/connection.fixture.d.ts +2 -2
- package/dist/connection/connection.fixture.js +2 -1
- package/dist/connection/connection.fixture.js.map +1 -1
- package/dist/connection/connection.js +12 -3
- package/dist/connection/connection.js.map +1 -1
- package/dist/effect.d.ts +22 -45
- package/dist/effect.js +55 -51
- package/dist/effect.js.map +1 -1
- package/dist/email/email.d.ts +38 -11
- package/dist/email/email.fixture.d.ts +19 -5
- package/dist/email/email.fixture.js +4 -3
- package/dist/email/email.fixture.js.map +1 -1
- package/dist/email/email.js +43 -7
- package/dist/email/email.js.map +1 -1
- package/dist/event/event.d.ts +3 -1
- package/dist/event/event.js +3 -0
- package/dist/event/event.js.map +1 -1
- package/dist/index.d.ts +105 -27
- package/dist/index.js +101 -50
- package/dist/index.js.map +1 -1
- package/dist/logging/eventLogger.d.ts +13 -1
- package/dist/logging/eventLogger.js +13 -0
- package/dist/logging/eventLogger.js.map +1 -1
- package/dist/registration/register.d.ts +18 -21
- package/dist/registration/register.fixture.d.ts +19 -5
- package/dist/registration/register.fixture.js +14 -7
- package/dist/registration/register.fixture.js.map +1 -1
- package/dist/registration/register.js +18 -9
- package/dist/registration/register.js.map +1 -1
- package/dist/rpc/authentication.d.ts +0 -1
- package/dist/rpc/authentication.js +1 -0
- package/dist/rpc/authentication.js.map +1 -1
- package/dist/rpc/client.d.ts +4 -1
- package/dist/rpc/client.js +12 -2
- package/dist/rpc/client.js.map +1 -1
- package/dist/rpc/config.d.ts +0 -1
- package/dist/rpc/connection.d.ts +0 -1
- package/dist/rpc/connection.js +1 -0
- package/dist/rpc/connection.js.map +1 -1
- package/dist/rpc/registration.d.ts +0 -1
- package/dist/rpc/registration.js +1 -0
- package/dist/rpc/registration.js.map +1 -1
- package/dist/rpc/social.d.ts +0 -1
- package/dist/rpc/social.js +1 -0
- package/dist/rpc/social.js.map +1 -1
- package/dist/rpc/user.d.ts +0 -1
- package/dist/rpc/user.js +1 -0
- package/dist/rpc/user.js.map +1 -1
- package/dist/social/social.d.ts +16 -23
- package/dist/social/social.fixture.d.ts +21 -9
- package/dist/social/social.fixture.js +8 -14
- package/dist/social/social.fixture.js.map +1 -1
- package/dist/social/social.js +14 -10
- package/dist/social/social.js.map +1 -1
- package/dist/storage/storage.d.ts +40 -12
- package/dist/storage/storage.fixture.d.ts +2 -2
- package/dist/storage/storage.fixture.js +2 -2
- package/dist/storage/storage.fixture.js.map +1 -1
- package/dist/storage/storage.js +48 -15
- package/dist/storage/storage.js.map +1 -1
- package/dist/test/fixtures.d.ts +1 -2
- package/dist/test/fixtures.js +20 -5
- package/dist/test/fixtures.js.map +1 -1
- package/dist/user/user.d.ts +8 -5
- package/dist/user/user.fixture.d.ts +2 -2
- package/dist/user/user.fixture.js +9 -5
- package/dist/user/user.fixture.js.map +1 -1
- package/dist/user/user.js +9 -3
- package/dist/user/user.js.map +1 -1
- package/dist/version.d.ts +1 -2
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +30 -26
- package/src/authentication/authenticate.fixture.ts +8 -7
- package/src/authentication/authenticate.test.ts +59 -17
- package/src/authentication/authenticate.ts +34 -32
- package/src/capabilities/capabilities.ts +9 -8
- package/src/connection/connection.fixture.ts +2 -1
- package/src/connection/connection.test.ts +3 -3
- package/src/connection/connection.ts +9 -8
- package/src/effect.ts +129 -128
- package/src/email/email.fixture.ts +4 -3
- package/src/email/email.test.ts +4 -4
- package/src/email/email.ts +24 -16
- package/src/index.ts +225 -169
- package/src/logging/eventLogger.test.ts +1 -1
- package/src/logging/eventLogger.ts +2 -2
- package/src/registration/register.fixture.ts +14 -8
- package/src/registration/register.test.ts +13 -9
- package/src/registration/register.ts +37 -34
- package/src/rpc/authentication.ts +31 -0
- package/src/rpc/client.ts +173 -0
- package/src/rpc/config.ts +18 -0
- package/src/rpc/connection.ts +24 -0
- package/src/rpc/registration.ts +31 -0
- package/src/rpc/social.ts +36 -0
- package/src/rpc/user.ts +42 -0
- package/src/social/social.fixture.ts +10 -18
- package/src/social/social.test.ts +13 -29
- package/src/social/social.ts +20 -47
- package/src/storage/storage.fixture.ts +3 -4
- package/src/storage/storage.test.ts +28 -19
- package/src/storage/storage.ts +36 -36
- package/src/test/fixtures.ts +21 -6
- package/src/user/user.fixture.ts +17 -7
- package/src/user/user.test.ts +2 -5
- package/src/user/user.ts +13 -9
- package/src/version.ts +1 -0
- package/dist/authentication/authenticate.d.ts.map +0 -1
- package/dist/authentication/authenticate.fixture.d.ts.map +0 -1
- package/dist/capabilities/capabilities.d.ts.map +0 -1
- package/dist/config.d.ts +0 -18
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -20
- package/dist/config.js.map +0 -1
- package/dist/connection/connection.d.ts.map +0 -1
- package/dist/connection/connection.fixture.d.ts.map +0 -1
- package/dist/effect.d.ts.map +0 -1
- package/dist/email/email.d.ts.map +0 -1
- package/dist/email/email.fixture.d.ts.map +0 -1
- package/dist/event/event.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/logging/eventLogger.d.ts.map +0 -1
- package/dist/registration/register.d.ts.map +0 -1
- package/dist/registration/register.fixture.d.ts.map +0 -1
- package/dist/rpc/authentication.d.ts.map +0 -1
- package/dist/rpc/client.d.ts.map +0 -1
- package/dist/rpc/config.d.ts.map +0 -1
- package/dist/rpc/connection.d.ts.map +0 -1
- package/dist/rpc/registration.d.ts.map +0 -1
- package/dist/rpc/social.d.ts.map +0 -1
- package/dist/rpc/user.d.ts.map +0 -1
- package/dist/social/social.d.ts.map +0 -1
- package/dist/social/social.fixture.d.ts.map +0 -1
- package/dist/storage/storage.d.ts.map +0 -1
- package/dist/storage/storage.fixture.d.ts.map +0 -1
- package/dist/test/fixtures.d.ts.map +0 -1
- package/dist/user/user.d.ts.map +0 -1
- package/dist/user/user.fixture.d.ts.map +0 -1
- package/dist/version.d.ts.map +0 -1
- package/src/config.ts +0 -42
package/dist/effect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect.js","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAErF,OAAO,EAAE,wBAAwB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"effect.js","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAErF,OAAO,EAEL,SAAS,EACT,oBAAoB,GACrB,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAGvE,OAAO,EACL,uBAAuB,EAGvB,qBAAqB,EACrB,aAAa,GACd,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACrF,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GAGf,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EACL,gBAAgB,EAGhB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAKL,aAAa,EACb,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAEL,cAAc,EACd,cAAc,EACd,kBAAkB,GAEnB,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAIL,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAA;AAEvB,YAAY;AAEZ,MAAM,oBAAoB,GAAG,CAAC,CAAC,OAAO,CACpC,gBAAgB,EAChB,gBAAgB,CAAC,EAAE,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAC1B,IAAI,CACF,CAAC,CAAC,UAAU,CAAC;QACX,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QAC1B,KAAK,EAAE,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACnE,OAAO,IAAI,SAAS,CAAC;oBACnB,OAAO,EAAE,4DAA4D;iBACtE,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,oBAAoB,CAAC;oBAC9B,OAAO,EAAE,6BAA6B;oBACtC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;KACF,CAAC,EACF,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CACzC;CACJ,CAAC,CACH,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CACjC,aAAa,EACb,aAAa,CAAC,EAAE,CAAC;IACf,aAAa,EAAE,CAAC,OAAiC,EAAE,EAAE,CACnD,IAAI,CACF,CAAC,CAAC,UAAU,CAAC;QACX,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;QACjC,KAAK,EAAE,CAAC,CAAC,EAAE,CACT,IAAI,oBAAoB,CAAC;YACvB,OAAO,EAAE,yCAAyC;YAClD,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;SAClB,CAAC;KACL,CAAC,EACF,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CACzC;CACJ,CAAC,CACH,CAAA;AAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;AAE3F,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;AAElF,cAAc;AACd,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAA;AACzE,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAC/E,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAClF,MAAM,sBAAsB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AACxF,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAC1E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AACtE,MAAM,kBAAkB,GAAG,kBAAkB,CAAA;AAC7C,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAExE,MAAM,uBAAuB,GAAG,IAAI,CAClC,uBAAuB,EACvB,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAC1B,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAC/B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,yBAAyB,GAAG,IAAI,CACpC,uBAAuB,EACvB,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,EACjC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAC5B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,qBAAqB,GAAG,IAAI,CAChC,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAC5B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAC1B,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CACtC,cAAc,EACd,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CACnE,CAAA;AAED,MAAM,gBAAgB,GAAG,IAAI,CAC3B,gBAAgB,EAChB,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EACzB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAC3C,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,CAClB,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,CACrC,cAAc,EACd,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CACzD,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,GAAqC,EAAE,CAC/D,IAAI,CACF,iBAAiB,EACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAC1C,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CACjC,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAsB,IAAI,CACrD,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC9C,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAC5B,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAc,EAA4C,EAAE,CACzF,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EACrD,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAC3B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAA4B,EACwB,EAAE,CACtD,IAAI,CACF,mBAAmB,EACnB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAClC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,OAA8B,EACwB,EAAE,CAAC,IAAI,CAC3D,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAC1D,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAsB,EAC6B,EAAE,CACrD,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAsD,IAAI,CACpF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAC/C,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAoB,EAC0B,EAAE,CAChD,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,EAC9D,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAC1B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,QAAkB,EAC6B,EAAE,CACjD,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAChD,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAmB,IAAI,CACpD,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAChD,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,OAAwB,EACgC,EAAE,CAC1D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EACnD,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC7B,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA4B,EAC8B,EAAE,CAC5D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EACvD,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC7B,CAAA"}
|
package/dist/email/email.d.ts
CHANGED
|
@@ -1,40 +1,67 @@
|
|
|
1
1
|
import type { VerifyEmailErrors as RpcErrors } from '@passlock/shared/dist/rpc/user.js';
|
|
2
|
-
import { UserClient } from '@passlock/shared/dist/rpc/user.js';
|
|
3
2
|
import type { Principal } from '@passlock/shared/dist/schema/principal.js';
|
|
4
3
|
import { Context, Effect as E, Layer } from 'effect';
|
|
5
|
-
import {
|
|
4
|
+
import { type AuthenticationErrors, AuthenticationService } from '../authentication/authenticate.js';
|
|
5
|
+
import { UserClient } from '../rpc/user.js';
|
|
6
6
|
import { StorageService } from '../storage/storage.js';
|
|
7
7
|
export type VerifyRequest = {
|
|
8
8
|
code: string;
|
|
9
9
|
};
|
|
10
10
|
export type VerifyEmailErrors = RpcErrors | AuthenticationErrors;
|
|
11
|
-
declare const URLQueryString_base: Context.TagClass<URLQueryString, "URLQueryString", E.Effect<string, never, never>>;
|
|
11
|
+
declare const URLQueryString_base: Context.TagClass<URLQueryString, "@utils/URLQueryString", E.Effect<string, never, never>>;
|
|
12
12
|
export declare class URLQueryString extends URLQueryString_base {
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
declare const EmailService_base: Context.TagClass<EmailService, "@services/EmailService", {
|
|
15
15
|
verifyEmailCode: (request: VerifyRequest) => E.Effect<Principal, VerifyEmailErrors>;
|
|
16
16
|
verifyEmailLink: () => E.Effect<Principal, VerifyEmailErrors>;
|
|
17
|
-
}
|
|
18
|
-
export declare
|
|
17
|
+
}>;
|
|
18
|
+
export declare class EmailService extends EmailService_base {
|
|
19
|
+
}
|
|
19
20
|
export type Dependencies = StorageService | AuthenticationService | UserClient;
|
|
21
|
+
/**
|
|
22
|
+
* Look for ?code=<code> in the url
|
|
23
|
+
* @returns
|
|
24
|
+
*/
|
|
20
25
|
export declare const extractCodeFromHref: () => E.Effect<string, import("effect/Cause").NoSuchElementException, URLQueryString>;
|
|
26
|
+
/**
|
|
27
|
+
* Verify the mailbox using the given code
|
|
28
|
+
* @param request
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
21
31
|
export declare const verifyEmail: (request: VerifyRequest) => E.Effect<Principal, VerifyEmailErrors, Dependencies>;
|
|
32
|
+
/**
|
|
33
|
+
* Look for a code in the current url and verify it
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
22
36
|
export declare const verifyEmailLink: () => E.Effect<{
|
|
37
|
+
readonly email?: string;
|
|
38
|
+
readonly givenName?: string;
|
|
39
|
+
readonly familyName?: string;
|
|
40
|
+
readonly emailVerified?: boolean;
|
|
41
|
+
readonly iss: string;
|
|
42
|
+
readonly aud: string;
|
|
43
|
+
readonly sub: string;
|
|
44
|
+
readonly iat: Date;
|
|
45
|
+
readonly nbf: Date;
|
|
46
|
+
readonly exp: Date;
|
|
47
|
+
readonly jti: string;
|
|
23
48
|
readonly token: string;
|
|
24
|
-
readonly
|
|
25
|
-
|
|
49
|
+
readonly userVerified: boolean;
|
|
50
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
51
|
+
readonly authId: string;
|
|
52
|
+
readonly user?: {
|
|
26
53
|
readonly id: string;
|
|
54
|
+
readonly email: string;
|
|
27
55
|
readonly givenName: string;
|
|
28
56
|
readonly familyName: string;
|
|
29
57
|
readonly emailVerified: boolean;
|
|
30
58
|
};
|
|
31
59
|
readonly authStatement: {
|
|
32
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
33
60
|
readonly userVerified: boolean;
|
|
61
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
34
62
|
readonly authTimestamp: Date;
|
|
35
63
|
};
|
|
36
64
|
readonly expireAt: Date;
|
|
37
65
|
}, VerifyEmailErrors, URLQueryString | Dependencies>;
|
|
38
|
-
export declare const EmailServiceLive: Layer.Layer<EmailService, never, StorageService | AuthenticationService | URLQueryString
|
|
66
|
+
export declare const EmailServiceLive: Layer.Layer<EmailService, never, UserClient | StorageService | AuthenticationService | URLQueryString>;
|
|
39
67
|
export {};
|
|
40
|
-
//# sourceMappingURL=email.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { VerifyEmailReq, VerifyEmailRes } from '@passlock/shared/dist/rpc/user.js';
|
|
2
2
|
import { Layer as L } from 'effect';
|
|
3
3
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
4
|
+
import { UserClient } from '../rpc/user.js';
|
|
4
5
|
import { URLQueryString } from './email.js';
|
|
5
6
|
export declare const token = "token";
|
|
6
7
|
export declare const code = "code";
|
|
@@ -12,21 +13,34 @@ export declare const rpcVerifyEmailReq: VerifyEmailReq;
|
|
|
12
13
|
export declare const rpcVerifyEmailRes: VerifyEmailRes;
|
|
13
14
|
export declare const rpcClientTest: L.Layer<UserClient, never, never>;
|
|
14
15
|
export declare const principal: {
|
|
16
|
+
readonly email?: string;
|
|
17
|
+
readonly givenName?: string;
|
|
18
|
+
readonly familyName?: string;
|
|
19
|
+
readonly emailVerified?: boolean;
|
|
20
|
+
readonly iss: string;
|
|
21
|
+
readonly aud: string;
|
|
22
|
+
readonly sub: string;
|
|
23
|
+
readonly iat: Date;
|
|
24
|
+
readonly nbf: Date;
|
|
25
|
+
readonly exp: Date;
|
|
26
|
+
readonly jti: string;
|
|
15
27
|
readonly token: string;
|
|
16
|
-
readonly
|
|
17
|
-
|
|
28
|
+
readonly userVerified: boolean;
|
|
29
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
30
|
+
readonly authId: string;
|
|
31
|
+
readonly user?: {
|
|
18
32
|
readonly id: string;
|
|
33
|
+
readonly email: string;
|
|
19
34
|
readonly givenName: string;
|
|
20
35
|
readonly familyName: string;
|
|
21
36
|
readonly emailVerified: boolean;
|
|
22
37
|
};
|
|
23
38
|
readonly authStatement: {
|
|
24
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
25
39
|
readonly userVerified: boolean;
|
|
40
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
26
41
|
readonly authTimestamp: Date;
|
|
27
42
|
};
|
|
28
43
|
readonly expireAt: Date;
|
|
29
44
|
};
|
|
30
45
|
export declare const storedToken: import("../index.js").StoredToken;
|
|
31
46
|
export declare const storageServiceTest: L.Layer<import("../storage/storage.js").StorageService, never, never>;
|
|
32
|
-
//# sourceMappingURL=email.fixture.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Effect as E, Layer as L } from 'effect';
|
|
1
|
+
import { VerifyEmailReq, VerifyEmailRes } from '@passlock/shared/dist/rpc/user.js';
|
|
2
|
+
import { Effect as E, Layer as L, Option as O } from 'effect';
|
|
3
3
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
4
|
+
import { UserClient } from '../rpc/user.js';
|
|
4
5
|
import * as Fixtures from '../test/fixtures.js';
|
|
5
6
|
import { URLQueryString } from './email.js';
|
|
6
7
|
export const token = 'token';
|
|
@@ -14,7 +15,7 @@ export const authenticationServiceTest = L.succeed(AuthenticationService, Authen
|
|
|
14
15
|
export const rpcVerifyEmailReq = new VerifyEmailReq({ token, code });
|
|
15
16
|
export const rpcVerifyEmailRes = new VerifyEmailRes({ principal: Fixtures.principal });
|
|
16
17
|
export const rpcClientTest = L.succeed(UserClient, UserClient.of({
|
|
17
|
-
isExistingUser: () => E.succeed({ existingUser: true }),
|
|
18
|
+
isExistingUser: () => E.succeed({ existingUser: true, detail: O.none() }),
|
|
18
19
|
verifyEmail: () => E.succeed(rpcVerifyEmailRes),
|
|
19
20
|
resendVerificationEmail: () => E.fail(Fixtures.notImplemented),
|
|
20
21
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.fixture.js","sourceRoot":"","sources":["../../src/email/email.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"email.fixture.js","sourceRoot":"","sources":["../../src/email/email.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAA;AAC5B,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAA;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAA;AACjC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAE1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,OAAO,CACzC,cAAc,EACd,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAC9C,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,OAAO,CAChD,qBAAqB,EACrB,qBAAqB,CAAC,EAAE,CAAC;IACvB,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;CACzD,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;AAEtF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CACpC,UAAU,EACV,UAAU,CAAC,EAAE,CAAC;IACZ,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACzE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAC/C,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;CAC/D,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;AAE3C,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAA"}
|
package/dist/email/email.js
CHANGED
|
@@ -1,22 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Email verification effects
|
|
3
|
+
*/
|
|
1
4
|
import { BadRequest } from '@passlock/shared/dist/error/error.js';
|
|
2
|
-
import {
|
|
5
|
+
import { VerifyEmailReq } from '@passlock/shared/dist/rpc/user.js';
|
|
3
6
|
import { Context, Effect as E, Layer, Option as O, flow, identity, pipe } from 'effect';
|
|
4
7
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
8
|
+
import { UserClient } from '../rpc/user.js';
|
|
5
9
|
import { StorageService } from '../storage/storage.js';
|
|
6
|
-
|
|
10
|
+
/* Dependencies */
|
|
11
|
+
export class URLQueryString extends Context.Tag('@utils/URLQueryString')() {
|
|
7
12
|
}
|
|
8
|
-
|
|
13
|
+
/* Service */
|
|
14
|
+
export class EmailService extends Context.Tag('@services/EmailService')() {
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Check for existing token in sessionStorage,
|
|
18
|
+
* otherwise force passkey re-authentication
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
9
21
|
const getToken = () => {
|
|
10
22
|
return E.gen(function* (_) {
|
|
23
|
+
// Check for existing token
|
|
11
24
|
const storageService = yield* _(StorageService);
|
|
12
25
|
const existingTokenE = storageService.getToken('passkey');
|
|
13
26
|
const authenticationService = yield* _(AuthenticationService);
|
|
14
27
|
const tokenE = E.matchEffect(existingTokenE, {
|
|
15
28
|
onSuccess: token => E.succeed(token),
|
|
16
|
-
onFailure: () =>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
29
|
+
onFailure: () =>
|
|
30
|
+
// No token, need to authenticate the user
|
|
31
|
+
pipe(authenticationService.authenticatePasskey({
|
|
32
|
+
userVerification: O.some('preferred'),
|
|
33
|
+
email: O.none(),
|
|
34
|
+
}), E.map(principal => ({
|
|
35
|
+
token: principal.jti,
|
|
36
|
+
authType: principal.authType,
|
|
37
|
+
expiry: principal.exp.getTime(),
|
|
20
38
|
}))),
|
|
21
39
|
});
|
|
22
40
|
const token = yield* _(tokenE);
|
|
@@ -24,11 +42,22 @@ const getToken = () => {
|
|
|
24
42
|
return token;
|
|
25
43
|
});
|
|
26
44
|
};
|
|
45
|
+
/**
|
|
46
|
+
* Look for ?code=<code> in the url
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
27
49
|
export const extractCodeFromHref = () => {
|
|
28
50
|
return pipe(URLQueryString, E.flatMap(identity), E.map(search => new URLSearchParams(search)), E.flatMap(params => O.fromNullable(params.get('code'))));
|
|
29
51
|
};
|
|
52
|
+
/* Effects */
|
|
53
|
+
/**
|
|
54
|
+
* Verify the mailbox using the given code
|
|
55
|
+
* @param request
|
|
56
|
+
* @returns
|
|
57
|
+
*/
|
|
30
58
|
export const verifyEmail = (request) => {
|
|
31
59
|
return E.gen(function* (_) {
|
|
60
|
+
// Re-authenticate the user if required
|
|
32
61
|
const { token } = yield* _(getToken());
|
|
33
62
|
yield* _(E.logDebug('Making request'));
|
|
34
63
|
const client = yield* _(UserClient);
|
|
@@ -36,7 +65,13 @@ export const verifyEmail = (request) => {
|
|
|
36
65
|
return principal;
|
|
37
66
|
});
|
|
38
67
|
};
|
|
68
|
+
/**
|
|
69
|
+
* Look for a code in the current url and verify it
|
|
70
|
+
* @returns
|
|
71
|
+
*/
|
|
39
72
|
export const verifyEmailLink = () => pipe(extractCodeFromHref(), E.mapError(() => new BadRequest({ message: 'Expected ?code=xxx in window.location' })), E.flatMap(code => verifyEmail({ code })));
|
|
73
|
+
/* Live */
|
|
74
|
+
/* v8 ignore start */
|
|
40
75
|
export const EmailServiceLive = Layer.effect(EmailService, E.gen(function* (_) {
|
|
41
76
|
const context = yield* _(E.context());
|
|
42
77
|
return EmailService.of({
|
|
@@ -44,4 +79,5 @@ export const EmailServiceLive = Layer.effect(EmailService, E.gen(function* (_) {
|
|
|
44
79
|
verifyEmailLink: flow(verifyEmailLink, E.provide(context)),
|
|
45
80
|
});
|
|
46
81
|
}));
|
|
82
|
+
/* v8 ignore stop */
|
|
47
83
|
//# sourceMappingURL=email.js.map
|
package/dist/email/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/email/email.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/email/email.ts"],"names":[],"mappings":"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"}
|
package/dist/event/event.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fire DOM events
|
|
3
|
+
*/
|
|
1
4
|
import { InternalBrowserError } from '@passlock/shared/dist/error/error.js';
|
|
2
5
|
import { Effect } from 'effect';
|
|
3
6
|
export declare const DebugMessage = "PasslogDebugMessage";
|
|
4
7
|
export declare const fireEvent: (message: string) => Effect.Effect<void, InternalBrowserError, never>;
|
|
5
8
|
export declare function isPasslockEvent(event: Event): event is CustomEvent;
|
|
6
|
-
//# sourceMappingURL=event.d.ts.map
|
package/dist/event/event.js
CHANGED
package/dist/event/event.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAEjD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE;IAC3C,OAAO,MAAM,CAAC,GAAG,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE;YACR,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;YAC9D,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC/B,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,IAAI,oBAAoB,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAA;QAC7E,CAAC;KACF,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,KAAK,CAAA;IAC7C,OAAO,QAAQ,IAAI,KAAK,CAAA;AAC1B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
import { ErrorCode } from '@passlock/shared/dist/error/error.js';
|
|
2
|
-
import type {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
2
|
+
import type { VerifyEmail } from '@passlock/shared/dist/schema/email.js';
|
|
3
|
+
import type { UserVerification } from '@passlock/shared/dist/schema/passkey.js';
|
|
4
|
+
import type { Principal, UserPrincipal } from '@passlock/shared/dist/schema/principal.js';
|
|
5
|
+
import type { VerifyRequest } from './email/email.js';
|
|
6
|
+
import type { Provider } from './social/social.js';
|
|
7
7
|
import { type AuthType, type StoredToken } from './storage/storage.js';
|
|
8
|
-
import {
|
|
8
|
+
import type { Email, ResendEmail } from './user/user.js';
|
|
9
9
|
export type Options = {
|
|
10
10
|
signal?: AbortSignal;
|
|
11
11
|
};
|
|
12
12
|
export type { VerifyEmail } from '@passlock/shared/dist/schema/email.js';
|
|
13
13
|
export type { UserVerification } from '@passlock/shared/dist/schema/passkey.js';
|
|
14
|
-
export type { Principal } from '@passlock/shared/dist/schema/principal.js';
|
|
15
|
-
export type { AuthenticationRequest } from './authentication/authenticate.js';
|
|
14
|
+
export type { Principal, UserPrincipal } from '@passlock/shared/dist/schema/principal.js';
|
|
16
15
|
export type { VerifyRequest } from './email/email.js';
|
|
17
|
-
export type { RegistrationRequest } from './registration/register.js';
|
|
18
16
|
export type { AuthType, StoredToken } from './storage/storage.js';
|
|
19
17
|
export type { Email } from './user/user.js';
|
|
20
18
|
export type PasslockProps = {
|
|
@@ -22,6 +20,29 @@ export type PasslockProps = {
|
|
|
22
20
|
clientId: string;
|
|
23
21
|
endpoint?: string;
|
|
24
22
|
};
|
|
23
|
+
export type RegistrationRequest = {
|
|
24
|
+
email: string;
|
|
25
|
+
givenName?: string;
|
|
26
|
+
familyName?: string;
|
|
27
|
+
userVerification?: UserVerification;
|
|
28
|
+
verifyEmail?: VerifyEmail;
|
|
29
|
+
};
|
|
30
|
+
export type AuthenticationRequest = {
|
|
31
|
+
email?: string;
|
|
32
|
+
userVerification?: UserVerification;
|
|
33
|
+
};
|
|
34
|
+
export type RegisterOidcReq = {
|
|
35
|
+
provider: Provider;
|
|
36
|
+
idToken: string;
|
|
37
|
+
givenName?: string;
|
|
38
|
+
familyName?: string;
|
|
39
|
+
nonce: string;
|
|
40
|
+
};
|
|
41
|
+
export type AuthenticateOidcReq = {
|
|
42
|
+
provider: Provider;
|
|
43
|
+
idToken: string;
|
|
44
|
+
nonce: string;
|
|
45
|
+
};
|
|
25
46
|
export { ErrorCode } from '@passlock/shared/dist/error/error.js';
|
|
26
47
|
export declare class PasslockError extends Error {
|
|
27
48
|
readonly code: ErrorCode;
|
|
@@ -31,7 +52,8 @@ export declare class PasslockError extends Error {
|
|
|
31
52
|
}
|
|
32
53
|
export declare class PasslockUnsafe {
|
|
33
54
|
private readonly runtime;
|
|
34
|
-
constructor(
|
|
55
|
+
constructor(props: PasslockProps);
|
|
56
|
+
static isUserPrincipal: (principal: Principal) => principal is UserPrincipal;
|
|
35
57
|
private readonly runPromise;
|
|
36
58
|
preConnect: (options?: Options) => Promise<void>;
|
|
37
59
|
isPasskeySupport: () => Promise<boolean>;
|
|
@@ -39,33 +61,61 @@ export declare class PasslockUnsafe {
|
|
|
39
61
|
registerPasskey: (request: RegistrationRequest, options?: Options) => Promise<Principal>;
|
|
40
62
|
authenticatePasskey: (request: AuthenticationRequest, options?: Options) => Promise<Principal>;
|
|
41
63
|
registerOidc: (request: RegisterOidcReq, options?: Options) => Promise<{
|
|
64
|
+
readonly email?: string;
|
|
65
|
+
readonly givenName?: string;
|
|
66
|
+
readonly familyName?: string;
|
|
67
|
+
readonly emailVerified?: boolean;
|
|
68
|
+
readonly iss: string;
|
|
69
|
+
readonly aud: string;
|
|
70
|
+
readonly sub: string;
|
|
71
|
+
readonly iat: Date;
|
|
72
|
+
readonly nbf: Date;
|
|
73
|
+
readonly exp: Date;
|
|
74
|
+
readonly jti: string;
|
|
42
75
|
readonly token: string;
|
|
43
|
-
readonly
|
|
44
|
-
|
|
76
|
+
readonly userVerified: boolean;
|
|
77
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
78
|
+
readonly authId: string;
|
|
79
|
+
readonly user?: {
|
|
45
80
|
readonly id: string;
|
|
81
|
+
readonly email: string;
|
|
46
82
|
readonly givenName: string;
|
|
47
83
|
readonly familyName: string;
|
|
48
84
|
readonly emailVerified: boolean;
|
|
49
85
|
};
|
|
50
86
|
readonly authStatement: {
|
|
51
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
52
87
|
readonly userVerified: boolean;
|
|
88
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
53
89
|
readonly authTimestamp: Date;
|
|
54
90
|
};
|
|
55
91
|
readonly expireAt: Date;
|
|
56
92
|
}>;
|
|
57
93
|
authenticateOidc: (request: AuthenticateOidcReq, options?: Options) => Promise<{
|
|
94
|
+
readonly email?: string;
|
|
95
|
+
readonly givenName?: string;
|
|
96
|
+
readonly familyName?: string;
|
|
97
|
+
readonly emailVerified?: boolean;
|
|
98
|
+
readonly iss: string;
|
|
99
|
+
readonly aud: string;
|
|
100
|
+
readonly sub: string;
|
|
101
|
+
readonly iat: Date;
|
|
102
|
+
readonly nbf: Date;
|
|
103
|
+
readonly exp: Date;
|
|
104
|
+
readonly jti: string;
|
|
58
105
|
readonly token: string;
|
|
59
|
-
readonly
|
|
60
|
-
|
|
106
|
+
readonly userVerified: boolean;
|
|
107
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
108
|
+
readonly authId: string;
|
|
109
|
+
readonly user?: {
|
|
61
110
|
readonly id: string;
|
|
111
|
+
readonly email: string;
|
|
62
112
|
readonly givenName: string;
|
|
63
113
|
readonly familyName: string;
|
|
64
114
|
readonly emailVerified: boolean;
|
|
65
115
|
};
|
|
66
116
|
readonly authStatement: {
|
|
67
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
68
117
|
readonly userVerified: boolean;
|
|
118
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
69
119
|
readonly authTimestamp: Date;
|
|
70
120
|
};
|
|
71
121
|
readonly expireAt: Date;
|
|
@@ -78,49 +128,77 @@ export declare class PasslockUnsafe {
|
|
|
78
128
|
}
|
|
79
129
|
export declare class Passlock {
|
|
80
130
|
private readonly runtime;
|
|
81
|
-
constructor(
|
|
131
|
+
constructor(props: PasslockProps);
|
|
132
|
+
static isUserPrincipal: (principal: Principal) => principal is UserPrincipal;
|
|
82
133
|
private readonly runPromise;
|
|
83
|
-
preConnect: (options?: Options) => Promise<
|
|
134
|
+
preConnect: (options?: Options) => Promise<boolean | PasslockError>;
|
|
84
135
|
isPasskeySupport: () => Promise<boolean>;
|
|
85
136
|
isExistingUser: (email: Email, options?: Options) => Promise<boolean | PasslockError>;
|
|
86
137
|
registerPasskey: (request: RegistrationRequest, options?: Options) => Promise<Principal | PasslockError>;
|
|
87
138
|
authenticatePasskey: (request?: AuthenticationRequest, options?: Options) => Promise<Principal | PasslockError>;
|
|
88
139
|
registerOidc: (request: RegisterOidcReq, options?: Options) => Promise<{
|
|
140
|
+
readonly email?: string;
|
|
141
|
+
readonly givenName?: string;
|
|
142
|
+
readonly familyName?: string;
|
|
143
|
+
readonly emailVerified?: boolean;
|
|
144
|
+
readonly iss: string;
|
|
145
|
+
readonly aud: string;
|
|
146
|
+
readonly sub: string;
|
|
147
|
+
readonly iat: Date;
|
|
148
|
+
readonly nbf: Date;
|
|
149
|
+
readonly exp: Date;
|
|
150
|
+
readonly jti: string;
|
|
89
151
|
readonly token: string;
|
|
90
|
-
readonly
|
|
91
|
-
|
|
152
|
+
readonly userVerified: boolean;
|
|
153
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
154
|
+
readonly authId: string;
|
|
155
|
+
readonly user?: {
|
|
92
156
|
readonly id: string;
|
|
157
|
+
readonly email: string;
|
|
93
158
|
readonly givenName: string;
|
|
94
159
|
readonly familyName: string;
|
|
95
160
|
readonly emailVerified: boolean;
|
|
96
161
|
};
|
|
97
162
|
readonly authStatement: {
|
|
98
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
99
163
|
readonly userVerified: boolean;
|
|
164
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
100
165
|
readonly authTimestamp: Date;
|
|
101
166
|
};
|
|
102
167
|
readonly expireAt: Date;
|
|
103
168
|
} | PasslockError>;
|
|
104
169
|
authenticateOidc: (request: AuthenticateOidcReq, options?: Options) => Promise<{
|
|
170
|
+
readonly email?: string;
|
|
171
|
+
readonly givenName?: string;
|
|
172
|
+
readonly familyName?: string;
|
|
173
|
+
readonly emailVerified?: boolean;
|
|
174
|
+
readonly iss: string;
|
|
175
|
+
readonly aud: string;
|
|
176
|
+
readonly sub: string;
|
|
177
|
+
readonly iat: Date;
|
|
178
|
+
readonly nbf: Date;
|
|
179
|
+
readonly exp: Date;
|
|
180
|
+
readonly jti: string;
|
|
105
181
|
readonly token: string;
|
|
106
|
-
readonly
|
|
107
|
-
|
|
182
|
+
readonly userVerified: boolean;
|
|
183
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
184
|
+
readonly authId: string;
|
|
185
|
+
readonly user?: {
|
|
108
186
|
readonly id: string;
|
|
187
|
+
readonly email: string;
|
|
109
188
|
readonly givenName: string;
|
|
110
189
|
readonly familyName: string;
|
|
111
190
|
readonly emailVerified: boolean;
|
|
112
191
|
};
|
|
113
192
|
readonly authStatement: {
|
|
114
|
-
readonly authType: "email" | "passkey" | "apple" | "google";
|
|
115
193
|
readonly userVerified: boolean;
|
|
194
|
+
readonly authType: "email" | "apple" | "google" | "passkey";
|
|
116
195
|
readonly authTimestamp: Date;
|
|
117
196
|
};
|
|
118
197
|
readonly expireAt: Date;
|
|
119
198
|
} | PasslockError>;
|
|
120
199
|
verifyEmailCode: (request: VerifyRequest, options?: Options) => Promise<Principal | PasslockError>;
|
|
121
200
|
verifyEmailLink: (options?: Options) => Promise<Principal | PasslockError>;
|
|
122
|
-
resendVerificationEmail: (request: ResendEmail, options?: Options) => Promise<
|
|
123
|
-
getSessionToken: (authType: AuthType) => StoredToken | undefined
|
|
201
|
+
resendVerificationEmail: (request: ResendEmail, options?: Options) => Promise<boolean | PasslockError>;
|
|
202
|
+
getSessionToken: (authType: AuthType) => Promise<StoredToken | undefined>;
|
|
124
203
|
clearExpiredTokens: () => void;
|
|
125
204
|
}
|
|
126
|
-
//# sourceMappingURL=index.d.ts.map
|