├── .babelrc
├── .circleci
├── config.yml
├── config_continue.yml
├── doTests.sh
├── generateConfig.sh
├── installJava.sh
├── markPassed.sh
├── markTesting.sh
├── publish.sh
├── setupAndTestWithFreeCore.sh
└── updateDocsInWebsite.sh
├── .gitattributes
├── .github
├── PULL_REQUEST_TEMPLATE.md
├── helpers
│ ├── .gitignore
│ └── package.json
└── workflows
│ ├── chromatic.yml
│ ├── github-actions-changelog.yml
│ ├── lint-pr-title.yml
│ ├── pre-commit-hook-run.yml
│ ├── size-limit.yml
│ ├── test-examples.yml
│ ├── tests-pass-check-pr.yml
│ ├── tests-visual.yml
│ └── tests.yml
├── .gitignore
├── .mocharc.yml
├── .npmignore
├── .prettierignore
├── .prettierrc
├── .storybook
├── main.ts
└── preview.ts
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
├── addDevTag
├── addReleaseTag
├── docs
├── .nojekyll
├── assets
│ ├── highlight.css
│ ├── icons.css
│ ├── icons.png
│ ├── icons@2x.png
│ ├── main.js
│ ├── search.js
│ ├── style.css
│ ├── widgets.png
│ └── widgets@2x.png
├── classes
│ ├── dateProvider.DateProviderReference.html
│ ├── index.default.html
│ ├── recipe_authRecipe.default.html
│ ├── recipe_emailpassword.default.html
│ ├── recipe_emailverification.default.html
│ ├── recipe_multifactorauth.default.html
│ ├── recipe_multitenancy.default.html
│ ├── recipe_oauth2provider.default.html
│ ├── recipe_passwordless.default.html
│ ├── recipe_recipeModule.default.html
│ ├── recipe_session.BooleanClaim.html
│ ├── recipe_session.PrimitiveArrayClaim.html
│ ├── recipe_session.PrimitiveClaim.html
│ ├── recipe_session.default.html
│ ├── recipe_thirdparty.ActiveDirectory.html
│ ├── recipe_thirdparty.Apple.html
│ ├── recipe_thirdparty.Bitbucket.html
│ ├── recipe_thirdparty.BoxySAML.html
│ ├── recipe_thirdparty.Discord.html
│ ├── recipe_thirdparty.Facebook.html
│ ├── recipe_thirdparty.Github.html
│ ├── recipe_thirdparty.Gitlab.html
│ ├── recipe_thirdparty.Google.html
│ ├── recipe_thirdparty.GoogleWorkspaces.html
│ ├── recipe_thirdparty.LinkedIn.html
│ ├── recipe_thirdparty.Okta.html
│ ├── recipe_thirdparty.Twitter.html
│ ├── recipe_thirdparty.default.html
│ ├── recipe_totp.default.html
│ ├── recipe_userroles.default.html
│ └── recipe_webauthn.default.html
├── index.html
├── modules.html
└── modules
│ ├── dateProvider.html
│ ├── index.html
│ ├── recipe_authRecipe.html
│ ├── recipe_emailpassword.html
│ ├── recipe_emailverification.html
│ ├── recipe_multifactorauth.html
│ ├── recipe_multitenancy.html
│ ├── recipe_oauth2provider.html
│ ├── recipe_passwordless.html
│ ├── recipe_recipeModule.html
│ ├── recipe_session.html
│ ├── recipe_thirdparty.html
│ ├── recipe_totp.html
│ ├── recipe_userroles.html
│ └── recipe_webauthn.html
├── eslint
├── index.js
└── package.json
├── examples
├── for-tests-react-16
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── package.json
│ ├── public
│ │ ├── background.svg
│ │ ├── favicon.ico
│ │ ├── index.css
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ └── manifest.json
│ └── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── AppWithReactDomRouter.js
│ │ ├── AppWithReactDomRouterV5.js
│ │ ├── AppWithoutRouter.js
│ │ ├── Button.js
│ │ ├── ErrorBoundary.js
│ │ ├── Footer.js
│ │ ├── Themes
│ │ ├── Dark.js
│ │ ├── Helium.js
│ │ └── Hydrogen.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logWithPrefix.js
│ │ └── testContext.js
├── for-tests
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── package.json
│ ├── public
│ │ ├── background.svg
│ │ ├── favicon.ico
│ │ ├── index.css
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ └── manifest.json
│ └── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── AppWithReactDomRouter.js
│ │ ├── AppWithoutRouter.js
│ │ ├── Button.js
│ │ ├── ErrorBoundary.js
│ │ ├── Footer.js
│ │ ├── OAuth2Page.js
│ │ ├── Themes
│ │ ├── Dark.js
│ │ ├── Helium.js
│ │ └── Hydrogen.js
│ │ ├── config.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logWithPrefix.js
│ │ └── testContext.js
├── with-account-linking
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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
│ │ │ ├── LinkingPage
│ │ │ │ ├── index.tsx
│ │ │ │ └── styles.css
│ │ │ ├── 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
│ │ │ └── useAsyncCallOnMount.ts
│ │ └── tsconfig.json
│ ├── package.json
│ └── test
│ │ └── basic.test.js
├── with-angular-thirdpartyemailpassword
│ └── README.md
├── with-aws-lambda
│ └── README.md
├── with-cli-login
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── index.ts
│ │ └── tsconfig.json
│ ├── cli.js
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── MagicLinkScreen
│ │ │ └── index.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-emailpassword-vercel
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api
│ │ └── index.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── SessionExpiredPopup
│ │ │ └── index.jsx
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ ├── test
│ │ └── basic.test.js
│ └── vercel.json
├── with-emailpassword
│ └── README.md
├── with-emailverification-then-password-thirdpartyemailpassword
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── CustomSignUp
│ │ │ └── index.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── SessionExpiredPopup
│ │ │ └── index.js
│ │ ├── SetPassword
│ │ │ └── index.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── realPasswordClaim.js
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ └── test
│ │ └── basic.test.js
├── with-emailverification-with-otp
│ ├── .env.example
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ └── server.ts
│ ├── images
│ │ └── emailverification-with-otp.png
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Home
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-hash-router
│ ├── .gitignore
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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
│ │ │ └── windowHandler.ts
│ │ └── tsconfig.json
│ ├── package.json
│ └── test
│ │ └── basic.test.js
├── with-hasura-thirdpartyemailpassword
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ └── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── Footer
│ │ └── index.js
│ │ ├── Home
│ │ ├── CallAPIView.js
│ │ ├── Logout.js
│ │ ├── SuccessView.js
│ │ └── index.js
│ │ ├── SessionExpiredPopup
│ │ └── index.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
├── with-i18next
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── SessionExpiredPopup
│ │ │ └── index.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ └── test
│ │ └── basic.test.js
├── with-legacy-2fa
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── index.ts
│ │ ├── secondFactorClaim.ts
│ │ └── tsconfig.json
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── SecondFactor
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ ├── secondFactorClaim.tsx
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-localstorage
│ ├── .gitignore
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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
│ │ │ ├── cookieHandler.ts
│ │ │ ├── index.css
│ │ │ ├── index.tsx
│ │ │ └── react-app-env.d.ts
│ │ └── tsconfig.json
│ ├── package.json
│ └── test
│ │ └── basic.test.js
├── with-multifactorauth-phone-chooser
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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
│ │ │ ├── SelectPhone
│ │ │ │ ├── SelectPhone.css
│ │ │ │ └── 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
│ │ │ └── useAsyncCallOnMount.ts
│ │ └── tsconfig.json
│ ├── package.json
│ └── test
│ │ └── basic.test.js
├── with-multifactorauth-recovery-codes
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ ├── recoveryCodeExistsClaim.ts
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── package.json
│ │ ├── public
│ │ │ ├── favicon.ico
│ │ │ ├── index.html
│ │ │ ├── manifest.json
│ │ │ └── robots.txt
│ │ ├── src
│ │ │ ├── App.css
│ │ │ ├── App.tsx
│ │ │ ├── CreateRecoveryCode
│ │ │ │ ├── CreateRecoveryCode.css
│ │ │ │ └── index.tsx
│ │ │ ├── Home
│ │ │ │ ├── CallAPIView.tsx
│ │ │ │ ├── Home.css
│ │ │ │ ├── SuccessView.tsx
│ │ │ │ └── index.tsx
│ │ │ ├── RecoveryCode
│ │ │ │ ├── RecoveryCode.css
│ │ │ │ └── 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
│ │ │ ├── recoveryCodeExistsClaim.ts
│ │ │ └── useAsyncCallOnMount.ts
│ │ └── tsconfig.json
│ ├── package.json
│ └── test
│ │ └── basic.test.js
├── with-multifactorauth
│ └── README.md
├── with-multiple-email-sign-in
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server
│ │ ├── .gitignore
│ │ ├── emailLinkingMap.ts
│ │ ├── epOverride.ts
│ │ ├── evOverride.ts
│ │ ├── index.ts
│ │ └── tsconfig.json
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.js
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-netlify
│ ├── .env
│ ├── .gitignore
│ ├── .netlify
│ │ └── edge-functions-import-map.json
│ ├── README.md
│ ├── config
│ │ └── supertokensConfig.js
│ ├── netlify.toml
│ ├── netlify
│ │ └── functions
│ │ │ ├── auth.js
│ │ │ └── user.js
│ ├── package.json
│ ├── public
│ │ ├── _redirects
│ │ ├── background.svg
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── server-local.js
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-next-iframe
│ ├── .gitignore
│ ├── README.md
│ ├── config
│ │ ├── appInfo.js
│ │ ├── backendConfig.js
│ │ ├── cookieHandler.js
│ │ ├── frontendConfig.js
│ │ └── windowHandler.js
│ ├── package.json
│ ├── pages
│ │ ├── _app.js
│ │ ├── api
│ │ │ ├── auth
│ │ │ │ └── [[...path]].js
│ │ │ └── user.js
│ │ ├── auth
│ │ │ └── [[...path]].js
│ │ ├── iframe.js
│ │ └── index.js
│ ├── public
│ │ ├── favicon.ico
│ │ └── vercel.svg
│ └── styles
│ │ ├── Home.module.css
│ │ └── globals.css
├── with-next
│ └── README.md
├── with-no-session-on-sign-up-thirdpartyemailpassword
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server
│ │ └── index.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ └── test
│ │ └── basic.test.js
├── with-okta-multi-tenant-pkce-flow
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── config.go
│ │ ├── go.mod
│ │ ├── go.sum
│ │ ├── main.go
│ │ ├── okta.go
│ │ ├── override.go
│ │ └── utils.go
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── routes
│ │ │ ├── dashboard.tsx
│ │ │ └── index.tsx
│ │ └── setupTests.tsx
│ └── tsconfig.json
├── with-one-login-many-subdomains
│ ├── .gitignore
│ ├── README.md
│ ├── api-server.js
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── public
│ │ │ ├── favicon.ico
│ │ │ ├── index.html
│ │ │ ├── logo192.png
│ │ │ ├── logo512.png
│ │ │ ├── manifest.json
│ │ │ └── robots.txt
│ │ └── src
│ │ │ ├── App.css
│ │ │ ├── App.js
│ │ │ ├── App.test.js
│ │ │ ├── AuthPage.jsx
│ │ │ ├── Footer
│ │ │ └── index.js
│ │ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ │ ├── TenantSelector.jsx
│ │ │ ├── index.css
│ │ │ ├── index.js
│ │ │ ├── logo.svg
│ │ │ ├── reportWebVitals.js
│ │ │ ├── setupTests.js
│ │ │ └── utils.js
│ ├── package.json
│ ├── tenant-setup.mjs
│ └── test_skipped
│ │ └── basic.test.js
├── with-one-login-per-subdomain
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── api-server.js
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── index.css
│ │ ├── index.js
│ │ └── utils.js
│ ├── tenant-setup.mjs
│ └── test
│ │ └── basic.test.js
├── with-passwordless
│ └── README.md
├── with-phone-password-mfa
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── index.ts
│ │ └── tsconfig.json
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-phone-password
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── index.ts
│ │ ├── phoneVerifiedClaim.ts
│ │ └── tsconfig.json
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── src
│ │ ├── App.css
│ │ ├── App.test.tsx
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── PhoneVerification
│ │ │ ├── Footer.tsx
│ │ │ └── index.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── phoneVerifiedClaim.ts
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-remix
│ └── README.md
├── with-sign-in-up-split-emailpassword
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server.js
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── Footer
│ │ │ └── index.js
│ │ ├── Home
│ │ │ ├── CallAPIView.js
│ │ │ ├── Logout.js
│ │ │ ├── SuccessView.js
│ │ │ └── index.js
│ │ ├── SessionExpiredPopup
│ │ │ └── index.jsx
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
│ └── test
│ │ └── basic.test.js
├── with-supabase
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── config
│ │ ├── appInfo.ts
│ │ ├── backendConfig.ts
│ │ └── frontendConfig.ts
│ ├── next-env.d.ts
│ ├── next.config.js
│ ├── package.json
│ ├── pages
│ │ ├── _app.tsx
│ │ ├── api
│ │ │ ├── auth
│ │ │ │ └── [[...path]].ts
│ │ │ └── user.ts
│ │ ├── auth
│ │ │ └── [[...path]].tsx
│ │ └── index.tsx
│ ├── public
│ │ ├── favicon.ico
│ │ └── vercel.svg
│ ├── styles
│ │ ├── Home.module.css
│ │ └── globals.css
│ ├── tsconfig.json
│ └── utils
│ │ └── supabase.ts
├── with-svelte-react-thirdpartyemailpassword
│ ├── .gitignore
│ ├── README.md
│ ├── package.json
│ ├── public
│ │ ├── favicon.png
│ │ ├── global.css
│ │ └── index.html
│ ├── rollup.config.js
│ ├── server.js
│ ├── src
│ │ ├── App.svelte
│ │ ├── Navbar.svelte
│ │ ├── global.d.ts
│ │ └── main.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-thirdparty-2fa-passwordless
│ └── README.md
├── with-thirdparty-google-onetap
│ ├── .gitignore
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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
│ │ │ ├── google-one-tap
│ │ │ │ ├── index.ts
│ │ │ │ ├── types.ts
│ │ │ │ ├── useGoogleOneTapLogin.ts
│ │ │ │ └── useScript.ts
│ │ │ ├── index.css
│ │ │ ├── index.tsx
│ │ │ └── react-app-env.d.ts
│ │ └── tsconfig.json
│ └── package.json
├── with-thirdparty-popup
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── LICENSE.md
│ │ ├── 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.json
├── with-thirdparty
│ └── README.md
├── with-thirdpartyemailpassword-2fa-passwordless
│ └── README.md
├── with-thirdpartyemailpassword-passwordless
│ ├── .gitignore
│ ├── Dockerfile
│ ├── LICENSE.md
│ ├── README.md
│ ├── api-server
│ │ ├── index.ts
│ │ └── tsconfig.json
│ ├── ignore_this.js
│ ├── package.json
│ ├── pm2.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ ├── scripts
│ │ └── start_container.sh
│ ├── src
│ │ ├── App.css
│ │ ├── App.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── CallAPIView.tsx
│ │ │ ├── Logout.tsx
│ │ │ ├── SuccessView.tsx
│ │ │ └── index.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── index.css
│ │ ├── index.tsx
│ │ ├── logo.svg
│ │ ├── react-app-env.d.ts
│ │ ├── reportWebVitals.ts
│ │ └── setupTests.ts
│ ├── test
│ │ └── basic.test.js
│ └── tsconfig.json
├── with-thirdpartyemailpassword
│ └── README.md
├── with-thirdpartypasswordless-electron
│ ├── .eslintrc.json
│ ├── .gitignore
│ ├── README.md
│ ├── api-server
│ │ ├── index.js
│ │ └── mailer.js
│ ├── package.json
│ ├── src
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Home
│ │ │ ├── callAPIView.tsx
│ │ │ ├── index.tsx
│ │ │ ├── logout.tsx
│ │ │ └── successView.tsx
│ │ ├── SessionExpiredPopup
│ │ │ └── index.tsx
│ │ ├── cookieHandler.ts
│ │ ├── index.css
│ │ ├── index.html
│ │ ├── index.ts
│ │ ├── renderer.tsx
│ │ └── windowHandler.ts
│ ├── tsconfig.json
│ ├── webpack.main.config.js
│ ├── webpack.plugins.js
│ ├── webpack.renderer.config.js
│ └── webpack.rules.js
├── with-thirdpartypasswordless
│ └── README.md
├── with-update-email-post-verification
│ ├── README.md
│ ├── backend
│ │ ├── config.ts
│ │ ├── index.ts
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── frontend
│ │ ├── .env
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── 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.json
│ └── test
│ │ └── basic.test.js
└── with-vue-thirdpartyemailpassword
│ └── README.md
├── frontendDriverInterfaceSupported.json
├── hooks
└── pre-commit.sh
├── index.d.ts
├── index.js
├── init.sh
├── jest.config.js
├── lib
├── .eslintignore
├── .eslintrc.js
├── build
│ ├── arrowLeftIcon.js
│ ├── authCompWrapper.js
│ ├── authRecipe-shared.js
│ ├── authRecipe-shared2.js
│ ├── claims
│ │ ├── booleanClaim.d.ts
│ │ ├── primitiveArrayClaim.d.ts
│ │ └── primitiveClaim.d.ts
│ ├── components
│ │ ├── SuperTokensBranding.d.ts
│ │ ├── assets
│ │ │ ├── arrowLeftIcon.d.ts
│ │ │ ├── arrowRightIcon.d.ts
│ │ │ ├── blockedIcon.d.ts
│ │ │ ├── checkedIcon.d.ts
│ │ │ ├── checkedRoundIcon.d.ts
│ │ │ ├── emailLargeIcon.d.ts
│ │ │ ├── errorIcon.d.ts
│ │ │ ├── errorLargeIcon.d.ts
│ │ │ ├── errorRoundIcon.d.ts
│ │ │ ├── fingerPrintIcon.d.ts
│ │ │ ├── heavyArrowLeftIcon.d.ts
│ │ │ ├── logoutIcon.d.ts
│ │ │ ├── multipleDevicesIcon.d.ts
│ │ │ ├── otpEmailIcon.d.ts
│ │ │ ├── otpSMSIcon.d.ts
│ │ │ ├── passkeyIcon.d.ts
│ │ │ ├── recoverySuccessIcon.d.ts
│ │ │ ├── securityIcon.d.ts
│ │ │ ├── showPasswordIcon.d.ts
│ │ │ ├── smsLargeIcon.d.ts
│ │ │ ├── somethingWentWrongIcon.d.ts
│ │ │ ├── spinnerIcon.d.ts
│ │ │ └── totpIcon.d.ts
│ │ ├── authCompWrapper.d.ts
│ │ ├── componentOverride
│ │ │ ├── componentOverride.d.ts
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── genericComponentOverrideContext.d.ts
│ │ │ ├── useComponentOverride.d.ts
│ │ │ └── withOverride.d.ts
│ │ ├── featureWrapper.d.ts
│ │ ├── routingComponent.d.ts
│ │ ├── superTokensRoute.d.ts
│ │ ├── superTokensRouteV6.d.ts
│ │ └── supertokensWrapper.d.ts
│ ├── constants.d.ts
│ ├── dateProvider
│ │ ├── index.d.ts
│ │ └── types.d.ts
│ ├── emailLargeIcon.js
│ ├── emailpassword-shared.js
│ ├── emailpassword-shared2.js
│ ├── emailpassword-shared3.js
│ ├── emailpassword-shared4.js
│ ├── emailpassword-shared5.js
│ ├── emailpassword-shared6.js
│ ├── emailpassword.js
│ ├── emailpasswordprebuiltui.js
│ ├── emailverification-shared.js
│ ├── emailverification-shared2.js
│ ├── emailverification.js
│ ├── emailverificationprebuiltui.js
│ ├── genericComponentOverrideContext.js
│ ├── index.d.ts
│ ├── index.js
│ ├── index2.js
│ ├── logger.d.ts
│ ├── multifactorauth-shared.js
│ ├── multifactorauth-shared2.js
│ ├── multifactorauth-shared3.js
│ ├── multifactorauth.js
│ ├── multifactorauthprebuiltui.js
│ ├── multitenancy-shared.js
│ ├── multitenancy.js
│ ├── oauth2provider-shared.js
│ ├── oauth2provider-shared2.js
│ ├── oauth2provider.js
│ ├── oauth2providerprebuiltui.js
│ ├── passwordless-shared.js
│ ├── passwordless.js
│ ├── passwordlessprebuiltui.js
│ ├── recipe
│ │ ├── authRecipe
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── feature
│ │ │ │ │ └── authPage
│ │ │ │ │ │ └── authPage.d.ts
│ │ │ │ └── theme
│ │ │ │ │ ├── authPage
│ │ │ │ │ ├── authPageComponentList.d.ts
│ │ │ │ │ ├── authPageFooter.d.ts
│ │ │ │ │ ├── authPageHeader.d.ts
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── themeBase.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── emailpassword
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── resetPasswordUsingToken
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── signin
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── signup
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ ├── library
│ │ │ │ │ ├── backButton.d.ts
│ │ │ │ │ ├── backToSignInButton.d.ts
│ │ │ │ │ ├── button.d.ts
│ │ │ │ │ ├── formBase.d.ts
│ │ │ │ │ ├── formRow.d.ts
│ │ │ │ │ ├── generalError.d.ts
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── input.d.ts
│ │ │ │ │ ├── inputError.d.ts
│ │ │ │ │ └── label.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── resetPasswordUsingToken
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── resetPasswordEmail.d.ts
│ │ │ │ │ └── submitNewPassword.d.ts
│ │ │ │ │ ├── signIn
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── signUp
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ ├── utils.d.ts
│ │ │ └── validators.d.ts
│ │ ├── emailverification
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── emailVerification
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── emailVerification
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── sendVerifyEmail.d.ts
│ │ │ │ │ └── verifyEmailLinkClicked.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── emailVerificationClaim.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── multifactorauth
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── factorChooser
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── factorChooser
│ │ │ │ │ ├── factorChooserFooter.d.ts
│ │ │ │ │ ├── factorChooserHeader.d.ts
│ │ │ │ │ ├── factorList.d.ts
│ │ │ │ │ ├── factorOption.d.ts
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── multiFactorAuthClaim.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── multitenancy
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── dynamicLoginMethodsSpinner
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── dynamicLoginMethodsSpinner
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── themeBase.d.ts
│ │ │ ├── dynamicLoginMethodsContext.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── oauth2provider
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── oauth2LogoutScreen
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── tryRefreshPage
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── oauth2LogoutScreen
│ │ │ │ │ ├── OAuth2LogoutScreenInner.d.ts
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── passwordless
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── continueWithPasswordless
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── linkClickedScreen
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── linkSent
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── mfa
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── signInAndUpEPCombo
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── userInputCode
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── continueWithPasswordless
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── linkClickedScreen
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── linkSent
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── mfa
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── loadingScreen.d.ts
│ │ │ │ │ ├── mfaFooter.d.ts
│ │ │ │ │ ├── mfaHeader.d.ts
│ │ │ │ │ ├── mfaOTPFooter.d.ts
│ │ │ │ │ └── mfaOTPHeader.d.ts
│ │ │ │ │ ├── signInUp
│ │ │ │ │ ├── emailForm.d.ts
│ │ │ │ │ ├── emailOrPhoneForm.d.ts
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── phoneForm.d.ts
│ │ │ │ │ ├── phoneNumberInput.d.ts
│ │ │ │ │ └── resendButton.d.ts
│ │ │ │ │ ├── signInUpEPCombo
│ │ │ │ │ ├── continueWithPasswordlessFooter.d.ts
│ │ │ │ │ ├── emailForm.d.ts
│ │ │ │ │ ├── emailOrPhoneForm.d.ts
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ ├── translations.d.ts
│ │ │ │ │ └── userInputCodeForm
│ │ │ │ │ ├── userInputCodeFormFooter.d.ts
│ │ │ │ │ ├── userInputCodeFormHeader.d.ts
│ │ │ │ │ └── userInputCodeFormScreen.d.ts
│ │ │ ├── defaultPhoneNumberValidator.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── phoneNumberUtils.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ ├── utils.d.ts
│ │ │ └── validators.d.ts
│ │ ├── recipeModule
│ │ │ ├── baseRecipeModule.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── recipeRouter
│ │ │ └── index.d.ts
│ │ ├── session
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── accessDeniedScreen
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ ├── library
│ │ │ │ │ ├── backButton.d.ts
│ │ │ │ │ └── logoutButton.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── accessDeniedScreenTheme
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── sessionAuth.d.ts
│ │ │ ├── sessionContext.d.ts
│ │ │ ├── types.d.ts
│ │ │ ├── useClaimValue.d.ts
│ │ │ ├── useSessionContext.d.ts
│ │ │ └── utils.d.ts
│ │ ├── thirdparty
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ │ └── signInAndUpCallback
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ ├── library
│ │ │ │ │ └── providerButton.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ └── providersForm.d.ts
│ │ │ │ │ ├── signInAndUpCallback
│ │ │ │ │ └── index.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── providers
│ │ │ │ ├── activeDirectory.d.ts
│ │ │ │ ├── apple.d.ts
│ │ │ │ ├── bitbucket.d.ts
│ │ │ │ ├── boxySaml.d.ts
│ │ │ │ ├── custom.d.ts
│ │ │ │ ├── discord.d.ts
│ │ │ │ ├── facebook.d.ts
│ │ │ │ ├── github.d.ts
│ │ │ │ ├── gitlab.d.ts
│ │ │ │ ├── google.d.ts
│ │ │ │ ├── googleWorkspaces.d.ts
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── linkedIn.d.ts
│ │ │ │ ├── okta.d.ts
│ │ │ │ ├── twitter.d.ts
│ │ │ │ └── types.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── totp
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── mfa
│ │ │ │ │ │ └── index.d.ts
│ │ │ │ └── themes
│ │ │ │ │ ├── mfa
│ │ │ │ │ ├── blockedScreen.d.ts
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── loadingScreen.d.ts
│ │ │ │ │ ├── retryButton.d.ts
│ │ │ │ │ ├── totpCodeForm.d.ts
│ │ │ │ │ ├── totpCodeVerificationFooter.d.ts
│ │ │ │ │ ├── totpCodeVerificationHeader.d.ts
│ │ │ │ │ ├── totpDeviceInfoSection.d.ts
│ │ │ │ │ ├── totpDeviceSetupFooter.d.ts
│ │ │ │ │ └── totpDeviceSetupHeader.d.ts
│ │ │ │ │ ├── themeBase.d.ts
│ │ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ │ ├── userroles
│ │ │ └── index.d.ts
│ │ └── webauthn
│ │ │ ├── componentOverrideContext.d.ts
│ │ │ ├── components
│ │ │ ├── features
│ │ │ │ ├── recoverAccountWithToken
│ │ │ │ │ └── index.d.ts
│ │ │ │ ├── sendRecoveryEmail
│ │ │ │ │ └── index.d.ts
│ │ │ │ ├── signIn
│ │ │ │ │ └── index.d.ts
│ │ │ │ └── signUp
│ │ │ │ │ └── index.d.ts
│ │ │ └── themes
│ │ │ │ ├── continueWithPasskey
│ │ │ │ └── index.d.ts
│ │ │ │ ├── error
│ │ │ │ └── passkeyNotSupportedError.d.ts
│ │ │ │ ├── recoverAccountWithToken
│ │ │ │ ├── index.d.ts
│ │ │ │ └── success.d.ts
│ │ │ │ ├── sendRecoveryEmail
│ │ │ │ ├── emailSent.d.ts
│ │ │ │ ├── index.d.ts
│ │ │ │ └── recoverAccountForm.d.ts
│ │ │ │ ├── signIn
│ │ │ │ └── index.d.ts
│ │ │ │ ├── signUp
│ │ │ │ ├── confirmation.d.ts
│ │ │ │ ├── continueWithoutPasskey.d.ts
│ │ │ │ ├── featureBlocks.d.ts
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── signUpForm.d.ts
│ │ │ │ └── somethingWentWrong.d.ts
│ │ │ │ ├── themeBase.d.ts
│ │ │ │ └── translations.d.ts
│ │ │ ├── constants.d.ts
│ │ │ ├── functionOverrides.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── prebuiltui.d.ts
│ │ │ ├── recipe.d.ts
│ │ │ ├── types.d.ts
│ │ │ └── utils.d.ts
│ ├── recipeModule-shared.js
│ ├── session-shared.js
│ ├── session.js
│ ├── sessionprebuiltui.js
│ ├── superTokens.d.ts
│ ├── thirdparty-shared.js
│ ├── thirdparty.js
│ ├── thirdpartyprebuiltui.js
│ ├── totp-shared.js
│ ├── totp.js
│ ├── totpprebuiltui.js
│ ├── translation
│ │ ├── translationContext.d.ts
│ │ ├── translationHelpers.d.ts
│ │ └── translations.d.ts
│ ├── translationContext.js
│ ├── types.d.ts
│ ├── ui-entry.js
│ ├── ui
│ │ ├── index.d.ts
│ │ └── types.d.ts
│ ├── usercontext
│ │ ├── index.d.ts
│ │ └── userContextWrapper.d.ts
│ ├── userroles.js
│ ├── utils.d.ts
│ ├── utils.js
│ ├── version.d.ts
│ ├── webauthn-shared.js
│ ├── webauthn.js
│ └── webauthnprebuiltui.js
├── ts
│ ├── claims
│ │ ├── booleanClaim.ts
│ │ ├── primitiveArrayClaim.ts
│ │ └── primitiveClaim.ts
│ ├── components
│ │ ├── SuperTokensBranding.tsx
│ │ ├── assets
│ │ │ ├── arrowLeftIcon.tsx
│ │ │ ├── arrowRightIcon.tsx
│ │ │ ├── blockedIcon.tsx
│ │ │ ├── checkedIcon.tsx
│ │ │ ├── checkedRoundIcon.tsx
│ │ │ ├── emailLargeIcon.tsx
│ │ │ ├── errorIcon.tsx
│ │ │ ├── errorLargeIcon.tsx
│ │ │ ├── errorRoundIcon.tsx
│ │ │ ├── fingerPrintIcon.tsx
│ │ │ ├── heavyArrowLeftIcon.tsx
│ │ │ ├── logoutIcon.tsx
│ │ │ ├── multipleDevicesIcon.tsx
│ │ │ ├── otpEmailIcon.tsx
│ │ │ ├── otpSMSIcon.tsx
│ │ │ ├── passkeyIcon.tsx
│ │ │ ├── recoverySuccessIcon.tsx
│ │ │ ├── securityIcon.tsx
│ │ │ ├── showPasswordIcon.tsx
│ │ │ ├── smsLargeIcon.tsx
│ │ │ ├── somethingWentWrongIcon.tsx
│ │ │ ├── spinnerIcon.tsx
│ │ │ └── totpIcon.tsx
│ │ ├── authCompWrapper.tsx
│ │ ├── componentOverride
│ │ │ ├── componentOverride.ts
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── genericComponentOverrideContext.tsx
│ │ │ ├── useComponentOverride.ts
│ │ │ └── withOverride.tsx
│ │ ├── featureWrapper.tsx
│ │ ├── routingComponent.tsx
│ │ ├── superTokensRoute.tsx
│ │ ├── superTokensRouteV6.tsx
│ │ └── supertokensWrapper.tsx
│ ├── constants.ts
│ ├── css.d.ts
│ ├── dateProvider
│ │ ├── index.ts
│ │ └── types.ts
│ ├── index.ts
│ ├── logger.ts
│ ├── react-dom.d.ts
│ ├── recipe
│ │ ├── authRecipe
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── feature
│ │ │ │ │ └── authPage
│ │ │ │ │ │ └── authPage.tsx
│ │ │ │ └── theme
│ │ │ │ │ ├── authPage
│ │ │ │ │ ├── authPageComponentList.tsx
│ │ │ │ │ ├── authPageFooter.tsx
│ │ │ │ │ ├── authPageHeader.tsx
│ │ │ │ │ └── index.tsx
│ │ │ │ │ └── themeBase.tsx
│ │ │ ├── index.ts
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── emailpassword
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── resetPasswordUsingToken
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── signin
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── signup
│ │ │ │ │ │ └── index.tsx
│ │ │ │ ├── library
│ │ │ │ │ ├── backButton.tsx
│ │ │ │ │ ├── backToSignInButton.tsx
│ │ │ │ │ ├── button.tsx
│ │ │ │ │ ├── formBase.tsx
│ │ │ │ │ ├── formRow.tsx
│ │ │ │ │ ├── generalError.tsx
│ │ │ │ │ ├── index.ts
│ │ │ │ │ ├── input.tsx
│ │ │ │ │ ├── inputError.tsx
│ │ │ │ │ └── label.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── resetPasswordUsingToken
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ ├── resetPasswordEmail.tsx
│ │ │ │ │ └── submitNewPassword.tsx
│ │ │ │ │ ├── signIn
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── signUp
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ ├── utils.ts
│ │ │ └── validators.ts
│ │ ├── emailverification
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── emailVerification
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── emailVerification
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ ├── sendVerifyEmail.tsx
│ │ │ │ │ └── verifyEmailLinkClicked.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── emailVerificationClaim.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── multifactorauth
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── factorChooser
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── factorChooser
│ │ │ │ │ ├── factorChooserFooter.tsx
│ │ │ │ │ ├── factorChooserHeader.tsx
│ │ │ │ │ ├── factorList.tsx
│ │ │ │ │ ├── factorOption.tsx
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── multiFactorAuthClaim.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── multitenancy
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── dynamicLoginMethodsSpinner
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── dynamicLoginMethodsSpinner
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ └── themeBase.tsx
│ │ │ ├── dynamicLoginMethodsContext.tsx
│ │ │ ├── index.ts
│ │ │ ├── recipe.ts
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── oauth2provider
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── oauth2LogoutScreen
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── tryRefreshPage
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── oauth2LogoutScreen
│ │ │ │ │ ├── OAuth2LogoutScreenInner.tsx
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.ts
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── passwordless
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── continueWithPasswordless
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── linkClickedScreen
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── linkSent
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── mfa
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── signInAndUpEPCombo
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── userInputCode
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── continueWithPasswordless
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── linkClickedScreen
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── linkSent
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── mfa
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ ├── loadingScreen.tsx
│ │ │ │ │ ├── mfaFooter.tsx
│ │ │ │ │ ├── mfaHeader.tsx
│ │ │ │ │ ├── mfaOTPFooter.tsx
│ │ │ │ │ └── mfaOTPHeader.tsx
│ │ │ │ │ ├── signInUp
│ │ │ │ │ ├── emailForm.tsx
│ │ │ │ │ ├── emailOrPhoneForm.tsx
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ ├── phoneForm.tsx
│ │ │ │ │ ├── phoneNumberInput.tsx
│ │ │ │ │ └── resendButton.tsx
│ │ │ │ │ ├── signInUpEPCombo
│ │ │ │ │ ├── continueWithPasswordlessFooter.tsx
│ │ │ │ │ ├── emailForm.tsx
│ │ │ │ │ ├── emailOrPhoneForm.tsx
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ ├── translations.ts
│ │ │ │ │ └── userInputCodeForm
│ │ │ │ │ ├── userInputCodeFormFooter.tsx
│ │ │ │ │ ├── userInputCodeFormHeader.tsx
│ │ │ │ │ └── userInputCodeFormScreen.tsx
│ │ │ ├── defaultPhoneNumberValidator.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── phoneNumberUtils.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ ├── utils.ts
│ │ │ └── validators.ts
│ │ ├── recipeModule
│ │ │ ├── baseRecipeModule.ts
│ │ │ ├── index.ts
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── recipeRouter
│ │ │ └── index.tsx
│ │ ├── session
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── accessDeniedScreen
│ │ │ │ │ │ └── index.tsx
│ │ │ │ ├── library
│ │ │ │ │ ├── backButton.tsx
│ │ │ │ │ └── logoutButton.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── accessDeniedScreenTheme
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── sessionAuth.tsx
│ │ │ ├── sessionContext.ts
│ │ │ ├── types.ts
│ │ │ ├── useClaimValue.ts
│ │ │ ├── useSessionContext.ts
│ │ │ └── utils.ts
│ │ ├── thirdparty
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── signInAndUpCallback
│ │ │ │ │ │ └── index.tsx
│ │ │ │ ├── library
│ │ │ │ │ └── providerButton.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── signInAndUp
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ └── providersForm.tsx
│ │ │ │ │ ├── signInAndUpCallback
│ │ │ │ │ └── index.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.tsx
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── providers
│ │ │ │ ├── activeDirectory.tsx
│ │ │ │ ├── apple.tsx
│ │ │ │ ├── bitbucket.tsx
│ │ │ │ ├── boxySaml.tsx
│ │ │ │ ├── custom.tsx
│ │ │ │ ├── discord.tsx
│ │ │ │ ├── facebook.tsx
│ │ │ │ ├── github.tsx
│ │ │ │ ├── gitlab.tsx
│ │ │ │ ├── google.tsx
│ │ │ │ ├── googleWorkspaces.tsx
│ │ │ │ ├── index.tsx
│ │ │ │ ├── linkedIn.tsx
│ │ │ │ ├── okta.tsx
│ │ │ │ ├── twitter.tsx
│ │ │ │ └── types.ts
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── totp
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ │ ├── features
│ │ │ │ │ └── mfa
│ │ │ │ │ │ └── index.tsx
│ │ │ │ └── themes
│ │ │ │ │ ├── mfa
│ │ │ │ │ ├── blockedScreen.tsx
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ ├── loadingScreen.tsx
│ │ │ │ │ ├── retryButton.tsx
│ │ │ │ │ ├── totpCodeForm.tsx
│ │ │ │ │ ├── totpCodeVerificationFooter.tsx
│ │ │ │ │ ├── totpCodeVerificationHeader.tsx
│ │ │ │ │ ├── totpDeviceInfoSection.tsx
│ │ │ │ │ ├── totpDeviceSetupFooter.tsx
│ │ │ │ │ └── totpDeviceSetupHeader.tsx
│ │ │ │ │ ├── styles.css
│ │ │ │ │ ├── themeBase.tsx
│ │ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ │ ├── userroles
│ │ │ └── index.ts
│ │ └── webauthn
│ │ │ ├── componentOverrideContext.tsx
│ │ │ ├── components
│ │ │ ├── features
│ │ │ │ ├── recoverAccountWithToken
│ │ │ │ │ └── index.tsx
│ │ │ │ ├── sendRecoveryEmail
│ │ │ │ │ └── index.tsx
│ │ │ │ ├── signIn
│ │ │ │ │ └── index.tsx
│ │ │ │ └── signUp
│ │ │ │ │ └── index.tsx
│ │ │ └── themes
│ │ │ │ ├── continueWithPasskey
│ │ │ │ └── index.tsx
│ │ │ │ ├── error
│ │ │ │ └── passkeyNotSupportedError.tsx
│ │ │ │ ├── recoverAccountWithToken
│ │ │ │ ├── index.tsx
│ │ │ │ └── success.tsx
│ │ │ │ ├── sendRecoveryEmail
│ │ │ │ ├── emailSent.tsx
│ │ │ │ ├── index.tsx
│ │ │ │ └── recoverAccountForm.tsx
│ │ │ │ ├── signIn
│ │ │ │ └── index.tsx
│ │ │ │ ├── signUp
│ │ │ │ ├── confirmation.tsx
│ │ │ │ ├── continueWithoutPasskey.tsx
│ │ │ │ ├── featureBlocks.tsx
│ │ │ │ ├── index.tsx
│ │ │ │ ├── signUpForm.tsx
│ │ │ │ └── somethingWentWrong.tsx
│ │ │ │ ├── styles.css
│ │ │ │ ├── themeBase.tsx
│ │ │ │ └── translations.ts
│ │ │ ├── constants.ts
│ │ │ ├── functionOverrides.ts
│ │ │ ├── index.ts
│ │ │ ├── prebuiltui.tsx
│ │ │ ├── recipe.tsx
│ │ │ ├── types.ts
│ │ │ └── utils.ts
│ ├── styles
│ │ └── styles.css
│ ├── superTokens.tsx
│ ├── translation
│ │ ├── translationContext.tsx
│ │ ├── translationHelpers.ts
│ │ └── translations.ts
│ ├── types.ts
│ ├── ui
│ │ ├── index.tsx
│ │ └── types.ts
│ ├── usercontext
│ │ ├── index.tsx
│ │ └── userContextWrapper.tsx
│ ├── utils.ts
│ └── version.ts
├── tsconfig.json
├── tsconfig_dev.json
└── tslint.json
├── other
├── checkTranslationKeys.js
├── page.screen.code-snippets
└── rollup-plugin-css-string-import.mjs
├── package-lock.json
├── package.json
├── recipe
├── emailpassword
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── emailverification
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── multifactorauth
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── multitenancy
│ ├── index.d.ts
│ └── index.js
├── oauth2provider
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── passwordless
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── session
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── thirdparty
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── totp
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── userroles
│ ├── index.d.ts
│ └── index.js
└── webauthn
│ ├── index.d.ts
│ ├── index.js
│ ├── prebuiltui.d.ts
│ └── prebuiltui.js
├── rollup.config.mjs
├── runExample.sh
├── stories
├── allrecipes.stories.tsx
├── authPage.stories.tsx
├── emailpassword.stories.tsx
├── emailverification.stories.tsx
├── errorBoundary.tsx
├── factorChooser.stories.tsx
├── oauth2provider.stories.tsx
├── otpMFA.stories.tsx
├── passwordless.stories.tsx
├── thirdparty.stories.tsx
├── thirdpartyemailpassword.stories.tsx
├── thirdpartypasswordless.stories.tsx
├── totpMFA.stories.tsx
└── utils.ts
├── test
├── .env.example.js
├── .env.js
├── constants.js
├── end-to-end
│ ├── accountlinking.test.js
│ ├── emailverification.test.js
│ ├── embed.test.js
│ ├── generalerror.test.js
│ ├── getRedirectionURL.test.js
│ ├── mfa.chooserscreen.test.js
│ ├── mfa.default_reqs.test.js
│ ├── mfa.factorscreen.otp.test.js
│ ├── mfa.factorscreen.totp.test.js
│ ├── mfa.firstFactors.test.js
│ ├── mfa.helpers.js
│ ├── mfa.requirement_handling.test.js
│ ├── mfa.signin.test.js
│ ├── multitenancy.dynamic_login_methods.test.js
│ ├── multitenancy.mock.test.js
│ ├── multitenancy.tenant_interactions.test.js
│ ├── oauth2provider.test.js
│ ├── pages
│ │ ├── AuthPage.js
│ │ ├── EmailVerificationPage.js
│ │ ├── Page.js
│ │ └── ResetPasswordPage.js
│ ├── passwordless.allrecipes.email.test.js
│ ├── passwordless.allrecipes.email_or_phone.test.js
│ ├── passwordless.allrecipes.phone.test.js
│ ├── passwordless.email.test.js
│ ├── passwordless.email_or_phone.test.js
│ ├── passwordless.phone.test.js
│ ├── passwordless.test_gen.js
│ ├── refresherrors.test.js
│ ├── resetpasswordusingtoken.test.js
│ ├── routing.test.js
│ ├── signin-rrdv5.test.js
│ ├── signin-rrdv6.test.js
│ ├── signin.test.js
│ ├── signup.test.js
│ ├── thirdparty.test.js
│ ├── thirdpartyemailpassword.test.js
│ ├── thirdpartypasswordless.pwless.email.test.js
│ ├── thirdpartypasswordless.pwless.email_or_phone.test.js
│ ├── thirdpartypasswordless.pwless.phone.test.js
│ ├── thirdpartypasswordless.test.js
│ ├── thirdpartypasswordless.tp.test.js
│ ├── userContext.test.js
│ ├── userroles.test.js
│ ├── webauthn.helpers.js
│ ├── webauthn.recover_account.test.js
│ ├── webauthn.recovery_email.test.js
│ ├── webauthn.signin.test.js
│ └── webauthn.signup.test.js
├── exampleTestHelpers.js
├── findExamplesWithTests.sh
├── helpers.js
├── prepTestApp.sh
├── server
│ ├── .env
│ ├── .env.example
│ ├── .gitignore
│ ├── index.js
│ ├── package-lock.json
│ ├── package.json
│ ├── utils.js
│ └── webauthn
│ │ ├── wasm_exec.js
│ │ └── webauthn.wasm
├── startTestApp.sh
├── test.mocha.env.js
├── unit
│ ├── authPage.test.tsx
│ ├── componentOverrides.test.tsx
│ ├── components
│ │ └── componentOverride
│ │ │ └── withOverride.test.tsx
│ ├── css.d.ts
│ ├── dateProvider.test.ts
│ ├── exports.test.tsx
│ ├── index.test.ts
│ ├── mockStyle.js
│ ├── recipe
│ │ ├── emailpassword
│ │ │ ├── emailPassword.test.tsx
│ │ │ ├── signInUp.test.tsx
│ │ │ ├── utils.test.ts
│ │ │ └── validators.test.ts
│ │ ├── passwordless
│ │ │ ├── passwordless.test.ts
│ │ │ └── signInUp.test.tsx
│ │ ├── session
│ │ │ ├── sessionAuth.test.tsx
│ │ │ └── utils.unit.test.ts
│ │ └── thirdparty
│ │ │ ├── signInUp.test.tsx
│ │ │ └── thirdParty.test.ts
│ ├── selectComponentsToCoverAllFirstFactors.test.ts
│ ├── ssr.test.tsx
│ ├── tsconfig.test.json
│ └── utils.test.tsx
├── updateExampleAppDeps.sh
├── visual
│ └── basic.test.js
├── waitForServerStartup.sh
└── with-typescript
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── public
│ ├── _redirects
│ ├── background.svg
│ ├── favicon.ico
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ └── robots.txt
│ ├── src
│ ├── App.css
│ ├── App.test.tsx
│ ├── App.tsx
│ ├── Footer
│ │ └── index.tsx
│ ├── Home
│ │ ├── CallAPIView.tsx
│ │ ├── Logout.tsx
│ │ ├── SuccessView.tsx
│ │ └── index.tsx
│ ├── Themes
│ │ ├── Dark.ts
│ │ ├── Helium.ts
│ │ └── Hydrogen.ts
│ ├── index.css
│ ├── index.tsx
│ ├── logo.svg
│ ├── react-app-env.d.ts
│ ├── reportWebVitals.ts
│ └── setupTests.ts
│ └── tsconfig.json
├── ui
├── index.d.ts
└── index.js
├── utils
└── dateProvider
│ ├── index.d.ts
│ ├── index.js
│ ├── types.d.ts
│ └── types.js
└── webJsInterfaceSupported.json
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "@babel/preset-env",
4 | [
5 | "@babel/preset-typescript",
6 | {
7 | "allExtensions": true,
8 | "isTSX": true
9 | }
10 | ],
11 | ["@babel/preset-react", { "runtime": "automatic" }]
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/.circleci/generateConfig.sh:
--------------------------------------------------------------------------------
1 | frontendDriverJson=`cat ../frontendDriverInterfaceSupported.json`
2 | frontendDriverArray=`echo $frontendDriverJson | jq ".versions"`
3 |
4 | if [ -z "$SUPERTOKENS_API_KEY" ]; then
5 | echo "SUPERTOKENS_API_KEY missing"
6 | exit 1;
7 | fi
8 |
9 | sed -i -e 's/fdi-version: placeholder/fdi-version: '`printf "%q" $frontendDriverArray`'/' config_continue.yml
10 |
--------------------------------------------------------------------------------
/.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
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | lib/build/**/* linguist-generated=true
--------------------------------------------------------------------------------
/.github/helpers/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | package-lock.json
3 |
--------------------------------------------------------------------------------
/.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 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | .DS_Store
3 | /.history
4 | .vscode
5 | .idea
6 | coverage
7 | apiPassword
8 | releasePassword
9 | screenshot.jpeg
10 | /examples/**/**/package-lock.json
11 | /examples/**/**/yarn.lock
12 | /examples/**/package-lock.json
13 | /examples/**/yarn.lock
14 | /eslint/node_modules
15 | /test_report/
16 | supertokens-auth-react-*.tgz
17 | **/node_modules
18 | stats.html
19 |
--------------------------------------------------------------------------------
/.mocharc.yml:
--------------------------------------------------------------------------------
1 | spec:
2 | - test/unit/**/*.test.js
3 | - test/end-to-end/**/*.test.js
4 | reporter: spec
5 | slow: 20000
6 | timeout: 30000
7 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | docs/
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 4,
3 | "semi": true,
4 | "singleQuote": false,
5 | "printWidth": 120,
6 | "jsxBracketSameLine": true
7 | }
8 |
--------------------------------------------------------------------------------
/.storybook/preview.ts:
--------------------------------------------------------------------------------
1 | import type { Preview } from "@storybook/react";
2 |
3 | const preview: Preview = {
4 | parameters: {
5 | actions: { argTypesRegex: "^(w+.)*on[A-Z].*" },
6 | controls: {
7 | matchers: {
8 | color: /(background|color)$/i,
9 | date: /Date$/i,
10 | boolean: /(is|show|loaded)/i,
11 | },
12 | },
13 | },
14 | };
15 |
16 | export default preview;
17 |
--------------------------------------------------------------------------------
/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-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/docs/assets/icons.png
--------------------------------------------------------------------------------
/docs/assets/icons@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/docs/assets/icons@2x.png
--------------------------------------------------------------------------------
/docs/assets/widgets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/docs/assets/widgets.png
--------------------------------------------------------------------------------
/docs/assets/widgets@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/docs/assets/widgets@2x.png
--------------------------------------------------------------------------------
/eslint/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "eslint-plugin-supertokens-auth-react",
3 | "version": "1.0.0",
4 | "main": "index.js"
5 | }
6 |
--------------------------------------------------------------------------------
/examples/for-tests-react-16/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/for-tests-react-16/.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/for-tests-react-16/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests-react-16/public/favicon.ico
--------------------------------------------------------------------------------
/examples/for-tests-react-16/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests-react-16/public/logo192.png
--------------------------------------------------------------------------------
/examples/for-tests-react-16/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests-react-16/public/logo512.png
--------------------------------------------------------------------------------
/examples/for-tests-react-16/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | display: flex;
3 | flex-direction: column;
4 | justify-content: stretch;
5 | width: 100vw;
6 | height: 100vh;
7 | }
8 |
9 | .fill {
10 | display: flex;
11 | flex-direction: column;
12 | align-items: center;
13 | justify-content: center;
14 | flex: 1 1 auto;
15 | }
16 |
17 | .footer {
18 | align-self: "flex-end";
19 | }
20 |
--------------------------------------------------------------------------------
/examples/for-tests-react-16/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom";
3 | import "./index.css";
4 | import App from "./App";
5 |
6 | ReactDOM.render(
7 |
8 |
9 | ,
10 | document.getElementById("root")
11 | );
12 |
--------------------------------------------------------------------------------
/examples/for-tests-react-16/src/logWithPrefix.js:
--------------------------------------------------------------------------------
1 | export const logWithPrefix = (prefix) => (postfix) => console.log(`${prefix} ${postfix}`);
2 |
--------------------------------------------------------------------------------
/examples/for-tests/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/for-tests/.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/for-tests/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests/public/favicon.ico
--------------------------------------------------------------------------------
/examples/for-tests/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests/public/logo192.png
--------------------------------------------------------------------------------
/examples/for-tests/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/for-tests/public/logo512.png
--------------------------------------------------------------------------------
/examples/for-tests/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | display: flex;
3 | flex-direction: column;
4 | justify-content: stretch;
5 | width: 100vw;
6 | height: 100vh;
7 | }
8 |
9 | .fill {
10 | display: flex;
11 | flex-direction: column;
12 | align-items: center;
13 | justify-content: center;
14 | flex: 1 1 auto;
15 | }
16 |
17 | .footer {
18 | align-self: "flex-end";
19 | }
20 |
--------------------------------------------------------------------------------
/examples/for-tests/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { createRoot } from "react-dom/client";
3 | import "./index.css";
4 | import App from "./App";
5 |
6 | createRoot(document.getElementById("root")).render(
7 |
8 |
9 |
10 | );
11 |
--------------------------------------------------------------------------------
/examples/for-tests/src/logWithPrefix.js:
--------------------------------------------------------------------------------
1 | export const logWithPrefix = (prefix) => (postfix) => console.log(`${prefix} ${postfix}`);
2 |
--------------------------------------------------------------------------------
/examples/with-account-linking/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-account-linking/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/with-account-linking/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-account-linking/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-account-linking/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-account-linking/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-account-linking/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-account-linking/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-account-linking/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-account-linking/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/with-account-linking/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/with-account-linking/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/with-account-linking/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-aws-lambda/README.md:
--------------------------------------------------------------------------------
1 | Please refer to [this](https://github.com/supertokens/supertokens-node/blob/master/examples/aws/with-emailpassword) example to set up SuperTokens with AWS Lambda.
2 |
--------------------------------------------------------------------------------
/examples/with-cli-login/.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/with-cli-login/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-cli-login/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-cli-login/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-cli-login/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-cli-login/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-cli-login/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-cli-login/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-cli-login/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-cli-login/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-cli-login/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/with-cli-login/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-cli-login/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailpassword-vercel/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailpassword-vercel/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailpassword-vercel/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app \
4 | --label name=demo-app \
5 | --label type=app \
6 | --label mode=production \
7 | --volume /home/ubuntu/supertokens-auth-react/examples/with-emailpassword:/usr/src/app \
8 | --publish 10000:10000 \
9 | --publish 10001:10001 \
10 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/src/SessionExpiredPopup/index.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/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/with-emailpassword-vercel/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-emailpassword-vercel/vercel.json:
--------------------------------------------------------------------------------
1 | {
2 | "rewrites": [{ "source": "/api/(.*)", "destination": "/api" }]
3 | }
4 |
--------------------------------------------------------------------------------
/examples/with-emailpassword/README.md:
--------------------------------------------------------------------------------
1 | 
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/with-emailverification-then-password-thirdpartyemailpassword/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-then-password-thirdpartyemailpassword/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-then-password-thirdpartyemailpassword/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-then-password-thirdpartyemailpassword/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/src/SessionExpiredPopup/index.js:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/src/realPasswordClaim.js:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-auth-react/recipe/session";
2 |
3 | export const RealPasswordClaim = new BooleanClaim({
4 | id: "uses-real-password",
5 | refresh: async () => {
6 | // This is something we have no way of refreshing, so this is a no-op
7 | },
8 | onFailureRedirection: () => "/set-password?show=signup",
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-emailverification-then-password-thirdpartyemailpassword/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/.env.example:
--------------------------------------------------------------------------------
1 | NODEMAILER_USER=
2 | NODEMAILER_PASSWORD=
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | .env
4 |
5 | # dependencies
6 | /node_modules
7 | /.pnp
8 | .pnp.js
9 |
10 | # testing
11 | /coverage
12 |
13 | # production
14 | /build
15 |
16 | # misc
17 | .DS_Store
18 | .env.local
19 | .env.development.local
20 | .env.test.local
21 | .env.production.local
22 |
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 |
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/images/emailverification-with-otp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-with-otp/images/emailverification-with-otp.png
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-with-otp/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-with-otp/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-emailverification-with-otp/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/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/with-emailverification-with-otp/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-emailverification-with-otp/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-hash-router/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | package-lock.json
--------------------------------------------------------------------------------
/examples/with-hash-router/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-hash-router/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/with-hash-router/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hash-router/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-hash-router/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-hash-router/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hash-router/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-hash-router/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hash-router/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-hash-router/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/with-hash-router/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/with-hash-router/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/with-hash-router/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hasura-thirdpartyemailpassword/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hasura-thirdpartyemailpassword/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-hasura-thirdpartyemailpassword/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/src/SessionExpiredPopup/index.js:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-hasura-thirdpartyemailpassword/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/with-hasura-thirdpartyemailpassword/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-i18next/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-i18next/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-i18next/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-i18next/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-i18next/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-i18next/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-i18next/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-i18next/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-i18next/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-i18next/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-i18next/src/SessionExpiredPopup/index.js:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-i18next/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/with-i18next/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/.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/with-legacy-2fa/api-server/secondFactorClaim.ts:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-node/recipe/session/claims";
2 |
3 | export const SecondFactorClaim = new BooleanClaim({
4 | fetchValue: () => false,
5 | key: "2fa-completed",
6 | });
7 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-legacy-2fa/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-legacy-2fa/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-legacy-2fa/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/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/with-legacy-2fa/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/src/secondFactorClaim.tsx:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-auth-react/recipe/session";
2 |
3 | export const SecondFactorClaim = new BooleanClaim({
4 | id: "2fa-completed",
5 | refresh: async () => {
6 | // This is something we have no way of refreshing, so this is a no-op
7 | },
8 | onFailureRedirection: () => "/second-factor",
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-legacy-2fa/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-localstorage/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | package-lock.json
--------------------------------------------------------------------------------
/examples/with-localstorage/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-localstorage/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/with-localstorage/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-localstorage/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-localstorage/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-localstorage/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-localstorage/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-localstorage/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-localstorage/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-localstorage/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/with-localstorage/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/with-localstorage/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/with-localstorage/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/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/with-multifactorauth-phone-chooser/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-phone-chooser/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-phone-chooser/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-phone-chooser/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-multifactorauth-phone-chooser/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/with-multifactorauth-phone-chooser/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/with-multifactorauth-phone-chooser/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/with-multifactorauth-phone-chooser/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/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/with-multifactorauth-recovery-codes/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-recovery-codes/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-recovery-codes/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multifactorauth-recovery-codes/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/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/with-multifactorauth-recovery-codes/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/with-multifactorauth-recovery-codes/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/with-multifactorauth-recovery-codes/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth-recovery-codes/frontend/src/recoveryCodeExistsClaim.ts:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-auth-react/recipe/session";
2 |
3 | export const RecoveryCodeExistsClaim = new BooleanClaim({
4 | id: "rc",
5 | refresh: async () => {
6 | // This is something we have no way of refreshing, so this is a no-op
7 | },
8 | onFailureRedirection: () => "/create-recovery-code",
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-multifactorauth/README.md:
--------------------------------------------------------------------------------
1 | 
2 |
3 | # SuperTokens Multi-Factor Auth Demo app
4 |
5 | To get this demo app, please run the following command:
6 |
7 | ```bash
8 | npx create-supertokens-app@latest --recipe=multifactorauth
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/api-server/.gitignore:
--------------------------------------------------------------------------------
1 | primaryUserStore.json
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multiple-email-sign-in/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multiple-email-sign-in/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-multiple-email-sign-in/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/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/with-multiple-email-sign-in/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-multiple-email-sign-in/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-netlify/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-netlify/.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 | .eslintcache
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/examples/with-netlify/.netlify/edge-functions-import-map.json:
--------------------------------------------------------------------------------
1 | {
2 | "imports": {
3 | "@netlify/edge-functions": "https://edge.netlify.com/v1/index.ts",
4 | "netlify:edge": "https://edge.netlify.com/v1/index.ts?v=legacy"
5 | },
6 | "scopes": {}
7 | }
8 |
--------------------------------------------------------------------------------
/examples/with-netlify/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | publish = "./build/"
3 | command = "npm install && npm run build"
4 | [dev]
5 | functionsPort = 3001
6 |
--------------------------------------------------------------------------------
/examples/with-netlify/public/_redirects:
--------------------------------------------------------------------------------
1 | /* /index.html 200
--------------------------------------------------------------------------------
/examples/with-netlify/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-netlify/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-netlify/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-netlify/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-netlify/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-netlify/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-netlify/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-netlify/server-local.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | const app = require("./netlify/functions/api").app;
4 |
5 | app.listen(8889, () => console.log("Local app listening on port 8889!"));
6 |
--------------------------------------------------------------------------------
/examples/with-netlify/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-netlify/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/with-netlify/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-netlify/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-next-iframe/config/appInfo.js:
--------------------------------------------------------------------------------
1 | // const port = process.env.APP_PORT || 3000;
2 |
3 | export const websiteDomain = "https://ea5c-2405-201-b-c8d8-3106-c37c-c4e3-e3e3.ngrok-free.app";
4 | export const apiBasePath = "/api/auth/";
5 | export const appInfo = {
6 | appName: "SuperTokens Demo App",
7 | websiteDomain,
8 | apiDomain: websiteDomain,
9 | apiBasePath,
10 | };
11 |
--------------------------------------------------------------------------------
/examples/with-next-iframe/pages/iframe.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { websiteDomain } from "../config/appInfo";
3 |
4 | export default function iframe() {
5 | return (
6 |
13 | );
14 | }
15 |
--------------------------------------------------------------------------------
/examples/with-next-iframe/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-next-iframe/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-next-iframe/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 |
--------------------------------------------------------------------------------
/examples/with-next/README.md:
--------------------------------------------------------------------------------
1 | # Please refer to the example code [https://github.com/supertokens/next.js/tree/canary/examples/with-supertokens](https://github.com/supertokens/next.js/tree/canary/examples/with-supertokens).
2 |
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-no-session-on-sign-up-thirdpartyemailpassword/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/with-no-session-on-sign-up-thirdpartyemailpassword/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/.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/with-okta-multi-tenant-pkce-flow/api-server/utils.go:
--------------------------------------------------------------------------------
1 | package main
2 |
3 | import (
4 | "net/http"
5 |
6 | "github.com/supertokens/supertokens-golang/supertokens"
7 | )
8 |
9 | func getRequestFromUserContext(userContext supertokens.UserContext) *http.Request {
10 | if _default, ok := (*userContext)["_default"].(map[string]interface{}); ok {
11 | if request, ok := _default["request"].(*http.Request); ok {
12 | return request
13 | }
14 | }
15 | return nil
16 | }
17 |
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-okta-multi-tenant-pkce-flow/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-okta-multi-tenant-pkce-flow/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-okta-multi-tenant-pkce-flow/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-okta-multi-tenant-pkce-flow/src/setupTests.tsx:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/.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 | .eslintcache
22 | npm-debug.log*
23 | yarn-debug.log*
24 | yarn-error.log*
25 |
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
2 | HOST='example.com'
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-many-subdomains/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-many-subdomains/frontend/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-many-subdomains/frontend/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/frontend/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-one-login-many-subdomains/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/with-one-login-many-subdomains/frontend/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/.env:
--------------------------------------------------------------------------------
1 | HOST='tenant1.example.com'
2 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/.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 |
25 | .eslintcache
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-per-subdomain/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-per-subdomain/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-one-login-per-subdomain/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-one-login-per-subdomain/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/with-one-login-per-subdomain/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { createRoot } from "react-dom/client";
3 | import "./index.css";
4 | import App from "./App";
5 |
6 | createRoot(document.getElementById("root")).render(
7 |
8 |
9 |
10 | );
11 |
--------------------------------------------------------------------------------
/examples/with-passwordless/README.md:
--------------------------------------------------------------------------------
1 | 
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=passwordless
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/.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*
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password-mfa/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password-mfa/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password-mfa/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/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/with-phone-password-mfa/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-phone-password-mfa/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-phone-password/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-phone-password/.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*
--------------------------------------------------------------------------------
/examples/with-phone-password/api-server/phoneVerifiedClaim.ts:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-node/recipe/session/claims";
2 |
3 | export const PhoneVerifiedClaim = new BooleanClaim({
4 | fetchValue: () => false,
5 | key: "phone-verified",
6 | });
7 |
--------------------------------------------------------------------------------
/examples/with-phone-password/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-phone-password/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-phone-password/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-phone-password/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-phone-password/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-phone-password/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-phone-password/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-phone-password/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/with-phone-password/src/phoneVerifiedClaim.ts:
--------------------------------------------------------------------------------
1 | import { BooleanClaim } from "supertokens-auth-react/recipe/session";
2 |
3 | export const PhoneVerifiedClaim = new BooleanClaim({
4 | id: "phone-verified",
5 | refresh: async () => {
6 | // This is something we have no way of refreshing, so this is a no-op
7 | },
8 | onFailureRedirection: () => "/auth/verify-phone",
9 | });
10 |
--------------------------------------------------------------------------------
/examples/with-phone-password/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-phone-password/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-remix/README.md:
--------------------------------------------------------------------------------
1 | Please run `npx create-supertokens-app@latest --frontend=remix` for a demo integration of SuperTokens with Remix.
2 | Source at: https://github.com/supertokens/create-supertokens-app/tree/master/boilerplate/fullstack/remix
3 |
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-sign-in-up-split-emailpassword/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-sign-in-up-split-emailpassword/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-sign-in-up-split-emailpassword/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app \
4 | --label name=demo-app \
5 | --label type=app \
6 | --label mode=production \
7 | --volume /home/ubuntu/supertokens-auth-react/examples/with-emailpassword:/usr/src/app \
8 | --publish 10000:10000 \
9 | --publish 10001:10001 \
10 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from "@testing-library/react";
2 | import App from "./App";
3 |
4 | test("renders learn react link", () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/src/SessionExpiredPopup/index.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-sign-in-up-split-emailpassword/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/with-sign-in-up-split-emailpassword/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-supabase/config/appInfo.ts:
--------------------------------------------------------------------------------
1 | const port = process.env.APP_PORT || 3000;
2 |
3 | const apiBasePath = "/api/auth/";
4 |
5 | export const websiteDomain = process.env.APP_URL || process.env.NEXT_PUBLIC_APP_URL || `http://localhost:${port}`;
6 |
7 | export const appInfo = {
8 | appName: "SuperTokens and Supabase Demo App",
9 | websiteDomain,
10 | apiDomain: websiteDomain,
11 | apiBasePath,
12 | };
13 |
--------------------------------------------------------------------------------
/examples/with-supabase/next-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 |
4 | // NOTE: This file should not be edited
5 | // see https://nextjs.org/docs/basic-features/typescript for more information.
6 |
--------------------------------------------------------------------------------
/examples/with-supabase/next.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('next').NextConfig} */
2 | const nextConfig = {
3 | reactStrictMode: true,
4 | };
5 |
6 | module.exports = nextConfig;
7 |
--------------------------------------------------------------------------------
/examples/with-supabase/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-supabase/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-supabase/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 |
--------------------------------------------------------------------------------
/examples/with-supabase/utils/supabase.ts:
--------------------------------------------------------------------------------
1 | import { createClient } from "@supabase/supabase-js";
2 |
3 | const getSupabase = (access_token) => {
4 | const supabase = createClient(process.env.NEXT_PUBLIC_SUPABASE_URL, process.env.NEXT_PUBLIC_SUPABASE_KEY);
5 |
6 | supabase.auth.session = () => ({
7 | access_token,
8 | token_type: "",
9 | user: null,
10 | });
11 |
12 | return supabase;
13 | };
14 |
15 | export { getSupabase };
16 |
--------------------------------------------------------------------------------
/examples/with-svelte-react-thirdpartyemailpassword/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules/
2 | /public/build/
3 |
4 | .DS_Store
5 |
--------------------------------------------------------------------------------
/examples/with-svelte-react-thirdpartyemailpassword/public/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-svelte-react-thirdpartyemailpassword/public/favicon.png
--------------------------------------------------------------------------------
/examples/with-svelte-react-thirdpartyemailpassword/src/global.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-svelte-react-thirdpartyemailpassword/src/main.ts:
--------------------------------------------------------------------------------
1 | /** @format */
2 |
3 | import App from "./App.svelte";
4 |
5 | const app = new App({
6 | target: document.body,
7 | });
8 |
9 | export default app;
10 |
--------------------------------------------------------------------------------
/examples/with-svelte-react-thirdpartyemailpassword/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "jsx": "react-jsx"
4 | },
5 | "extends": "@tsconfig/svelte/tsconfig.json",
6 |
7 | "include": ["src/**/*"],
8 | "exclude": ["node_modules/*", "__sapper__/*", "public/*"]
9 | }
10 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-2fa-passwordless/README.md:
--------------------------------------------------------------------------------
1 | 
2 |
3 | # SuperTokens 2FA Auth Demo app
4 |
5 | To get this demo app, please run the following command:
6 |
7 | ```bash
8 | npx create-supertokens-app@latest --recipe=multifactorauth
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/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/with-thirdparty-google-onetap/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-google-onetap/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-google-onetap/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-google-onetap/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/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/with-thirdparty-google-onetap/frontend/src/google-one-tap/index.ts:
--------------------------------------------------------------------------------
1 | import { memo } from "react";
2 | import { IGoogleOneTapLogin } from "./types";
3 | import { useGoogleOneTapLogin } from "./useGoogleOneTapLogin";
4 |
5 | function GoogleOneTapLogin({ children = null, ...props }: IGoogleOneTapLogin) {
6 | useGoogleOneTapLogin(props);
7 | return children;
8 | }
9 |
10 | export default memo(GoogleOneTapLogin);
11 |
12 | export { useGoogleOneTapLogin };
13 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-google-onetap/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/with-thirdparty-google-onetap/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/with-thirdparty-google-onetap/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/.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/with-thirdparty-popup/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-popup/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-popup/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdparty-popup/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-thirdparty-popup/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/with-thirdparty-popup/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/with-thirdparty-popup/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/with-thirdparty-popup/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-thirdparty/README.md:
--------------------------------------------------------------------------------
1 | 
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=thirdparty
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-2fa-passwordless/README.md:
--------------------------------------------------------------------------------
1 | 
2 |
3 | # SuperTokens 2FA Auth Demo app
4 |
5 | To get this demo app, please run the following command:
6 |
7 | ```bash
8 | npx create-supertokens-app@latest --recipe=multifactorauth
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:lts-alpine3.12
2 |
3 | RUN apk add curl
4 |
5 | WORKDIR /usr/src/app
6 |
7 | RUN npm i -g pm2
8 |
9 | USER node
10 |
11 | CMD ["pm2-docker", "start", "pm2.json"]
12 |
13 | EXPOSE 10000
14 |
15 | EXPOSE 10001
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdpartyemailpassword-passwordless/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdpartyemailpassword-passwordless/public/logo192.png
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-thirdpartyemailpassword-passwordless/public/logo512.png
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/scripts/start_container.sh:
--------------------------------------------------------------------------------
1 | docker run -d \
2 | --restart=always \
3 | --name demo-app-thirdpartyemailpassword \
4 | --label name=demo-app-thirdpartyemailpassword \
5 | --volume /home/ubuntu/supertokens-auth-react/examples/with-thirdpartyemailpassword:/usr/src/app \
6 | --publish 10004:10000 \
7 | --publish 10005:10001 \
8 | supertokens/demo
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup() {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/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/with-thirdpartyemailpassword-passwordless/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword-passwordless/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/examples/with-thirdpartyemailpassword/README.md:
--------------------------------------------------------------------------------
1 | 
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=thirdpartyemailpassword
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-thirdpartypasswordless-electron/src/SessionExpiredPopup/index.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import { redirectToAuth } from "supertokens-auth-react";
3 |
4 | export default function SessionExpiredPopup(): JSX.Element {
5 | useEffect(() => {
6 | window.alert("Session Expired. Please login again");
7 | redirectToAuth();
8 | }, []);
9 |
10 | return null;
11 | }
12 |
--------------------------------------------------------------------------------
/examples/with-thirdpartypasswordless-electron/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Hello World!
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/examples/with-thirdpartypasswordless-electron/webpack.plugins.js:
--------------------------------------------------------------------------------
1 | const ForkTsCheckerWebpackPlugin = require("fork-ts-checker-webpack-plugin");
2 |
3 | module.exports = [new ForkTsCheckerWebpackPlugin()];
4 |
--------------------------------------------------------------------------------
/examples/with-thirdpartypasswordless/README.md:
--------------------------------------------------------------------------------
1 | 
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=thirdpartypasswordless
9 | ```
10 |
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/frontend/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/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/with-update-email-post-verification/frontend/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-update-email-post-verification/frontend/public/favicon.ico
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/frontend/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/frontend/src/assets/fonts/MenloRegular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-update-email-post-verification/frontend/src/assets/fonts/MenloRegular.ttf
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/frontend/src/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/examples/with-update-email-post-verification/frontend/src/assets/images/background.png
--------------------------------------------------------------------------------
/examples/with-update-email-post-verification/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/with-update-email-post-verification/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/with-update-email-post-verification/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/with-update-email-post-verification/frontend/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/frontendDriverInterfaceSupported.json:
--------------------------------------------------------------------------------
1 | {
2 | "_comment": "contains a list of frontend-backend interface versions that this package supports",
3 | "versions": ["3.1", "4.0", "4.1"]
4 | }
5 |
--------------------------------------------------------------------------------
/lib/.eslintignore:
--------------------------------------------------------------------------------
1 | build/
--------------------------------------------------------------------------------
/lib/build/components/SuperTokensBranding.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare function SuperTokensBranding(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/arrowLeftIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ArrowLeftIcon({ color }: { color: string }): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/arrowRightIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ArrowRightIcon({ color }: { color: string }): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/blockedIcon.d.ts:
--------------------------------------------------------------------------------
1 | export declare const BlockedIcon: () => import("react/jsx-runtime").JSX.Element;
2 |
--------------------------------------------------------------------------------
/lib/build/components/assets/checkedIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function CheckedIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/checkedRoundIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function CheckedRoundIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/emailLargeIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function EmailLargeIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/errorIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ErrorIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/errorLargeIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ErrorLargeIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/errorRoundIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ErrorRoundIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/fingerPrintIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function FingerPrintIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/heavyArrowLeftIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function HeavyArrowLeftIcon({ color }: { color: string }): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/logoutIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function LogoutIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/multipleDevicesIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function MultipleDevicesIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/otpEmailIcon.d.ts:
--------------------------------------------------------------------------------
1 | export declare const OTPEmailIcon: () => import("react/jsx-runtime").JSX.Element;
2 |
--------------------------------------------------------------------------------
/lib/build/components/assets/otpSMSIcon.d.ts:
--------------------------------------------------------------------------------
1 | export declare const OTPSMSIcon: () => import("react/jsx-runtime").JSX.Element;
2 |
--------------------------------------------------------------------------------
/lib/build/components/assets/passkeyIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function PasskeyIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/recoverySuccessIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function RecoverySuccessIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/securityIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function SecurityIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/showPasswordIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function ShowPasswordIcon({ showPassword }: { showPassword: boolean }): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/smsLargeIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function SMSLargeIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/somethingWentWrongIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function SomethingWentWrongIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/spinnerIcon.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export default function SpinnerIcon(): JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/components/assets/totpIcon.d.ts:
--------------------------------------------------------------------------------
1 | export declare const TOTPIcon: () => import("react/jsx-runtime").JSX.Element;
2 |
--------------------------------------------------------------------------------
/lib/build/components/authCompWrapper.d.ts:
--------------------------------------------------------------------------------
1 | import type { PropsWithChildren } from "react";
2 | declare type AuthComponentWrapperProps = {
3 | recipeComponentOverrides: any;
4 | };
5 | export default function AuthComponentWrapper({
6 | children,
7 | recipeComponentOverrides,
8 | }: PropsWithChildren): JSX.Element | null;
9 | export {};
10 |
--------------------------------------------------------------------------------
/lib/build/components/componentOverride/componentOverride.d.ts:
--------------------------------------------------------------------------------
1 | import type React from "react";
2 | export declare type ComponentOverrideProps> =
3 | React.ComponentProps & {
4 | DefaultComponent: TComponent;
5 | };
6 | export declare type ComponentOverride> = React.ComponentType<
7 | ComponentOverrideProps
8 | >;
9 |
--------------------------------------------------------------------------------
/lib/build/components/componentOverride/componentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { ComponentOverride } from "./componentOverride";
3 | export declare type GenericComponentOverrideMap = {
4 | [K in keyof T]?: ComponentOverride;
5 | };
6 | declare type ContextType = GenericComponentOverrideMap | "IS_DEFAULT";
7 | export declare const ComponentOverrideContext: React.Context>;
8 | export {};
9 |
--------------------------------------------------------------------------------
/lib/build/components/componentOverride/genericComponentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | export declare const createGenericComponentsOverrideContext: >(
3 | v?: T
4 | ) => readonly [
5 | () => T,
6 | React.FC<
7 | React.PropsWithChildren<{
8 | components: T;
9 | }>
10 | >,
11 | React.Consumer
12 | ];
13 |
--------------------------------------------------------------------------------
/lib/build/components/componentOverride/useComponentOverride.d.ts:
--------------------------------------------------------------------------------
1 | import type { ComponentOverride } from "./componentOverride";
2 | import type React from "react";
3 | export declare const useComponentOverride: >(
4 | overrideKey: string
5 | ) => ComponentOverride | null;
6 |
--------------------------------------------------------------------------------
/lib/build/components/componentOverride/withOverride.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | export declare const withOverride: >(
3 | overrideKey: string,
4 | DefaultComponent: TComponent
5 | ) => React.ComponentType>;
6 |
--------------------------------------------------------------------------------
/lib/build/components/routingComponent.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import { RecipeRouter } from "../recipe/recipeRouter";
3 | import type { ReactRouterDomWithCustomHistory } from "../ui/types";
4 | export declare function RoutingComponent(props: {
5 | getReactRouterDomWithCustomHistory: () => ReactRouterDomWithCustomHistory | undefined;
6 | preBuiltUIList: RecipeRouter[];
7 | path: string;
8 | }): JSX.Element | null;
9 |
--------------------------------------------------------------------------------
/lib/build/components/supertokensWrapper.d.ts:
--------------------------------------------------------------------------------
1 | import type { UserContext } from "../types";
2 | import type { PropsWithChildren } from "react";
3 | export declare const SuperTokensWrapper: React.FC<
4 | PropsWithChildren<{
5 | userContext?: UserContext;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/dateProvider/index.d.ts:
--------------------------------------------------------------------------------
1 | export { DateProviderReference } from "supertokens-web-js/utils/dateProvider";
2 |
--------------------------------------------------------------------------------
/lib/build/dateProvider/types.d.ts:
--------------------------------------------------------------------------------
1 | export { DateProviderInput, DateProviderInterface } from "supertokens-web-js/utils/dateProvider/types";
2 |
--------------------------------------------------------------------------------
/lib/build/emailpassword-shared2.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
4 |
5 | var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
6 | useContext = _a[0],
7 | Provider = _a[1];
8 |
9 | exports.Provider = Provider;
10 | exports.useContext = useContext;
11 |
--------------------------------------------------------------------------------
/lib/build/logger.d.ts:
--------------------------------------------------------------------------------
1 | export declare function enableLogging(): void;
2 | export declare function logDebugMessage(message: string): void;
3 |
--------------------------------------------------------------------------------
/lib/build/multifactorauth-shared3.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
4 |
5 | var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
6 | useContext = _a[0],
7 | Provider = _a[1];
8 |
9 | exports.Provider = Provider;
10 | exports.useContext = useContext;
11 |
--------------------------------------------------------------------------------
/lib/build/multitenancy-shared.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
4 |
5 | var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
6 | useContext = _a[0],
7 | Provider = _a[1];
8 |
9 | exports.Provider = Provider;
10 | exports.useContext = useContext;
11 |
--------------------------------------------------------------------------------
/lib/build/oauth2provider-shared2.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
4 |
5 | var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
6 | useContext = _a[0],
7 | Provider = _a[1];
8 |
9 | exports.Provider = Provider;
10 | exports.useContext = useContext;
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/authRecipe/components/theme/authPage/authPageComponentList.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { AuthPageThemeProps } from "../../../types";
3 | export declare const AuthPageComponentList: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/authRecipe/components/theme/authPage/authPageFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const AuthPageFooter: import("react").ComponentType<{
3 | privacyPolicyLink?: string | undefined;
4 | termsOfServiceLink?: string | undefined;
5 | factorIds: string[];
6 | hasSeparateSignUpView: boolean;
7 | isSignUp: boolean;
8 | }>;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/authRecipe/components/theme/authPage/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { AuthPageThemeProps } from "../../../types";
3 | export declare function AuthPageTheme(props: AuthPageThemeProps): JSX.Element;
4 | declare function AuthPageThemeWrapper(props: AuthPageThemeProps): JSX.Element;
5 | export default AuthPageThemeWrapper;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/authRecipe/components/theme/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/authRecipe/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, NormalisedConfig } from "./types";
2 | import type { PartialAuthComponent } from "../../types";
3 | export declare function normaliseAuthRecipe(config: Config): NormalisedConfig;
4 | export declare function selectComponentsToCoverAllFirstFactors(
5 | comps: PartialAuthComponent[],
6 | firstFactorIds: string[]
7 | ): PartialAuthComponent[] | undefined;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/backButton.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type ButtonProps = {
3 | onClick?: () => void;
4 | };
5 | export default function BackButton({ onClick }: ButtonProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/backToSignInButton.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type ButtonProps = {
3 | onClick?: () => void;
4 | };
5 | export default function BackToSignInButton({ onClick }: ButtonProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/formRow.d.ts:
--------------------------------------------------------------------------------
1 | import type { PropsWithChildren } from "react";
2 | declare type FormRowProps = {
3 | hasError?: boolean;
4 | };
5 | export default function FormRow({
6 | children,
7 | hasError,
8 | }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
9 | export {};
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/generalError.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type GeneralErrorProps = {
3 | error: string;
4 | };
5 | export default function GeneralError({ error }: GeneralErrorProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/index.d.ts:
--------------------------------------------------------------------------------
1 | import Button from "./button";
2 | import FormRow from "./formRow";
3 | import Input from "./input";
4 | import InputError from "./inputError";
5 | import Label from "./label";
6 | export { Button, FormRow, Input, InputError, Label };
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/inputError.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type InputErrorProps = {
3 | error: string;
4 | };
5 | export default function InputError({ error }: InputErrorProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/library/label.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type LabelProps = {
3 | value: string;
4 | showIsRequired?: boolean;
5 | };
6 | export default function Label({ value, showIsRequired }: LabelProps): JSX.Element;
7 | export {};
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/themes/resetPasswordUsingToken/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { ResetPasswordUsingTokenThemeProps } from "../../../types";
3 | export declare function ResetPasswordUsingTokenTheme(props: ResetPasswordUsingTokenThemeProps): JSX.Element;
4 | declare function ResetPasswordUsingTokenThemeWrapper(props: ResetPasswordUsingTokenThemeProps): JSX.Element;
5 | export default ResetPasswordUsingTokenThemeWrapper;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const MANDATORY_FORM_FIELDS_ID_ARRAY: string[];
2 | export declare const DEFAULT_RESET_PASSWORD_PATH = "/reset-password";
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/emailpassword";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailpassword/validators.d.ts:
--------------------------------------------------------------------------------
1 | export declare function defaultEmailValidator(value: any): Promise;
2 | export declare function defaultPasswordValidator(value: any): Promise;
3 | export declare function defaultLoginPasswordValidator(value: any): Promise;
4 | export declare function defaultValidate(_: any): Promise;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailverification/components/themes/emailVerification/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { EmailVerificationThemeProps } from "../../../types";
3 | export declare function EmailVerificationTheme(props: EmailVerificationThemeProps): JSX.Element;
4 | declare function EmailVerificationThemeWrapper(props: EmailVerificationThemeProps): JSX.Element;
5 | export default EmailVerificationThemeWrapper;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailverification/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const DEFAULT_VERIFY_EMAIL_PATH = "/verify-email";
2 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailverification/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/emailverification";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/emailverification/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, NormalisedConfig } from "./types";
2 | export declare function normaliseEmailVerificationFeature(config?: Config): NormalisedConfig;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/factorChooser/factorChooserFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const FactorChooserFooter: import("react").ComponentType<{
3 | logout: (() => void) | undefined;
4 | }>;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/factorChooser/factorChooserHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const FactorChooserHeader: import("react").ComponentType<{
3 | showBackButton: boolean;
4 | onBackButtonClicked: () => void;
5 | }>;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/factorChooser/factorList.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SecondaryFactorRedirectionInfo } from "../../../types";
3 | export declare const FactorList: import("react").ComponentType<{
4 | availableFactors: SecondaryFactorRedirectionInfo[];
5 | navigateToFactor: (factorId: string) => void;
6 | }>;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/factorChooser/factorOption.d.ts:
--------------------------------------------------------------------------------
1 | import type { FC } from "react";
2 | export declare const FactorOption: import("react").ComponentType<{
3 | onClick: (() => void) | undefined;
4 | id: string;
5 | name: string;
6 | description: string;
7 | logo: FC;
8 | }>;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/factorChooser/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { FactorChooserThemeProps } from "../../../types";
3 | export declare function FactorChooserTheme(props: FactorChooserThemeProps): JSX.Element;
4 | declare function FactorChooserThemeWrapper(props: FactorChooserThemeProps): JSX.Element;
5 | export default FactorChooserThemeWrapper;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const DEFAULT_FACTOR_CHOOSER_PATH = "/mfa";
2 | export declare const MFA_INFO_CACHE_KEY = "st-mfa-info-cache";
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/multifactorauth/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/multifactorauth";
4 | export declare const getFunctionOverrides: (
5 | _onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/multitenancy/components/features/dynamicLoginMethodsSpinner/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare const DynamicLoginMethodsSpinner: React.FC;
3 | export default DynamicLoginMethodsSpinner;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/multitenancy/components/themes/dynamicLoginMethodsSpinner/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { NormalisedConfig } from "../../../types";
2 | export declare const DynamicLoginMethodsSpinnerTheme: (props: {
3 | config: NormalisedConfig;
4 | }) => import("react/jsx-runtime").JSX.Element;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/multitenancy/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/multitenancy/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { UserInput, NormalisedConfig, GetLoginMethodsResponseNormalized } from "./types";
2 | import type AuthRecipe from "../authRecipe";
3 | export declare function normaliseMultitenancyConfig(config?: UserInput): NormalisedConfig;
4 | export declare function hasIntersectingRecipes(
5 | tenantMethods: GetLoginMethodsResponseNormalized,
6 | recipeList: AuthRecipe[]
7 | ): boolean;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/components/themes/oauth2LogoutScreen/OAuth2LogoutScreenInner.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const OAuth2LogoutScreenInner: import("react").ComponentType<{
3 | isLoggingOut: boolean;
4 | onLogoutClicked: () => void;
5 | }>;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/components/themes/oauth2LogoutScreen/index.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { OAuth2LogoutScreenThemeProps } from "../../../types";
3 | export declare const OAuth2LogoutScreenTheme: React.FC;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const DEFAULT_TRY_REFRESH_PATH = "/try-refresh";
2 | export declare const DEFAULT_OAUTH2_LOGOUT_PATH = "/oauth/logout";
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/oauth2provider";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/oauth2provider/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { UserInput, NormalisedConfig } from "./types";
2 | export declare function normaliseOAuth2Config(config?: UserInput): NormalisedConfig;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/continueWithPasswordless/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { PartialAuthComponentProps } from "../../../../../types";
2 | import type { NormalisedConfig } from "../../../types";
3 | export declare const ContinueWithPasswordlessTheme: (
4 | props: PartialAuthComponentProps & {
5 | config: NormalisedConfig;
6 | continueWithPasswordlessClicked: () => void;
7 | }
8 | ) => import("react/jsx-runtime").JSX.Element;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/linkClickedScreen/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { LinkClickedScreenProps } from "../../../types";
2 | export declare const LinkClickedScreen: (props: LinkClickedScreenProps) => import("react/jsx-runtime").JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/mfa/loadingScreen.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const LoadingScreen: import("react").ComponentType<{}>;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/mfa/mfaFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { MFAFooterProps } from "../../../types";
3 | export declare const MFAFooter: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/mfa/mfaHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { MFAHeaderProps } from "../../../types";
3 | export declare const MFAHeader: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/mfa/mfaOTPFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { MFAOTPFooterProps } from "../../../types";
3 | export declare const MFAOTPFooter: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/mfa/mfaOTPHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { MFAOTPHeaderProps } from "../../../types";
3 | export declare const MFAOTPHeader: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUp/emailForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpEmailFormProps } from "../../../types";
3 | export declare const EmailForm: import("react").ComponentType<
4 | SignInUpEmailFormProps & {
5 | footer?: JSX.Element | undefined;
6 | }
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUp/emailOrPhoneForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpEmailOrPhoneFormProps } from "../../../types";
3 | export declare const EmailOrPhoneForm: import("react").ComponentType<
4 | SignInUpEmailOrPhoneFormProps & {
5 | footer?: JSX.Element | undefined;
6 | }
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUp/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpProps } from "../../../types";
3 | export declare enum SignInUpScreens {
4 | EmailForm = 0,
5 | PhoneForm = 1,
6 | EmailOrPhoneForm = 2,
7 | }
8 | declare function SignInUpThemeWrapper(props: SignInUpProps): JSX.Element;
9 | export default SignInUpThemeWrapper;
10 | export declare function getActiveScreen(factorIds: string[]): SignInUpScreens;
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUp/phoneForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpPhoneFormProps } from "../../../types";
3 | export declare const PhoneForm: import("react").ComponentType<
4 | SignInUpPhoneFormProps & {
5 | footer?: JSX.Element | undefined;
6 | }
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUp/resendButton.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { LoginAttemptInfo } from "../../../types";
3 | export declare const ResendButton: React.ComponentType<{
4 | loginAttemptInfo: LoginAttemptInfo;
5 | resendEmailOrSMSGapInSeconds: number;
6 | onClick: () => void;
7 | }>;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUpEPCombo/emailForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpEPComboEmailFormProps } from "../../../types";
3 | export declare const EPComboEmailForm: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUpEPCombo/emailOrPhoneForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpEPComboEmailOrPhoneFormProps } from "../../../types";
3 | export declare const EPComboEmailOrPhoneForm: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/signInUpEPCombo/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInUpEPComboChildProps } from "../../../types";
3 | export declare enum SignInUpEPComboScreens {
4 | EmailForm = 0,
5 | EmailOrPhoneForm = 1,
6 | }
7 | declare function SignInUpThemeWrapper(props: SignInUpEPComboChildProps): JSX.Element;
8 | export default SignInUpThemeWrapper;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/userInputCodeForm/userInputCodeFormFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { UserInputCodeFormFooterProps } from "../../../types";
3 | export declare const UserInputCodeFormFooter: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/components/themes/userInputCodeForm/userInputCodeFormHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { UserInputCodeFormHeaderProps } from "../../../types";
3 | export declare const UserInputCodeFormHeader: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/defaultPhoneNumberValidator.d.ts:
--------------------------------------------------------------------------------
1 | export declare function defaultPhoneNumberValidator(
2 | value: string
3 | ): Promise<"GENERAL_ERROR_PHONE_NON_STRING" | "GENERAL_ERROR_PHONE_INVALID" | undefined>;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/passwordless";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/phoneNumberUtils.d.ts:
--------------------------------------------------------------------------------
1 | export declare function getPhoneNumberUtils(): Promise;
2 | export declare function preloadPhoneNumberUtils(): Promise;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, LoginAttemptInfo, NormalisedConfig } from "./types";
2 | export declare function normalisePasswordlessConfig(config: Config): NormalisedConfig;
3 | export declare function checkAdditionalLoginAttemptInfoProperties(loginAttemptInfo: LoginAttemptInfo): boolean;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/passwordless/validators.d.ts:
--------------------------------------------------------------------------------
1 | export declare function defaultEmailValidator(value: any): string | undefined;
2 | export declare function userInputCodeValidate(value: any): Promise;
3 | export declare function defaultValidate(_: any): Promise;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/recipeModule/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, NormalisedConfig } from "./types";
2 | export declare function normaliseRecipeModuleConfig(config?: Config): NormalisedConfig;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/componentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { ComponentOverrideMap } from "./types";
3 | declare const useContext: () => ComponentOverrideMap,
4 | Provider: import("react").FC<
5 | import("react").PropsWithChildren<{
6 | components: ComponentOverrideMap;
7 | }>
8 | >;
9 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/components/library/backButton.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type ButtonProps = {
3 | onClick?: (e: any) => void;
4 | };
5 | export default function BackButton({ onClick }: ButtonProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/components/library/logoutButton.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | declare type ButtonProps = {
3 | onClick?: () => void;
4 | };
5 | export default function LogoutButton({ onClick }: ButtonProps): JSX.Element;
6 | export {};
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/components/themes/accessDeniedScreenTheme/index.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { AccessDeniedThemeProps } from "../../../types";
3 | export declare const AccessDeniedScreenTheme: React.FC;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/sessionContext.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { SessionContextType } from "./types";
3 | declare const SessionContext: React.Context<
4 | SessionContextType & {
5 | isDefault?: boolean | undefined;
6 | }
7 | >;
8 | export default SessionContext;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/useClaimValue.d.ts:
--------------------------------------------------------------------------------
1 | import type { SessionClaim } from "supertokens-web-js/recipe/session";
2 | export declare const useClaimValue: (claim: SessionClaim) =>
3 | | {
4 | loading: true;
5 | }
6 | | {
7 | loading: false;
8 | doesSessionExist: boolean;
9 | value: T | undefined;
10 | };
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/session/useSessionContext.d.ts:
--------------------------------------------------------------------------------
1 | import type { SessionContextType } from "./types";
2 | declare const useSessionContext: () => SessionContextType;
3 | export default useSessionContext;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/componentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { ComponentOverrideMap } from "./types";
3 | declare const useContext: () => ComponentOverrideMap,
4 | Provider: import("react").FC<
5 | import("react").PropsWithChildren<{
6 | components: ComponentOverrideMap;
7 | }>
8 | >;
9 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/components/library/providerButton.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare type ProviderButtonProps = {
3 | providerName: string;
4 | displayName: string;
5 | logo?: JSX.Element;
6 | };
7 | export default function ProviderButton({ logo, providerName, displayName }: ProviderButtonProps): React.ReactElement;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/components/themes/signInAndUp/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { UserContext } from "../../../../../types";
3 | import type { SignInAndUpThemeProps } from "../../../types";
4 | declare const SignInAndUpThemeWrapper: React.FC<
5 | SignInAndUpThemeProps & {
6 | userContext?: UserContext;
7 | }
8 | >;
9 | export default SignInAndUpThemeWrapper;
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/components/themes/signInAndUpCallback/index.d.ts:
--------------------------------------------------------------------------------
1 | import type { NormalisedConfig } from "../../../types";
2 | export declare const SignInAndUpCallbackTheme: (props: {
3 | config: NormalisedConfig;
4 | }) => import("react/jsx-runtime").JSX.Element;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/thirdparty";
4 | export declare const getFunctionOverrides: (
5 | recipeId: string,
6 | onHandleEvent: RecipeOnHandleEventFunction
7 | ) => (originalImp: RecipeInterface) => RecipeInterface;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/activeDirectory.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class ActiveDirectory extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/bitbucket.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Bitbucket extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/boxySaml.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class BoxySAML extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/custom.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { CustomProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Custom extends Provider {
5 | private logo;
6 | constructor(config: CustomProviderConfig);
7 | getLogo: () => JSX.Element | undefined;
8 | static init(config: CustomProviderConfig): Provider;
9 | }
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/discord.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Discord extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/facebook.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Facebook extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/github.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Github extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/gitlab.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Gitlab extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/google.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Google extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/googleWorkspaces.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class GoogleWorkspaces extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/linkedIn.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class LinkedIn extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/thirdparty/providers/okta.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { BuiltInProviderConfig } from "./types";
3 | import Provider from ".";
4 | export default class Okta extends Provider {
5 | private static instance?;
6 | constructor(config?: BuiltInProviderConfig);
7 | getLogo: () => JSX.Element;
8 | static init(config?: BuiltInProviderConfig): Provider;
9 | static reset(): void;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/componentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { ComponentOverrideMap } from "./types";
3 | declare const useContext: () => ComponentOverrideMap,
4 | Provider: import("react").FC<
5 | import("react").PropsWithChildren<{
6 | components: ComponentOverrideMap;
7 | }>
8 | >;
9 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/blockedScreen.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const BlockedScreen: import("react").ComponentType<{
3 | nextRetryAt: number;
4 | onRetry: () => void;
5 | onSignOutClicked: () => void;
6 | }>;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/loadingScreen.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const LoadingScreen: import("react").ComponentType<{}>;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/retryButton.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | export declare const RetryButton: React.FC<{
3 | nextRetryAt: number;
4 | onClick: () => void;
5 | }>;
6 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpCodeForm.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | export declare const CodeForm: React.ComponentType<
4 | TOTPMFACommonProps & {
5 | onSuccess: () => void;
6 | clearError: () => void;
7 | onError: (err: string) => void;
8 | footer?: JSX.Element | undefined;
9 | }
10 | >;
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpCodeVerificationFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | export declare const CodeVerificationFooter: import("react").ComponentType<
4 | TOTPMFACommonProps & {
5 | onSignOutClicked: () => void;
6 | }
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpCodeVerificationHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | export declare const CodeVerificationHeader: import("react").ComponentType<
4 | TOTPMFACommonProps & {
5 | showBackButton: boolean;
6 | onBackButtonClicked: () => void;
7 | }
8 | >;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpDeviceInfoSection.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | import type { DeviceInfo } from "supertokens-web-js/recipe/totp";
4 | export declare const DeviceInfoSection: import("react").ComponentType<
5 | TOTPMFACommonProps & {
6 | deviceInfo: DeviceInfo;
7 | showSecret: boolean;
8 | onShowSecretClicked: () => void;
9 | }
10 | >;
11 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpDeviceSetupFooter.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | export declare const DeviceSetupFooter: import("react").ComponentType<
4 | TOTPMFACommonProps & {
5 | onSignOutClicked: () => void;
6 | }
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/mfa/totpDeviceSetupHeader.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { TOTPMFACommonProps } from "../../../types";
3 | export declare const DeviceSetupHeader: import("react").ComponentType<
4 | TOTPMFACommonProps & {
5 | showBackButton: boolean;
6 | onBackButtonClicked: () => void;
7 | }
8 | >;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const DEFAULT_TOTP_PATH = "/mfa/totp";
2 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/totp";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/totp/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, NormalisedConfig } from "./types";
2 | export declare function normaliseMultiFactorAuthFeature(config?: Config): NormalisedConfig;
3 | export declare function totpCodeValidate(value: any): Promise;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/userroles/index.d.ts:
--------------------------------------------------------------------------------
1 | import { PermissionClaim, UserRoleClaim } from "supertokens-web-js/recipe/userroles";
2 | import type { PrimitiveArrayClaim } from "supertokens-web-js/recipe/session";
3 | export default class UserRoleAPIWrapper {
4 | static PermissionClaim: PrimitiveArrayClaim;
5 | static UserRoleClaim: PrimitiveArrayClaim;
6 | }
7 | export { PermissionClaim, UserRoleClaim };
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/componentOverrideContext.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { ComponentOverrideMap } from "./types";
3 | declare const useContext: () => ComponentOverrideMap,
4 | Provider: import("react").FC<
5 | import("react").PropsWithChildren<{
6 | components: ComponentOverrideMap;
7 | }>
8 | >;
9 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
10 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/features/recoverAccountWithToken/index.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import type { RecoverAccountWithTokenProps } from "../../../types";
3 | export declare const RecoverAccountUsingToken: React.FC;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/features/sendRecoveryEmail/index.d.ts:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import type { SendRecoveryEmailFormProps } from "../../../types";
3 | export declare const SendRecoveryEmailForm: React.FC;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/continueWithPasskey/index.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { NormalisedConfig, ContinueWithPasskeyProps } from "../../../types";
3 | export declare const ContinueWithPasskeyWithOverride: React.ComponentType;
4 | export declare const ContinueWithPasskeyTheme: (
5 | props: {
6 | config: NormalisedConfig;
7 | } & ContinueWithPasskeyProps
8 | ) => import("react/jsx-runtime").JSX.Element;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/error/passkeyNotSupportedError.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const PasskeyNotSupportedError: import("react").ComponentType;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/recoverAccountWithToken/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { RecoverAccountWithTokenThemeProps } from "../../../types";
3 | declare function PasskeyRecoverAccountWithTokenTheme(props: RecoverAccountWithTokenThemeProps): JSX.Element;
4 | export default PasskeyRecoverAccountWithTokenTheme;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/recoverAccountWithToken/success.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const PasskeyRecoverAccountSuccess: () => JSX.Element;
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/sendRecoveryEmail/emailSent.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { EmailSentProps } from "../../../types";
3 | export declare const PasskeyRecoveryEmailSent: import("react").ComponentType;
4 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/sendRecoveryEmail/recoverAccountForm.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { RecoverFormProps } from "../../../types";
3 | export declare const WebauthnRecoverAccountForm: import("react").ComponentType<
4 | RecoverFormProps & {
5 | setError: React.Dispatch>;
6 | }
7 | >;
8 | export declare const WebauthnRecoverAccount: import("react").ComponentType;
9 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/signIn/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignInThemeProps } from "../../../types";
3 | declare function PasskeySignInTheme(props: SignInThemeProps): JSX.Element;
4 | export default PasskeySignInTheme;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/signUp/continueWithoutPasskey.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const ContinueWithoutPasskey: import("react").ComponentType<{
3 | onClick: () => void;
4 | }>;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/signUp/featureBlocks.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { FeatureBlockDetailProps } from "../../../types";
3 | export declare const PasskeyFeatureBlock: import("react").ComponentType;
4 | export declare const PasskeyFeatureBlockList: () => import("react/jsx-runtime").JSX.Element;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/signUp/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import type { SignUpThemeProps } from "../../../types";
3 | declare function PasskeySignUpTheme(props: SignUpThemeProps): JSX.Element;
4 | export default PasskeySignUpTheme;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/signUp/somethingWentWrong.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | export declare const SignUpSomethingWentWrong: import("react").ComponentType<{
3 | onClick: () => void;
4 | }>;
5 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/components/themes/themeBase.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { PropsWithChildren } from "react";
3 | export declare const ThemeBase: React.FC<
4 | PropsWithChildren<{
5 | userStyles: Array;
6 | }>
7 | >;
8 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/constants.d.ts:
--------------------------------------------------------------------------------
1 | export declare const DEFAULT_WEBAUTHN_RECOVERY_PATH = "/webauthn/recover";
2 | export declare const DEFAULT_WEBAUTHN_SEND_RECOVERY_EMAIL_PATH = "/webauthn/recover/send-email";
3 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/functionOverrides.d.ts:
--------------------------------------------------------------------------------
1 | import type { OnHandleEventContext } from "./types";
2 | import type { RecipeOnHandleEventFunction } from "../recipeModule/types";
3 | import type { RecipeInterface } from "supertokens-web-js/recipe/webauthn";
4 | export declare const getFunctionOverrides: (
5 | onHandleEvent: RecipeOnHandleEventFunction
6 | ) => (originalImp: RecipeInterface) => RecipeInterface;
7 |
--------------------------------------------------------------------------------
/lib/build/recipe/webauthn/utils.d.ts:
--------------------------------------------------------------------------------
1 | import type { Config, NormalisedConfig } from "./types";
2 | export declare function normaliseWebauthnConfig(config?: Config): NormalisedConfig;
3 |
--------------------------------------------------------------------------------
/lib/build/session-shared.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var genericComponentOverrideContext = require("./genericComponentOverrideContext.js");
4 |
5 | var _a = genericComponentOverrideContext.createGenericComponentsOverrideContext(),
6 | useContext = _a[0],
7 | Provider = _a[1];
8 |
9 | exports.Provider = Provider;
10 | exports.useContext = useContext;
11 |
--------------------------------------------------------------------------------
/lib/build/usercontext/index.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { UserContext } from "../types";
3 | export declare const UserContextContext: React.Context;
4 | export declare const useUserContext: () => UserContext;
5 | export declare const UserContextProvider: React.FC<{
6 | children: React.ReactNode;
7 | userContext?: UserContext;
8 | }>;
9 |
--------------------------------------------------------------------------------
/lib/build/usercontext/userContextWrapper.d.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import type { UserContext } from "../types";
3 | export default function UserContextWrapper(props: {
4 | children: React.ReactNode;
5 | userContext?: UserContext;
6 | }): JSX.Element;
7 |
--------------------------------------------------------------------------------
/lib/build/version.d.ts:
--------------------------------------------------------------------------------
1 | export declare const package_version = "0.49.1";
2 |
--------------------------------------------------------------------------------
/lib/ts/components/componentOverride/componentOverride.ts:
--------------------------------------------------------------------------------
1 | import type React from "react";
2 |
3 | export type ComponentOverrideProps> = React.ComponentProps & {
4 | DefaultComponent: TComponent;
5 | };
6 |
7 | export type ComponentOverride> = React.ComponentType<
8 | ComponentOverrideProps
9 | >;
10 |
--------------------------------------------------------------------------------
/lib/ts/components/componentOverride/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 |
3 | import type { ComponentOverride } from "./componentOverride";
4 |
5 | export type GenericComponentOverrideMap = {
6 | [K in keyof T]?: ComponentOverride;
7 | };
8 |
9 | type ContextType = GenericComponentOverrideMap | "IS_DEFAULT";
10 |
11 | export const ComponentOverrideContext = React.createContext>("IS_DEFAULT");
12 |
--------------------------------------------------------------------------------
/lib/ts/components/supertokensWrapper.tsx:
--------------------------------------------------------------------------------
1 | import SessionAuthWrapper from "../recipe/session/sessionAuth";
2 |
3 | import type { UserContext } from "../types";
4 | import type { PropsWithChildren } from "react";
5 |
6 | export const SuperTokensWrapper: React.FC<
7 | PropsWithChildren<{
8 | userContext?: UserContext;
9 | }>
10 | > = (props) => {
11 | return ;
12 | };
13 |
--------------------------------------------------------------------------------
/lib/ts/react-dom.d.ts:
--------------------------------------------------------------------------------
1 | declare module "react-dom";
2 |
--------------------------------------------------------------------------------
/lib/ts/recipe/authRecipe/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useAuthRecipeComponentOverrideContext, Provider as AuthRecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/emailpassword/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/emailverification/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/multifactorauth/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/multitenancy/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/multitenancy/components/themes/styles.css:
--------------------------------------------------------------------------------
1 | @import "../../../../styles/styles.css";
2 |
--------------------------------------------------------------------------------
/lib/ts/recipe/oauth2provider/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/oauth2provider/components/themes/translations.ts:
--------------------------------------------------------------------------------
1 | import { defaultTranslationsCommon } from "../../../../translation/translations";
2 |
3 | export const defaultTranslationsOAuth2Provider = {
4 | en: {
5 | ...defaultTranslationsCommon.en,
6 | LOGGING_OUT: "Logging Out",
7 | LOGOUT_CONFIRMATION: "Are you sure you want to log out?",
8 | LOGOUT: "LOG OUT",
9 | },
10 | };
11 |
--------------------------------------------------------------------------------
/lib/ts/recipe/passwordless/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/session/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/session/components/themes/translations.ts:
--------------------------------------------------------------------------------
1 | import { defaultTranslationsCommon } from "../../../../translation/translations";
2 |
3 | export const defaultTranslationsSession = {
4 | en: {
5 | ...defaultTranslationsCommon.en,
6 |
7 | ACCESS_DENIED: "Access denied",
8 | GO_BACK: "Go back",
9 | LOGOUT: "Log out",
10 | },
11 | };
12 |
--------------------------------------------------------------------------------
/lib/ts/recipe/session/sessionContext.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 |
3 | import type { SessionContextType } from "./types";
4 |
5 | const SessionContext = React.createContext({
6 | loading: true,
7 | isDefault: true,
8 | });
9 |
10 | export default SessionContext;
11 |
--------------------------------------------------------------------------------
/lib/ts/recipe/thirdparty/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/totp/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/lib/ts/recipe/userroles/index.ts:
--------------------------------------------------------------------------------
1 | import { PermissionClaim, UserRoleClaim } from "supertokens-web-js/recipe/userroles";
2 |
3 | import type { PrimitiveArrayClaim } from "supertokens-web-js/recipe/session";
4 |
5 | export default class UserRoleAPIWrapper {
6 | static PermissionClaim: PrimitiveArrayClaim = PermissionClaim;
7 | static UserRoleClaim: PrimitiveArrayClaim = UserRoleClaim;
8 | }
9 |
10 | export { PermissionClaim, UserRoleClaim };
11 |
--------------------------------------------------------------------------------
/lib/ts/recipe/webauthn/componentOverrideContext.tsx:
--------------------------------------------------------------------------------
1 | import { createGenericComponentsOverrideContext } from "../../components/componentOverride/genericComponentOverrideContext";
2 |
3 | import type { ComponentOverrideMap } from "./types";
4 |
5 | const [useContext, Provider] = createGenericComponentsOverrideContext();
6 |
7 | export { useContext as useRecipeComponentOverrideContext, Provider as RecipeComponentsOverrideContextProvider };
8 |
--------------------------------------------------------------------------------
/test/.env.example.js:
--------------------------------------------------------------------------------
1 | // Github
2 | process.env.GITHUB_EMAIL = "";
3 | process.env.GITHUB_PASSWORD = "";
4 |
5 | // Google
6 | process.env.GOOGLE_EMAIL = "";
7 | process.env.GOOGLE_PASSWORD = "";
8 |
9 | // Facebook
10 | process.env.FACEBOOK_EMAIL = "";
11 | process.env.FACEBOOK_PASSWORD = "";
12 |
13 | // Auth0
14 | process.env.AUTH0_EMAIL = "";
15 | process.env.AUTH0_PASSWORD = "";
16 |
--------------------------------------------------------------------------------
/test/end-to-end/passwordless.email.test.js:
--------------------------------------------------------------------------------
1 | import { getPasswordlessTestCases } from "./passwordless.test_gen";
2 |
3 | /*
4 | * Tests.
5 | */
6 | describe("SuperTokens Passwordless", function () {
7 | getPasswordlessTestCases({
8 | authRecipe: "passwordless",
9 | logId: "PASSWORDLESS",
10 | generalErrorRecipeName: "PASSWORDLESS",
11 | contactMethod: "EMAIL",
12 | });
13 | });
14 |
--------------------------------------------------------------------------------
/test/end-to-end/passwordless.email_or_phone.test.js:
--------------------------------------------------------------------------------
1 | import { getPasswordlessTestCases } from "./passwordless.test_gen";
2 |
3 | /*
4 | * Tests.
5 | */
6 | describe("SuperTokens Passwordless", function () {
7 | getPasswordlessTestCases({
8 | authRecipe: "passwordless",
9 | logId: "PASSWORDLESS",
10 | generalErrorRecipeName: "PASSWORDLESS",
11 | contactMethod: "EMAIL_OR_PHONE",
12 | });
13 | });
14 |
--------------------------------------------------------------------------------
/test/end-to-end/passwordless.phone.test.js:
--------------------------------------------------------------------------------
1 | import { getPasswordlessTestCases } from "./passwordless.test_gen";
2 |
3 | /*
4 | * Tests.
5 | */
6 | describe("SuperTokens Passwordless", function () {
7 | getPasswordlessTestCases({
8 | authRecipe: "passwordless",
9 | logId: "PASSWORDLESS",
10 | generalErrorRecipeName: "PASSWORDLESS",
11 | contactMethod: "PHONE",
12 | });
13 | });
14 |
--------------------------------------------------------------------------------
/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/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/server/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
--------------------------------------------------------------------------------
/test/server/webauthn/webauthn.wasm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/test/server/webauthn/webauthn.wasm
--------------------------------------------------------------------------------
/test/test.mocha.env.js:
--------------------------------------------------------------------------------
1 | try {
2 | require("./.env.js");
3 | } catch (e) {
4 | console.log(e);
5 | }
6 |
--------------------------------------------------------------------------------
/test/unit/mockStyle.js:
--------------------------------------------------------------------------------
1 | module.exports = "";
2 |
--------------------------------------------------------------------------------
/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
--------------------------------------------------------------------------------
/test/with-typescript/.env:
--------------------------------------------------------------------------------
1 | SKIP_PREFLIGHT_CHECK=true
--------------------------------------------------------------------------------
/test/with-typescript/.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 | .eslintcache
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/test/with-typescript/public/_redirects:
--------------------------------------------------------------------------------
1 | /* /index.html 200
--------------------------------------------------------------------------------
/test/with-typescript/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/test/with-typescript/public/favicon.ico
--------------------------------------------------------------------------------
/test/with-typescript/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/test/with-typescript/public/logo192.png
--------------------------------------------------------------------------------
/test/with-typescript/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/supertokens/supertokens-auth-react/92c7c1e5ae1952d64c78e96c8cedebfa81fefcab/test/with-typescript/public/logo512.png
--------------------------------------------------------------------------------
/test/with-typescript/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/test/with-typescript/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { render, screen } from "@testing-library/react";
3 | import App from "./App";
4 |
5 | test("renders learn react link", () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/test/with-typescript/src/Themes/Dark.ts:
--------------------------------------------------------------------------------
1 | const DarkTheme = {
2 | colors: {
3 | background: "#333",
4 | inputBackground: "#292929",
5 | textTitle: "white",
6 | textLabel: "white",
7 | textPrimary: "white",
8 | error: "#ad2e2e",
9 | textInput: "#a9a9a9",
10 | textLink: "#a9a9a9",
11 | },
12 | };
13 |
14 | export default DarkTheme;
15 |
--------------------------------------------------------------------------------
/test/with-typescript/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 |
--------------------------------------------------------------------------------
/test/with-typescript/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/test/with-typescript/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import "@testing-library/jest-dom";
6 |
--------------------------------------------------------------------------------
/webJsInterfaceSupported.json:
--------------------------------------------------------------------------------
1 | {
2 | "_comment": "contains the web js interface version that this package supports",
3 | "version": "0.11"
4 | }
5 |
--------------------------------------------------------------------------------