diff --git a/.github/actions/get-prerelease/action.yml b/.github/actions/get-prerelease/action.yml new file mode 100644 index 00000000..ce7acdc3 --- /dev/null +++ b/.github/actions/get-prerelease/action.yml @@ -0,0 +1,30 @@ +name: Return a boolean indicating if the version contains prerelease identifiers + +# +# Returns a simple true/false boolean indicating whether the version indicates it's a prerelease or not. +# +# TODO: Remove once the common repo is public. +# + +inputs: + version: + required: true + +outputs: + prerelease: + value: ${{ steps.get_prerelease.outputs.PRERELEASE }} + +runs: + using: composite + + steps: + - id: get_prerelease + shell: bash + run: | + if [[ "${VERSION}" == *"beta"* || "${VERSION}" == *"alpha"* ]]; then + echo "PRERELEASE=true" >> $GITHUB_OUTPUT + else + echo "PRERELEASE=false" >> $GITHUB_OUTPUT + fi + env: + VERSION: ${{ inputs.version }} diff --git a/.github/actions/get-release-notes/action.yml b/.github/actions/get-release-notes/action.yml new file mode 100644 index 00000000..4c3219b6 --- /dev/null +++ b/.github/actions/get-release-notes/action.yml @@ -0,0 +1,42 @@ +name: Return the release notes extracted from the body of the PR associated with the release. + +# +# Returns the release notes from the content of a pull request linked to a release branch. It expects the branch name to be in the format release/vX.Y.Z, release/X.Y.Z, release/vX.Y.Z-beta.N. etc. +# +# TODO: Remove once the common repo is public. +# +inputs: + version: + required: true + repo_name: + required: false + repo_owner: + required: true + token: + required: true + +outputs: + release-notes: + value: ${{ steps.get_release_notes.outputs.RELEASE_NOTES }} + +runs: + using: composite + + steps: + - uses: actions/github-script@v7 + id: get_release_notes + with: + result-encoding: string + script: | + const { data: pulls } = await github.rest.pulls.list({ + owner: process.env.REPO_OWNER, + repo: process.env.REPO_NAME, + state: 'all', + head: `${process.env.REPO_OWNER}:release/${process.env.VERSION}`, + }); + core.setOutput('RELEASE_NOTES', pulls[0].body); + env: + GITHUB_TOKEN: ${{ inputs.token }} + REPO_OWNER: ${{ inputs.repo_owner }} + REPO_NAME: ${{ inputs.repo_name }} + VERSION: ${{ inputs.version }} \ No newline at end of file diff --git a/.github/actions/get-version/action.yml b/.github/actions/get-version/action.yml new file mode 100644 index 00000000..9440ec92 --- /dev/null +++ b/.github/actions/get-version/action.yml @@ -0,0 +1,21 @@ +name: Return the version extracted from the branch name + +# +# Returns the version from the .version file. +# +# TODO: Remove once the common repo is public. +# + +outputs: + version: + value: ${{ steps.get_version.outputs.VERSION }} + +runs: + using: composite + + steps: + - id: get_version + shell: bash + run: | + VERSION=$(head -1 .version) + echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT diff --git a/.github/actions/npm-publish/action.yml b/.github/actions/npm-publish/action.yml new file mode 100644 index 00000000..45c87d19 --- /dev/null +++ b/.github/actions/npm-publish/action.yml @@ -0,0 +1,52 @@ +name: Publish release to npm + +inputs: + node-version: + required: true + npm-token: + required: true + version: + required: true + require-build: + default: true + release-directory: + default: './' + +runs: + using: composite + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: ${{ inputs.node-version }} + cache: 'npm' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + shell: bash + run: npm ci --include=dev + + - name: Build package + if: inputs.require-build == 'true' + shell: bash + run: npm run build + + - name: Publish release to NPM + shell: bash + working-directory: ${{ inputs.release-directory }} + run: | + if [[ "${VERSION}" == *"beta"* ]]; then + TAG="beta" + elif [[ "${VERSION}" == *"alpha"* ]]; then + TAG="alpha" + else + TAG="latest" + fi + npm publish --provenance --tag $TAG + env: + NODE_AUTH_TOKEN: ${{ inputs.npm-token }} + VERSION: ${{ inputs.version }} \ No newline at end of file diff --git a/.github/actions/release-create/action.yml b/.github/actions/release-create/action.yml new file mode 100644 index 00000000..6a2bf804 --- /dev/null +++ b/.github/actions/release-create/action.yml @@ -0,0 +1,47 @@ +name: Create a GitHub release + +# +# Creates a GitHub release with the given version. +# +# TODO: Remove once the common repo is public. +# + +inputs: + token: + required: true + files: + required: false + name: + required: true + body: + required: true + tag: + required: true + commit: + required: true + draft: + default: false + required: false + prerelease: + default: false + required: false + fail_on_unmatched_files: + default: true + required: false + +runs: + using: composite + + steps: + - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 + with: + body: ${{ inputs.body }} + name: ${{ inputs.name }} + tag_name: ${{ inputs.tag }} + target_commitish: ${{ inputs.commit }} + draft: ${{ inputs.draft }} + prerelease: ${{ inputs.prerelease }} + fail_on_unmatched_files: ${{ inputs.fail_on_unmatched_files }} + files: ${{ inputs.files }} + env: + GITHUB_TOKEN: ${{ inputs.token }} diff --git a/.github/actions/tag-exists/action.yml b/.github/actions/tag-exists/action.yml new file mode 100644 index 00000000..b5fbdb73 --- /dev/null +++ b/.github/actions/tag-exists/action.yml @@ -0,0 +1,36 @@ +name: Return a boolean indicating if a tag already exists for the repository + +# +# Returns a simple true/false boolean indicating whether the tag exists or not. +# +# TODO: Remove once the common repo is public. +# + +inputs: + token: + required: true + tag: + required: true + +outputs: + exists: + description: 'Whether the tag exists or not' + value: ${{ steps.tag-exists.outputs.EXISTS }} + +runs: + using: composite + + steps: + - id: tag-exists + shell: bash + run: | + GET_API_URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/git/ref/tags/${TAG_NAME}" + http_status_code=$(curl -LI $GET_API_URL -o /dev/null -w '%{http_code}\n' -s -H "Authorization: token ${GITHUB_TOKEN}") + if [ "$http_status_code" -ne "404" ] ; then + echo "EXISTS=true" >> $GITHUB_OUTPUT + else + echo "EXISTS=false" >> $GITHUB_OUTPUT + fi + env: + TAG_NAME: ${{ inputs.tag }} + GITHUB_TOKEN: ${{ inputs.token }} diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 1264f1c6..50c5c543 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -40,15 +40,15 @@ jobs: uses: actions/checkout@v4 - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: languages: ${{ matrix.language }} queries: +security-and-quality - name: Autobuild - uses: github/codeql-action/autobuild@v2 + uses: github/codeql-action/autobuild@v3 - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3 with: category: '/language:${{ matrix.language }}' diff --git a/.github/workflows/npm-release.yml b/.github/workflows/npm-release.yml new file mode 100644 index 00000000..1595357d --- /dev/null +++ b/.github/workflows/npm-release.yml @@ -0,0 +1,80 @@ +name: Create npm and GitHub Release + +on: + workflow_call: + inputs: + node-version: + required: true + type: string + require-build: + default: true + type: string + release-directory: + default: './' + type: string + secrets: + github-token: + required: true + npm-token: + required: true + +jobs: + release: + if: github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/')) + runs-on: ubuntu-latest + environment: release + + steps: + # Checkout the code + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + # Get the version from the branch name + - id: get_version + uses: ./get-version + + # Get the prerelease flag from the branch name + - id: get_prerelease + uses: ./get-prerelease + with: + version: ${{ steps.get_version.outputs.version }} + + # Get the release notes + - id: get_release_notes + uses: ./get-release-notes + with: + token: ${{ secrets.github-token }} + version: ${{ steps.get_version.outputs.version }} + repo_owner: ${{ github.repository_owner }} + repo_name: ${{ github.event.repository.name }} + + # Check if the tag already exists + - id: tag_exists + uses: ./tag-exists + with: + tag: ${{ steps.get_version.outputs.version }} + token: ${{ secrets.github-token }} + + # If the tag already exists, exit with an error + - if: steps.tag_exists.outputs.exists == 'true' + run: exit 1 + + # Publish the release to our package manager + - uses: ./npm-publish + with: + node-version: ${{ inputs.node-version }} + require-build: ${{ inputs.require-build }} + version: ${{ steps.get_version.outputs.version }} + npm-token: ${{ secrets.npm-token }} + release-directory: ${{ inputs.release-directory }} + + # Create a release for the tag + - uses: ./release-create + with: + token: ${{ secrets.github-token }} + name: ${{ steps.get_version.outputs.version }} + body: ${{ steps.get_release_notes.outputs.release-notes }} + tag: ${{ steps.get_version.outputs.version }} + commit: ${{ github.sha }} + prerelease: ${{ steps.get_prerelease.outputs.prerelease }} \ No newline at end of file diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml deleted file mode 100644 index ed1914d8..00000000 --- a/.github/workflows/publish.yml +++ /dev/null @@ -1,114 +0,0 @@ -name: Publish Release - -on: - workflow_dispatch: - inputs: - branch: - description: The branch to release from - required: true - default: main - version: - description: The version being published. This should be a valid semver version, such as `1.0.0`. - required: true - default: '' - type: string - tag: - description: The tag being published. This should be latest, beta or any tag you wish to support. - required: true - default: latest - type: string - dry-run: - type: boolean - description: Perform a publishing dry run. This will not publish the release, but will validate the release and log the commands that would be run. - default: false - -permissions: - contents: read - id-token: write # For publishing to NPM with provenance. Allows developers to run `npm audit signatures` and verify release signature of SDK. @see https://github.blog/2023-04-19-introducing-npm-package-provenance/ - -env: - NODE_VERSION: 18 - NODE_ENV: development - -jobs: - configure: - name: Validate input parameters - runs-on: ubuntu-latest - - outputs: - vtag: ${{ steps.vtag.outputs.vtag }} # The fully constructed release tag to use for publishing - dry-run: ${{ steps.dry-run.outputs.dry-run }} # The dry-run flag to use for publishing, if applicable - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 0 - ref: ${{ github.event.inputs.branch }} - - # Configure for dry-run, if applicable. @see https://docs.npmjs.com/cli/v9/commands/npm-publish#dry-run - - id: dry-run - if: ${{ github.event.inputs.dry-run == 'true' }} - name: Configure for `--dry-run` - run: | - echo "dry-run=--dry-run" >> $GITHUB_ENV - echo "dry-run=--dry-run" >> $GITHUB_OUTPUT - - # Build the tag string from package.json version and release suffix. Produces something like `1.0.0-beta.1` for a beta, or `1.0.0` for a stable release. - - name: Build tag - id: vtag - run: | - PACKAGE_VERSION="${{ github.event.inputs.version }}" - echo "vtag=${PACKAGE_VERSION}" >> $GITHUB_ENV - echo "vtag=${PACKAGE_VERSION}" >> $GITHUB_OUTPUT - - # Ensure tag does not already exist. - - name: Validate version - uses: actions/github-script@v6 - env: - vtag: ${{ env.vtag }} - with: - script: | - const releaseMeta = github.rest.repos.listReleases.endpoint.merge({ - owner: context.repo.owner, - repo: context.repo.repo, - }); - - const releases = await github.paginate(releaseMeta); - - for (const release of releases) { - if (release.name === process.env.vtag) { - throw new Error(`${process.env.vtag} already exists`); - } - } - - console.log(`${process.env.vtag} does not exist. Proceeding with release.`) - - publish-npm: - needs: configure - - name: Publish to NPM - runs-on: ubuntu-latest - environment: release - - steps: - - name: Checkout code - uses: actions/checkout@v4 - with: - fetch-depth: 0 - ref: ${{ github.event.inputs.branch }} - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: ${{ env.NODE_VERSION }} - cache: npm - registry-url: 'https://registry.npmjs.org' - - - name: Install dependencies - run: npm ci - - - name: Publish release to NPM - run: npm publish --provenance --tag ${{ github.event.inputs.tag }} ${{ needs.configure.outputs.dry-run }} - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..592a3e34 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,25 @@ +name: Create npm and GitHub Release + +on: + pull_request: + types: + - closed + workflow_dispatch: + +permissions: + contents: write + id-token: write # For publishing to npm using --provenance + +### TODO: Replace instances of './.github/workflows/' w/ `auth0/dx-sdk-actions/workflows/` and append `@latest` after the common `dx-sdk-actions` repo is made public. +### TODO: Also remove `get-prerelease`, `get-release-notes`, `get-version`, `npm-publish`, `release-create`, and `tag-exists` actions from this repo's .github/actions folder once the repo is public. +### TODO: Also remove `npm-release` workflow from this repo's .github/workflows folder once the repo is public. + +jobs: + release: + uses: ./.github/workflows/npm-release.yml + with: + node-version: 18 + require-build: true + secrets: + npm-token: ${{ secrets.NPM_TOKEN }} + github-token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5fa51fbc..6b565ef3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -38,7 +38,7 @@ jobs: node: ${{ env.NODE_VERSION }} - name: Save build artifacts - uses: actions/cache/save@v3 + uses: actions/cache/save@v4 with: path: . key: ${{ env.CACHE_KEY }} @@ -60,7 +60,7 @@ jobs: cache: npm - name: Restore build artifacts - uses: actions/cache/restore@v3 + uses: actions/cache/restore@v4 with: path: . key: ${{ env.CACHE_KEY }} @@ -69,4 +69,4 @@ jobs: run: npm run test - name: Upload coverage - uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@3.1.4 + uses: codecov/codecov-action@4fe8c5f003fae66aa5ebb77cfd3e7bfbbda0b6b0 # pin@3.1.5 diff --git a/.shiprc b/.shiprc index eb59c716..3c9c45c6 100644 --- a/.shiprc +++ b/.shiprc @@ -1,3 +1,6 @@ { + "files": { + ".version": [] + }, "postbump": "npm run docs" -} +} \ No newline at end of file diff --git a/.version b/.version new file mode 100644 index 00000000..15274788 --- /dev/null +++ b/.version @@ -0,0 +1 @@ +v2.2.4 \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 7830d9bf..899a2fbf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## [v2.2.4](https://github.com/auth0/auth0-react/tree/v2.2.4) (2023-12-11) +[Full Changelog](https://github.com/auth0/auth0-react/compare/v2.2.3...v2.2.4) + +**Changed** +- Update Auth0-SPA-JS to latest version [\#690](https://github.com/auth0/auth0-react/pull/690) ([frederikprijck](https://github.com/frederikprijck)) + ## [v2.2.3](https://github.com/auth0/auth0-react/tree/v2.2.3) (2023-11-02) [Full Changelog](https://github.com/auth0/auth0-react/compare/v2.2.2...v2.2.3) diff --git a/docs/assets/main.js b/docs/assets/main.js index f7c83669..d0aa8d5f 100644 --- a/docs/assets/main.js +++ b/docs/assets/main.js @@ -1,7 +1,8 @@ "use strict"; -"use strict";(()=>{var Qe=Object.create;var ae=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Ce=Object.getOwnPropertyNames;var Oe=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var _e=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Me=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ce(e))!Re.call(t,i)&&i!==n&&ae(t,i,{get:()=>e[i],enumerable:!(r=Pe(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Qe(Oe(t)):{},Me(e||!t||!t.__esModule?ae(n,"default",{value:t,enumerable:!0}):n,t));var de=_e((ce,he)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var h=t.utils.clone(n)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(r.slice(a,o),h))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ou?h+=2:a==u&&(n+=r[l+1]*i[h+1],l+=2,h+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),m=s.str.charAt(1),v;m in s.node.edges?v=s.node.edges[m]:(v=new t.TokenSet,s.node.edges[m]=v),s.str.length==1&&(v.final=!0),i.push({node:v,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof ce=="object"?he.exports=n():e.lunr=n()}(this,function(){return t})})()});var le=[];function B(t,e){le.push({selector:e,constructor:t})}var Y=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureFocusedElementVisible(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){le.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureFocusedElementVisible(){this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null);let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(n&&n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let r=document.createElement("p");r.classList.add("warning"),r.textContent="This member is normally hidden due to your filter settings.",n.prepend(r)}}};var I=class{constructor(e){this.el=e.el,this.app=e.app}};var J=class{constructor(){this.listeners={}}addEventListener(e,n){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(n)}removeEventListener(e,n){if(!(e in this.listeners))return;let r=this.listeners[e];for(let i=0,s=r.length;i{let n=Date.now();return(...r)=>{n+e-Date.now()<0&&(t(...r),n=Date.now())}};var re=class extends J{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.navigation=document.querySelector(".col-menu"),window.addEventListener("scroll",ne(()=>this.onScroll(),10)),window.addEventListener("resize",ne(()=>this.onResize(),10)),this.searchInput=document.querySelector("#tsd-search input"),this.searchInput&&this.searchInput.addEventListener("focus",()=>{this.hideShowToolbar()}),this.onResize(),this.onScroll()}triggerResize(){let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onScroll(){this.scrollTop=window.scrollY||0;let n=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(n),this.hideShowToolbar()}hideShowToolbar(){let n=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0||!!this.searchInput&&this.searchInput===document.activeElement,n!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.navigation?.classList.toggle("col-menu--hide")),this.lastY=this.scrollTop}},R=re;R.instance=new re;var X=class extends I{constructor(n){super(n);this.anchors=[];this.index=-1;R.instance.addEventListener("resize",()=>this.onResize()),R.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substring(0,n.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let i=r.href;if(i.indexOf("#")==-1||i.substring(0,n.length)!=n)return;let s=i.substring(i.indexOf("#")+1),o=document.querySelector("a.tsd-anchor[name="+s+"]"),a=r.parentNode;!o||!a||this.anchors.push({link:a,anchor:o,position:0})}),this.onResize()}onResize(){let n;for(let i=0,s=this.anchors.length;ii.position-s.position);let r=new CustomEvent("scroll",{detail:{scrollTop:R.instance.scrollTop}});this.onScroll(r)}onScroll(n){let r=n.detail.scrollTop+5,i=this.anchors,s=i.length-1,o=this.index;for(;o>-1&&i[o].position>r;)o-=1;for(;o-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=o,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var ue=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var me=De(de());function ve(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let n=document.querySelector("#tsd-search input"),r=document.querySelector("#tsd-search .results");if(!n||!r)throw new Error("The input field or the result list wrapper was not found");let i=!1;r.addEventListener("mousedown",()=>i=!0),r.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),n.addEventListener("focus",()=>t.classList.add("has-focus")),n.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Fe(t,r,n,s)}function Fe(t,e,n,r){n.addEventListener("input",ue(()=>{He(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ve(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?pe(e,-1):s.key==="ArrowDown"?pe(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ae(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=me.Index.load(window.searchData.index))}function He(t,e,n,r){if(Ae(r,t),!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s=i?r.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${fe(u.parent,i)}.${l}`);let h=document.createElement("li");h.classList.value=u.classes??"";let m=document.createElement("a");m.href=r.base+u.url,m.innerHTML=l,h.append(m),e.appendChild(h)}}function pe(t,e){let n=t.querySelector(".current");if(!n)n=t.querySelector(e==1?"li:first-child":"li:last-child"),n&&n.classList.add("current");else{let r=n;if(e===1)do r=r.nextElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);else do r=r.previousElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);r&&(n.classList.remove("current"),r.classList.add("current"))}}function Ve(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),e.blur()}}function fe(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(ie(t.substring(s,o)),`${ie(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(ie(t.substring(s))),i.join("")}var Ne={"&":"&","<":"<",">":">","'":"'",'"':"""};function ie(t){return t.replace(/[&<>"'"]/g,e=>Ne[e])}var F="mousedown",ye="mousemove",j="mouseup",Z={x:0,y:0},ge=!1,se=!1,Be=!1,A=!1,xe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(xe?"is-mobile":"not-mobile");xe&&"ontouchstart"in document.documentElement&&(Be=!0,F="touchstart",ye="touchmove",j="touchend");document.addEventListener(F,t=>{se=!0,A=!1;let e=F=="touchstart"?t.targetTouches[0]:t;Z.y=e.pageY||0,Z.x=e.pageX||0});document.addEventListener(ye,t=>{if(se&&!A){let e=F=="touchstart"?t.targetTouches[0]:t,n=Z.x-(e.pageX||0),r=Z.y-(e.pageY||0);A=Math.sqrt(n*n+r*r)>10}});document.addEventListener(j,()=>{se=!1});document.addEventListener("click",t=>{ge&&(t.preventDefault(),t.stopImmediatePropagation(),ge=!1)});var K=class extends I{constructor(n){super(n);this.className=this.el.dataset.toggle||"",this.el.addEventListener(j,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(F,r=>this.onDocumentPointerDown(r)),document.addEventListener(j,r=>this.onDocumentPointerUp(r))}setActive(n){if(this.active==n)return;this.active=n,document.documentElement.classList.toggle("has-"+this.className,n),this.el.classList.toggle("active",n);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(n){A||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!A&&this.active&&n.target.closest(".col-menu")){let r=n.target.closest("a");if(r){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),r.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var oe;try{oe=localStorage}catch{oe={getItem(){return null},setItem(){}}}var Q=oe;var Le=document.head.appendChild(document.createElement("style"));Le.dataset.for="filters";var ee=class extends I{constructor(n){super(n);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),Le.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } -`}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.checked}setLocalStorage(n){Q.setItem(this.key,n.toString()),this.value=n,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(n=>{n.style.display="block";let r=Array.from(n.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);n.style.display=r?"none":"block"})}};var te=class extends I{constructor(n){super(n);this.calculateHeights(),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.textContent.replace(/\s+/g,"-").toLowerCase()}`,this.setLocalStorage(this.fromLocalStorage(),!0),this.summary.addEventListener("click",r=>this.toggleVisibility(r)),this.icon.style.transform=this.getIconRotation()}getIconRotation(n=this.el.open){return`rotate(${n?0:-90}deg)`}calculateHeights(){let n=this.el.open,{position:r,left:i}=this.el.style;this.el.style.position="fixed",this.el.style.left="-9999px",this.el.open=!0,this.expandedHeight=this.el.offsetHeight+"px",this.el.open=!1,this.collapsedHeight=this.el.offsetHeight+"px",this.el.open=n,this.el.style.height=n?this.expandedHeight:this.collapsedHeight,this.el.style.position=r,this.el.style.left=i}toggleVisibility(n){n.preventDefault(),this.el.style.overflow="hidden",this.el.open?this.collapse():this.expand()}expand(n=!0){this.el.open=!0,this.animate(this.collapsedHeight,this.expandedHeight,{opening:!0,duration:n?300:0})}collapse(n=!0){this.animate(this.expandedHeight,this.collapsedHeight,{opening:!1,duration:n?300:0})}animate(n,r,{opening:i,duration:s=300}){if(this.animation)return;let o={duration:s,easing:"ease"};this.animation=this.el.animate({height:[n,r]},o),this.icon.animate({transform:[this.icon.style.transform||this.getIconRotation(!i),this.getIconRotation(i)]},o).addEventListener("finish",()=>{this.icon.style.transform=this.getIconRotation(i)}),this.animation.addEventListener("finish",()=>this.animationEnd(i))}animationEnd(n){this.el.open=n,this.animation=void 0,this.el.style.height="auto",this.el.style.overflow="visible",this.setLocalStorage(n)}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.open}setLocalStorage(n,r=!1){this.fromLocalStorage()===n&&!r||(Q.setItem(this.key,n.toString()),this.el.open=n,this.handleValueChange(r))}handleValueChange(n=!1){this.fromLocalStorage()===this.el.open&&!n||(this.fromLocalStorage()?this.expand(!1):this.collapse(!1))}};function be(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,Ee(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),Ee(t.value)})}function Ee(t){document.documentElement.dataset.theme=t}ve();B(X,".menu-highlight");B(K,"a[data-toggle]");B(te,".tsd-index-accordion");B(ee,".tsd-filter-item input[type=checkbox]");var we=document.getElementById("theme");we&&be(we);var je=new Y;Object.defineProperty(window,"app",{value:je});})(); +"use strict";(()=>{var Pe=Object.create;var ne=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var Me=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oe(e))!Re.call(t,i)&&i!==n&&ne(t,i,{get:()=>e[i],enumerable:!(r=Ie(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Pe(_e(t)):{},Fe(e||!t||!t.__esModule?ne(n,"default",{value:t,enumerable:!0}):n,t));var ae=Me((se,oe)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(n+=r[u+1]*i[d+1],u+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),v=s.str.charAt(1),f;v in s.node.edges?f=s.node.edges[v]:(f=new t.TokenSet,s.node.edges[v]=f),s.str.length==1&&(f.final=!0),i.push({node:f,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof se=="object"?oe.exports=n():e.lunr=n()}(this,function(){return t})})()});var re=[];function G(t,e){re.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){re.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(n&&n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let r=document.createElement("p");r.classList.add("warning"),r.textContent="This member is normally hidden due to your filter settings.",n.prepend(r)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var de=De(ae());async function le(t,e){if(!window.searchData)return;let n=await fetch(window.searchData),r=new Blob([await n.arrayBuffer()]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();t.data=i,t.index=de.Index.load(i.index),e.classList.remove("loading"),e.classList.add("ready")}function he(){let t=document.getElementById("tsd-search");if(!t)return;let e={base:t.dataset.base+"/"},n=document.getElementById("tsd-search-script");t.classList.add("loading"),n&&(n.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),n.addEventListener("load",()=>{le(e,t)}),le(e,t));let r=document.querySelector("#tsd-search input"),i=document.querySelector("#tsd-search .results");if(!r||!i)throw new Error("The input field or the result list wrapper was not found");let s=!1;i.addEventListener("mousedown",()=>s=!0),i.addEventListener("mouseup",()=>{s=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{s||(s=!1,t.classList.remove("has-focus"))}),Ae(t,i,r,e)}function Ae(t,e,n,r){n.addEventListener("input",ie(()=>{Ne(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ve(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ne(t,e,n,r){if(!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s;if(i){let o=i.split(" ").map(a=>a.length?`*${a}*`:"").join(" ");s=r.index.search(o)}else s=[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o`,d=ce(l.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(d+=` (score: ${s[o].score.toFixed(2)})`),l.parent&&(d=` + ${ce(l.parent,i)}.${d}`);let v=document.createElement("li");v.classList.value=l.classes??"";let f=document.createElement("a");f.href=r.base+l.url,f.innerHTML=u+d,v.append(f),e.appendChild(v)}}function ue(t,e){let n=t.querySelector(".current");if(!n)n=t.querySelector(e==1?"li:first-child":"li:last-child"),n&&n.classList.add("current");else{let r=n;if(e===1)do r=r.nextElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);else do r=r.previousElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);r&&(n.classList.remove("current"),r.classList.add("current"))}}function Ve(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),e.blur()}}function ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(K(t.substring(s))),i.join("")}var Be={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Be[e])}var C=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",pe="mousemove",B="mouseup",J={x:0,y:0},fe=!1,ee=!1,He=!1,D=!1,me=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(me?"is-mobile":"not-mobile");me&&"ontouchstart"in document.documentElement&&(He=!0,F="touchstart",pe="touchmove",B="touchend");document.addEventListener(F,t=>{ee=!0,D=!1;let e=F=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(pe,t=>{if(ee&&!D){let e=F=="touchstart"?t.targetTouches[0]:t,n=J.x-(e.pageX||0),r=J.y-(e.pageY||0);D=Math.sqrt(n*n+r*r)>10}});document.addEventListener(B,()=>{ee=!1});document.addEventListener("click",t=>{fe&&(t.preventDefault(),t.stopImmediatePropagation(),fe=!1)});var X=class extends C{constructor(n){super(n);this.className=this.el.dataset.toggle||"",this.el.addEventListener(B,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(F,r=>this.onDocumentPointerDown(r)),document.addEventListener(B,r=>this.onDocumentPointerUp(r))}setActive(n){if(this.active==n)return;this.active=n,document.documentElement.classList.toggle("has-"+this.className,n),this.el.classList.toggle("active",n);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(n){D||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!D&&this.active&&n.target.closest(".col-sidebar")){let r=n.target.closest("a");if(r){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),r.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var ve=document.head.appendChild(document.createElement("style"));ve.dataset.for="filters";var Y=class extends C{constructor(n){super(n);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),ve.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.checked}setLocalStorage(n){Q.setItem(this.key,n.toString()),this.value=n,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(n=>{n.style.display="block";let r=Array.from(n.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);n.style.display=r?"none":"block"})}};var Z=class extends C{constructor(n){super(n);this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let r=Q.getItem(this.key);this.el.open=r?r==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update());let i=this.summary.querySelector("a");i&&i.addEventListener("click",()=>{location.assign(i.href)}),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ge(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}var Le;function be(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",xe),xe())}async function xe(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let n=await(await fetch(window.navigationData)).arrayBuffer(),r=new Blob([n]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();Le=t.dataset.base+"/",t.innerHTML="";for(let s of i)we(s,t,[]);window.app.createComponents(t),window.app.ensureActivePageVisible()}function we(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-index-accordion`:"tsd-index-accordion",s.dataset.key=i.join("$");let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.innerHTML='',Ee(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let l=a.appendChild(document.createElement("ul"));l.className="tsd-nested-navigation";for(let u of t.children)we(u,l,i)}else Ee(t,r,t.class)}function Ee(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));r.href=Le+t.path,n&&(r.className=n),location.href===r.href&&r.classList.add("current"),t.kind&&(r.innerHTML=``),r.appendChild(document.createElement("span")).textContent=t.text}else e.appendChild(document.createElement("span")).textContent=t.text}G(X,"a[data-toggle]");G(Z,".tsd-index-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var Se=document.getElementById("tsd-theme");Se&&ge(Se);var je=new U;Object.defineProperty(window,"app",{value:je});he();be();})(); /*! Bundled license information: lunr/lunr.js: diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js new file mode 100644 index 00000000..92f42e54 --- /dev/null +++ b/docs/assets/navigation.js @@ -0,0 +1 @@ +window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAE6WWXW/TMBSG/0uuO9gKG7A7VCFUadOqdhMXiAvjnDTWXDvYzqAg/jt2Qhon/kjk3lRqzuvnPbGPz8nXP5mCXyq7zT7WqgSmCEaKcPZJCC6yRVYhVeogpkhKkK89olelOlCtfCYsz26vlu8XrVqvUjK/IPJC80EwRLO/i5PbZ2AgCA7Y2NE0/prdw4GL4wrhElyDQTjN4Y5jRHeKC7SHgIsjSXO6L9AWftREQB7Yr7Ei0YdISdh+C4UAWT7yZwiVQUiZ5vtgqirg1McctkXY8KquVohhoDS4SR5RWr4N6JEcgNcq5mVL0pziJufznyR4uOZpGs8c1uWKM/N3rX9FgbB1L0j3qG0kjnJoury+GaM3gr+QHMRDZdqPDJNHwikwF+R309E2SKBDmDvSOdiZrU81N2ZHqG6l9Bh7mYD2POMvRJVNgc5xHovTrNejDmkZrT2dcTY2b3L0c9tYGviO7/XNiu3PQBGrr1b4JOg0rRelZd12OM4Kso+ZubIz7HTmhE262ao0sy3kerxhNennE8bOxxR41zMqP3IomQPrv5G6uRxLeXJVtH9V1U4hZV0udaxMv/r/fLT28sO7q+ultb65fuZLxTiNIYOglzTr8BoM+k6dJE+BdLY9SXr8CxLEcIeTZujyZhmaLz2nqBlujmA4V4agm7cWqJbQSH2MLhZZ/rOrNd/6U3AGwC2mGNFVOxbf/gHje0dNLAwAAA==" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index da03592c..f31f0e20 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = JSON.parse("{\"kinds\":{\"32\":\"Variable\",\"64\":\"Function\",\"128\":\"Class\",\"256\":\"Interface\",\"512\":\"Constructor\",\"1024\":\"Property\",\"65536\":\"Type literal\",\"4194304\":\"Type alias\"},\"rows\":[{\"kind\":64,\"name\":\"Auth0Provider\",\"url\":\"functions/Auth0Provider.html\",\"classes\":\"tsd-kind-function\"},{\"kind\":256,\"name\":\"Auth0ProviderOptions\",\"url\":\"interfaces/Auth0ProviderOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":1024,\"name\":\"children\",\"url\":\"interfaces/Auth0ProviderOptions.html#children\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ProviderOptions\"},{\"kind\":1024,\"name\":\"onRedirectCallback\",\"url\":\"interfaces/Auth0ProviderOptions.html#onRedirectCallback\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ProviderOptions\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ProviderOptions.html#onRedirectCallback.__type-4\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ProviderOptions.onRedirectCallback\"},{\"kind\":1024,\"name\":\"skipRedirectCallback\",\"url\":\"interfaces/Auth0ProviderOptions.html#skipRedirectCallback\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ProviderOptions\"},{\"kind\":1024,\"name\":\"context\",\"url\":\"interfaces/Auth0ProviderOptions.html#context\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ProviderOptions\"},{\"kind\":4194304,\"name\":\"AppState\",\"url\":\"types/AppState.html\",\"classes\":\"tsd-kind-type-alias\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/AppState.html#__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-type-alias\",\"parent\":\"AppState\"},{\"kind\":1024,\"name\":\"returnTo\",\"url\":\"types/AppState.html#__type.returnTo\",\"classes\":\"tsd-kind-property tsd-parent-kind-type-literal\",\"parent\":\"AppState.__type\"},{\"kind\":64,\"name\":\"useAuth0\",\"url\":\"functions/useAuth0.html\",\"classes\":\"tsd-kind-function\"},{\"kind\":64,\"name\":\"withAuth0\",\"url\":\"functions/withAuth0.html\",\"classes\":\"tsd-kind-function\"},{\"kind\":256,\"name\":\"WithAuth0Props\",\"url\":\"interfaces/WithAuth0Props.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":1024,\"name\":\"auth0\",\"url\":\"interfaces/WithAuth0Props.html#auth0\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuth0Props\"},{\"kind\":64,\"name\":\"withAuthenticationRequired\",\"url\":\"functions/withAuthenticationRequired.html\",\"classes\":\"tsd-kind-function\"},{\"kind\":256,\"name\":\"WithAuthenticationRequiredOptions\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":1024,\"name\":\"returnTo\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#returnTo\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuthenticationRequiredOptions\"},{\"kind\":1024,\"name\":\"onRedirecting\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#onRedirecting\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuthenticationRequiredOptions\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#onRedirecting.__type-2\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"WithAuthenticationRequiredOptions.onRedirecting\"},{\"kind\":1024,\"name\":\"onBeforeAuthentication\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#onBeforeAuthentication\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuthenticationRequiredOptions\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#onBeforeAuthentication.__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"WithAuthenticationRequiredOptions.onBeforeAuthentication\"},{\"kind\":1024,\"name\":\"loginOptions\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#loginOptions\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuthenticationRequiredOptions\"},{\"kind\":1024,\"name\":\"context\",\"url\":\"interfaces/WithAuthenticationRequiredOptions.html#context\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"WithAuthenticationRequiredOptions\"},{\"kind\":32,\"name\":\"Auth0Context\",\"url\":\"variables/Auth0Context.html\",\"classes\":\"tsd-kind-variable\"},{\"kind\":256,\"name\":\"Auth0ContextInterface\",\"url\":\"interfaces/Auth0ContextInterface.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":1024,\"name\":\"getAccessTokenSilently\",\"url\":\"interfaces/Auth0ContextInterface.html#getAccessTokenSilently\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#getAccessTokenSilently.__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.getAccessTokenSilently\"},{\"kind\":1024,\"name\":\"getAccessTokenWithPopup\",\"url\":\"interfaces/Auth0ContextInterface.html#getAccessTokenWithPopup\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#getAccessTokenWithPopup.__type-4\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.getAccessTokenWithPopup\"},{\"kind\":1024,\"name\":\"getIdTokenClaims\",\"url\":\"interfaces/Auth0ContextInterface.html#getIdTokenClaims\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#getIdTokenClaims.__type-6\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.getIdTokenClaims\"},{\"kind\":1024,\"name\":\"loginWithRedirect\",\"url\":\"interfaces/Auth0ContextInterface.html#loginWithRedirect\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#loginWithRedirect.__type-12\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.loginWithRedirect\"},{\"kind\":1024,\"name\":\"loginWithPopup\",\"url\":\"interfaces/Auth0ContextInterface.html#loginWithPopup\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#loginWithPopup.__type-10\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.loginWithPopup\"},{\"kind\":1024,\"name\":\"logout\",\"url\":\"interfaces/Auth0ContextInterface.html#logout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#logout.__type-14\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.logout\"},{\"kind\":1024,\"name\":\"handleRedirectCallback\",\"url\":\"interfaces/Auth0ContextInterface.html#handleRedirectCallback\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Auth0ContextInterface.html#handleRedirectCallback.__type-8\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-property\",\"parent\":\"Auth0ContextInterface.handleRedirectCallback\"},{\"kind\":1024,\"name\":\"error\",\"url\":\"interfaces/Auth0ContextInterface.html#error\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":1024,\"name\":\"isAuthenticated\",\"url\":\"interfaces/Auth0ContextInterface.html#isAuthenticated\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":1024,\"name\":\"isLoading\",\"url\":\"interfaces/Auth0ContextInterface.html#isLoading\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":1024,\"name\":\"user\",\"url\":\"interfaces/Auth0ContextInterface.html#user\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface tsd-is-inherited\",\"parent\":\"Auth0ContextInterface\"},{\"kind\":256,\"name\":\"LogoutOptions\",\"url\":\"interfaces/LogoutOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":256,\"name\":\"RedirectLoginOptions\",\"url\":\"interfaces/RedirectLoginOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"kind\":128,\"name\":\"OAuthError\",\"url\":\"classes/OAuthError.html\",\"classes\":\"tsd-kind-class\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/OAuthError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"OAuthError\"},{\"kind\":1024,\"name\":\"error\",\"url\":\"classes/OAuthError.html#error\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"OAuthError\"},{\"kind\":1024,\"name\":\"error_description\",\"url\":\"classes/OAuthError.html#error_description\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"OAuthError\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,35.066]],[\"comment/0\",[]],[\"name/1\",[1,35.066]],[\"comment/1\",[]],[\"name/2\",[2,35.066]],[\"comment/2\",[]],[\"name/3\",[3,35.066]],[\"comment/3\",[]],[\"name/4\",[4,14.697]],[\"comment/4\",[]],[\"name/5\",[5,35.066]],[\"comment/5\",[]],[\"name/6\",[6,29.957]],[\"comment/6\",[]],[\"name/7\",[7,35.066]],[\"comment/7\",[]],[\"name/8\",[4,14.697]],[\"comment/8\",[]],[\"name/9\",[8,29.957]],[\"comment/9\",[]],[\"name/10\",[9,35.066]],[\"comment/10\",[]],[\"name/11\",[10,35.066]],[\"comment/11\",[]],[\"name/12\",[11,35.066]],[\"comment/12\",[]],[\"name/13\",[12,35.066]],[\"comment/13\",[]],[\"name/14\",[13,35.066]],[\"comment/14\",[]],[\"name/15\",[14,35.066]],[\"comment/15\",[]],[\"name/16\",[8,29.957]],[\"comment/16\",[]],[\"name/17\",[15,35.066]],[\"comment/17\",[]],[\"name/18\",[4,14.697]],[\"comment/18\",[]],[\"name/19\",[16,35.066]],[\"comment/19\",[]],[\"name/20\",[4,14.697]],[\"comment/20\",[]],[\"name/21\",[17,35.066]],[\"comment/21\",[]],[\"name/22\",[6,29.957]],[\"comment/22\",[]],[\"name/23\",[18,35.066]],[\"comment/23\",[]],[\"name/24\",[19,35.066]],[\"comment/24\",[]],[\"name/25\",[20,35.066]],[\"comment/25\",[]],[\"name/26\",[4,14.697]],[\"comment/26\",[]],[\"name/27\",[21,35.066]],[\"comment/27\",[]],[\"name/28\",[4,14.697]],[\"comment/28\",[]],[\"name/29\",[22,35.066]],[\"comment/29\",[]],[\"name/30\",[4,14.697]],[\"comment/30\",[]],[\"name/31\",[23,35.066]],[\"comment/31\",[]],[\"name/32\",[4,14.697]],[\"comment/32\",[]],[\"name/33\",[24,35.066]],[\"comment/33\",[]],[\"name/34\",[4,14.697]],[\"comment/34\",[]],[\"name/35\",[25,35.066]],[\"comment/35\",[]],[\"name/36\",[4,14.697]],[\"comment/36\",[]],[\"name/37\",[26,35.066]],[\"comment/37\",[]],[\"name/38\",[4,14.697]],[\"comment/38\",[]],[\"name/39\",[27,29.957]],[\"comment/39\",[]],[\"name/40\",[28,35.066]],[\"comment/40\",[]],[\"name/41\",[29,35.066]],[\"comment/41\",[]],[\"name/42\",[30,35.066]],[\"comment/42\",[]],[\"name/43\",[31,35.066]],[\"comment/43\",[]],[\"name/44\",[32,35.066]],[\"comment/44\",[]],[\"name/45\",[33,35.066]],[\"comment/45\",[]],[\"name/46\",[34,35.066]],[\"comment/46\",[]],[\"name/47\",[27,29.957]],[\"comment/47\",[]],[\"name/48\",[35,35.066]],[\"comment/48\",[]]],\"invertedIndex\":[[\"__type\",{\"_index\":4,\"name\":{\"4\":{},\"8\":{},\"18\":{},\"20\":{},\"26\":{},\"28\":{},\"30\":{},\"32\":{},\"34\":{},\"36\":{},\"38\":{}},\"comment\":{}}],[\"appstate\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"auth0\",{\"_index\":12,\"name\":{\"13\":{}},\"comment\":{}}],[\"auth0context\",{\"_index\":18,\"name\":{\"23\":{}},\"comment\":{}}],[\"auth0contextinterface\",{\"_index\":19,\"name\":{\"24\":{}},\"comment\":{}}],[\"auth0provider\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"auth0provideroptions\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"children\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"constructor\",{\"_index\":34,\"name\":{\"46\":{}},\"comment\":{}}],[\"context\",{\"_index\":6,\"name\":{\"6\":{},\"22\":{}},\"comment\":{}}],[\"error\",{\"_index\":27,\"name\":{\"39\":{},\"47\":{}},\"comment\":{}}],[\"error_description\",{\"_index\":35,\"name\":{\"48\":{}},\"comment\":{}}],[\"getaccesstokensilently\",{\"_index\":20,\"name\":{\"25\":{}},\"comment\":{}}],[\"getaccesstokenwithpopup\",{\"_index\":21,\"name\":{\"27\":{}},\"comment\":{}}],[\"getidtokenclaims\",{\"_index\":22,\"name\":{\"29\":{}},\"comment\":{}}],[\"handleredirectcallback\",{\"_index\":26,\"name\":{\"37\":{}},\"comment\":{}}],[\"isauthenticated\",{\"_index\":28,\"name\":{\"40\":{}},\"comment\":{}}],[\"isloading\",{\"_index\":29,\"name\":{\"41\":{}},\"comment\":{}}],[\"loginoptions\",{\"_index\":17,\"name\":{\"21\":{}},\"comment\":{}}],[\"loginwithpopup\",{\"_index\":24,\"name\":{\"33\":{}},\"comment\":{}}],[\"loginwithredirect\",{\"_index\":23,\"name\":{\"31\":{}},\"comment\":{}}],[\"logout\",{\"_index\":25,\"name\":{\"35\":{}},\"comment\":{}}],[\"logoutoptions\",{\"_index\":31,\"name\":{\"43\":{}},\"comment\":{}}],[\"oautherror\",{\"_index\":33,\"name\":{\"45\":{}},\"comment\":{}}],[\"onbeforeauthentication\",{\"_index\":16,\"name\":{\"19\":{}},\"comment\":{}}],[\"onredirectcallback\",{\"_index\":3,\"name\":{\"3\":{}},\"comment\":{}}],[\"onredirecting\",{\"_index\":15,\"name\":{\"17\":{}},\"comment\":{}}],[\"redirectloginoptions\",{\"_index\":32,\"name\":{\"44\":{}},\"comment\":{}}],[\"returnto\",{\"_index\":8,\"name\":{\"9\":{},\"16\":{}},\"comment\":{}}],[\"skipredirectcallback\",{\"_index\":5,\"name\":{\"5\":{}},\"comment\":{}}],[\"useauth0\",{\"_index\":9,\"name\":{\"10\":{}},\"comment\":{}}],[\"user\",{\"_index\":30,\"name\":{\"42\":{}},\"comment\":{}}],[\"withauth0\",{\"_index\":10,\"name\":{\"11\":{}},\"comment\":{}}],[\"withauth0props\",{\"_index\":11,\"name\":{\"12\":{}},\"comment\":{}}],[\"withauthenticationrequired\",{\"_index\":13,\"name\":{\"14\":{}},\"comment\":{}}],[\"withauthenticationrequiredoptions\",{\"_index\":14,\"name\":{\"15\":{}},\"comment\":{}}]],\"pipeline\":[]}}"); \ No newline at end of file +window.searchData = "data:application/octet-stream;base64,H4sIAAAAAAAAE81ayW7bSBD9F+qqKOpFlORbJphDgAAJkmDmIBgGI9E2YZrkkFQWGP736eZaRVVxkRI4FwuWql6/fq+6u9jSk5PG3zPnavfkPATRwbly9dyJvEffuXLeHPP75cc0/hYc/NSZO8c0NO/eHqN9HsRR9hp9vrjPH0MTtA+9LPMNouM8z2tQuXJp1A9JAdWAB1Hup7fe3u+gV3G9g4ilbLnv74PwkPrRJOQZyAJDzJ3EM2/mHHmGQhx98g9B6u/zt14YfvX2D9PIkPln0XJXK9UacHOT/0z8S7ksSphXehKpBTEpRr7sIUguE5BBuNzZfWyG/5FPrK0m6SwCcrldi5Vsl1GSfM69vPXRumHGr97uXSm99UDgzJoQhnrNhdEr9fNjGn2JR4yxALH9g1UFCKfVjnjM/EJPYteqP+pXqIX6HuT3HFbz2ejd7986wzidkPsejhi/43mIYz/grA6mJe6Q7JXFZAR7z8rxyf/vaNbaoUen0+DJwp1C9Jwhg0nj5T2p4cnDzAZLe3iOg0dNEN1dwLCLcznNsUfPOQTrI0iez3SBZ8zK+5d/G6c+hrpoGgzgHyg4xXQxcCCM0Z1UgDEgjO+C6OJ1PuvA/OJF2NMVjOQ31CJMoaYk7rjfdth989LA+xrWLUv18bQuvkp6V0+UbYi6geO33Ts/f7M3ONmX+MGPPgehmXv4c9pAMxakpxM7mduZ7fQURkPLigZkZjdKUFtRH+PkmFzEH6L8IZI2lEY+pwyo2s6Ql/XdoQh9G3rBI/9Ey5Lvpr+kkIhLraA7XUE8p77N3Qpcn8QT+VL5LybeCZlaPcF3KTTc6bSG9DtnIZ8kv7xyaNkK/illQLbe5Wqi4uMZhVYmvaRGhkGjzdQ9rZoAo8m9Fx1Cf/SVC82QBXkxzWhGtYabiRIy82Mk9dM0TifyrXNaVnl2eBVkr4Lo3k+DvHjAHi0gohNkoHsED+rjiJ1m/xaK72PvwDzF9pJr834DrWPmT/WxSvk1ZGDr/b5YxT1PQyhgdEdf1/T7gWctKq6/n5ebZpAPdqJ/o1VR5bxuP+pFWwkJn7iyPD3u82G4GY6llzxgN2pBc2OdLuEzRrk5+Nk+DRJ01dA7YidjePTruTH24P9wrp6cb36a2bwrRy7UYmtSbgM/PNivhkpaBjB+fLQg19Vn//hWTRtRhrw2Z/VuOVerxdJ1r6/nuzqj+KB4owgT5j9BhQkUZhqmnaTCJApT5j9FhSkUZs7KnZ4LvXC3axSmUdjK/Lei0FYozPTCO3cut4vtCqO5KGxt/ltTaGsUtuG4bVCYMWW3oQbdYnmt2ltS344PhRGkYQJbYZvXnaA9w24Iq7ogbRPYENu97ATpnMCeCKu90GQktkW4nEQCGyOsAYI0WmBvBGuOwO4I64JwSUhskFxykBIbJAuDyAKSnbUiuYKU2B9Z+LMhIbE/svCHrCOJ/ZHWBEnWkcT+SJedOfZHWhMkWXAS+yNZfyT2R1oTJL2hYH8U64/C/ihrgqQ3H+yPkixkZzezJkiy1hX2R7E7msL2qMIestYVtkex9ihsjyrsIWtdYXsUa4/C9qjCnjVVwgrbo60Jkixhjf3RhT9kCWvsj7YuKLKENTZIF+cNWZm6c+JYGxRZcBo7pK0NiqwjjR3S1gdFlofGFuk1q6fGFmlrhCLrQ5ceFX2CaRBM0/qu7BfMiV8/jD05N1UT0TQwT442f57nzqZ8EdWr2d7KV7d6rd5X1ftmLZSvVbqq4lQR99x2IPY/y9NLkqz8ErxlsW5ZrLm08tvPNqftKZ8cc0z1ZDVX9CB50ybLMclNM41QtgBF96EkzS9y2uxlm7wckxvX/T0gACRgINqfx7RpQDnJpcHWu81UsF5cPrert9um1XXEjVw14oAtqA6zrRTZmisToqkG7FeAPVefd37uFZfIub0GzZovHgAh4Jw5LMfA2C/Tk/K2DuAA+yQ3IYMTHAqMfXXLDACgkVsGoLz9SKsnwH1zuwNggDuK4xFkHr5JAPlgMWmulIMsrB/2QSZYQJqr4OJ2kCp+UBeyN5lWH5Sy4raAJj1t7qkBggIIPQSKC0iQBqpQceVTphGzVqBoNEc7LrzqLiQF+Gpu4Dj6WnzJC9zurCIBykVwVRdHfRUHhRsE6NSMAPIJrlrrXK52FFg5mtu5y99+5DFMBKVebUWC2wbtT9n6RADz4Mw4Zv7JuQeWjOAWW3mPBaYLdizNbby2zE9PWZApuBpvMpPyB1IgHZ5QQwO35ZY2P0sCUKBoBGcZD0VtIGAHEKQFpolKgsQPg8gE7a6fn/8HCQdlGHsrAAA="; \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css index 496e66f2..07a385b7 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -6,17 +6,36 @@ --light-color-background-warning: #e6e600; --light-color-icon-background: var(--light-color-background); --light-color-accent: #c5c7c9; + --light-color-active-menu-item: var(--light-color-accent); --light-color-text: #222; - --light-color-text-aside: #707070; - --light-color-link: #4da6ff; - --light-color-ts: #db1373; - --light-color-ts-interface: #139d2c; - --light-color-ts-enum: #9c891a; - --light-color-ts-class: #2484e5; + --light-color-text-aside: #6e6e6e; + --light-color-link: #1f70c2; + + --light-color-ts-keyword: #056bd6; + --light-color-ts-project: #b111c9; + --light-color-ts-module: var(--light-color-ts-project); + --light-color-ts-namespace: var(--light-color-ts-project); + --light-color-ts-enum: #7e6f15; + --light-color-ts-enum-member: var(--light-color-ts-enum); + --light-color-ts-variable: #4760ec; --light-color-ts-function: #572be7; - --light-color-ts-namespace: #b111c9; - --light-color-ts-private: #707070; - --light-color-ts-variable: #4d68ff; + --light-color-ts-class: #1f70c2; + --light-color-ts-interface: #108024; + --light-color-ts-constructor: var(--light-color-ts-class); + --light-color-ts-property: var(--light-color-ts-variable); + --light-color-ts-method: var(--light-color-ts-function); + --light-color-ts-call-signature: var(--light-color-ts-method); + --light-color-ts-index-signature: var(--light-color-ts-property); + --light-color-ts-constructor-signature: var(--light-color-ts-constructor); + --light-color-ts-parameter: var(--light-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --light-color-ts-type-parameter: var(--light-color-ts-type-alias); + --light-color-ts-accessor: var(--light-color-ts-property); + --light-color-ts-get-signature: var(--light-color-ts-accessor); + --light-color-ts-set-signature: var(--light-color-ts-accessor); + --light-color-ts-type-alias: #d51270; + /* reference not included as links will be colored with the kind that it points to */ + --light-external-icon: url("data:image/svg+xml;utf8,"); --light-color-scheme: light; @@ -27,17 +46,36 @@ --dark-color-warning-text: #222; --dark-color-icon-background: var(--dark-color-background-secondary); --dark-color-accent: #9096a2; + --dark-color-active-menu-item: #5d5d6a; --dark-color-text: #f5f5f5; --dark-color-text-aside: #dddddd; --dark-color-link: #00aff4; - --dark-color-ts: #ff6492; - --dark-color-ts-interface: #6cff87; + + --dark-color-ts-keyword: #3399ff; + --dark-color-ts-project: #e358ff; + --dark-color-ts-module: var(--dark-color-ts-project); + --dark-color-ts-namespace: var(--dark-color-ts-project); --dark-color-ts-enum: #f4d93e; - --dark-color-ts-class: #61b0ff; - --dark-color-ts-function: #9772ff; - --dark-color-ts-namespace: #e14dff; - --dark-color-ts-private: #e2e2e2; - --dark-color-ts-variable: #4d68ff; + --dark-color-ts-enum-member: var(--dark-color-ts-enum); + --dark-color-ts-variable: #798dff; + --dark-color-ts-function: #a280ff; + --dark-color-ts-class: #8ac4ff; + --dark-color-ts-interface: #6cff87; + --dark-color-ts-constructor: var(--dark-color-ts-class); + --dark-color-ts-property: var(--dark-color-ts-variable); + --dark-color-ts-method: var(--dark-color-ts-function); + --dark-color-ts-call-signature: var(--dark-color-ts-method); + --dark-color-ts-index-signature: var(--dark-color-ts-property); + --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); + --dark-color-ts-parameter: var(--dark-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --dark-color-ts-type-parameter: var(--dark-color-ts-type-alias); + --dark-color-ts-accessor: var(--dark-color-ts-property); + --dark-color-ts-get-signature: var(--dark-color-ts-accessor); + --dark-color-ts-set-signature: var(--dark-color-ts-accessor); + --dark-color-ts-type-alias: #ff6492; + /* reference not included as links will be colored with the kind that it points to */ + --dark-external-icon: url("data:image/svg+xml;utf8,"); --dark-color-scheme: dark; } @@ -50,17 +88,35 @@ --color-warning-text: var(--light-color-warning-text); --color-icon-background: var(--light-color-icon-background); --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); --color-text: var(--light-color-text); --color-text-aside: var(--light-color-text-aside); --color-link: var(--light-color-link); - --color-ts: var(--light-color-ts); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-class: var(--light-color-ts-class); - --color-ts-function: var(--light-color-ts-function); + + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-module: var(--light-color-ts-module); --color-ts-namespace: var(--light-color-ts-namespace); - --color-ts-private: var(--light-color-ts-private); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + --external-icon: var(--light-external-icon); --color-scheme: var(--light-color-scheme); } @@ -74,17 +130,35 @@ --color-warning-text: var(--dark-color-warning-text); --color-icon-background: var(--dark-color-icon-background); --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); --color-text: var(--dark-color-text); --color-text-aside: var(--dark-color-text-aside); --color-link: var(--dark-color-link); - --color-ts: var(--dark-color-ts); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-function: var(--dark-color-ts-function); + + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-module: var(--dark-color-ts-module); --color-ts-namespace: var(--dark-color-ts-namespace); - --color-ts-private: var(--dark-color-ts-private); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + --external-icon: var(--dark-external-icon); --color-scheme: var(--dark-color-scheme); } @@ -105,17 +179,35 @@ body { --color-warning-text: var(--light-color-warning-text); --color-icon-background: var(--light-color-icon-background); --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); --color-text: var(--light-color-text); --color-text-aside: var(--light-color-text-aside); --color-link: var(--light-color-link); - --color-ts: var(--light-color-ts); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-class: var(--light-color-ts-class); - --color-ts-function: var(--light-color-ts-function); + + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-module: var(--light-color-ts-module); --color-ts-namespace: var(--light-color-ts-namespace); - --color-ts-private: var(--light-color-ts-private); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + --external-icon: var(--light-external-icon); --color-scheme: var(--light-color-scheme); } @@ -127,17 +219,35 @@ body { --color-warning-text: var(--dark-color-warning-text); --color-icon-background: var(--dark-color-icon-background); --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); --color-text: var(--dark-color-text); --color-text-aside: var(--dark-color-text-aside); --color-link: var(--dark-color-link); - --color-ts: var(--dark-color-ts); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-function: var(--dark-color-ts-function); + + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-module: var(--dark-color-ts-module); --color-ts-namespace: var(--dark-color-ts-namespace); - --color-ts-private: var(--dark-color-ts-private); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + --external-icon: var(--dark-external-icon); --color-scheme: var(--dark-color-scheme); } @@ -156,6 +266,16 @@ h6 { line-height: 1.2; } +h1 > a, +h2 > a, +h3 > a, +h4 > a, +h5 > a, +h6 > a { + text-decoration: none; + color: var(--color-text); +} + h1 { font-size: 1.875rem; margin: 0.67rem 0; @@ -190,12 +310,6 @@ h6 { text-transform: uppercase; } -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - dl, menu, ol, @@ -208,26 +322,10 @@ dd { } .container { - max-width: 1600px; + max-width: 1700px; padding: 0 2rem; } -@media (min-width: 640px) { - .container { - padding: 0 4rem; - } -} -@media (min-width: 1200px) { - .container { - padding: 0 8rem; - } -} -@media (min-width: 1600px) { - .container { - padding: 0 12rem; - } -} - /* Footer */ .tsd-generator { border-top: 1px solid var(--color-accent); @@ -243,26 +341,9 @@ dd { } .container-main { - display: flex; - justify-content: space-between; - position: relative; margin: 0 auto; -} - -.col-4, -.col-8 { - box-sizing: border-box; - float: left; - padding: 2rem 1rem; -} - -.col-4 { - flex: 0 0 25%; -} -.col-8 { - flex: 1 0; - flex-wrap: wrap; - padding-left: 0; + /* toolbar, footer, margin */ + min-height: calc(100vh - 41px - 56px - 4rem); } @keyframes fade-in { @@ -305,22 +386,6 @@ dd { opacity: 0; } } -@keyframes shift-to-left { - from { - transform: translate(0, 0); - } - to { - transform: translate(-25%, 0); - } -} -@keyframes unshift-to-left { - from { - transform: translate(-25%, 0); - } - to { - transform: translate(0, 0); - } -} @keyframes pop-in-from-right { from { transform: translate(100%, 0); @@ -369,13 +434,29 @@ pre { } pre { + position: relative; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; padding: 10px; - border: 0.1em solid var(--color-accent); + border: 1px solid var(--color-accent); } pre code { padding: 0; font-size: 100%; } +pre > button { + position: absolute; + top: 10px; + right: 10px; + opacity: 0; + transition: opacity 0.1s; + box-sizing: border-box; +} +pre:hover > button, +pre > button.visible { + opacity: 1; +} blockquote { margin: 1em 0; @@ -391,13 +472,12 @@ blockquote { padding: 0 0 0 20px; margin: 0; } -.tsd-typography h4, .tsd-typography .tsd-index-panel h3, .tsd-index-panel .tsd-typography h3, +.tsd-typography h4, .tsd-typography h5, .tsd-typography h6 { font-size: 1em; - margin: 0; } .tsd-typography h5, .tsd-typography h6 { @@ -408,90 +488,18 @@ blockquote { .tsd-typography ol { margin: 1em 0; } - -@media (max-width: 1024px) { - html .col-content { - float: none; - max-width: 100%; - width: 100%; - padding-top: 3rem; - } - html .col-menu { - position: fixed !important; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - z-index: 1024; - top: 0 !important; - bottom: 0 !important; - left: auto !important; - right: 0 !important; - padding: 1.5rem 1.5rem 0 0; - max-width: 25rem; - visibility: hidden; - background-color: var(--color-background); - transform: translate(100%, 0); - } - html .col-menu > *:last-child { - padding-bottom: 20px; - } - html .overlay { - content: ""; - display: block; - position: fixed; - z-index: 1023; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: rgba(0, 0, 0, 0.75); - visibility: hidden; - } - - .to-has-menu .overlay { - animation: fade-in 0.4s; - } - - .to-has-menu :is(header, footer, .col-content) { - animation: shift-to-left 0.4s; - } - - .to-has-menu .col-menu { - animation: pop-in-from-right 0.4s; - } - - .from-has-menu .overlay { - animation: fade-out 0.4s; - } - - .from-has-menu :is(header, footer, .col-content) { - animation: unshift-to-left 0.4s; - } - - .from-has-menu .col-menu { - animation: pop-out-to-right 0.4s; - } - - .has-menu body { - overflow: hidden; - } - .has-menu .overlay { - visibility: visible; - } - .has-menu :is(header, footer, .col-content) { - transform: translate(-25%, 0); - } - .has-menu .col-menu { - visibility: visible; - transform: translate(0, 0); - display: flex; - flex-direction: column; - gap: 1.5rem; - max-height: 100vh; - padding: 1rem 2rem; - } - .has-menu .tsd-navigation { - max-height: 100%; - } +.tsd-typography table { + border-collapse: collapse; + border: none; +} +.tsd-typography td, +.tsd-typography th { + padding: 6px 13px; + border: 1px solid var(--color-accent); +} +.tsd-typography thead, +.tsd-typography tr:nth-child(even) { + background-color: var(--color-background-secondary); } .tsd-breadcrumb { @@ -672,43 +680,6 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { -o-page-break-inside: avoid; page-break-inside: avoid; } -.tsd-index-panel a, -.tsd-index-panel a.tsd-parent-kind-module { - color: var(--color-ts); -} -.tsd-index-panel a.tsd-parent-kind-interface { - color: var(--color-ts-interface); -} -.tsd-index-panel a.tsd-parent-kind-enum { - color: var(--color-ts-enum); -} -.tsd-index-panel a.tsd-parent-kind-class { - color: var(--color-ts-class); -} -.tsd-index-panel a.tsd-kind-module { - color: var(--color-ts-namespace); -} -.tsd-index-panel a.tsd-kind-interface { - color: var(--color-ts-interface); -} -.tsd-index-panel a.tsd-kind-enum { - color: var(--color-ts-enum); -} -.tsd-index-panel a.tsd-kind-class { - color: var(--color-ts-class); -} -.tsd-index-panel a.tsd-kind-function { - color: var(--color-ts-function); -} -.tsd-index-panel a.tsd-kind-namespace { - color: var(--color-ts-namespace); -} -.tsd-index-panel a.tsd-kind-variable { - color: var(--color-ts-variable); -} -.tsd-index-panel a.tsd-is-private { - color: var(--color-ts-private); -} .tsd-flag { display: inline-block; @@ -723,7 +694,7 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { } .tsd-anchor { - position: absolute; + position: relative; top: -100px; } @@ -737,108 +708,64 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { margin-bottom: 0; border-bottom: none; } -.tsd-member [data-tsd-kind] { - color: var(--color-ts); -} -.tsd-member [data-tsd-kind="Interface"] { - color: var(--color-ts-interface); -} -.tsd-member [data-tsd-kind="Enum"] { - color: var(--color-ts-enum); -} -.tsd-member [data-tsd-kind="Class"] { - color: var(--color-ts-class); + +.tsd-navigation.settings { + margin: 1rem 0; } -.tsd-member [data-tsd-kind="Private"] { - color: var(--color-ts-private); +.tsd-navigation > a, +.tsd-navigation .tsd-accordion-summary { + width: calc(100% - 0.5rem); } - -.tsd-navigation a { - display: block; - margin: 0.4rem 0; - border-left: 2px solid transparent; +.tsd-navigation a, +.tsd-navigation summary > span, +.tsd-page-navigation a { + display: inline-flex; + align-items: center; + padding: 0.25rem; color: var(--color-text); text-decoration: none; - transition: border-left-color 0.1s; + box-sizing: border-box; +} +.tsd-navigation a.current, +.tsd-page-navigation a.current { + background: var(--color-active-menu-item); } -.tsd-navigation a:hover { +.tsd-navigation a:hover, +.tsd-page-navigation a:hover { text-decoration: underline; } -.tsd-navigation ul { - margin: 0; +.tsd-navigation ul, +.tsd-page-navigation ul { + margin-top: 0; + margin-bottom: 0; padding: 0; list-style: none; } -.tsd-navigation li { +.tsd-navigation li, +.tsd-page-navigation li { padding: 0; + max-width: 100%; } - -.tsd-navigation.primary .tsd-accordion-details > ul { - margin-top: 0.75rem; +.tsd-nested-navigation { + margin-left: 3rem; } -.tsd-navigation.primary a { - padding: 0.75rem 0.5rem; - margin: 0; +.tsd-nested-navigation > li > details { + margin-left: -1.5rem; } -.tsd-navigation.primary ul li a { - margin-left: 0.5rem; -} -.tsd-navigation.primary ul li li a { +.tsd-small-nested-navigation { margin-left: 1.5rem; } -.tsd-navigation.primary ul li li li a { - margin-left: 2.5rem; -} -.tsd-navigation.primary ul li li li li a { - margin-left: 3.5rem; -} -.tsd-navigation.primary ul li li li li li a { - margin-left: 4.5rem; -} -.tsd-navigation.primary ul li li li li li li a { - margin-left: 5.5rem; -} -.tsd-navigation.primary li.current > a { - border-left: 0.15rem var(--color-text) solid; -} -.tsd-navigation.primary li.selected > a { - font-weight: bold; - border-left: 0.2rem var(--color-text) solid; -} -.tsd-navigation.primary ul li a:hover { - border-left: 0.2rem var(--color-text-aside) solid; -} -.tsd-navigation.primary li.globals + li > span, -.tsd-navigation.primary li.globals + li > a { - padding-top: 20px; +.tsd-small-nested-navigation > li > details { + margin-left: -1.5rem; } -.tsd-navigation.secondary.tsd-navigation--toolbar-hide { - max-height: calc(100vh - 1rem); - top: 0.5rem; -} -.tsd-navigation.secondary > ul { - display: inline; - padding-right: 0.5rem; - transition: opacity 0.2s; -} -.tsd-navigation.secondary ul li a { - padding-left: 0; -} -.tsd-navigation.secondary ul li li a { - padding-left: 1.1rem; -} -.tsd-navigation.secondary ul li li li a { - padding-left: 2.2rem; +.tsd-nested-navigation > li > a, +.tsd-nested-navigation > li > span { + width: calc(100% - 1.75rem - 0.5rem); } -.tsd-navigation.secondary ul li li li li a { - padding-left: 3.3rem; -} -.tsd-navigation.secondary ul li li li li li a { - padding-left: 4.4rem; -} -.tsd-navigation.secondary ul li li li li li li a { - padding-left: 5.5rem; + +.tsd-page-navigation ul { + padding-left: 1.75rem; } #tsd-sidebar-links a { @@ -851,41 +778,40 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { } a.tsd-index-link { - margin: 0.25rem 0; + padding: 0.25rem 0 !important; font-size: 1rem; line-height: 1.25rem; display: inline-flex; align-items: center; + color: var(--color-text); } -.tsd-accordion-summary > h1, -.tsd-accordion-summary > h2, -.tsd-accordion-summary > h3, -.tsd-accordion-summary > h4, -.tsd-accordion-summary > h5 { - display: inline-flex; - align-items: center; - vertical-align: middle; - margin-bottom: 0; +.tsd-accordion-summary { + list-style-type: none; /* hide marker on non-safari */ + outline: none; /* broken on safari, so just hide it */ +} +.tsd-accordion-summary::-webkit-details-marker { + display: none; /* hide marker on safari */ +} +.tsd-accordion-summary, +.tsd-accordion-summary a { user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; -} -.tsd-accordion-summary { - display: block; + cursor: pointer; } +.tsd-accordion-summary a { + width: calc(100% - 1.5rem); +} .tsd-accordion-summary > * { margin-top: 0; margin-bottom: 0; padding-top: 0; padding-bottom: 0; } -.tsd-accordion-summary::-webkit-details-marker { - display: none; -} -.tsd-index-accordion .tsd-accordion-summary svg { - margin-right: 0.25rem; +.tsd-index-accordion .tsd-accordion-summary > svg { + margin-left: 0.25rem; } .tsd-index-content > :not(:first-child) { margin-top: 0.75rem; @@ -910,34 +836,6 @@ a.tsd-index-link { margin-right: 0.8rem; } -@media (min-width: 1025px) { - .col-content { - margin: 2rem auto; - } - - .menu-sticky-wrap { - position: sticky; - height: calc(100vh - 2rem); - top: 4rem; - right: 0; - padding: 0 1.5rem; - padding-top: 1rem; - margin-top: 3rem; - transition: 0.3s ease-in-out; - transition-property: top, padding-top, padding, height; - overflow-y: auto; - } - .col-menu { - border-left: 1px solid var(--color-accent); - } - .col-menu--hide { - top: 1rem; - } - .col-menu .tsd-navigation:not(:last-child) { - padding-bottom: 1.75rem; - } -} - .tsd-panel { margin-bottom: 2.5rem; } @@ -1018,8 +916,9 @@ a.tsd-index-link { box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); } #tsd-search .results li { - padding: 0 10px; background-color: var(--color-background); + line-height: initial; + padding: 4px; } #tsd-search .results li:nth-child(even) { background-color: var(--color-background-secondary); @@ -1027,12 +926,15 @@ a.tsd-index-link { #tsd-search .results li.state { display: none; } -#tsd-search .results li.current, -#tsd-search .results li:hover { +#tsd-search .results li.current:not(.no-results), +#tsd-search .results li:hover:not(.no-results) { background-color: var(--color-accent); } #tsd-search .results a { - display: block; + display: flex; + align-items: center; + padding: 0.25rem; + box-sizing: border-box; } #tsd-search .results a:before { top: 10px; @@ -1088,6 +990,11 @@ a.tsd-index-link { overflow-x: auto; } +.tsd-signature-keyword { + color: var(--color-ts-keyword); + font-weight: normal; +} + .tsd-signature-symbol { color: var(--color-text-aside); font-weight: normal; @@ -1143,7 +1050,7 @@ ul.tsd-type-parameter-list h5 { } .tsd-page-toolbar { - position: fixed; + position: sticky; z-index: 1; top: 0; left: 0; @@ -1183,16 +1090,14 @@ ul.tsd-type-parameter-list h5 { padding: 12px 0; } -.tsd-page-toolbar--hide { - transform: translateY(-100%); -} - .tsd-widget { display: inline-block; overflow: hidden; opacity: 0.8; height: 40px; - transition: opacity 0.1s, background-color 0.2s; + transition: + opacity 0.1s, + background-color 0.2s; vertical-align: bottom; cursor: pointer; } @@ -1214,12 +1119,6 @@ ul.tsd-type-parameter-list h5 { .tsd-widget.menu { display: none; } -@media (max-width: 1024px) { - .tsd-widget.options, - .tsd-widget.menu { - display: inline-block; - } -} input[type="checkbox"] + .tsd-widget:before { background-position: -120px 0; } @@ -1250,7 +1149,7 @@ img { } .deprecated { - text-decoration: line-through; + text-decoration: line-through !important; } .warning { @@ -1259,6 +1158,78 @@ img { background: var(--color-background-warning); } +.tsd-kind-project { + color: var(--color-ts-project); +} +.tsd-kind-module { + color: var(--color-ts-module); +} +.tsd-kind-namespace { + color: var(--color-ts-namespace); +} +.tsd-kind-enum { + color: var(--color-ts-enum); +} +.tsd-kind-enum-member { + color: var(--color-ts-enum-member); +} +.tsd-kind-variable { + color: var(--color-ts-variable); +} +.tsd-kind-function { + color: var(--color-ts-function); +} +.tsd-kind-class { + color: var(--color-ts-class); +} +.tsd-kind-interface { + color: var(--color-ts-interface); +} +.tsd-kind-constructor { + color: var(--color-ts-constructor); +} +.tsd-kind-property { + color: var(--color-ts-property); +} +.tsd-kind-method { + color: var(--color-ts-method); +} +.tsd-kind-call-signature { + color: var(--color-ts-call-signature); +} +.tsd-kind-index-signature { + color: var(--color-ts-index-signature); +} +.tsd-kind-constructor-signature { + color: var(--color-ts-constructor-signature); +} +.tsd-kind-parameter { + color: var(--color-ts-parameter); +} +.tsd-kind-type-literal { + color: var(--color-ts-type-literal); +} +.tsd-kind-type-parameter { + color: var(--color-ts-type-parameter); +} +.tsd-kind-accessor { + color: var(--color-ts-accessor); +} +.tsd-kind-get-signature { + color: var(--color-ts-get-signature); +} +.tsd-kind-set-signature { + color: var(--color-ts-set-signature); +} +.tsd-kind-type-alias { + color: var(--color-ts-type-alias); +} + +/* if we have a kind icon, don't color the text by kind */ +.tsd-kind-icon ~ span { + color: var(--color-text); +} + * { scrollbar-width: thin; scrollbar-color: var(--color-accent) var(--color-icon-background); @@ -1277,3 +1248,147 @@ img { border-radius: 999rem; border: 0.25rem solid var(--color-icon-background); } + +/* mobile */ +@media (max-width: 769px) { + .tsd-widget.options, + .tsd-widget.menu { + display: inline-block; + } + + .container-main { + display: flex; + } + html .col-content { + float: none; + max-width: 100%; + width: 100%; + } + html .col-sidebar { + position: fixed !important; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + z-index: 1024; + top: 0 !important; + bottom: 0 !important; + left: auto !important; + right: 0 !important; + padding: 1.5rem 1.5rem 0 0; + width: 75vw; + visibility: hidden; + background-color: var(--color-background); + transform: translate(100%, 0); + } + html .col-sidebar > *:last-child { + padding-bottom: 20px; + } + html .overlay { + content: ""; + display: block; + position: fixed; + z-index: 1023; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.75); + visibility: hidden; + } + + .to-has-menu .overlay { + animation: fade-in 0.4s; + } + + .to-has-menu .col-sidebar { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu .col-sidebar { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu .col-sidebar { + visibility: visible; + transform: translate(0, 0); + display: flex; + flex-direction: column; + gap: 1.5rem; + max-height: 100vh; + padding: 1rem 2rem; + } + .has-menu .tsd-navigation { + max-height: 100%; + } +} + +/* one sidebar */ +@media (min-width: 770px) { + .container-main { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); + grid-template-areas: "sidebar content"; + margin: 2rem auto; + } + + .col-sidebar { + grid-area: sidebar; + } + .col-content { + grid-area: content; + padding: 0 1rem; + } +} +@media (min-width: 770px) and (max-width: 1399px) { + .col-sidebar { + max-height: calc(100vh - 2rem - 42px); + overflow: auto; + position: sticky; + top: 42px; + padding-top: 1rem; + } + .site-menu { + margin-top: 1rem; + } +} + +/* two sidebars */ +@media (min-width: 1200px) { + .container-main { + grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem); + grid-template-areas: "sidebar content toc"; + } + + .col-sidebar { + display: contents; + } + + .page-menu { + grid-area: toc; + padding-left: 1rem; + } + .site-menu { + grid-area: sidebar; + } + + .site-menu { + margin-top: 1rem 0; + } + + .page-menu, + .site-menu { + max-height: calc(100vh - 2rem - 42px); + overflow: auto; + position: sticky; + top: 42px; + } +} diff --git a/docs/classes/AuthenticationError.html b/docs/classes/AuthenticationError.html new file mode 100644 index 00000000..f30a7909 --- /dev/null +++ b/docs/classes/AuthenticationError.html @@ -0,0 +1,18 @@ +AuthenticationError | @auth0/auth0-react

Class AuthenticationError

Thrown when handling the redirect callback fails, will be one of Auth0's +Authentication API's Standard Error Responses: https://auth0.com/docs/api/authentication?javascript#standard-error-responses

+

Hierarchy

Constructors

Properties

appState: any
error: string
error_description: string
message: string
name: string
stack?: string
state: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/GenericError.html b/docs/classes/GenericError.html new file mode 100644 index 00000000..1e4522fb --- /dev/null +++ b/docs/classes/GenericError.html @@ -0,0 +1,15 @@ +GenericError | @auth0/auth0-react

Thrown when network requests to the Auth server fail.

+

Hierarchy

Constructors

  • Parameters

    • error: string
    • error_description: string

    Returns GenericError

Properties

error: string
error_description: string
message: string
name: string
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/InMemoryCache.html b/docs/classes/InMemoryCache.html index 6849c5d4..178eaf1b 100644 --- a/docs/classes/InMemoryCache.html +++ b/docs/classes/InMemoryCache.html @@ -1,78 +1,3 @@ -InMemoryCache | @auth0/auth0-react
-
- -
-
-
-
- -

Class InMemoryCache

-
-

Hierarchy

-
    -
  • InMemoryCache
-
-
-
- -
-
-

Constructors

-
-
-

Properties

-
-
-

Constructors

-
- -
-
-

Properties

-
- -
enclosedCache: ICache
-
-
\ No newline at end of file +InMemoryCache | @auth0/auth0-react

Constructors

Properties

Constructors

Properties

enclosedCache: ICache
\ No newline at end of file diff --git a/docs/classes/LocalStorageCache.html b/docs/classes/LocalStorageCache.html index 757abedc..20ea4e20 100644 --- a/docs/classes/LocalStorageCache.html +++ b/docs/classes/LocalStorageCache.html @@ -1,146 +1,6 @@ -LocalStorageCache | @auth0/auth0-react
-
- -
-
-
-
- -

Class LocalStorageCache

-
-

Hierarchy

-
    -
  • LocalStorageCache
-
-

Implements

-
-
-
-
- -
-
-

Constructors

-
-
-

Methods

-
-
-

Constructors

-
- -
-
-

Methods

-
- -
    - -
  • -

    Returns string[]

-
- -
    - -
  • -
    -

    Type Parameters

    -
    -
    -

    Parameters

    -
      -
    • -
      key: string
    -

    Returns MaybePromise<undefined | T>

-
- -
    - -
  • -
    -

    Parameters

    -
      -
    • -
      key: string
    -

    Returns void

-
- -
    - -
  • -
    -

    Type Parameters

    -
    -
    -

    Parameters

    -
      -
    • -
      key: string
    • -
    • -
      entry: T
    -

    Returns void

-
-
\ No newline at end of file +LocalStorageCache | @auth0/auth0-react

Implements

Constructors

Methods

Constructors

Methods

  • Returns string[]

  • Type Parameters

    Parameters

    • key: string

    Returns MaybePromise<undefined | T>

  • Parameters

    • key: string

    Returns void

  • Type Parameters

    Parameters

    • key: string
    • entry: T

    Returns void

\ No newline at end of file diff --git a/docs/classes/MfaRequiredError.html b/docs/classes/MfaRequiredError.html new file mode 100644 index 00000000..99391b97 --- /dev/null +++ b/docs/classes/MfaRequiredError.html @@ -0,0 +1,16 @@ +MfaRequiredError | @auth0/auth0-react

Error thrown when the token exchange results in a mfa_required error

+

Hierarchy

Constructors

Properties

error: string
error_description: string
message: string
mfa_token: string
name: string
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/MissingRefreshTokenError.html b/docs/classes/MissingRefreshTokenError.html new file mode 100644 index 00000000..93b09f90 --- /dev/null +++ b/docs/classes/MissingRefreshTokenError.html @@ -0,0 +1,17 @@ +MissingRefreshTokenError | @auth0/auth0-react

Class MissingRefreshTokenError

Error thrown when there is no refresh token to use

+

Hierarchy

Constructors

Properties

audience: string
error: string
error_description: string
message: string
name: string
scope: string
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/OAuthError.html b/docs/classes/OAuthError.html index 32c42dab..6858c146 100644 --- a/docs/classes/OAuthError.html +++ b/docs/classes/OAuthError.html @@ -1,186 +1,16 @@ -OAuthError | @auth0/auth0-react
-
- -
-
-
-
- -

Class OAuthError

-
-

An OAuth2 error will come from the authorization server and will have at least an error property which will +OAuthError | @auth0/auth0-react

An OAuth2 error will come from the authorization server and will have at least an error property which will be the error code. And possibly an error_description property

See: https://openid.net/specs/openid-connect-core-1_0.html#rfc.section.3.1.2.6

-
-
-

Hierarchy

-
    -
  • Error -
      -
    • OAuthError
-
-
-
- -
-
-

Constructors

-
- -
    - -
  • -
    -

    Parameters

    -
      -
    • -
      error: string
    • -
    • -
      Optional error_description: string
    -

    Returns OAuthError

-
-

Properties

-
- -
error: string
-
- -
error_description?: string
-
- -
message: string
-
- -
name: string
-
- -
stack?: string
-
- -
prepareStackTrace?: ((err: Error, stackTraces: CallSite[]) => any)
-
-

Type declaration

-
-
- -
stackTraceLimit: number
-
-

Methods

-
- -
    - -
  • -

    Create .stack property on a target object

    -
    -
    -

    Parameters

    -
      -
    • -
      targetObject: object
    • -
    • -
      Optional constructorOpt: Function
    -

    Returns void

-
-
\ No newline at end of file +

Hierarchy

  • Error
    • OAuthError

Constructors

  • Parameters

    • error: string
    • Optional error_description: string

    Returns OAuthError

Properties

error: string
error_description?: string
message: string
name: string
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

\ No newline at end of file diff --git a/docs/classes/PopupCancelledError.html b/docs/classes/PopupCancelledError.html new file mode 100644 index 00000000..a215ea6d --- /dev/null +++ b/docs/classes/PopupCancelledError.html @@ -0,0 +1,16 @@ +PopupCancelledError | @auth0/auth0-react

Class PopupCancelledError

Thrown when network requests to the Auth server fail.

+

Hierarchy

Constructors

Properties

error: string
error_description: string
message: string
name: string
popup: Window
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/PopupTimeoutError.html b/docs/classes/PopupTimeoutError.html new file mode 100644 index 00000000..87e3e33d --- /dev/null +++ b/docs/classes/PopupTimeoutError.html @@ -0,0 +1,16 @@ +PopupTimeoutError | @auth0/auth0-react

Error thrown when the login popup times out (if the user does not complete auth)

+

Hierarchy

Constructors

Properties

error: string
error_description: string
message: string
name: string
popup: Window
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/TimeoutError.html b/docs/classes/TimeoutError.html new file mode 100644 index 00000000..5da03f2d --- /dev/null +++ b/docs/classes/TimeoutError.html @@ -0,0 +1,16 @@ +TimeoutError | @auth0/auth0-react

Thrown when silent auth times out (usually due to a configuration issue) or +when network requests to the Auth server timeout.

+

Hierarchy

Constructors

Properties

error: string
error_description: string
message: string
name: string
stack?: string
prepareStackTrace?: ((err, stackTraces) => any)

Type declaration

stackTraceLimit: number

Methods

  • Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

  • Parameters

    • __namedParameters: {
          error: string;
          error_description: string;
      }
      • error: string
      • error_description: string

    Returns GenericError

\ No newline at end of file diff --git a/docs/classes/User.html b/docs/classes/User.html index 513b83fb..c02fd2c2 100644 --- a/docs/classes/User.html +++ b/docs/classes/User.html @@ -1,214 +1,22 @@ -User | @auth0/auth0-react
-
- -
-
-
-
- -

Class User

-
-

Hierarchy

-
    -
  • User
-
-

Indexable

-
[key: string]: any
-
-
-
- -
-
-

Constructors

-
- -
-
-

Properties

-
- -
address?: string
-
- -
birthdate?: string
-
- -
email?: string
-
- -
email_verified?: boolean
-
- -
family_name?: string
-
- -
gender?: string
-
- -
given_name?: string
-
- -
locale?: string
-
- -
middle_name?: string
-
- -
name?: string
-
- -
nickname?: string
-
- -
phone_number?: string
-
- -
phone_number_verified?: boolean
-
- -
picture?: string
-
- -
preferred_username?: string
-
- -
profile?: string
-
- -
sub?: string
-
- -
updated_at?: string
-
- -
website?: string
-
- -
zoneinfo?: string
-
-
\ No newline at end of file +User | @auth0/auth0-react

Indexable

[key: string]: any

Constructors

Properties

address?: string
birthdate?: string
email?: string
email_verified?: boolean
family_name?: string
gender?: string
given_name?: string
locale?: string
middle_name?: string
name?: string
nickname?: string
phone_number?: string
phone_number_verified?: boolean
picture?: string
preferred_username?: string
profile?: string
sub?: string
updated_at?: string
website?: string
zoneinfo?: string
\ No newline at end of file diff --git a/docs/functions/Auth0Provider.html b/docs/functions/Auth0Provider.html index aff21016..b0110d39 100644 --- a/docs/functions/Auth0Provider.html +++ b/docs/functions/Auth0Provider.html @@ -1,82 +1,4 @@ -Auth0Provider | @auth0/auth0-react
-
- -
-
-
-
- -

Function Auth0Provider

-
-
\ No newline at end of file diff --git a/docs/functions/useAuth0.html b/docs/functions/useAuth0.html index cab666d7..e09d9358 100644 --- a/docs/functions/useAuth0.html +++ b/docs/functions/useAuth0.html @@ -1,88 +1,5 @@ -useAuth0 | @auth0/auth0-react
-
- -
-
-
-
- -

Function useAuth0

-
-
\ No newline at end of file diff --git a/docs/functions/withAuth0.html b/docs/functions/withAuth0.html index c6dd27d9..546451a2 100644 --- a/docs/functions/withAuth0.html +++ b/docs/functions/withAuth0.html @@ -1,91 +1,6 @@ -withAuth0 | @auth0/auth0-react
-
- -
-
-
-
- -

Function withAuth0

-
-
\ No newline at end of file diff --git a/docs/functions/withAuthenticationRequired.html b/docs/functions/withAuthenticationRequired.html index ed17bce2..ede10dc7 100644 --- a/docs/functions/withAuthenticationRequired.html +++ b/docs/functions/withAuthenticationRequired.html @@ -1,90 +1,5 @@ -withAuthenticationRequired | @auth0/auth0-react
-
- -
-
-
-
- -

Function withAuthenticationRequired

-
-
\ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 3c206d65..b549e4d6 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,54 +1,24 @@ -@auth0/auth0-react
-
- -
-
-
-
-

@auth0/auth0-react

-

Auth0 SDK for React Single Page Applications

+@auth0/auth0-react

@auth0/auth0-react

Auth0 SDK for React Single Page Applications

npm codecov Downloads License CircleCI

-

📚 Documentation - 🚀 Getting Started - 💻 API Reference - 💬 Feedback

- - -

Documentation

-
-
    +

    📚 Documentation - 🚀 Getting Started - 💻 API Reference - 💬 Feedback

    +

    Documentation

    • Quickstart - our interactive guide for quickly adding login, logout and user information to a React app using Auth0.
    • Sample App - a full-fledged React application integrated with Auth0.
    • FAQs - frequently asked questions about the auth0-react SDK.
    • Examples - code samples for common React authentication scenario's.
    • Docs site - explore our docs site and learn more about Auth0.
    - - -

    Getting started

    -
    - - -

    Installation

    -
    -

    Using npm

    +

    Getting started

    Installation

    Using npm

    npm install @auth0/auth0-react
    -
    +

    Using yarn

    yarn add @auth0/auth0-react
    -
    - - -

    Configure Auth0

    -
    -

    Create a Single Page Application in the Auth0 Dashboard.

    + +

    Configure Auth0

    Create a Single Page Application in the Auth0 Dashboard.

    If you're using an existing application, verify that you have configured the following settings in your Single Page Application:

      @@ -68,30 +38,22 @@

      Configure Auth0

      These URLs should reflect the origins that your application is running on. Allowed Callback URLs may also include a path, depending on where you're handling the callback.

    Take note of the Client ID and Domain values under the "Basic Information" section. You'll need these values in the next step.

    - - -

    Configure the SDK

    -
    -

    Configure the SDK by wrapping your application in Auth0Provider:

    +

    Configure the SDK

    Configure the SDK by wrapping your application in Auth0Provider:

    // src/index.js
    import React from 'react';
    import { createRoot } from 'react-dom/client';
    import { Auth0Provider } from '@auth0/auth0-react';
    import App from './App';

    const root = createRoot(document.getElementById('app'));

    root.render(
    <Auth0Provider
    domain="YOUR_AUTH0_DOMAIN"
    clientId="YOUR_AUTH0_CLIENT_ID"
    authorizationParams={{
    redirect_uri: window.location.origin,
    }}
    >
    <App />
    </Auth0Provider>
    ); -
    +
    Instructions for React <18
    // src/index.js
    import React from 'react';
    import ReactDOM from 'react-dom';
    import { Auth0Provider } from '@auth0/auth0-react';
    import App from './App';

    ReactDOM.render(
    <Auth0Provider
    domain="YOUR_AUTH0_DOMAIN"
    clientId="YOUR_AUTH0_CLIENT_ID"
    authorizationParams={{
    redirect_uri: window.location.origin,
    }}
    >
    <App />
    </Auth0Provider>,
    document.getElementById('app')
    ); -
    +

    Use the useAuth0 hook in your components to access authentication state (isLoading, isAuthenticated and user) and authentication methods (loginWithRedirect and logout):

    // src/App.js
    import React from 'react';
    import { useAuth0 } from '@auth0/auth0-react';

    function App() {
    const { isLoading, isAuthenticated, error, user, loginWithRedirect, logout } =
    useAuth0();

    if (isLoading) {
    return <div>Loading...</div>;
    }
    if (error) {
    return <div>Oops... {error.message}</div>;
    }

    if (isAuthenticated) {
    return (
    <div>
    Hello {user.name}{' '}
    <button onClick={() => logout({ logoutParams: { returnTo: window.location.origin } })}>
    Log out
    </button>
    </div>
    );
    } else {
    return <button onClick={() => loginWithRedirect()}>Log in</button>;
    }
    }

    export default App; -
    +

    For more code samples on how to integrate auth0-react SDK in your React application, have a look at our examples.

    - - -

    API reference

    -
    -

    Explore public API's available in auth0-react.

    +

    API reference

    Explore public API's available in auth0-react.

    - - -

    Feedback

    -
    - - -

    Contributing

    -
    -

    We appreciate feedback and contribution to this repo! Before you get started, please see the following:

    +

    Feedback

    Contributing

    We appreciate feedback and contribution to this repo! Before you get started, please see the following:

    - - -

    Raise an issue

    -
    -

    To provide feedback or report a bug, please raise an issue on our issue tracker.

    - - -

    Vulnerability Reporting

    -
    -

    Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.

    +

    Raise an issue

    To provide feedback or report a bug, please raise an issue on our issue tracker.

    +

    Vulnerability Reporting

    Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.


    @@ -133,53 +79,4 @@

    Vulnerability Reporting

    Auth0 is an easy to implement, adaptable authentication and authorization platform. To learn more checkout Why Auth0?

    -This project is licensed under the MIT license. See the LICENSE file for more info.

-
-
\ No newline at end of file +This project is licensed under the MIT license. See the LICENSE file for more info.

\ No newline at end of file diff --git a/docs/interfaces/Auth0ContextInterface.html b/docs/interfaces/Auth0ContextInterface.html index d77912d2..57b1aadf 100644 --- a/docs/interfaces/Auth0ContextInterface.html +++ b/docs/interfaces/Auth0ContextInterface.html @@ -1,75 +1,17 @@ -Auth0ContextInterface | @auth0/auth0-react
-
- -
-
-
-
- -

Interface Auth0ContextInterface<TUser>

-
-

Contains the authenticated state and authentication methods provided by the useAuth0 hook.

-
-
-

Type Parameters

-
-
-

Hierarchy

-
    -
  • AuthState<TUser> -
      -
    • Auth0ContextInterface
-
-
-
- -
-
-

Properties

-
- -
error?: Error
-
- -
getAccessTokenSilently: {
    (options: GetTokenSilentlyOptions & {
        detailedResponse: true;
    }): Promise<GetTokenSilentlyVerboseResponse>;
    (options?: GetTokenSilentlyOptions): Promise<string>;
    (options: GetTokenSilentlyOptions): Promise<string | GetTokenSilentlyVerboseResponse>;
}
-
-

Type declaration

-
    -
  • -
      -
    • (options: GetTokenSilentlyOptions & {
          detailedResponse: true;
      }): Promise<GetTokenSilentlyVerboseResponse>
    • -
    • -
      const token = await getAccessTokenSilently(options);
      -
      +Auth0ContextInterface | @auth0/auth0-react

      Interface Auth0ContextInterface<TUser>

      Contains the authenticated state and authentication methods provided by the useAuth0 hook.

      +
      interface Auth0ContextInterface {
          error?: Error;
          getAccessTokenSilently: {
              (options): Promise<GetTokenSilentlyVerboseResponse>;
              (options?): Promise<string>;
              (options): Promise<string | GetTokenSilentlyVerboseResponse>;
          };
          getAccessTokenWithPopup: ((options?, config?) => Promise<undefined | string>);
          getIdTokenClaims: (() => Promise<undefined | IdToken>);
          handleRedirectCallback: ((url?) => Promise<RedirectLoginResult<any>>);
          isAuthenticated: boolean;
          isLoading: boolean;
          loginWithPopup: ((options?, config?) => Promise<void>);
          loginWithRedirect: ((options?) => Promise<void>);
          logout: ((options?) => Promise<void>);
          user?: TUser;
      }

      Type Parameters

      Hierarchy

      • AuthState<TUser>
        • Auth0ContextInterface

      Properties

      error?: Error
      getAccessTokenSilently: {
          (options): Promise<GetTokenSilentlyVerboseResponse>;
          (options?): Promise<string>;
          (options): Promise<string | GetTokenSilentlyVerboseResponse>;
      }

      Type declaration

        • (options): Promise<GetTokenSilentlyVerboseResponse>
        • const token = await getAccessTokenSilently(options);
          +

          If there's a valid token stored, return it. Otherwise, opens an iframe with the /authorize URL using the parameters provided as arguments. Random and secure state and nonce parameters @@ -84,17 +26,8 @@

          Type declaration

          back to using an iframe to make the token exchange.

          Note that in all cases, falling back to an iframe requires access to the auth0 cookie.

          -
          -
          -

          Parameters

          -
          -

          Returns Promise<GetTokenSilentlyVerboseResponse>

        • -
        • (options?: GetTokenSilentlyOptions): Promise<string>
        • -
        • -
          const token = await getAccessTokenSilently(options);
          -
          +

          Parameters

          Returns Promise<GetTokenSilentlyVerboseResponse>

        • (options?): Promise<string>
        • const token = await getAccessTokenSilently(options);
          +

          If there's a valid token stored, return it. Otherwise, opens an iframe with the /authorize URL using the parameters provided as arguments. Random and secure state and nonce parameters @@ -109,17 +42,8 @@

          Returns Promise

          Note that in all cases, falling back to an iframe requires access to the auth0 cookie.

          -

          -
          -

          Parameters

          -
          -

          Returns Promise<string>

        • -
        • (options: GetTokenSilentlyOptions): Promise<string | GetTokenSilentlyVerboseResponse>
        • -
        • -
          const token = await getAccessTokenSilently(options);
          -
          +

          Parameters

          Returns Promise<string>

        • (options): Promise<string | GetTokenSilentlyVerboseResponse>
        • const token = await getAccessTokenSilently(options);
          +

          If there's a valid token stored, return it. Otherwise, opens an iframe with the /authorize URL using the parameters provided as arguments. Random and secure state and nonce parameters @@ -134,109 +58,23 @@

          Returns Promise

          Note that in all cases, falling back to an iframe requires access to the auth0 cookie.

          -

          -
          -

          Parameters

          -
          -

          Returns Promise<string | GetTokenSilentlyVerboseResponse>

      -
      - -
      getAccessTokenWithPopup: ((options?: GetTokenWithPopupOptions, config?: PopupConfigOptions) => Promise<undefined | string>)
      -
      -

      Type declaration

      -
      getAccessTokenWithPopup: ((options?, config?) => Promise<undefined | string>)

      Type declaration

        • (options?, config?): Promise<undefined | string>
        • const token = await getTokenWithPopup(options, config);
          +

          Get an access token interactively.

          Opens a popup with the /authorize URL using the parameters provided as arguments. Random and secure state and nonce parameters will be auto-generated. If the response is successful, results will be valid according to their expiration times.

          -
          -
          -

          Parameters

          -
          -

          Returns Promise<undefined | string>

      -
      - -
      getIdTokenClaims: (() => Promise<undefined | IdToken>)
      -
      -

      Type declaration

      -
      getIdTokenClaims: (() => Promise<undefined | IdToken>)

      Type declaration

        • (): Promise<undefined | IdToken>
        • const claims = await getIdTokenClaims();
          +

          Returns all claims from the id_token if available.

          -
          -

          Returns Promise<undefined | IdToken>

      -
      - -
      handleRedirectCallback: ((url?: string) => Promise<RedirectLoginResult<any>>)
      -
      -

      Type declaration

      -
        -
      • -
          -
        • (url?: string): Promise<RedirectLoginResult<any>>
        • -
        • -

          After the browser redirects back to the callback page, +

          Returns Promise<undefined | IdToken>

      handleRedirectCallback: ((url?) => Promise<RedirectLoginResult<any>>)

      Type declaration

        • (url?): Promise<RedirectLoginResult<any>>
        • After the browser redirects back to the callback page, call handleRedirectCallback to handle success and error responses from Auth0. If the response is successful, results will be valid according to their expiration times.

          -
          -
          -

          Parameters

          -
            -
          • -
            Optional url: string
            -

            The URL to that should be used to retrieve the state and code values. Defaults to window.location.href if not given.

            -
          -

          Returns Promise<RedirectLoginResult<any>>

      -
      - -
      isAuthenticated: boolean
      -
      - -
      isLoading: boolean
      -
      - -
      loginWithPopup: ((options?: PopupLoginOptions, config?: PopupConfigOptions) => Promise<void>)
      -
      -

      Type declaration

      -
        -
      • -
          -
        • (options?: PopupLoginOptions, config?: PopupConfigOptions): Promise<void>
        • -
        • -
          await loginWithPopup(options, config);
          -
          +

          Parameters

          • Optional url: string

            The URL to that should be used to retrieve the state and code values. Defaults to window.location.href if not given.

            +

          Returns Promise<RedirectLoginResult<any>>

      isAuthenticated: boolean
      isLoading: boolean
      loginWithPopup: ((options?, config?) => Promise<void>)

      Type declaration

        • (options?, config?): Promise<void>
        • await loginWithPopup(options, config);
          +

          Opens a popup with the /authorize URL using the parameters provided as arguments. Random and secure state and nonce parameters will be auto-generated. If the response is successful, @@ -244,105 +82,15 @@

          Type declaration

          IMPORTANT: This method has to be called from an event handler that was started by the user like a button click, for example, otherwise the popup will be blocked in most browsers.

          -
          -
          -

          Parameters

          -
          -

          Returns Promise<void>

      -
      - -
      loginWithRedirect: ((options?: RedirectLoginOptions<AppState>) => Promise<void>)
      -
      -

      Type declaration

      -
      loginWithRedirect: ((options?) => Promise<void>)

      Type declaration

        • (options?): Promise<void>
        • await loginWithRedirect(options);
          +

          Performs a redirect to /authorize using the parameters provided as arguments. Random and secure state and nonce parameters will be auto-generated.

          -
          -
          -

          Parameters

          -
          -

          Returns Promise<void>

      -
      - -
      logout: ((options?: LogoutOptions) => Promise<void>)
      -
      -

      Type declaration

      -
      logout: ((options?) => Promise<void>)

      Type declaration

        • (options?): Promise<void>
        • auth0.logout({ logoutParams: { returnTo: window.location.origin } });
          +

          Clears the application session and performs a redirect to /v2/logout, using the parameters provided as arguments, to clear the Auth0 session. If the logoutParams.federated option is specified, it also clears the Identity Provider session. Read more about how Logout works at Auth0.

          -
          -
          -

          Parameters

          -
          -

          Returns Promise<void>

      -
      - -
      user?: TUser
      -
      -
      \ No newline at end of file +

      Parameters

      Returns Promise<void>

user?: TUser
\ No newline at end of file diff --git a/docs/interfaces/Auth0ProviderOptions.html b/docs/interfaces/Auth0ProviderOptions.html index bf6fb3d0..137bb196 100644 --- a/docs/interfaces/Auth0ProviderOptions.html +++ b/docs/interfaces/Auth0ProviderOptions.html @@ -1,138 +1,39 @@ -Auth0ProviderOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface Auth0ProviderOptions

-
-

The main configuration to instantiate the Auth0Provider.

-
-
-

Hierarchy

-
    -
  • Auth0ClientOptions -
      -
    • Auth0ProviderOptions
-
-
-
- -
-
-

Properties

-
- -
auth0Client?: {
    env?: {
        [key: string]: string;
    };
    name: string;
    version: string;
}
-

Internal property to send information about the client to the authorization server.

-
-
-

Type declaration

-
    -
  • -
    Optional env?: {
        [key: string]: string;
    }
    -
      -
    • -
      [key: string]: string
  • -
  • -
    name: string
  • -
  • -
    version: string
-
- -
authorizationParams?: AuthorizationParams
-

URL parameters that will be sent back to the Authorization Server. This can be known parameters +Auth0ProviderOptions | @auth0/auth0-react

Interface Auth0ProviderOptions

The main configuration to instantiate the Auth0Provider.

+
interface Auth0ProviderOptions {
    auth0Client?: {
        env?: {
            [key: string]: string;
        };
        name: string;
        version: string;
    };
    authorizationParams?: AuthorizationParams;
    authorizeTimeoutInSeconds?: number;
    cache?: ICache;
    cacheLocation?: CacheLocation;
    children?: ReactNode;
    clientId: string;
    context?: Context<Auth0ContextInterface<User>>;
    cookieDomain?: string;
    domain: string;
    httpTimeoutInSeconds?: number;
    issuer?: string;
    leeway?: number;
    legacySameSiteCookie?: boolean;
    nowProvider?: (() => number | Promise<number>);
    onRedirectCallback?: ((appState?, user?) => void);
    sessionCheckExpiryDays?: number;
    skipRedirectCallback?: boolean;
    useCookiesForTransactions?: boolean;
    useFormData?: boolean;
    useRefreshTokens?: boolean;
    useRefreshTokensFallback?: boolean;
    workerUrl?: string;
}

Hierarchy

  • Auth0ClientOptions
    • Auth0ProviderOptions

Properties

auth0Client?: {
    env?: {
        [key: string]: string;
    };
    name: string;
    version: string;
}

Internal property to send information about the client to the authorization server.

+

Type declaration

  • Optional env?: {
        [key: string]: string;
    }
    • [key: string]: string
  • name: string
  • version: string
authorizationParams?: AuthorizationParams

URL parameters that will be sent back to the Authorization Server. This can be known parameters defined by Auth0 or custom parameters that you define.

-
-
- -
authorizeTimeoutInSeconds?: number
-

A maximum number of seconds to wait before declaring background calls to /authorize as failed for timeout +

authorizeTimeoutInSeconds?: number

A maximum number of seconds to wait before declaring background calls to /authorize as failed for timeout Defaults to 60s.

-
-
- -
cache?: ICache
-

Specify a custom cache implementation to use for token storage and retrieval. This setting takes precedence over cacheLocation if they are both specified.

-
-
- -
cacheLocation?: CacheLocation
-

The location to use when storing cache data. Valid values are memory or localstorage. +

cache?: ICache

Specify a custom cache implementation to use for token storage and retrieval. This setting takes precedence over cacheLocation if they are both specified.

+
cacheLocation?: CacheLocation

The location to use when storing cache data. Valid values are memory or localstorage. The default setting is memory.

Read more about changing storage options in the Auth0 docs

-
-
- -
children?: ReactNode
-

The child nodes your Provider has wrapped

-
-
- -
clientId: string
-

The Client ID found on your Application settings page

-
-
- -
context?: Context<Auth0ContextInterface<User>>
-

Context to be used when creating the Auth0Provider, defaults to the internally created context.

+
children?: ReactNode

The child nodes your Provider has wrapped

+
clientId: string

The Client ID found on your Application settings page

+
context?: Context<Auth0ContextInterface<User>>

Context to be used when creating the Auth0Provider, defaults to the internally created context.

This allows multiple Auth0Providers to be nested within the same application, the context value can then be passed to useAuth0, withAuth0, or withAuthenticationRequired to use that specific Auth0Provider to access auth state and methods specifically tied to the provider that the context belongs to.

@@ -145,225 +46,60 @@
-
- -
cookieDomain?: string
-

The domain the cookie is accessible from. If not set, the cookie is scoped to +

cookieDomain?: string

The domain the cookie is accessible from. If not set, the cookie is scoped to the current domain, including the subdomain.

Note: setting this incorrectly may cause silent authentication to stop working on page load.

To keep a user logged in across multiple subdomains set this to your top-level domain and prefixed with a . (eg: .example.com).

-
-
- -
domain: string
-

Your Auth0 account domain such as 'example.auth0.com', +

domain: string

Your Auth0 account domain such as 'example.auth0.com', 'example.eu.auth0.com' or , 'example.mycompany.com' (when using custom domains)

-
-
- -
httpTimeoutInSeconds?: number
-

Specify the timeout for HTTP calls using fetch. The default is 10 seconds.

-
-
- -
issuer?: string
-

The issuer to be used for validation of JWTs, optionally defaults to the domain above

-
-
- -
leeway?: number
-

The value in seconds used to account for clock skew in JWT expirations. +

httpTimeoutInSeconds?: number

Specify the timeout for HTTP calls using fetch. The default is 10 seconds.

+
issuer?: string

The issuer to be used for validation of JWTs, optionally defaults to the domain above

+
leeway?: number

The value in seconds used to account for clock skew in JWT expirations. Typically, this value is no more than a minute or two at maximum. Defaults to 60s.

-
-
- -
legacySameSiteCookie?: boolean
-

Sets an additional cookie with no SameSite attribute to support legacy browsers +

legacySameSiteCookie?: boolean

Sets an additional cookie with no SameSite attribute to support legacy browsers that are not compatible with the latest SameSite changes. This will log a warning on modern browsers, you can disable the warning by setting this to false but be aware that some older useragents will not work, See https://www.chromium.org/updates/same-site/incompatible-clients Defaults to true

-
-
- -
nowProvider?: (() => number | Promise<number>)
-
-

Type declaration

-
    -
  • -
      -
    • (): number | Promise<number>
    • -
    • -

      Modify the value used as the current time during the token validation.

      +
nowProvider?: (() => number | Promise<number>)

Type declaration

    • (): number | Promise<number>
    • Modify the value used as the current time during the token validation.

      Note: Using this improperly can potentially compromise the token validation.

      -
      -

      Returns number | Promise<number>

-
- -
onRedirectCallback?: ((appState?: AppState, user?: User) => void)
-
-

Type declaration

-
    -
  • -
      -
    • (appState?: AppState, user?: User): void
    • -
    • -

      By default this removes the code and state parameters from the url when you are redirected from the authorize page. +

      Returns number | Promise<number>

onRedirectCallback?: ((appState?, user?) => void)

Type declaration

    • (appState?, user?): void
    • By default this removes the code and state parameters from the url when you are redirected from the authorize page. It uses window.history but you might want to overwrite this if you are using a custom router, like react-router-dom See the EXAMPLES.md for more info.

      -
      -
      -

      Parameters

      -
      -

      Returns void

-
- -
sessionCheckExpiryDays?: number
-

Number of days until the cookie auth0.is.authenticated will expire +

Parameters

Returns void

sessionCheckExpiryDays?: number

Number of days until the cookie auth0.is.authenticated will expire Defaults to 1.

-
-
- -
skipRedirectCallback?: boolean
-

By default, if the page url has code/state params, the SDK will treat them as Auth0's and attempt to exchange the +

skipRedirectCallback?: boolean

By default, if the page url has code/state params, the SDK will treat them as Auth0's and attempt to exchange the code for a token. In some cases the code might be for something else (another OAuth SDK perhaps). In these instances you can instruct the client to ignore them eg

<Auth0Provider
clientId={clientId}
domain={domain}
skipRedirectCallback={window.location.pathname === '/stripe-oauth-callback'}
> -
-
-
- -
useCookiesForTransactions?: boolean
-

If true, the SDK will use a cookie when storing information about the auth transaction while + +

useCookiesForTransactions?: boolean

If true, the SDK will use a cookie when storing information about the auth transaction while the user is going through the authentication flow on the authorization server.

The default is false, in which case the SDK will use session storage.

- -

Notes

You might want to enable this if you rely on your users being able to authenticate using flows that +

Notes

You might want to enable this if you rely on your users being able to authenticate using flows that may end up spanning across multiple tabs (e.g. magic links) or you cannot otherwise rely on session storage being available.

-
-
- -
useFormData?: boolean
-

If true, data to the token endpoint is transmitted as x-www-form-urlencoded data, if false it will be transmitted as JSON. The default setting is true.

+
useFormData?: boolean

If true, data to the token endpoint is transmitted as x-www-form-urlencoded data, if false it will be transmitted as JSON. The default setting is true.

Note: Setting this to false may affect you if you use Auth0 Rules and are sending custom, non-primitive data. If you disable this, please verify that your Auth0 Rules continue to work as intended.

-
-
- -
useRefreshTokens?: boolean
-

If true, refresh tokens are used to fetch new access tokens from the Auth0 server. If false, the legacy technique of using a hidden iframe and the authorization_code grant with prompt=none is used. +

useRefreshTokens?: boolean

If true, refresh tokens are used to fetch new access tokens from the Auth0 server. If false, the legacy technique of using a hidden iframe and the authorization_code grant with prompt=none is used. The default setting is false.

Note: Use of refresh tokens must be enabled by an administrator on your Auth0 client application.

-
-
- -
useRefreshTokensFallback?: boolean
-

If true, fallback to the technique of using a hidden iframe and the authorization_code grant with prompt=none when unable to use refresh tokens. If false, the iframe fallback is not used and +

useRefreshTokensFallback?: boolean

If true, fallback to the technique of using a hidden iframe and the authorization_code grant with prompt=none when unable to use refresh tokens. If false, the iframe fallback is not used and errors relating to a failed refresh_token grant should be handled appropriately. The default setting is false.

Note: There might be situations where doing silent auth with a Web Message response from an iframe is not possible, like when you're serving your application from the file system or a custom protocol (like in a Desktop or Native app). In situations like this you can disable the iframe fallback and handle the failed refresh_token grant and prompt the user to login interactively with loginWithRedirect or loginWithPopup."

E.g. Using the file: protocol in an Electron application does not support that legacy technique.

- -

Example

let token: string;
try {
token = await auth0.getTokenSilently();
} catch (e) {
if (e.error === 'missing_refresh_token' || e.error === 'invalid_grant') {
auth0.loginWithRedirect();
}
} -
-
-
-
\ No newline at end of file +

Example

let token: string;
try {
token = await auth0.getTokenSilently();
} catch (e) {
if (e.error === 'missing_refresh_token' || e.error === 'invalid_grant') {
auth0.loginWithRedirect();
}
} +
+
workerUrl?: string

If provided, the SDK will load the token worker from this URL instead of the integrated blob. An example of when this is useful is if you have strict +Content-Security-Policy (CSP) and wish to avoid needing to set worker-src: blob:. We recommend either serving the worker, which you can find in the module +at <module_path>/dist/auth0-spa-js.worker.production.js, from the same host as your application or using the Auth0 CDN +https://cdn.auth0.com/js/auth0-spa-js/<version>/auth0-spa-js.worker.production.js.

+

Note: The worker is only used when useRefreshTokens: true, cacheLocation: 'memory', and the cache is not custom.

+
\ No newline at end of file diff --git a/docs/interfaces/AuthorizationParams.html b/docs/interfaces/AuthorizationParams.html index f80f1308..15a719f8 100644 --- a/docs/interfaces/AuthorizationParams.html +++ b/docs/interfaces/AuthorizationParams.html @@ -1,218 +1,63 @@ -AuthorizationParams | @auth0/auth0-react
-
- -
-
-
-
- -

Interface AuthorizationParams

-
-

Hierarchy

-
    -
  • AuthorizationParams
-
-

Indexable

-
[key: string]: any
-
-
-
- -
-
-

Properties

-
- -
acr_values?: string
-
- -
audience?: string
-

The default audience to be used for requesting API access.

-
-
- -
connection?: string
-

The name of the connection configured for your application. +AuthorizationParams | @auth0/auth0-react

Interface AuthorizationParams

interface AuthorizationParams {
    acr_values?: string;
    audience?: string;
    connection?: string;
    display?: "page" | "popup" | "touch" | "wap";
    id_token_hint?: string;
    invitation?: string;
    login_hint?: string;
    max_age?: string | number;
    organization?: string;
    prompt?: "none" | "login" | "consent" | "select_account";
    redirect_uri?: string;
    scope?: string;
    screen_hint?: string;
    ui_locales?: string;
    [key: string]: any;
}

Indexable

[key: string]: any

If you need to send custom parameters to the Authorization Server, +make sure to use the original parameter name.

+

Properties

acr_values?: string
audience?: string

The default audience to be used for requesting API access.

+
connection?: string

The name of the connection configured for your application. If null, it will redirect to the Auth0 Login Page and show the Login Widget.

-
-
- -
display?: "page" | "popup" | "touch" | "wap"
-
    +
display?: "page" | "popup" | "touch" | "wap"
  • 'page': displays the UI with a full page view
  • 'popup': displays the UI with a popup window
  • 'touch': displays the UI in a way that leverages a touch interface
  • 'wap': displays the UI with a "feature phone" type interface
-
-
- -
id_token_hint?: string
-

Previously issued ID Token.

-
-
- -
invitation?: string
-

The Id of an invitation to accept. This is available from the user invitation URL that is given when participating in a user invitation flow.

-
-
- -
login_hint?: string
-

The user's email address or other identifier. When your app knows +

id_token_hint?: string

Previously issued ID Token.

+
invitation?: string

The Id of an invitation to accept. This is available from the user invitation URL that is given when participating in a user invitation flow.

+
login_hint?: string

The user's email address or other identifier. When your app knows which user is trying to authenticate, you can provide this parameter to pre-fill the email box or select the right session for sign-in.

This currently only affects the classic Lock experience.

-
-
- -
max_age?: string | number
-

Maximum allowable elapsed time (in seconds) since authentication. +

max_age?: string | number

Maximum allowable elapsed time (in seconds) since authentication. If the last time the user authenticated is greater than this value, the user must be reauthenticated.

-
-
- -
organization?: string
-

The organization to log in to.

+
organization?: string

The organization to log in to.

This will specify an organization parameter in your user's login request.

  • If you provide an Organization ID (a string with the prefix org_), it will be validated against the org_id claim of your user's ID Token. The validation is case-sensitive.
  • If you provide an Organization Name (a string without the prefix org_), it will be validated against the org_name claim of your user's ID Token. The validation is case-insensitive.
-
-
- -
prompt?: "none" | "login" | "consent" | "select_account"
-
    +
prompt?: "none" | "login" | "consent" | "select_account"
  • 'none': do not prompt user for login or consent on reauthentication
  • 'login': prompt user for reauthentication
  • 'consent': prompt user for consent before processing request
  • 'select_account': prompt user to select an account
-
-
- -
redirect_uri?: string
-

The default URL where Auth0 will redirect your browser to with +

redirect_uri?: string

The default URL where Auth0 will redirect your browser to with the authentication result. It must be whitelisted in the "Allowed Callback URLs" field in your Auth0 Application's settings. If not provided here, it should be provided in the other methods that provide authentication.

-
-
- -
scope?: string
-

The default scope to be used on authentication requests.

+
scope?: string

The default scope to be used on authentication requests.

This defaults to profile email if not set. If you are setting extra scopes and require profile and email to be included then you must include them in the provided scope.

Note: The openid scope is always applied regardless of this setting.

-
-
- -
screen_hint?: string
-

Provides a hint to Auth0 as to what flow should be displayed. +

screen_hint?: string

Provides a hint to Auth0 as to what flow should be displayed. The default behavior is to show a login page but you can override this by passing 'signup' to show the signup page instead.

This only affects the New Universal Login Experience.

-
-
- -
ui_locales?: string
-

The space-separated list of language tags, ordered by preference. +

ui_locales?: string

The space-separated list of language tags, ordered by preference. For example: 'fr-CA fr en'.

-
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/GetTokenSilentlyOptions.html b/docs/interfaces/GetTokenSilentlyOptions.html index 22c17e93..e00922c6 100644 --- a/docs/interfaces/GetTokenSilentlyOptions.html +++ b/docs/interfaces/GetTokenSilentlyOptions.html @@ -1,122 +1,25 @@ -GetTokenSilentlyOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface GetTokenSilentlyOptions

-
-

Hierarchy

-
    -
  • GetTokenSilentlyOptions
-
-
-
- -
-
-

Properties

-
- -
authorizationParams?: {
    audience?: string;
    redirect_uri?: string;
    scope?: string;
    [key: string]: any;
}
-

Parameters that will be sent back to Auth0 as part of a request.

-
-
-

Type declaration

-
    -
  • -
    [key: string]: any
  • -
  • -
    Optional audience?: string
    -

    The audience that was used in the authentication request

    -
  • -
  • -
    Optional redirect_uri?: string
    -

    There's no actual redirect when getting a token silently, +GetTokenSilentlyOptions | @auth0/auth0-react

    Interface GetTokenSilentlyOptions

    interface GetTokenSilentlyOptions {
        authorizationParams?: {
            audience?: string;
            redirect_uri?: string;
            scope?: string;
            [key: string]: any;
        };
        cacheMode?: "on" | "off" | "cache-only";
        detailedResponse?: boolean;
        timeoutInSeconds?: number;
    }

    Properties

    authorizationParams?: {
        audience?: string;
        redirect_uri?: string;
        scope?: string;
        [key: string]: any;
    }

    Parameters that will be sent back to Auth0 as part of a request.

    +

    Type declaration

    • [key: string]: any

      If you need to send custom parameters to the Authorization Server, +make sure to use the original parameter name.

      +
    • Optional audience?: string

      The audience that was used in the authentication request

      +
    • Optional redirect_uri?: string

      There's no actual redirect when getting a token silently, but, according to the spec, a redirect_uri param is required. Auth0 uses this parameter to validate that the current origin matches the redirect_uri origin when sending the response. It must be whitelisted in the "Allowed Web Origins" in your Auth0 Application's settings.

      -
    • -
    • -
      Optional scope?: string
      -

      The scope that was used in the authentication request

      -
    -
    - -
    cacheMode?: "on" | "off" | "cache-only"
    -

    When off, ignores the cache and always sends a +

  • Optional scope?: string

    The scope that was used in the authentication request

    +
cacheMode?: "on" | "off" | "cache-only"

When off, ignores the cache and always sends a request to Auth0. When cache-only, only reads from the cache and never sends a request to Auth0. Defaults to on, where it both reads from the cache and sends a request to Auth0 as needed.

-
-
- -
detailedResponse?: boolean
-

If true, the full response from the /oauth/token endpoint (or the cache, if the cache was used) is returned +

detailedResponse?: boolean

If true, the full response from the /oauth/token endpoint (or the cache, if the cache was used) is returned (minus refresh_token if one was issued). Otherwise, just the access token is returned.

The default is false.

-
-
- -
timeoutInSeconds?: number
-

A maximum number of seconds to wait before declaring the background /authorize call as failed for timeout +

timeoutInSeconds?: number

A maximum number of seconds to wait before declaring the background /authorize call as failed for timeout Defaults to 60s.

-
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/GetTokenWithPopupOptions.html b/docs/interfaces/GetTokenWithPopupOptions.html index 183f37c8..9c88eaaa 100644 --- a/docs/interfaces/GetTokenWithPopupOptions.html +++ b/docs/interfaces/GetTokenWithPopupOptions.html @@ -1,82 +1,8 @@ -GetTokenWithPopupOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface GetTokenWithPopupOptions

-
-

Hierarchy

-
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
authorizationParams?: AuthorizationParams
-

URL parameters that will be sent back to the Authorization Server. This can be known parameters +GetTokenWithPopupOptions | @auth0/auth0-react

Interface GetTokenWithPopupOptions

interface GetTokenWithPopupOptions {
    authorizationParams?: AuthorizationParams;
    cacheMode?: "on" | "off" | "cache-only";
}

Hierarchy

Properties

authorizationParams?: AuthorizationParams

URL parameters that will be sent back to the Authorization Server. This can be known parameters defined by Auth0 or custom parameters that you define.

-
-
- -
cacheMode?: "on" | "off" | "cache-only"
-

When off, ignores the cache and always sends a request to Auth0. +

cacheMode?: "on" | "off" | "cache-only"

When off, ignores the cache and always sends a request to Auth0. When cache-only, only reads from the cache and never sends a request to Auth0. Defaults to on, where it both reads from the cache and sends a request to Auth0 as needed.

-
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/ICache.html b/docs/interfaces/ICache.html index 68258559..31e3be05 100644 --- a/docs/interfaces/ICache.html +++ b/docs/interfaces/ICache.html @@ -1,129 +1,5 @@ -ICache | @auth0/auth0-react
-
- -
-
-
-
- -

Interface ICache

-
-

Hierarchy

-
    -
  • ICache
-
-

Implemented by

-
-
-
-
- -
-
-

Methods

-
-
-

Methods

-
- -
    - -
  • -

    Returns MaybePromise<string[]>

-
- -
    - -
  • -
    -

    Type Parameters

    -
    -
    -

    Parameters

    -
      -
    • -
      key: string
    -

    Returns MaybePromise<undefined | T>

-
- -
    - -
  • -
    -

    Parameters

    -
      -
    • -
      key: string
    -

    Returns MaybePromise<void>

-
- -
    - -
  • -
    -

    Type Parameters

    -
    -
    -

    Parameters

    -
      -
    • -
      key: string
    • -
    • -
      entry: T
    -

    Returns MaybePromise<void>

-
-
\ No newline at end of file +ICache | @auth0/auth0-react

Interface ICache

interface ICache {
    allKeys?(): MaybePromise<string[]>;
    get<T>(key): MaybePromise<undefined | T>;
    remove(key): MaybePromise<void>;
    set<T>(key, entry): MaybePromise<void>;
}

Implemented by

Methods

Methods

  • Returns MaybePromise<string[]>

  • Type Parameters

    Parameters

    • key: string

    Returns MaybePromise<undefined | T>

  • Parameters

    • key: string

    Returns MaybePromise<void>

  • Type Parameters

    Parameters

    • key: string
    • entry: T

    Returns MaybePromise<void>

\ No newline at end of file diff --git a/docs/interfaces/IdToken.html b/docs/interfaces/IdToken.html index 5578ccbe..dd6defcf 100644 --- a/docs/interfaces/IdToken.html +++ b/docs/interfaces/IdToken.html @@ -1,327 +1,39 @@ -IdToken | @auth0/auth0-react
-
- -
-
-
-
- -

Interface IdToken

-
-

Hierarchy

-
    -
  • IdToken
-
-

Indexable

-
[key: string]: any
-
-
-
- -
-
-

Properties

-
- -
__raw: string
-
- -
acr?: string
-
- -
address?: string
-
- -
amr?: string[]
-
- -
at_hash?: string
-
- -
aud?: string
-
- -
auth_time?: string
-
- -
azp?: string
-
- -
birthdate?: string
-
- -
c_hash?: string
-
- -
cnf?: string
-
- -
email?: string
-
- -
email_verified?: boolean
-
- -
exp?: number
-
- -
family_name?: string
-
- -
gender?: string
-
- -
given_name?: string
-
- -
iat?: number
-
- -
iss?: string
-
- -
jti?: string
-
- -
locale?: string
-
- -
middle_name?: string
-
- -
name?: string
-
- -
nbf?: number
-
- -
nickname?: string
-
- -
nonce?: string
-
- -
org_id?: string
-
- -
org_name?: string
-
- -
phone_number?: string
-
- -
phone_number_verified?: boolean
-
- -
picture?: string
-
- -
preferred_username?: string
-
- -
profile?: string
-
- -
sid?: string
-
- -
sub_jwk?: string
-
- -
updated_at?: string
-
- -
website?: string
-
- -
zoneinfo?: string
-
-
\ No newline at end of file +IdToken | @auth0/auth0-react

Interface IdToken

interface IdToken {
    __raw: string;
    acr?: string;
    address?: string;
    amr?: string[];
    at_hash?: string;
    aud?: string;
    auth_time?: string;
    azp?: string;
    birthdate?: string;
    c_hash?: string;
    cnf?: string;
    email?: string;
    email_verified?: boolean;
    exp?: number;
    family_name?: string;
    gender?: string;
    given_name?: string;
    iat?: number;
    iss?: string;
    jti?: string;
    locale?: string;
    middle_name?: string;
    name?: string;
    nbf?: number;
    nickname?: string;
    nonce?: string;
    org_id?: string;
    org_name?: string;
    phone_number?: string;
    phone_number_verified?: boolean;
    picture?: string;
    preferred_username?: string;
    profile?: string;
    sid?: string;
    sub_jwk?: string;
    updated_at?: string;
    website?: string;
    zoneinfo?: string;
    [key: string]: any;
}

Indexable

[key: string]: any

Properties

__raw: string
acr?: string
address?: string
amr?: string[]
at_hash?: string
aud?: string
auth_time?: string
azp?: string
birthdate?: string
c_hash?: string
cnf?: string
email?: string
email_verified?: boolean
exp?: number
family_name?: string
gender?: string
given_name?: string
iat?: number
iss?: string
jti?: string
locale?: string
middle_name?: string
name?: string
nbf?: number
nickname?: string
nonce?: string
org_id?: string
org_name?: string
phone_number?: string
phone_number_verified?: boolean
picture?: string
preferred_username?: string
profile?: string
sid?: string
sub_jwk?: string
updated_at?: string
website?: string
zoneinfo?: string
\ No newline at end of file diff --git a/docs/interfaces/LogoutOptions.html b/docs/interfaces/LogoutOptions.html index f82097a6..7f6e0f2b 100644 --- a/docs/interfaces/LogoutOptions.html +++ b/docs/interfaces/LogoutOptions.html @@ -1,73 +1,18 @@ -LogoutOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface LogoutOptions

-
-

Hierarchy

-
    -
  • Omit<SPALogoutOptions, "onRedirect"> -
      -
    • LogoutOptions
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
clientId?: null | string
-

The clientId of your application.

+LogoutOptions | @auth0/auth0-react

Interface LogoutOptions

interface LogoutOptions {
    clientId?: null | string;
    logoutParams?: {
        federated?: boolean;
        returnTo?: string;
        [key: string]: any;
    };
    openUrl?: false | ((url) => void | Promise<void>);
}

Hierarchy

  • Omit<SPALogoutOptions, "onRedirect">
    • LogoutOptions

Properties

clientId?: null | string

The clientId of your application.

If this property is not set, then the clientId that was used during initialization of the SDK is sent to the logout endpoint.

If this property is set to null, then no client ID value is sent to the logout endpoint.

Read more about how redirecting after logout works

-
-
- -
logoutParams?: {
    federated?: boolean;
    returnTo?: string;
    [key: string]: any;
}
-

Parameters to pass to the logout endpoint. This can be known parameters defined by Auth0 or custom parameters +

logoutParams?: {
    federated?: boolean;
    returnTo?: string;
    [key: string]: any;
}

Parameters to pass to the logout endpoint. This can be known parameters defined by Auth0 or custom parameters you wish to provide.

-
-
-

Type declaration

-
    -
  • -
    [key: string]: any
  • -
  • -
    Optional federated?: boolean
    -

    When supported by the upstream identity provider, +

    Type declaration

    • [key: string]: any

      If you need to send custom parameters to the logout endpoint, make sure to use the original parameter name.

      +
    • Optional federated?: boolean

      When supported by the upstream identity provider, forces the user to logout of their identity provider and from Auth0. Read more about how federated logout works at Auth0

      -
    • -
    • -
      Optional returnTo?: string
      -

      The URL where Auth0 will redirect your browser to after the logout.

      +
    • Optional returnTo?: string

      The URL where Auth0 will redirect your browser to after the logout.

      Note: If the client_id parameter is included, the returnTo URL that is provided must be listed in the Application's "Allowed Logout URLs" in the Auth0 dashboard. @@ -75,50 +20,10 @@

      Optional returnToreturnTo URL must be listed in the "Allowed Logout URLs" at the account level in the Auth0 dashboard.

      Read more about how redirecting after logout works

      -
-
- -
openUrl?: false | ((url: string) => void | Promise<void>)
-

Used to control the redirect and not rely on the SDK to do the actual redirect.

+
openUrl?: false | ((url) => void | Promise<void>)

Used to control the redirect and not rely on the SDK to do the actual redirect.

Set to false to disable the redirect, or provide a function to handle the actual redirect yourself.

- -

Example

await auth0.logout({
openUrl(url) {
window.location.replace(url);
}
}); -
- -

Example

import { Browser } from '@capacitor/browser';

await auth0.logout({
async openUrl(url) {
await Browser.open({ url });
}
}); -
-
-
-
\ No newline at end of file +

Type declaration

    • (url): void | Promise<void>
    • Parameters

      • url: string

      Returns void | Promise<void>

Example

await auth0.logout({
openUrl(url) {
window.location.replace(url);
}
}); +
+

Example

import { Browser } from '@capacitor/browser';

await auth0.logout({
async openUrl(url) {
await Browser.open({ url });
}
}); +
+
\ No newline at end of file diff --git a/docs/interfaces/LogoutUrlOptions.html b/docs/interfaces/LogoutUrlOptions.html index 0c452c30..480e9b83 100644 --- a/docs/interfaces/LogoutUrlOptions.html +++ b/docs/interfaces/LogoutUrlOptions.html @@ -1,69 +1,17 @@ -LogoutUrlOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface LogoutUrlOptions

-
-

Hierarchy

-
    -
  • LogoutUrlOptions
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
clientId?: null | string
-

The clientId of your application.

+LogoutUrlOptions | @auth0/auth0-react

Interface LogoutUrlOptions

interface LogoutUrlOptions {
    clientId?: null | string;
    logoutParams?: {
        federated?: boolean;
        returnTo?: string;
        [key: string]: any;
    };
}

Properties

clientId?: null | string

The clientId of your application.

If this property is not set, then the clientId that was used during initialization of the SDK is sent to the logout endpoint.

If this property is set to null, then no client ID value is sent to the logout endpoint.

Read more about how redirecting after logout works

-
-
- -
logoutParams?: {
    federated?: boolean;
    returnTo?: string;
    [key: string]: any;
}
-

Parameters to pass to the logout endpoint. This can be known parameters defined by Auth0 or custom parameters +

logoutParams?: {
    federated?: boolean;
    returnTo?: string;
    [key: string]: any;
}

Parameters to pass to the logout endpoint. This can be known parameters defined by Auth0 or custom parameters you wish to provide.

-
-
-

Type declaration

-
    -
  • -
    [key: string]: any
  • -
  • -
    Optional federated?: boolean
    -

    When supported by the upstream identity provider, +

    Type declaration

    • [key: string]: any

      If you need to send custom parameters to the logout endpoint, make sure to use the original parameter name.

      +
    • Optional federated?: boolean

      When supported by the upstream identity provider, forces the user to logout of their identity provider and from Auth0. Read more about how federated logout works at Auth0

      -
    • -
    • -
      Optional returnTo?: string
      -

      The URL where Auth0 will redirect your browser to after the logout.

      +
    • Optional returnTo?: string

      The URL where Auth0 will redirect your browser to after the logout.

      Note: If the client_id parameter is included, the returnTo URL that is provided must be listed in the Application's "Allowed Logout URLs" in the Auth0 dashboard. @@ -71,33 +19,4 @@

      Optional returnToreturnTo URL must be listed in the "Allowed Logout URLs" at the account level in the Auth0 dashboard.

      Read more about how redirecting after logout works

      -
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/PopupConfigOptions.html b/docs/interfaces/PopupConfigOptions.html index 0774add4..35197f57 100644 --- a/docs/interfaces/PopupConfigOptions.html +++ b/docs/interfaces/PopupConfigOptions.html @@ -1,79 +1,8 @@ -PopupConfigOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface PopupConfigOptions

-
-

Hierarchy

-
    -
  • PopupConfigOptions
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
popup?: any
-

Accepts an already-created popup window to use. If not specified, the SDK +PopupConfigOptions | @auth0/auth0-react

Interface PopupConfigOptions

interface PopupConfigOptions {
    popup?: any;
    timeoutInSeconds?: number;
}

Properties

popup?: any

Accepts an already-created popup window to use. If not specified, the SDK will create its own. This may be useful for platforms like iOS that have security restrictions around when popups can be invoked (e.g. from a user click event)

-
-
- -
timeoutInSeconds?: number
-

The number of seconds to wait for a popup response before +

timeoutInSeconds?: number

The number of seconds to wait for a popup response before throwing a timeout error. Defaults to 60s

-
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/PopupLoginOptions.html b/docs/interfaces/PopupLoginOptions.html index d0c88d87..9e06f6eb 100644 --- a/docs/interfaces/PopupLoginOptions.html +++ b/docs/interfaces/PopupLoginOptions.html @@ -1,73 +1,4 @@ -PopupLoginOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface PopupLoginOptions

-
-

Hierarchy

-
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
authorizationParams?: AuthorizationParams
-

URL parameters that will be sent back to the Authorization Server. This can be known parameters +PopupLoginOptions | @auth0/auth0-react

Interface PopupLoginOptions

interface PopupLoginOptions {
    authorizationParams?: AuthorizationParams;
}

Hierarchy

Properties

authorizationParams?: AuthorizationParams

URL parameters that will be sent back to the Authorization Server. This can be known parameters defined by Auth0 or custom parameters that you define.

-
-
-
\ No newline at end of file +
\ No newline at end of file diff --git a/docs/interfaces/RedirectLoginOptions.html b/docs/interfaces/RedirectLoginOptions.html index ca41e869..2465aef7 100644 --- a/docs/interfaces/RedirectLoginOptions.html +++ b/docs/interfaces/RedirectLoginOptions.html @@ -1,125 +1,14 @@ -RedirectLoginOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface RedirectLoginOptions<TAppState>

-
-

Type Parameters

-
-
-

Hierarchy

-
    -
  • Omit<SPARedirectLoginOptions<TAppState>, "onRedirect"> -
      -
    • RedirectLoginOptions
-
-
-
- -
-
-

Properties

-
- -
appState?: TAppState
-

Used to store state before doing the redirect

-
-
- -
authorizationParams?: AuthorizationParams
-

URL parameters that will be sent back to the Authorization Server. This can be known parameters +RedirectLoginOptions | @auth0/auth0-react

Interface RedirectLoginOptions<TAppState>

interface RedirectLoginOptions {
    appState?: TAppState;
    authorizationParams?: AuthorizationParams;
    fragment?: string;
    openUrl?: ((url) => void | Promise<void>);
}

Type Parameters

Hierarchy

  • Omit<SPARedirectLoginOptions<TAppState>, "onRedirect">
    • RedirectLoginOptions

Properties

appState?: TAppState

Used to store state before doing the redirect

+
authorizationParams?: AuthorizationParams

URL parameters that will be sent back to the Authorization Server. This can be known parameters defined by Auth0 or custom parameters that you define.

-
-
- -
fragment?: string
-

Used to add to the URL fragment before redirecting

-
-
- -
openUrl?: ((url: string) => void | Promise<void>)
-
-

Type declaration

-
    -
  • -
      -
    • (url: string): void | Promise<void>
    • -
    • -

      Used to control the redirect and not rely on the SDK to do the actual redirect.

      - -

      Example

      const client = new Auth0Client({
      openUrl(url) {
      window.location.replace(url);
      }
      }); -
      - -

      Example

      import { Browser } from '@capacitor/browser';

      const client = new Auth0Client({
      async openUrl(url) {
      await Browser.open({ url });
      }
      }); -
      -
      -
      -

      Parameters

      -
        -
      • -
        url: string
      -

      Returns void | Promise<void>

-
-
\ No newline at end of file +
fragment?: string

Used to add to the URL fragment before redirecting

+
openUrl?: ((url) => void | Promise<void>)

Type declaration

    • (url): void | Promise<void>
    • Used to control the redirect and not rely on the SDK to do the actual redirect.

      +

      Parameters

      • url: string

      Returns void | Promise<void>

      Example

      const client = new Auth0Client({
      openUrl(url) {
      window.location.replace(url);
      }
      }); +
      +

      Example

      import { Browser } from '@capacitor/browser';

      const client = new Auth0Client({
      async openUrl(url) {
      await Browser.open({ url });
      }
      }); +
      +
\ No newline at end of file diff --git a/docs/interfaces/WithAuth0Props.html b/docs/interfaces/WithAuth0Props.html index 44cd4592..f9f9e2d9 100644 --- a/docs/interfaces/WithAuth0Props.html +++ b/docs/interfaces/WithAuth0Props.html @@ -1,68 +1,3 @@ -WithAuth0Props | @auth0/auth0-react
-
- -
-
-
-
- -

Interface WithAuth0Props

-
-

Components wrapped in withAuth0 will have an additional auth0 prop

-
-
-

Hierarchy

-
    -
  • WithAuth0Props
-
-
-
- -
-
-

Properties

-
-
-

Properties

-
- -
-
-
\ No newline at end of file +WithAuth0Props | @auth0/auth0-react
\ No newline at end of file diff --git a/docs/interfaces/WithAuthenticationRequiredOptions.html b/docs/interfaces/WithAuthenticationRequiredOptions.html index 52201831..27c6e806 100644 --- a/docs/interfaces/WithAuthenticationRequiredOptions.html +++ b/docs/interfaces/WithAuthenticationRequiredOptions.html @@ -1,136 +1,26 @@ -WithAuthenticationRequiredOptions | @auth0/auth0-react
-
- -
-
-
-
- -

Interface WithAuthenticationRequiredOptions

-
-

Options for the withAuthenticationRequired Higher Order Component

-
-
-

Hierarchy

-
    -
  • WithAuthenticationRequiredOptions
-
-
-
- -
-
-

Properties

-
- -
context?: Context<Auth0ContextInterface<User>>
-

The context to be used when calling useAuth0, this should only be provided if you are using multiple Auth0Providers +WithAuthenticationRequiredOptions | @auth0/auth0-react

Interface WithAuthenticationRequiredOptions

Options for the withAuthenticationRequired Higher Order Component

+
interface WithAuthenticationRequiredOptions {
    context?: Context<Auth0ContextInterface<User>>;
    loginOptions?: RedirectLoginOptions<AppState>;
    onBeforeAuthentication?: (() => Promise<void>);
    onRedirecting?: (() => Element);
    returnTo?: string | (() => string);
}

Properties

context?: Context<Auth0ContextInterface<User>>

The context to be used when calling useAuth0, this should only be provided if you are using multiple Auth0Providers within your application and you wish to tie a specific component to a Auth0Provider other than the Auth0Provider associated with the default Auth0Context.

-
-
- - -
withAuthenticationRequired(Profile, {
loginOptions: {
appState: {
customProp: 'foo'
}
}
}) -
+
withAuthenticationRequired(Profile, {
loginOptions: {
appState: {
customProp: 'foo'
}
}
}) +

Pass additional login options, like extra appState to the login page. This will be merged with the returnTo option used by the onRedirectCallback handler.

-
-
- -
onBeforeAuthentication?: (() => Promise<void>)
-
-

Type declaration

-
    -
  • -
onBeforeAuthentication?: (() => Promise<void>)

Type declaration

    • (): Promise<void>
    • withAuthenticationRequired(Profile, {
      onBeforeAuthentication: () => { analyticsLibrary.track('login_triggered'); }
      }) +

      Allows executing logic before the user is redirected to the login page.

      -
      -

      Returns Promise<void>

-
- -
onRedirecting?: (() => Element)
-
-

Type declaration

-
    -
  • -
      -
    • (): Element
    • -
    • -
      withAuthenticationRequired(Profile, {
      onRedirecting: () => <div>Redirecting you to the login...</div>
      }) -
      +

      Returns Promise<void>

onRedirecting?: (() => Element)

Type declaration

    • (): Element
    • withAuthenticationRequired(Profile, {
      onRedirecting: () => <div>Redirecting you to the login...</div>
      }) +

      Render a message to show that the user is being redirected to the login.

      -
      -

      Returns Element

-
- -
returnTo?: string | (() => string)
-
withAuthenticationRequired(Profile, {
returnTo: '/profile'
}) -
+

Returns Element

returnTo?: string | (() => string)
withAuthenticationRequired(Profile, {
returnTo: '/profile'
}) +

or

withAuthenticationRequired(Profile, {
returnTo: () => window.location.hash.substr(1)
}) -
+

Add a path for the onRedirectCallback handler to return the user to after login.

-
-
-
\ No newline at end of file +

Type declaration

    • (): string
    • Returns string

\ No newline at end of file diff --git a/docs/modules.html b/docs/modules.html index cc9ed327..9f8063ba 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1,107 +1,34 @@ -@auth0/auth0-react
-
- -
- -
\ No newline at end of file +@auth0/auth0-react
\ No newline at end of file diff --git a/docs/types/AppState.html b/docs/types/AppState.html index 123f056a..8983038d 100644 --- a/docs/types/AppState.html +++ b/docs/types/AppState.html @@ -1,78 +1,2 @@ -AppState | @auth0/auth0-react
-
- -
-
-
-
- -

Type alias AppState

-
AppState: {
    returnTo?: string;
    [key: string]: any;
}
-

The state of the application before the user was redirected to the login page.

-
-
-

Type declaration

-
    -
  • -
    [key: string]: any
  • -
  • -
    Optional returnTo?: string
-
-
\ No newline at end of file +AppState | @auth0/auth0-react

Type alias AppState

AppState: {
    returnTo?: string;
    [key: string]: any;
}

The state of the application before the user was redirected to the login page.

+

Type declaration

  • [key: string]: any
  • Optional returnTo?: string
\ No newline at end of file diff --git a/docs/types/CacheLocation.html b/docs/types/CacheLocation.html index aece520f..e09585fd 100644 --- a/docs/types/CacheLocation.html +++ b/docs/types/CacheLocation.html @@ -1,71 +1,2 @@ -CacheLocation | @auth0/auth0-react
-
- -
-
-
-
- -

Type alias CacheLocation

-
CacheLocation: "memory" | "localstorage"
-

The possible locations where tokens can be stored

-
-
-
\ No newline at end of file +CacheLocation | @auth0/auth0-react

Type alias CacheLocation

CacheLocation: "memory" | "localstorage"

The possible locations where tokens can be stored

+
\ No newline at end of file diff --git a/docs/types/Cacheable.html b/docs/types/Cacheable.html index 44b688bd..87d491c8 100644 --- a/docs/types/Cacheable.html +++ b/docs/types/Cacheable.html @@ -1,69 +1 @@ -Cacheable | @auth0/auth0-react
-
- -
-
-
-
- -

Type alias Cacheable

-
Cacheable: WrappedCacheEntry | KeyManifestEntry
-
-
\ No newline at end of file +Cacheable | @auth0/auth0-react
\ No newline at end of file diff --git a/docs/variables/Auth0Context.html b/docs/variables/Auth0Context.html index 984196ec..c02da29c 100644 --- a/docs/variables/Auth0Context.html +++ b/docs/variables/Auth0Context.html @@ -1,71 +1,2 @@ -Auth0Context | @auth0/auth0-react
-
- -
- -
\ No newline at end of file +Auth0Context | @auth0/auth0-react
\ No newline at end of file diff --git a/examples/cra-react-router/package.json b/examples/cra-react-router/package.json index 97b75136..b5e8a7d7 100644 --- a/examples/cra-react-router/package.json +++ b/examples/cra-react-router/package.json @@ -13,6 +13,9 @@ "react-scripts": "^5.0.1", "typescript": "^4.6.3" }, + "devDependencies": { + "ajv": "8.16.0" + }, "scripts": { "start": "react-scripts start", "build": "react-scripts build" diff --git a/examples/gatsby-app/package.json b/examples/gatsby-app/package.json index 07e9d765..c21779be 100644 --- a/examples/gatsby-app/package.json +++ b/examples/gatsby-app/package.json @@ -11,7 +11,8 @@ "react-dom": "file:../../node_modules/react-dom" }, "devDependencies": { - "prettier": "2.0.5" + "prettier": "2.0.5", + "ajv": "8.16.0" }, "keywords": [ "gatsby" diff --git a/examples/nextjs-app/package.json b/examples/nextjs-app/package.json index 768aa691..59a80257 100644 --- a/examples/nextjs-app/package.json +++ b/examples/nextjs-app/package.json @@ -9,7 +9,7 @@ }, "dependencies": { "@auth0/auth0-react": "file:../..", - "next": "13.5.6", + "next": "14.1.1", "react": "file:../../node_modules/react", "react-dom": "file:../../node_modules/react-dom" } diff --git a/examples/users-api/package-lock.json b/examples/users-api/package-lock.json index 9ecc336a..9557013d 100644 --- a/examples/users-api/package-lock.json +++ b/examples/users-api/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "cors": "^2.8.5", "dotenv": "^16.0.3", - "express": "^4.18.2", + "express": "^4.19.2", "express-oauth2-jwt-bearer": "^1.2.0" } }, @@ -33,12 +33,12 @@ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -46,7 +46,7 @@ "iconv-lite": "0.4.24", "on-finished": "2.4.1", "qs": "6.11.0", - "raw-body": "2.5.1", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -64,12 +64,18 @@ } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -87,17 +93,17 @@ } }, "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "engines": { "node": ">= 0.6" } }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "engines": { "node": ">= 0.6" } @@ -127,6 +133,22 @@ "ms": "2.0.0" } }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -165,6 +187,25 @@ "node": ">= 0.8" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -179,16 +220,16 @@ } }, "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -264,32 +305,62 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dependencies": { - "function-bind": "^1.1.1" + "es-define-property": "^1.0.0" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { - "node": ">= 0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-symbols": { @@ -303,6 +374,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -343,9 +425,9 @@ } }, "node_modules/jose": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.11.0.tgz", - "integrity": "sha512-wLe+lJHeG8Xt6uEubS4x0LVjS/3kXXu9dGoj9BNnlhYq7Kts0Pbb2pvv5KiI0yaKH/eaiR0LUOBhOVo9ktd05A==", + "version": "4.15.5", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.15.5.tgz", + "integrity": "sha512-jc7BFxgKPKi94uOvEmzlSWFFe2+vASyXaKUpdQKatWAESU2MWjDfFf0fdfc83CDKcA5QecabZeNLyfhe3yKNkg==", "funding": { "url": "https://github.com/sponsors/panva" } @@ -423,9 +505,9 @@ } }, "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -489,9 +571,9 @@ } }, "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -568,19 +650,39 @@ "node": ">= 0.8.0" } }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -655,12 +757,12 @@ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "requires": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -668,7 +770,7 @@ "iconv-lite": "0.4.24", "on-finished": "2.4.1", "qs": "6.11.0", - "raw-body": "2.5.1", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" } @@ -679,12 +781,15 @@ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" } }, "content-disposition": { @@ -696,14 +801,14 @@ } }, "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==" }, "cookie-signature": { "version": "1.0.6", @@ -727,6 +832,16 @@ "ms": "2.0.0" } }, + "define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "requires": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + } + }, "depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -752,6 +867,19 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, + "es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "requires": { + "get-intrinsic": "^1.2.4" + } + }, + "es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -763,16 +891,16 @@ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" }, "express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -833,33 +961,56 @@ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" }, "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" }, "get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "requires": { - "function-bind": "^1.1.1" + "get-intrinsic": "^1.1.3" } }, + "has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "requires": { + "es-define-property": "^1.0.0" + } + }, + "has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==" + }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" }, + "hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "requires": { + "function-bind": "^1.1.2" + } + }, "http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -891,9 +1042,9 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "jose": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/jose/-/jose-4.11.0.tgz", - "integrity": "sha512-wLe+lJHeG8Xt6uEubS4x0LVjS/3kXXu9dGoj9BNnlhYq7Kts0Pbb2pvv5KiI0yaKH/eaiR0LUOBhOVo9ktd05A==" + "version": "4.15.5", + "resolved": "https://registry.npmjs.org/jose/-/jose-4.15.5.tgz", + "integrity": "sha512-jc7BFxgKPKi94uOvEmzlSWFFe2+vASyXaKUpdQKatWAESU2MWjDfFf0fdfc83CDKcA5QecabZeNLyfhe3yKNkg==" }, "media-typer": { "version": "0.3.0", @@ -944,9 +1095,9 @@ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==" }, "on-finished": { "version": "2.4.1", @@ -989,9 +1140,9 @@ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "requires": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -1047,19 +1198,33 @@ "send": "0.18.0" } }, + "set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "requires": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + } + }, "setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" } }, "statuses": { diff --git a/examples/users-api/package.json b/examples/users-api/package.json index 7b2a34b5..5ce55b17 100644 --- a/examples/users-api/package.json +++ b/examples/users-api/package.json @@ -10,7 +10,7 @@ "dependencies": { "cors": "^2.8.5", "dotenv": "^16.0.3", - "express": "^4.18.2", + "express": "^4.19.2", "express-oauth2-jwt-bearer": "^1.2.0" } } diff --git a/package-lock.json b/package-lock.json index 45c785ac..d99c9be5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "@auth0/auth0-react", - "version": "2.2.3", + "version": "2.2.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@auth0/auth0-react", - "version": "2.2.3", + "version": "2.2.4", "license": "MIT", "dependencies": { - "@auth0/auth0-spa-js": "^2.1.2" + "@auth0/auth0-spa-js": "^2.1.3" }, "devDependencies": { "@rollup/plugin-node-resolve": "^15.0.1", @@ -67,9 +67,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz", - "integrity": "sha512-/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.2.tgz", + "integrity": "sha512-DA5a1C0gD/pLOvhv33YMrbf2FK3oUzwNl9oOJqE4XVjuEtt6XIakRcsd7eLiOSPkp1kTRQGICTA8cKra/vFbjw==", "dev": true }, "node_modules/@ampproject/remapping": { @@ -86,9 +86,9 @@ } }, "node_modules/@auth0/auth0-spa-js": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@auth0/auth0-spa-js/-/auth0-spa-js-2.1.2.tgz", - "integrity": "sha512-xdA65Z/U7++Y7L9Uwh8Q8OVOs6qgFz+fb7GAzHFjpr1icO37B//xdzLXm7ZRgA19RWrsNe1nme3h896igJSvvw==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@auth0/auth0-spa-js/-/auth0-spa-js-2.1.3.tgz", + "integrity": "sha512-NMTBNuuG4g3rame1aCnNS5qFYIzsTUV5qTFPRfTyYFS1feS6jsCBR+eTq9YkxCp1yuoM2UIcjunPaoPl77U9xQ==" }, "node_modules/@babel/code-frame": { "version": "7.22.13", @@ -840,9 +840,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -863,9 +863,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", - "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1476,9 +1476,9 @@ } }, "node_modules/@koa/cors": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-4.0.0.tgz", - "integrity": "sha512-Y4RrbvGTlAaa04DBoPBWJqDR5gPj32OOz827ULXfgB1F7piD1MB/zwn8JR2LAnvdILhxUbXbkXGWuNVsFuVFCQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@koa/cors/-/cors-5.0.0.tgz", + "integrity": "sha512-x/iUDjcS90W69PryLDIMgFyV21YLTnG9zOpPXS7Bkt2b8AsY3zZsIpOLBkYr9fBcF3HbkKaER5hOBZLfpLgYNw==", "dev": true, "dependencies": { "vary": "^1.1.2" @@ -1802,9 +1802,9 @@ } }, "node_modules/@testing-library/react": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.0.0.tgz", - "integrity": "sha512-S04gSNJbYE30TlIMLTzv6QCTzt9AqIF5y6s6SzVFILNcNvbV/jU96GeiTPillGQo+Ny64M/5PV7klNYYgv5Dfg==", + "version": "14.3.1", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.3.1.tgz", + "integrity": "sha512-H99XjUhWQw0lTgyMN05W3xQG1Nh4lq574D8keFf1dDoNTJgp66VbJozRaczoF+wsiaPJNt/TcnfpLGufGxSrZQ==", "dev": true, "dependencies": { "@babel/runtime": "^7.12.5", @@ -1960,9 +1960,9 @@ } }, "node_modules/@types/jest": { - "version": "29.5.7", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.7.tgz", - "integrity": "sha512-HLyetab6KVPSiF+7pFcUyMeLsx25LDNDemw9mGsJBkai/oouwrjTycocSDYopMEwFhN2Y4s9oPyOCZNofgSt2g==", + "version": "29.5.12", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", + "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", "dev": true, "dependencies": { "expect": "^29.0.0", @@ -2037,9 +2037,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.2.33", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.33.tgz", - "integrity": "sha512-v+I7S+hu3PIBoVkKGpSYYpiBT1ijqEzWpzQD62/jm4K74hPpSP7FF9BnKG6+fg2+62weJYkkBWDJlZt5JO/9hg==", + "version": "18.2.64", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.64.tgz", + "integrity": "sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -2048,9 +2048,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.14", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.14.tgz", - "integrity": "sha512-V835xgdSVmyQmI1KLV2BEIUgqEuinxp9O4G6g3FqO/SqLac049E53aysv0oEFD2kHfejeKU+ZqL2bcFWj9gLAQ==", + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, "dependencies": { "@types/react": "*" @@ -2652,15 +2652,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/array-includes": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", @@ -2759,15 +2750,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/asn1": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", @@ -2853,13 +2835,14 @@ "dev": true }, "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.2.tgz", + "integrity": "sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==", "dev": true, "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "node_modules/axios/node_modules/form-data": { @@ -2876,6 +2859,12 @@ "node": ">= 6" } }, + "node_modules/axios/node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, "node_modules/babel-jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", @@ -3136,12 +3125,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -3186,9 +3175,9 @@ } }, "node_modules/browserstack-cypress-cli": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/browserstack-cypress-cli/-/browserstack-cypress-cli-1.26.0.tgz", - "integrity": "sha512-pjNkyUoluxeRMBCpLMIqaZtquoRpdKiuAcdxwLd3L5oNHByg1dE88VQ5+hMyrCRNoZPw3vF+scLtpn9eVBsW8A==", + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/browserstack-cypress-cli/-/browserstack-cypress-cli-1.28.1.tgz", + "integrity": "sha512-Ga3B3/vV4hYDcd5WF1jpIiMQxySmsmeLp5Q8XWzbH8pmEBg7/lSrvxTXZ5wm6H5iuaIrRLxmmW6pcO365qfSUA==", "dev": true, "dependencies": { "archiver": "5.3.0", @@ -4095,21 +4084,20 @@ } }, "node_modules/cypress": { - "version": "13.4.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-13.4.0.tgz", - "integrity": "sha512-KeWNC9xSHG/ewZURVbaQsBQg2mOKw4XhjJZFKjWbEjgZCdxpPXLpJnfq5Jns1Gvnjp6AlnIfpZfWFlDgVKXdWQ==", + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-13.12.0.tgz", + "integrity": "sha512-udzS2JilmI9ApO/UuqurEwOvThclin5ntz7K0BtnHBs+tg2Bl9QShLISXpSEMDv/u8b6mqdoAdyKeZiSqKWL8g==", "dev": true, "hasInstallScript": true, "dependencies": { "@cypress/request": "^3.0.0", "@cypress/xvfb": "^1.2.4", - "@types/node": "^18.17.5", "@types/sinonjs__fake-timers": "8.1.1", "@types/sizzle": "^2.3.2", "arch": "^2.2.0", "blob-util": "^2.0.2", "bluebird": "^3.7.2", - "buffer": "^5.6.0", + "buffer": "^5.7.1", "cachedir": "^2.3.0", "chalk": "^4.1.0", "check-more-types": "^2.24.0", @@ -4127,7 +4115,7 @@ "figures": "^3.2.0", "fs-extra": "^9.1.0", "getos": "^3.2.1", - "is-ci": "^3.0.0", + "is-ci": "^3.0.1", "is-installed-globally": "~0.4.0", "lazy-ass": "^1.6.0", "listr2": "^3.8.3", @@ -4152,12 +4140,6 @@ "node": "^16.0.0 || ^18.0.0 || >=20.0.0" } }, - "node_modules/cypress/node_modules/@types/node": { - "version": "18.17.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.17.17.tgz", - "integrity": "sha512-cOxcXsQ2sxiwkykdJqvyFS+MLQPLvIdwh5l6gNg8qF6s+C7XSkEWOZjK+XhUZd+mYvHV/180g2cnCcIl4l06Pw==", - "dev": true - }, "node_modules/cypress/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -5055,15 +5037,15 @@ } }, "node_modules/eslint": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", - "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.52.0", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5334,9 +5316,9 @@ } }, "node_modules/eta": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/eta/-/eta-3.1.1.tgz", - "integrity": "sha512-GVKq8BhYjvGiwKAnvPOnTwAHach3uHglvW0nG9gjEmo8ZIe8HR1aCLdQ97jlxXPcCWhB6E3rDWOk2fahFKG5Cw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-3.2.0.tgz", + "integrity": "sha512-Qzc3it7nLn49dbOb9+oHV9rwtt9qN8oShRztqkZ3gXPqQflF0VLin5qhWk0g/2ioibBwT4DU6OIMVft7tg/rVg==", "dev": true, "engines": { "node": ">=6.0.0" @@ -5640,9 +5622,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -5738,9 +5720,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, "funding": [ { @@ -6071,9 +6053,9 @@ } }, "node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -6513,9 +6495,9 @@ ] }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -8451,9 +8433,9 @@ } }, "node_modules/joi": { - "version": "17.10.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.10.1.tgz", - "integrity": "sha512-vIiDxQKmRidUVp8KngT8MZSOcmRVm2zV7jbMjNYWuHcJWI0bUck3nRTGQjhpPlQenIQIBC5Vp9AhcnHbWQqafw==", + "version": "17.11.0", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.11.0.tgz", + "integrity": "sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ==", "dev": true, "dependencies": { "@hapi/hoek": "^9.0.0", @@ -8464,9 +8446,9 @@ } }, "node_modules/jose": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/jose/-/jose-5.0.1.tgz", - "integrity": "sha512-gRVzy7s3RRdGbXmcTdlOswJOjhwPLx1ijIgAqLY6ktzFpOJxxYn4l0fC2vHaHHi4YBX/5FOL3aY+6W0cvQgpug==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/jose/-/jose-5.1.3.tgz", + "integrity": "sha512-GPExOkcMsCLBTi1YetY2LmkoY559fss0+0KVa6kOfb2YFe84nAM7Nm/XzuZozah4iHgmBGrCOHL5/cy670SBRw==", "dev": true, "funding": { "url": "https://github.com/sponsors/panva" @@ -9069,9 +9051,9 @@ "dev": true }, "node_modules/livereload/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, "engines": { "node": ">=8.3.0" @@ -9671,22 +9653,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/multimatch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz", - "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==", - "dev": true, - "dependencies": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nanoid": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", @@ -9926,20 +9892,20 @@ } }, "node_modules/oidc-provider": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/oidc-provider/-/oidc-provider-8.4.1.tgz", - "integrity": "sha512-8pABnyvEOjRkF3GdMDxW1JCO03z2IjP21xSuP0apdOE3zRnae1ObAj8KRBZVj14N7Yhtm75+XkmEy5mIEV3Bhw==", + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/oidc-provider/-/oidc-provider-8.4.5.tgz", + "integrity": "sha512-2NsPrvIAX1W4ZR41cGbz2Lt2Ci8iXvECh+x+LcKcM115s/h8iB1pwnNlCdIrvAA2iBGM4/TkO75Xg7xb2FCzWA==", "dev": true, "dependencies": { - "@koa/cors": "^4.0.0", + "@koa/cors": "^5.0.0", "@koa/router": "^12.0.1", "debug": "^4.3.4", - "eta": "^3.1.1", + "eta": "^3.2.0", "got": "^13.0.0", - "jose": "^5.0.1", + "jose": "^5.1.3", "jsesc": "^3.0.2", "koa": "^2.14.2", - "nanoid": "^5.0.2", + "nanoid": "^5.0.4", "object-hash": "^3.0.0", "oidc-token-hash": "^5.0.3", "quick-lru": "^7.0.0", @@ -9962,9 +9928,9 @@ } }, "node_modules/oidc-provider/node_modules/nanoid": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.2.tgz", - "integrity": "sha512-2ustYUX1R2rL/Br5B/FMhi8d5/QzvkJ912rBYxskcpu0myTHzSZfTr1LAS2Sm7jxRUObRrSBFoyzwAhL49aVSg==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.4.tgz", + "integrity": "sha512-vAjmBf13gsmhXSgBrtIclinISzFFy22WwCYoyilZlsrRXNIHSwgFQ1bEdjRwMT3aoadeIF6HMuDRlOxzfXV8ig==", "dev": true, "funding": [ { @@ -10643,26 +10609,27 @@ } }, "node_modules/pretty-quick": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.3.tgz", - "integrity": "sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.3.1.tgz", + "integrity": "sha512-3b36UXfYQ+IXXqex6mCca89jC8u0mYLqFAN5eTQKoXO6oCQYcIVYZEB/5AlBHI7JPYygReM2Vv6Vom/Gln7fBg==", "dev": true, "dependencies": { - "chalk": "^3.0.0", - "execa": "^4.0.0", + "execa": "^4.1.0", "find-up": "^4.1.0", - "ignore": "^5.1.4", - "mri": "^1.1.5", - "multimatch": "^4.0.0" + "ignore": "^5.3.0", + "mri": "^1.2.0", + "picocolors": "^1.0.0", + "picomatch": "^3.0.1", + "tslib": "^2.6.2" }, "bin": { - "pretty-quick": "bin/pretty-quick.js" + "pretty-quick": "dist/cli.js" }, "engines": { "node": ">=10.13" }, "peerDependencies": { - "prettier": ">=2.0.0" + "prettier": "^2.0.0" } }, "node_modules/pretty-quick/node_modules/find-up": { @@ -10717,6 +10684,18 @@ "node": ">=8" } }, + "node_modules/pretty-quick/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -11551,12 +11530,12 @@ } }, "node_modules/rollup-plugin-serve": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-serve/-/rollup-plugin-serve-2.0.2.tgz", - "integrity": "sha512-ALqyTbPhlf7FZ5RzlbDvMYvbKuCHWginJkTo6dMsbgji/a78IbsXox+pC83HENdkTRz8OXrTj+aShp3+3ratpg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-serve/-/rollup-plugin-serve-2.0.3.tgz", + "integrity": "sha512-gQKmfQng17+jOsX5tmDanvJkm0f9XLqWVvXsD7NGd1SlneT+U1j/HjslDUXQz6cqwLnVDRc6xF2lj6rre+eeeQ==", "dev": true, "dependencies": { - "mime": ">=2.4.6", + "mime": "^3", "opener": "1" } }, @@ -11852,9 +11831,9 @@ } }, "node_modules/shiki": { - "version": "0.14.4", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.4.tgz", - "integrity": "sha512-IXCRip2IQzKwxArNNq1S+On4KPML3Yyn8Zzs/xRgcgOWIr8ntIK3IKzjFPfjy/7kt9ZMjc+FItfqHRBg8b6tNQ==", + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.7.tgz", + "integrity": "sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==", "dev": true, "dependencies": { "ansi-sequence-parser": "^1.1.0", @@ -12011,9 +11990,9 @@ } }, "node_modules/start-server-and-test": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-2.0.1.tgz", - "integrity": "sha512-8PFo4DLLLCDMuS51/BEEtE1m9CAXw1LNVtZSS1PzkYQh6Qf9JUwM4huYeSoUumaaoAyuwYBwCa9OsrcpMqcOdQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-2.0.3.tgz", + "integrity": "sha512-QsVObjfjFZKJE6CS6bSKNwWZCKBG6975/jKRPPGFfFh+yOQglSeGXiNWjzgQNXdphcBI9nXbyso9tPfX4YAUhg==", "dev": true, "dependencies": { "arg": "^5.0.2", @@ -12023,7 +12002,7 @@ "execa": "5.1.1", "lazy-ass": "1.6.0", "ps-tree": "1.2.0", - "wait-on": "7.0.1" + "wait-on": "7.2.0" }, "bin": { "server-test": "src/bin/start.js", @@ -12643,9 +12622,9 @@ } }, "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "version": "29.1.5", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.5.tgz", + "integrity": "sha512-UuClSYxM7byvvYfyWdFI+/2UxMmwNyJb0NPkZPQE2hew3RurV7l7zURgOHAd/1I1ZdPpe3GUsXNXAcN8TFKSIg==", "dev": true, "dependencies": { "bs-logger": "0.x", @@ -12661,10 +12640,11 @@ "ts-jest": "cli.js" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", "@jest/types": "^29.0.0", "babel-jest": "^29.0.0", "jest": "^29.0.0", @@ -12674,6 +12654,9 @@ "@babel/core": { "optional": true }, + "@jest/transform": { + "optional": true + }, "@jest/types": { "optional": true }, @@ -12869,15 +12852,15 @@ } }, "node_modules/typedoc": { - "version": "0.25.3", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.3.tgz", - "integrity": "sha512-Ow8Bo7uY1Lwy7GTmphRIMEo6IOZ+yYUyrc8n5KXIZg1svpqhZSWgni2ZrDhe+wLosFS8yswowUzljTAV/3jmWw==", + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.7.tgz", + "integrity": "sha512-m6A6JjQRg39p2ZVRIN3NKXgrN8vzlHhOS+r9ymUYtcUP/TIQPvWSq7YgE5ZjASfv5Vd5BW5xrir6Gm2XNNcOow==", "dev": true, "dependencies": { "lunr": "^2.3.9", "marked": "^4.3.0", "minimatch": "^9.0.3", - "shiki": "^0.14.1" + "shiki": "^0.14.7" }, "bin": { "typedoc": "bin/typedoc" @@ -12886,7 +12869,7 @@ "node": ">= 16" }, "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x" + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x" } }, "node_modules/typedoc/node_modules/brace-expansion": { @@ -13196,16 +13179,16 @@ } }, "node_modules/wait-on": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.0.1.tgz", - "integrity": "sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz", + "integrity": "sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==", "dev": true, "dependencies": { - "axios": "^0.27.2", - "joi": "^17.7.0", + "axios": "^1.6.1", + "joi": "^17.11.0", "lodash": "^4.17.21", - "minimist": "^1.2.7", - "rxjs": "^7.8.0" + "minimist": "^1.2.8", + "rxjs": "^7.8.1" }, "bin": { "wait-on": "bin/wait-on" @@ -13524,9 +13507,9 @@ } }, "node_modules/ws": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.0.tgz", - "integrity": "sha512-WR0RJE9Ehsio6U4TuM+LmunEsjQ5ncHlw4sn9ihD6RoJKZrVyH9FWV3dmnwu8B2aNib1OvG2X6adUCyFpQyWcg==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "engines": { "node": ">=10.0.0" diff --git a/package.json b/package.json index e5b118cf..31b4a725 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "author": "Auth0", "name": "@auth0/auth0-react", - "version": "2.2.3", + "version": "2.2.4", "description": "Auth0 SDK for React Single Page Applications (SPA)", "keywords": [ "auth0", @@ -96,6 +96,6 @@ "react-dom": "^16.11.0 || ^17 || ^18" }, "dependencies": { - "@auth0/auth0-spa-js": "^2.1.2" + "@auth0/auth0-spa-js": "^2.1.3" } } diff --git a/src/auth0-context.tsx b/src/auth0-context.tsx index d22ceea7..d2960ab9 100644 --- a/src/auth0-context.tsx +++ b/src/auth0-context.tsx @@ -38,7 +38,9 @@ export interface Auth0ContextInterface * * If refresh tokens are used, the token endpoint is called directly with the * 'refresh_token' grant. If no refresh token is available to make this call, - * the SDK falls back to using an iframe to the '/authorize' URL. + * the SDK will only fall back to using an iframe to the '/authorize' URL if + * the `useRefreshTokensFallback` setting has been set to `true`. By default this + * setting is `false`. * * This method may use a web worker to perform the token call if the in-memory * cache is used. diff --git a/src/auth0-provider.tsx b/src/auth0-provider.tsx index c1961551..bfa1af30 100644 --- a/src/auth0-provider.tsx +++ b/src/auth0-provider.tsx @@ -125,7 +125,7 @@ const defaultOnRedirectCallback = (appState?: AppState): void => { * + * authorizationParams={{ redirect_uri: window.location.origin }}> * * * ```