Skip to content

Commit 7a7a591

Browse files
committed
Beaking change: Only build one entrypoint
This entry point provides all components, mixins etc as named exports. Added vue plugin export `NextcloudVue` so users can register all components using the vue plugin functionality: `Vue.use(NextcloudVue)` Signed-off-by: Ferdinand Thiessen <rpm@fthiessen.de>
1 parent 3c1018c commit 7a7a591

File tree

4 files changed

+20
-55
lines changed

4 files changed

+20
-55
lines changed

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@
2929
"cypress:gui": "cypress open --component",
3030
"cypress:update-snapshots": "cypress run --component --env type=base --config screenshotsFolder=cypress/snapshots/base"
3131
},
32-
"main": "dist/index.cjs",
33-
"module": "dist/index.mjs",
32+
"main": "dist/index.umd.js",
33+
"module": "dist/index.esm.js",
3434
"exports": {
35-
"import": "./dist/index.mjs",
36-
"require": "./dist/index.cjs"
35+
"import": "./dist/index.esm.js",
36+
"require": "./dist/index.umd.js"
3737
},
3838
"files": [
3939
"CHANGELOG.md",

src/index.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,22 @@
1919
* along with this program. If not, see <http://www.gnu.org/licenses/>.
2020
*
2121
*/
22+
import * as NcComponents from './components/index.js'
2223

2324
export * from './components/index.js'
2425
export * from './functions/index.js'
2526
export * from './directives/index.js'
2627
export * from './mixins/index.js'
2728
export * from './a11y/index.js'
29+
30+
// Vue plugin to install all components using `Vue.use(NextcloudVue)`
31+
export const NextcloudVue = {
32+
/**
33+
* @param {object} Vue The vue instance
34+
*/
35+
install: Vue => {
36+
Object.values(NcComponents).forEach(component => {
37+
Vue.component(component.name, component)
38+
})
39+
},
40+
}

src/install.js

Lines changed: 0 additions & 16 deletions
This file was deleted.

vite.config.mjs

Lines changed: 3 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import md5 from 'md5'
2-
import glob from 'glob'
32
import vue from '@vitejs/plugin-vue2'
43
import { externals } from 'rollup-plugin-node-externals'
54
import browserslistToEsbuild from 'browserslist-to-esbuild'
65
import injectProcessEnv from 'rollup-plugin-inject-process-env'
76
import { loadTranslations } from './resources/translations.mjs'
87
import { fileURLToPath, URL } from 'url'
9-
import { dirname, join, resolve } from 'path'
8+
import { dirname, resolve } from 'path'
109
import { defineConfig } from 'vite'
1110
import { readFileSync } from 'fs'
1211

@@ -83,40 +82,9 @@ export default defineConfig({
8382
},
8483
lib: {
8584
name: 'NextcloudVue',
86-
entry: {
87-
index: resolve(__dirname, 'src/index.js'),
88-
install: join(__dirname, 'src', 'install.js'),
89-
...glob.sync('src/components/*/index.js').reduce((acc, item) => {
90-
const name = item
91-
.replace('/index.js', '')
92-
.replace('src/components/', 'Components/')
93-
acc[name] = join(__dirname, item)
94-
return acc
95-
}, {}),
96-
...glob.sync('src/directives/*/index.js').reduce((acc, item) => {
97-
const name = item
98-
.replace('/index.js', '')
99-
.replace('src/directives/', 'Directives/')
100-
acc[name] = join(__dirname, item)
101-
return acc
102-
}, {}),
103-
...glob.sync('src/functions/*/index.js').reduce((acc, item) => {
104-
const name = item
105-
.replace('/index.js', '')
106-
.replace('src/functions/', 'Functions/')
107-
acc[name] = join(__dirname, item)
108-
return acc
109-
}, {}),
110-
...glob.sync('src/mixins/*/index.js').reduce((acc, item) => {
111-
const name = item
112-
.replace('/index.js', '')
113-
.replace('src/mixins/', 'Mixins/')
114-
acc[name] = join(__dirname, item)
115-
return acc
116-
}, {}),
117-
},
85+
entry: resolve(__dirname, 'src/index.js'),
11886
fileName: (format, entry) => {
119-
return `${entry}.${format.startsWith('es') ? 'mjs' : format}`
87+
return `${entry}.${format === 'es' ? 'esm' : format}.js`
12088
},
12189
},
12290
},

0 commit comments

Comments
 (0)