PaloAltoNetworks / PaloAltoNetworks/docusaurus-openapi-docs
URL Function Undefined
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1.1k
- Forks
- 315
- Avg merge
- 7d 5h
- Merged PRs (30d)
- 7
Description
Describe the bug
When using the docusaurus-openapi-docs plugin, the global URL constructor is undefined. This breaks code that depends on URL, such as the Microsoft Authentication Library for React (msal-react) loginPopup in my application.
Observations:
- When disabling the
docusaurus-openapi-docsplugin,URLis properly defined. - This issue occurs when customizing the
ApiItemcomponent in the plugin's theme.
Expected behavior
The global URL constructor should be defined and accessible in the same way as in a default Docusaurus environment.
Current behavior
URLis undefined inside the customizedApiItemcomponent from thedocusaurus-openapi-docsplugin. It is probably same for other components.URLis defined correctly when using the standardDocItemLayoutfrom@docusaurus/theme-classic.
Possible solution
The URL constructor may be overwritten or removed by some internal logic in the plugin.
Steps to reproduce
- Copy the
ApiItemfolder fromdocusaurus-theme-openapi-docs/src/themeinto yoursrc/themefolder. - Inside
src/theme/ApiItem/Layout.js, add:
console.log("URL:", URL);
- Run the project.
- Observe that
URLis undefined.
Compare without the plugin
- Uninstall the
docusaurus-openapi-docsplugin. - Copy the
DocItemfolder from@docusaurus/theme-classic/lib/theme/DocItem/Layoutintosrc/theme. - Add the same console log inside the component.
- Observe that
URLis now correctly defined.
Console Output (with docusaurus-openapi-docs enabled):
URL: undefined
Console Output (with docusaurus-openapi-docs disabled):
URL: ƒ URL() { [native code] }
Context
This issue breaks Microsoft Authentication Library for React (msal-react) loginPopup method, which internally depends on URL. The issue blocks the authentication flow in my application.
Your Environment
- Version used:
docusaurus-openapi-docs(latest version at the time of writing) - Docusaurus version: 3.7.0
- Environment name and version: Chrome Version 134.0.6998.119 (Official Build) (arm64), Node.js v22.14.0
- Operating System and version: macOS Sequoia 15.0.1
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the copied src/theme/ApiItem/Layout.js and reproduce the console.log("URL:", URL) result with the docusaurus-openapi-docs plugin enabled. Compare it with the copied DocItem layout from @docusaurus/theme-classic and trace where the global URL differs. Done means URL is defined in the customized ApiItem component and the reported msal-react loginPopup flow is no longer blocked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100