Setup completed.
Completed the main setup of the development environment of nuxt.js and created a simple boilerplate/temporary start page with theme functionality.
This commit is contained in:
12
.editorconfig
Normal file
12
.editorconfig
Normal file
@@ -0,0 +1,12 @@
|
||||
# editorconfig.org
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = tab
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
||||
15
.eslintrc.js
Normal file
15
.eslintrc.js
Normal file
@@ -0,0 +1,15 @@
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: {
|
||||
browser: true,
|
||||
node: true,
|
||||
},
|
||||
extends: [
|
||||
'@nuxtjs/eslint-config-typescript',
|
||||
'plugin:nuxt/recommended',
|
||||
'prettier',
|
||||
],
|
||||
plugins: [],
|
||||
// add your custom rules here
|
||||
rules: {},
|
||||
}
|
||||
2
.gitattributes
vendored
2
.gitattributes
vendored
@@ -1,2 +0,0 @@
|
||||
# Auto detect text files and perform LF normalization
|
||||
* text=auto
|
||||
17
.github/dependabot.yml
vendored
Normal file
17
.github/dependabot.yml
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
version: 2
|
||||
updates:
|
||||
# Fetch and update latest `npm` packages
|
||||
- package-ecosystem: npm
|
||||
directory: '/'
|
||||
schedule:
|
||||
interval: daily
|
||||
time: '00:00'
|
||||
open-pull-requests-limit: 10
|
||||
reviewers:
|
||||
- guz013
|
||||
assignees:
|
||||
- guz013
|
||||
commit-message:
|
||||
prefix: fix
|
||||
prefix-development: chore
|
||||
include: scope
|
||||
96
.gitignore
vendored
Normal file
96
.gitignore
vendored
Normal file
@@ -0,0 +1,96 @@
|
||||
# Created by .ignore support plugin (hsz.mobi)
|
||||
### Node template
|
||||
# Logs
|
||||
/logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# next.js build output
|
||||
.next
|
||||
|
||||
# nuxt.js build output
|
||||
.nuxt
|
||||
|
||||
# Nuxt generate
|
||||
dist
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless
|
||||
|
||||
# IDE / Editor
|
||||
.idea
|
||||
|
||||
# Service worker
|
||||
sw.*
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
|
||||
# Vim swap files
|
||||
*.swp
|
||||
|
||||
# Vercel
|
||||
.vercel
|
||||
.vercel_build_output
|
||||
|
||||
.vercel
|
||||
96
.prettierignore
Normal file
96
.prettierignore
Normal file
@@ -0,0 +1,96 @@
|
||||
###
|
||||
# Place your Prettier ignore content here
|
||||
|
||||
###
|
||||
# .gitignore content is duplicated here due to https://github.com/prettier/prettier/issues/8506
|
||||
|
||||
# Created by .ignore support plugin (hsz.mobi)
|
||||
### Node template
|
||||
# Logs
|
||||
/logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# next.js build output
|
||||
.next
|
||||
|
||||
# nuxt.js build output
|
||||
.nuxt
|
||||
|
||||
# Nuxt generate
|
||||
dist
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless
|
||||
|
||||
# IDE / Editor
|
||||
.idea
|
||||
|
||||
# Service worker
|
||||
sw.*
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
|
||||
# Vim swap files
|
||||
*.swp
|
||||
4
.prettierrc
Normal file
4
.prettierrc
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"semi": true,
|
||||
"singleQuote": true
|
||||
}
|
||||
21
LICENSE
21
LICENSE
@@ -1,21 +0,0 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2022 Guz
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
68
README.md
Normal file
68
README.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# ToToday
|
||||
|
||||
## Build Setup
|
||||
|
||||
```bash
|
||||
# install dependencies
|
||||
$ npm install
|
||||
|
||||
# serve with hot reload at localhost:3000
|
||||
$ npm run dev
|
||||
|
||||
# build for production and launch server
|
||||
$ npm run build
|
||||
$ npm run start
|
||||
|
||||
# generate static project
|
||||
$ npm run generate
|
||||
```
|
||||
|
||||
For detailed explanation on how things work, check out the [documentation](https://nuxtjs.org).
|
||||
|
||||
## Special Directories
|
||||
|
||||
You can create the following extra directories, some of which have special behaviors. Only `pages` is required; you can delete them if you don't want to use their functionality.
|
||||
|
||||
### `assets`
|
||||
|
||||
The assets directory contains your uncompiled assets such as Stylus or Sass files, images, or fonts.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/assets).
|
||||
|
||||
### `components`
|
||||
|
||||
The components directory contains your Vue.js components. Components make up the different parts of your page and can be reused and imported into your pages, layouts and even other components.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/components).
|
||||
|
||||
### `layouts`
|
||||
|
||||
Layouts are a great help when you want to change the look and feel of your Nuxt app, whether you want to include a sidebar or have distinct layouts for mobile and desktop.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/layouts).
|
||||
|
||||
### `pages`
|
||||
|
||||
This directory contains your application views and routes. Nuxt will read all the `*.vue` files inside this directory and setup Vue Router automatically.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/get-started/routing).
|
||||
|
||||
### `plugins`
|
||||
|
||||
The plugins directory contains JavaScript plugins that you want to run before instantiating the root Vue.js Application. This is the place to add Vue plugins and to inject functions or constants. Every time you need to use `Vue.use()`, you should create a file in `plugins/` and add its path to plugins in `nuxt.config.js`.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/plugins).
|
||||
|
||||
### `static`
|
||||
|
||||
This directory contains your static files. Each file inside this directory is mapped to `/`.
|
||||
|
||||
Example: `/static/robots.txt` is mapped as `/robots.txt`.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/static).
|
||||
|
||||
### `store`
|
||||
|
||||
This directory contains your Vuex store files. Creating a file in this directory automatically activates Vuex.
|
||||
|
||||
More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/store).
|
||||
61
nuxt.config.js
Normal file
61
nuxt.config.js
Normal file
@@ -0,0 +1,61 @@
|
||||
export default {
|
||||
srcDir: 'src/',
|
||||
buildDir: 'dist',
|
||||
target: 'static',
|
||||
|
||||
// Global page headers: https://go.nuxtjs.dev/config-head
|
||||
head: {
|
||||
title: 'ToToday',
|
||||
meta: [
|
||||
{ charset: 'utf-8' },
|
||||
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
|
||||
{ hid: 'description', name: 'description', content: '' },
|
||||
{ name: 'format-detection', content: 'telephone=no' },
|
||||
],
|
||||
link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
|
||||
},
|
||||
|
||||
// Global CSS: https://go.nuxtjs.dev/config-css
|
||||
css: [
|
||||
'~/assets/styles/global.scss',
|
||||
],
|
||||
|
||||
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
|
||||
plugins: [],
|
||||
|
||||
// Auto import components: https://go.nuxtjs.dev/config-components
|
||||
components: true,
|
||||
|
||||
// Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
|
||||
buildModules: [
|
||||
// https://go.nuxtjs.dev/typescript
|
||||
'@nuxt/typescript-build',
|
||||
// https://go.nuxtjs.dev/stylelint
|
||||
'@nuxtjs/stylelint-module',
|
||||
|
||||
'@nuxtjs/color-mode',
|
||||
|
||||
'@nuxt/image',
|
||||
],
|
||||
|
||||
// Modules: https://go.nuxtjs.dev/config-modules
|
||||
modules: [
|
||||
'@nuxtjs/pwa',
|
||||
],
|
||||
|
||||
// PWA module configuration: https://go.nuxtjs.dev/pwa
|
||||
pwa: {
|
||||
manifest: {
|
||||
lang: 'en',
|
||||
},
|
||||
},
|
||||
|
||||
image: {
|
||||
screens: {
|
||||
ToTodayLogoLg: 250,
|
||||
}
|
||||
},
|
||||
|
||||
// Build Configuration: https://go.nuxtjs.dev/config-build
|
||||
build: {},
|
||||
}
|
||||
32677
package-lock.json
generated
Normal file
32677
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
47
package.json
Normal file
47
package.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"name": "ToToday",
|
||||
"version": "1.0.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate",
|
||||
"lint:js": "eslint --ext \".js,.ts,.vue\" --ignore-path .gitignore .",
|
||||
"lint:style": "stylelint \"**/*.{css,scss,sass,html,vue}\" --ignore-path .gitignore",
|
||||
"lint:prettier": "prettier --check .",
|
||||
"lint": "npm run lint:js && npm run lint:style && npm run lint:prettier",
|
||||
"lintfix": "prettier --write --list-different . && npm run lint:js -- --fix && npm run lint:style -- --fix"
|
||||
},
|
||||
"dependencies": {
|
||||
"@nuxtjs/pwa": "^3.3.5",
|
||||
"core-js": "^3.19.3",
|
||||
"nuxt": "^2.15.8",
|
||||
"vue": "^2.6.14",
|
||||
"vue-server-renderer": "^2.6.14",
|
||||
"vue-template-compiler": "^2.6.14",
|
||||
"webpack": "^4.46.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/eslint-parser": "^7.16.3",
|
||||
"@nuxt/image": "^0.6.0",
|
||||
"@nuxt/types": "^2.15.8",
|
||||
"@nuxt/typescript-build": "^2.1.0",
|
||||
"@nuxtjs/color-mode": "^2.1.1",
|
||||
"@nuxtjs/eslint-config-typescript": "^8.0.0",
|
||||
"@nuxtjs/eslint-module": "^3.0.2",
|
||||
"@nuxtjs/stylelint-module": "^4.1.0",
|
||||
"eslint": "^8.4.1",
|
||||
"eslint-config-prettier": "^8.3.0",
|
||||
"eslint-plugin-nuxt": "^3.1.0",
|
||||
"eslint-plugin-vue": "^8.2.0",
|
||||
"postcss-html": "^1.3.0",
|
||||
"prettier": "^2.5.1",
|
||||
"sass": "^1.48.0",
|
||||
"sass-loader": "^10.2.1",
|
||||
"stylelint": "^14.1.0",
|
||||
"stylelint-config-prettier": "^9.0.3",
|
||||
"stylelint-config-recommended-vue": "^1.1.0",
|
||||
"stylelint-config-standard": "^24.0.0"
|
||||
}
|
||||
}
|
||||
BIN
src/assets/fonts/FiraCode-Medium.ttf
Normal file
BIN
src/assets/fonts/FiraCode-Medium.ttf
Normal file
Binary file not shown.
BIN
src/assets/fonts/FiraCode.ttf
Normal file
BIN
src/assets/fonts/FiraCode.ttf
Normal file
Binary file not shown.
BIN
src/assets/fonts/RedHatDisplay-Bold.ttf
Normal file
BIN
src/assets/fonts/RedHatDisplay-Bold.ttf
Normal file
Binary file not shown.
BIN
src/assets/fonts/RedHatDisplay.ttf
Normal file
BIN
src/assets/fonts/RedHatDisplay.ttf
Normal file
Binary file not shown.
BIN
src/assets/fonts/RedHatText.ttf
Normal file
BIN
src/assets/fonts/RedHatText.ttf
Normal file
Binary file not shown.
33
src/assets/styles/_mixins.scss
Normal file
33
src/assets/styles/_mixins.scss
Normal file
@@ -0,0 +1,33 @@
|
||||
@import '~assets/styles/_variables.scss';
|
||||
|
||||
@mixin link {
|
||||
a {
|
||||
text-decoration: none;
|
||||
transition: color 0.2s;
|
||||
|
||||
.light-mode &:link,
|
||||
.light-mode &:visited {
|
||||
color: $light-secondary;
|
||||
}
|
||||
.light-mode &:hover,
|
||||
.light-mode &:focus {
|
||||
color: $light-primary;
|
||||
}
|
||||
|
||||
.dark-mode &:link,
|
||||
.dark-mode &:visited {
|
||||
color: $dark-secondary;
|
||||
}
|
||||
.dark-mode &:hover,
|
||||
.dark-mode &:focus {
|
||||
color: $dark-primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin center {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
12
src/assets/styles/_variables.scss
Normal file
12
src/assets/styles/_variables.scss
Normal file
@@ -0,0 +1,12 @@
|
||||
@import '~assets/styles/fonts.css';
|
||||
|
||||
$light-background: #fff;
|
||||
$light-primary: #000;
|
||||
$light-secondary: #afafaf;
|
||||
|
||||
$dark-background: #181b23;
|
||||
$dark-primary: #eaf3f2;
|
||||
$dark-secondary: #697699;
|
||||
|
||||
$main-font: 'Red Display', arial, helvetica, sans-serif;
|
||||
$secondary-font: 'Fira Code', monospace, sans-serif;
|
||||
16
src/assets/styles/fonts.css
Normal file
16
src/assets/styles/fonts.css
Normal file
@@ -0,0 +1,16 @@
|
||||
@font-face {
|
||||
font-family: 'Fira Code';
|
||||
src: url('../fonts/FiraCode.ttf') format('truetype');
|
||||
src: url('../fonts/FiraCode-Medium.ttf') format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Red Display';
|
||||
src: url('../fonts/RedHatDisplay.ttf') format('truetype');
|
||||
src: url('../fonts/RedHatDisplay-Bold.ttf') format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Red Text';
|
||||
src: url('../fonts/RedHatText.ttf') format('truetype');
|
||||
}
|
||||
29
src/assets/styles/global.scss
Normal file
29
src/assets/styles/global.scss
Normal file
@@ -0,0 +1,29 @@
|
||||
@import '~assets/styles/_variables.scss';
|
||||
@import '~assets/styles/_mixins.scss';
|
||||
|
||||
body {
|
||||
@include center;
|
||||
|
||||
overflow: hidden;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
|
||||
transition: background-color .3s;
|
||||
|
||||
font-family: $main-font;
|
||||
}
|
||||
|
||||
* {
|
||||
transition: all .3s;
|
||||
transition: color .01s;
|
||||
}
|
||||
|
||||
.light-mode body {
|
||||
background-color: $light-background;
|
||||
color: $light-primary;
|
||||
}
|
||||
|
||||
.dark-mode body {
|
||||
background-color: $dark-background;
|
||||
color: $dark-primary;
|
||||
}
|
||||
36
src/components/PageFooter.vue
Normal file
36
src/components/PageFooter.vue
Normal file
@@ -0,0 +1,36 @@
|
||||
<template>
|
||||
<div class="footer">
|
||||
<p>
|
||||
<a href="http://github.com/ProjectLored/ToToday.app" target="_blank">
|
||||
(c) 2022 Project Lored • MIT License
|
||||
</a>
|
||||
<br />
|
||||
Icons provided by
|
||||
<a href="https://iconoir.com/" target="_blank"> Iconoir </a>
|
||||
</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '~assets/styles/_variables.scss';
|
||||
@import '~assets/styles/_mixins.scss';
|
||||
|
||||
.footer {
|
||||
@include link;
|
||||
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
font-family: $secondary-font;
|
||||
font-size: small;
|
||||
|
||||
.light-mode & {
|
||||
color: $light-secondary;
|
||||
}
|
||||
|
||||
.dark-mode & {
|
||||
color: $dark-secondary;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
86
src/components/ThemePicker.vue
Normal file
86
src/components/ThemePicker.vue
Normal file
@@ -0,0 +1,86 @@
|
||||
<template>
|
||||
<div class="themePicker">
|
||||
<button
|
||||
@click="
|
||||
$colorMode.preference =
|
||||
$colorMode.preference === 'dark' ? 'light' : 'dark'
|
||||
"
|
||||
>
|
||||
<IconMoon v-if="$colorMode.preference !== 'dark'" />
|
||||
<IconSun v-else/>
|
||||
</button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
@import '~assets/styles/_variables.scss';
|
||||
@import '~assets/styles/_mixins.scss';
|
||||
|
||||
.themePicker {
|
||||
z-index: 100;
|
||||
position: fixed;
|
||||
|
||||
transition: right, bottom 1s ease-in-out;
|
||||
right: 10px;
|
||||
bottom: 10px;
|
||||
@media screen and (min-width: 600px) {
|
||||
right: 40px;
|
||||
bottom: 40px;
|
||||
}
|
||||
|
||||
font-family: $secondary-font;
|
||||
font-size: 15px;
|
||||
|
||||
button {
|
||||
* {
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
@include center;
|
||||
margin: 3px 0px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
background-color: transparent;
|
||||
font-size: 15px;
|
||||
outline: 0;
|
||||
font-family: $secondary-font;
|
||||
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
border-radius: 25%;
|
||||
transition: border-color 0.2s;
|
||||
.icon * {
|
||||
transition: stroke 0.2s;
|
||||
}
|
||||
|
||||
.light-mode & {
|
||||
border-color: $light-secondary;
|
||||
.icon * {
|
||||
stroke: $light-secondary;
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover {
|
||||
.icon * {
|
||||
stroke: $light-primary;
|
||||
}
|
||||
border-color: $light-primary;
|
||||
}
|
||||
}
|
||||
.dark-mode & {
|
||||
border-color: $dark-secondary;
|
||||
.icon * {
|
||||
stroke: $dark-secondary;
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover {
|
||||
border-color: $dark-primary;
|
||||
.icon * {
|
||||
stroke: $dark-primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
6
src/components/ToTodayLogo.vue
Normal file
6
src/components/ToTodayLogo.vue
Normal file
@@ -0,0 +1,6 @@
|
||||
<template>
|
||||
<picture>
|
||||
<nuxt-img v-if="$colorMode.value !== 'dark'" src="/images/ToToday-Dark.svg" alt="ToToday logo" width="250"/>
|
||||
<nuxt-img v-else src="/images/ToToday-Light.svg" alt="ToToday logo" width="250"/>
|
||||
</picture>
|
||||
</template>
|
||||
42
src/components/icon/Moon.vue
Normal file
42
src/components/icon/Moon.vue
Normal file
@@ -0,0 +1,42 @@
|
||||
<template>
|
||||
<svg
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
stroke-width="1.5"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="1.5" />
|
||||
<path
|
||||
d="M7.63262 3.06689C8.98567 3.35733 9.99999 4.56025 9.99999 6.00007C9.99999 7.65693 8.65685 9.00007 6.99999 9.00007C5.4512 9.00007 4.17653 7.82641 4.01685 6.31997"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
/>
|
||||
<path
|
||||
d="M22 13.0505C21.3647 12.4022 20.4793 12 19.5 12C17.567 12 16 13.567 16 15.5C16 17.2632 17.3039 18.7219 19 18.9646"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
/>
|
||||
<path
|
||||
d="M14.5 8.51L14.51 8.49889"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M10 17C11.1046 17 12 16.1046 12 15C12 13.8954 11.1046 13 10 13C8.89543 13 8 13.8954 8 15C8 16.1046 8.89543 17 10 17Z"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
</svg>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import Vue from 'vue';
|
||||
export default Vue.extend({
|
||||
name: 'IconMoon',
|
||||
});
|
||||
</script>
|
||||
73
src/components/icon/Sun.vue
Normal file
73
src/components/icon/Sun.vue
Normal file
@@ -0,0 +1,73 @@
|
||||
<template>
|
||||
<svg
|
||||
class="icon"
|
||||
width="24"
|
||||
height="24"
|
||||
stroke-width="1.5"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path
|
||||
d="M12 18C15.3137 18 18 15.3137 18 12C18 8.68629 15.3137 6 12 6C8.68629 6 6 8.68629 6 12C6 15.3137 8.68629 18 12 18Z"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M22 12L23 12"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M12 2V1"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M12 23V22"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M20 20L19 19"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M20 4L19 5"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M4 20L5 19"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M4 4L5 5"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
<path
|
||||
d="M1 12L2 12"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
/>
|
||||
</svg>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import Vue from 'vue';
|
||||
export default Vue.extend({
|
||||
name: 'IconMoon',
|
||||
});
|
||||
</script>
|
||||
18
src/pages/index.vue
Normal file
18
src/pages/index.vue
Normal file
@@ -0,0 +1,18 @@
|
||||
<template>
|
||||
<main class="container">
|
||||
<div>
|
||||
<ToTodayLogo />
|
||||
<p>A single page web app to help yours day-to-day tasks</p>
|
||||
<ThemePicker />
|
||||
</div>
|
||||
<PageFooter />
|
||||
</main>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import Vue from 'vue';
|
||||
|
||||
export default Vue.extend({
|
||||
name: 'IndexPage',
|
||||
});
|
||||
</script>
|
||||
BIN
src/static/favicon.ico
Normal file
BIN
src/static/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.4 KiB |
BIN
src/static/icon.png
Normal file
BIN
src/static/icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.5 KiB |
7
src/static/icons/source_icons_moon-sat.svg
Normal file
7
src/static/icons/source_icons_moon-sat.svg
Normal file
@@ -0,0 +1,7 @@
|
||||
<svg width="24" height="24" stroke-width="1.5" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="1.5"/>
|
||||
<path d="M7.63262 3.06689C8.98567 3.35733 9.99999 4.56025 9.99999 6.00007C9.99999 7.65693 8.65685 9.00007 6.99999 9.00007C5.4512 9.00007 4.17653 7.82641 4.01685 6.31997" stroke="currentColor" stroke-width="1.5"/>
|
||||
<path d="M22 13.0505C21.3647 12.4022 20.4793 12 19.5 12C17.567 12 16 13.567 16 15.5C16 17.2632 17.3039 18.7219 19 18.9646" stroke="currentColor" stroke-width="1.5"/>
|
||||
<path d="M14.5 8.51L14.51 8.49889" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M10 17C11.1046 17 12 16.1046 12 15C12 13.8954 11.1046 13 10 13C8.89543 13 8 13.8954 8 15C8 16.1046 8.89543 17 10 17Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 879 B |
11
src/static/icons/source_icons_sun-light.svg
Normal file
11
src/static/icons/source_icons_sun-light.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg width="24" height="24" stroke-width="1.5" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12 18C15.3137 18 18 15.3137 18 12C18 8.68629 15.3137 6 12 6C8.68629 6 6 8.68629 6 12C6 15.3137 8.68629 18 12 18Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M22 12L23 12" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M12 2V1" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M12 23V22" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M20 20L19 19" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M20 4L19 5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M4 20L5 19" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M4 4L5 5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M1 12L2 12" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
26
src/static/images/ToToday-Dark.svg
Normal file
26
src/static/images/ToToday-Dark.svg
Normal file
@@ -0,0 +1,26 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 650.02 154">
|
||||
<defs>
|
||||
<style>
|
||||
.cls-1 {
|
||||
fill: #63e5ff;
|
||||
}
|
||||
</style>
|
||||
</defs>
|
||||
<g id="ToToday">
|
||||
<g id="Layer_7" data-name="Layer 7">
|
||||
<path d="M56.47,117.68H33.79v-91H-.39V4h91V26.72H56.47Z" />
|
||||
<path d="M232.46,117.68H209.78v-91H175.6V4h91V26.72h-34.1Z" />
|
||||
<path
|
||||
d="M348.31,74.46a45.6,45.6,0,0,1-3.41,17.72,44.32,44.32,0,0,1-9.27,14.2,43.54,43.54,0,0,1-13.76,9.44,43.18,43.18,0,0,1-33.78,0A43.48,43.48,0,0,1,265,92.18a45.78,45.78,0,0,1-3.41-17.72A46.5,46.5,0,0,1,265,56.54a43.92,43.92,0,0,1,9.32-14.24,43.2,43.2,0,0,1,13.8-9.39,41.88,41.88,0,0,1,16.85-3.41,44.52,44.52,0,0,1,16.93,3.21,41,41,0,0,1,13.76,9.12A43.21,43.21,0,0,1,344.9,56,47.92,47.92,0,0,1,348.31,74.46ZM320.16,91.19a22,22,0,0,0,4.64-7.29,27,27,0,0,0,0-18.92,22.4,22.4,0,0,0-4.64-7.29A19.86,19.86,0,0,0,313.3,53a22.28,22.28,0,0,0-16.73,0,19.52,19.52,0,0,0-6.82,4.68A22.22,22.22,0,0,0,285.19,65a25.77,25.77,0,0,0-1.66,9.48,24.52,24.52,0,0,0,1.66,9.12,22.86,22.86,0,0,0,4.56,7.29,21.19,21.19,0,0,0,6.82,4.88,20,20,0,0,0,8.37,1.79,21.15,21.15,0,0,0,8.36-1.67" />
|
||||
<path
|
||||
d="M423.81-1V35.34a42.83,42.83,0,0,0-5-2.44,44.52,44.52,0,0,0-16.93-3.21A42.1,42.1,0,0,0,385,33.1a43.34,43.34,0,0,0-13.79,9.4,43.81,43.81,0,0,0-9.32,14.24,46.47,46.47,0,0,0-3.41,17.92,45.78,45.78,0,0,0,3.41,17.72A43.45,43.45,0,0,0,385,116a43.09,43.09,0,0,0,33.79,0,43.51,43.51,0,0,0,13.76-9.43,48.21,48.21,0,0,0,13-35.56V-1Zm-2.07,85.13a21.93,21.93,0,0,1-4.64,7.3,20.71,20.71,0,0,1-6.86,4.68,21.15,21.15,0,0,1-8.36,1.66A20,20,0,0,1,393.51,96a21.34,21.34,0,0,1-6.82-4.88,22.86,22.86,0,0,1-4.56-7.29,24.57,24.57,0,0,1-1.67-9.12,25.77,25.77,0,0,1,1.67-9.48,22.37,22.37,0,0,1,4.56-7.3,19.62,19.62,0,0,1,6.82-4.67,22.28,22.28,0,0,1,16.73,0,20,20,0,0,1,6.86,4.67,22.55,22.55,0,0,1,4.64,7.3,27,27,0,0,1,0,18.91Z" />
|
||||
<path
|
||||
d="M547.42,119.1V78.31a48.16,48.16,0,0,0-13-35.56,43.43,43.43,0,0,0-13.76-9.44,43.07,43.07,0,0,0-33.78,0A43.48,43.48,0,0,0,463.71,57a45.78,45.78,0,0,0-3.41,17.72,46.5,46.5,0,0,0,3.41,17.92A43.93,43.93,0,0,0,473,106.82a43.18,43.18,0,0,0,13.8,9.4,42.08,42.08,0,0,0,16.85,3.41,44.48,44.48,0,0,0,16.93-3.21,43.61,43.61,0,0,0,5-2.43v5.11ZM525.25,74.67a25.36,25.36,0,0,1-1.7,9.48,22.67,22.67,0,0,1-4.64,7.29,20,20,0,0,1-6.86,4.68,22.28,22.28,0,0,1-16.73,0,19.42,19.42,0,0,1-6.82-4.68,22.32,22.32,0,0,1-4.56-7.29,25.77,25.77,0,0,1-1.67-9.48,24.53,24.53,0,0,1,1.67-9.12,23,23,0,0,1,4.56-7.3,21.21,21.21,0,0,1,6.82-4.87,19.93,19.93,0,0,1,8.36-1.79,21.24,21.24,0,0,1,8.37,1.67,20.82,20.82,0,0,1,6.86,4.68,22.14,22.14,0,0,1,4.64,7.29A25.45,25.45,0,0,1,525.25,74.67Z" />
|
||||
<path
|
||||
d="M627.37,74.63a25.08,25.08,0,0,1-1.7,9.17A22.51,22.51,0,0,1,621,91.09a19.86,19.86,0,0,1-6.86,4.68,22.28,22.28,0,0,1-16.73,0,19.61,19.61,0,0,1-6.82-4.68,22.32,22.32,0,0,1-4.56-7.29,25.72,25.72,0,0,1-1.66-9.17s-.4-39.08-.07-44.47H562.1l.34,44.47a46.16,46.16,0,0,0,3.4,17.61,43.92,43.92,0,0,0,9.32,14.24,43.2,43.2,0,0,0,13.8,9.39,41.88,41.88,0,0,0,16.85,3.41,44.52,44.52,0,0,0,16.93-3.21,42.78,42.78,0,0,0,5-2.43V153h21.8V78a30.07,30.07,0,0,0,.09-3.33l-.3-44.47H627.09Z" />
|
||||
<path class="cls-1"
|
||||
d="M172.33,74.46a45.78,45.78,0,0,1-3.41,17.72,44.52,44.52,0,0,1-9.28,14.2,43.43,43.43,0,0,1-13.76,9.44,43.18,43.18,0,0,1-33.78,0A43.48,43.48,0,0,1,89,92.18a45.78,45.78,0,0,1-3.41-17.72A46.5,46.5,0,0,1,89,56.54,44.08,44.08,0,0,1,98.3,42.3a43.31,43.31,0,0,1,13.8-9.39A41.91,41.91,0,0,1,129,29.5a44.48,44.48,0,0,1,16.93,3.21,40.86,40.86,0,0,1,13.76,9.12A43.39,43.39,0,0,1,168.92,56,48.11,48.11,0,0,1,172.33,74.46Z" />
|
||||
<path d="M170.33,35.56,181.77,47l-57.42,57.25L95.8,75.71l11.47-11.48,17.2,17.2Z" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.5 KiB |
30
src/static/images/ToToday-Light.svg
Normal file
30
src/static/images/ToToday-Light.svg
Normal file
@@ -0,0 +1,30 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 650.02 154">
|
||||
<defs>
|
||||
<style>
|
||||
.cls-1 {
|
||||
fill: #eaf3f2;
|
||||
}
|
||||
|
||||
.cls-2 {
|
||||
fill: #63e5ff;
|
||||
}
|
||||
</style>
|
||||
</defs>
|
||||
<g id="ToToday">
|
||||
<g id="Layer_7" data-name="Layer 7">
|
||||
<path class="cls-1" d="M57.47,117.68H34.79v-91H.61V4h91V26.72H57.47Z" />
|
||||
<path class="cls-1" d="M233.46,117.68H210.78v-91H176.6V4h91V26.72h-34.1Z" />
|
||||
<path class="cls-1"
|
||||
d="M349.31,74.46a45.6,45.6,0,0,1-3.41,17.72,44.32,44.32,0,0,1-9.27,14.2,43.54,43.54,0,0,1-13.76,9.44,43.18,43.18,0,0,1-33.78,0A43.48,43.48,0,0,1,266,92.18a45.78,45.78,0,0,1-3.41-17.72A46.5,46.5,0,0,1,266,56.54a43.92,43.92,0,0,1,9.32-14.24,43.2,43.2,0,0,1,13.8-9.39,41.88,41.88,0,0,1,16.85-3.41,44.52,44.52,0,0,1,16.93,3.21,41,41,0,0,1,13.76,9.12A43.21,43.21,0,0,1,345.9,56,47.92,47.92,0,0,1,349.31,74.46ZM321.16,91.19a22,22,0,0,0,4.64-7.29,27,27,0,0,0,0-18.92,22.4,22.4,0,0,0-4.64-7.29A19.86,19.86,0,0,0,314.3,53a22.28,22.28,0,0,0-16.73,0,19.52,19.52,0,0,0-6.82,4.68A22.22,22.22,0,0,0,286.19,65a25.77,25.77,0,0,0-1.66,9.48,24.52,24.52,0,0,0,1.66,9.12,22.86,22.86,0,0,0,4.56,7.29,21.19,21.19,0,0,0,6.82,4.88,20,20,0,0,0,8.37,1.79,21.15,21.15,0,0,0,8.36-1.67" />
|
||||
<path class="cls-1"
|
||||
d="M424.81-1V35.34a42.83,42.83,0,0,0-5-2.44,44.52,44.52,0,0,0-16.93-3.21A42.1,42.1,0,0,0,386,33.1a43.34,43.34,0,0,0-13.79,9.4,43.81,43.81,0,0,0-9.32,14.24,46.47,46.47,0,0,0-3.41,17.92,45.78,45.78,0,0,0,3.41,17.72A43.45,43.45,0,0,0,386,116a43.09,43.09,0,0,0,33.79,0,43.51,43.51,0,0,0,13.76-9.43,48.21,48.21,0,0,0,13-35.56V-1Zm-2.07,85.13a21.93,21.93,0,0,1-4.64,7.3,20.71,20.71,0,0,1-6.86,4.68,21.15,21.15,0,0,1-8.36,1.66A20,20,0,0,1,394.51,96a21.34,21.34,0,0,1-6.82-4.88,22.86,22.86,0,0,1-4.56-7.29,24.57,24.57,0,0,1-1.67-9.12,25.77,25.77,0,0,1,1.67-9.48,22.37,22.37,0,0,1,4.56-7.3,19.62,19.62,0,0,1,6.82-4.67,22.28,22.28,0,0,1,16.73,0,20,20,0,0,1,6.86,4.67,22.55,22.55,0,0,1,4.64,7.3,27,27,0,0,1,0,18.91Z" />
|
||||
<path class="cls-1"
|
||||
d="M548.42,119.1V78.31a48.16,48.16,0,0,0-13-35.56,43.43,43.43,0,0,0-13.76-9.44,43.07,43.07,0,0,0-33.78,0A43.48,43.48,0,0,0,464.71,57a45.78,45.78,0,0,0-3.41,17.72,46.5,46.5,0,0,0,3.41,17.92A43.93,43.93,0,0,0,474,106.82a43.18,43.18,0,0,0,13.8,9.4,42.08,42.08,0,0,0,16.85,3.41,44.48,44.48,0,0,0,16.93-3.21,43.61,43.61,0,0,0,5-2.43v5.11ZM526.25,74.67a25.36,25.36,0,0,1-1.7,9.48,22.67,22.67,0,0,1-4.64,7.29,20,20,0,0,1-6.86,4.68,22.28,22.28,0,0,1-16.73,0,19.42,19.42,0,0,1-6.82-4.68,22.32,22.32,0,0,1-4.56-7.29,25.77,25.77,0,0,1-1.67-9.48,24.53,24.53,0,0,1,1.67-9.12,23,23,0,0,1,4.56-7.3,21.21,21.21,0,0,1,6.82-4.87,19.93,19.93,0,0,1,8.36-1.79,21.24,21.24,0,0,1,8.37,1.67,20.82,20.82,0,0,1,6.86,4.68,22.14,22.14,0,0,1,4.64,7.29A25.45,25.45,0,0,1,526.25,74.67Z" />
|
||||
<path class="cls-1"
|
||||
d="M628.37,74.63a25.08,25.08,0,0,1-1.7,9.17A22.51,22.51,0,0,1,622,91.09a19.86,19.86,0,0,1-6.86,4.68,22.28,22.28,0,0,1-16.73,0,19.61,19.61,0,0,1-6.82-4.68,22.32,22.32,0,0,1-4.56-7.29,25.72,25.72,0,0,1-1.66-9.17s-.4-39.08-.07-44.47H563.1l.34,44.47a46.16,46.16,0,0,0,3.4,17.61,43.92,43.92,0,0,0,9.32,14.24,43.2,43.2,0,0,0,13.8,9.39,41.88,41.88,0,0,0,16.85,3.41,44.52,44.52,0,0,0,16.93-3.21,42.78,42.78,0,0,0,5-2.43V153h21.8V78a30.07,30.07,0,0,0,.09-3.33l-.3-44.47H628.09Z" />
|
||||
<path class="cls-2"
|
||||
d="M173.33,74.46a45.78,45.78,0,0,1-3.41,17.72,44.52,44.52,0,0,1-9.28,14.2,43.43,43.43,0,0,1-13.76,9.44,43.18,43.18,0,0,1-33.78,0A43.48,43.48,0,0,1,90,92.18a45.78,45.78,0,0,1-3.41-17.72A46.5,46.5,0,0,1,90,56.54,44.08,44.08,0,0,1,99.3,42.3a43.31,43.31,0,0,1,13.8-9.39A41.91,41.91,0,0,1,130,29.5a44.48,44.48,0,0,1,16.93,3.21,40.86,40.86,0,0,1,13.76,9.12A43.39,43.39,0,0,1,169.92,56,48.11,48.11,0,0,1,173.33,74.46Z" />
|
||||
<path class="cls-1" d="M171.33,35.56,182.77,47l-57.42,57.25L96.8,75.71l11.47-11.48,17.2,17.2Z" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
11
stylelint.config.js
Normal file
11
stylelint.config.js
Normal file
@@ -0,0 +1,11 @@
|
||||
module.exports = {
|
||||
customSyntax: 'postcss-html',
|
||||
extends: [
|
||||
'stylelint-config-standard',
|
||||
'stylelint-config-recommended-vue',
|
||||
'stylelint-config-prettier',
|
||||
],
|
||||
// add your custom config here
|
||||
// https://stylelint.io/user-guide/configuration
|
||||
rules: {},
|
||||
}
|
||||
21
tsconfig.json
Normal file
21
tsconfig.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES2018",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "Node",
|
||||
"lib": ["ESNext", "ESNext.AsyncIterable", "DOM"],
|
||||
"esModuleInterop": true,
|
||||
"allowJs": true,
|
||||
"sourceMap": true,
|
||||
"strict": true,
|
||||
"noEmit": true,
|
||||
"experimentalDecorators": true,
|
||||
"baseUrl": ".",
|
||||
"paths": {
|
||||
"~/*": ["./*"],
|
||||
"@/*": ["./*"]
|
||||
},
|
||||
"types": ["@nuxt/types", "@types/node"]
|
||||
},
|
||||
"exclude": ["node_modules", ".nuxt", "dist"]
|
||||
}
|
||||
Reference in New Issue
Block a user