From 490bb3b2ac525d3600f4200ad22088496ce49beb Mon Sep 17 00:00:00 2001
From: AkiraFukushima
Date: Thu, 21 Mar 2019 01:03:53 +0900
Subject: [PATCH] refs #850 Fix types and main.ts for typescript compile
---
.electron-vue/webpack.renderer.config.js | 16 +++++++++-------
package-lock.json | 14 +++++++-------
package.json | 1 +
src/renderer/main.ts | 11 +++++++++--
tsconfig.json | 8 ++++----
src/renderer/type.d.ts => types/element-ui.d.ts | 0
types/vue-popperjs.d.ts | 1 +
types/vue-shortkey.d.ts | 1 +
types/vue.d.ts | 4 ++++
9 files changed, 36 insertions(+), 20 deletions(-)
rename src/renderer/type.d.ts => types/element-ui.d.ts (100%)
create mode 100644 types/vue-popperjs.d.ts
create mode 100644 types/vue-shortkey.d.ts
create mode 100644 types/vue.d.ts
diff --git a/.electron-vue/webpack.renderer.config.js b/.electron-vue/webpack.renderer.config.js
index 07d45ad6..263b6990 100644
--- a/.electron-vue/webpack.renderer.config.js
+++ b/.electron-vue/webpack.renderer.config.js
@@ -65,13 +65,13 @@ let rendererConfig = {
{
test: /\.ts$/,
exclude: /node_modules/,
- loader: 'ts-loader',
- options: {
- appendTsSuffixTo: [/\.vue$/]
- },
- include: [
- path.resolve('../node_modules/vue-awesome')
- ]
+ // include: path.join(__dirname , '../node_modules/vue-awesome'),
+ use: {
+ loader: 'ts-loader',
+ options: {
+ appendTsSuffixTo: [/\.vue$/]
+ }
+ }
},
{
test: /\.js$/,
@@ -89,6 +89,8 @@ let rendererConfig = {
options: {
extractCSS: process.env.NODE_ENV === 'production',
loaders: {
+ js: 'ts-loader',
+ ts: 'ts-loader',
sass: 'vue-style-loader!css-loader!sass-loader?indentedSyntax=1',
scss: 'vue-style-loader!css-loader!sass-loader',
less: 'vue-style-loader!css-loader!less-loader'
diff --git a/package-lock.json b/package-lock.json
index 9a8468e2..11af4772 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -557,20 +557,20 @@
"resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.1.tgz",
"integrity": "sha512-JAMFhOaHIciYVh8fb5/83nmuO/AHwmto+Hq7a9y8FzLDcC1KCU344XDOMEmahnrTFlHjgh4L0WJFczNIX2GxnQ==",
"requires": {
- "@types/node": "8.10.21"
+ "@types/node": "11.11.4"
}
},
"@types/node": {
- "version": "8.10.21",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.21.tgz",
- "integrity": "sha512-87XkD9qDXm8fIax+5y7drx84cXsu34ZZqfB7Cial3Q/2lxSoJ/+DRaWckkCbxP41wFSIrrb939VhzaNxj4eY1w=="
+ "version": "11.11.4",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.4.tgz",
+ "integrity": "sha512-02tIL+QIi/RW4E5xILdoAMjeJ9kYq5t5S2vciUdFPXv/ikFTb0zK8q9vXkg4+WAJuYXGiVT1H28AkD2C+IkXVw=="
},
"@types/oauth": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/@types/oauth/-/oauth-0.9.1.tgz",
"integrity": "sha512-a1iY62/a3yhZ7qH7cNUsxoI3U/0Fe9+RnuFrpTKr+0WVOzbKlSLojShCKe20aOD1Sppv+i8Zlq0pLDuTJnwS4A==",
"requires": {
- "@types/node": "8.10.21"
+ "@types/node": "11.11.4"
}
},
"@types/request": {
@@ -580,7 +580,7 @@
"requires": {
"@types/caseless": "0.12.1",
"@types/form-data": "2.2.1",
- "@types/node": "8.10.21",
+ "@types/node": "11.11.4",
"@types/tough-cookie": "2.3.5"
}
},
@@ -595,7 +595,7 @@
"integrity": "sha512-ldteZwWIgl9cOy7FyvYn+39Ah4+PfpVE72eYKw75iy2L0zTbhbcwvzeJ5IOu6DQP93bjfXq0NGHY6FYtmYoqFQ==",
"requires": {
"@types/events": "3.0.0",
- "@types/node": "8.10.21"
+ "@types/node": "11.11.4"
}
},
"@vue/component-compiler-utils": {
diff --git a/package.json b/package.json
index f13aa97b..3cecd272 100644
--- a/package.json
+++ b/package.json
@@ -152,6 +152,7 @@
},
"devDependencies": {
"@mapbox/stylelint-processor-arbitrary-tags": "^0.2.0",
+ "@types/node": "^11.11.4",
"@vue/test-utils": "^1.0.0-beta.28",
"ajv": "^6.6.1",
"babel-core": "^6.26.3",
diff --git a/src/renderer/main.ts b/src/renderer/main.ts
index 37d9d73d..27e67683 100644
--- a/src/renderer/main.ts
+++ b/src/renderer/main.ts
@@ -1,5 +1,4 @@
import Vue from 'vue'
-import axios from 'axios'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import locale from 'element-ui/lib/locale/lang/en'
@@ -17,6 +16,15 @@ import router from './router'
import store from './store'
import i18next from '~/src/config/i18n'
+declare function require(x: string): any
+
+declare var process: {
+ env: {
+ NODE_ENV: string,
+ IS_WEB: boolean
+ }
+}
+
Vue.use(ElementUI, { locale })
Vue.use(shortkey)
Vue.use(VueI18Next)
@@ -26,7 +34,6 @@ Vue.component('popper', Popper)
sync(store, router)
if (!process.env.IS_WEB) Vue.use(require('vue-electron'))
-Vue.http = Vue.prototype.$http = axios
Vue.config.productionTip = false
const i18n = new VueI18Next(i18next)
diff --git a/tsconfig.json b/tsconfig.json
index f079cf0f..0c480004 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,13 +1,13 @@
{
"compilerOptions": {
/* Basic Options */
- "target": "es2015", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
- "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
+ "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
+ "module": "es2015", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
"lib": ["es6"], /* Specify library files to be included in the compilation. */
- // "allowJs": true, /* Allow javascript files to be compiled. */
+ "allowJs": true, /* Allow javascript files to be compiled. */
// "checkJs": true, /* Report errors in .js files. */
// "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */
- "declaration": true, /* Generates corresponding '.d.ts' file. */
+ // "declaration": true, /* Generates corresponding '.d.ts' file. */
// "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
"sourceMap": true, /* Generates corresponding '.map' file. */
// "outFile": "./", /* Concatenate and emit output to single file. */
diff --git a/src/renderer/type.d.ts b/types/element-ui.d.ts
similarity index 100%
rename from src/renderer/type.d.ts
rename to types/element-ui.d.ts
diff --git a/types/vue-popperjs.d.ts b/types/vue-popperjs.d.ts
new file mode 100644
index 00000000..f3d4cca6
--- /dev/null
+++ b/types/vue-popperjs.d.ts
@@ -0,0 +1 @@
+declare module 'vue-popperjs'
diff --git a/types/vue-shortkey.d.ts b/types/vue-shortkey.d.ts
new file mode 100644
index 00000000..517887ad
--- /dev/null
+++ b/types/vue-shortkey.d.ts
@@ -0,0 +1 @@
+declare module 'vue-shortkey'
diff --git a/types/vue.d.ts b/types/vue.d.ts
new file mode 100644
index 00000000..eb40980e
--- /dev/null
+++ b/types/vue.d.ts
@@ -0,0 +1,4 @@
+declare module "*.vue" {
+ import Vue from 'vue'
+ export default Vue
+}