App changes: * Move to Vue Material for UI components * Convert request cards to true material design cards, separating the "pray" button from the others and improved highlighting of the current request * Centralize Auth0 integration in one place; modify the Vuex store to rely on it entirely, and add a Vue mixin to make it accessible by any component API changes: * Change backing data store to RavenDB * Evolve domain models (using F# discriminated unions, and JSON converters for storage) to make invalid states unrepresentable * Incorporate the FunctionalCuid library * Create a functional pipeline for app configuration instead of chaining `IWebHostBuilder` calls Bug fixes: * Set showAfter to 0 for immediately recurring requests (#26)
41 lines
802 B
Vue
41 lines
802 B
Vue
<template lang="pug">
|
|
md-table(md-card)
|
|
md-table-toolbar
|
|
h1.md-title {{ title }}
|
|
md-table-row
|
|
md-table-head Actions
|
|
md-table-head Request
|
|
request-list-item(v-for='req in requests'
|
|
:key='req.requestId'
|
|
:request='req')
|
|
|
|
</template>
|
|
|
|
<script>
|
|
'use strict'
|
|
|
|
import RequestListItem from '@/components/request/RequestListItem'
|
|
|
|
export default {
|
|
name: 'request-list',
|
|
components: { RequestListItem },
|
|
props: {
|
|
title: {
|
|
type: String,
|
|
required: true
|
|
},
|
|
requests: {
|
|
type: Array,
|
|
required: true
|
|
}
|
|
},
|
|
data () {
|
|
return { }
|
|
},
|
|
created () {
|
|
this.$on('requestUnsnoozed', this.$parent.$emit('requestUnsnoozed'))
|
|
this.$on('requestNowShown', this.$parent.$emit('requestNowShown'))
|
|
}
|
|
}
|
|
</script>
|