diff --git a/site/layouts/default.vue b/site/layouts/default.vue index 9842575..934c897 100644 --- a/site/layouts/default.vue +++ b/site/layouts/default.vue @@ -1,5 +1,5 @@ diff --git a/site/nuxt.config.ts b/site/nuxt.config.ts index 499f863..10f97a8 100644 --- a/site/nuxt.config.ts +++ b/site/nuxt.config.ts @@ -19,7 +19,14 @@ const config: Configuration = { content: process.env.npm_package_description || '' } ], - link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }], + link: [ + { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }, + { + rel: 'stylesheet', + href: + 'https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700|Material+Icons' + } + ], ...(SUPPORT_IE === 'true' ? { script: [ @@ -54,7 +61,9 @@ const config: Configuration = { // Doc: https://github.com/nuxt-community/stylelint-module '@nuxtjs/stylelint-module', // Doc: https://typescript.nuxtjs.org/ - ['@nuxt/typescript-build', { typeCheck: { eslint: true } }] + ['@nuxt/typescript-build', { typeCheck: { eslint: true } }], + // Doc: https://github.com/nuxt-community/vuetify-module + '@nuxtjs/vuetify' ], /* ** Nuxt.js modules @@ -70,6 +79,16 @@ const config: Configuration = { ** See https://axios.nuxtjs.org/options */ axios: { baseURL: 'https://example.com/v1' }, + /* + ** Vuetify module configuration + ** See https://github.com/nuxt-community/vuetify-module#options + */ + vuetify: { + defaultAssets: { + font: { family: 'Noto Sans JP' } + }, + treeShake: true + }, /* ** Build configuration */ diff --git a/site/package-lock.json b/site/package-lock.json index 88f1ea5..283a5fc 100644 --- a/site/package-lock.json +++ b/site/package-lock.json @@ -1587,6 +1587,20 @@ "stylelint-webpack-plugin": "^1.1.1" } }, + "@nuxtjs/vuetify": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@nuxtjs/vuetify/-/vuetify-1.9.1.tgz", + "integrity": "sha512-CzzPKh53XThrcIGGzN1Jh3sailNyDnkJHYCNxJrP8ZIMapScbyUw6sQ4TzcN7aOrG6+4wg/34vUDkS/HUkbdnA==", + "dev": true, + "requires": { + "deepmerge": "^4.2.2", + "fibers": "^4.0.2", + "sass": "^1.23.7", + "sass-loader": "^8.0.0", + "vuetify": "^2.1.13", + "vuetify-loader": "^1.4.3" + } + }, "@nuxtjs/youch": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/@nuxtjs/youch/-/youch-4.2.3.tgz", @@ -3575,6 +3589,17 @@ "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", "dev": true }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, "clone-regexp": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", @@ -4368,6 +4393,12 @@ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=" }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true + }, "diff": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz", @@ -5729,6 +5760,15 @@ "reusify": "^1.0.0" } }, + "fibers": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/fibers/-/fibers-4.0.2.tgz", + "integrity": "sha512-FhICi1K4WZh9D6NC18fh2ODF3EWy1z0gzIdV9P7+s2pRjfRBnCkMDJ6x3bV1DkVymKH8HGrQa/FNOBjYvnJ/tQ==", + "dev": true, + "requires": { + "detect-libc": "^1.0.3" + } + }, "figgy-pudding": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", @@ -10939,6 +10979,28 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "sass": { + "version": "1.24.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.24.2.tgz", + "integrity": "sha512-0JxdMMRd0fOmGFQFRI91vh4n0Ed766ib9JwPUa+1C37zn3VaqlHxbknUn/6LqP/MSfvNPxRYoCrYf5g8vu4OHw==", + "dev": true, + "requires": { + "chokidar": ">=2.0.0 <4.0.0" + } + }, + "sass-loader": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.0.tgz", + "integrity": "sha512-+qeMu563PN7rPdit2+n5uuYVR0SSVwm0JsOUsaJXzgYcClWSlmX0iHDnmeOobPkf5kUglVot3QS6SyLyaQoJ4w==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "loader-utils": "^1.2.3", + "neo-async": "^2.6.1", + "schema-utils": "^2.1.0", + "semver": "^6.3.0" + } + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -11082,6 +11144,15 @@ "safe-buffer": "^5.0.1" } }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -13270,6 +13341,21 @@ "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==" }, + "vuetify": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-2.2.1.tgz", + "integrity": "sha512-S6MkPNb9tnRtCZ3snCxWk9oYhcoDcmYKjhESpDIm0D8rhqUbif7r14BRq5UXy7007DFkNbPx/PFoygl2D4L0AQ==", + "dev": true + }, + "vuetify-loader": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/vuetify-loader/-/vuetify-loader-1.4.3.tgz", + "integrity": "sha512-fS0wRil682Ebsj2as+eruBoMPKaQYDhu/fDAndnTItzSY4RK4LOEIsssVL4vD6QY8dvUgoGL84SUQ6vGr777CA==", + "dev": true, + "requires": { + "loader-utils": "^1.2.0" + } + }, "vuex": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.1.2.tgz", diff --git a/site/package.json b/site/package.json index f9f52d7..b62fa95 100644 --- a/site/package.json +++ b/site/package.json @@ -50,6 +50,7 @@ "@nuxt/typescript-build": "^0.5.5", "@nuxtjs/eslint-config-typescript": "^1.0.0", "@nuxtjs/stylelint-module": "^3.1.1", + "@nuxtjs/vuetify": "^1.9.1", "@types/faker": "^4.1.8", "aspida": "^0.7.0", "axios-mock-server": "^0.16.3", diff --git a/site/tsconfig.json b/site/tsconfig.json index 7257598..daad1b5 100644 --- a/site/tsconfig.json +++ b/site/tsconfig.json @@ -26,7 +26,8 @@ "types": [ "@types/node", "@nuxt/types", - "@nuxtjs/axios" + "@nuxtjs/axios", + "vuetify" ] }, "exclude": [