-BootstrapVue -VueAwesome
- All non-modals no longer reference Bootstrap or Font Awesome (#20) - Removed "full request" button from journal page (#16) - Added role attributes in many places
This commit is contained in:
parent
96f2f2f7e0
commit
5bba499251
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "my-prayer-journal",
|
||||
"version": "0.9.7",
|
||||
"version": "0.9.8",
|
||||
"description": "myPrayerJournal - Front End",
|
||||
"author": "Daniel J. Summers <daniel@bitbadger.solutions>",
|
||||
"private": true,
|
||||
|
@ -18,12 +18,9 @@
|
|||
"dependencies": {
|
||||
"auth0-js": "^9.3.3",
|
||||
"axios": "^0.18.0",
|
||||
"bootstrap": "^4.0.0",
|
||||
"bootstrap-vue": "^1.0.0-beta.9",
|
||||
"moment": "^2.18.1",
|
||||
"pug": "^2.0.1",
|
||||
"vue": "^2.5.15",
|
||||
"vue-awesome": "^2.3.3",
|
||||
"vue-progressbar": "^0.7.3",
|
||||
"vue-router": "^3.0.0",
|
||||
"vue-toast": "^3.1.0",
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
<template lang="pug">
|
||||
#app
|
||||
#app(role='application')
|
||||
navigation
|
||||
#content.container
|
||||
#content
|
||||
router-view
|
||||
vue-progress-bar
|
||||
toast(ref='toast')
|
||||
footer
|
||||
p.text-right.text-muted
|
||||
footer.mpj-text-right.mpj-muted-text
|
||||
p
|
||||
| myPrayerJournal v{{ version }}
|
||||
br
|
||||
em: small.
|
||||
|
@ -45,9 +45,27 @@ export default {
|
|||
<style>
|
||||
html, body {
|
||||
background-color: whitesmoke;
|
||||
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
|
||||
font-size: 1rem;
|
||||
}
|
||||
body {
|
||||
padding-top: 60px;
|
||||
padding-top: 50px;
|
||||
margin: 0;
|
||||
}
|
||||
p {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
button,
|
||||
a[role="button"] {
|
||||
border: solid 1px #050;
|
||||
border-radius: .5rem;
|
||||
background-color: whitesmoke;
|
||||
}
|
||||
button:hover,
|
||||
a[role="button"]:hover {
|
||||
background-color: #050;
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
}
|
||||
footer {
|
||||
border-top: solid 1px lightgray;
|
||||
|
@ -59,14 +77,59 @@ footer p {
|
|||
}
|
||||
a:link, a:visited {
|
||||
color: #050;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.mpj-main-content {
|
||||
max-width: 60rem;
|
||||
margin: auto;
|
||||
}
|
||||
.mpj-main-content-wide {
|
||||
margin: .5rem;
|
||||
}
|
||||
@media screen and (max-width: 21rem) {
|
||||
.mpj-main-content-wide {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
.mpj-request-text {
|
||||
white-space: pre-line;
|
||||
}
|
||||
.bg-mpj {
|
||||
.mpj-request-log {
|
||||
width: 100%;
|
||||
}
|
||||
.mpj-request-log thead th {
|
||||
border-top: solid 1px lightgray;
|
||||
border-bottom: solid 2px lightgray;
|
||||
text-align: left;
|
||||
}
|
||||
.mpj-request-log tbody td {
|
||||
border-bottom: dotted 1px lightgray;
|
||||
vertical-align: top;
|
||||
}
|
||||
.mpj-bg {
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#050), to(whitesmoke));
|
||||
background-image: -webkit-linear-gradient(top, #050, whitesmoke);
|
||||
background-image: -moz-linear-gradient(top, #050, whitesmoke);
|
||||
background-image: linear-gradient(to bottom, #050, whitesmoke);
|
||||
}
|
||||
.mpj-text-center {
|
||||
text-align: center;
|
||||
}
|
||||
.mpj-text-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
.mpj-text-right {
|
||||
text-align: right;
|
||||
color: rgba(0, 0, 0, .60);
|
||||
}
|
||||
.mpj-muted-text {
|
||||
color: rgba(0, 0, 0, .60);
|
||||
}
|
||||
.mpj-margin {
|
||||
margin-left: 1rem;
|
||||
margin-right: 1rem;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<template lang="pug">
|
||||
article
|
||||
article.mpj-main-content(role='main')
|
||||
page-title(title='Answered Requests')
|
||||
p(v-if='!loaded') Loading answered requests...
|
||||
div(v-if='loaded').mpj-answered-list
|
||||
|
@ -9,12 +9,12 @@ article
|
|||
| {{ req.text }}
|
||||
br
|
||||
br
|
||||
b-btn(:to='{ name: "AnsweredDetail", params: { id: req.requestId }}'
|
||||
size='sm'
|
||||
variant='outline-secondary')
|
||||
icon(name='search')
|
||||
router-link(:to='{ name: "AnsweredDetail", params: { id: req.requestId }}'
|
||||
role='button'
|
||||
title='View Full Request')
|
||||
md-icon(icon='description')
|
||||
= ' View Full Request'
|
||||
small.text-muted: em.
|
||||
small.mpj-muted-text: em.
|
||||
Answered #[date-from-now(:value='req.asOf')]
|
||||
</template>
|
||||
|
||||
|
|
|
@ -1,16 +1,23 @@
|
|||
<template lang="pug">
|
||||
article
|
||||
article.mpj-main-content(role='main')
|
||||
page-title(title='Answered Request')
|
||||
p(v-if='!request') Loading request...
|
||||
template(v-if='request')
|
||||
p.
|
||||
Answered {{ formatDate(answered) }} (#[date-from-now(:value='answered')])
|
||||
#[small: em.text-muted prayed {{ prayedCount }} times, open {{ openDays }} days]
|
||||
#[small: em.mpj-muted-text prayed {{ prayedCount }} times, open {{ openDays }} days]
|
||||
p.mpj-request-text {{ lastText }}
|
||||
b-table(small hover :fields='fields' :items='log')
|
||||
template(slot='action' scope='data').
|
||||
{{ data.item.status }} on #[span.text-nowrap {{ formatDate(data.item.asOf) }}]
|
||||
template(slot='text' scope='data' v-if='data.item.text') {{ data.item.text.fields[0] }}
|
||||
br
|
||||
table.mpj-request-log
|
||||
thead
|
||||
tr
|
||||
th Action
|
||||
th Update / Notes
|
||||
tbody
|
||||
tr(v-for='item in log' :key='item.asOf')
|
||||
td {{ item.status }} on #[span.mpj-text-nowrap {{ formatDate(item.asOf) }}]
|
||||
td(v-if='item.text').mpj-request-text {{ item.text.fields[0] }}
|
||||
td(v-else)
|
||||
p(v-else) Loading request...
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
@ -32,11 +39,7 @@ export default {
|
|||
},
|
||||
data () {
|
||||
return {
|
||||
request: null,
|
||||
fields: [
|
||||
{ key: 'action', label: 'Action' },
|
||||
{ key: 'text', label: 'Update / Notes' }
|
||||
]
|
||||
request: null
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<template lang="pug">
|
||||
article
|
||||
article.mpj-main-content(role='main')
|
||||
page-title(title='Welcome!'
|
||||
hideOnPage='true')
|
||||
p
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
<template lang="pug">
|
||||
article
|
||||
article.mpj-main-content-wide(role='main')
|
||||
page-title(:title='title')
|
||||
p(v-if='isLoadingJournal') Loading your prayer journal...
|
||||
template(v-if='!isLoadingJournal')
|
||||
new-request
|
||||
br
|
||||
b-row(v-if='journal.length > 0')
|
||||
.mpj-journal(v-if='journal.length > 0')
|
||||
request-card(v-for='request in journal'
|
||||
:key='request.requestId'
|
||||
:request='request'
|
||||
|
@ -67,3 +67,11 @@ export default {
|
|||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.mpj-journal {
|
||||
display: flex;
|
||||
flex-flow: row wrap;
|
||||
justify-content: center;
|
||||
}
|
||||
</style>
|
|
@ -1,32 +1,38 @@
|
|||
<template lang="pug">
|
||||
b-navbar(toggleable='sm'
|
||||
type='dark'
|
||||
variant='mpj'
|
||||
fixed='top')
|
||||
b-nav-toggle(target='nav_collapse')
|
||||
b-navbar-brand(to='/')
|
||||
nav.mpj-top-nav.mpj-bg(role='menubar')
|
||||
router-link.title(:to="{ name: 'Home' }"
|
||||
role='menuitem')
|
||||
span(style='font-weight:100;') my
|
||||
span(style='font-weight:600;') Prayer
|
||||
span(style='font-weight:700;') Journal
|
||||
b-collapse#nav_collapse(is-nav)
|
||||
b-navbar-nav
|
||||
b-nav-item(v-if='isAuthenticated'
|
||||
to='/journal') Journal
|
||||
b-nav-item(v-if='hasSnoozed'
|
||||
to='/snoozed') Snoozed
|
||||
b-nav-item(v-if='isAuthenticated'
|
||||
to='/answered') Answered
|
||||
b-nav-item(v-if='isAuthenticated'): a(@click.stop='logOff()') Log Off
|
||||
b-nav-item(v-if='!isAuthenticated'): a(@click.stop='logOn()') Log On
|
||||
b-nav-item(href='https://bit-badger.github.io/myPrayerJournal/'
|
||||
target='_blank'
|
||||
@click.stop='') Docs
|
||||
router-link(v-if='isAuthenticated'
|
||||
:to="{ name: 'Journal' }"
|
||||
role='menuitem') Journal
|
||||
router-link(v-if='hasSnoozed'
|
||||
:to="{ name: 'Snoozed' }"
|
||||
role='menuitem') Snoozed
|
||||
router-link(v-if='isAuthenticated'
|
||||
:to="{ name: 'Answered' }"
|
||||
role='menuitem') Answered
|
||||
a(v-if='isAuthenticated'
|
||||
href='#'
|
||||
role='menuitem'
|
||||
@click.stop='logOff()') Log Off
|
||||
a(v-if='!isAuthenticated'
|
||||
href='#'
|
||||
role='menuitem'
|
||||
@click.stop='logOn()') Log On
|
||||
a(href='https://bit-badger.github.io/myPrayerJournal/'
|
||||
target='_blank'
|
||||
role='menuitem'
|
||||
@click.stop='') Docs
|
||||
</template>
|
||||
|
||||
<script>
|
||||
'use strict'
|
||||
|
||||
import { mapState } from 'vuex'
|
||||
|
||||
import AuthService from '@/auth/AuthService'
|
||||
|
||||
export default {
|
||||
|
@ -54,3 +60,34 @@ export default {
|
|||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.mpj-top-nav {
|
||||
position: fixed;
|
||||
display: flex;
|
||||
flex-flow: row wrap;
|
||||
align-items: center;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
padding-left: .5rem;
|
||||
min-height: 50px;
|
||||
}
|
||||
.mpj-top-nav a:link,
|
||||
.mpj-top-nav a:visited {
|
||||
text-decoration: none;
|
||||
color: rgba(255, 255, 255, .75);
|
||||
padding-left: 1rem;
|
||||
}
|
||||
.mpj-top-nav a:link.router-link-active,
|
||||
.mpj-top-nav a:visited.router-link-active,
|
||||
.mpj-top-nav a:hover {
|
||||
color: white;
|
||||
}
|
||||
.mpj-top-nav .title {
|
||||
font-size: 1.25rem;
|
||||
color: white;
|
||||
padding-left: 1.25rem;
|
||||
padding-right: 1.25rem;
|
||||
}
|
||||
</style>
|
|
@ -1,21 +1,19 @@
|
|||
<template lang="pug">
|
||||
article
|
||||
article.mpj-main-content(role='main')
|
||||
page-title(title='Snoozed Requests')
|
||||
p(v-if='!loaded') Loading journal...
|
||||
div(v-if='loaded').mpj-snoozed-list
|
||||
p.text-center(v-if='requests.length === 0'): em.
|
||||
p.mpj-text-center(v-if='requests.length === 0'): em.
|
||||
No snoozed requests found; return to #[router-link(:to='{ name: "Journal" } ') your journal]
|
||||
p.mpj-snoozed-text(v-for='req in requests' :key='req.requestId')
|
||||
p.mpj-request-text(v-for='req in requests' :key='req.requestId')
|
||||
| {{ req.text }}
|
||||
br
|
||||
br
|
||||
b-btn(@click='cancelSnooze(req.requestId)'
|
||||
size='sm'
|
||||
variant='outline-secondary')
|
||||
icon(name='times')
|
||||
button(@click='cancelSnooze(req.requestId)')
|
||||
md-icon(icon='restore')
|
||||
= ' Cancel Snooze'
|
||||
small.text-muted: em.
|
||||
small.mpj-muted-text: em.
|
||||
Snooze expires #[date-from-now(:value='req.snoozedUntil')]
|
||||
p(v-else) Loading journal...
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
|
15
src/app/src/components/common/MaterialDesignIcon.vue
Normal file
15
src/app/src/components/common/MaterialDesignIcon.vue
Normal file
|
@ -0,0 +1,15 @@
|
|||
<template lang="pug">
|
||||
i.material-icons(v-html='icon')
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'md-icon',
|
||||
props: {
|
||||
icon: {
|
||||
type: String,
|
||||
required: true
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -1,7 +1,7 @@
|
|||
<template lang="pug">
|
||||
div
|
||||
b-btn(@click='openDialog()' size='sm' variant='primary')
|
||||
icon(name='plus')
|
||||
button(@click='openDialog()')
|
||||
md-icon(icon='add_box')
|
||||
| Add a New Request
|
||||
b-modal(v-model='showNewVisible'
|
||||
header-bg-variant='mpj'
|
||||
|
@ -16,8 +16,26 @@ div
|
|||
v-model='form.requestText'
|
||||
:rows='10'
|
||||
@blur='trimText()')
|
||||
b-form-group(label='Recurrence')
|
||||
| After prayer, request reappears
|
||||
b-radio(v-model='form.recur.typ'
|
||||
label='Immediately'
|
||||
value='immediately'
|
||||
checked='checked'
|
||||
@click='checkRadios')
|
||||
b-radio(v-model='form.recur.typ'
|
||||
label='Every...'
|
||||
value='other'
|
||||
@click='checkRadios')
|
||||
b-input(v-model='form.recur.count'
|
||||
placeholder='##')
|
||||
b-select(v-model='form.recur.other')
|
||||
b-option(value='hours') hours
|
||||
b-option(value='days') days
|
||||
b-option(value='weeks') weeks
|
||||
div.w-100.text-right(slot='modal-footer')
|
||||
b-btn(variant='primary'
|
||||
:disabled='!isValid'
|
||||
@click='saveRequest()') Save
|
||||
|
|
||||
b-btn(variant='outline-secondary'
|
||||
|
@ -36,7 +54,12 @@ export default {
|
|||
return {
|
||||
showNewVisible: false,
|
||||
form: {
|
||||
requestText: ''
|
||||
requestText: '',
|
||||
recur: {
|
||||
typ: 'immediate',
|
||||
other: '',
|
||||
count: ''
|
||||
}
|
||||
},
|
||||
formLabelWidth: '120px'
|
||||
}
|
||||
|
@ -44,6 +67,12 @@ export default {
|
|||
mounted () {
|
||||
this.$refs.toast.setOptions({ position: 'bottom right' })
|
||||
},
|
||||
computed: {
|
||||
isValid () {
|
||||
// TODO disallow submission if recurrence is too long
|
||||
return true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
closeDialog () {
|
||||
this.form.requestText = ''
|
||||
|
|
|
@ -1,19 +1,17 @@
|
|||
<template lang="pug">
|
||||
b-col(v-if="!isSnoozed" md='6' lg='4')
|
||||
.mpj-request-card
|
||||
b-card-header.text-center.py-1.
|
||||
#[b-btn(@click='markPrayed()' variant='outline-primary' title='Pray' size='sm'): icon(name='check')]
|
||||
#[b-btn(@click.stop='showEdit()' variant='outline-secondary' title='Edit' size='sm'): icon(name='pencil')]
|
||||
#[b-btn(@click.stop='showNotes()' variant='outline-secondary' title='Add Notes' size='sm'): icon(name='file-text-o')]
|
||||
#[b-btn(@click.stop='showFull()' variant='outline-secondary' title='View Full Request' size='sm'): icon(name='search')]
|
||||
#[b-btn(@click.stop='snooze()' variant='outline-secondary' title='Snooze Request' size='sm'): icon(name='clock-o')]
|
||||
b-card-body.p-0
|
||||
p.card-text.mpj-request-text.mb-1.px-3.pt-3
|
||||
| {{ request.text }}
|
||||
p.card-text.p-0.pr-1.text-right: small.text-muted: em
|
||||
= '(last activity '
|
||||
date-from-now(:value='request.asOf')
|
||||
| )
|
||||
.mpj-request-card
|
||||
header.mpj-card-header.mpj-bg(role='toolbar').
|
||||
#[button.pray(@click='markPrayed()' title='Pray' size='sm'): md-icon(icon='done')]
|
||||
#[button(@click.stop='showEdit()' title='Edit' size='sm'): md-icon(icon='edit')]
|
||||
#[button(@click.stop='showNotes()' title='Add Notes' size='sm'): md-icon(icon='comment')]
|
||||
#[button(@click.stop='snooze()' title='Snooze Request' size='sm'): md-icon(icon='schedule')]
|
||||
div
|
||||
p.card-text.mpj-request-text
|
||||
| {{ request.text }}
|
||||
p.as-of.mpj-text-right: small.mpj-muted-text: em
|
||||
= '(last activity '
|
||||
date-from-now(:value='request.asOf')
|
||||
| )
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
@ -29,8 +27,8 @@ export default {
|
|||
events: { required: true }
|
||||
},
|
||||
computed: {
|
||||
isSnoozed () {
|
||||
return Date.now() < this.request.snoozedUntil
|
||||
shouldDisplay () {
|
||||
return Date.now() >= this.request.showAfter
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
@ -63,6 +61,39 @@ export default {
|
|||
.mpj-request-card {
|
||||
border: solid 1px darkgray;
|
||||
border-radius: 5px;
|
||||
margin-bottom: 15px;
|
||||
width: 20rem;
|
||||
margin: .5rem;
|
||||
}
|
||||
@media screen and (max-width: 20rem) {
|
||||
.mpj-request-card {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
.mpj-card-header {
|
||||
display: flex;
|
||||
flex-flow: row;
|
||||
justify-content: center;
|
||||
}
|
||||
.mpj-card-header button {
|
||||
background-color: rgba(255, 255, 255, .75);
|
||||
border-radius: .25rem;
|
||||
margin: .25rem;
|
||||
border: solid #050 1px;
|
||||
font-size: .8rem;
|
||||
}
|
||||
.mpj-card-header button:hover {
|
||||
cursor: pointer;
|
||||
background-color: white;
|
||||
color: #050;
|
||||
}
|
||||
.mpj-card-header button.pray {
|
||||
background-color: white;
|
||||
}
|
||||
.mpj-request-card .card-text {
|
||||
margin-left: 1rem;
|
||||
margin-right: 1rem;
|
||||
}
|
||||
.mpj-request-card .as-of {
|
||||
margin-right: .25rem;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,33 +1,20 @@
|
|||
// The Vue build version to load with the `import` command
|
||||
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
|
||||
import Vue from 'vue'
|
||||
import BootstrapVue from 'bootstrap-vue'
|
||||
import Icon from 'vue-awesome/components/Icon'
|
||||
import VueProgressBar from 'vue-progressbar'
|
||||
import VueToast from 'vue-toast'
|
||||
|
||||
import 'bootstrap-vue/dist/bootstrap-vue.css'
|
||||
import 'bootstrap/dist/css/bootstrap.css'
|
||||
import 'vue-toast/dist/vue-toast.min.css'
|
||||
|
||||
// Only import the icons we need; the whole set is ~500K!
|
||||
import 'vue-awesome/icons/check'
|
||||
import 'vue-awesome/icons/clock-o'
|
||||
import 'vue-awesome/icons/file-text-o'
|
||||
import 'vue-awesome/icons/pencil'
|
||||
import 'vue-awesome/icons/plus'
|
||||
import 'vue-awesome/icons/search'
|
||||
import 'vue-awesome/icons/times'
|
||||
|
||||
import App from './App'
|
||||
import router from './router'
|
||||
import store from './store'
|
||||
import DateFromNow from './components/common/DateFromNow'
|
||||
import MaterialDesignIcon from './components/common/MaterialDesignIcon'
|
||||
import PageTitle from './components/common/PageTitle'
|
||||
|
||||
Vue.config.productionTip = false
|
||||
|
||||
Vue.use(BootstrapVue)
|
||||
Vue.use(VueProgressBar, {
|
||||
color: 'yellow',
|
||||
failedColor: 'red',
|
||||
|
@ -39,8 +26,8 @@ Vue.use(VueProgressBar, {
|
|||
}
|
||||
})
|
||||
|
||||
Vue.component('icon', Icon)
|
||||
Vue.component('date-from-now', DateFromNow)
|
||||
Vue.component('md-icon', MaterialDesignIcon)
|
||||
Vue.component('page-title', PageTitle)
|
||||
Vue.component('toast', VueToast)
|
||||
|
||||
|
|
|
@ -811,14 +811,6 @@ babel-plugin-transform-strict-mode@^6.24.1:
|
|||
babel-runtime "^6.22.0"
|
||||
babel-types "^6.24.1"
|
||||
|
||||
babel-polyfill@6.23.0:
|
||||
version "6.23.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
core-js "^2.4.0"
|
||||
regenerator-runtime "^0.10.0"
|
||||
|
||||
babel-preset-env@^1.3.2:
|
||||
version "1.7.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a"
|
||||
|
@ -1051,19 +1043,6 @@ boom@5.x.x:
|
|||
dependencies:
|
||||
hoek "4.x.x"
|
||||
|
||||
bootstrap-vue@^1.0.0-beta.9:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.yarnpkg.com/bootstrap-vue/-/bootstrap-vue-1.5.1.tgz#0baa713d3b34a6c39197323f93989f7af55bc286"
|
||||
dependencies:
|
||||
lodash.startcase "^4.4.0"
|
||||
opencollective "^1.0.3"
|
||||
popper.js "^1.12.9"
|
||||
vue-functional-data-merge "^2.0.3"
|
||||
|
||||
bootstrap@^4.0.0:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.1.1.tgz#3aec85000fa619085da8d2e4983dfd67cf2114cb"
|
||||
|
||||
brace-expansion@^1.0.0, brace-expansion@^1.1.7:
|
||||
version "1.1.11"
|
||||
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
|
||||
|
@ -1324,7 +1303,7 @@ chai@^3.5.0:
|
|||
deep-eql "^0.1.3"
|
||||
type-detect "^1.0.0"
|
||||
|
||||
chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
|
||||
chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
|
||||
dependencies:
|
||||
|
@ -1348,10 +1327,6 @@ character-parser@^2.1.1:
|
|||
dependencies:
|
||||
is-regex "^1.0.3"
|
||||
|
||||
chardet@^0.4.0:
|
||||
version "0.4.2"
|
||||
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
|
||||
|
||||
check-types@^7.3.0:
|
||||
version "7.3.0"
|
||||
resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.3.0.tgz#468f571a4435c24248f5fd0cb0e8d87c3c341e7d"
|
||||
|
@ -2249,12 +2224,6 @@ encodeurl@~1.0.1, encodeurl@~1.0.2:
|
|||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
|
||||
|
||||
encoding@^0.1.11:
|
||||
version "0.1.12"
|
||||
resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
|
||||
dependencies:
|
||||
iconv-lite "~0.4.13"
|
||||
|
||||
end-of-stream@^1.0.0, end-of-stream@^1.1.0:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
|
||||
|
@ -2678,14 +2647,6 @@ extend@3, extend@^3.0.0, extend@~3.0.0, extend@~3.0.1:
|
|||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
|
||||
|
||||
external-editor@^2.0.1:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5"
|
||||
dependencies:
|
||||
chardet "^0.4.0"
|
||||
iconv-lite "^0.4.17"
|
||||
tmp "^0.0.33"
|
||||
|
||||
extglob@^0.3.1:
|
||||
version "0.3.2"
|
||||
resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
|
||||
|
@ -2760,12 +2721,6 @@ figures@^1.3.5:
|
|||
escape-string-regexp "^1.0.5"
|
||||
object-assign "^4.1.0"
|
||||
|
||||
figures@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
|
||||
dependencies:
|
||||
escape-string-regexp "^1.0.5"
|
||||
|
||||
file-entry-cache@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361"
|
||||
|
@ -3426,7 +3381,7 @@ iconv-lite@0.4.19:
|
|||
version "0.4.19"
|
||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
|
||||
|
||||
iconv-lite@0.4.23, iconv-lite@^0.4.17, iconv-lite@^0.4.4, iconv-lite@~0.4.13:
|
||||
iconv-lite@0.4.23, iconv-lite@^0.4.4:
|
||||
version "0.4.23"
|
||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63"
|
||||
dependencies:
|
||||
|
@ -3513,24 +3468,6 @@ inject-loader@^3.0.1:
|
|||
dependencies:
|
||||
babel-core "~6"
|
||||
|
||||
inquirer@3.0.6:
|
||||
version "3.0.6"
|
||||
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.0.6.tgz#e04aaa9d05b7a3cb9b0f407d04375f0447190347"
|
||||
dependencies:
|
||||
ansi-escapes "^1.1.0"
|
||||
chalk "^1.0.0"
|
||||
cli-cursor "^2.1.0"
|
||||
cli-width "^2.0.0"
|
||||
external-editor "^2.0.1"
|
||||
figures "^2.0.0"
|
||||
lodash "^4.3.0"
|
||||
mute-stream "0.0.7"
|
||||
run-async "^2.2.0"
|
||||
rx "^4.1.0"
|
||||
string-width "^2.0.0"
|
||||
strip-ansi "^3.0.0"
|
||||
through "^2.3.6"
|
||||
|
||||
inquirer@^0.12.0:
|
||||
version "0.12.0"
|
||||
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e"
|
||||
|
@ -3786,7 +3723,7 @@ is-primitive@^2.0.0:
|
|||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
|
||||
|
||||
is-promise@^2.0.0, is-promise@^2.1.0:
|
||||
is-promise@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
|
||||
|
||||
|
@ -4311,10 +4248,6 @@ lodash.rest@^4.0.0:
|
|||
version "4.0.5"
|
||||
resolved "https://registry.yarnpkg.com/lodash.rest/-/lodash.rest-4.0.5.tgz#954ef75049262038c96d1fc98b28fdaf9f0772aa"
|
||||
|
||||
lodash.startcase@^4.4.0:
|
||||
version "4.4.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8"
|
||||
|
||||
lodash.uniq@^4.5.0:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
|
||||
|
@ -4671,10 +4604,6 @@ mute-stream@0.0.5:
|
|||
version "0.0.5"
|
||||
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
|
||||
|
||||
mute-stream@0.0.7:
|
||||
version "0.0.7"
|
||||
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
|
||||
|
||||
nan@^2.9.2:
|
||||
version "2.10.0"
|
||||
resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f"
|
||||
|
@ -4749,13 +4678,6 @@ no-case@^2.2.0:
|
|||
dependencies:
|
||||
lower-case "^1.1.1"
|
||||
|
||||
node-fetch@1.6.3:
|
||||
version "1.6.3"
|
||||
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04"
|
||||
dependencies:
|
||||
encoding "^0.1.11"
|
||||
is-stream "^1.0.1"
|
||||
|
||||
node-libs-browser@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df"
|
||||
|
@ -4943,28 +4865,10 @@ onetime@^2.0.0:
|
|||
dependencies:
|
||||
mimic-fn "^1.0.0"
|
||||
|
||||
opencollective@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/opencollective/-/opencollective-1.0.3.tgz#aee6372bc28144583690c3ca8daecfc120dd0ef1"
|
||||
dependencies:
|
||||
babel-polyfill "6.23.0"
|
||||
chalk "1.1.3"
|
||||
inquirer "3.0.6"
|
||||
minimist "1.2.0"
|
||||
node-fetch "1.6.3"
|
||||
opn "4.0.2"
|
||||
|
||||
opener@^1.4.3:
|
||||
version "1.4.3"
|
||||
resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8"
|
||||
|
||||
opn@4.0.2:
|
||||
version "4.0.2"
|
||||
resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95"
|
||||
dependencies:
|
||||
object-assign "^4.0.1"
|
||||
pinkie-promise "^2.0.0"
|
||||
|
||||
opn@^5.1.0:
|
||||
version "5.3.0"
|
||||
resolved "https://registry.yarnpkg.com/opn/-/opn-5.3.0.tgz#64871565c863875f052cfdf53d3e3cb5adb53b1c"
|
||||
|
@ -5267,10 +5171,6 @@ pluralize@^1.2.1:
|
|||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45"
|
||||
|
||||
popper.js@^1.12.9:
|
||||
version "1.14.3"
|
||||
resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.14.3.tgz#1438f98d046acf7b4d78cd502bf418ac64d4f095"
|
||||
|
||||
posix-character-classes@^0.1.0:
|
||||
version "0.1.1"
|
||||
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
|
||||
|
@ -5927,10 +5827,6 @@ regenerate@^1.2.1:
|
|||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11"
|
||||
|
||||
regenerator-runtime@^0.10.0:
|
||||
version "0.10.5"
|
||||
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658"
|
||||
|
||||
regenerator-runtime@^0.11.0:
|
||||
version "0.11.1"
|
||||
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
|
||||
|
@ -6134,12 +6030,6 @@ run-async@^0.1.0:
|
|||
dependencies:
|
||||
once "^1.3.0"
|
||||
|
||||
run-async@^2.2.0:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
|
||||
dependencies:
|
||||
is-promise "^2.1.0"
|
||||
|
||||
run-queue@^1.0.0, run-queue@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47"
|
||||
|
@ -6150,10 +6040,6 @@ rx-lite@^3.1.2:
|
|||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
|
||||
|
||||
rx@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782"
|
||||
|
||||
safe-buffer@5.1.1:
|
||||
version "5.1.1"
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
|
||||
|
@ -6772,7 +6658,7 @@ tmp@0.0.31:
|
|||
dependencies:
|
||||
os-tmpdir "~1.0.1"
|
||||
|
||||
tmp@0.0.x, tmp@^0.0.33:
|
||||
tmp@0.0.x:
|
||||
version "0.0.33"
|
||||
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
|
||||
dependencies:
|
||||
|
@ -7063,14 +6949,6 @@ void-elements@^2.0.0, void-elements@^2.0.1:
|
|||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec"
|
||||
|
||||
vue-awesome@^2.3.3:
|
||||
version "2.3.5"
|
||||
resolved "https://registry.yarnpkg.com/vue-awesome/-/vue-awesome-2.3.5.tgz#fe7fcf185cff794cb37a3c45d16eeb851e94fd9c"
|
||||
|
||||
vue-functional-data-merge@^2.0.3:
|
||||
version "2.0.6"
|
||||
resolved "https://registry.yarnpkg.com/vue-functional-data-merge/-/vue-functional-data-merge-2.0.6.tgz#f08055adfb92458debcf2ad10c3aa712277f7fc2"
|
||||
|
||||
vue-hot-reload-api@^2.1.0:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.0.tgz#97976142405d13d8efae154749e88c4e358cf926"
|
||||
|
|
Loading…
Reference in New Issue
Block a user