Initial commit at start of the course
commit
66b9ffabcd
@ -0,0 +1,3 @@
|
|||||||
|
> 1%
|
||||||
|
last 2 versions
|
||||||
|
not ie <= 8
|
@ -0,0 +1,18 @@
|
|||||||
|
module.exports = {
|
||||||
|
root: true,
|
||||||
|
env: {
|
||||||
|
node: true
|
||||||
|
},
|
||||||
|
extends: [
|
||||||
|
"plugin:vue/essential",
|
||||||
|
"plugin:prettier/recommended",
|
||||||
|
"@vue/prettier"
|
||||||
|
],
|
||||||
|
rules: {
|
||||||
|
"no-console": process.env.NODE_ENV === "production" ? "error" : "off",
|
||||||
|
"no-debugger": process.env.NODE_ENV === "production" ? "error" : "off"
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
parser: "babel-eslint"
|
||||||
|
}
|
||||||
|
};
|
@ -0,0 +1,21 @@
|
|||||||
|
.DS_Store
|
||||||
|
node_modules
|
||||||
|
/dist
|
||||||
|
|
||||||
|
# local env files
|
||||||
|
.env.local
|
||||||
|
.env.*.local
|
||||||
|
|
||||||
|
# Log files
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.idea
|
||||||
|
.vscode
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw*
|
@ -0,0 +1,5 @@
|
|||||||
|
module.exports = {
|
||||||
|
plugins: {
|
||||||
|
autoprefixer: {}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
module.exports = {
|
||||||
|
singleQuote: true,
|
||||||
|
semi: false
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
# real-world-vue
|
||||||
|
|
||||||
|
## Following along?
|
||||||
|
|
||||||
|
We encourage you to follow the course on Vue Mastery, and code along with us. This course has tags representing the start and finish of each level, just in case you get stuck. Here's the start and ending code of each lesson, if you'd like to download them.
|
||||||
|
|
||||||
|
| Lesson | | |
|
||||||
|
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| 2 - Vue CLI | n/a | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson2-cli-finish) |
|
||||||
|
| 3 - Optimizing your IDE | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson3-editor-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson3-editor-finish) |
|
||||||
|
| 4 - Vue Router Basics | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson4-routing-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson4-routing-finish) |
|
||||||
|
| 5 - Dynamic Routes & History Mode | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson5-dynamic-routing-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson5-dynamic-routing-finish) |
|
||||||
|
| 6 - Single File Components | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson6-sfc-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson6-sfc-finish) |
|
||||||
|
| 7 - Global Components | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson7-global-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson7-global-finish) |
|
||||||
|
| 8 - Slots | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson8-slots-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson8-slots-finish) |
|
||||||
|
| 9 - API Calls with Axios | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson9-axios-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson9-axios-finish) |
|
||||||
|
| 11 - Vuex State & Getters | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson11-vuex-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson11-vuex-finish) |
|
||||||
|
| 12 - Vuex Mutations & Actions Part 1 | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson12-mutations%26actions1-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson12-mutations%26actions1-finish) |
|
||||||
|
| 13 - Vuex Mutations & Actions Part 2 | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson13-mutations%26actions2-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson13-mutations%26actions2-finish) |
|
||||||
|
| 14 - Vuex Modules | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson14-modules-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson14-modules-finish) |
|
||||||
|
| 15 - Success & Error Notifications | [Starting Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson15-notifications-start) | [Finished Code](https://github.com/Code-Pop/real-world-vue/releases/tag/lesson15-notifications-finish) |
|
||||||
|
|
||||||
|
## Project setup
|
||||||
|
|
||||||
|
```
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
|
### Compiles and hot-reloads for development
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run serve
|
||||||
|
```
|
||||||
|
|
||||||
|
### Compiles and minifies for production
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run build
|
||||||
|
```
|
||||||
|
|
||||||
|
### Lints and fixes files
|
||||||
|
|
||||||
|
```
|
||||||
|
npm run lint
|
||||||
|
```
|
@ -0,0 +1,3 @@
|
|||||||
|
module.exports = {
|
||||||
|
presets: ["@vue/app"]
|
||||||
|
};
|
@ -0,0 +1,272 @@
|
|||||||
|
{
|
||||||
|
"events": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"title": "Beach Cleanup",
|
||||||
|
"date": "Aug 28 2018",
|
||||||
|
"time": "10:00",
|
||||||
|
"location": "Daytona Beach",
|
||||||
|
"description": "Let's clean up this beach.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "sustainability",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "def456",
|
||||||
|
"name": "Gregg Pollack"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"title": "Park Cleanup",
|
||||||
|
"date": "Nov 12 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "We're going to clean up this park.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "nature",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"title": "Pet Adoption Day",
|
||||||
|
"date": "Dec 2 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "Help animals find new homes.",
|
||||||
|
"organizer": "Gregg Pollack",
|
||||||
|
"category": "animal welfare",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"title": "Disco Party",
|
||||||
|
"date": "Aug 28 2018",
|
||||||
|
"time": "10:00",
|
||||||
|
"location": "Daytona Beach",
|
||||||
|
"description": "Let's clean up this beach.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "sustainability",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "def456",
|
||||||
|
"name": "Gregg Pollack"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"title": "Vue Users Group",
|
||||||
|
"date": "Nov 12 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "We're going to clean up this park.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "nature",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"title": "Orlando Dev Meetup",
|
||||||
|
"date": "Dec 2 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "Help animals find new homes.",
|
||||||
|
"organizer": "Gregg Pollack",
|
||||||
|
"category": "animal welfare",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"title": "Yoga Class",
|
||||||
|
"date": "Aug 28 2018",
|
||||||
|
"time": "10:00",
|
||||||
|
"location": "Daytona Beach",
|
||||||
|
"description": "Let's clean up this beach.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "sustainability",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "def456",
|
||||||
|
"name": "Gregg Pollack"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"title": "Breathing Meditation",
|
||||||
|
"date": "Nov 12 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "We're going to clean up this park.",
|
||||||
|
"organizer": "Adam Jahr",
|
||||||
|
"category": "nature",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"title": "Dancing Class",
|
||||||
|
"date": "Dec 2 2018",
|
||||||
|
"time": "12:00",
|
||||||
|
"location": "132 N Magnolia Street, Orlando, Florida",
|
||||||
|
"description": "Help animals find new homes.",
|
||||||
|
"organizer": "Gregg Pollack",
|
||||||
|
"category": "animal welfare",
|
||||||
|
"attendees": [
|
||||||
|
{
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ghi789",
|
||||||
|
"name": "Beth Swanson"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "jkl101",
|
||||||
|
"name": "Mary Gordon"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 10,
|
||||||
|
"category": "animal welfare",
|
||||||
|
"organizer": {
|
||||||
|
"user": {
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam Jahr"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"title": "Gregg's Event",
|
||||||
|
"description": "We'll do stuff",
|
||||||
|
"location": "Your House",
|
||||||
|
"date": "",
|
||||||
|
"time": "5:00",
|
||||||
|
"attendees": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3183401,
|
||||||
|
"user": {
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam"
|
||||||
|
},
|
||||||
|
"category": "nature",
|
||||||
|
"organizer": {
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam"
|
||||||
|
},
|
||||||
|
"title": "Dirp",
|
||||||
|
"description": "Herpe Dirp",
|
||||||
|
"location": "Anywhere",
|
||||||
|
"date": "2019-02-28T20:34:00.000Z",
|
||||||
|
"time": "3:00",
|
||||||
|
"attendees": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9681796,
|
||||||
|
"user": {
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam"
|
||||||
|
},
|
||||||
|
"category": "food",
|
||||||
|
"organizer": {
|
||||||
|
"id": "abc123",
|
||||||
|
"name": "Adam"
|
||||||
|
},
|
||||||
|
"title": "",
|
||||||
|
"description": "",
|
||||||
|
"location": "",
|
||||||
|
"date": "",
|
||||||
|
"time": "",
|
||||||
|
"attendees": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"name": "real-world-vue",
|
||||||
|
"version": "0.1.0",
|
||||||
|
"private": true,
|
||||||
|
"scripts": {
|
||||||
|
"serve": "vue-cli-service serve",
|
||||||
|
"build": "vue-cli-service build",
|
||||||
|
"lint": "vue-cli-service lint"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"axios": "^0.18.0",
|
||||||
|
"json-server": "^0.14.2",
|
||||||
|
"lodash": "^4.17.11",
|
||||||
|
"vue": "^2.5.17",
|
||||||
|
"vue-router": "^3.0.1",
|
||||||
|
"vuejs-datepicker": "^1.5.3",
|
||||||
|
"vuex": "^3.0.1"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@vue/cli-plugin-babel": "^3.0.0",
|
||||||
|
"@vue/cli-plugin-eslint": "^3.0.0",
|
||||||
|
"@vue/cli-service": "^3.0.0",
|
||||||
|
"@vue/eslint-config-prettier": "^3.0.0",
|
||||||
|
"vue-template-compiler": "^2.5.17"
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
@ -0,0 +1,802 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<defs>
|
||||||
|
<symbol id="activity" viewBox="0 0 24 24">
|
||||||
|
<polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="airplay" viewBox="0 0 24 24">
|
||||||
|
<path d="M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1"></path><polygon points="12 15 17 21 7 21 12 15"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="alert-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="alert-octagon" viewBox="0 0 24 24">
|
||||||
|
<polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="alert-triangle" viewBox="0 0 24 24">
|
||||||
|
<path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12" y2="17"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="align-center" viewBox="0 0 24 24">
|
||||||
|
<line x1="18" y1="10" x2="6" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="18" y1="18" x2="6" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="align-justify" viewBox="0 0 24 24">
|
||||||
|
<line x1="21" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="3" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="align-left" viewBox="0 0 24 24">
|
||||||
|
<line x1="17" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="17" y1="18" x2="3" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="align-right" viewBox="0 0 24 24">
|
||||||
|
<line x1="21" y1="10" x2="7" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="7" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="anchor" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="5" r="3"></circle><line x1="12" y1="22" x2="12" y2="8"></line><path d="M5 12H2a10 10 0 0 0 20 0h-3"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="aperture" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="14.31" y1="8" x2="20.05" y2="17.94"></line><line x1="9.69" y1="8" x2="21.17" y2="8"></line><line x1="7.38" y1="12" x2="13.12" y2="2.06"></line><line x1="9.69" y1="16" x2="3.95" y2="6.06"></line><line x1="14.31" y1="16" x2="2.83" y2="16"></line><line x1="16.62" y1="12" x2="10.88" y2="21.94"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="archive" viewBox="0 0 24 24">
|
||||||
|
<polyline points="21 8 21 21 3 21 3 8"></polyline><rect x="1" y="3" width="22" height="5"></rect><line x1="10" y1="12" x2="14" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-down-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polyline points="8 12 12 16 16 12"></polyline><line x1="12" y1="8" x2="12" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-down-left" viewBox="0 0 24 24">
|
||||||
|
<line x1="17" y1="7" x2="7" y2="17"></line><polyline points="17 17 7 17 7 7"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-down-right" viewBox="0 0 24 24">
|
||||||
|
<line x1="7" y1="7" x2="17" y2="17"></line><polyline points="17 7 17 17 7 17"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-down" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="5" x2="12" y2="19"></line><polyline points="19 12 12 19 5 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-left-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polyline points="12 8 8 12 12 16"></polyline><line x1="16" y1="12" x2="8" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-left" viewBox="0 0 24 24">
|
||||||
|
<line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-right-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polyline points="12 16 16 12 12 8"></polyline><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-right" viewBox="0 0 24 24">
|
||||||
|
<line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-up-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polyline points="16 12 12 8 8 12"></polyline><line x1="12" y1="16" x2="12" y2="8"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-up-left" viewBox="0 0 24 24">
|
||||||
|
<line x1="17" y1="17" x2="7" y2="7"></line><polyline points="7 17 7 7 17 7"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-up-right" viewBox="0 0 24 24">
|
||||||
|
<line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="arrow-up" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="at-sign" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="4"></circle><path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="award" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="8" r="7"></circle><polyline points="8.21 13.89 7 23 12 20 17 23 15.79 13.88"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bar-chart-2" viewBox="0 0 24 24">
|
||||||
|
<line x1="18" y1="20" x2="18" y2="10"></line><line x1="12" y1="20" x2="12" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bar-chart" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="20" x2="12" y2="10"></line><line x1="18" y1="20" x2="18" y2="4"></line><line x1="6" y1="20" x2="6" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="battery-charging" viewBox="0 0 24 24">
|
||||||
|
<path d="M5 18H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.19M15 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-3.19"></path><line x1="23" y1="13" x2="23" y2="11"></line><polyline points="11 6 7 12 13 12 9 18"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="battery" viewBox="0 0 24 24">
|
||||||
|
<rect x="1" y="6" width="18" height="12" rx="2" ry="2"></rect><line x1="23" y1="13" x2="23" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bell-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M8.56 2.9A7 7 0 0 1 19 9v4m-2 4H2a3 3 0 0 0 3-3V9a7 7 0 0 1 .78-3.22M13.73 21a2 2 0 0 1-3.46 0"></path><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bell" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 17H2a3 3 0 0 0 3-3V9a7 7 0 0 1 14 0v5a3 3 0 0 0 3 3zm-8.27 4a2 2 0 0 1-3.46 0"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bluetooth" viewBox="0 0 24 24">
|
||||||
|
<polyline points="6.5 6.5 17.5 17.5 12 23 12 1 17.5 6.5 6.5 17.5"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bold" viewBox="0 0 24 24">
|
||||||
|
<path d="M6 4h8a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path><path d="M6 12h9a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="book-open" viewBox="0 0 24 24">
|
||||||
|
<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="book" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="bookmark" viewBox="0 0 24 24">
|
||||||
|
<path d="M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="box" viewBox="0 0 24 24">
|
||||||
|
<path d="M12.89 1.45l8 4A2 2 0 0 1 22 7.24v9.53a2 2 0 0 1-1.11 1.79l-8 4a2 2 0 0 1-1.79 0l-8-4a2 2 0 0 1-1.1-1.8V7.24a2 2 0 0 1 1.11-1.79l8-4a2 2 0 0 1 1.78 0z"></path><polyline points="2.32 6.16 12 11 21.68 6.16"></polyline><line x1="12" y1="22.76" x2="12" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="briefcase" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="7" width="20" height="14" rx="2" ry="2"></rect><path d="M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="calendar" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="camera-off" viewBox="0 0 24 24">
|
||||||
|
<line x1="1" y1="1" x2="23" y2="23"></line><path d="M21 21H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3m3-3h6l2 3h4a2 2 0 0 1 2 2v9.34m-7.72-2.06a4 4 0 1 1-5.56-5.56"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="camera" viewBox="0 0 24 24">
|
||||||
|
<path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"></path><circle cx="12" cy="13" r="4"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cast" viewBox="0 0 24 24">
|
||||||
|
<path d="M2 16.1A5 5 0 0 1 5.9 20M2 12.05A9 9 0 0 1 9.95 20M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6"></path><line x1="2" y1="20" x2="2" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="check-circle" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="check-square" viewBox="0 0 24 24">
|
||||||
|
<polyline points="9 11 12 14 22 4"></polyline><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="check" viewBox="0 0 24 24">
|
||||||
|
<polyline points="20 6 9 17 4 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevron-down" viewBox="0 0 24 24">
|
||||||
|
<polyline points="6 9 12 15 18 9"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevron-left" viewBox="0 0 24 24">
|
||||||
|
<polyline points="15 18 9 12 15 6"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevron-right" viewBox="0 0 24 24">
|
||||||
|
<polyline points="9 18 15 12 9 6"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevron-up" viewBox="0 0 24 24">
|
||||||
|
<polyline points="18 15 12 9 6 15"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevrons-down" viewBox="0 0 24 24">
|
||||||
|
<polyline points="7 13 12 18 17 13"></polyline><polyline points="7 6 12 11 17 6"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevrons-left" viewBox="0 0 24 24">
|
||||||
|
<polyline points="11 17 6 12 11 7"></polyline><polyline points="18 17 13 12 18 7"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevrons-right" viewBox="0 0 24 24">
|
||||||
|
<polyline points="13 17 18 12 13 7"></polyline><polyline points="6 17 11 12 6 7"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chevrons-up" viewBox="0 0 24 24">
|
||||||
|
<polyline points="17 11 12 6 7 11"></polyline><polyline points="17 18 12 13 7 18"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="chrome" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" y1="8" x2="12" y2="8"></line><line x1="3.95" y1="6.06" x2="8.54" y2="14"></line><line x1="10.88" y1="21.94" x2="15.46" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="clipboard" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="clock" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud-drizzle" viewBox="0 0 24 24">
|
||||||
|
<line x1="8" y1="19" x2="8" y2="21"></line><line x1="8" y1="13" x2="8" y2="15"></line><line x1="16" y1="19" x2="16" y2="21"></line><line x1="16" y1="13" x2="16" y2="15"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="12" y1="15" x2="12" y2="17"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud-lightning" viewBox="0 0 24 24">
|
||||||
|
<path d="M19 16.9A5 5 0 0 0 18 7h-1.26a8 8 0 1 0-11.62 9"></path><polyline points="13 11 9 17 15 17 11 23"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M22.61 16.95A5 5 0 0 0 18 10h-1.26a8 8 0 0 0-7.05-6M5 5a8 8 0 0 0 4 15h9a5 5 0 0 0 1.7-.3"></path><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud-rain" viewBox="0 0 24 24">
|
||||||
|
<line x1="16" y1="13" x2="16" y2="21"></line><line x1="8" y1="13" x2="8" y2="21"></line><line x1="12" y1="15" x2="12" y2="23"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud-snow" viewBox="0 0 24 24">
|
||||||
|
<path d="M20 17.58A5 5 0 0 0 18 8h-1.26A8 8 0 1 0 4 16.25"></path><line x1="8" y1="16" x2="8" y2="16"></line><line x1="8" y1="20" x2="8" y2="20"></line><line x1="12" y1="18" x2="12" y2="18"></line><line x1="12" y1="22" x2="12" y2="22"></line><line x1="16" y1="16" x2="16" y2="16"></line><line x1="16" y1="20" x2="16" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cloud" viewBox="0 0 24 24">
|
||||||
|
<path d="M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="code" viewBox="0 0 24 24">
|
||||||
|
<polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="codepen" viewBox="0 0 24 24">
|
||||||
|
<polygon points="12 2 22 8.5 22 15.5 12 22 2 15.5 2 8.5 12 2"></polygon><line x1="12" y1="22" x2="12" y2="15.5"></line><polyline points="22 8.5 12 15.5 2 8.5"></polyline><polyline points="2 15.5 12 8.5 22 15.5"></polyline><line x1="12" y1="2" x2="12" y2="8.5"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="command" viewBox="0 0 24 24">
|
||||||
|
<path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="compass" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="copy" viewBox="0 0 24 24">
|
||||||
|
<rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-down-left" viewBox="0 0 24 24">
|
||||||
|
<polyline points="9 10 4 15 9 20"></polyline><path d="M20 4v7a4 4 0 0 1-4 4H4"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-down-right" viewBox="0 0 24 24">
|
||||||
|
<polyline points="15 10 20 15 15 20"></polyline><path d="M4 4v7a4 4 0 0 0 4 4h12"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-left-down" viewBox="0 0 24 24">
|
||||||
|
<polyline points="14 15 9 20 4 15"></polyline><path d="M20 4h-7a4 4 0 0 0-4 4v12"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-left-up" viewBox="0 0 24 24">
|
||||||
|
<polyline points="14 9 9 4 4 9"></polyline><path d="M20 20h-7a4 4 0 0 1-4-4V4"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-right-down" viewBox="0 0 24 24">
|
||||||
|
<polyline points="10 15 15 20 20 15"></polyline><path d="M4 4h7a4 4 0 0 1 4 4v12"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-right-up" viewBox="0 0 24 24">
|
||||||
|
<polyline points="10 9 15 4 20 9"></polyline><path d="M4 20h7a4 4 0 0 0 4-4V4"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-up-left" viewBox="0 0 24 24">
|
||||||
|
<polyline points="9 14 4 9 9 4"></polyline><path d="M20 20v-7a4 4 0 0 0-4-4H4"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="corner-up-right" viewBox="0 0 24 24">
|
||||||
|
<polyline points="15 14 20 9 15 4"></polyline><path d="M4 20v-7a4 4 0 0 1 4-4h12"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="cpu" viewBox="0 0 24 24">
|
||||||
|
<rect x="4" y="4" width="16" height="16" rx="2" ry="2"></rect><rect x="9" y="9" width="6" height="6"></rect><line x1="9" y1="1" x2="9" y2="4"></line><line x1="15" y1="1" x2="15" y2="4"></line><line x1="9" y1="20" x2="9" y2="23"></line><line x1="15" y1="20" x2="15" y2="23"></line><line x1="20" y1="9" x2="23" y2="9"></line><line x1="20" y1="14" x2="23" y2="14"></line><line x1="1" y1="9" x2="4" y2="9"></line><line x1="1" y1="14" x2="4" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="credit-card" viewBox="0 0 24 24">
|
||||||
|
<rect x="1" y="4" width="22" height="16" rx="2" ry="2"></rect><line x1="1" y1="10" x2="23" y2="10"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="crop" viewBox="0 0 24 24">
|
||||||
|
<path d="M6.13 1L6 16a2 2 0 0 0 2 2h15"></path><path d="M1 6.13L16 6a2 2 0 0 1 2 2v15"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="crosshair" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="22" y1="12" x2="18" y2="12"></line><line x1="6" y1="12" x2="2" y2="12"></line><line x1="12" y1="6" x2="12" y2="2"></line><line x1="12" y1="22" x2="12" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="database" viewBox="0 0 24 24">
|
||||||
|
<ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"></path><path d="M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="delete" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 4H8l-7 8 7 8h13a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"></path><line x1="18" y1="9" x2="12" y2="15"></line><line x1="12" y1="9" x2="18" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="disc" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="3"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="dollar-sign" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="download-cloud" viewBox="0 0 24 24">
|
||||||
|
<polyline points="8 17 12 21 16 17"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="download" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="droplet" viewBox="0 0 24 24">
|
||||||
|
<path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="edit-2" viewBox="0 0 24 24">
|
||||||
|
<polygon points="16 3 21 8 8 21 3 21 3 16 16 3"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="edit-3" viewBox="0 0 24 24">
|
||||||
|
<polygon points="14 2 18 6 7 17 3 17 3 13 14 2"></polygon><line x1="3" y1="22" x2="21" y2="22"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="edit" viewBox="0 0 24 24">
|
||||||
|
<path d="M20 14.66V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5.34"></path><polygon points="18 2 22 6 12 16 8 16 8 12 18 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="external-link" viewBox="0 0 24 24">
|
||||||
|
<path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="eye-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"></path><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="eye" viewBox="0 0 24 24">
|
||||||
|
<path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="facebook" viewBox="0 0 24 24">
|
||||||
|
<path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="fast-forward" viewBox="0 0 24 24">
|
||||||
|
<polygon points="13 19 22 12 13 5 13 19"></polygon><polygon points="2 19 11 12 2 5 2 19"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="feather" viewBox="0 0 24 24">
|
||||||
|
<path d="M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z"></path><line x1="16" y1="8" x2="2" y2="22"></line><line x1="17" y1="15" x2="9" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="file-minus" viewBox="0 0 24 24">
|
||||||
|
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="9" y1="15" x2="15" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="file-plus" viewBox="0 0 24 24">
|
||||||
|
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="12" y1="18" x2="12" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="file-text" viewBox="0 0 24 24">
|
||||||
|
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="file" viewBox="0 0 24 24">
|
||||||
|
<path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="film" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="2" width="20" height="20" rx="2.18" ry="2.18"></rect><line x1="7" y1="2" x2="7" y2="22"></line><line x1="17" y1="2" x2="17" y2="22"></line><line x1="2" y1="12" x2="22" y2="12"></line><line x1="2" y1="7" x2="7" y2="7"></line><line x1="2" y1="17" x2="7" y2="17"></line><line x1="17" y1="17" x2="22" y2="17"></line><line x1="17" y1="7" x2="22" y2="7"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="filter" viewBox="0 0 24 24">
|
||||||
|
<polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="flag" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z"></path><line x1="4" y1="22" x2="4" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="folder-minus" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="9" y1="14" x2="15" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="folder-plus" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="12" y1="11" x2="12" y2="17"></line><line x1="9" y1="14" x2="15" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="folder" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="gift" viewBox="0 0 24 24">
|
||||||
|
<polyline points="20 12 20 22 4 22 4 12"></polyline><rect x="2" y="7" width="20" height="5"></rect><line x1="12" y1="22" x2="12" y2="7"></line><path d="M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z"></path><path d="M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="git-branch" viewBox="0 0 24 24">
|
||||||
|
<line x1="6" y1="3" x2="6" y2="15"></line><circle cx="18" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><path d="M18 9a9 9 0 0 1-9 9"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="git-commit" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="4"></circle><line x1="1.05" y1="12" x2="7" y2="12"></line><line x1="17.01" y1="12" x2="22.96" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="git-merge" viewBox="0 0 24 24">
|
||||||
|
<circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M6 21V9a9 9 0 0 0 9 9"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="git-pull-request" viewBox="0 0 24 24">
|
||||||
|
<circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" y1="9" x2="6" y2="21"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="github" viewBox="0 0 24 24">
|
||||||
|
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="gitlab" viewBox="0 0 24 24">
|
||||||
|
<path d="M22.65 14.39L12 22.13 1.35 14.39a.84.84 0 0 1-.3-.94l1.22-3.78 2.44-7.51A.42.42 0 0 1 4.82 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.49h8.1l2.44-7.51A.42.42 0 0 1 18.6 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.51L23 13.45a.84.84 0 0 1-.35.94z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="globe" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="2" y1="12" x2="22" y2="12"></line><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="grid" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="7" height="7"></rect><rect x="14" y="3" width="7" height="7"></rect><rect x="14" y="14" width="7" height="7"></rect><rect x="3" y="14" width="7" height="7"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="hard-drive" viewBox="0 0 24 24">
|
||||||
|
<line x1="22" y1="12" x2="2" y2="12"></line><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path><line x1="6" y1="16" x2="6" y2="16"></line><line x1="10" y1="16" x2="10" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="hash" viewBox="0 0 24 24">
|
||||||
|
<line x1="4" y1="9" x2="20" y2="9"></line><line x1="4" y1="15" x2="20" y2="15"></line><line x1="10" y1="3" x2="8" y2="21"></line><line x1="16" y1="3" x2="14" y2="21"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="headphones" viewBox="0 0 24 24">
|
||||||
|
<path d="M3 18v-6a9 9 0 0 1 18 0v6"></path><path d="M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="heart" viewBox="0 0 24 24">
|
||||||
|
<path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="help-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12" y2="17"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="home" viewBox="0 0 24 24">
|
||||||
|
<path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="image" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><polyline points="21 15 16 10 5 21"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="inbox" viewBox="0 0 24 24">
|
||||||
|
<polyline points="22 12 16 12 14 15 10 15 8 12 2 12"></polyline><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="info" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12" y2="8"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="instagram" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect><path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"></path><line x1="17.5" y1="6.5" x2="17.5" y2="6.5"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="italic" viewBox="0 0 24 24">
|
||||||
|
<line x1="19" y1="4" x2="10" y2="4"></line><line x1="14" y1="20" x2="5" y2="20"></line><line x1="15" y1="4" x2="9" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="layers" viewBox="0 0 24 24">
|
||||||
|
<polygon points="12 2 2 7 12 12 22 7 12 2"></polygon><polyline points="2 17 12 22 22 17"></polyline><polyline points="2 12 12 17 22 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="layout" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="life-buoy" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="4.93" y1="4.93" x2="9.17" y2="9.17"></line><line x1="14.83" y1="14.83" x2="19.07" y2="19.07"></line><line x1="14.83" y1="9.17" x2="19.07" y2="4.93"></line><line x1="14.83" y1="9.17" x2="18.36" y2="5.64"></line><line x1="4.93" y1="19.07" x2="9.17" y2="14.83"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="link-2" viewBox="0 0 24 24">
|
||||||
|
<path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="link" viewBox="0 0 24 24">
|
||||||
|
<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="linkedin" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect x="2" y="9" width="4" height="12"></rect><circle cx="4" cy="4" r="2"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="list" viewBox="0 0 24 24">
|
||||||
|
<line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3" y2="6"></line><line x1="3" y1="12" x2="3" y2="12"></line><line x1="3" y1="18" x2="3" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="loader" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="2" x2="12" y2="6"></line><line x1="12" y1="18" x2="12" y2="22"></line><line x1="4.93" y1="4.93" x2="7.76" y2="7.76"></line><line x1="16.24" y1="16.24" x2="19.07" y2="19.07"></line><line x1="2" y1="12" x2="6" y2="12"></line><line x1="18" y1="12" x2="22" y2="12"></line><line x1="4.93" y1="19.07" x2="7.76" y2="16.24"></line><line x1="16.24" y1="7.76" x2="19.07" y2="4.93"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="lock" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="log-in" viewBox="0 0 24 24">
|
||||||
|
<path d="M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4"></path><polyline points="10 17 15 12 10 7"></polyline><line x1="15" y1="12" x2="3" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="log-out" viewBox="0 0 24 24">
|
||||||
|
<path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" y1="12" x2="9" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="mail" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="map-pin" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="map" viewBox="0 0 24 24">
|
||||||
|
<polygon points="1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6"></polygon><line x1="8" y1="2" x2="8" y2="18"></line><line x1="16" y1="6" x2="16" y2="22"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="maximize-2" viewBox="0 0 24 24">
|
||||||
|
<polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" y1="3" x2="14" y2="10"></line><line x1="3" y1="21" x2="10" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="maximize" viewBox="0 0 24 24">
|
||||||
|
<path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="menu" viewBox="0 0 24 24">
|
||||||
|
<line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="message-circle" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="message-square" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="mic-off" viewBox="0 0 24 24">
|
||||||
|
<line x1="1" y1="1" x2="23" y2="23"></line><path d="M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6"></path><path d="M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="mic" viewBox="0 0 24 24">
|
||||||
|
<path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="minimize-2" viewBox="0 0 24 24">
|
||||||
|
<polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" y1="10" x2="21" y2="3"></line><line x1="3" y1="21" x2="10" y2="14"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="minimize" viewBox="0 0 24 24">
|
||||||
|
<path d="M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="minus-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="minus-square" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="minus" viewBox="0 0 24 24">
|
||||||
|
<line x1="5" y1="12" x2="19" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="monitor" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="3" width="20" height="14" rx="2" ry="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="moon" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="more-horizontal" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="more-vertical" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="move" viewBox="0 0 24 24">
|
||||||
|
<polyline points="5 9 2 12 5 15"></polyline><polyline points="9 5 12 2 15 5"></polyline><polyline points="15 19 12 22 9 19"></polyline><polyline points="19 9 22 12 19 15"></polyline><line x1="2" y1="12" x2="22" y2="12"></line><line x1="12" y1="2" x2="12" y2="22"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="music" viewBox="0 0 24 24">
|
||||||
|
<path d="M9 17H5a2 2 0 0 0-2 2 2 2 0 0 0 2 2h2a2 2 0 0 0 2-2zm12-2h-4a2 2 0 0 0-2 2 2 2 0 0 0 2 2h2a2 2 0 0 0 2-2z"></path><polyline points="9 17 9 5 21 3 21 15"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="navigation-2" viewBox="0 0 24 24">
|
||||||
|
<polygon points="12 2 19 21 12 17 5 21 12 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="navigation" viewBox="0 0 24 24">
|
||||||
|
<polygon points="3 11 22 2 13 21 11 13 3 11"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="octagon" viewBox="0 0 24 24">
|
||||||
|
<polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="package" viewBox="0 0 24 24">
|
||||||
|
<path d="M12.89 1.45l8 4A2 2 0 0 1 22 7.24v9.53a2 2 0 0 1-1.11 1.79l-8 4a2 2 0 0 1-1.79 0l-8-4a2 2 0 0 1-1.1-1.8V7.24a2 2 0 0 1 1.11-1.79l8-4a2 2 0 0 1 1.78 0z"></path><polyline points="2.32 6.16 12 11 21.68 6.16"></polyline><line x1="12" y1="22.76" x2="12" y2="11"></line><line x1="7" y1="3.5" x2="17" y2="8.5"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="paperclip" viewBox="0 0 24 24">
|
||||||
|
<path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="pause-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="10" y1="15" x2="10" y2="9"></line><line x1="14" y1="15" x2="14" y2="9"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="pause" viewBox="0 0 24 24">
|
||||||
|
<rect x="6" y="4" width="4" height="16"></rect><rect x="14" y="4" width="4" height="16"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="percent" viewBox="0 0 24 24">
|
||||||
|
<line x1="19" y1="5" x2="5" y2="19"></line><circle cx="6.5" cy="6.5" r="2.5"></circle><circle cx="17.5" cy="17.5" r="2.5"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-call" viewBox="0 0 24 24">
|
||||||
|
<path d="M15.05 5A5 5 0 0 1 19 8.95M15.05 1A9 9 0 0 1 23 8.94m-1 7.98v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-forwarded" viewBox="0 0 24 24">
|
||||||
|
<polyline points="19 1 23 5 19 9"></polyline><line x1="15" y1="5" x2="23" y2="5"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-incoming" viewBox="0 0 24 24">
|
||||||
|
<polyline points="16 2 16 8 22 8"></polyline><line x1="23" y1="1" x2="16" y2="8"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-missed" viewBox="0 0 24 24">
|
||||||
|
<line x1="23" y1="1" x2="17" y2="7"></line><line x1="17" y1="1" x2="23" y2="7"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67m-2.67-3.34a19.79 19.79 0 0 1-3.07-8.63A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91"></path><line x1="23" y1="1" x2="1" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone-outgoing" viewBox="0 0 24 24">
|
||||||
|
<polyline points="23 7 23 1 17 1"></polyline><line x1="16" y1="8" x2="23" y2="1"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="phone" viewBox="0 0 24 24">
|
||||||
|
<path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="pie-chart" viewBox="0 0 24 24">
|
||||||
|
<path d="M21.21 15.89A10 10 0 1 1 8 2.83"></path><path d="M22 12A10 10 0 0 0 12 2v10z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="play-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><polygon points="10 8 16 12 10 16 10 8"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="play" viewBox="0 0 24 24">
|
||||||
|
<polygon points="5 3 19 12 5 21 5 3"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="plus-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="plus-square" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="plus" viewBox="0 0 24 24">
|
||||||
|
<line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="pocket" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 3h16a2 2 0 0 1 2 2v6a10 10 0 0 1-10 10A10 10 0 0 1 2 11V5a2 2 0 0 1 2-2z"></path><polyline points="8 10 12 14 16 10"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="power" viewBox="0 0 24 24">
|
||||||
|
<path d="M18.36 6.64a9 9 0 1 1-12.73 0"></path><line x1="12" y1="2" x2="12" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="printer" viewBox="0 0 24 24">
|
||||||
|
<polyline points="6 9 6 2 18 2 18 9"></polyline><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"></path><rect x="6" y="14" width="12" height="8"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="radio" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="2"></circle><path d="M16.24 7.76a6 6 0 0 1 0 8.49m-8.48-.01a6 6 0 0 1 0-8.49m11.31-2.82a10 10 0 0 1 0 14.14m-14.14 0a10 10 0 0 1 0-14.14"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="refresh-ccw" viewBox="0 0 24 24">
|
||||||
|
<polyline points="1 4 1 10 7 10"></polyline><polyline points="23 20 23 14 17 14"></polyline><path d="M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="refresh-cw" viewBox="0 0 24 24">
|
||||||
|
<polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="repeat" viewBox="0 0 24 24">
|
||||||
|
<polyline points="17 1 21 5 17 9"></polyline><path d="M3 11V9a4 4 0 0 1 4-4h14"></path><polyline points="7 23 3 19 7 15"></polyline><path d="M21 13v2a4 4 0 0 1-4 4H3"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="rewind" viewBox="0 0 24 24">
|
||||||
|
<polygon points="11 19 2 12 11 5 11 19"></polygon><polygon points="22 19 13 12 22 5 22 19"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="rotate-ccw" viewBox="0 0 24 24">
|
||||||
|
<polyline points="1 4 1 10 7 10"></polyline><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="rotate-cw" viewBox="0 0 24 24">
|
||||||
|
<polyline points="23 4 23 10 17 10"></polyline><path d="M20.49 15a9 9 0 1 1-2.12-9.36L23 10"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="rss" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="save" viewBox="0 0 24 24">
|
||||||
|
<path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="scissors" viewBox="0 0 24 24">
|
||||||
|
<circle cx="6" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><line x1="20" y1="4" x2="8.12" y2="15.88"></line><line x1="14.47" y1="14.48" x2="20" y2="20"></line><line x1="8.12" y1="8.12" x2="12" y2="12"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="search" viewBox="0 0 24 24">
|
||||||
|
<circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="send" viewBox="0 0 24 24">
|
||||||
|
<line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="server" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6" y2="6"></line><line x1="6" y1="18" x2="6" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="settings" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="share-2" viewBox="0 0 24 24">
|
||||||
|
<circle cx="18" cy="5" r="3"></circle><circle cx="6" cy="12" r="3"></circle><circle cx="18" cy="19" r="3"></circle><line x1="8.59" y1="13.51" x2="15.42" y2="17.49"></line><line x1="15.41" y1="6.51" x2="8.59" y2="10.49"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="share" viewBox="0 0 24 24">
|
||||||
|
<path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" y1="2" x2="12" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="shield-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M19.69 14a6.9 6.9 0 0 0 .31-2V5l-8-3-3.16 1.18"></path><path d="M4.73 4.73L4 5v7c0 6 8 10 8 10a20.29 20.29 0 0 0 5.62-4.38"></path><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="shield" viewBox="0 0 24 24">
|
||||||
|
<path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="shopping-bag" viewBox="0 0 24 24">
|
||||||
|
<path d="M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z"></path><line x1="3" y1="6" x2="21" y2="6"></line><path d="M16 10a4 4 0 0 1-8 0"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="shopping-cart" viewBox="0 0 24 24">
|
||||||
|
<circle cx="9" cy="21" r="1"></circle><circle cx="20" cy="21" r="1"></circle><path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="shuffle" viewBox="0 0 24 24">
|
||||||
|
<polyline points="16 3 21 3 21 8"></polyline><line x1="4" y1="20" x2="21" y2="3"></line><polyline points="21 16 21 21 16 21"></polyline><line x1="15" y1="15" x2="21" y2="21"></line><line x1="4" y1="4" x2="9" y2="9"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="sidebar" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="3" x2="9" y2="21"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="skip-back" viewBox="0 0 24 24">
|
||||||
|
<polygon points="19 20 9 12 19 4 19 20"></polygon><line x1="5" y1="19" x2="5" y2="5"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="skip-forward" viewBox="0 0 24 24">
|
||||||
|
<polygon points="5 4 15 12 5 20 5 4"></polygon><line x1="19" y1="5" x2="19" y2="19"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="slack" viewBox="0 0 24 24">
|
||||||
|
<path d="M22.08 9C19.81 1.41 16.54-.35 9 1.92S-.35 7.46 1.92 15 7.46 24.35 15 22.08 24.35 16.54 22.08 9z"></path><line x1="12.57" y1="5.99" x2="16.15" y2="16.39"></line><line x1="7.85" y1="7.61" x2="11.43" y2="18.01"></line><line x1="16.39" y1="7.85" x2="5.99" y2="11.43"></line><line x1="18.01" y1="12.57" x2="7.61" y2="16.15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="slash" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="4.93" y1="4.93" x2="19.07" y2="19.07"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="sliders" viewBox="0 0 24 24">
|
||||||
|
<line x1="4" y1="21" x2="4" y2="14"></line><line x1="4" y1="10" x2="4" y2="3"></line><line x1="12" y1="21" x2="12" y2="12"></line><line x1="12" y1="8" x2="12" y2="3"></line><line x1="20" y1="21" x2="20" y2="16"></line><line x1="20" y1="12" x2="20" y2="3"></line><line x1="1" y1="14" x2="7" y2="14"></line><line x1="9" y1="8" x2="15" y2="8"></line><line x1="17" y1="16" x2="23" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="smartphone" viewBox="0 0 24 24">
|
||||||
|
<rect x="5" y="2" width="14" height="20" rx="2" ry="2"></rect><line x1="12" y1="18" x2="12" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="speaker" viewBox="0 0 24 24">
|
||||||
|
<rect x="4" y="2" width="16" height="20" rx="2" ry="2"></rect><circle cx="12" cy="14" r="4"></circle><line x1="12" y1="6" x2="12" y2="6"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="square" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="star" viewBox="0 0 24 24">
|
||||||
|
<polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="stop-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><rect x="9" y="9" width="6" height="6"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="sun" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="sunrise" viewBox="0 0 24 24">
|
||||||
|
<path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="2" x2="12" y2="9"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="8 6 12 2 16 6"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="sunset" viewBox="0 0 24 24">
|
||||||
|
<path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="9" x2="12" y2="2"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="16 5 12 9 8 5"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="tablet" viewBox="0 0 24 24">
|
||||||
|
<rect x="4" y="2" width="16" height="20" rx="2" ry="2" transform="rotate(180 12 12)"></rect><line x1="12" y1="18" x2="12" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="tag" viewBox="0 0 24 24">
|
||||||
|
<path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path><line x1="7" y1="7" x2="7" y2="7"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="target" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="6"></circle><circle cx="12" cy="12" r="2"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="terminal" viewBox="0 0 24 24">
|
||||||
|
<polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="thermometer" viewBox="0 0 24 24">
|
||||||
|
<path d="M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="thumbs-down" viewBox="0 0 24 24">
|
||||||
|
<path d="M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="thumbs-up" viewBox="0 0 24 24">
|
||||||
|
<path d="M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="toggle-left" viewBox="0 0 24 24">
|
||||||
|
<rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="8" cy="12" r="3"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="toggle-right" viewBox="0 0 24 24">
|
||||||
|
<rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="16" cy="12" r="3"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="trash-2" viewBox="0 0 24 24">
|
||||||
|
<polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path><line x1="10" y1="11" x2="10" y2="17"></line><line x1="14" y1="11" x2="14" y2="17"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="trash" viewBox="0 0 24 24">
|
||||||
|
<polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="trending-down" viewBox="0 0 24 24">
|
||||||
|
<polyline points="23 18 13.5 8.5 8.5 13.5 1 6"></polyline><polyline points="17 18 23 18 23 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="trending-up" viewBox="0 0 24 24">
|
||||||
|
<polyline points="23 6 13.5 15.5 8.5 10.5 1 18"></polyline><polyline points="17 6 23 6 23 12"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="triangle" viewBox="0 0 24 24">
|
||||||
|
<path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="truck" viewBox="0 0 24 24">
|
||||||
|
<rect x="1" y="3" width="15" height="13"></rect><polygon points="16 8 20 8 23 11 23 16 16 16 16 8"></polygon><circle cx="5.5" cy="18.5" r="2.5"></circle><circle cx="18.5" cy="18.5" r="2.5"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="tv" viewBox="0 0 24 24">
|
||||||
|
<rect x="2" y="7" width="20" height="15" rx="2" ry="2"></rect><polyline points="17 2 12 7 7 2"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="twitter" viewBox="0 0 24 24">
|
||||||
|
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="type" viewBox="0 0 24 24">
|
||||||
|
<polyline points="4 7 4 4 20 4 20 7"></polyline><line x1="9" y1="20" x2="15" y2="20"></line><line x1="12" y1="4" x2="12" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="umbrella" viewBox="0 0 24 24">
|
||||||
|
<path d="M23 12a11.05 11.05 0 0 0-22 0zm-5 7a3 3 0 0 1-6 0v-7"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="underline" viewBox="0 0 24 24">
|
||||||
|
<path d="M6 3v7a6 6 0 0 0 6 6 6 6 0 0 0 6-6V3"></path><line x1="4" y1="21" x2="20" y2="21"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="unlock" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 9.9-1"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="upload-cloud" viewBox="0 0 24 24">
|
||||||
|
<polyline points="16 16 12 12 8 16"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3"></path><polyline points="16 16 12 12 8 16"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="upload" viewBox="0 0 24 24">
|
||||||
|
<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="17 8 12 3 7 8"></polyline><line x1="12" y1="3" x2="12" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="user-check" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><polyline points="17 11 19 13 23 9"></polyline>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="user-minus" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="23" y1="11" x2="17" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="user-plus" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="20" y1="8" x2="20" y2="14"></line><line x1="23" y1="11" x2="17" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="user-x" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="18" y1="8" x2="23" y2="13"></line><line x1="23" y1="8" x2="18" y2="13"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="user" viewBox="0 0 24 24">
|
||||||
|
<path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="users" viewBox="0 0 24 24">
|
||||||
|
<path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="video-off" viewBox="0 0 24 24">
|
||||||
|
<path d="M16 16v1a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h2m5.66 0H14a2 2 0 0 1 2 2v3.34l1 1L23 7v10"></path><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="video" viewBox="0 0 24 24">
|
||||||
|
<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="voicemail" viewBox="0 0 24 24">
|
||||||
|
<circle cx="5.5" cy="11.5" r="4.5"></circle><circle cx="18.5" cy="11.5" r="4.5"></circle><line x1="5.5" y1="16" x2="18.5" y2="16"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="volume-1" viewBox="0 0 24 24">
|
||||||
|
<polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M15.54 8.46a5 5 0 0 1 0 7.07"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="volume-2" viewBox="0 0 24 24">
|
||||||
|
<polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="volume-x" viewBox="0 0 24 24">
|
||||||
|
<polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><line x1="23" y1="9" x2="17" y2="15"></line><line x1="17" y1="9" x2="23" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="volume" viewBox="0 0 24 24">
|
||||||
|
<polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="watch" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="7"></circle><polyline points="12 9 12 12 13.5 13.5"></polyline><path d="M16.51 17.35l-.35 3.83a2 2 0 0 1-2 1.82H9.83a2 2 0 0 1-2-1.82l-.35-3.83m.01-10.7l.35-3.83A2 2 0 0 1 9.83 1h4.35a2 2 0 0 1 2 1.82l.35 3.83"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="wifi-off" viewBox="0 0 24 24">
|
||||||
|
<line x1="1" y1="1" x2="23" y2="23"></line><path d="M16.72 11.06A10.94 10.94 0 0 1 19 12.55"></path><path d="M5 12.55a10.94 10.94 0 0 1 5.17-2.39"></path><path d="M10.71 5.05A16 16 0 0 1 22.58 9"></path><path d="M1.42 9a15.91 15.91 0 0 1 4.7-2.88"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="wifi" viewBox="0 0 24 24">
|
||||||
|
<path d="M5 12.55a11 11 0 0 1 14.08 0"></path><path d="M1.42 9a16 16 0 0 1 21.16 0"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12" y2="20"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="wind" viewBox="0 0 24 24">
|
||||||
|
<path d="M9.59 4.59A2 2 0 1 1 11 8H2m10.59 11.41A2 2 0 1 0 14 16H2m15.73-8.27A2.5 2.5 0 1 1 19.5 12H2"></path>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="x-circle" viewBox="0 0 24 24">
|
||||||
|
<circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="x-square" viewBox="0 0 24 24">
|
||||||
|
<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="9" x2="15" y2="15"></line><line x1="15" y1="9" x2="9" y2="15"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="x" viewBox="0 0 24 24">
|
||||||
|
<line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="youtube" viewBox="0 0 24 24">
|
||||||
|
<path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z"></path><polygon points="9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="zap-off" viewBox="0 0 24 24">
|
||||||
|
<polyline points="12.41 6.75 13 2 10.57 4.92"></polyline><polyline points="18.57 12.91 21 10 15.66 10"></polyline><polyline points="8 8 3 14 12 14 11 22 16 16"></polyline><line x1="1" y1="1" x2="23" y2="23"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="zap" viewBox="0 0 24 24">
|
||||||
|
<polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="zoom-in" viewBox="0 0 24 24">
|
||||||
|
<circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="zoom-out" viewBox="0 0 24 24">
|
||||||
|
<circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="8" y1="11" x2="14" y2="11"></line>
|
||||||
|
</symbol>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 55 KiB |
@ -0,0 +1,17 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
|
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
||||||
|
<title>real-world-vue</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<noscript>
|
||||||
|
<strong>We're sorry but real-world-vue doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
||||||
|
</noscript>
|
||||||
|
<div id="app"></div>
|
||||||
|
<!-- built files will be auto injected -->
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,245 @@
|
|||||||
|
<template>
|
||||||
|
<div id="app">
|
||||||
|
<NavBar/>
|
||||||
|
<NotificationContainer/>
|
||||||
|
<router-view :key="$route.fullPath" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import NavBar from '@/components/NavBar.vue'
|
||||||
|
import NotificationContainer from '@/components/NotificationContainer.vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
NavBar,
|
||||||
|
NotificationContainer
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
html {
|
||||||
|
-webkit-text-size-adjust: 100%;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
font-family: 'Open Sans', sans-serif;
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
#app {
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 500px;
|
||||||
|
padding: 0 20px 20px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
hr {
|
||||||
|
box-sizing: content-box;
|
||||||
|
height: 0;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
color: #39b982;
|
||||||
|
font-weight: 600;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
border-style: none;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6 {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: 'Montserrat', sans-serif;
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 50px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
font-size: 38px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
font-size: 28px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
h4 {
|
||||||
|
font-size: 21px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
h5 {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
h6 {
|
||||||
|
font-size: 15px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
b,
|
||||||
|
strong {
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
small {
|
||||||
|
font-size: 80%;
|
||||||
|
}
|
||||||
|
.eyebrow {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
.-text-primary {
|
||||||
|
color: #39b982;
|
||||||
|
}
|
||||||
|
.-text-base {
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
.-text-error {
|
||||||
|
color: tomato;
|
||||||
|
}
|
||||||
|
.-text-gray {
|
||||||
|
color: rgba(0, 0, 0, 0.5);
|
||||||
|
}
|
||||||
|
.-shadow {
|
||||||
|
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.13);
|
||||||
|
}
|
||||||
|
.badge {
|
||||||
|
display: inline-flex;
|
||||||
|
height: 26px;
|
||||||
|
width: auto;
|
||||||
|
padding: 0 7px;
|
||||||
|
margin: 0 5px;
|
||||||
|
background: transparent;
|
||||||
|
border-radius: 13px;
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 26px;
|
||||||
|
}
|
||||||
|
.badge.-fill-gradient {
|
||||||
|
background: linear-gradient(to right, #16c0b0, #84cf6a);
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
button,
|
||||||
|
label,
|
||||||
|
input,
|
||||||
|
optgroup,
|
||||||
|
select,
|
||||||
|
textarea {
|
||||||
|
display: inline-flex;
|
||||||
|
font-family: 'Open sans', sans-serif;
|
||||||
|
font-size: 100%;
|
||||||
|
line-height: 1.15;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
button,
|
||||||
|
input {
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
button,
|
||||||
|
select {
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
button,
|
||||||
|
[type='button'],
|
||||||
|
[type='reset'],
|
||||||
|
[type='submit'] {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
button::-moz-focus-inner,
|
||||||
|
[type='button']::-moz-focus-inner,
|
||||||
|
[type='reset']::-moz-focus-inner,
|
||||||
|
[type='submit']::-moz-focus-inner {
|
||||||
|
border-style: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
button:-moz-focusring,
|
||||||
|
[type='button']:-moz-focusring,
|
||||||
|
[type='reset']:-moz-focusring,
|
||||||
|
[type='submit']:-moz-focusring {
|
||||||
|
outline: 2px solid #39b982;
|
||||||
|
}
|
||||||
|
label {
|
||||||
|
color: rgba(0, 0, 0, 0.5);
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
input,
|
||||||
|
textarea {
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: solid 1px rgba(0, 0, 0, 0.4);
|
||||||
|
}
|
||||||
|
textarea {
|
||||||
|
width: 100%;
|
||||||
|
overflow: auto;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
[type='checkbox'],
|
||||||
|
[type='radio'] {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
[type='number']::-webkit-inner-spin-button,
|
||||||
|
[type='number']::-webkit-outer-spin-button {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
[type='search'] {
|
||||||
|
-webkit-appearance: textfield;
|
||||||
|
outline-offset: -2px;
|
||||||
|
}
|
||||||
|
[type='search']::-webkit-search-decoration {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
[type='text'],
|
||||||
|
[type='number'],
|
||||||
|
[type='search'],
|
||||||
|
[type='password'] {
|
||||||
|
height: 52px;
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 10px;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
[type='text']:focus,
|
||||||
|
[type='number']:focus,
|
||||||
|
[type='search']:focus,
|
||||||
|
[type='password']:focus {
|
||||||
|
border-color: #39b982;
|
||||||
|
}
|
||||||
|
::-webkit-file-upload-button {
|
||||||
|
-webkit-appearance: button;
|
||||||
|
font: inherit;
|
||||||
|
}
|
||||||
|
[hidden] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
select {
|
||||||
|
width: 100%;
|
||||||
|
height: 52px;
|
||||||
|
padding: 0 24px 0 10px;
|
||||||
|
vertical-align: middle;
|
||||||
|
background: #fff
|
||||||
|
url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E")
|
||||||
|
no-repeat right 12px center;
|
||||||
|
background-size: 8px 10px;
|
||||||
|
border: solid 1px rgba(0, 0, 0, 0.4);
|
||||||
|
border-radius: 0;
|
||||||
|
-webkit-appearance: none;
|
||||||
|
-moz-appearance: none;
|
||||||
|
appearance: none;
|
||||||
|
}
|
||||||
|
select:focus {
|
||||||
|
border-color: #39b982;
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
select:focus::ms-value {
|
||||||
|
color: #000;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
select::ms-expand {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
</style>
|
Binary file not shown.
After Width: | Height: | Size: 6.7 KiB |
@ -0,0 +1,43 @@
|
|||||||
|
<template>
|
||||||
|
<div class="icon-wrapper">
|
||||||
|
<svg class='icon' :width="width" :height="height">
|
||||||
|
<use v-bind="{'xlink:href':'/feather-sprite.svg#' + name}"/>
|
||||||
|
</svg>
|
||||||
|
<slot></slot>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'Icon',
|
||||||
|
props: {
|
||||||
|
name: String,
|
||||||
|
width: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 24
|
||||||
|
},
|
||||||
|
height: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 24
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.icon-wrapper {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
color: rgba(0, 0, 0, 0.4);
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.icon {
|
||||||
|
stroke: currentColor;
|
||||||
|
stroke-width: 2;
|
||||||
|
stroke-linecap: round;
|
||||||
|
stroke-linejoin: round;
|
||||||
|
fill: none;
|
||||||
|
margin-right: 6px;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,38 @@
|
|||||||
|
<template>
|
||||||
|
<router-link class="event-link" :to="{ name: 'event-show', params: { id: event.id } }">
|
||||||
|
<div class="event-card -shadow">
|
||||||
|
<span class="eyebrow">@{{ event.time }} on {{ event.date }}</span>
|
||||||
|
<h4 class="title">{{ event.title }}</h4>
|
||||||
|
<BaseIcon name="users">{{ event.attendees.length }} attending</BaseIcon>
|
||||||
|
</div>
|
||||||
|
</router-link>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
event: Object
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.event-card {
|
||||||
|
padding: 20px;
|
||||||
|
margin-bottom: 24px;
|
||||||
|
transition: all 0.2s linear;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.event-card:hover {
|
||||||
|
transform: scale(1.01);
|
||||||
|
box-shadow: 0 3px 12px 0 rgba(0, 0, 0, 0.2), 0 1px 15px 0 rgba(0, 0, 0, 0.19);
|
||||||
|
}
|
||||||
|
.event-card > .title {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.event-link {
|
||||||
|
color: black;
|
||||||
|
text-decoration: none;
|
||||||
|
font-weight: 100;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,39 @@
|
|||||||
|
<template>
|
||||||
|
<div id="nav" class="nav">
|
||||||
|
<router-link to="/" class="brand">Real World Events</router-link>
|
||||||
|
<nav>
|
||||||
|
<router-link :to="{ name: 'event-list' }">List</router-link> |
|
||||||
|
<router-link :to="{ name: 'event-create' }">Create</router-link>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.nav {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
.nav > .brand {
|
||||||
|
font-family: 'Montserrat', sans-serif;
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 1.5em;
|
||||||
|
color: #39b982;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.nav .nav-item {
|
||||||
|
box-sizing: border-box;
|
||||||
|
margin: 0 5px;
|
||||||
|
color: rgba(0, 0, 0, 0.5);
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.nav .nav-item.router-link-exact-active {
|
||||||
|
color: #39b982;
|
||||||
|
border-bottom: solid 2px #39b982;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,41 @@
|
|||||||
|
<template>
|
||||||
|
<div class="notification-bar" :class="notificationTypeClass">
|
||||||
|
<p>{{ notification.message }}</p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { mapActions } from 'vuex'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
notification: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
timeout: null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.timeout = setTimeout(() => this.remove(this.notification), 5000)
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
clearTimeout(this.timeout)
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
notificationTypeClass() {
|
||||||
|
return `-text-${this.notification.type}`
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: mapActions('notification', ['remove'])
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.notification-bar {
|
||||||
|
margin: 1em 0 1em;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,30 @@
|
|||||||
|
<template>
|
||||||
|
<div class="notification-container">
|
||||||
|
<NotificationBar
|
||||||
|
v-for="notification in notifications"
|
||||||
|
:key="notification.id"
|
||||||
|
:notification="notification"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import NotificationBar from '@/components/NotificationBar.vue'
|
||||||
|
import { mapState } from 'vuex'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
NotificationBar
|
||||||
|
},
|
||||||
|
computed: mapState('notification', ['notifications'])
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.notification-container {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
right: 0;
|
||||||
|
padding-right: 40px;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,33 @@
|
|||||||
|
import Vue from 'vue'
|
||||||
|
import upperFirst from 'lodash/upperFirst'
|
||||||
|
import camelCase from 'lodash/camelCase'
|
||||||
|
import App from './App.vue'
|
||||||
|
import router from './router'
|
||||||
|
import store from './store/store'
|
||||||
|
import BaseIcon from '@/components/BaseIcon'
|
||||||
|
|
||||||
|
Vue.component('BaseIcon', BaseIcon)
|
||||||
|
|
||||||
|
Vue.config.productionTip = false
|
||||||
|
|
||||||
|
const requireComponent = require.context(
|
||||||
|
'./components',
|
||||||
|
false,
|
||||||
|
/Base[A-Z]\w+\.(vue|js)$/
|
||||||
|
)
|
||||||
|
|
||||||
|
requireComponent.keys().forEach(fileName => {
|
||||||
|
const componentConfig = requireComponent(fileName)
|
||||||
|
|
||||||
|
const componentName = upperFirst(
|
||||||
|
camelCase(fileName.replace(/^\.\/(.*)\.\w+$/, '$1'))
|
||||||
|
)
|
||||||
|
|
||||||
|
Vue.component(componentName, componentConfig.default || componentConfig)
|
||||||
|
})
|
||||||
|
|
||||||
|
new Vue({
|
||||||
|
router,
|
||||||
|
store,
|
||||||
|
render: h => h(App)
|
||||||
|
}).$mount('#app')
|
@ -0,0 +1,29 @@
|
|||||||
|
import Vue from 'vue'
|
||||||
|
import Router from 'vue-router'
|
||||||
|
import EventCreate from './views/EventCreate.vue'
|
||||||
|
import EventList from './views/EventList.vue'
|
||||||
|
import EventShow from './views/EventShow.vue'
|
||||||
|
|
||||||
|
Vue.use(Router)
|
||||||
|
|
||||||
|
export default new Router({
|
||||||
|
mode: 'history',
|
||||||
|
routes: [
|
||||||
|
{
|
||||||
|
path: '/',
|
||||||
|
name: 'event-list',
|
||||||
|
component: EventList
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/event/create',
|
||||||
|
name: 'event-create',
|
||||||
|
component: EventCreate
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/event/:id',
|
||||||
|
name: 'event-show',
|
||||||
|
component: EventShow,
|
||||||
|
props: true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
@ -0,0 +1,22 @@
|
|||||||
|
import axios from 'axios'
|
||||||
|
|
||||||
|
const apiClient = axios.create({
|
||||||
|
baseURL: `http://localhost:3000`,
|
||||||
|
withCredentials: false, // This is the default
|
||||||
|
headers: {
|
||||||
|
Accept: 'application/json',
|
||||||
|
'Content-Type': 'application/json'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
export default {
|
||||||
|
getEvents(perPage, page) {
|
||||||
|
return apiClient.get('/events?_limit=' + perPage + '&_page=' + page)
|
||||||
|
},
|
||||||
|
getEvent(id) {
|
||||||
|
return apiClient.get('/events/' + id)
|
||||||
|
},
|
||||||
|
postEvent(event) {
|
||||||
|
return apiClient.post('/events', event)
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,84 @@
|
|||||||
|
import EventService from '@/services/EventService.js'
|
||||||
|
|
||||||
|
export const namespaced = true
|
||||||
|
|
||||||
|
export const state = {
|
||||||
|
events: [],
|
||||||
|
eventsTotal: 0,
|
||||||
|
event: {}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const mutations = {
|
||||||
|
ADD_EVENT(state, event) {
|
||||||
|
state.events.push(event)
|
||||||
|
},
|
||||||
|
SET_EVENTS(state, events) {
|
||||||
|
state.events = events
|
||||||
|
},
|
||||||
|
SET_EVENTS_TOTAL(state, eventsTotal) {
|
||||||
|
state.eventsTotal = eventsTotal
|
||||||
|
},
|
||||||
|
SET_EVENT(state, event) {
|
||||||
|
state.event = event
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const actions = {
|
||||||
|
createEvent({ commit, dispatch }, event) {
|
||||||
|
return EventService.postEvent(event)
|
||||||
|
.then(() => {
|
||||||
|
commit('ADD_EVENT', event)
|
||||||
|
const notification = {
|
||||||
|
type: 'success',
|
||||||
|
message: 'Your event has been created!'
|
||||||
|
}
|
||||||
|
dispatch('notification/add', notification, { root: true })
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
const notification = {
|
||||||
|
type: 'error',
|
||||||
|
message: 'There was a problem creating your event: ' + error.message
|
||||||
|
}
|
||||||
|
dispatch('notification/add', notification, { root: true })
|
||||||
|
throw error
|
||||||
|
})
|
||||||
|
},
|
||||||
|
fetchEvents({ commit, dispatch }, { perPage, page }) {
|
||||||
|
EventService.getEvents(perPage, page)
|
||||||
|
.then(response => {
|
||||||
|
commit('SET_EVENTS_TOTAL', parseInt(response.headers['x-total-count']))
|
||||||
|
commit('SET_EVENTS', response.data)
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
const notification = {
|
||||||
|
type: 'error',
|
||||||
|
message: 'There was a problem fetching events: ' + error.message
|
||||||
|
}
|
||||||
|
dispatch('notification/add', notification, { root: true })
|
||||||
|
})
|
||||||
|
},
|
||||||
|
fetchEvent({ commit, getters, dispatch }, id) {
|
||||||
|
var event = getters.getEventById(id)
|
||||||
|
|
||||||
|
if (event) {
|
||||||
|
commit('SET_EVENT', event)
|
||||||
|
} else {
|
||||||
|
EventService.getEvent(id)
|
||||||
|
.then(response => {
|
||||||
|
commit('SET_EVENT', response.data)
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
const notification = {
|
||||||
|
type: 'error',
|
||||||
|
message: 'There was a problem fetching event: ' + error.message
|
||||||
|
}
|
||||||
|
dispatch('notification/add', notification, { root: true })
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
export const getters = {
|
||||||
|
getEventById: state => id => {
|
||||||
|
return state.events.find(event => event.id === id)
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
export const namespaced = true
|
||||||
|
|
||||||
|
export const state = {
|
||||||
|
notifications: []
|
||||||
|
}
|
||||||
|
|
||||||
|
let nextId = 1
|
||||||
|
|
||||||
|
export const mutations = {
|
||||||
|
PUSH(state, notification) {
|
||||||
|
state.notifications.push({
|
||||||
|
...notification,
|
||||||
|
id: nextId++
|
||||||
|
})
|
||||||
|
},
|
||||||
|
DELETE(state, notificationToRemove) {
|
||||||
|
state.notifications = state.notifications.filter(
|
||||||
|
notification => notification.id !== notificationToRemove.id
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
export const actions = {
|
||||||
|
add({ commit }, notification) {
|
||||||
|
commit('PUSH', notification)
|
||||||
|
},
|
||||||
|
remove({ commit }, notificationToRemove) {
|
||||||
|
commit('DELETE', notificationToRemove)
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
export const state = {
|
||||||
|
user: { id: 'abc123', name: 'Adam' }
|
||||||
|
}
|
@ -0,0 +1,26 @@
|
|||||||
|
import Vue from 'vue'
|
||||||
|
import Vuex from 'vuex'
|
||||||
|
import * as user from '@/store/modules/user.js'
|
||||||
|
import * as event from '@/store/modules/event.js'
|
||||||
|
import * as notification from '@/store/modules/notification.js'
|
||||||
|
|
||||||
|
Vue.use(Vuex)
|
||||||
|
|
||||||
|
export default new Vuex.Store({
|
||||||
|
modules: {
|
||||||
|
user,
|
||||||
|
event,
|
||||||
|
notification
|
||||||
|
},
|
||||||
|
state: {
|
||||||
|
categories: [
|
||||||
|
'sustainability',
|
||||||
|
'nature',
|
||||||
|
'animal welfare',
|
||||||
|
'housing',
|
||||||
|
'education',
|
||||||
|
'food',
|
||||||
|
'community'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
})
|
@ -0,0 +1,103 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<h1>Create an Event</h1>
|
||||||
|
<form @submit.prevent="createEvent">
|
||||||
|
<label>Select a category</label>
|
||||||
|
<select v-model="event.category">
|
||||||
|
<option v-for="cat in categories" :key="cat">{{ cat }}</option>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<h3>Name & describe your event</h3>
|
||||||
|
<div class="field">
|
||||||
|
<label>Title</label>
|
||||||
|
<input v-model="event.title" type="text" placeholder="Add an event title"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field">
|
||||||
|
<label>Description</label>
|
||||||
|
<input v-model="event.description" type="text" placeholder="Add a description"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h3>Where is your event?</h3>
|
||||||
|
<div class="field">
|
||||||
|
<label>Location</label>
|
||||||
|
<input v-model="event.location" type="text" placeholder="Add a location"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h3>When is your event?</h3>
|
||||||
|
|
||||||
|
<div class="field">
|
||||||
|
<label>Date</label>
|
||||||
|
<datepicker v-model="event.date" placeholder="Select a date"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field">
|
||||||
|
<label>Select a time</label>
|
||||||
|
<select v-model="event.time">
|
||||||
|
<option v-for="time in times" :key="time">{{ time }}</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<input type="submit" class="button -fill-gradient" value="Submit"/>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import Datepicker from 'vuejs-datepicker'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
Datepicker
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
const times = []
|
||||||
|
for (let i = 1; i <= 24; i++) {
|
||||||
|
times.push(i + ':00')
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
times,
|
||||||
|
categories: this.$store.state.categories,
|
||||||
|
event: this.createFreshEventObject()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
createEvent() {
|
||||||
|
this.$store
|
||||||
|
.dispatch('event/createEvent', this.event)
|
||||||
|
.then(() => {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'event-show',
|
||||||
|
params: { id: this.event.id }
|
||||||
|
})
|
||||||
|
this.event = this.createFreshEventObject()
|
||||||
|
})
|
||||||
|
.catch(() => {})
|
||||||
|
},
|
||||||
|
createFreshEventObject() {
|
||||||
|
const user = this.$store.state.user.user
|
||||||
|
const id = Math.floor(Math.random() * 10000000)
|
||||||
|
|
||||||
|
return {
|
||||||
|
id: id,
|
||||||
|
user: user,
|
||||||
|
category: '',
|
||||||
|
organizer: user,
|
||||||
|
title: '',
|
||||||
|
description: '',
|
||||||
|
location: '',
|
||||||
|
date: '',
|
||||||
|
time: '',
|
||||||
|
attendees: []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.field {
|
||||||
|
margin-bottom: 24px;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,42 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<h1>Events for {{ user.user.name }}</h1>
|
||||||
|
<EventCard v-for="event in event.events" :key="event.id" :event="event"/>
|
||||||
|
<template v-if="page != 1">
|
||||||
|
<router-link :to="{ name: 'event-list', query: { page: page - 1 } }" rel="prev">
|
||||||
|
Prev Page</router-link>
|
||||||
|
<template v-if="hasNextPage"> | </template>
|
||||||
|
</template>
|
||||||
|
<router-link v-if="hasNextPage" :to="{ name: 'event-list', query: { page: page + 1 } }" rel="next">
|
||||||
|
Next Page</router-link>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import EventCard from '@/components/EventCard.vue'
|
||||||
|
import { mapState } from 'vuex'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
EventCard
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.perPage = 3 // Setting perPage here and not in data means it won't be reactive.
|
||||||
|
// We don't need it to be reactive, and this way our component has access to it.
|
||||||
|
|
||||||
|
this.$store.dispatch('event/fetchEvents', {
|
||||||
|
perPage: this.perPage,
|
||||||
|
page: this.page
|
||||||
|
})
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
page() {
|
||||||
|
return parseInt(this.$route.query.page) || 1
|
||||||
|
},
|
||||||
|
hasNextPage() {
|
||||||
|
return this.event.eventsTotal > this.page * this.perPage
|
||||||
|
},
|
||||||
|
...mapState(['event', 'user'])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
@ -0,0 +1,60 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<div class="event-header">
|
||||||
|
<span class="eyebrow">@{{ event.time }} on {{ event.date }}</span>
|
||||||
|
<h1 class="title">{{ event.title }}</h1>
|
||||||
|
<h5>Organized by {{ event.organizer ? event.organizer.name : '' }}</h5>
|
||||||
|
<h5>Category: {{ event.category }}</h5>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<BaseIcon name="map"><h2>Location</h2></BaseIcon>
|
||||||
|
|
||||||
|
<address>{{ event.location }}</address>
|
||||||
|
|
||||||
|
<h2>Event details</h2>
|
||||||
|
<p>{{ event.description }}</p>
|
||||||
|
|
||||||
|
<h2>Attendees
|
||||||
|
<span class="badge -fill-gradient">{{ event.attendees ? event.attendees.length : 0 }}</span>
|
||||||
|
</h2>
|
||||||
|
<ul class="list-group">
|
||||||
|
<li v-for="(attendee, index) in event.attendees" :key="index" class="list-item">
|
||||||
|
<b>{{ attendee.name }}</b>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { mapState, mapActions } from 'vuex'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: ['id'],
|
||||||
|
created() {
|
||||||
|
this.fetchEvent(this.id)
|
||||||
|
},
|
||||||
|
computed: mapState({
|
||||||
|
event: state => state.event.event
|
||||||
|
}),
|
||||||
|
methods: mapActions('event', ['fetchEvent'])
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style scoped>
|
||||||
|
.location {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.location > .icon {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.event-header > .title {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.list-group {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
.list-group > .list-item {
|
||||||
|
padding: 1em 0;
|
||||||
|
border-bottom: solid 1px #e5e5e5;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue