https://github.com/jozefizso/vite-plugin-office-addin
https://github.com/jozefizso/vite-plugin-office-addin
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jozefizso/vite-plugin-office-addin
- Owner: jozefizso
- License: mit
- Created: 2021-07-29T08:34:40.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-28T23:38:02.000Z (over 1 year ago)
- Last Synced: 2024-11-18T19:05:47.750Z (5 months ago)
- Language: TypeScript
- Size: 22.5 KB
- Stars: 14
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - jozefizso/vite-plugin-office-addin - (TypeScript)
README
# vite-plugin-office-addin
> Office Add-ins development using Vite.
Build your Office Add-in using Vite. This plugin adds the support
for **manifest.xml** file to be copied to build output.## Getting Started
Install the **vite-plugin-office-addin** to your Office Add-in project.
```sh
# using npm
npm install --save-dev vite-plugin-office-addin# using yarn
yarn add vite-plugin-office-addin -D
```### Configure Vite
Use the plugin in your `vite.config.js` file:
```js
// vite.config.js
import { defineConfig } from 'vite'
import officeAddin from 'vite-plugin-office-addin'export default defineConfig({
plugins: [officeAddin()]
})
```## Advanced Usage
### Replacing development address
To replace the development URL address in **manifest.xml** file to production address,
you can use the plugin configuration option or `.env` files.```js
// vite.config.js
import { defineConfig } from 'vite'
import officeAddin from 'vite-plugin-office-addin'export default defineConfig({
plugins: [officeAddin({
devUrl: 'https://localhost:3000',
prodUrl: 'https://office-addin.contoso.com'
})]
})
```Alternatively, you can use `.env` to replace different addresses for different environments.
Use the `ADDIN_DEV_URL` and `ADDIN_PROD_URL` environment variables.```js
// vite.config.js + .env files
import { defineConfig } from 'vite'
import officeAddin from 'vite-plugin-office-addin'export default defineConfig({
plugins: [officeAddin()]
})
``````sh
# .env.production
ADDIN_DEV_URL=https://localhost:3000
ADDIN_PROD_URL=https://office-addin.contoso.com
```When you run `vite build` the generated **manifest.xml** file will have
production addresses.### Specify a custom path
If your `manifest.xml` file is not in the project root, set the `path` property to point to the right location:
```js
// vite.config.js
import { defineConfig } from 'vite'
import officeAddin from 'vite-plugin-office-addin'export default defineConfig({
plugins: [officeAddin({
path: 'src/other-folder/manifest.xml'
})]
})
```### Copying multiple manifests
To copy multiple manifests to your output folder, define `officeAddin` entry for each file:
```js
// vite.config.js
import { defineConfig } from 'vite'
import officeAddin from 'vite-plugin-office-addin'export default defineConfig({
plugins: [
officeAddin({ path: 'manifest.xml' }),
officeAddin({ path: 'manifest.staging.xml' }),
]
})
```## License
Licensed under [MIT License](LICENSE).
Copyright © 2021 Jozef Izso