mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
Merge branch 'master' into 2283-feature-fullstack-tests-as-github-workflow
This commit is contained in:
commit
f49da855ce
13
CHANGELOG.md
13
CHANGELOG.md
@ -4,8 +4,21 @@ All notable changes to this project will be documented in this file. Dates are d
|
|||||||
|
|
||||||
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
||||||
|
|
||||||
|
#### [1.13.3](https://github.com/gradido/gradido/compare/1.13.2...1.13.3)
|
||||||
|
|
||||||
|
- 2294 contribution links on its own page [`#2312`](https://github.com/gradido/gradido/pull/2312)
|
||||||
|
- fix: Change Orange Color [`#2302`](https://github.com/gradido/gradido/pull/2302)
|
||||||
|
- fix: Release Statistic Query Runner [`#2320`](https://github.com/gradido/gradido/pull/2320)
|
||||||
|
- bug: 2295 remove horizontal scrollbar in admin overview [`#2311`](https://github.com/gradido/gradido/pull/2311)
|
||||||
|
- 2292 community information contact [`#2313`](https://github.com/gradido/gradido/pull/2313)
|
||||||
|
- bug: 2315 Contribution Month and TEST FAIL in MASTER [`#2316`](https://github.com/gradido/gradido/pull/2316)
|
||||||
|
- 2291 add button for close contribution messages box [`#2314`](https://github.com/gradido/gradido/pull/2314)
|
||||||
|
|
||||||
#### [1.13.2](https://github.com/gradido/gradido/compare/1.13.1...1.13.2)
|
#### [1.13.2](https://github.com/gradido/gradido/compare/1.13.1...1.13.2)
|
||||||
|
|
||||||
|
> 28 October 2022
|
||||||
|
|
||||||
|
- release: Version 1.13.2 [`#2307`](https://github.com/gradido/gradido/pull/2307)
|
||||||
- fix: 🍰 Links In Contribution Messages Target Blank [`#2306`](https://github.com/gradido/gradido/pull/2306)
|
- fix: 🍰 Links In Contribution Messages Target Blank [`#2306`](https://github.com/gradido/gradido/pull/2306)
|
||||||
- fix: Link in Contribution Messages [`#2305`](https://github.com/gradido/gradido/pull/2305)
|
- fix: Link in Contribution Messages [`#2305`](https://github.com/gradido/gradido/pull/2305)
|
||||||
- Refactor: 🍰 Change the query so that we only look on the ``contributions`` table. [`#2217`](https://github.com/gradido/gradido/pull/2217)
|
- Refactor: 🍰 Change the query so that we only look on the ``contributions`` table. [`#2217`](https://github.com/gradido/gradido/pull/2217)
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
"description": "Administraion Interface for Gradido",
|
"description": "Administraion Interface for Gradido",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"author": "Moriz Wahl",
|
"author": "Moriz Wahl",
|
||||||
"version": "1.13.2",
|
"version": "1.13.3",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"private": false,
|
"private": false,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="content-footer">
|
<div class="content-footer">
|
||||||
<hr />
|
<hr />
|
||||||
<b-row align-v="center" class="mt-4 justify-content-lg-between">
|
<div align-v="center" class="mt-4 mb-4 justify-content-lg-between">
|
||||||
<b-col>
|
<b-col>
|
||||||
<div class="copyright text-center text-lg-center text-muted">
|
<div class="copyright text-center text-lg-center text-muted">
|
||||||
{{ $t('footer.copyright.year', { year }) }}
|
{{ $t('footer.copyright.year', { year }) }}
|
||||||
@ -25,7 +25,7 @@
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</b-col>
|
</b-col>
|
||||||
</b-row>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@ -35,8 +35,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import ContributionLinkForm from './ContributionLinkForm.vue'
|
import ContributionLinkForm from '../ContributionLink/ContributionLinkForm.vue'
|
||||||
import ContributionLinkList from './ContributionLinkList.vue'
|
import ContributionLinkList from '../ContributionLink/ContributionLinkList.vue'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'ContributionLink',
|
name: 'ContributionLink',
|
||||||
@ -1,6 +1,6 @@
|
|||||||
import { mount } from '@vue/test-utils'
|
import { mount } from '@vue/test-utils'
|
||||||
import ContributionLinkForm from './ContributionLinkForm.vue'
|
import ContributionLinkForm from './ContributionLinkForm.vue'
|
||||||
import { toastErrorSpy, toastSuccessSpy } from '../../test/testSetup'
|
import { toastErrorSpy, toastSuccessSpy } from '../../../test/testSetup'
|
||||||
import { createContributionLink } from '@/graphql/createContributionLink.js'
|
import { createContributionLink } from '@/graphql/createContributionLink.js'
|
||||||
|
|
||||||
const localVue = global.localVue
|
const localVue = global.localVue
|
||||||
@ -1,6 +1,6 @@
|
|||||||
import { mount } from '@vue/test-utils'
|
import { mount } from '@vue/test-utils'
|
||||||
import ContributionLinkList from './ContributionLinkList.vue'
|
import ContributionLinkList from './ContributionLinkList.vue'
|
||||||
import { toastSuccessSpy, toastErrorSpy } from '../../test/testSetup'
|
import { toastSuccessSpy, toastErrorSpy } from '../../../test/testSetup'
|
||||||
// import { deleteContributionLink } from '../graphql/deleteContributionLink'
|
// import { deleteContributionLink } from '../graphql/deleteContributionLink'
|
||||||
|
|
||||||
const localVue = global.localVue
|
const localVue = global.localVue
|
||||||
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="contribution-link-list">
|
<div class="contribution-link-list">
|
||||||
<b-table striped hover :items="items" :fields="fields">
|
<b-table :items="items" :fields="fields" striped hover stacked="lg">
|
||||||
<template #cell(delete)="data">
|
<template #cell(delete)="data">
|
||||||
<b-button
|
<b-button
|
||||||
variant="danger"
|
variant="danger"
|
||||||
@ -46,7 +46,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { deleteContributionLink } from '@/graphql/deleteContributionLink.js'
|
import { deleteContributionLink } from '@/graphql/deleteContributionLink.js'
|
||||||
import FigureQrCode from './FigureQrCode.vue'
|
import FigureQrCode from '../FigureQrCode.vue'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'ContributionLinkList',
|
name: 'ContributionLinkList',
|
||||||
@ -7,6 +7,10 @@ const apolloMutateMock = jest.fn()
|
|||||||
const storeDispatchMock = jest.fn()
|
const storeDispatchMock = jest.fn()
|
||||||
const routerPushMock = jest.fn()
|
const routerPushMock = jest.fn()
|
||||||
|
|
||||||
|
const stubs = {
|
||||||
|
RouterLink: true,
|
||||||
|
}
|
||||||
|
|
||||||
const mocks = {
|
const mocks = {
|
||||||
$t: jest.fn((t) => t),
|
$t: jest.fn((t) => t),
|
||||||
$apollo: {
|
$apollo: {
|
||||||
@ -28,7 +32,7 @@ describe('NavBar', () => {
|
|||||||
let wrapper
|
let wrapper
|
||||||
|
|
||||||
const Wrapper = () => {
|
const Wrapper = () => {
|
||||||
return mount(NavBar, { mocks, localVue })
|
return mount(NavBar, { mocks, localVue, stubs })
|
||||||
}
|
}
|
||||||
|
|
||||||
describe('mount', () => {
|
describe('mount', () => {
|
||||||
@ -41,13 +45,35 @@ describe('NavBar', () => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('Navbar Menu', () => {
|
||||||
|
it('has a link to overview', () => {
|
||||||
|
expect(wrapper.findAll('.nav-item').at(0).find('a').attributes('href')).toBe('/')
|
||||||
|
})
|
||||||
|
it('has a link to /user', () => {
|
||||||
|
expect(wrapper.findAll('.nav-item').at(1).find('a').attributes('href')).toBe('/user')
|
||||||
|
})
|
||||||
|
it('has a link to /creation', () => {
|
||||||
|
expect(wrapper.findAll('.nav-item').at(2).find('a').attributes('href')).toBe('/creation')
|
||||||
|
})
|
||||||
|
it('has a link to /creation-confirm', () => {
|
||||||
|
expect(wrapper.findAll('.nav-item').at(3).find('a').attributes('href')).toBe(
|
||||||
|
'/creation-confirm',
|
||||||
|
)
|
||||||
|
})
|
||||||
|
it('has a link to /contribution-links', () => {
|
||||||
|
expect(wrapper.findAll('.nav-item').at(4).find('a').attributes('href')).toBe(
|
||||||
|
'/contribution-links',
|
||||||
|
)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
describe('wallet', () => {
|
describe('wallet', () => {
|
||||||
const assignLocationSpy = jest.fn()
|
const assignLocationSpy = jest.fn()
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
await wrapper.findAll('a').at(5).trigger('click')
|
await wrapper.findAll('.nav-item').at(5).find('a').trigger('click')
|
||||||
})
|
})
|
||||||
|
|
||||||
it.skip('changes widnow location to wallet', () => {
|
it.skip('changes window location to wallet', () => {
|
||||||
expect(assignLocationSpy).toBeCalledWith('valid-token')
|
expect(assignLocationSpy).toBeCalledWith('valid-token')
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -63,7 +89,7 @@ describe('NavBar', () => {
|
|||||||
window.location = {
|
window.location = {
|
||||||
assign: windowLocationMock,
|
assign: windowLocationMock,
|
||||||
}
|
}
|
||||||
await wrapper.findAll('a').at(6).trigger('click')
|
await wrapper.findAll('.nav-item').at(6).find('a').trigger('click')
|
||||||
})
|
})
|
||||||
|
|
||||||
it('redirects to /logout', () => {
|
it('redirects to /logout', () => {
|
||||||
|
|||||||
@ -19,6 +19,9 @@
|
|||||||
>
|
>
|
||||||
{{ $store.state.openCreations }} {{ $t('navbar.open_creation') }}
|
{{ $store.state.openCreations }} {{ $t('navbar.open_creation') }}
|
||||||
</b-nav-item>
|
</b-nav-item>
|
||||||
|
<b-nav-item to="/contribution-links">
|
||||||
|
{{ $t('navbar.automaticContributions') }}
|
||||||
|
</b-nav-item>
|
||||||
<b-nav-item @click="wallet">{{ $t('navbar.my-account') }}</b-nav-item>
|
<b-nav-item @click="wallet">{{ $t('navbar.my-account') }}</b-nav-item>
|
||||||
<b-nav-item @click="logout">{{ $t('navbar.logout') }}</b-nav-item>
|
<b-nav-item @click="logout">{{ $t('navbar.logout') }}</b-nav-item>
|
||||||
</b-navbar-nav>
|
</b-navbar-nav>
|
||||||
|
|||||||
@ -95,6 +95,7 @@
|
|||||||
"multiple_creation_text": "Bitte wähle ein oder mehrere Mitglieder aus für die du Schöpfen möchtest.",
|
"multiple_creation_text": "Bitte wähle ein oder mehrere Mitglieder aus für die du Schöpfen möchtest.",
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"navbar": {
|
"navbar": {
|
||||||
|
"automaticContributions": "automatische Beiträge",
|
||||||
"logout": "Abmelden",
|
"logout": "Abmelden",
|
||||||
"multi_creation": "Mehrfachschöpfung",
|
"multi_creation": "Mehrfachschöpfung",
|
||||||
"my-account": "Mein Konto",
|
"my-account": "Mein Konto",
|
||||||
|
|||||||
@ -95,6 +95,7 @@
|
|||||||
"multiple_creation_text": "Please select one or more members for which you would like to perform creations.",
|
"multiple_creation_text": "Please select one or more members for which you would like to perform creations.",
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"navbar": {
|
"navbar": {
|
||||||
|
"automaticContributions": "Automatic Contributions",
|
||||||
"logout": "Logout",
|
"logout": "Logout",
|
||||||
"multi_creation": "Multiple creation",
|
"multi_creation": "Multiple creation",
|
||||||
"my-account": "My Account",
|
"my-account": "My Account",
|
||||||
|
|||||||
58
admin/src/pages/ContributionLinks.spec.js
Normal file
58
admin/src/pages/ContributionLinks.spec.js
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
import { mount } from '@vue/test-utils'
|
||||||
|
import ContributionLinks from './ContributionLinks.vue'
|
||||||
|
import { listContributionLinks } from '@/graphql/listContributionLinks.js'
|
||||||
|
|
||||||
|
const localVue = global.localVue
|
||||||
|
|
||||||
|
const apolloQueryMock = jest.fn().mockResolvedValueOnce({
|
||||||
|
data: {
|
||||||
|
listContributionLinks: {
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
id: 1,
|
||||||
|
name: 'Meditation',
|
||||||
|
memo: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut l',
|
||||||
|
amount: '200',
|
||||||
|
validFrom: '2022-04-01',
|
||||||
|
validTo: '2022-08-01',
|
||||||
|
cycle: 'täglich',
|
||||||
|
maxPerCycle: '3',
|
||||||
|
maxAmountPerMonth: 0,
|
||||||
|
link: 'https://localhost/redeem/CL-1a2345678',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
count: 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
const mocks = {
|
||||||
|
$t: jest.fn((t) => t),
|
||||||
|
$d: jest.fn((d) => d),
|
||||||
|
$apollo: {
|
||||||
|
query: apolloQueryMock,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
describe('ContributionLinks', () => {
|
||||||
|
// eslint-disable-next-line no-unused-vars
|
||||||
|
let wrapper
|
||||||
|
|
||||||
|
const Wrapper = () => {
|
||||||
|
return mount(ContributionLinks, { localVue, mocks })
|
||||||
|
}
|
||||||
|
|
||||||
|
describe('mount', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
wrapper = Wrapper()
|
||||||
|
})
|
||||||
|
|
||||||
|
it('calls listContributionLinks', () => {
|
||||||
|
expect(apolloQueryMock).toBeCalledWith(
|
||||||
|
expect.objectContaining({
|
||||||
|
query: listContributionLinks,
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
45
admin/src/pages/ContributionLinks.vue
Normal file
45
admin/src/pages/ContributionLinks.vue
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<template>
|
||||||
|
<div class="contribution-link">
|
||||||
|
<contribution-link
|
||||||
|
:items="items"
|
||||||
|
:count="count"
|
||||||
|
@get-contribution-links="getContributionLinks"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { listContributionLinks } from '@/graphql/listContributionLinks.js'
|
||||||
|
import ContributionLink from '../components/ContributionLink/ContributionLink.vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'ContributionLinks',
|
||||||
|
components: {
|
||||||
|
ContributionLink,
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
items: [],
|
||||||
|
count: 0,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getContributionLinks() {
|
||||||
|
this.$apollo
|
||||||
|
.query({
|
||||||
|
query: listContributionLinks,
|
||||||
|
fetchPolicy: 'network-only',
|
||||||
|
})
|
||||||
|
.then((result) => {
|
||||||
|
this.count = result.data.listContributionLinks.count
|
||||||
|
this.items = result.data.listContributionLinks.links
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.toastError('listContributionLinks has no result, use default data')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getContributionLinks()
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@ -1,6 +1,5 @@
|
|||||||
import { mount } from '@vue/test-utils'
|
import { mount } from '@vue/test-utils'
|
||||||
import Overview from './Overview.vue'
|
import Overview from './Overview.vue'
|
||||||
import { listContributionLinks } from '@/graphql/listContributionLinks.js'
|
|
||||||
import { communityStatistics } from '@/graphql/communityStatistics.js'
|
import { communityStatistics } from '@/graphql/communityStatistics.js'
|
||||||
import { listUnconfirmedContributions } from '@/graphql/listUnconfirmedContributions.js'
|
import { listUnconfirmedContributions } from '@/graphql/listUnconfirmedContributions.js'
|
||||||
|
|
||||||
@ -36,27 +35,6 @@ const apolloQueryMock = jest
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
.mockResolvedValueOnce({
|
|
||||||
data: {
|
|
||||||
listContributionLinks: {
|
|
||||||
links: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
name: 'Meditation',
|
|
||||||
memo: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut l',
|
|
||||||
amount: '200',
|
|
||||||
validFrom: '2022-04-01',
|
|
||||||
validTo: '2022-08-01',
|
|
||||||
cycle: 'täglich',
|
|
||||||
maxPerCycle: '3',
|
|
||||||
maxAmountPerMonth: 0,
|
|
||||||
link: 'https://localhost/redeem/CL-1a2345678',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
count: 1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
.mockResolvedValue({
|
.mockResolvedValue({
|
||||||
data: {
|
data: {
|
||||||
listUnconfirmedContributions: [
|
listUnconfirmedContributions: [
|
||||||
@ -118,14 +96,6 @@ describe('Overview', () => {
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('calls listContributionLinks', () => {
|
|
||||||
expect(apolloQueryMock).toBeCalledWith(
|
|
||||||
expect.objectContaining({
|
|
||||||
query: listContributionLinks,
|
|
||||||
}),
|
|
||||||
)
|
|
||||||
})
|
|
||||||
|
|
||||||
it('commits three pending creations to store', () => {
|
it('commits three pending creations to store', () => {
|
||||||
expect(storeCommitMock).toBeCalledWith('setOpenCreations', 3)
|
expect(storeCommitMock).toBeCalledWith('setOpenCreations', 3)
|
||||||
})
|
})
|
||||||
|
|||||||
@ -28,31 +28,21 @@
|
|||||||
</b-link>
|
</b-link>
|
||||||
</b-card-text>
|
</b-card-text>
|
||||||
</b-card>
|
</b-card>
|
||||||
<contribution-link
|
|
||||||
:items="items"
|
|
||||||
:count="count"
|
|
||||||
@get-contribution-links="getContributionLinks"
|
|
||||||
/>
|
|
||||||
<community-statistic class="mt-5" v-model="statistics" />
|
<community-statistic class="mt-5" v-model="statistics" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { listContributionLinks } from '@/graphql/listContributionLinks.js'
|
|
||||||
import { communityStatistics } from '@/graphql/communityStatistics.js'
|
import { communityStatistics } from '@/graphql/communityStatistics.js'
|
||||||
import ContributionLink from '../components/ContributionLink.vue'
|
|
||||||
import CommunityStatistic from '../components/CommunityStatistic.vue'
|
import CommunityStatistic from '../components/CommunityStatistic.vue'
|
||||||
import { listUnconfirmedContributions } from '@/graphql/listUnconfirmedContributions.js'
|
import { listUnconfirmedContributions } from '@/graphql/listUnconfirmedContributions.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'overview',
|
name: 'overview',
|
||||||
components: {
|
components: {
|
||||||
ContributionLink,
|
|
||||||
CommunityStatistic,
|
CommunityStatistic,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
items: [],
|
|
||||||
count: 0,
|
|
||||||
statistics: {
|
statistics: {
|
||||||
totalUsers: null,
|
totalUsers: null,
|
||||||
activeUsers: null,
|
activeUsers: null,
|
||||||
@ -75,20 +65,6 @@ export default {
|
|||||||
this.$store.commit('setOpenCreations', result.data.listUnconfirmedContributions.length)
|
this.$store.commit('setOpenCreations', result.data.listUnconfirmedContributions.length)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getContributionLinks() {
|
|
||||||
this.$apollo
|
|
||||||
.query({
|
|
||||||
query: listContributionLinks,
|
|
||||||
fetchPolicy: 'network-only',
|
|
||||||
})
|
|
||||||
.then((result) => {
|
|
||||||
this.count = result.data.listContributionLinks.count
|
|
||||||
this.items = result.data.listContributionLinks.links
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.toastError('listContributionLinks has no result, use default data')
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getCommunityStatistics() {
|
getCommunityStatistics() {
|
||||||
this.$apollo
|
this.$apollo
|
||||||
.query({
|
.query({
|
||||||
@ -113,7 +89,6 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
this.getPendingCreations()
|
this.getPendingCreations()
|
||||||
this.getCommunityStatistics()
|
this.getCommunityStatistics()
|
||||||
this.getContributionLinks()
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -45,7 +45,7 @@ describe('router', () => {
|
|||||||
|
|
||||||
describe('routes', () => {
|
describe('routes', () => {
|
||||||
it('has seven routes defined', () => {
|
it('has seven routes defined', () => {
|
||||||
expect(routes).toHaveLength(7)
|
expect(routes).toHaveLength(8)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('has "/overview" as default', async () => {
|
it('has "/overview" as default', async () => {
|
||||||
@ -81,6 +81,13 @@ describe('router', () => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('contribution-links', () => {
|
||||||
|
it('loads the "ContributionLinks" component', async () => {
|
||||||
|
const component = await routes.find((r) => r.path === '/contribution-links').component()
|
||||||
|
expect(component.default.name).toBe('ContributionLinks')
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
describe('not found page', () => {
|
describe('not found page', () => {
|
||||||
it('renders the "NotFound" component', async () => {
|
it('renders the "NotFound" component', async () => {
|
||||||
const component = await routes.find((r) => r.path === '*').component()
|
const component = await routes.find((r) => r.path === '*').component()
|
||||||
|
|||||||
@ -23,6 +23,10 @@ const routes = [
|
|||||||
path: '/creation-confirm',
|
path: '/creation-confirm',
|
||||||
component: () => import('@/pages/CreationConfirm.vue'),
|
component: () => import('@/pages/CreationConfirm.vue'),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/contribution-links',
|
||||||
|
component: () => import('@/pages/ContributionLinks.vue'),
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '*',
|
path: '*',
|
||||||
component: () => import('@/components/NotFoundPage.vue'),
|
component: () => import('@/components/NotFoundPage.vue'),
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "gradido-backend",
|
"name": "gradido-backend",
|
||||||
"version": "1.13.2",
|
"version": "1.13.3",
|
||||||
"description": "Gradido unified backend providing an API-Service for Gradido Transactions",
|
"description": "Gradido unified backend providing an API-Service for Gradido Transactions",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"repository": "https://github.com/gradido/gradido/backend",
|
"repository": "https://github.com/gradido/gradido/backend",
|
||||||
|
|||||||
@ -63,6 +63,8 @@ export class StatisticsResolver {
|
|||||||
.where('transaction.decay IS NOT NULL')
|
.where('transaction.decay IS NOT NULL')
|
||||||
.getRawOne()
|
.getRawOne()
|
||||||
|
|
||||||
|
await queryRunner.release()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
totalUsers,
|
totalUsers,
|
||||||
activeUsers,
|
activeUsers,
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "gradido-database",
|
"name": "gradido-database",
|
||||||
"version": "1.13.2",
|
"version": "1.13.3",
|
||||||
"description": "Gradido Database Tool to execute database migrations",
|
"description": "Gradido Database Tool to execute database migrations",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"repository": "https://github.com/gradido/gradido/database",
|
"repository": "https://github.com/gradido/gradido/database",
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "bootstrap-vue-gradido-wallet",
|
"name": "bootstrap-vue-gradido-wallet",
|
||||||
"version": "1.13.2",
|
"version": "1.13.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node run/server.js",
|
"start": "node run/server.js",
|
||||||
|
|||||||
@ -33,7 +33,9 @@ $indigo: #5603ad !default;
|
|||||||
$purple: #8965e0 !default;
|
$purple: #8965e0 !default;
|
||||||
$pink: #f3a4b5 !default;
|
$pink: #f3a4b5 !default;
|
||||||
$red: #f5365c !default;
|
$red: #f5365c !default;
|
||||||
$orange: #fb6340 !default;
|
|
||||||
|
// $orange: #fb6340 !default;
|
||||||
|
$orange: #8c0505 !default;
|
||||||
$yellow: #ffd600 !default;
|
$yellow: #ffd600 !default;
|
||||||
$green: #2dce89 !default;
|
$green: #2dce89 !default;
|
||||||
$teal: #11cdef !default;
|
$teal: #11cdef !default;
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "gradido",
|
"name": "gradido",
|
||||||
"version": "1.13.2",
|
"version": "1.13.3",
|
||||||
"description": "Gradido",
|
"description": "Gradido",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"repository": "git@github.com:gradido/gradido.git",
|
"repository": "git@github.com:gradido/gradido.git",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user