-
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathwxt.config.ts
More file actions
121 lines (115 loc) · 3.49 KB
/
Copy pathwxt.config.ts
File metadata and controls
121 lines (115 loc) · 3.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
import { defineConfig } from 'wxt'
import { defineViteConfig as define } from './define.config.js'
import vueI18n from '@intlify/unplugin-vue-i18n/vite'
// import vue from '@vitejs/plugin-vue'
// See https://wxt.dev/api/config.html
export default defineConfig({
srcDir: 'src',
outDir: 'dist',
modules: [
'@wxt-dev/module-vue'
],
manifest: ({ browser, manifestVersion, mode, command }) => {
const permissions = [
'storage',
'unlimitedStorage',
'clipboardWrite',
'alarms',
'idle',
'activeTab',
'scripting',
'tabs',
'notifications',
]
if (browser === 'chrome' || browser === 'edge' ) {
permissions.push('offscreen')
}
const action = {
default_popup: 'src/entrypoints/popup/index.html',
default_title: '2FAuth',
default_icon: {
16: 'icon-16.png',
32: 'icon-32.png',
64: 'icon-64.png',
},
}
const manifest = {
name: '__MSG_extName__',
description: '__MSG_extDescription__',
permissions: permissions,
default_locale: 'en',
icons: {
16: 'icon-16.png',
32: 'icon-32.png',
48: 'icon-48.png',
96: 'icon-96.png',
128: 'icon-128.png',
},
action: action,
}
return manifest
},
imports: {
eslintrc: {
enabled: 9,
},
addons: {
// vueTemplate automatically set to true by @wxt-dev/module-vue
vueDirectives: true,
},
imports: [
{ name: 'useNotification', from: '@kyvg/vue3-notification' },
{ name: 'onMessage', from: 'webext-bridge/background' },
{ name: 'sendMessage', from: 'webext-bridge/popup' },
],
// dirs: [
// ],
presets: [
// vue preset is automatically imported by @wxt-dev/module-vue
// vue-i18n preset is automatically imported by @wxt-dev/i18n
'vue-router',
'pinia',
'@vueuse/core',
],
},
vite: () => ({
build: {
// emptyOutDir: true,
// sourcemap: 'development' === process.env.NODE_ENV,
// sourcemap: true
},
plugins: [
// vue(),
vueI18n({
include: [
'resources/lang/bg.json',
'resources/lang/zh-CN.json',
'resources/lang/da.json',
'resources/lang/nl.json',
'resources/lang/en.json',
'resources/lang/fr.json',
'resources/lang/de.json',
'resources/lang/hi.json',
'resources/lang/it.json',
'resources/lang/ja.json',
'resources/lang/ko.json',
'resources/lang/pt-BR.json',
'resources/lang/ru.json',
'resources/lang/es-ES.json',
'resources/lang/tr.json',
]
}),
],
define,
resolve: {
dedupe: [
'pinia',
'@kyvg/vue3-notification',
],
},
}),
alias: {
'@popup': 'src/entrypoints/popup',
'@public': 'src/public'
}
})