psListExports is a Visual Studio Code extension designed to help developers quickly list all exported functions, constants, and interfaces within the src directory of their workspace. The results are displayed in a new file with clickable links, allowing easy navigation to the source code.
Features
List Exported Entities: Automatically scans the src directory for exported functions, constants, and interfaces in both .ts and .js files.
Clickable Links: Displays results in a new Markdown file with clickable links that navigate directly to the corresponding line in the source code.
Sorted Output: Organizes the exported entities by type, listing functions first, followed by interfaces, and then constants.
Usage
Open a Workspace: Ensure you have a workspace open in VS Code with a src directory.
Run the Command: Use the command palette (Ctrl+Shift+P or Cmd+Shift+P on macOS) and type psListExports: Show All the Exported Entities in the Project.
View Results: A new file will open displaying all exported entities with clickable links.
Sample Output [ps-toolkit]
[function createCustomLogger (in customLogger.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/customLogger.ts#50)
[function createSecretManager (in secretManager.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/secretManager.ts#76)
[function trackCtaEvent (in tealium.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/tealium/tealium.ts#75)
[function trackEvent (in tealium.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/tealium/tealium.ts#97)
[function getStage (in utils.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/utils.ts#3)
[interface SecretManager (in secretManager.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/secretManager.ts#24)
[const getBrandByDomain (in utils.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/utils.ts#12)
[const getBrandByTenant (in utils.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/utils.ts#24)
[const getTenantByBrand (in utils.ts)](file:///{HOME_DIR}/projects/github.com/plus/ps-toolkit/src/utils.ts#35)
## Installation
1. **Install from Marketplace**: Search for `psListExports` in the VS Code Marketplace and click install.
2. **Manual Installation**: Download the `.vsix` file and use the "Extensions: Install from VSIX..." command in the Command Palette.
## Requirements
- Visual Studio Code version 1.65.0 or higher.
- Node.js and npm installed for development and packaging.
## Development
To contribute or modify the extension:
1. **Clone the Repository**: Clone the extension's repository to your local machine.
2. **Install Dependencies**: Run `npm install` to install necessary dependencies.
3. **Run the Extension**: Use the "Run Extension" launch configuration in the VS Code debugger to test your changes.
## Contributing
Contributions are welcome! Please fork the repository and submit a pull request with your changes.
## License
This project is licensed under the MIT License.
## Contact
For any questions or feedback, please contact shafeequ.ahmed@axelspringer.com.