fix(auth-js): handle absolute URL in basePath #1743
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1104
When
basePathis set to an absolute URL likehttp://localhost:8000/api/auth, the URL is built by simple string concatenation (${baseUrl}${basePath}/${path}), resulting in a broken URL likehttp://localhost:3000http://localhost:8000/api/auth/session. This PR addsnormalizeBasePath()inclient.tsthat splits an absolute URL inbasePathintobaseUrlandbasePath, so that the URL concatenation produces the correct result.Changes
client.ts: AddnormalizeBasePath()functionreact.tsx: UsenormalizeBasePath()inAuthConfigManager.setConfig()client.test.ts: Add tests fornormalizeBasePath()The author should do the following, if applicable
yarn changesetat the top of this repo and push the changeset