├── .circleci ├── authReact.sh ├── config.yml ├── config_continue.yml ├── configs │ └── hydra.yml ├── doBackendSDKTests.sh ├── doUnitTests.sh ├── forceRunCI.sh ├── generateConfig.sh ├── installJava.sh ├── markAsSuccess.sh ├── markDevTagAsTestNotPassed.sh ├── publish.sh ├── setupAndTestBackendSDKWithFreeCore.sh ├── setupAndTestWithAuthReact.sh ├── setupAndTestWithFreeCore.sh ├── setupAndTestWithFrontend.sh ├── testWithAuthLocal.mjs ├── updateDocsInWebsite.sh └── website.sh ├── .gitattributes ├── .github ├── PULL_REQUEST_TEMPLATE.md ├── helpers │ ├── .gitignore │ └── package.json └── workflows │ ├── github-actions-changelog.yml │ ├── lint-pr-title.yml │ ├── pre-commit-hook-run.yml │ ├── test-cf-worker-hono.yml │ ├── test-cf-worker-next.yml │ ├── test-examples.yml │ ├── tests-pass-check-pr.yml │ └── tests.yml ├── .gitignore ├── .mocharc.yml ├── .npmignore ├── .prettierignore ├── .prettierrc ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── add-ts-no-check.js ├── addDevTag ├── addReleaseTag ├── coreDriverInterfaceSupported.json ├── custom ├── index.d.ts └── index.js ├── docs ├── .nojekyll ├── assets │ ├── highlight.css │ ├── icons.css │ ├── icons.png │ ├── icons@2x.png │ ├── main.js │ ├── search.js │ ├── style.css │ ├── widgets.png │ └── widgets@2x.png ├── classes │ ├── framework.BaseRequest.html │ ├── framework.BaseResponse.html │ ├── framework_custom.CollectingResponse.html │ ├── framework_custom.PreParsedRequest.html │ ├── index.RecipeUserId.html │ ├── index.User.html │ ├── index.default.html │ ├── ingredients_emaildelivery.default.html │ ├── ingredients_smsdelivery.default.html │ ├── recipe_accountlinking.default.html │ ├── recipe_dashboard.default.html │ ├── recipe_emailpassword.default.html │ ├── recipe_emailverification.default.html │ ├── recipe_jwt.default.html │ ├── recipe_multifactorauth.default.html │ ├── recipe_multitenancy.default.html │ ├── recipe_oauth2provider.default.html │ ├── recipe_openid.default.html │ ├── recipe_passwordless.default.html │ ├── recipe_session.default.html │ ├── recipe_thirdparty.default.html │ ├── recipe_totp.default.html │ ├── recipe_usermetadata.default.html │ ├── recipe_userroles.default.html │ └── recipe_webauthn.default.html ├── index.html ├── interfaces │ ├── framework_awsLambda.SessionEvent.html │ ├── framework_awsLambda.SessionEventV2.html │ ├── framework_express.SessionRequest.html │ ├── framework_hapi.SessionRequest.html │ ├── framework_koa.SessionContext.html │ ├── framework_loopback.SessionContext.html │ ├── recipe_session.SessionContainer.html │ ├── recipe_session.VerifySessionOptions.html │ └── recipe_usermetadata.JSONObject.html ├── modules.html └── modules │ ├── framework.html │ ├── framework_awsLambda.html │ ├── framework_custom.html │ ├── framework_express.html │ ├── framework_fastify.html │ ├── framework_hapi.html │ ├── framework_koa.html │ ├── framework_loopback.html │ ├── index.html │ ├── ingredients_emaildelivery.html │ ├── ingredients_smsdelivery.html │ ├── recipe_accountlinking.html │ ├── recipe_dashboard.html │ ├── recipe_emailpassword.html │ ├── recipe_emailverification.html │ ├── recipe_jwt.html │ ├── recipe_multifactorauth.html │ ├── recipe_multitenancy.html │ ├── recipe_oauth2provider.html │ ├── recipe_openid.html │ ├── recipe_passwordless.html │ ├── recipe_session.html │ ├── recipe_thirdparty.html │ ├── recipe_totp.html │ ├── recipe_usermetadata.html │ ├── recipe_userroles.html │ └── recipe_webauthn.html ├── examples ├── aws │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.mjs │ │ ├── index.mjs │ │ └── user.mjs │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ ├── basic.test.js │ │ └── helpers │ │ ├── aws-lambda.js │ │ └── lambda-layer.sh ├── cloudflare-workers │ ├── .gitignore │ ├── with-email-password-hono-be-only │ │ ├── README.md │ │ ├── config.ts │ │ ├── hono.d.ts │ │ ├── index.ts │ │ ├── middleware.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── test │ │ │ └── basic.test.js │ │ ├── tsconfig.json │ │ └── wrangler.toml │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.ts │ │ ├── hono.d.ts │ │ ├── index.ts │ │ ├── middleware.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── wrangler.toml │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js ├── express │ ├── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ │ ├── config.ts │ │ │ ├── index.ts │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ └── tsconfig.json │ │ ├── frontend │ │ │ ├── .env │ │ │ ├── .gitignore │ │ │ ├── LICENSE.md │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── favicon.ico │ │ │ │ ├── index.html │ │ │ │ ├── manifest.json │ │ │ │ └── robots.txt │ │ │ ├── src │ │ │ │ ├── App.css │ │ │ │ ├── App.tsx │ │ │ │ ├── Home │ │ │ │ │ ├── CallAPIView.tsx │ │ │ │ │ ├── Home.css │ │ │ │ │ ├── SuccessView.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── assets │ │ │ │ │ ├── fonts │ │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ │ └── images │ │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ │ ├── background.png │ │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ │ └── sign-out-icon.svg │ │ │ │ ├── config.tsx │ │ │ │ ├── index.css │ │ │ │ ├── index.tsx │ │ │ │ └── react-app-env.d.ts │ │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ │ └── basic.test.js │ └── with-m2m │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assistant │ │ ├── assistant-cli │ │ ├── .editorconfig │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── .prettierignore │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── cli.tsx │ │ │ ├── constants.ts │ │ │ ├── eventFunctions.ts │ │ │ ├── getAccessToken.ts │ │ │ ├── noteFunctions.ts │ │ │ └── ui │ │ │ │ ├── app.tsx │ │ │ │ ├── event.tsx │ │ │ │ ├── listScreen.tsx │ │ │ │ └── note.tsx │ │ ├── ts-node.register.mjs │ │ └── tsconfig.json │ │ ├── auth-provider-service │ │ ├── config.ts │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── setupClient.ts │ │ └── tsconfig.json │ │ ├── calendar-service │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── note-service │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ └── package.json ├── fastify │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.ts │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js ├── hapi │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.ts │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js ├── koa │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.ts │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js ├── loopback │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── config.ts │ │ ├── index.ts │ │ ├── package-lock.json │ │ ├── package.json │ │ └── tsconfig.json │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js ├── nest │ └── with-emailpassword │ │ ├── README.md │ │ ├── backend │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── .prettierrc │ │ ├── nest-cli.json │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── app.controller.spec.ts │ │ │ ├── app.controller.ts │ │ │ ├── app.module.ts │ │ │ ├── app.service.ts │ │ │ ├── auth │ │ │ │ ├── auth.filter.spec.ts │ │ │ │ ├── auth.filter.ts │ │ │ │ ├── auth.guard.spec.ts │ │ │ │ ├── auth.guard.ts │ │ │ │ ├── auth.middleware.ts │ │ │ │ ├── auth.module.ts │ │ │ │ ├── config.interface.ts │ │ │ │ ├── session.decorator.ts │ │ │ │ └── supertokens │ │ │ │ │ ├── supertokens.service.spec.ts │ │ │ │ │ └── supertokens.service.ts │ │ │ ├── config.ts │ │ │ └── main.ts │ │ ├── tsconfig.build.json │ │ └── tsconfig.json │ │ ├── frontend │ │ ├── .env │ │ ├── .gitignore │ │ ├── LICENSE.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.tsx │ │ │ ├── Home │ │ │ │ ├── CallAPIView.tsx │ │ │ │ ├── Home.css │ │ │ │ ├── SuccessView.tsx │ │ │ │ └── index.tsx │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── MenloRegular.ttf │ │ │ │ └── images │ │ │ │ │ ├── arrow-right-icon.svg │ │ │ │ │ ├── background.png │ │ │ │ │ ├── blogs-icon.svg │ │ │ │ │ ├── celebrate-icon.svg │ │ │ │ │ ├── guide-icon.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── separator-line.svg │ │ │ │ │ └── sign-out-icon.svg │ │ │ ├── config.tsx │ │ │ ├── index.css │ │ │ ├── index.tsx │ │ │ └── react-app-env.d.ts │ │ └── tsconfig.json │ │ ├── package-lock.json │ │ ├── package.json │ │ └── test │ │ └── basic.test.js └── next │ └── with-emailpassword │ ├── .gitignore │ ├── README.md │ ├── app │ ├── api │ │ ├── auth │ │ │ └── [...path] │ │ │ │ └── route.ts │ │ ├── user-id │ │ │ └── route.ts │ │ └── user │ │ │ └── route.ts │ ├── auth │ │ └── [[...path]] │ │ │ └── page.tsx │ ├── layout.tsx │ └── page.tsx │ ├── assets │ ├── fonts │ │ └── MenloRegular.ttf │ └── images │ │ ├── arrow-right-icon.svg │ │ ├── background.png │ │ ├── blogs-icon.svg │ │ ├── celebrate-icon.svg │ │ ├── guide-icon.svg │ │ ├── index.ts │ │ ├── separator-line.svg │ │ └── sign-out-icon.svg │ ├── config │ ├── appInfo.ts │ ├── backendConfig.ts │ └── frontendConfig.tsx │ ├── interfaces.d.ts │ ├── middleware.ts │ ├── netlify.toml │ ├── next.config.js │ ├── package-lock.json │ ├── package.json │ ├── public │ ├── favicon.ico │ └── vercel.svg │ ├── styles │ ├── Home.module.css │ ├── ProtectedHome.module.css │ └── globals.css │ ├── test │ └── basic.test.js │ └── tsconfig.json ├── framework ├── awsLambda │ ├── index.d.ts │ └── index.js ├── custom │ ├── index.d.ts │ └── index.js ├── express │ ├── index.d.ts │ └── index.js ├── fastify │ ├── index.d.ts │ └── index.js ├── hapi │ ├── index.d.ts │ └── index.js ├── koa │ ├── index.d.ts │ └── index.js └── loopback │ ├── index.d.ts │ └── index.js ├── frontendDriverInterfaceSupported.json ├── hooks └── pre-commit.sh ├── index.d.ts ├── index.js ├── lib ├── build │ ├── authUtils.d.ts │ ├── authUtils.js │ ├── combinedRemoteJWKSet.d.ts │ ├── combinedRemoteJWKSet.js │ ├── constants.d.ts │ ├── constants.js │ ├── customFramework.d.ts │ ├── customFramework.js │ ├── error.d.ts │ ├── error.js │ ├── framework │ │ ├── awsLambda │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── constants.d.ts │ │ ├── constants.js │ │ ├── custom │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── nodeHeaders.d.ts │ │ │ └── nodeHeaders.js │ │ ├── express │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── fastify │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── types.d.ts │ │ │ └── types.js │ │ ├── hapi │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── koa │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── loopback │ │ │ ├── framework.d.ts │ │ │ ├── framework.js │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── request.d.ts │ │ ├── request.js │ │ ├── response.d.ts │ │ ├── response.js │ │ ├── types.d.ts │ │ ├── types.js │ │ ├── utils.d.ts │ │ └── utils.js │ ├── index.d.ts │ ├── index.js │ ├── ingredients │ │ ├── emaildelivery │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── services │ │ │ │ ├── smtp.d.ts │ │ │ │ └── smtp.js │ │ │ ├── types.d.ts │ │ │ └── types.js │ │ └── smsdelivery │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── services │ │ │ ├── supertokens.d.ts │ │ │ ├── supertokens.js │ │ │ ├── twilio.d.ts │ │ │ └── twilio.js │ │ │ ├── types.d.ts │ │ │ └── types.js │ ├── logger.d.ts │ ├── logger.js │ ├── nextjs.d.ts │ ├── nextjs.js │ ├── normalisedURLDomain.d.ts │ ├── normalisedURLDomain.js │ ├── normalisedURLPath.d.ts │ ├── normalisedURLPath.js │ ├── postSuperTokensInitCallbacks.d.ts │ ├── postSuperTokensInitCallbacks.js │ ├── processState.d.ts │ ├── processState.js │ ├── querier.d.ts │ ├── querier.js │ ├── recipe │ │ ├── accountlinking │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── dashboard │ │ │ ├── api │ │ │ │ ├── analytics.d.ts │ │ │ │ ├── analytics.js │ │ │ │ ├── apiKeyProtector.d.ts │ │ │ │ ├── apiKeyProtector.js │ │ │ │ ├── dashboard.d.ts │ │ │ │ ├── dashboard.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── multitenancy │ │ │ │ │ ├── createOrUpdateThirdPartyConfig.d.ts │ │ │ │ │ ├── createOrUpdateThirdPartyConfig.js │ │ │ │ │ ├── createTenant.d.ts │ │ │ │ │ ├── createTenant.js │ │ │ │ │ ├── deleteTenant.d.ts │ │ │ │ │ ├── deleteTenant.js │ │ │ │ │ ├── deleteThirdPartyConfig.d.ts │ │ │ │ │ ├── deleteThirdPartyConfig.js │ │ │ │ │ ├── getTenantInfo.d.ts │ │ │ │ │ ├── getTenantInfo.js │ │ │ │ │ ├── getThirdPartyConfig.d.ts │ │ │ │ │ ├── getThirdPartyConfig.js │ │ │ │ │ ├── listAllTenantsWithLoginMethods.d.ts │ │ │ │ │ ├── listAllTenantsWithLoginMethods.js │ │ │ │ │ ├── updateTenantCoreConfig.d.ts │ │ │ │ │ ├── updateTenantCoreConfig.js │ │ │ │ │ ├── updateTenantFirstFactor.d.ts │ │ │ │ │ ├── updateTenantFirstFactor.js │ │ │ │ │ ├── updateTenantSecondaryFactor.d.ts │ │ │ │ │ ├── updateTenantSecondaryFactor.js │ │ │ │ │ ├── utils.d.ts │ │ │ │ │ └── utils.js │ │ │ │ ├── search │ │ │ │ │ ├── tagsGet.d.ts │ │ │ │ │ └── tagsGet.js │ │ │ │ ├── signIn.d.ts │ │ │ │ ├── signIn.js │ │ │ │ ├── signOut.d.ts │ │ │ │ ├── signOut.js │ │ │ │ ├── user │ │ │ │ │ └── create │ │ │ │ │ │ ├── emailpasswordUser.d.ts │ │ │ │ │ │ ├── emailpasswordUser.js │ │ │ │ │ │ ├── passwordlessUser.d.ts │ │ │ │ │ │ └── passwordlessUser.js │ │ │ │ ├── userdetails │ │ │ │ │ ├── userDelete.d.ts │ │ │ │ │ ├── userDelete.js │ │ │ │ │ ├── userEmailVerifyGet.d.ts │ │ │ │ │ ├── userEmailVerifyGet.js │ │ │ │ │ ├── userEmailVerifyPut.d.ts │ │ │ │ │ ├── userEmailVerifyPut.js │ │ │ │ │ ├── userEmailVerifyTokenPost.d.ts │ │ │ │ │ ├── userEmailVerifyTokenPost.js │ │ │ │ │ ├── userGet.d.ts │ │ │ │ │ ├── userGet.js │ │ │ │ │ ├── userMetadataGet.d.ts │ │ │ │ │ ├── userMetadataGet.js │ │ │ │ │ ├── userMetadataPut.d.ts │ │ │ │ │ ├── userMetadataPut.js │ │ │ │ │ ├── userPasswordPut.d.ts │ │ │ │ │ ├── userPasswordPut.js │ │ │ │ │ ├── userPut.d.ts │ │ │ │ │ ├── userPut.js │ │ │ │ │ ├── userSessionsGet.d.ts │ │ │ │ │ ├── userSessionsGet.js │ │ │ │ │ ├── userSessionsPost.d.ts │ │ │ │ │ ├── userSessionsPost.js │ │ │ │ │ ├── userUnlinkGet.d.ts │ │ │ │ │ └── userUnlinkGet.js │ │ │ │ ├── userroles │ │ │ │ │ ├── addRoleToUser.d.ts │ │ │ │ │ ├── addRoleToUser.js │ │ │ │ │ ├── getRolesForUser.d.ts │ │ │ │ │ ├── getRolesForUser.js │ │ │ │ │ ├── permissions │ │ │ │ │ │ ├── getPermissionsForRole.d.ts │ │ │ │ │ │ ├── getPermissionsForRole.js │ │ │ │ │ │ ├── removePermissions.d.ts │ │ │ │ │ │ └── removePermissions.js │ │ │ │ │ ├── removeUserRole.d.ts │ │ │ │ │ ├── removeUserRole.js │ │ │ │ │ └── roles │ │ │ │ │ │ ├── createRoleOrAddPermissions.d.ts │ │ │ │ │ │ ├── createRoleOrAddPermissions.js │ │ │ │ │ │ ├── deleteRole.d.ts │ │ │ │ │ │ ├── deleteRole.js │ │ │ │ │ │ ├── getAllRoles.d.ts │ │ │ │ │ │ └── getAllRoles.js │ │ │ │ ├── usersCountGet.d.ts │ │ │ │ ├── usersCountGet.js │ │ │ │ ├── usersGet.d.ts │ │ │ │ ├── usersGet.js │ │ │ │ ├── validateKey.d.ts │ │ │ │ └── validateKey.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── emailpassword │ │ │ ├── api │ │ │ │ ├── emailExists.d.ts │ │ │ │ ├── emailExists.js │ │ │ │ ├── generatePasswordResetToken.d.ts │ │ │ │ ├── generatePasswordResetToken.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── passwordReset.d.ts │ │ │ │ ├── passwordReset.js │ │ │ │ ├── signin.d.ts │ │ │ │ ├── signin.js │ │ │ │ ├── signup.d.ts │ │ │ │ ├── signup.js │ │ │ │ ├── utils.d.ts │ │ │ │ └── utils.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ └── smtp │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ ├── passwordReset.d.ts │ │ │ │ │ ├── passwordReset.js │ │ │ │ │ └── serviceImplementation │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── passwordResetFunctions.d.ts │ │ │ ├── passwordResetFunctions.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── emailverification │ │ │ ├── api │ │ │ │ ├── emailVerify.d.ts │ │ │ │ ├── emailVerify.js │ │ │ │ ├── generateEmailVerifyToken.d.ts │ │ │ │ ├── generateEmailVerifyToken.js │ │ │ │ ├── implementation.d.ts │ │ │ │ └── implementation.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── emailVerificationClaim.d.ts │ │ │ ├── emailVerificationClaim.js │ │ │ ├── emailVerificationFunctions.d.ts │ │ │ ├── emailVerificationFunctions.js │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ └── smtp │ │ │ │ │ ├── emailVerify.d.ts │ │ │ │ │ ├── emailVerify.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ ├── serviceImplementation.d.ts │ │ │ │ │ └── serviceImplementation.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── jwt │ │ │ ├── api │ │ │ │ ├── getJWKS.d.ts │ │ │ │ ├── getJWKS.js │ │ │ │ ├── implementation.d.ts │ │ │ │ └── implementation.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── multifactorauth │ │ │ ├── api │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── resyncSessionAndFetchMFAInfo.d.ts │ │ │ │ └── resyncSessionAndFetchMFAInfo.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── multiFactorAuthClaim.d.ts │ │ │ ├── multiFactorAuthClaim.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── multitenancy │ │ │ ├── allowedDomainsClaim.d.ts │ │ │ ├── allowedDomainsClaim.js │ │ │ ├── api │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── loginMethods.d.ts │ │ │ │ └── loginMethods.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── oauth2provider │ │ │ ├── OAuth2Client.d.ts │ │ │ ├── OAuth2Client.js │ │ │ ├── api │ │ │ │ ├── auth.d.ts │ │ │ │ ├── auth.js │ │ │ │ ├── endSession.d.ts │ │ │ │ ├── endSession.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── introspectToken.d.ts │ │ │ │ ├── introspectToken.js │ │ │ │ ├── login.d.ts │ │ │ │ ├── login.js │ │ │ │ ├── loginInfo.d.ts │ │ │ │ ├── loginInfo.js │ │ │ │ ├── logout.d.ts │ │ │ │ ├── logout.js │ │ │ │ ├── revokeToken.d.ts │ │ │ │ ├── revokeToken.js │ │ │ │ ├── token.d.ts │ │ │ │ ├── token.js │ │ │ │ ├── userInfo.d.ts │ │ │ │ ├── userInfo.js │ │ │ │ ├── utils.d.ts │ │ │ │ └── utils.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── openid │ │ │ ├── api │ │ │ │ ├── getOpenIdDiscoveryConfiguration.d.ts │ │ │ │ ├── getOpenIdDiscoveryConfiguration.js │ │ │ │ ├── implementation.d.ts │ │ │ │ └── implementation.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── passwordless │ │ │ ├── api │ │ │ │ ├── consumeCode.d.ts │ │ │ │ ├── consumeCode.js │ │ │ │ ├── createCode.d.ts │ │ │ │ ├── createCode.js │ │ │ │ ├── emailExists.d.ts │ │ │ │ ├── emailExists.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── phoneNumberExists.d.ts │ │ │ │ ├── phoneNumberExists.js │ │ │ │ ├── resendCode.d.ts │ │ │ │ └── resendCode.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ └── smtp │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ ├── passwordlessLogin.d.ts │ │ │ │ │ ├── passwordlessLogin.js │ │ │ │ │ ├── serviceImplementation.d.ts │ │ │ │ │ └── serviceImplementation.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── smsdelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ ├── supertokens │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── index.js │ │ │ │ │ └── twilio │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.js │ │ │ │ │ ├── passwordlessLogin.d.ts │ │ │ │ │ ├── passwordlessLogin.js │ │ │ │ │ ├── serviceImplementation.d.ts │ │ │ │ │ └── serviceImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── session │ │ │ ├── accessToken.d.ts │ │ │ ├── accessToken.js │ │ │ ├── api │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── refresh.d.ts │ │ │ │ ├── refresh.js │ │ │ │ ├── signout.d.ts │ │ │ │ └── signout.js │ │ │ ├── claimBaseClasses │ │ │ │ ├── booleanClaim.d.ts │ │ │ │ ├── booleanClaim.js │ │ │ │ ├── primitiveArrayClaim.d.ts │ │ │ │ ├── primitiveArrayClaim.js │ │ │ │ ├── primitiveClaim.d.ts │ │ │ │ └── primitiveClaim.js │ │ │ ├── claims.d.ts │ │ │ ├── claims.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── cookieAndHeaders.d.ts │ │ │ ├── cookieAndHeaders.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── framework │ │ │ │ ├── awsLambda.d.ts │ │ │ │ ├── awsLambda.js │ │ │ │ ├── custom.d.ts │ │ │ │ ├── custom.js │ │ │ │ ├── express.d.ts │ │ │ │ ├── express.js │ │ │ │ ├── fastify.d.ts │ │ │ │ ├── fastify.js │ │ │ │ ├── hapi.d.ts │ │ │ │ ├── hapi.js │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ ├── koa.d.ts │ │ │ │ ├── koa.js │ │ │ │ ├── loopback.d.ts │ │ │ │ └── loopback.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── jwt.d.ts │ │ │ ├── jwt.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── sessionClass.d.ts │ │ │ ├── sessionClass.js │ │ │ ├── sessionFunctions.d.ts │ │ │ ├── sessionFunctions.js │ │ │ ├── sessionRequestFunctions.d.ts │ │ │ ├── sessionRequestFunctions.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── thirdparty │ │ │ ├── api │ │ │ │ ├── appleRedirect.d.ts │ │ │ │ ├── appleRedirect.js │ │ │ │ ├── authorisationUrl.d.ts │ │ │ │ ├── authorisationUrl.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── signinup.d.ts │ │ │ │ └── signinup.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── providers │ │ │ │ ├── activeDirectory.d.ts │ │ │ │ ├── activeDirectory.js │ │ │ │ ├── apple.d.ts │ │ │ │ ├── apple.js │ │ │ │ ├── bitbucket.d.ts │ │ │ │ ├── bitbucket.js │ │ │ │ ├── boxySaml.d.ts │ │ │ │ ├── boxySaml.js │ │ │ │ ├── configUtils.d.ts │ │ │ │ ├── configUtils.js │ │ │ │ ├── custom.d.ts │ │ │ │ ├── custom.js │ │ │ │ ├── discord.d.ts │ │ │ │ ├── discord.js │ │ │ │ ├── facebook.d.ts │ │ │ │ ├── facebook.js │ │ │ │ ├── github.d.ts │ │ │ │ ├── github.js │ │ │ │ ├── gitlab.d.ts │ │ │ │ ├── gitlab.js │ │ │ │ ├── google.d.ts │ │ │ │ ├── google.js │ │ │ │ ├── googleWorkspaces.d.ts │ │ │ │ ├── googleWorkspaces.js │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ ├── linkedin.d.ts │ │ │ │ ├── linkedin.js │ │ │ │ ├── okta.d.ts │ │ │ │ ├── okta.js │ │ │ │ ├── twitter.d.ts │ │ │ │ ├── twitter.js │ │ │ │ ├── utils.d.ts │ │ │ │ └── utils.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── totp │ │ │ ├── api │ │ │ │ ├── createDevice.d.ts │ │ │ │ ├── createDevice.js │ │ │ │ ├── implementation.d.ts │ │ │ │ ├── implementation.js │ │ │ │ ├── listDevices.d.ts │ │ │ │ ├── listDevices.js │ │ │ │ ├── removeDevice.d.ts │ │ │ │ ├── removeDevice.js │ │ │ │ ├── verifyDevice.d.ts │ │ │ │ ├── verifyDevice.js │ │ │ │ ├── verifyTOTP.d.ts │ │ │ │ └── verifyTOTP.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── usermetadata │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ ├── userroles │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── permissionClaim.d.ts │ │ │ ├── permissionClaim.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── userRoleClaim.d.ts │ │ │ ├── userRoleClaim.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ └── webauthn │ │ │ ├── api │ │ │ ├── emailExists.d.ts │ │ │ ├── emailExists.js │ │ │ ├── generateRecoverAccountToken.d.ts │ │ │ ├── generateRecoverAccountToken.js │ │ │ ├── implementation.d.ts │ │ │ ├── implementation.js │ │ │ ├── recoverAccount.d.ts │ │ │ ├── recoverAccount.js │ │ │ ├── registerCredential.d.ts │ │ │ ├── registerCredential.js │ │ │ ├── registerOptions.d.ts │ │ │ ├── registerOptions.js │ │ │ ├── signInOptions.d.ts │ │ │ ├── signInOptions.js │ │ │ ├── signin.d.ts │ │ │ ├── signin.js │ │ │ ├── signup.d.ts │ │ │ ├── signup.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ │ │ ├── constants.d.ts │ │ │ ├── constants.js │ │ │ ├── emaildelivery │ │ │ └── services │ │ │ │ ├── backwardCompatibility │ │ │ │ ├── index.d.ts │ │ │ │ └── index.js │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ └── smtp │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.js │ │ │ │ ├── recoverAccount.d.ts │ │ │ │ ├── recoverAccount.js │ │ │ │ └── serviceImplementation │ │ │ │ ├── index.d.ts │ │ │ │ └── index.js │ │ │ ├── error.d.ts │ │ │ ├── error.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── recipe.d.ts │ │ │ ├── recipe.js │ │ │ ├── recipeImplementation.d.ts │ │ │ ├── recipeImplementation.js │ │ │ ├── types.d.ts │ │ │ ├── types.js │ │ │ ├── utils.d.ts │ │ │ └── utils.js │ ├── recipeModule.d.ts │ ├── recipeModule.js │ ├── recipeUserId.d.ts │ ├── recipeUserId.js │ ├── supertokens.d.ts │ ├── supertokens.js │ ├── thirdpartyUtils.d.ts │ ├── thirdpartyUtils.js │ ├── types.d.ts │ ├── types.js │ ├── user.d.ts │ ├── user.js │ ├── utils.d.ts │ ├── utils.js │ ├── version.d.ts │ └── version.js ├── ts │ ├── authUtils.ts │ ├── combinedRemoteJWKSet.ts │ ├── constants.ts │ ├── customFramework.ts │ ├── error.ts │ ├── framework │ │ ├── awsLambda │ │ │ ├── framework.ts │ │ │ └── index.ts │ │ ├── constants.ts │ │ ├── custom │ │ │ ├── framework.ts │ │ │ ├── index.ts │ │ │ └── nodeHeaders.ts │ │ ├── express │ │ │ ├── framework.ts │ │ │ └── index.ts │ │ ├── fastify │ │ │ ├── framework.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── hapi │ │ │ ├── framework.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── koa │ │ │ ├── framework.ts │ │ │ └── index.ts │ │ ├── loopback │ │ │ ├── framework.ts │ │ │ └── index.ts │ │ ├── request.ts │ │ ├── response.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── index.ts │ ├── ingredients │ │ ├── emaildelivery │ │ │ ├── index.ts │ │ │ ├── services │ │ │ │ └── smtp.ts │ │ │ └── types.ts │ │ └── smsdelivery │ │ │ ├── index.ts │ │ │ ├── services │ │ │ ├── supertokens.ts │ │ │ └── twilio.ts │ │ │ └── types.ts │ ├── logger.ts │ ├── nextjs.ts │ ├── normalisedURLDomain.ts │ ├── normalisedURLPath.ts │ ├── postSuperTokensInitCallbacks.ts │ ├── processState.ts │ ├── querier.ts │ ├── recipe │ │ ├── accountlinking │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── dashboard │ │ │ ├── api │ │ │ │ ├── analytics.ts │ │ │ │ ├── apiKeyProtector.ts │ │ │ │ ├── dashboard.ts │ │ │ │ ├── implementation.ts │ │ │ │ ├── multitenancy │ │ │ │ │ ├── createOrUpdateThirdPartyConfig.ts │ │ │ │ │ ├── createTenant.ts │ │ │ │ │ ├── deleteTenant.ts │ │ │ │ │ ├── deleteThirdPartyConfig.ts │ │ │ │ │ ├── getTenantInfo.ts │ │ │ │ │ ├── getThirdPartyConfig.ts │ │ │ │ │ ├── listAllTenantsWithLoginMethods.ts │ │ │ │ │ ├── updateTenantCoreConfig.ts │ │ │ │ │ ├── updateTenantFirstFactor.ts │ │ │ │ │ ├── updateTenantSecondaryFactor.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── search │ │ │ │ │ └── tagsGet.ts │ │ │ │ ├── signIn.ts │ │ │ │ ├── signOut.ts │ │ │ │ ├── user │ │ │ │ │ └── create │ │ │ │ │ │ ├── emailpasswordUser.ts │ │ │ │ │ │ └── passwordlessUser.ts │ │ │ │ ├── userdetails │ │ │ │ │ ├── userDelete.ts │ │ │ │ │ ├── userEmailVerifyGet.ts │ │ │ │ │ ├── userEmailVerifyPut.ts │ │ │ │ │ ├── userEmailVerifyTokenPost.ts │ │ │ │ │ ├── userGet.ts │ │ │ │ │ ├── userMetadataGet.ts │ │ │ │ │ ├── userMetadataPut.ts │ │ │ │ │ ├── userPasswordPut.ts │ │ │ │ │ ├── userPut.ts │ │ │ │ │ ├── userSessionsGet.ts │ │ │ │ │ ├── userSessionsPost.ts │ │ │ │ │ └── userUnlinkGet.ts │ │ │ │ ├── userroles │ │ │ │ │ ├── addRoleToUser.ts │ │ │ │ │ ├── getRolesForUser.ts │ │ │ │ │ ├── permissions │ │ │ │ │ │ ├── getPermissionsForRole.ts │ │ │ │ │ │ └── removePermissions.ts │ │ │ │ │ ├── removeUserRole.ts │ │ │ │ │ └── roles │ │ │ │ │ │ ├── createRoleOrAddPermissions.ts │ │ │ │ │ │ ├── deleteRole.ts │ │ │ │ │ │ └── getAllRoles.ts │ │ │ │ ├── usersCountGet.ts │ │ │ │ ├── usersGet.ts │ │ │ │ └── validateKey.ts │ │ │ ├── constants.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── emailpassword │ │ │ ├── api │ │ │ │ ├── emailExists.ts │ │ │ │ ├── generatePasswordResetToken.ts │ │ │ │ ├── implementation.ts │ │ │ │ ├── passwordReset.ts │ │ │ │ ├── signin.ts │ │ │ │ ├── signup.ts │ │ │ │ └── utils.ts │ │ │ ├── constants.ts │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── smtp │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── passwordReset.ts │ │ │ │ │ └── serviceImplementation │ │ │ │ │ └── index.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── passwordResetFunctions.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── emailverification │ │ │ ├── api │ │ │ │ ├── emailVerify.ts │ │ │ │ ├── generateEmailVerifyToken.ts │ │ │ │ └── implementation.ts │ │ │ ├── constants.ts │ │ │ ├── emailVerificationClaim.ts │ │ │ ├── emailVerificationFunctions.ts │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── smtp │ │ │ │ │ ├── emailVerify.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── serviceImplementation.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── jwt │ │ │ ├── api │ │ │ │ ├── getJWKS.ts │ │ │ │ └── implementation.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── multifactorauth │ │ │ ├── api │ │ │ │ ├── implementation.ts │ │ │ │ └── resyncSessionAndFetchMFAInfo.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── multiFactorAuthClaim.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── multitenancy │ │ │ ├── allowedDomainsClaim.ts │ │ │ ├── api │ │ │ │ ├── implementation.ts │ │ │ │ └── loginMethods.ts │ │ │ ├── constants.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── oauth2provider │ │ │ ├── OAuth2Client.ts │ │ │ ├── api │ │ │ │ ├── auth.ts │ │ │ │ ├── endSession.ts │ │ │ │ ├── implementation.ts │ │ │ │ ├── introspectToken.ts │ │ │ │ ├── login.ts │ │ │ │ ├── loginInfo.ts │ │ │ │ ├── logout.ts │ │ │ │ ├── revokeToken.ts │ │ │ │ ├── token.ts │ │ │ │ ├── userInfo.ts │ │ │ │ └── utils.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── openid │ │ │ ├── api │ │ │ │ ├── getOpenIdDiscoveryConfiguration.ts │ │ │ │ └── implementation.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── passwordless │ │ │ ├── api │ │ │ │ ├── consumeCode.ts │ │ │ │ ├── createCode.ts │ │ │ │ ├── emailExists.ts │ │ │ │ ├── implementation.ts │ │ │ │ ├── phoneNumberExists.ts │ │ │ │ └── resendCode.ts │ │ │ ├── constants.ts │ │ │ ├── emaildelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── smtp │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── passwordlessLogin.ts │ │ │ │ │ └── serviceImplementation.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── smsdelivery │ │ │ │ └── services │ │ │ │ │ ├── backwardCompatibility │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── supertokens │ │ │ │ │ └── index.ts │ │ │ │ │ └── twilio │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── passwordlessLogin.ts │ │ │ │ │ └── serviceImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── session │ │ │ ├── accessToken.ts │ │ │ ├── api │ │ │ │ ├── implementation.ts │ │ │ │ ├── refresh.ts │ │ │ │ └── signout.ts │ │ │ ├── claimBaseClasses │ │ │ │ ├── booleanClaim.ts │ │ │ │ ├── primitiveArrayClaim.ts │ │ │ │ └── primitiveClaim.ts │ │ │ ├── claims.ts │ │ │ ├── constants.ts │ │ │ ├── cookieAndHeaders.ts │ │ │ ├── error.ts │ │ │ ├── framework │ │ │ │ ├── awsLambda.ts │ │ │ │ ├── custom.ts │ │ │ │ ├── express.ts │ │ │ │ ├── fastify.ts │ │ │ │ ├── hapi.ts │ │ │ │ ├── index.ts │ │ │ │ ├── koa.ts │ │ │ │ └── loopback.ts │ │ │ ├── index.ts │ │ │ ├── jwt.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── sessionClass.ts │ │ │ ├── sessionFunctions.ts │ │ │ ├── sessionRequestFunctions.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── thirdparty │ │ │ ├── api │ │ │ │ ├── appleRedirect.ts │ │ │ │ ├── authorisationUrl.ts │ │ │ │ ├── implementation.ts │ │ │ │ └── signinup.ts │ │ │ ├── constants.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── providers │ │ │ │ ├── activeDirectory.ts │ │ │ │ ├── apple.ts │ │ │ │ ├── bitbucket.ts │ │ │ │ ├── boxySaml.ts │ │ │ │ ├── configUtils.ts │ │ │ │ ├── custom.ts │ │ │ │ ├── discord.ts │ │ │ │ ├── facebook.ts │ │ │ │ ├── github.ts │ │ │ │ ├── gitlab.ts │ │ │ │ ├── google.ts │ │ │ │ ├── googleWorkspaces.ts │ │ │ │ ├── index.ts │ │ │ │ ├── linkedin.ts │ │ │ │ ├── okta.ts │ │ │ │ ├── twitter.ts │ │ │ │ └── utils.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── totp │ │ │ ├── api │ │ │ │ ├── createDevice.ts │ │ │ │ ├── implementation.ts │ │ │ │ ├── listDevices.ts │ │ │ │ ├── removeDevice.ts │ │ │ │ ├── verifyDevice.ts │ │ │ │ └── verifyTOTP.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── usermetadata │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── userroles │ │ │ ├── index.ts │ │ │ ├── permissionClaim.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ ├── userRoleClaim.ts │ │ │ └── utils.ts │ │ └── webauthn │ │ │ ├── api │ │ │ ├── emailExists.ts │ │ │ ├── generateRecoverAccountToken.ts │ │ │ ├── implementation.ts │ │ │ ├── recoverAccount.ts │ │ │ ├── registerCredential.ts │ │ │ ├── registerOptions.ts │ │ │ ├── signInOptions.ts │ │ │ ├── signin.ts │ │ │ ├── signup.ts │ │ │ └── utils.ts │ │ │ ├── constants.ts │ │ │ ├── emaildelivery │ │ │ └── services │ │ │ │ ├── backwardCompatibility │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ └── smtp │ │ │ │ ├── index.ts │ │ │ │ ├── recoverAccount.ts │ │ │ │ └── serviceImplementation │ │ │ │ └── index.ts │ │ │ ├── error.ts │ │ │ ├── index.ts │ │ │ ├── recipe.ts │ │ │ ├── recipeImplementation.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ ├── recipeModule.ts │ ├── recipeUserId.ts │ ├── supertokens.ts │ ├── thirdpartyUtils.ts │ ├── types.ts │ ├── user.ts │ ├── utils.ts │ └── version.ts ├── tsconfig.json └── tslint.json ├── nextjs ├── index.d.ts └── index.js ├── package-lock.json ├── package.json ├── recipe ├── accountlinking │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── dashboard │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── emailpassword │ ├── emaildelivery │ │ ├── index.d.ts │ │ └── index.js │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── emailverification │ ├── emaildelivery │ │ ├── index.d.ts │ │ └── index.js │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── jwt │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── multifactorauth │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── multitenancy │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── oauth2provider │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── openid │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── passwordless │ ├── emaildelivery │ │ ├── index.d.ts │ │ └── index.js │ ├── index.d.ts │ ├── index.js │ ├── smsdelivery │ │ ├── index.d.ts │ │ └── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── session │ ├── claims.d.ts │ ├── claims.js │ ├── framework │ │ ├── awsLambda │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── custom │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── express │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── fastify │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── hapi │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ ├── koa │ │ │ ├── index.d.ts │ │ │ └── index.js │ │ └── loopback │ │ │ ├── index.d.ts │ │ │ └── index.js │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── thirdparty │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── totp │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── usermetadata │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js ├── userroles │ ├── index.d.ts │ ├── index.js │ └── types │ │ ├── index.d.ts │ │ └── index.js └── webauthn │ ├── emaildelivery │ ├── index.d.ts │ └── index.js │ ├── index.d.ts │ ├── index.js │ └── types │ ├── index.d.ts │ └── index.js ├── test ├── auth-modes.test.js ├── auth-react-server │ ├── .env.example │ ├── .gitignore │ ├── index.js │ ├── package-lock.json │ ├── package.json │ ├── utils.js │ └── webauthn │ │ ├── wasm_exec.js │ │ └── webauthn.wasm ├── config.test.js ├── customFramework.test.js ├── dashboard.test.js ├── dashboard │ ├── dashboardGet.test.js │ └── userEmailVerifyGet.test.js ├── docker │ ├── node14 │ │ └── Dockerfile │ ├── node16 │ │ └── Dockerfile │ └── node20 │ │ └── Dockerfile ├── emailpassword │ ├── config.test.js │ ├── deleteUser.test.js │ ├── emailDelivery.test.js │ ├── emailExists.test.js │ ├── emailverify.test.js │ ├── formFieldValidator.test.js │ ├── multitenancy.test.js │ ├── override.test.js │ ├── passwordreset.test.js │ ├── signinFeature.test.js │ ├── signoutFeature.test.js │ ├── signupFeature.test.js │ ├── updateEmailPass.test.js │ └── users.test.js ├── emailverification │ └── apiInterface.test.js ├── error.test.js ├── exampleTestHelpers.js ├── fetch-polyfill.mjs ├── findExamplesWithTests.sh ├── framework │ ├── awsLambda.test.js │ ├── awsLambda.withTenantId.test.js │ ├── crossFramework.testgen.js │ ├── crossframework │ │ ├── repeatedResponseHeader.test.js │ │ └── unauthorised.test.js │ ├── custom.test.js │ ├── express.test.js │ ├── fastify.test.js │ ├── fastify.withTenantId.test.js │ ├── hapi.test.js │ ├── hapi.withTenantId.test.js │ ├── koa.test.js │ ├── koa.withTenantId.test.js │ ├── loopback-server │ │ ├── index.js │ │ ├── index.ts │ │ └── tsconfig.json │ ├── loopback.test.js │ └── loopback.withTenantId.test.js ├── frontendIntegration │ ├── .gitignore │ ├── angular │ │ ├── main.js │ │ ├── polyfills.js │ │ ├── runtime.js │ │ └── vendor.js │ ├── index.html │ ├── index.js │ └── package.json ├── humanise.test.js ├── import.test.js ├── interceptor.test.js ├── jwt │ ├── config.test.js │ ├── createJWTFeature.test.js │ ├── getJWKS.test.js │ └── override.test.js ├── middleware.test.js ├── middleware2.test.js ├── middleware3.test.js ├── multitenancy │ ├── loginMethods.test.js │ └── tenants-crud.test.js ├── nextjs.test.js ├── oauth2 │ ├── config.test.js │ └── oauth2client.test.js ├── openid │ ├── api.test.js │ ├── config.test.js │ ├── openid.test.js │ └── override.test.js ├── passwordless │ ├── apis.test.js │ ├── config.test.js │ ├── emailDelivery.test.js │ ├── multitenancy.test.js │ ├── recipeFunctions.test.js │ └── smsDelivery.test.js ├── querier.test.js ├── ratelimiting.test.js ├── recipeModuleManager.test.js ├── session.test.js ├── session │ ├── accessTokenVersions.test.js │ ├── claims │ │ ├── assertClaims.test.js │ │ ├── createNewSession.test.js │ │ ├── fetchAndSetClaim.test.js │ │ ├── getClaimValue.test.js │ │ ├── primitiveArrayClaim.test.js │ │ ├── primitiveClaim.test.js │ │ ├── removeClaim.test.js │ │ ├── setClaimValue.test.js │ │ ├── testClaims.js │ │ ├── validateClaimsForSessionHandle.test.js │ │ └── verifySession.test.js │ ├── errorHandlers.test.js │ ├── exposeAccessTokenToFrontendInCookieBasedAuth.test.js │ ├── jwksCache.test.js │ ├── sessionHandlingFuncsWithoutReq.test.js │ ├── sessionUtils.test.js │ └── useDynamicSigningKeySwitching.test.js ├── sessionAccessTokenSigningKeyUpdate.test.js ├── sessionExpress.test.js ├── test-server │ ├── .gitignore │ ├── package-lock.json │ ├── package.json │ ├── src │ │ ├── accountlinking.ts │ │ ├── emailpassword.ts │ │ ├── emailverification.ts │ │ ├── index.ts │ │ ├── logger.ts │ │ ├── multifactorauth.ts │ │ ├── multitenancy.ts │ │ ├── oauth2provider.ts │ │ ├── overrideLogging.ts │ │ ├── passwordless.ts │ │ ├── session.ts │ │ ├── supertokens.ts │ │ ├── testFunctionMapper.ts │ │ ├── thirdparty.ts │ │ ├── totp.ts │ │ ├── usermetadata.ts │ │ ├── utils.ts │ │ └── webauthn.ts │ └── tsconfig.json ├── testExports.sh ├── thirdparty │ ├── authorisationUrlFeature.test.js │ ├── config.test.js │ ├── emailverify.test.js │ ├── multitenancy.test.js │ ├── oidc.test.js │ ├── override.test.js │ ├── provider.config.test.js │ ├── provider.config_from_core.test.js │ ├── provider.config_from_static.test.js │ ├── provider.test.js │ ├── recipeFunctions.test.js │ ├── signinupFeature.test.js │ ├── signoutFeature.test.js │ ├── tpConfigsForVerification.js │ └── users.test.js ├── totp │ └── recipeFunctions.test.js ├── userContext.test.js ├── useridmapping │ ├── createUserIdMapping.test.js │ ├── deleteUserIdMapping.test.js │ ├── getUserIdMapping.test.js │ ├── recipeTests │ │ ├── emailpassword.test.js │ │ ├── passwordless.test.js │ │ ├── supertokens.test.js │ │ └── thirdparty.test.js │ └── updateOrDeleteUserIdMappingInfo.test.js ├── usermetadata │ ├── clearUserMetadata.test.js │ ├── config.test.js │ ├── getUserMetadata.test.js │ ├── override.test.js │ └── updateUserMetadata.test.js ├── userroles │ ├── addRoleToUser.test.js │ ├── claims.test.js │ ├── config.test.js │ ├── createNewRoleOrAddPermissions.test.js │ ├── deleteRole.test.js │ ├── getPermissionsForRole.test.js │ ├── getRolesForUser.test.js │ ├── getRolesThatHavePermissions.test.js │ ├── getUsersThatHaveRole.test.js │ ├── multitenantRole.test.js │ ├── removePermissionsFromRole.test.js │ └── removeUserRole.test.js ├── users.json ├── utils.js ├── utils.test.js ├── waitForServerStartup.sh ├── webauthn │ ├── config.test.js │ └── lib │ │ ├── createRegisterOptions.js │ │ ├── createSignInOptions.js │ │ ├── createUser.js │ │ ├── getWebAuthnLib.js │ │ ├── wasm_exec.js │ │ └── webauthn.wasm └── with-typescript │ ├── .gitignore │ ├── build.sh │ ├── index.ts │ ├── package-lock.json │ ├── package.json │ ├── tsconfig.json │ └── tslint.json ├── tests.log ├── types ├── index.d.ts └── index.js └── updateLibInExample /.circleci/configs/hydra.yml: -------------------------------------------------------------------------------- 1 | serve: 2 | cookies: 3 | same_site_mode: Lax 4 | 5 | urls: 6 | self: 7 | issuer: http://localhost:4444 8 | consent: http://localhost:3001/auth/oauth/consent 9 | login: http://localhost:3001/auth/oauth/login 10 | logout: http://localhost:3001/auth/oauth/logout 11 | 12 | secrets: 13 | system: 14 | - youReallyNeedToChangeThis 15 | 16 | oidc: 17 | subject_identifiers: 18 | supported_types: 19 | - pairwise 20 | - public 21 | pairwise: 22 | salt: youReallyNeedToChangeThis 23 | -------------------------------------------------------------------------------- /.circleci/installJava.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | wget https://download.java.net/java/GA/jdk15.0.1/51f4f36ad4ef43e39d0dfdbaf6549e32/9/GPL/openjdk-15.0.1_linux-x64_bin.tar.gz 4 | mkdir /usr/java 5 | mv openjdk-15.0.1_linux-x64_bin.tar.gz /usr/java 6 | cd /usr/java 7 | tar -xzvf openjdk-15.0.1_linux-x64_bin.tar.gz 8 | rm openjdk-15.0.1_linux-x64_bin.tar.gz 9 | ln -s /usr/java/jdk-15.0.1/bin/java /usr/bin/java 10 | ln -s /usr/java/jdk-15.0.1/bin/javac /usr/bin/javac -------------------------------------------------------------------------------- /.circleci/publish.sh: -------------------------------------------------------------------------------- 1 | version=$(cat ../package.json | jq .version | tr -d '"') 2 | isLatest=`curl -s -X GET \ 3 | "https://api.supertokens.io/0/driver/latest/check?password=$SUPERTOKENS_API_KEY&version=$version&name=node" \ 4 | -H 'api-version: 0'` 5 | if [[ $? -ne 0 ]] 6 | then 7 | echo "api not working... exiting!" 8 | exit 1 9 | fi 10 | if [[ `echo $isLatest | jq .isLatest` == "true" ]] 11 | then 12 | cd .. 13 | npm publish --tag latest 14 | else 15 | cd .. 16 | npm publish --tag version-$version 17 | fi 18 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | lib/build/* linguist-generated=true -------------------------------------------------------------------------------- /.github/helpers/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | package-lock.json -------------------------------------------------------------------------------- /.github/helpers/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "helpers", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [], 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "axios": "^0.26.1", 14 | "github-workflow-helpers": "github:supertokens/github-workflow-helpers" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /.github/workflows/github-actions-changelog.yml: -------------------------------------------------------------------------------- 1 | name: "Enforcing changelog in PRs Workflow" 2 | on: 3 | pull_request: 4 | types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled] 5 | 6 | jobs: 7 | # Enforces the update of a changelog file on every pull request 8 | changelog: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v2 12 | - uses: dangoslen/changelog-enforcer@v2 13 | with: 14 | changeLogPath: "CHANGELOG.md" 15 | skipLabels: "Skip-Changelog" 16 | -------------------------------------------------------------------------------- /.github/workflows/lint-pr-title.yml: -------------------------------------------------------------------------------- 1 | name: "Lint PR Title" 2 | 3 | on: 4 | pull_request: 5 | types: 6 | - opened 7 | - reopened 8 | - edited 9 | - synchronize 10 | 11 | jobs: 12 | pr-title: 13 | name: Lint PR title 14 | runs-on: ubuntu-latest 15 | steps: 16 | - uses: amannn/action-semantic-pull-request@v3 17 | env: 18 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 19 | with: 20 | validateSingleCommit: true 21 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | test/test-server/node_modules 3 | /examples/**/node_modules 4 | .DS_Store 5 | /.history 6 | *.js.map 7 | coverage 8 | .vscode 9 | apiPassword 10 | releasePassword 11 | .tmp 12 | .idea 13 | /test_report 14 | /temp_test_exports 15 | /temp_* 16 | /.nyc_output 17 | .circleci/.pat 18 | -------------------------------------------------------------------------------- /.mocharc.yml: -------------------------------------------------------------------------------- 1 | spec: test/**/*.test.js 2 | exit: true 3 | slow: 10000 4 | timeout: 20000 5 | reporter: spec 6 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | **/*.ts 2 | !**/*.d.ts 3 | .git/ 4 | test/ 5 | hooks/ 6 | .circleci/ 7 | lib/tsconfig.json 8 | .mocharc.yml 9 | .prettierrc 10 | lib/tslint.json 11 | addDevTag 12 | addReleaseTag 13 | frontendDriverInterfaceSupported.json 14 | coreDriverInterfaceSupported.json 15 | .github/ 16 | .gitattributes 17 | examples/ 18 | add-ts-no-check.js 19 | docs/ 20 | .prettierignore 21 | updateLibInExample 22 | testExports.sh -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | docs/ -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "tabWidth": 4, 3 | "semi": true, 4 | "singleQuote": false, 5 | "printWidth": 120, 6 | "jsxBracketSameLine": true 7 | } 8 | -------------------------------------------------------------------------------- /coreDriverInterfaceSupported.json: -------------------------------------------------------------------------------- 1 | { 2 | "_comment": "contains a list of core-driver interfaces branch names that this core supports", 3 | "versions": ["5.3"] 4 | } 5 | -------------------------------------------------------------------------------- /custom/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../lib/build/customFramework"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import CustomFramework from "supertokens-node/custom"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | 10 | import * as _default from "../lib/build/customFramework"; 11 | export default _default; 12 | -------------------------------------------------------------------------------- /custom/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../lib/build/customFramework")); 7 | -------------------------------------------------------------------------------- /docs/.nojekyll: -------------------------------------------------------------------------------- 1 | TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. -------------------------------------------------------------------------------- /docs/assets/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/docs/assets/icons.png -------------------------------------------------------------------------------- /docs/assets/icons@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/docs/assets/icons@2x.png -------------------------------------------------------------------------------- /docs/assets/widgets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/docs/assets/widgets.png -------------------------------------------------------------------------------- /docs/assets/widgets@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/docs/assets/widgets@2x.png -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/aws/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/prod/user"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/aws/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/aws/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/assets/images/separator-line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/aws/with-emailpassword/test/helpers/lambda-layer.sh: -------------------------------------------------------------------------------- 1 | mkdir lambda && cd lambda 2 | npm init -y 3 | npm i -s @middy/core @middy/http-cors 4 | npm i --save git+ssh://git@github.com:supertokens/supertokens-node.git#$GITHUB_SHA 5 | mkdir nodejs 6 | cp -r node_modules nodejs 7 | cp package.json nodejs 8 | cp package-lock.json nodejs 9 | zip -r supertokens-node.zip nodejs/ 10 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/.gitignore: -------------------------------------------------------------------------------- 1 | .wrangler -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-email-password-hono-be-only/hono.d.ts: -------------------------------------------------------------------------------- 1 | import { SessionContainer } from "supertokens-node/recipe/session"; 2 | 3 | declare module "hono" { 4 | interface HonoRequest { 5 | session?: SessionContainer; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-email-password-hono-be-only/wrangler.toml: -------------------------------------------------------------------------------- 1 | name = "hono" 2 | compatibility_date = "2023-12-01" 3 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/backend/hono.d.ts: -------------------------------------------------------------------------------- 1 | import { SessionContainer } from "supertokens-node/recipe/session"; 2 | 3 | declare module "hono" { 4 | interface HonoRequest { 5 | session?: SessionContainer; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "wrangler dev index.ts --port 3001" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/backend/wrangler.toml: -------------------------------------------------------------------------------- 1 | name = "hono" 2 | compatibility_date = "2023-12-01" 3 | 4 | node_compat = true -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/cloudflare-workers/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/cloudflare-workers/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/cloudflare-workers/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/cloudflare-workers/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/README.md: -------------------------------------------------------------------------------- 1 | ![SuperTokens banner](https://raw.githubusercontent.com/supertokens/supertokens-logo/master/images/Artboard%20%E2%80%93%2027%402x.png) 2 | 3 | # SuperTokens EmailPassword Demo app 4 | 5 | To get this demo app, please run the following command: 6 | 7 | ```bash 8 | npx create-supertokens-app@latest --recipe=emailpassword 9 | ``` 10 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "npx ts-node-dev --project ./tsconfig.json ./index.ts" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/express/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/express/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/express/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/express/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/express/with-m2m/.gitignore: -------------------------------------------------------------------------------- 1 | clients.json 2 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd assistant-cli 4 | npm run cli -- $@ -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = tab 5 | end_of_line = lf 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | insert_final_newline = true 9 | 10 | [*.yml] 11 | indent_style = space 12 | indent_size = 2 13 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const authProviderBaseUrl = "http://localhost:3001"; 2 | export const calendarServiceBaseUrl = "http://localhost:3011"; 3 | export const noteServiceBaseUrl = "http://localhost:3012"; 4 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/ts-node.register.mjs: -------------------------------------------------------------------------------- 1 | import { pathToFileURL } from "node:url"; 2 | import { register } from "node:module"; 3 | 4 | register("ts-node-maintained/esm", pathToFileURL("./")); 5 | -------------------------------------------------------------------------------- /examples/express/with-m2m/assistant-cli/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@sindresorhus/tsconfig", 3 | "compilerOptions": { 4 | "target": "ESNext", 5 | "outDir": "dist" 6 | }, 7 | "include": ["src", "ts-node.register.mjs"] 8 | } 9 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "npx ts-node-dev --project ./tsconfig.json ./index.ts" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/fastify/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/fastify/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/fastify/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/fastify/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "npx ts-node-dev --project ./tsconfig.json ./index.ts" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/hapi/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/hapi/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/hapi/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/hapi/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "npx ts-node-dev --project ./tsconfig.json ./index.ts" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/koa/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/koa/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/koa/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/assets/images/separator-line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/koa/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/backend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "supertokens-node", 3 | "version": "0.0.1", 4 | "private": true, 5 | "description": "", 6 | "main": "index.js", 7 | "scripts": { 8 | "start": "npx ts-node-dev --project ./tsconfig.json ./index.ts" 9 | }, 10 | "dependencies": {}, 11 | "devDependencies": {}, 12 | "keywords": [], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/loopback/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/loopback/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/loopback/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/loopback/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/README.md: -------------------------------------------------------------------------------- 1 | ![SuperTokens banner](https://raw.githubusercontent.com/supertokens/supertokens-logo/master/images/Artboard%20%E2%80%93%2027%402x.png) 2 | 3 | # SuperTokens EmailPassword Demo app 4 | 5 | To get this demo app, please run the following command: 6 | 7 | ```bash 8 | npx create-supertokens-app@latest --recipe=emailpassword 9 | ``` 10 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/.gitignore: -------------------------------------------------------------------------------- 1 | # compiled output 2 | /dist 3 | /node_modules 4 | 5 | # Logs 6 | logs 7 | *.log 8 | npm-debug.log* 9 | pnpm-debug.log* 10 | yarn-debug.log* 11 | yarn-error.log* 12 | lerna-debug.log* 13 | 14 | # OS 15 | .DS_Store 16 | 17 | # Tests 18 | /coverage 19 | /.nyc_output 20 | 21 | # IDEs and editors 22 | /.idea 23 | .project 24 | .classpath 25 | .c9/ 26 | *.launch 27 | .settings/ 28 | *.sublime-workspace 29 | 30 | # IDE - VSCode 31 | .vscode/* 32 | !.vscode/settings.json 33 | !.vscode/tasks.json 34 | !.vscode/launch.json 35 | !.vscode/extensions.json -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true, 3 | "trailingComma": "all" 4 | } 5 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/nest-cli.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/nest-cli", 3 | "collection": "@nestjs/schematics", 4 | "sourceRoot": "src" 5 | } 6 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/app.service.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@nestjs/common'; 2 | 3 | @Injectable() 4 | export class AppService { 5 | getHello(): string { 6 | return 'Hello World!'; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/auth/auth.filter.spec.ts: -------------------------------------------------------------------------------- 1 | import { AuthFilter } from './auth.filter'; 2 | 3 | describe('AuthFilter', () => { 4 | it('should be defined', () => { 5 | expect(new AuthFilter()).toBeDefined(); 6 | }); 7 | }); 8 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/auth/auth.guard.spec.ts: -------------------------------------------------------------------------------- 1 | import { AuthGuard } from './auth.guard'; 2 | 3 | describe('AuthGuard', () => { 4 | it('should be defined', () => { 5 | expect(new AuthGuard()).toBeDefined(); 6 | }); 7 | }); 8 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/auth/auth.middleware.ts: -------------------------------------------------------------------------------- 1 | import { Injectable, NestMiddleware } from '@nestjs/common'; 2 | import { middleware } from 'supertokens-node/framework/express'; 3 | 4 | @Injectable() 5 | export class AuthMiddleware implements NestMiddleware { 6 | supertokensMiddleware: any; 7 | 8 | constructor() { 9 | this.supertokensMiddleware = middleware(); 10 | } 11 | 12 | use(req: Request, res: any, next: () => void) { 13 | return this.supertokensMiddleware(req, res, next); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/auth/config.interface.ts: -------------------------------------------------------------------------------- 1 | import { AppInfo } from 'supertokens-node/types'; 2 | 3 | export const ConfigInjectionToken = 'ConfigInjectionToken'; 4 | 5 | export type AuthModuleConfig = { 6 | appInfo: AppInfo; 7 | connectionURI: string; 8 | apiKey?: string; 9 | }; 10 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/src/auth/session.decorator.ts: -------------------------------------------------------------------------------- 1 | import { createParamDecorator, ExecutionContext } from '@nestjs/common'; 2 | 3 | export const Session = createParamDecorator( 4 | (data: unknown, ctx: ExecutionContext) => { 5 | const request = ctx.switchToHttp().getRequest(); 6 | return request.session; 7 | }, 8 | ); 9 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/backend/tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "exclude": ["node_modules", "test", "dist", "**/*spec.ts"] 4 | } 5 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/nest/with-emailpassword/frontend/public/favicon.ico -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/Home/CallAPIView.tsx: -------------------------------------------------------------------------------- 1 | import axios from "axios"; 2 | import { getApiDomain } from "../config"; 3 | 4 | export default function CallAPIView() { 5 | async function callAPIClicked() { 6 | let response = await axios.get(getApiDomain() + "/sessioninfo"); 7 | window.alert("Session Information:\n" + JSON.stringify(response.data, null, 2)); 8 | } 9 | 10 | return ( 11 |
12 | Call API 13 |
14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/Home/index.tsx: -------------------------------------------------------------------------------- 1 | import SuccessView from "./SuccessView"; 2 | import { useSessionContext } from "supertokens-auth-react/recipe/session"; 3 | import "./Home.css"; 4 | 5 | export default function Home() { 6 | const sessionContext = useSessionContext(); 7 | 8 | if (sessionContext.loading === true) { 9 | return null; 10 | } 11 | 12 | return ( 13 |
14 | 15 |
16 | ); 17 | } 18 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/nest/with-emailpassword/frontend/src/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/nest/with-emailpassword/frontend/src/assets/images/background.png -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 4 | "Droid Sans", "Helvetica Neue", sans-serif; 5 | -webkit-font-smoothing: antialiased; 6 | -moz-osx-font-smoothing: grayscale; 7 | } 8 | 9 | code { 10 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace; 11 | } 12 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./index.css"; 4 | import App from "./App"; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById("root") as HTMLElement); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /examples/nest/with-emailpassword/frontend/src/react-app-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | .pnpm-debug.log* 27 | 28 | # local env files 29 | .env*.local 30 | 31 | # vercel 32 | .vercel 33 | 34 | # typescript 35 | *.tsbuildinfo 36 | next-env.d.ts 37 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/README.md: -------------------------------------------------------------------------------- 1 | ![SuperTokens banner](https://raw.githubusercontent.com/supertokens/supertokens-logo/master/images/Artboard%20%E2%80%93%2027%402x.png) 2 | 3 | # SuperTokens EmailPassword Demo app 4 | 5 | To get this demo app, please run the following command: 6 | 7 | ```bash 8 | npx create-supertokens-app@latest --recipe=emailpassword 9 | ``` 10 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/app/api/user-id/route.ts: -------------------------------------------------------------------------------- 1 | import { NextResponse, NextRequest } from "next/server"; 2 | 3 | export async function GET(request: NextRequest) { 4 | let userId = request.headers.get("x-user-id"); 5 | return NextResponse.json({ 6 | userId, 7 | }); 8 | } 9 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/assets/fonts/MenloRegular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/next/with-emailpassword/assets/fonts/MenloRegular.ttf -------------------------------------------------------------------------------- /examples/next/with-emailpassword/assets/images/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/next/with-emailpassword/assets/images/background.png -------------------------------------------------------------------------------- /examples/next/with-emailpassword/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | import SeparatorLine from "./separator-line.svg"; 2 | import ArrowRight from "./arrow-right-icon.svg"; 3 | import SignOutIcon from "./sign-out-icon.svg"; 4 | import GuideIcon from "./guide-icon.svg"; 5 | import BlogsIcon from "./blogs-icon.svg"; 6 | import CelebrateIcon from "./celebrate-icon.svg"; 7 | 8 | export { SeparatorLine, ArrowRight, SignOutIcon, GuideIcon, BlogsIcon, CelebrateIcon }; 9 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/assets/images/separator-line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/config/appInfo.ts: -------------------------------------------------------------------------------- 1 | const port = process.env.APP_PORT || 3000; 2 | 3 | const apiBasePath = "/api/auth/"; 4 | 5 | export const websiteDomain = 6 | process.env.APP_URL || 7 | process.env.NEXT_PUBLIC_APP_URL || 8 | process.env.DEPLOY_URL || 9 | process.env.URL || 10 | `http://localhost:${port}`; 11 | 12 | export const appInfo = { 13 | appName: "SuperTokens Demo App", 14 | websiteDomain, 15 | apiDomain: websiteDomain, 16 | apiBasePath, 17 | }; 18 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/interfaces.d.ts: -------------------------------------------------------------------------------- 1 | import { TypeFramework } from "supertokens-node/lib/build/framework/types"; 2 | 3 | export interface AuthConfig { 4 | framework: TypeFramework; 5 | supertokens: { 6 | connectionURI: string; 7 | }; 8 | appInfo: { 9 | appName: string; 10 | websiteDomain: string; 11 | apiDomain: string; 12 | apiBasePath: string; 13 | }; 14 | recipeList: any; 15 | isInServerlessEnv: boolean; 16 | } 17 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/netlify.toml: -------------------------------------------------------------------------------- 1 | [build] 2 | command = "NEXT_PUBLIC_APP_URL=$DEPLOY_URL npm run build" 3 | functions = "netlify/functions" 4 | publish = ".next" 5 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = { 3 | reactStrictMode: true, 4 | experimental: { 5 | appDir: true, 6 | }, 7 | }; 8 | 9 | module.exports = nextConfig; 10 | -------------------------------------------------------------------------------- /examples/next/with-emailpassword/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/examples/next/with-emailpassword/public/favicon.ico -------------------------------------------------------------------------------- /examples/next/with-emailpassword/styles/globals.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | padding: 0; 4 | margin: 0; 5 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, 6 | Helvetica Neue, sans-serif; 7 | } 8 | 9 | a { 10 | color: inherit; 11 | text-decoration: none; 12 | } 13 | 14 | * { 15 | box-sizing: border-box; 16 | } 17 | -------------------------------------------------------------------------------- /framework/awsLambda/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/awsLambda"; 2 | import * as _default from "../../lib/build/framework/awsLambda"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/awsLambda/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/awsLambda")); 7 | -------------------------------------------------------------------------------- /framework/custom/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/custom"; 2 | import * as _default from "../../lib/build/framework/custom"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/custom/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/custom")); 7 | -------------------------------------------------------------------------------- /framework/express/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/express"; 2 | import * as _default from "../../lib/build/framework/express"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/express/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/express")); 7 | -------------------------------------------------------------------------------- /framework/fastify/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/fastify"; 2 | import * as _default from "../../lib/build/framework/fastify"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/fastify/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/fastify")); 7 | -------------------------------------------------------------------------------- /framework/hapi/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/hapi"; 2 | import * as _default from "../../lib/build/framework/hapi"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/hapi/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/hapi")); 7 | -------------------------------------------------------------------------------- /framework/koa/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/koa"; 2 | import * as _default from "../../lib/build/framework/koa"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/koa/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/koa")); 7 | -------------------------------------------------------------------------------- /framework/loopback/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/framework/loopback"; 2 | import * as _default from "../../lib/build/framework/loopback"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /framework/loopback/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/framework/loopback")); 7 | -------------------------------------------------------------------------------- /frontendDriverInterfaceSupported.json: -------------------------------------------------------------------------------- 1 | { 2 | "_comment": "contains a list of frontend-driver interfaces branch names that this core supports", 3 | "versions": ["1.17", "1.18", "1.19", "2.0", "3.0", "3.1", "4.0", "4.1"] 4 | } 5 | -------------------------------------------------------------------------------- /index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "./lib/build"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import SuperTokens from "supertokens-node"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "./lib/build"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("./lib/build")); 7 | -------------------------------------------------------------------------------- /lib/build/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const HEADER_RID = "rid"; 3 | export declare const HEADER_FDI = "fdi-version"; 4 | export declare const RATE_LIMIT_STATUS_CODE = 429; 5 | -------------------------------------------------------------------------------- /lib/build/framework/awsLambda/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export type { SessionEvent, SessionEventV2 } from "./framework"; 3 | export declare const middleware: ( 4 | handler?: import("aws-lambda").Handler | undefined 5 | ) => import("aws-lambda").Handler; 6 | export declare const wrapRequest: (unwrapped: any) => import("..").BaseRequest; 7 | export declare const wrapResponse: (unwrapped: any) => import("..").BaseResponse; 8 | -------------------------------------------------------------------------------- /lib/build/framework/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const COOKIE_HEADER = "Set-Cookie"; 3 | export declare const BROTLI_DECOMPRESSION_ERROR_MESSAGE = 4 | "Brotli decompression not implement, Please add a middleware that handles decompression before the SuperTokens middleware."; 5 | -------------------------------------------------------------------------------- /lib/build/framework/fastify/types.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | /** 3 | * Define fastify types based on the parts that are used in the codebase. 4 | */ 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | -------------------------------------------------------------------------------- /lib/build/framework/hapi/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export type { SessionRequest } from "./framework"; 3 | export declare const plugin: import("@hapi/hapi").Plugin<{}>; 4 | export declare const wrapRequest: (unwrapped: any) => import("..").BaseRequest; 5 | export declare const wrapResponse: (unwrapped: any) => import("..").BaseResponse; 6 | -------------------------------------------------------------------------------- /lib/build/framework/koa/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export type { SessionContext } from "./framework"; 3 | export declare const middleware: () => (ctx: import("koa").Context, next: import("koa").Next) => Promise; 4 | export declare const wrapRequest: (unwrapped: any) => import("..").BaseRequest; 5 | export declare const wrapResponse: (unwrapped: any) => import("..").BaseResponse; 6 | -------------------------------------------------------------------------------- /lib/build/framework/loopback/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export type { SessionContext } from "./framework"; 3 | export declare const middleware: import("@loopback/rest").Middleware; 4 | export declare const wrapRequest: (unwrapped: any) => import("..").BaseRequest; 5 | export declare const wrapResponse: (unwrapped: any) => import("..").BaseResponse; 6 | -------------------------------------------------------------------------------- /lib/build/framework/types.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare type TypeFramework = "express" | "fastify" | "hapi" | "loopback" | "koa" | "awsLambda" | "custom"; 3 | import { BaseRequest, BaseResponse } from "."; 4 | export declare let SchemaFramework: { 5 | type: string; 6 | enum: string[]; 7 | }; 8 | export interface Framework { 9 | wrapRequest: (unwrapped: any) => BaseRequest; 10 | wrapResponse: (unwrapped: any) => BaseResponse; 11 | } 12 | -------------------------------------------------------------------------------- /lib/build/framework/types.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.SchemaFramework = void 0; 4 | exports.SchemaFramework = { 5 | type: "string", 6 | enum: ["express", "fastify", "hapi", "loopback", "koa", "awsLambda", "custom"], 7 | }; 8 | -------------------------------------------------------------------------------- /lib/build/ingredients/emaildelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeInputWithService, EmailDeliveryInterface } from "./types"; 3 | export default class EmailDelivery { 4 | ingredientInterfaceImpl: EmailDeliveryInterface; 5 | constructor(config: TypeInputWithService); 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/ingredients/emaildelivery/services/smtp.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | -------------------------------------------------------------------------------- /lib/build/ingredients/emaildelivery/types.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | -------------------------------------------------------------------------------- /lib/build/ingredients/smsdelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeInputWithService, SmsDeliveryInterface } from "./types"; 3 | export default class SmsDelivery { 4 | ingredientInterfaceImpl: SmsDeliveryInterface; 5 | constructor(config: TypeInputWithService); 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/ingredients/smsdelivery/services/supertokens.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const SUPERTOKENS_SMS_SERVICE_URL = "https://api.supertokens.com/0/services/sms"; 3 | -------------------------------------------------------------------------------- /lib/build/ingredients/smsdelivery/types.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | -------------------------------------------------------------------------------- /lib/build/logger.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | declare function logDebugMessage(message: string): void; 3 | declare function enableDebugLogs(): void; 4 | export { logDebugMessage, enableDebugLogs }; 5 | -------------------------------------------------------------------------------- /lib/build/normalisedURLDomain.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export default class NormalisedURLDomain { 3 | private value; 4 | constructor(url: string); 5 | getAsStringDangerous: () => string; 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/normalisedURLPath.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export default class NormalisedURLPath { 3 | private value; 4 | constructor(url: string); 5 | startsWith: (other: NormalisedURLPath) => boolean; 6 | appendPath: (other: NormalisedURLPath) => NormalisedURLPath; 7 | getAsStringDangerous: () => string; 8 | equals: (other: NormalisedURLPath) => boolean; 9 | isARecipePath: () => boolean; 10 | } 11 | -------------------------------------------------------------------------------- /lib/build/postSuperTokensInitCallbacks.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare class PostSuperTokensInitCallbacks { 3 | static postInitCallbacks: (() => void)[]; 4 | static addPostInitCallback(cb: () => void): void; 5 | static runPostInitCallbacks(): void; 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/recipe/accountlinking/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface, TypeNormalisedInput } from "./types"; 3 | import { Querier } from "../../querier"; 4 | import type AccountLinkingRecipe from "./recipe"; 5 | export default function getRecipeImplementation( 6 | querier: Querier, 7 | config: TypeNormalisedInput, 8 | recipeInstance: AccountLinkingRecipe 9 | ): RecipeInterface; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/accountlinking/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import type { NormalisedAppinfo } from "../../types"; 3 | import type { TypeInput, TypeNormalisedInput } from "./types"; 4 | export declare function recipeInitDefinedShouldDoAutomaticAccountLinking(config: TypeNormalisedInput): boolean; 5 | export declare function validateAndNormaliseUserInput(_: NormalisedAppinfo, config?: TypeInput): TypeNormalisedInput; 6 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/analytics.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../types"; 3 | import { UserContext } from "../../../types"; 4 | export declare type Response = { 5 | status: "OK"; 6 | }; 7 | export default function analyticsPost( 8 | _: APIInterface, 9 | ___: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ): Promise; 13 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/apiKeyProtector.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserContext } from "../../../types"; 3 | import { APIFunction, APIInterface, APIOptions } from "../types"; 4 | export default function apiKeyProtector( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | apiFunction: APIFunction, 9 | userContext: UserContext 10 | ): Promise; 11 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/dashboard.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserContext } from "../../../types"; 3 | import { APIInterface, APIOptions } from "../types"; 4 | export default function dashboard( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../types"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/multitenancy/deleteTenant.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | export declare type Response = 5 | | { 6 | status: "OK"; 7 | didExist: boolean; 8 | } 9 | | { 10 | status: "CANNOT_DELETE_PUBLIC_TENANT_ERROR"; 11 | }; 12 | export default function deleteTenant( 13 | _: APIInterface, 14 | tenantId: string, 15 | __: APIOptions, 16 | userContext: UserContext 17 | ): Promise; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/multitenancy/deleteThirdPartyConfig.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | export declare type Response = 5 | | { 6 | status: "OK"; 7 | didConfigExist: boolean; 8 | } 9 | | { 10 | status: "UNKNOWN_TENANT_ERROR"; 11 | }; 12 | export default function deleteThirdPartyConfig( 13 | _: APIInterface, 14 | tenantId: string, 15 | options: APIOptions, 16 | userContext: UserContext 17 | ): Promise; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/search/tagsGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type TagsResponse = { 5 | status: "OK"; 6 | tags: string[]; 7 | }; 8 | export declare const getSearchTags: ( 9 | _: APIInterface, 10 | ___: string, 11 | options: APIOptions, 12 | userContext: UserContext 13 | ) => Promise; 14 | export {}; 15 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/signIn.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../types"; 3 | import { UserContext } from "../../../types"; 4 | export default function signIn(_: APIInterface, options: APIOptions, userContext: UserContext): Promise; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/signOut.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../types"; 3 | import { UserContext } from "../../../types"; 4 | export default function signOut( 5 | _: APIInterface, 6 | ___: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userDelete.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | declare type Response = { 4 | status: "OK"; 5 | }; 6 | export declare const userDelete: (_: APIInterface, ___: string, options: APIOptions, __: any) => Promise; 7 | export {}; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userEmailVerifyGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIFunction } from "../../types"; 3 | export declare const userEmailVerifyGet: APIFunction; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userEmailVerifyPut.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = { 5 | status: "OK"; 6 | }; 7 | export declare const userEmailVerifyPut: ( 8 | _: APIInterface, 9 | tenantId: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ) => Promise; 13 | export {}; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userEmailVerifyTokenPost.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = { 5 | status: "OK" | "EMAIL_ALREADY_VERIFIED_ERROR"; 6 | }; 7 | export declare const userEmailVerifyTokenPost: ( 8 | _: APIInterface, 9 | tenantId: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ) => Promise; 13 | export {}; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIFunction } from "../../types"; 3 | export declare const userGet: APIFunction; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userMetadataGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIFunction } from "../../types"; 3 | export declare const userMetaDataGet: APIFunction; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userMetadataPut.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = { 5 | status: "OK"; 6 | }; 7 | export declare const userMetadataPut: ( 8 | _: APIInterface, 9 | ___: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ) => Promise; 13 | export {}; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userPasswordPut.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = 5 | | { 6 | status: "OK"; 7 | } 8 | | { 9 | status: "INVALID_PASSWORD_ERROR"; 10 | error: string; 11 | }; 12 | export declare const userPasswordPut: ( 13 | _: APIInterface, 14 | tenantId: string, 15 | options: APIOptions, 16 | userContext: UserContext 17 | ) => Promise; 18 | export {}; 19 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userSessionsGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIFunction } from "../../types"; 3 | export declare const userSessionsGet: APIFunction; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userSessionsPost.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = { 5 | status: "OK"; 6 | }; 7 | export declare const userSessionsPost: ( 8 | _: APIInterface, 9 | ___: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ) => Promise; 13 | export {}; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userdetails/userUnlinkGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | import { UserContext } from "../../../../types"; 4 | declare type Response = { 5 | status: "OK"; 6 | }; 7 | export declare const userUnlink: ( 8 | _: APIInterface, 9 | ___: string, 10 | options: APIOptions, 11 | userContext: UserContext 12 | ) => Promise; 13 | export {}; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/addRoleToUser.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | declare const addRoleToUser: ( 4 | _: APIInterface, 5 | tenantId: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | didUserAlreadyHaveRole: boolean; 12 | } 13 | | { 14 | status: "UNKNOWN_ROLE_ERROR" | "FEATURE_NOT_ENABLED_ERROR"; 15 | } 16 | >; 17 | export default addRoleToUser; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/getRolesForUser.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | declare const getRolesForUser: ( 4 | _: APIInterface, 5 | tenantId: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | roles: string[]; 12 | } 13 | | { 14 | status: "FEATURE_NOT_ENABLED_ERROR"; 15 | } 16 | >; 17 | export default getRolesForUser; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/permissions/getPermissionsForRole.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../../types"; 3 | declare const getPermissionsForRole: ( 4 | _: APIInterface, 5 | ___: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | permissions: string[]; 12 | } 13 | | { 14 | status: "FEATURE_NOT_ENABLED_ERROR" | "UNKNOWN_ROLE_ERROR"; 15 | } 16 | >; 17 | export default getPermissionsForRole; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/permissions/removePermissions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../../types"; 3 | declare const removePermissionsFromRole: ( 4 | _: APIInterface, 5 | ___: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise<{ 9 | status: "OK" | "UNKNOWN_ROLE_ERROR" | "FEATURE_NOT_ENABLED_ERROR"; 10 | }>; 11 | export default removePermissionsFromRole; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/removeUserRole.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../types"; 3 | declare const removeUserRole: ( 4 | _: APIInterface, 5 | tenantId: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | didUserHaveRole: boolean; 12 | } 13 | | { 14 | status: "UNKNOWN_ROLE_ERROR" | "FEATURE_NOT_ENABLED_ERROR"; 15 | } 16 | >; 17 | export default removeUserRole; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/roles/createRoleOrAddPermissions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../../types"; 3 | declare const createRoleOrAddPermissions: ( 4 | _: APIInterface, 5 | __: string, 6 | options: APIOptions, 7 | ___: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | createdNewRole: boolean; 12 | } 13 | | { 14 | status: "FEATURE_NOT_ENABLED_ERROR"; 15 | } 16 | >; 17 | export default createRoleOrAddPermissions; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/roles/deleteRole.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../../../types"; 3 | declare const deleteRole: ( 4 | _: APIInterface, 5 | ___: string, 6 | options: APIOptions, 7 | __: any 8 | ) => Promise< 9 | | { 10 | status: "OK"; 11 | didRoleExist: boolean; 12 | } 13 | | { 14 | status: "FEATURE_NOT_ENABLED_ERROR"; 15 | } 16 | >; 17 | export default deleteRole; 18 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/userroles/roles/getAllRoles.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIFunction } from "../../../types"; 3 | declare const getAllRoles: APIFunction; 4 | export default getAllRoles; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/usersCountGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../types"; 3 | import { UserContext } from "../../../types"; 4 | export declare type Response = { 5 | status: "OK"; 6 | count: number; 7 | }; 8 | export default function usersCountGet( 9 | _: APIInterface, 10 | tenantId: string, 11 | __: APIOptions, 12 | userContext: UserContext 13 | ): Promise; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/usersGet.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions, UserWithFirstAndLastName } from "../types"; 3 | export declare type Response = { 4 | status: "OK"; 5 | nextPaginationToken?: string; 6 | users: UserWithFirstAndLastName[]; 7 | }; 8 | export default function usersGet(_: APIInterface, tenantId: string, options: APIOptions): Promise; 9 | export declare function getSearchParamsFromURL( 10 | path: string 11 | ): { 12 | [key: string]: string; 13 | }; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/api/validateKey.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserContext } from "../../../types"; 3 | import { APIInterface, APIOptions } from "../types"; 4 | export default function validateKey(_: APIInterface, options: APIOptions, userContext: UserContext): Promise; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class DashboardError extends STError { 4 | static OPERATION_NOT_ALLOWED: "OPERATION_NOT_ALLOWED"; 5 | constructor(message?: string); 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import Recipe from "./recipe"; 3 | import { RecipeInterface, APIOptions, APIInterface } from "./types"; 4 | export default class Wrapper { 5 | static init: typeof Recipe.init; 6 | } 7 | export declare let init: typeof Recipe.init; 8 | export type { RecipeInterface, APIOptions, APIInterface }; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/dashboard/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./types"; 3 | export default function getRecipeImplementation(): RecipeInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/emailExists.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function emailExists( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/generatePasswordResetToken.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function generatePasswordResetToken( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/passwordReset.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function passwordReset( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/signin.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function signInAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/signup.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function signUpAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/api/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedFormField } from "../types"; 3 | import { UserContext } from "../../../types"; 4 | export declare function validateFormFieldsOrThrowError( 5 | configFormFields: NormalisedFormField[], 6 | formFieldsRaw: any, 7 | tenantId: string, 8 | userContext: UserContext 9 | ): Promise< 10 | { 11 | id: string; 12 | value: unknown; 13 | }[] 14 | >; 15 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/emaildelivery/services/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import SMTP from "./smtp"; 3 | export declare let SMTPService: typeof SMTP; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/emaildelivery/services/smtp/passwordReset.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeEmailPasswordPasswordResetEmailDeliveryInput } from "../../../types"; 3 | import { GetContentResult } from "../../../../../ingredients/emaildelivery/services/smtp"; 4 | export default function getPasswordResetEmailContent( 5 | input: TypeEmailPasswordPasswordResetEmailDeliveryInput 6 | ): GetContentResult; 7 | export declare function getPasswordResetEmailHTML(appName: string, email: string, resetLink: string): string; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/emaildelivery/services/smtp/serviceImplementation/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeEmailPasswordEmailDeliveryInput } from "../../../../types"; 3 | import { Transporter } from "nodemailer"; 4 | import { ServiceInterface } from "../../../../../../ingredients/emaildelivery/services/smtp"; 5 | export declare function getServiceImplementation( 6 | transporter: Transporter, 7 | from: { 8 | name: string; 9 | email: string; 10 | } 11 | ): ServiceInterface; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/passwordResetFunctions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | export declare function createAndSendEmailUsingSupertokensService( 4 | appInfo: NormalisedAppinfo, 5 | user: { 6 | id: string; 7 | email: string; 8 | }, 9 | passwordResetURLWithToken: string 10 | ): Promise; 11 | -------------------------------------------------------------------------------- /lib/build/recipe/emailpassword/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface, TypeNormalisedInput } from "./types"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface( 5 | querier: Querier, 6 | getEmailPasswordConfig: () => TypeNormalisedInput 7 | ): RecipeInterface; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/api/emailVerify.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function emailVerify( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/api/generateEmailVerifyToken.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function generateEmailVerifyToken( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const GENERATE_EMAIL_VERIFY_TOKEN_API = "/user/email/verify/token"; 3 | export declare const EMAIL_VERIFY_API = "/user/email/verify"; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/emailVerificationFunctions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserEmailInfo } from "./types"; 3 | import { NormalisedAppinfo } from "../../types"; 4 | export declare function createAndSendEmailUsingSupertokensService( 5 | appInfo: NormalisedAppinfo, 6 | user: UserEmailInfo, 7 | emailVerifyURLWithToken: string 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/emaildelivery/services/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import SMTP from "./smtp"; 3 | export declare let SMTPService: typeof SMTP; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/emaildelivery/services/smtp/emailVerify.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeEmailVerificationEmailDeliveryInput } from "../../../types"; 3 | import { GetContentResult } from "../../../../../ingredients/emaildelivery/services/smtp"; 4 | export default function getEmailVerifyEmailContent(input: TypeEmailVerificationEmailDeliveryInput): GetContentResult; 5 | export declare function getEmailVerifyEmailHTML(appName: string, email: string, verificationLink: string): string; 6 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/emaildelivery/services/smtp/serviceImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeEmailVerificationEmailDeliveryInput } from "../../../types"; 3 | import { Transporter } from "nodemailer"; 4 | import { ServiceInterface } from "../../../../../ingredients/emaildelivery/services/smtp"; 5 | export declare function getServiceImplementation( 6 | transporter: Transporter, 7 | from: { 8 | name: string; 9 | email: string; 10 | } 11 | ): ServiceInterface; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class SessionError extends STError { 4 | constructor(options: { type: "BAD_INPUT_ERROR"; message: string }); 5 | } 6 | -------------------------------------------------------------------------------- /lib/build/recipe/emailverification/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./"; 3 | import { Querier } from "../../querier"; 4 | import { GetEmailForRecipeUserIdFunc } from "./types"; 5 | export default function getRecipeInterface( 6 | querier: Querier, 7 | getEmailForRecipeUserId: GetEmailForRecipeUserIdFunc 8 | ): RecipeInterface; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/jwt/api/getJWKS.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserContext } from "../../../types"; 3 | import { APIInterface, APIOptions } from "../types"; 4 | export default function getJWKS( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/jwt/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../types"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/jwt/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const GET_JWKS_API = "/jwt/jwks.json"; 3 | -------------------------------------------------------------------------------- /lib/build/recipe/jwt/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { Querier } from "../../querier"; 3 | import { NormalisedAppinfo } from "../../types"; 4 | import { RecipeInterface, TypeNormalisedInput } from "./types"; 5 | export default function getRecipeInterface( 6 | querier: Querier, 7 | config: TypeNormalisedInput, 8 | appInfo: NormalisedAppinfo 9 | ): RecipeInterface; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/jwt/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import Recipe from "./recipe"; 4 | import { TypeInput, TypeNormalisedInput } from "./types"; 5 | export declare function validateAndNormaliseUserInput( 6 | _: Recipe, 7 | __: NormalisedAppinfo, 8 | config?: TypeInput 9 | ): TypeNormalisedInput; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/multifactorauth/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/multifactorauth/api/resyncSessionAndFetchMFAInfo.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function resyncSessionAndFetchMFAInfo( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/multifactorauth/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const RESYNC_SESSION_AND_FETCH_MFA_INFO = "/mfa/info"; 3 | -------------------------------------------------------------------------------- /lib/build/recipe/multifactorauth/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./"; 3 | import type MultiFactorAuthRecipe from "./recipe"; 4 | export default function getRecipeInterface(recipeInstance: MultiFactorAuthRecipe): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/allowedDomainsClaim.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { PrimitiveArrayClaim } from "../session/claims"; 3 | /** 4 | * We include "Class" in the class name, because it makes it easier to import the right thing (the instance) instead of this. 5 | * */ 6 | export declare class AllowedDomainsClaimClass extends PrimitiveArrayClaim { 7 | constructor(); 8 | } 9 | export declare const AllowedDomainsClaim: AllowedDomainsClaimClass; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/api/loginMethods.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function loginMethodsAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const LOGIN_METHODS_API = "/loginmethods"; 3 | export declare const DEFAULT_TENANT_ID = "public"; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class SessionError extends STError { 4 | constructor(options: { type: "BAD_INPUT_ERROR"; message: string }); 5 | } 6 | -------------------------------------------------------------------------------- /lib/build/recipe/multitenancy/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface(querier: Querier): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/auth.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function authGET( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/endSession.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export declare function endSessionGET( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | export declare function endSessionPOST( 10 | apiImplementation: APIInterface, 11 | options: APIOptions, 12 | userContext: UserContext 13 | ): Promise; 14 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../types"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/introspectToken.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function introspectTokenPOST( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/login.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function login( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/loginInfo.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function loginInfoGET( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/logout.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export declare function logoutPOST( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/revokeToken.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function revokeTokenPOST( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/token.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function tokenPOST( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/api/userInfo.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function userInfoGET( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/oauth2provider/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import Recipe from "./recipe"; 4 | import { TypeInput, TypeNormalisedInput } from "./types"; 5 | export declare function validateAndNormaliseUserInput( 6 | _: Recipe, 7 | __: NormalisedAppinfo, 8 | config?: TypeInput 9 | ): TypeNormalisedInput; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/api/getOpenIdDiscoveryConfiguration.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { UserContext } from "../../../types"; 3 | import { APIInterface, APIOptions } from "../types"; 4 | export default function getOpenIdDiscoveryConfiguration( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../types"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/api/implementation.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | function getAPIImplementation() { 4 | return { 5 | getOpenIdDiscoveryConfigurationGET: async function ({ options, userContext }) { 6 | return await options.recipeImplementation.getOpenIdDiscoveryConfiguration({ userContext }); 7 | }, 8 | }; 9 | } 10 | exports.default = getAPIImplementation; 11 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const GET_DISCOVERY_CONFIG_URL = "/.well-known/openid-configuration"; 3 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./types"; 3 | import { NormalisedAppinfo } from "../../types"; 4 | export default function getRecipeInterface(appInfo: NormalisedAppinfo): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/types.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | -------------------------------------------------------------------------------- /lib/build/recipe/openid/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeInput, TypeNormalisedInput } from "./types"; 3 | export declare function validateAndNormaliseUserInput(config?: TypeInput): TypeNormalisedInput; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/consumeCode.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function consumeCode( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/createCode.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function createCode( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/emailExists.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function emailExists( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/phoneNumberExists.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function phoneNumberExists( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/api/resendCode.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function resendCode( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const CREATE_CODE_API = "/signinup/code"; 3 | export declare const RESEND_CODE_API = "/signinup/code/resend"; 4 | export declare const CONSUME_CODE_API = "/signinup/code/consume"; 5 | export declare const DOES_EMAIL_EXIST_API_OLD = "/signup/email/exists"; 6 | export declare const DOES_EMAIL_EXIST_API = "/passwordless/email/exists"; 7 | export declare const DOES_PHONE_NUMBER_EXIST_API_OLD = "/signup/phonenumber/exists"; 8 | export declare const DOES_PHONE_NUMBER_EXIST_API = "/passwordless/phonenumber/exists"; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/emaildelivery/services/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import SMTP from "./smtp"; 3 | export declare let SMTPService: typeof SMTP; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/emaildelivery/services/smtp/serviceImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypePasswordlessEmailDeliveryInput } from "../../../types"; 3 | import { Transporter } from "nodemailer"; 4 | import { ServiceInterface } from "../../../../../ingredients/emaildelivery/services/smtp"; 5 | export declare function getServiceImplementation( 6 | transporter: Transporter, 7 | from: { 8 | name: string; 9 | email: string; 10 | } 11 | ): ServiceInterface; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class SessionError extends STError { 4 | constructor(options: { type: "BAD_INPUT_ERROR"; message: string }); 5 | } 6 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./types"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface(querier: Querier): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/smsdelivery/services/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import Twilio from "./twilio"; 3 | import Supertokens from "./supertokens"; 4 | export declare let TwilioService: typeof Twilio; 5 | export declare let SupertokensService: typeof Supertokens; 6 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/smsdelivery/services/supertokens/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { SmsDeliveryInterface } from "../../../../../ingredients/smsdelivery/types"; 3 | import { TypePasswordlessSmsDeliveryInput } from "../../../types"; 4 | export default class SupertokensService implements SmsDeliveryInterface { 5 | private apiKey; 6 | constructor(apiKey: string); 7 | sendSms: (input: TypePasswordlessSmsDeliveryInput) => Promise; 8 | } 9 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/smsdelivery/services/twilio/passwordlessLogin.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypePasswordlessSmsDeliveryInput } from "../../../types"; 3 | import { GetContentResult } from "../../../../../ingredients/smsdelivery/services/twilio"; 4 | export default function getPasswordlessLoginSmsContent(input: TypePasswordlessSmsDeliveryInput): GetContentResult; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/passwordless/smsdelivery/services/twilio/serviceImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypePasswordlessSmsDeliveryInput } from "../../../types"; 3 | import Twilio from "twilio/lib/rest/Twilio"; 4 | import { ServiceInterface } from "../../../../../ingredients/smsdelivery/services/twilio"; 5 | export declare function getServiceImplementation( 6 | twilioClient: Twilio 7 | ): ServiceInterface; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/session/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/session/api/refresh.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function handleRefreshAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/session/api/signout.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function signOutAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/session/claims.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export { SessionClaim } from "./types"; 3 | export { PrimitiveClaim } from "./claimBaseClasses/primitiveClaim"; 4 | export { PrimitiveArrayClaim } from "./claimBaseClasses/primitiveArrayClaim"; 5 | export { BooleanClaim } from "./claimBaseClasses/booleanClaim"; 6 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/awsLambda.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import type { Handler } from "aws-lambda"; 3 | import { VerifySessionOptions } from ".."; 4 | export declare function verifySession(handler: Handler, verifySessionOptions?: VerifySessionOptions): Handler; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/custom.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import type { VerifySessionOptions } from ".."; 3 | import { BaseRequest, BaseResponse } from "../../../framework"; 4 | import { NextFunction } from "../../../framework/custom/framework"; 5 | import { SessionContainerInterface } from "../types"; 6 | export declare function verifySession< 7 | T extends BaseRequest & { 8 | session?: SessionContainerInterface; 9 | } 10 | >(options?: VerifySessionOptions): (req: T, res: BaseResponse, next?: NextFunction | undefined) => Promise; 11 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/express.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import type { VerifySessionOptions } from ".."; 3 | import type { SessionRequest } from "../../../framework/express/framework"; 4 | import type { NextFunction, Response } from "express"; 5 | export declare function verifySession( 6 | options?: VerifySessionOptions 7 | ): (req: SessionRequest, res: Response, next: NextFunction) => Promise; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/fastify.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { VerifySessionOptions } from ".."; 3 | import { SessionRequest } from "../../../framework/fastify/framework"; 4 | import { FastifyReply, FastifyRequest as OriginalFastifyRequest } from "../../../framework/fastify/types"; 5 | export declare function verifySession( 6 | options?: VerifySessionOptions 7 | ): (req: SessionRequest, res: FastifyReply) => Promise; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/hapi.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { VerifySessionOptions } from ".."; 3 | import { ResponseToolkit } from "@hapi/hapi"; 4 | import { SessionRequest } from "../../../framework/hapi/framework"; 5 | export declare function verifySession( 6 | options?: VerifySessionOptions 7 | ): (req: SessionRequest, h: ResponseToolkit) => Promise; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/koa.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import type { VerifySessionOptions } from ".."; 3 | import type { Next } from "koa"; 4 | import type { SessionContext } from "../../../framework/koa/framework"; 5 | export declare function verifySession( 6 | options?: VerifySessionOptions 7 | ): (ctx: SessionContext, next: Next) => Promise; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/session/framework/loopback.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { VerifySessionOptions } from ".."; 3 | import { InterceptorOrKey } from "@loopback/core"; 4 | export declare function verifySession(options?: VerifySessionOptions): InterceptorOrKey; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/session/jwt.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare type ParsedJWTInfo = { 3 | version: number; 4 | rawTokenString: string; 5 | rawPayload: string; 6 | header: string; 7 | payload: any; 8 | signature: string; 9 | kid: string | undefined; 10 | }; 11 | export declare function parseJWTWithoutSignatureVerification(jwt: string): ParsedJWTInfo; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/api/appleRedirect.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function appleRedirectHandler( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/api/authorisationUrl.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function authorisationUrlAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/api/signinup.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function signInUpAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const AUTHORISATION_API = "/authorisationurl"; 3 | export declare const SIGN_IN_UP_API = "/signinup"; 4 | export declare const APPLE_REDIRECT_HANDLER = "/callback/apple"; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class ThirdPartyError extends STError { 4 | constructor(options: { type: "BAD_INPUT_ERROR"; message: string }); 5 | } 6 | export declare class ClientTypeNotFoundError extends STError { 7 | constructor(options: { type: "CLIENT_TYPE_NOT_FOUND_ERROR"; message: string }); 8 | } 9 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/activeDirectory.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function ActiveDirectory(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/apple.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Apple(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/bitbucket.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Bitbucket(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/boxySaml.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function BoxySAML(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/custom.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeProvider, ProviderInput } from "../types"; 3 | export declare const DEV_OAUTH_REDIRECT_URL = "https://supertokens.io/dev/oauth/redirect-to-app"; 4 | export declare function isUsingDevelopmentClientId(client_id: string): boolean; 5 | export declare function getActualClientIdFromDevelopmentClientId(client_id: string): string; 6 | export default function NewProvider(input: ProviderInput): TypeProvider; 7 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/discord.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Discord(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/facebook.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Facebook(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/github.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Github(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/gitlab.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeProvider, ProviderInput } from "../types"; 3 | export default function Gitlab(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/google.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Google(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/googleWorkspaces.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function GoogleWorkspaces(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/linkedin.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Linkedin(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/okta.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Okta(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/providers/twitter.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { ProviderInput, TypeProvider } from "../types"; 3 | export default function Twitter(input: ProviderInput): TypeProvider; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface, ProviderInput } from "./types"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeImplementation(querier: Querier, providers: ProviderInput[]): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/thirdparty/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import { TypeInput, TypeNormalisedInput } from "./types"; 4 | export declare function validateAndNormaliseUserInput( 5 | appInfo: NormalisedAppinfo, 6 | config?: TypeInput 7 | ): TypeNormalisedInput; 8 | export declare function isFakeEmail(email: string): boolean; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/createDevice.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function createDeviceAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from "../"; 3 | export default function getAPIInterface(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/listDevices.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function listDevicesAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/removeDevice.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function removeDeviceAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/verifyDevice.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function verifyDeviceAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/api/verifyTOTP.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function verifyTOTPAPI( 5 | apiImplementation: APIInterface, 6 | options: APIOptions, 7 | userContext: UserContext 8 | ): Promise; 9 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/constants.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const CREATE_TOTP_DEVICE = "/totp/device"; 3 | export declare const LIST_TOTP_DEVICES = "/totp/device/list"; 4 | export declare const REMOVE_TOTP_DEVICE = "/totp/device/remove"; 5 | export declare const VERIFY_TOTP_DEVICE = "/totp/device/verify"; 6 | export declare const VERIFY_TOTP = "/totp/verify"; 7 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./"; 3 | import { Querier } from "../../querier"; 4 | import { TypeNormalisedInput } from "./types"; 5 | export default function getRecipeInterface(querier: Querier, config: TypeNormalisedInput): RecipeInterface; 6 | -------------------------------------------------------------------------------- /lib/build/recipe/totp/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import { TypeInput, TypeNormalisedInput } from "./types"; 4 | export declare function validateAndNormaliseUserInput( 5 | appInfo: NormalisedAppinfo, 6 | config?: TypeInput 7 | ): TypeNormalisedInput; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/usermetadata/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "."; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface(querier: Querier): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/usermetadata/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import Recipe from "./recipe"; 4 | import { TypeInput, TypeNormalisedInput } from "./types"; 5 | export declare function validateAndNormaliseUserInput( 6 | _: Recipe, 7 | __: NormalisedAppinfo, 8 | config?: TypeInput 9 | ): TypeNormalisedInput; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/userroles/permissionClaim.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { PrimitiveArrayClaim } from "../session/claimBaseClasses/primitiveArrayClaim"; 3 | /** 4 | * We include "Class" in the class name, because it makes it easier to import the right thing (the instance) instead of this. 5 | * */ 6 | export declare class PermissionClaimClass extends PrimitiveArrayClaim { 7 | constructor(); 8 | } 9 | export declare const PermissionClaim: PermissionClaimClass; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/userroles/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface } from "./types"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface(querier: Querier): RecipeInterface; 5 | -------------------------------------------------------------------------------- /lib/build/recipe/userroles/userRoleClaim.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { PrimitiveArrayClaim } from "../session/claimBaseClasses/primitiveArrayClaim"; 3 | /** 4 | * We include "Class" in the class name, because it makes it easier to import the right thing (the instance) instead of this. 5 | * */ 6 | export declare class UserRoleClaimClass extends PrimitiveArrayClaim { 7 | constructor(); 8 | } 9 | export declare const UserRoleClaim: UserRoleClaimClass; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/userroles/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { NormalisedAppinfo } from "../../types"; 3 | import Recipe from "./recipe"; 4 | import { TypeInput, TypeNormalisedInput } from "./types"; 5 | export declare function validateAndNormaliseUserInput( 6 | _: Recipe, 7 | __: NormalisedAppinfo, 8 | config?: TypeInput 9 | ): TypeNormalisedInput; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/emailExists.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function emailExists( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/generateRecoverAccountToken.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function generateRecoverAccountToken( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/implementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface } from ".."; 3 | export default function getAPIImplementation(): APIInterface; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/recoverAccount.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from "../"; 3 | import { UserContext } from "../../../types"; 4 | export default function recoverAccount( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/registerCredential.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function registerCredentialAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/registerOptions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function registerOptions( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/signInOptions.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function signInOptions( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/signin.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function signInAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/signup.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { APIInterface, APIOptions } from ".."; 3 | import { UserContext } from "../../../types"; 4 | export default function signUpAPI( 5 | apiImplementation: APIInterface, 6 | tenantId: string, 7 | options: APIOptions, 8 | userContext: UserContext 9 | ): Promise; 10 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/api/utils.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare function validateWebauthnGeneratedOptionsIdOrThrowError(webauthnGeneratedOptionsId: string): string; 3 | export declare function validateCredentialOrThrowError(credential: T): T; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/emaildelivery/services/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import SMTP from "./smtp"; 3 | export declare let SMTPService: typeof SMTP; 4 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/emaildelivery/services/smtp/recoverAccount.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeWebauthnRecoverAccountEmailDeliveryInput } from "../../../types"; 3 | import { GetContentResult } from "../../../../../ingredients/emaildelivery/services/smtp"; 4 | export default function getRecoverAccountEmailContent( 5 | input: TypeWebauthnRecoverAccountEmailDeliveryInput 6 | ): GetContentResult; 7 | export declare function getRecoverAccountEmailHTML(appName: string, email: string, resetLink: string): string; 8 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/emaildelivery/services/smtp/serviceImplementation/index.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { TypeWebauthnEmailDeliveryInput } from "../../../../types"; 3 | import { Transporter } from "nodemailer"; 4 | import { ServiceInterface } from "../../../../../../ingredients/emaildelivery/services/smtp"; 5 | export declare function getServiceImplementation( 6 | transporter: Transporter, 7 | from: { 8 | name: string; 9 | email: string; 10 | } 11 | ): ServiceInterface; 12 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/error.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import STError from "../../error"; 3 | export default class SessionError extends STError { 4 | constructor(options: { type: "BAD_INPUT_ERROR"; message: string }); 5 | } 6 | -------------------------------------------------------------------------------- /lib/build/recipe/webauthn/recipeImplementation.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | import { RecipeInterface, TypeNormalisedInput } from "./types"; 3 | import { Querier } from "../../querier"; 4 | export default function getRecipeInterface( 5 | querier: Querier, 6 | getWebauthnConfig: () => TypeNormalisedInput 7 | ): RecipeInterface; 8 | -------------------------------------------------------------------------------- /lib/build/recipeUserId.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export default class RecipeUserId { 3 | private recipeUserId; 4 | constructor(recipeUserId: string); 5 | getAsString: () => string; 6 | } 7 | -------------------------------------------------------------------------------- /lib/build/recipeUserId.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | class RecipeUserId { 4 | constructor(recipeUserId) { 5 | this.getAsString = () => { 6 | return this.recipeUserId; 7 | }; 8 | if (recipeUserId === undefined) { 9 | throw new Error("recipeUserId cannot be undefined. Please check for bugs in code"); 10 | } 11 | this.recipeUserId = recipeUserId; 12 | } 13 | } 14 | exports.default = RecipeUserId; 15 | -------------------------------------------------------------------------------- /lib/build/version.d.ts: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | export declare const version = "22.1.0"; 3 | export declare const cdiSupported: string[]; 4 | export declare const dashboardVersion = "0.15"; 5 | -------------------------------------------------------------------------------- /lib/ts/recipe/session/claims.ts: -------------------------------------------------------------------------------- 1 | export { SessionClaim } from "./types"; 2 | export { PrimitiveClaim } from "./claimBaseClasses/primitiveClaim"; 3 | export { PrimitiveArrayClaim } from "./claimBaseClasses/primitiveArrayClaim"; 4 | export { BooleanClaim } from "./claimBaseClasses/booleanClaim"; 5 | -------------------------------------------------------------------------------- /lib/ts/recipeUserId.ts: -------------------------------------------------------------------------------- 1 | export default class RecipeUserId { 2 | private recipeUserId: string; 3 | constructor(recipeUserId: string) { 4 | if (recipeUserId === undefined) { 5 | throw new Error("recipeUserId cannot be undefined. Please check for bugs in code"); 6 | } 7 | this.recipeUserId = recipeUserId; 8 | } 9 | 10 | public getAsString = () => { 11 | return this.recipeUserId; 12 | }; 13 | } 14 | -------------------------------------------------------------------------------- /nextjs/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../lib/build/nextjs"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | 10 | import * as _default from "../lib/build/nextjs"; 11 | export default _default; 12 | -------------------------------------------------------------------------------- /nextjs/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../lib/build/nextjs")); 7 | -------------------------------------------------------------------------------- /recipe/accountlinking/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/accountlinking"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/accountlinking"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/accountlinking/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/accountlinking")); 7 | -------------------------------------------------------------------------------- /recipe/accountlinking/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/accountlinking/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/accountlinking/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/accountlinking/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/accountlinking/types")); 7 | -------------------------------------------------------------------------------- /recipe/dashboard/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/dashboard"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/dashboard"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/dashboard/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/dashboard")); 7 | -------------------------------------------------------------------------------- /recipe/dashboard/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/dashboard/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/dashboard/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/dashboard/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/dashboard/types")); 7 | -------------------------------------------------------------------------------- /recipe/emailpassword/emaildelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/emailpassword/emaildelivery/services"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/emailpassword/emaildelivery/services"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailpassword/emaildelivery/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/emailpassword/emaildelivery/services")); 7 | -------------------------------------------------------------------------------- /recipe/emailpassword/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/emailpassword"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/emailpassword"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailpassword/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/emailpassword")); 7 | -------------------------------------------------------------------------------- /recipe/emailpassword/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/emailpassword/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/emailpassword/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailpassword/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/emailpassword/types")); 7 | -------------------------------------------------------------------------------- /recipe/emailverification/emaildelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/emailverification/emaildelivery/services"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/emailverification/emaildelivery/services"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailverification/emaildelivery/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/emailverification/emaildelivery/services")); 7 | -------------------------------------------------------------------------------- /recipe/emailverification/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/emailverification"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/emailverification"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailverification/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/emailverification")); 7 | -------------------------------------------------------------------------------- /recipe/emailverification/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/emailverification/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/emailverification/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/emailverification/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/emailverification/types")); 7 | -------------------------------------------------------------------------------- /recipe/jwt/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/jwt"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/jwt"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/jwt/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/jwt")); 7 | -------------------------------------------------------------------------------- /recipe/jwt/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/jwt/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/jwt/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/jwt/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/jwt/types")); 7 | -------------------------------------------------------------------------------- /recipe/multifactorauth/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/multifactorauth"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/multifactorauth"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/multifactorauth/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/multifactorauth")); 7 | -------------------------------------------------------------------------------- /recipe/multifactorauth/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/multifactorauth/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/multifactorauth/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/multifactorauth/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/multifactorauth/types")); 7 | -------------------------------------------------------------------------------- /recipe/multitenancy/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/multitenancy"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/multitenancy"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/multitenancy/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/multitenancy")); 7 | -------------------------------------------------------------------------------- /recipe/multitenancy/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/multitenancy/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/multitenancy/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/multitenancy/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/multitenancy/types")); 7 | -------------------------------------------------------------------------------- /recipe/oauth2provider/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/oauth2provider"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/oauth2provider"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/oauth2provider/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/oauth2provider")); 7 | -------------------------------------------------------------------------------- /recipe/oauth2provider/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/oauth2provider/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/oauth2provider/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/oauth2provider/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/oauth2provider/types")); 7 | -------------------------------------------------------------------------------- /recipe/openid/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/openid"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/openid"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/openid/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/openid")); 7 | -------------------------------------------------------------------------------- /recipe/openid/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/openid/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/openid/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/openid/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/openid/types")); 7 | -------------------------------------------------------------------------------- /recipe/passwordless/emaildelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/passwordless/emaildelivery/services"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/passwordless/emaildelivery/services"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/passwordless/emaildelivery/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/passwordless/emaildelivery/services")); 7 | -------------------------------------------------------------------------------- /recipe/passwordless/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/passwordless"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/passwordless"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/passwordless/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/passwordless")); 7 | -------------------------------------------------------------------------------- /recipe/passwordless/smsdelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/passwordless/smsdelivery/services"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/passwordless/smsdelivery/services"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/passwordless/smsdelivery/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/passwordless/smsdelivery/services")); 7 | -------------------------------------------------------------------------------- /recipe/passwordless/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/passwordless/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/passwordless/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/passwordless/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/passwordless/types")); 7 | -------------------------------------------------------------------------------- /recipe/session/claims.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/session/claims"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/session/claims"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/session/claims.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/session/claims")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/awsLambda/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/awsLambda"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/awsLambda"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/awsLambda/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/awsLambda")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/custom/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/custom"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/custom"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/custom/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/custom")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/express/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/express"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/express"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/express/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/express")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/fastify/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/fastify"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/fastify"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/fastify/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/fastify")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/hapi/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/hapi"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/hapi"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/hapi/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/hapi")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/koa/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/koa"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/koa"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/koa/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/koa")); 7 | -------------------------------------------------------------------------------- /recipe/session/framework/loopback/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../../lib/build/recipe/session/framework/loopback"; 2 | import * as _default from "../../../../lib/build/recipe/session/framework/loopback"; 3 | export default _default; 4 | -------------------------------------------------------------------------------- /recipe/session/framework/loopback/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../../lib/build/recipe/session/framework/loopback")); 7 | -------------------------------------------------------------------------------- /recipe/session/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/session"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/session"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/session/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/session")); 7 | -------------------------------------------------------------------------------- /recipe/session/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/session/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/session/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/session/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/session/types")); 7 | -------------------------------------------------------------------------------- /recipe/thirdparty/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/thirdparty"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/thirdparty"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/thirdparty/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/thirdparty")); 7 | -------------------------------------------------------------------------------- /recipe/thirdparty/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/thirdparty/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/thirdparty/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/thirdparty/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/thirdparty/types")); 7 | -------------------------------------------------------------------------------- /recipe/totp/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/totp"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/totp"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/totp/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/totp")); 7 | -------------------------------------------------------------------------------- /recipe/totp/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/totp/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/totp/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/totp/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/totp/types")); 7 | -------------------------------------------------------------------------------- /recipe/usermetadata/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/usermetadata"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/usermetadata"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/usermetadata/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/usermetadata")); 7 | -------------------------------------------------------------------------------- /recipe/usermetadata/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/usermetadata/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/usermetadata/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/usermetadata/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/usermetadata/types")); 7 | -------------------------------------------------------------------------------- /recipe/userroles/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/userroles"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/userroles"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/userroles/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/userroles")); 7 | -------------------------------------------------------------------------------- /recipe/userroles/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/userroles/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/userroles/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/userroles/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/userroles/types")); 7 | -------------------------------------------------------------------------------- /recipe/webauthn/emaildelivery/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/webauthn/emaildelivery/services"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/webauthn/emaildelivery/services"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/webauthn/emaildelivery/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/webauthn/emaildelivery/services")); 7 | -------------------------------------------------------------------------------- /recipe/webauthn/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../lib/build/recipe/webauthn"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../lib/build/recipe/webauthn"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/webauthn/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../lib/build/recipe/webauthn")); 7 | -------------------------------------------------------------------------------- /recipe/webauthn/types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../../../lib/build/recipe/webauthn/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../../../lib/build/recipe/webauthn/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /recipe/webauthn/types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../../../lib/build/recipe/webauthn/types")); 7 | -------------------------------------------------------------------------------- /test/auth-react-server/.env.example: -------------------------------------------------------------------------------- 1 | # Github 2 | GITHUB_CLIENT_ID= 3 | GITHUB_CLIENT_SECRET= 4 | 5 | # Google 6 | GOOGLE_CLIENT_ID= 7 | GOOGLE_CLIENT_SECRET= 8 | 9 | # Facebook 10 | FACEBOOK_CLIENT_ID= 11 | FACEBOOK_CLIENT_SECRET= 12 | 13 | # Auth0 14 | AUTH0_CLIENT_ID= 15 | AUTH0_CLIENT_SECRET= 16 | AUTH0_DOMAIN= -------------------------------------------------------------------------------- /test/auth-react-server/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | .env -------------------------------------------------------------------------------- /test/auth-react-server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "server", 3 | "version": "0.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "axios": "^0.24.0", 13 | "cookie-parser": "1.4.4", 14 | "cors": "^2.8.5", 15 | "dotenv": "^8.2.0", 16 | "express": "4.17.1" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /test/auth-react-server/webauthn/webauthn.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/test/auth-react-server/webauthn/webauthn.wasm -------------------------------------------------------------------------------- /test/docker/node14/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM rishabhpoddar/supertokens_core_testing 2 | 3 | RUN curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh 4 | 5 | RUN chmod +x nodesource_setup.sh 6 | 7 | RUN ./nodesource_setup.sh 8 | 9 | RUN apt-get install -y nodejs -------------------------------------------------------------------------------- /test/docker/node16/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM rishabhpoddar/supertokens_core_testing 2 | 3 | RUN curl -sL https://deb.nodesource.com/setup_16.x -o nodesource_setup.sh 4 | 5 | RUN chmod +x nodesource_setup.sh 6 | 7 | RUN ./nodesource_setup.sh 8 | 9 | RUN apt-get install -y nodejs -------------------------------------------------------------------------------- /test/docker/node20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM rishabhpoddar/supertokens_core_testing:ubuntu22 2 | 3 | RUN apt-get update 4 | 5 | RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - 6 | 7 | RUN apt-get install -y nodejs -------------------------------------------------------------------------------- /test/error.test.js: -------------------------------------------------------------------------------- 1 | const assert = require("assert"); 2 | const { default: SuperTokensError } = require("../lib/build/error"); 3 | 4 | describe("SuperTokensError", () => { 5 | it("should serialize with the proper message", () => { 6 | const err = new SuperTokensError({ type: SuperTokensError.BAD_INPUT_ERROR, message: "test message" }); 7 | 8 | assert.strictEqual(err.toString(), "Error: test message"); 9 | }); 10 | }); 11 | -------------------------------------------------------------------------------- /test/findExamplesWithTests.sh: -------------------------------------------------------------------------------- 1 | matrixEntries="" 2 | delim="" 3 | while IFS= read -r -d $'\0'; do 4 | matrixEntries+=$delim"{\"examplePath\": \""$(echo "$REPLY" | sed 's/\/test$//' )\""}"; # or however you want to process each file 5 | delim=", " 6 | done < <(find ./examples -name node_modules -prune -or -path "*/test" -print0) 7 | 8 | matrixEntries="[$matrixEntries]" 9 | echo $matrixEntries 10 | -------------------------------------------------------------------------------- /test/framework/loopback-server/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "experimentalDecorators": true, 4 | "skipLibCheck": true, 5 | "strict": true, 6 | // FIXME(bajtos) LB4 is not compatible with this setting yet 7 | "strictPropertyInitialization": false, 8 | "lib": ["es2020"], 9 | "module": "commonjs", 10 | "esModuleInterop": true, 11 | "moduleResolution": "node", 12 | "target": "es2018", 13 | "outDir": "." 14 | }, 15 | "exclude": [] 16 | } 17 | -------------------------------------------------------------------------------- /test/frontendIntegration/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | package-lock.json -------------------------------------------------------------------------------- /test/frontendIntegration/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "server", 3 | "version": "0.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "cookie-parser": "1.4.4", 13 | "cors": "^2.8.5", 14 | "express": "4.17.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /test/test-server/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /test/test-server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "dist/index.js", 6 | "scripts": { 7 | "start": "TEST_MODE=testing tsx src/index.ts", 8 | "dev": "TEST_MODE=testing NODE_ENV=development tsx watch src/index.ts" 9 | }, 10 | "dependencies": { 11 | "debug": "^4.3.5", 12 | "express": "^4.19.2", 13 | "nock": "^13.5.4", 14 | "typescript": "^5.4.5" 15 | }, 16 | "devDependencies": { 17 | "tsx": "^4.11.2" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /test/test-server/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2016", 4 | "strictNullChecks": true, 5 | "declaration": true, 6 | "module": "commonJS", 7 | "moduleResolution": "Node", 8 | "sourceMap": true, 9 | "skipLibCheck": true, 10 | "noFallthroughCasesInSwitch": true, 11 | "outDir": "./dist", 12 | "sourceRoot": "./src", 13 | "esModuleInterop": true 14 | }, 15 | "include": ["./**/*"], 16 | "exclude": ["dist"], 17 | "compileOnSave": true 18 | } 19 | -------------------------------------------------------------------------------- /test/waitForServerStartup.sh: -------------------------------------------------------------------------------- 1 | while 2 | [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:3000)" != "200" ]] && 3 | [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:4200)" != "200" ]] && 4 | [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:8080)" != "200" ]] && 5 | [[ "$(curl -s -o /dev/null -w ''%{http_code}'' localhost:8888)" != "200" ]]; 6 | do sleep 5; done 7 | -------------------------------------------------------------------------------- /test/webauthn/lib/webauthn.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/supertokens/supertokens-node/b731b2c36a1542cd833bf7d48c3725a36e3aa9c5/test/webauthn/lib/webauthn.wasm -------------------------------------------------------------------------------- /test/with-typescript/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /test/with-typescript/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Get TypeScript version inside test/with-typescript 4 | version=$(npx tsc --version | cut -d' ' -f2) 5 | 6 | # ANSI color codes 7 | RED='\033[0;31m' 8 | NC='\033[0m' # No Color 9 | 10 | # Compare major version 11 | if [ "$(echo $version | cut -d'.' -f1)" -ge 5 ]; then 12 | npx tsc -p tsconfig.json --noEmit 13 | else 14 | echo -e "${RED}TypeScript version is less than 5. Please run 'npm install' inside 'test/with-typescript'.${NC}" 15 | exit 1 16 | fi 17 | -------------------------------------------------------------------------------- /test/with-typescript/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "with-typescript", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "build": "sh ./build.sh" 8 | }, 9 | "keywords": [], 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "typescript": "^5.3.3" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /test/with-typescript/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2016", 4 | "strictNullChecks": true, 5 | "declaration": true, 6 | "module": "commonJS", 7 | "moduleResolution": "Node", 8 | "sourceMap": true, 9 | "skipLibCheck": true, 10 | "noFallthroughCasesInSwitch": true, 11 | "lib": ["ES2017", "DOM"], // "DOM" is required for Request and Response types 12 | "noEmit": true 13 | }, 14 | "include": ["./**/*"], 15 | "exclude": ["build"], 16 | "compileOnSave": true 17 | } 18 | -------------------------------------------------------------------------------- /types/index.d.ts: -------------------------------------------------------------------------------- 1 | export * from "../lib/build/types"; 2 | /** 3 | * 'export *' does not re-export a default. 4 | * import NextJS from "supertokens-node/nextjs"; 5 | * the above import statement won't be possible unless either 6 | * - user add "esModuleInterop": true in their tsconfig.json file 7 | * - we do the following change: 8 | */ 9 | import * as _default from "../lib/build/types"; 10 | export default _default; 11 | -------------------------------------------------------------------------------- /types/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | function __export(m) { 3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; 4 | } 5 | exports.__esModule = true; 6 | __export(require("../lib/build/types")); 7 | -------------------------------------------------------------------------------- /updateLibInExample: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if ! [[ -z "${COMMIT_REF}" ]]; then 4 | npm i git+$REPOSITORY_URL#$COMMIT_REF 5 | fi 6 | --------------------------------------------------------------------------------