Web Plugins
This directory contains the source code for various web plugins used in our project. Below is a brief overview of the structure and contents of this directory.
Directory Structure
src/
: Contains the source code for the plugins.
Excluded Directories
dist/
: This directory is used for the distribution files and is not included in the source control.node_modules/
: This directory contains the dependencies and is not included in the source control.
Getting Started
To get started with the development of these plugins, follow the steps below:
- Install Dependencies:
npm install
- Build the Plugins:
npm run build
- Run Lint:
npm run lint
Usage
This is intended to be used in the `vite.config.(ts|js)` file. The following is an example of how to use the plugin:
By direct route definition
import { defineConfig } from 'vite';
import { sitemapPlugin } from './web/plugins';
export default defineConfig({
plugins: [
sitemapPlugin({
appUrl: 'https://example.com',
routes: [
{
path: '/about',
name: 'about',
}
{
path: '/contact',
name: 'contact',
children: [
{
path: '',
name: 'contact.chat'
},
{
path: 'email',
name: 'contact.email'
}
]
},
],
}),
]
});
By router file
import { defineConfig } from 'vite';
import { sitemapPlugin } from './web/plugins';
export default defineConfig({
plugins: [
sitemapPlugin({
appUrl: 'https://example.com',
routerFile: 'src/router/index.ts',
}),
]
});
Options
Please see the options below for the sitemap plugin:
interface PluginOptions {
routerFile?: string
routes?: Array<RouteRecord>
filter?: (route?: RouteInput) => boolean
appUrl?: string
outfile?: string
}
Contributing
We welcome contributions! Please read our contributing guidelines before submitting a pull request.
License
This project is licensed under the MIT License - see the LICENSE file for details.**