mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Rebuild frontend.
This commit is contained in:
parent
9aa743b31b
commit
5944cda03a
@ -34,7 +34,8 @@ class StaticConfigKey
|
|||||||
'firefly.version',
|
'firefly.version',
|
||||||
'firefly.api_version',
|
'firefly.api_version',
|
||||||
'firefly.default_location',
|
'firefly.default_location',
|
||||||
'firefly.account_to_transaction'
|
'firefly.account_to_transaction',
|
||||||
|
'firefly.allowed_opposing_types'
|
||||||
];
|
];
|
||||||
/**
|
/**
|
||||||
* @param string $value
|
* @param string $value
|
||||||
|
@ -26,10 +26,10 @@
|
|||||||
<h3 class="card-title">Title thing</h3>
|
<h3 class="card-title">Title thing</h3>
|
||||||
<div class="card-tools">
|
<div class="card-tools">
|
||||||
<div class="input-group input-group-sm" style="width: 150px;">
|
<div class="input-group input-group-sm" style="width: 150px;">
|
||||||
<input type="text" name="table_search" class="form-control float-right" placeholder="Search">
|
<input class="form-control float-right" name="table_search" placeholder="Search" type="text">
|
||||||
|
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button type="submit" class="btn btn-default">
|
<button class="btn btn-default" type="submit">
|
||||||
<i class="fas fa-search"></i>
|
<i class="fas fa-search"></i>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -43,7 +43,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th scope="col"> </th>
|
<th scope="col"> </th>
|
||||||
<th scope="col">{{ $t('list.name') }}</th>
|
<th scope="col">{{ $t('list.name') }}</th>
|
||||||
<th scope="col" v-if="'asset' === $props.accountTypes">{{ $t('list.role') }}</th>
|
<th v-if="'asset' === $props.accountTypes" scope="col">{{ $t('list.role') }}</th>
|
||||||
<th scope="col">{{ $t('list.iban') }}</th>
|
<th scope="col">{{ $t('list.iban') }}</th>
|
||||||
<th scope="col" style="text-align: right;">{{ $t('list.currentBalance') }}</th>
|
<th scope="col" style="text-align: right;">{{ $t('list.currentBalance') }}</th>
|
||||||
<th scope="col">{{ $t('list.balanceDiff') }}</th>
|
<th scope="col">{{ $t('list.balanceDiff') }}</th>
|
||||||
|
@ -26,8 +26,8 @@
|
|||||||
|
|
||||||
<td style="vertical-align: middle">
|
<td style="vertical-align: middle">
|
||||||
<div class="progress progress active">
|
<div class="progress progress active">
|
||||||
<div class="progress-bar bg-success progress-bar-striped" role="progressbar"
|
<div :aria-valuenow="budgetLimit.pctGreen" :style="'width: '+ budgetLimit.pctGreen + '%;'"
|
||||||
:aria-valuenow="budgetLimit.pctGreen" aria-valuemin="0" aria-valuemax="100" :style="'width: '+ budgetLimit.pctGreen + '%;'">
|
aria-valuemax="100" aria-valuemin="0" class="progress-bar bg-success progress-bar-striped" role="progressbar">
|
||||||
<span v-if="budgetLimit.pctGreen > 35">
|
<span v-if="budgetLimit.pctGreen > 35">
|
||||||
Spent
|
Spent
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
||||||
@ -38,8 +38,8 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="progress-bar bg-warning progress-bar-striped" role="progressbar"
|
<div :aria-valuenow="budgetLimit.pctOrange" :style="'width: '+ budgetLimit.pctOrange + '%;'"
|
||||||
:aria-valuenow="budgetLimit.pctOrange" aria-valuemin="0" aria-valuemax="100" :style="'width: '+ budgetLimit.pctOrange + '%;'">
|
aria-valuemax="100" aria-valuemin="0" class="progress-bar bg-warning progress-bar-striped" role="progressbar">
|
||||||
<span v-if="budgetLimit.pctRed <= 50 && budgetLimit.pctOrange > 35">
|
<span v-if="budgetLimit.pctRed <= 50 && budgetLimit.pctOrange > 35">
|
||||||
Spent
|
Spent
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
||||||
@ -48,8 +48,8 @@
|
|||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="progress-bar bg-danger progress-bar-striped" role="progressbar"
|
<div :aria-valuenow="budgetLimit.pctRed" :style="'width: '+ budgetLimit.pctRed + '%;'"
|
||||||
:aria-valuenow="budgetLimit.pctRed" aria-valuemin="0" aria-valuemax="100" :style="'width: '+ budgetLimit.pctRed + '%;'">
|
aria-valuemax="100" aria-valuemin="0" class="progress-bar bg-danger progress-bar-striped" role="progressbar">
|
||||||
<span v-if="budgetLimit.pctOrange <= 50 && budgetLimit.pctRed > 35" class="text-muted">
|
<span v-if="budgetLimit.pctOrange <= 50 && budgetLimit.pctRed > 35" class="text-muted">
|
||||||
Spent
|
Spent
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(budgetLimit.spent) }}
|
||||||
@ -75,8 +75,8 @@
|
|||||||
</small>
|
</small>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td style="width:10%;" class="align-middle d-none d-lg-table-cell">
|
<td class="align-middle d-none d-lg-table-cell" style="width:10%;">
|
||||||
<span class="text-success" v-if="parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent) > 0">
|
<span v-if="parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent) > 0" class="text-success">
|
||||||
{{
|
{{
|
||||||
Intl.NumberFormat(locale, {
|
Intl.NumberFormat(locale, {
|
||||||
style: 'currency',
|
style: 'currency',
|
||||||
@ -84,10 +84,10 @@
|
|||||||
}).format(parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent))
|
}).format(parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent))
|
||||||
}}
|
}}
|
||||||
</span>
|
</span>
|
||||||
<span class="text-muted" v-if="0.0 === parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent)">
|
<span v-if="0.0 === parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent)" class="text-muted">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(0) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: budgetLimit.currency_code}).format(0) }}
|
||||||
</span>
|
</span>
|
||||||
<span class="text-danger" v-if="parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent) < 0">
|
<span v-if="parseFloat(budgetLimit.amount) + parseFloat(budgetLimit.spent) < 0" class="text-danger">
|
||||||
{{
|
{{
|
||||||
Intl.NumberFormat(locale, {
|
Intl.NumberFormat(locale, {
|
||||||
style: 'currency',
|
style: 'currency',
|
||||||
|
@ -26,13 +26,13 @@
|
|||||||
<div class="card-body table-responsive p-0">
|
<div class="card-body table-responsive p-0">
|
||||||
<table class="table table-sm">
|
<table class="table table-sm">
|
||||||
<tbody>
|
<tbody>
|
||||||
<BudgetLimitRow v-bind:key="key" v-for="(budgetLimit, key) in budgetLimits" :budgetLimit="budgetLimit" />
|
<BudgetLimitRow v-for="(budgetLimit, key) in budgetLimits" v-bind:key="key" :budgetLimit="budgetLimit"/>
|
||||||
<BudgetRow v-bind:key="key" v-for="(budget, key) in budgets" :budget="budget" />
|
<BudgetRow v-for="(budget, key) in budgets" v-bind:key="key" :budget="budget"/>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./budgets" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_budgets') }}</a>
|
<a class="btn btn-default button-sm" href="./budgets"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_budgets') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -40,6 +40,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import BudgetLimitRow from "./BudgetLimitRow";
|
import BudgetLimitRow from "./BudgetLimitRow";
|
||||||
import BudgetRow from "./BudgetRow";
|
import BudgetRow from "./BudgetRow";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "BudgetListGroup",
|
name: "BudgetListGroup",
|
||||||
components: {BudgetLimitRow, BudgetRow},
|
components: {BudgetLimitRow, BudgetRow},
|
||||||
|
@ -30,41 +30,41 @@
|
|||||||
</div>
|
</div>
|
||||||
<date-picker
|
<date-picker
|
||||||
v-model="range"
|
v-model="range"
|
||||||
mode="date"
|
|
||||||
:rows="2"
|
:rows="2"
|
||||||
is-range
|
is-range
|
||||||
|
mode="date"
|
||||||
>
|
>
|
||||||
<template v-slot="{ inputValue, inputEvents, isDragging, togglePopover }">
|
<template v-slot="{ inputValue, inputEvents, isDragging, togglePopover }">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="btn-group btn-group-sm d-flex">
|
<div class="btn-group btn-group-sm d-flex">
|
||||||
<button
|
<button
|
||||||
class="btn btn-secondary btn-sm" :title="$t('firefly.custom_period')"
|
:title="$t('firefly.custom_period')" class="btn btn-secondary btn-sm"
|
||||||
@click="togglePopover({ placement: 'auto-start', positionFixed: true })"
|
@click="togglePopover({ placement: 'auto-start', positionFixed: true })"
|
||||||
><i class="fas fa-calendar-alt"></i></button>
|
><i class="fas fa-calendar-alt"></i></button>
|
||||||
<button @click="resetDate"
|
<button :title="$t('firefly.reset_to_current')"
|
||||||
class="btn btn-secondary"
|
class="btn btn-secondary"
|
||||||
:title="$t('firefly.reset_to_current')"
|
@click="resetDate"
|
||||||
><i class="fas fa-history"></i></button>
|
><i class="fas fa-history"></i></button>
|
||||||
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true"
|
<button id="dropdownMenuButton" :title="$t('firefly.select_period')" aria-expanded="false" aria-haspopup="true" class="btn btn-secondary dropdown-toggle"
|
||||||
:title="$t('firefly.select_period')"
|
data-toggle="dropdown"
|
||||||
aria-expanded="false">
|
type="button">
|
||||||
<i class="fas fa-list"></i>
|
<i class="fas fa-list"></i>
|
||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
<div aria-labelledby="dropdownMenuButton" class="dropdown-menu">
|
||||||
<a v-for="period in periods" class="dropdown-item" href="#" @click="customDate(period.start, period.end)">{{ period.title }}</a>
|
<a v-for="period in periods" class="dropdown-item" href="#" @click="customDate(period.start, period.end)">{{ period.title }}</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<input type="hidden"
|
<input v-on="inputEvents.start"
|
||||||
:class="isDragging ? 'text-gray-600' : 'text-gray-900'"
|
:class="isDragging ? 'text-gray-600' : 'text-gray-900'"
|
||||||
:value="inputValue.start"
|
:value="inputValue.start"
|
||||||
v-on="inputEvents.start"
|
type="hidden"
|
||||||
/>
|
/>
|
||||||
<input type="hidden"
|
<input v-on="inputEvents.end"
|
||||||
:class="isDragging ? 'text-gray-600' : 'text-gray-900'"
|
:class="isDragging ? 'text-gray-600' : 'text-gray-900'"
|
||||||
:value="inputValue.end"
|
:value="inputValue.end"
|
||||||
v-on="inputEvents.end"
|
type="hidden"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div v-if="!loading">
|
<div v-if="!loading">
|
||||||
<MainAccountChart :chart-data="dataCollection" :options="chartOptions" v-if="!loading && !error"/>
|
<MainAccountChart v-if="!loading && !error" :chart-data="dataCollection" :options="chartOptions"/>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="loading && !error" class="text-center">
|
<div v-if="loading && !error" class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
@ -35,7 +35,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./accounts/asset" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_asset_accounts') }}</a>
|
<a class="btn btn-default button-sm" href="./accounts/asset"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_asset_accounts') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<!--
|
<!--
|
||||||
- MainAccountChart.vue
|
- MainAccountChart.vue
|
||||||
- Copyright (c) 2020 james@firefly-iii.org
|
- Copyright (c) 2020 james@firefly-iii.org
|
||||||
@ -22,6 +21,7 @@
|
|||||||
<script>
|
<script>
|
||||||
|
|
||||||
import {Line, mixins} from 'vue-chartjs'
|
import {Line, mixins} from 'vue-chartjs'
|
||||||
|
|
||||||
const {reactiveProp} = mixins
|
const {reactiveProp} = mixins
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- row if loading -->
|
<!-- row if loading -->
|
||||||
<div class="row" v-if="loading && !error">
|
<div v-if="loading && !error" class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -34,7 +34,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- row if error -->
|
<!-- row if error -->
|
||||||
<div class="row" v-if="error">
|
<div v-if="error" class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -47,10 +47,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- row if normal -->
|
<!-- row if normal -->
|
||||||
<div class="row" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="row">
|
||||||
<div
|
<div
|
||||||
v-bind:class="{ 'col-lg-12': 1 === accounts.length, 'col-lg-6': 2 === accounts.length, 'col-lg-4': accounts.length > 2 }"
|
v-for="account in accounts"
|
||||||
v-for="account in accounts">
|
v-bind:class="{ 'col-lg-12': 1 === accounts.length, 'col-lg-6': 2 === accounts.length, 'col-lg-4': accounts.length > 2 }">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h3 class="card-title"><a :href="account.url">{{ account.title }}</a></h3>
|
<h3 class="card-title"><a :href="account.url">{{ account.title }}</a></h3>
|
||||||
@ -62,9 +62,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body table-responsive p-0">
|
<div class="card-body table-responsive p-0">
|
||||||
<div>
|
<div>
|
||||||
<transaction-list-large :transactions="account.transactions" v-if="1===accounts.length" :account_id="account.id"/>
|
<transaction-list-large v-if="1===accounts.length" :account_id="account.id" :transactions="account.transactions"/>
|
||||||
<transaction-list-medium :transactions="account.transactions" v-if="2===accounts.length" :account_id="account.id"/>
|
<transaction-list-medium v-if="2===accounts.length" :account_id="account.id" :transactions="account.transactions"/>
|
||||||
<transaction-list-small :transactions="account.transactions" v-if="accounts.length > 2" :account_id="account.id"/>
|
<transaction-list-small v-if="accounts.length > 2" :account_id="account.id" :transactions="account.transactions"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -24,19 +24,19 @@
|
|||||||
<h3 class="card-title">{{ $t('firefly.bills') }}</h3>
|
<h3 class="card-title">{{ $t('firefly.bills') }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if loading -->
|
<!-- body if loading -->
|
||||||
<div class="card-body" v-if="loading && !error">
|
<div v-if="loading && !error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if error -->
|
<!-- body if error -->
|
||||||
<div class="card-body" v-if="error">
|
<div v-if="error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-exclamation-triangle text-danger"></i>
|
<i class="fas fa-exclamation-triangle text-danger"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if normal -->
|
<!-- body if normal -->
|
||||||
<div class="card-body table-responsive p-0" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="card-body table-responsive p-0">
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
<caption style="display:none;">{{ $t('firefly.bills') }}</caption>
|
<caption style="display:none;">{{ $t('firefly.bills') }}</caption>
|
||||||
<thead>
|
<thead>
|
||||||
@ -70,7 +70,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./bills" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_bills') }}</a>
|
<a class="btn btn-default button-sm" href="./bills"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_bills') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -21,37 +21,37 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- daily budgets (will be the exception, I expect) -->
|
<!-- daily budgets (will be the exception, I expect) -->
|
||||||
<div class="row" v-if="!loading">
|
<div v-if="!loading" class="row">
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.daily.length > 0">
|
<div v-if="budgetLimits.daily.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.daily_budgets')" :budgetLimits=budgetLimits.daily
|
<BudgetListGroup :budgetLimits=budgetLimits.daily :title="$t('firefly.daily_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.weekly.length > 0">
|
<div v-if="budgetLimits.weekly.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.weekly_budgets')" :budgetLimits=budgetLimits.weekly
|
<BudgetListGroup :budgetLimits=budgetLimits.weekly :title="$t('firefly.weekly_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.monthly.length > 0">
|
<div v-if="budgetLimits.monthly.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.monthly_budgets')" :budgetLimits=budgetLimits.monthly
|
<BudgetListGroup :budgetLimits=budgetLimits.monthly :title="$t('firefly.monthly_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.quarterly.length > 0">
|
<div v-if="budgetLimits.quarterly.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.quarterly_budgets')" :budgetLimits=budgetLimits.quarterly
|
<BudgetListGroup :budgetLimits=budgetLimits.quarterly :title="$t('firefly.quarterly_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.half_year.length > 0">
|
<div v-if="budgetLimits.half_year.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.half_year_budgets')" :budgetLimits=budgetLimits.half_year
|
<BudgetListGroup :budgetLimits=budgetLimits.half_year :title="$t('firefly.half_year_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.yearly.length > 0">
|
<div v-if="budgetLimits.yearly.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.yearly_budgets')" :budgetLimits=budgetLimits.yearly
|
<BudgetListGroup :budgetLimits=budgetLimits.yearly :title="$t('firefly.yearly_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12" v-if="budgetLimits.other.length > 0 || rawBudgets.length > 0">
|
<div v-if="budgetLimits.other.length > 0 || rawBudgets.length > 0" class="col-xl-6 col-lg-12 col-md-12 col-sm-12 col-xs-12">
|
||||||
<BudgetListGroup :title="$t('firefly.other_budgets')" :budgetLimits=budgetLimits.other :budgets="rawBudgets"
|
<BudgetListGroup :budgetLimits=budgetLimits.other :budgets="rawBudgets" :title="$t('firefly.other_budgets')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row" v-if="loading && !error">
|
<div v-if="loading && !error" class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
@ -24,19 +24,19 @@
|
|||||||
<h3 class="card-title">{{ $t('firefly.categories') }}</h3>
|
<h3 class="card-title">{{ $t('firefly.categories') }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if loading -->
|
<!-- body if loading -->
|
||||||
<div class="card-body" v-if="loading && !error">
|
<div v-if="loading && !error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if error -->
|
<!-- body if error -->
|
||||||
<div class="card-body" v-if="error">
|
<div v-if="error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-exclamation-triangle text-danger"></i>
|
<i class="fas fa-exclamation-triangle text-danger"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if normal -->
|
<!-- body if normal -->
|
||||||
<div class="card-body table-responsive p-0" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="card-body table-responsive p-0">
|
||||||
<table class="table table-sm">
|
<table class="table table-sm">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="category in sortedList">
|
<tr v-for="category in sortedList">
|
||||||
@ -45,10 +45,10 @@
|
|||||||
</td>
|
</td>
|
||||||
<td class="align-middle">
|
<td class="align-middle">
|
||||||
<!-- SPENT -->
|
<!-- SPENT -->
|
||||||
<div class="progress" v-if="category.spentPct > 0">
|
<div v-if="category.spentPct > 0" class="progress">
|
||||||
<div class="progress-bar progress-bar-striped bg-danger" role="progressbar" :aria-valuenow="category.spentPct"
|
<div :aria-valuenow="category.spentPct" :style="{ width: category.spentPct + '%'}" aria-valuemax="100"
|
||||||
:style="{ width: category.spentPct + '%'}" aria-valuemin="0"
|
aria-valuemin="0" class="progress-bar progress-bar-striped bg-danger"
|
||||||
aria-valuemax="100">
|
role="progressbar">
|
||||||
<span v-if="category.spentPct > 20">
|
<span v-if="category.spentPct > 20">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.spent) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.spent) }}
|
||||||
</span>
|
</span>
|
||||||
@ -59,13 +59,13 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- EARNED -->
|
<!-- EARNED -->
|
||||||
<div class="progress justify-content-end" v-if="category.earnedPct > 0" title="hello2">
|
<div v-if="category.earnedPct > 0" class="progress justify-content-end" title="hello2">
|
||||||
<span v-if="category.earnedPct <= 20">
|
<span v-if="category.earnedPct <= 20">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.earned) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.earned) }}
|
||||||
</span>
|
</span>
|
||||||
<div class="progress-bar progress-bar-striped bg-success" role="progressbar" :aria-valuenow="category.earnedPct"
|
<div :aria-valuenow="category.earnedPct" :style="{ width: category.earnedPct + '%'}" aria-valuemax="100"
|
||||||
:style="{ width: category.earnedPct + '%'}" aria-valuemin="0"
|
aria-valuemin="0" class="progress-bar progress-bar-striped bg-success"
|
||||||
aria-valuemax="100" title="hello">
|
role="progressbar" title="hello">
|
||||||
<span v-if="category.earnedPct > 20">
|
<span v-if="category.earnedPct > 20">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.earned) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: category.currency_code}).format(category.earned) }}
|
||||||
</span>
|
</span>
|
||||||
|
@ -24,28 +24,28 @@
|
|||||||
<h3 class="card-title">{{ $t('firefly.revenue_accounts') }}</h3>
|
<h3 class="card-title">{{ $t('firefly.revenue_accounts') }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if loading -->
|
<!-- body if loading -->
|
||||||
<div class="card-body" v-if="loading && !error">
|
<div v-if="loading && !error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if error -->
|
<!-- body if error -->
|
||||||
<div class="card-body" v-if="error">
|
<div v-if="error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-exclamation-triangle text-danger"></i>
|
<i class="fas fa-exclamation-triangle text-danger"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if normal -->
|
<!-- body if normal -->
|
||||||
<div class="card-body table-responsive p-0" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="card-body table-responsive p-0">
|
||||||
<table class="table table-sm">
|
<table class="table table-sm">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="entry in income">
|
<tr v-for="entry in income">
|
||||||
<td style="width:20%;"><a :href="'./accounts/show/' + entry.id">{{ entry.name }}</a></td>
|
<td style="width:20%;"><a :href="'./accounts/show/' + entry.id">{{ entry.name }}</a></td>
|
||||||
<td class="align-middle">
|
<td class="align-middle">
|
||||||
<div class="progress" v-if="entry.pct > 0">
|
<div v-if="entry.pct > 0" class="progress">
|
||||||
<div class="progress-bar progress-bar-striped bg-success" role="progressbar" :aria-valuenow="entry.pct"
|
<div :aria-valuenow="entry.pct" :style="{ width: entry.pct + '%'}" aria-valuemax="100"
|
||||||
:style="{ width: entry.pct + '%'}" aria-valuemin="0"
|
aria-valuemin="0" class="progress-bar progress-bar-striped bg-success"
|
||||||
aria-valuemax="100">
|
role="progressbar">
|
||||||
<span v-if="entry.pct > 20">
|
<span v-if="entry.pct > 20">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: entry.currency_code}).format(entry.difference_float) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: entry.currency_code}).format(entry.difference_float) }}
|
||||||
</span>
|
</span>
|
||||||
@ -60,7 +60,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./transactions/deposit" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_deposits') }}</a>
|
<a class="btn btn-default button-sm" href="./transactions/deposit"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_deposits') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -24,28 +24,28 @@
|
|||||||
<h3 class="card-title">{{ $t('firefly.expense_accounts') }}</h3>
|
<h3 class="card-title">{{ $t('firefly.expense_accounts') }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if loading -->
|
<!-- body if loading -->
|
||||||
<div class="card-body" v-if="loading && !error">
|
<div v-if="loading && !error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if error -->
|
<!-- body if error -->
|
||||||
<div class="card-body" v-if="error">
|
<div v-if="error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-exclamation-triangle text-danger"></i>
|
<i class="fas fa-exclamation-triangle text-danger"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if normal -->
|
<!-- body if normal -->
|
||||||
<div class="card-body table-responsive p-0" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="card-body table-responsive p-0">
|
||||||
<table class="table table-sm">
|
<table class="table table-sm">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="entry in expenses">
|
<tr v-for="entry in expenses">
|
||||||
<td style="width:20%;"><a :href="'./accounts/show/' + entry.id">{{ entry.name }}</a></td>
|
<td style="width:20%;"><a :href="'./accounts/show/' + entry.id">{{ entry.name }}</a></td>
|
||||||
<td class="align-middle">
|
<td class="align-middle">
|
||||||
<div class="progress" v-if="entry.pct > 0">
|
<div v-if="entry.pct > 0" class="progress">
|
||||||
<div class="progress-bar progress-bar-striped bg-danger" role="progressbar" :aria-valuenow="entry.pct"
|
<div :aria-valuenow="entry.pct" :style="{ width: entry.pct + '%'}" aria-valuemax="100"
|
||||||
:style="{ width: entry.pct + '%'}" aria-valuemin="0"
|
aria-valuemin="0" class="progress-bar progress-bar-striped bg-danger"
|
||||||
aria-valuemax="100">
|
role="progressbar">
|
||||||
<span v-if="entry.pct > 20">
|
<span v-if="entry.pct > 20">
|
||||||
{{ Intl.NumberFormat(locale, {style: 'currency', currency: entry.currency_code}).format(entry.difference_float) }}
|
{{ Intl.NumberFormat(locale, {style: 'currency', currency: entry.currency_code}).format(entry.difference_float) }}
|
||||||
</span>
|
</span>
|
||||||
@ -60,7 +60,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./transactions/withdrawal" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_withdrawals') }}</a>
|
<a class="btn btn-default button-sm" href="./transactions/withdrawal"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_withdrawals') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -25,19 +25,19 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- body if loading -->
|
<!-- body if loading -->
|
||||||
<div class="card-body" v-if="loading && !error">
|
<div v-if="loading && !error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-spinner fa-spin"></i>
|
<i class="fas fa-spinner fa-spin"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if error -->
|
<!-- body if error -->
|
||||||
<div class="card-body" v-if="error">
|
<div v-if="error" class="card-body">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<i class="fas fa-exclamation-triangle text-danger"></i>
|
<i class="fas fa-exclamation-triangle text-danger"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- body if normal -->
|
<!-- body if normal -->
|
||||||
<div class="card-body table-responsive p-0" v-if="!loading && !error">
|
<div v-if="!loading && !error" class="card-body table-responsive p-0">
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
<caption style="display:none;">{{ $t('firefly.piggy_banks') }}</caption>
|
<caption style="display:none;">{{ $t('firefly.piggy_banks') }}</caption>
|
||||||
<thead>
|
<thead>
|
||||||
@ -58,9 +58,9 @@
|
|||||||
<td>
|
<td>
|
||||||
<div class="progress-group">
|
<div class="progress-group">
|
||||||
<div class="progress progress-sm">
|
<div class="progress progress-sm">
|
||||||
<div class="progress-bar progress-bar-striped primary" v-if="piggy.attributes.pct < 100" :style="{'width': piggy.attributes.pct + '%'}"></div>
|
<div v-if="piggy.attributes.pct < 100" :style="{'width': piggy.attributes.pct + '%'}" class="progress-bar progress-bar-striped primary"></div>
|
||||||
<div class="progress-bar progress-bar-striped bg-success" v-if="100 === piggy.attributes.pct"
|
<div v-if="100 === piggy.attributes.pct" :style="{'width': piggy.attributes.pct + '%'}"
|
||||||
:style="{'width': piggy.attributes.pct + '%'}"></div>
|
class="progress-bar progress-bar-striped bg-success"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<span class="text-success">
|
<span class="text-success">
|
||||||
@ -81,7 +81,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer">
|
<div class="card-footer">
|
||||||
<a href="./piggy-banks" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_piggies') }}</a>
|
<a class="btn btn-default button-sm" href="./piggy-banks"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_piggies') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -25,11 +25,11 @@
|
|||||||
<span class="info-box-icon"><i class="far fa-bookmark text-info"></i></span>
|
<span class="info-box-icon"><i class="far fa-bookmark text-info"></i></span>
|
||||||
|
|
||||||
<div class="info-box-content">
|
<div class="info-box-content">
|
||||||
<span class="info-box-text" v-if="!loading && !error">{{ $t("firefly.balance") }}</span>
|
<span v-if="!loading && !error" class="info-box-text">{{ $t("firefly.balance") }}</span>
|
||||||
<span class="info-box-text" v-if="loading && !error"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="loading && !error" class="info-box-text"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
<span class="info-box-text" v-if="error"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
<span v-if="error" class="info-box-text"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
||||||
<!-- balance in preferred currency -->
|
<!-- balance in preferred currency -->
|
||||||
<span class="info-box-number" v-for="balance in prefCurrencyBalances" :title="balance.sub_title">{{ balance.value_parsed }}</span>
|
<span v-for="balance in prefCurrencyBalances" :title="balance.sub_title" class="info-box-number">{{ balance.value_parsed }}</span>
|
||||||
|
|
||||||
<div class="progress bg-info">
|
<div class="progress bg-info">
|
||||||
<div class="progress-bar" style="width: 0"></div>
|
<div class="progress-bar" style="width: 0"></div>
|
||||||
@ -50,11 +50,11 @@
|
|||||||
<span class="info-box-icon"><i class="far fa-calendar-alt text-teal"></i></span>
|
<span class="info-box-icon"><i class="far fa-calendar-alt text-teal"></i></span>
|
||||||
|
|
||||||
<div class="info-box-content">
|
<div class="info-box-content">
|
||||||
<span class="info-box-text" v-if="!loading && !error">{{ $t('firefly.bills_to_pay') }}</span>
|
<span v-if="!loading && !error" class="info-box-text">{{ $t('firefly.bills_to_pay') }}</span>
|
||||||
<span class="info-box-text" v-if="loading && !error"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="loading && !error" class="info-box-text"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
<span class="info-box-text" v-if="error"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
<span v-if="error" class="info-box-text"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
||||||
<!-- bills unpaid, in preferred currency. -->
|
<!-- bills unpaid, in preferred currency. -->
|
||||||
<span class="info-box-number" v-for="balance in prefBillsUnpaid">{{ balance.value_parsed }}</span>
|
<span v-for="balance in prefBillsUnpaid" class="info-box-number">{{ balance.value_parsed }}</span>
|
||||||
|
|
||||||
<div class="progress bg-teal">
|
<div class="progress bg-teal">
|
||||||
<div class="progress-bar" style="width: 0"></div>
|
<div class="progress-bar" style="width: 0"></div>
|
||||||
@ -75,11 +75,11 @@
|
|||||||
<span class="info-box-icon"><i class="fas fa-money-bill text-success"></i></span>
|
<span class="info-box-icon"><i class="fas fa-money-bill text-success"></i></span>
|
||||||
|
|
||||||
<div class="info-box-content">
|
<div class="info-box-content">
|
||||||
<span class="info-box-text" v-if="!loading && !error">{{ $t('firefly.left_to_spend') }}</span>
|
<span v-if="!loading && !error" class="info-box-text">{{ $t('firefly.left_to_spend') }}</span>
|
||||||
<span class="info-box-text" v-if="loading && !error"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="loading && !error" class="info-box-text"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
<span class="info-box-text" v-if="error"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
<span v-if="error" class="info-box-text"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
||||||
<!-- left to spend in preferred currency -->
|
<!-- left to spend in preferred currency -->
|
||||||
<span class="info-box-number" v-for="left in prefLeftToSpend" :title="left.sub_title">{{ left.value_parsed }}</span>
|
<span v-for="left in prefLeftToSpend" :title="left.sub_title" class="info-box-number">{{ left.value_parsed }}</span>
|
||||||
|
|
||||||
<div class="progress bg-success">
|
<div class="progress bg-success">
|
||||||
<div class="progress-bar" style="width: 0"></div>
|
<div class="progress-bar" style="width: 0"></div>
|
||||||
@ -101,10 +101,10 @@
|
|||||||
<span class="info-box-icon"><i class="fas fa-money-bill text-success"></i></span>
|
<span class="info-box-icon"><i class="fas fa-money-bill text-success"></i></span>
|
||||||
|
|
||||||
<div class="info-box-content">
|
<div class="info-box-content">
|
||||||
<span class="info-box-text" v-if="!loading && !error">{{ $t('firefly.net_worth') }}</span>
|
<span v-if="!loading && !error" class="info-box-text">{{ $t('firefly.net_worth') }}</span>
|
||||||
<span class="info-box-text" v-if="loading && !error"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="loading && !error" class="info-box-text"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
<span class="info-box-text" v-if="error"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
<span v-if="error" class="info-box-text"><i class="fas fa-exclamation-triangle text-danger"></i></span>
|
||||||
<span class="info-box-number" v-for="nw in prefNetWorth" :title="nw.sub_title">{{ nw.value_parsed }}</span>
|
<span v-for="nw in prefNetWorth" :title="nw.sub_title" class="info-box-number">{{ nw.value_parsed }}</span>
|
||||||
|
|
||||||
<div class="progress bg-success">
|
<div class="progress bg-success">
|
||||||
<div class="progress-bar" style="width: 0"></div>
|
<div class="progress-bar" style="width: 0"></div>
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<div class="card card-primary">
|
<div class="card card-primary">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4 class="card-title">
|
<h4 class="card-title">
|
||||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
|
<a data-parent="#accordion" data-toggle="collapse" href="#collapseOne">
|
||||||
Create new accounts
|
Create new accounts
|
||||||
</a>
|
</a>
|
||||||
</h4>
|
</h4>
|
||||||
@ -52,7 +52,7 @@
|
|||||||
<div class="card card-secondary">
|
<div class="card card-secondary">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4 class="card-title">
|
<h4 class="card-title">
|
||||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
|
<a data-parent="#accordion" data-toggle="collapse" href="#collapseTwo">
|
||||||
Collapsible Group Danger
|
Collapsible Group Danger
|
||||||
</a>
|
</a>
|
||||||
</h4>
|
</h4>
|
||||||
@ -76,7 +76,7 @@
|
|||||||
<div class="card card-secondary">
|
<div class="card card-secondary">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4 class="card-title">
|
<h4 class="card-title">
|
||||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
|
<a data-parent="#accordion" data-toggle="collapse" href="#collapseThree">
|
||||||
Collapsible Group Success
|
Collapsible Group Success
|
||||||
</a>
|
</a>
|
||||||
</h4>
|
</h4>
|
||||||
|
@ -18,8 +18,8 @@
|
|||||||
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
- along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div :class="'alert alert-' + type + ' alert-dismissible'" v-if="message.length > 0">
|
<div v-if="message.length > 0" :class="'alert alert-' + type + ' alert-dismissible'">
|
||||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
<button aria-hidden="true" class="close" data-dismiss="alert" type="button">×</button>
|
||||||
<h5>
|
<h5>
|
||||||
<i v-if="'danger' === type" class="icon fas fa-ban"></i>
|
<i v-if="'danger' === type" class="icon fas fa-ban"></i>
|
||||||
<i v-if="'success' === type" class="icon fas fa-thumbs-up"></i>
|
<i v-if="'success' === type" class="icon fas fa-thumbs-up"></i>
|
||||||
|
@ -23,14 +23,8 @@ const lodashClonedeep = require('lodash.clonedeep');
|
|||||||
// initial state
|
// initial state
|
||||||
const state = () => ({
|
const state = () => ({
|
||||||
transactionType: 'any',
|
transactionType: 'any',
|
||||||
date: new Date,
|
|
||||||
time: new Date,
|
|
||||||
groupTitle: '',
|
groupTitle: '',
|
||||||
transactions: [],
|
transactions: [],
|
||||||
allowedOpposingTypes: {},
|
|
||||||
accountToTransaction: {},
|
|
||||||
sourceAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Revenue account'],
|
|
||||||
destinationAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Expense account'],
|
|
||||||
customDateFields: {
|
customDateFields: {
|
||||||
interest_date: false,
|
interest_date: false,
|
||||||
book_date: false,
|
book_date: false,
|
||||||
@ -147,12 +141,6 @@ const getters = {
|
|||||||
transactions: state => {
|
transactions: state => {
|
||||||
return state.transactions;
|
return state.transactions;
|
||||||
},
|
},
|
||||||
date: state => {
|
|
||||||
return state.date;
|
|
||||||
},
|
|
||||||
time: state => {
|
|
||||||
return state.time;
|
|
||||||
},
|
|
||||||
groupTitle: state => {
|
groupTitle: state => {
|
||||||
return state.groupTitle;
|
return state.groupTitle;
|
||||||
},
|
},
|
||||||
@ -190,9 +178,7 @@ const getters = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// actions
|
// actions
|
||||||
const actions = {
|
const actions = {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// mutations
|
// mutations
|
||||||
const mutations = {
|
const mutations = {
|
||||||
@ -208,12 +194,6 @@ const mutations = {
|
|||||||
resetTransactions(state) {
|
resetTransactions(state) {
|
||||||
state.transactions = [];
|
state.transactions = [];
|
||||||
},
|
},
|
||||||
setDate(state, payload) {
|
|
||||||
state.date = payload.date;
|
|
||||||
},
|
|
||||||
setTime(state, payload) {
|
|
||||||
state.time = payload.time;
|
|
||||||
},
|
|
||||||
setGroupTitle(state, payload) {
|
setGroupTitle(state, payload) {
|
||||||
state.groupTitle = payload.groupTitle;
|
state.groupTitle = payload.groupTitle;
|
||||||
},
|
},
|
||||||
|
@ -23,16 +23,13 @@ const state = () => ({});
|
|||||||
|
|
||||||
|
|
||||||
// getters
|
// getters
|
||||||
const getters = {
|
const getters = {};
|
||||||
};
|
|
||||||
|
|
||||||
// actions
|
// actions
|
||||||
const actions = {
|
const actions = {};
|
||||||
};
|
|
||||||
|
|
||||||
// mutations
|
// mutations
|
||||||
const mutations = {
|
const mutations = {};
|
||||||
};
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
namespaced: true,
|
namespaced: true,
|
||||||
|
@ -27,11 +27,17 @@
|
|||||||
<SplitForm
|
<SplitForm
|
||||||
v-for="(transaction, index) in this.transactions"
|
v-for="(transaction, index) in this.transactions"
|
||||||
v-bind:key="index"
|
v-bind:key="index"
|
||||||
:transaction="transaction"
|
:allowed-opposing-types="allowedOpposingTypes"
|
||||||
:index="index"
|
|
||||||
:count="transactions.length"
|
:count="transactions.length"
|
||||||
:custom-fields="customFields"
|
:custom-fields="customFields"
|
||||||
|
:date="date"
|
||||||
|
:destination-allowed-types="destinationAllowedTypes"
|
||||||
|
:index="index"
|
||||||
|
:source-allowed-types="sourceAllowedTypes"
|
||||||
:submitted-transaction="submittedTransaction"
|
:submitted-transaction="submittedTransaction"
|
||||||
|
:time="time"
|
||||||
|
:transaction="transaction"
|
||||||
|
:transaction-type="transactionType"
|
||||||
v-on:uploaded-attachments="uploadedAttachment($event)"
|
v-on:uploaded-attachments="uploadedAttachment($event)"
|
||||||
v-on:set-marker-location="storeLocation($event)"
|
v-on:set-marker-location="storeLocation($event)"
|
||||||
v-on:set-account="storeAccountValue($event)"
|
v-on:set-account="storeAccountValue($event)"
|
||||||
@ -40,13 +46,16 @@
|
|||||||
v-on:set-time="storeTime($event)"
|
v-on:set-time="storeTime($event)"
|
||||||
v-on:set-field="storeField($event)"
|
v-on:set-field="storeField($event)"
|
||||||
v-on:remove-transaction="removeTransaction($event)"
|
v-on:remove-transaction="removeTransaction($event)"
|
||||||
|
v-on:set-dest-types="setDestinationAllowedTypes($event)"
|
||||||
|
v-on:set-src-types="setSourceAllowedTypes($event)"
|
||||||
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<!-- group title -->
|
<!-- group title -->
|
||||||
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
||||||
<div class="card" v-if="transactions.length > 1">
|
<div v-if="transactions.length > 1" class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
@ -65,14 +74,14 @@
|
|||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<button @click="addTransaction" class="btn btn-outline-primary btn-block"><i class="far fa-clone"></i> {{ $t('firefly.add_another_split') }}
|
<button class="btn btn-outline-primary btn-block" @click="addTransaction"><i class="far fa-clone"></i> {{ $t('firefly.add_another_split') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<button class="btn btn-success btn-block" @click="submitTransaction" :disabled="!enableSubmit">
|
<button :disabled="!enableSubmit" class="btn btn-success btn-block" @click="submitTransaction">
|
||||||
<span v-if="enableSubmit"><i class="far fa-save"></i> {{ $t('firefly.store_transaction') }}</span>
|
<span v-if="enableSubmit"><i class="far fa-save"></i> {{ $t('firefly.store_transaction') }}</span>
|
||||||
<span v-if="!enableSubmit"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="!enableSubmit"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
</button>
|
</button>
|
||||||
@ -84,13 +93,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
<input class="form-check-input" type="checkbox" v-model="createAnother" id="createAnother">
|
<input id="createAnother" v-model="createAnother" class="form-check-input" type="checkbox">
|
||||||
<label class="form-check-label" for="createAnother">
|
<label class="form-check-label" for="createAnother">
|
||||||
<span class="small">{{ $t('firefly.create_another') }}</span>
|
<span class="small">{{ $t('firefly.create_another') }}</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
<input class="form-check-input" type="checkbox" v-model="resetFormAfter" id="resetFormAfter" :disabled="!createAnother">
|
<input id="resetFormAfter" v-model="resetFormAfter" :disabled="!createAnother" class="form-check-input" type="checkbox">
|
||||||
<label class="form-check-label" for="resetFormAfter">
|
<label class="form-check-label" for="resetFormAfter">
|
||||||
<span class="small">{{ $t('firefly.reset_after') }}</span>
|
<span class="small">{{ $t('firefly.reset_after') }}</span>
|
||||||
</label>
|
</label>
|
||||||
@ -161,16 +170,23 @@ export default {
|
|||||||
returnedGroupId: 0,
|
returnedGroupId: 0,
|
||||||
returnedGroupTitle: '',
|
returnedGroupTitle: '',
|
||||||
|
|
||||||
// meta data:
|
// meta data for accounts
|
||||||
accountToTransaction: {}
|
accountToTransaction: {},
|
||||||
|
allowedOpposingTypes: {},
|
||||||
|
defaultSourceAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Revenue account'],
|
||||||
|
defaultDestinationAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Expense account'],
|
||||||
|
sourceAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Revenue account'],
|
||||||
|
destinationAllowedTypes: ['Asset account', 'Loan', 'Debt', 'Mortgage', 'Expense account'],
|
||||||
|
|
||||||
|
// date and time not in the store because it was buggy
|
||||||
|
date: new Date,
|
||||||
|
time: new Date,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters([
|
...mapGetters([
|
||||||
'transactionType',
|
'transactionType',
|
||||||
'transactions',
|
'transactions',
|
||||||
'date',
|
|
||||||
'time',
|
|
||||||
'groupTitle'
|
'groupTitle'
|
||||||
])
|
])
|
||||||
},
|
},
|
||||||
@ -200,14 +216,11 @@ export default {
|
|||||||
'setGroupTitle',
|
'setGroupTitle',
|
||||||
'addTransaction',
|
'addTransaction',
|
||||||
'deleteTransaction',
|
'deleteTransaction',
|
||||||
'setAllowedOpposingTypes',
|
|
||||||
'setTransactionError',
|
'setTransactionError',
|
||||||
'setTransactionType',
|
'setTransactionType',
|
||||||
'resetErrors',
|
'resetErrors',
|
||||||
'updateField',
|
'updateField',
|
||||||
'resetTransactions',
|
'resetTransactions',
|
||||||
'setDate',
|
|
||||||
'setTime'
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
/**
|
/**
|
||||||
@ -246,7 +259,6 @@ export default {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (false === this.inError) {
|
if (false === this.inError) {
|
||||||
// show message:
|
// show message:
|
||||||
this.errorMessage = '';
|
this.errorMessage = '';
|
||||||
@ -399,11 +411,11 @@ export default {
|
|||||||
storeField: function (payload) {
|
storeField: function (payload) {
|
||||||
this.updateField(payload);
|
this.updateField(payload);
|
||||||
},
|
},
|
||||||
storeDate: function (value) {
|
storeDate: function (payload) {
|
||||||
this.setDate(value.date)
|
this.date = payload.date;
|
||||||
},
|
},
|
||||||
storeTime: function (value) {
|
storeTime: function (payload) {
|
||||||
this.setTime(value.time)
|
this.time = payload.time;
|
||||||
},
|
},
|
||||||
storeGroupTitle: function (value) {
|
storeGroupTitle: function (value) {
|
||||||
// console.log('set group title: ' + value);
|
// console.log('set group title: ' + value);
|
||||||
@ -702,9 +714,11 @@ export default {
|
|||||||
theDate.setHours(this.time.getHours());
|
theDate.setHours(this.time.getHours());
|
||||||
theDate.setMinutes(this.time.getMinutes());
|
theDate.setMinutes(this.time.getMinutes());
|
||||||
theDate.setSeconds(this.time.getSeconds());
|
theDate.setSeconds(this.time.getSeconds());
|
||||||
dateStr = this.toW3CString(this.date);
|
dateStr = this.toW3CString(theDate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// console.log('dateStr = ' + dateStr);
|
||||||
|
|
||||||
let currentSplit = {
|
let currentSplit = {
|
||||||
// basic
|
// basic
|
||||||
description: array.description,
|
description: array.description,
|
||||||
@ -857,8 +871,11 @@ export default {
|
|||||||
offsetSign + offsetHours + ':' + offsetMinutes;
|
offsetSign + offsetHours + ':' + offsetMinutes;
|
||||||
},
|
},
|
||||||
storeAllowedOpposingTypes: function () {
|
storeAllowedOpposingTypes: function () {
|
||||||
// take this from API:
|
axios.get('./api/v1/configuration/static/firefly.allowed_opposing_types')
|
||||||
this.setAllowedOpposingTypes(window.allowedOpposingTypes);
|
.then(response => {
|
||||||
|
this.allowedOpposingTypes = response.data['firefly.allowed_opposing_types'];
|
||||||
|
// console.log('Set allowedOpposingTypes');
|
||||||
|
});
|
||||||
},
|
},
|
||||||
storeAccountToTransaction: function () {
|
storeAccountToTransaction: function () {
|
||||||
axios.get('./api/v1/configuration/static/firefly.account_to_transaction')
|
axios.get('./api/v1/configuration/static/firefly.account_to_transaction')
|
||||||
@ -866,7 +883,26 @@ export default {
|
|||||||
this.accountToTransaction = response.data['firefly.account_to_transaction'];
|
this.accountToTransaction = response.data['firefly.account_to_transaction'];
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
setDestinationAllowedTypes: function (value) {
|
||||||
|
// console.log('Create::setDestinationAllowedTypes');
|
||||||
|
// console.log(value);
|
||||||
|
if (0 === value.length) {
|
||||||
|
this.destinationAllowedTypes = this.defaultDestinationAllowedTypes;
|
||||||
|
//console.log('empty so back to defaults');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.destinationAllowedTypes = value;
|
||||||
|
},
|
||||||
|
setSourceAllowedTypes(value) {
|
||||||
|
// console.log('Create::setSourceAllowedTypes');
|
||||||
|
// console.log(value);
|
||||||
|
if (0 === value.length) {
|
||||||
|
this.sourceAllowedTypes = this.defaultSourceAllowedTypes;
|
||||||
|
// console.log('empty so back to defaults');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.sourceAllowedTypes = value;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div :class="'tab-pane' + (0===index ? ' active' : '')" :id="'split_' + index">
|
<div :id="'split_' + index" :class="'tab-pane' + (0===index ? ' active' : '')">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
@ -28,7 +28,7 @@
|
|||||||
{{ $t('firefly.basic_journal_information') }}
|
{{ $t('firefly.basic_journal_information') }}
|
||||||
<span v-if="count > 1">({{ index + 1 }} / {{ count }}) </span>
|
<span v-if="count > 1">({{ index + 1 }} / {{ count }}) </span>
|
||||||
</h3>
|
</h3>
|
||||||
<div class="card-tools" v-if="count>1">
|
<div v-if="count>1" class="card-tools">
|
||||||
<button class="btn btn-danger btn-xs" @click="removeTransaction"><i class="fas fa-trash-alt"></i></button>
|
<button class="btn btn-danger btn-xs" @click="removeTransaction"><i class="fas fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -37,10 +37,10 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<TransactionDescription
|
<TransactionDescription
|
||||||
v-on="$listeners"
|
|
||||||
v-model="transaction.description"
|
v-model="transaction.description"
|
||||||
:index="index"
|
v-on="$listeners"
|
||||||
:errors="transaction.errors.description"
|
:errors="transaction.errors.description"
|
||||||
|
:index="index"
|
||||||
></TransactionDescription>
|
></TransactionDescription>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -49,11 +49,14 @@
|
|||||||
<div class="col-xl-5 col-lg-5 col-md-10 col-sm-12 col-xs-12">
|
<div class="col-xl-5 col-lg-5 col-md-10 col-sm-12 col-xs-12">
|
||||||
<!-- SOURCE -->
|
<!-- SOURCE -->
|
||||||
<TransactionAccount
|
<TransactionAccount
|
||||||
v-on="$listeners"
|
|
||||||
v-model="sourceAccount"
|
v-model="sourceAccount"
|
||||||
direction="source"
|
v-on="$listeners"
|
||||||
:index="index"
|
:allowed-opposing-types="allowedOpposingTypes"
|
||||||
|
:destination-allowed-types="destinationAllowedTypes"
|
||||||
:errors="transaction.errors.source"
|
:errors="transaction.errors.source"
|
||||||
|
:index="index"
|
||||||
|
:source-allowed-types="sourceAllowedTypes"
|
||||||
|
direction="source"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- switcharoo! -->
|
<!-- switcharoo! -->
|
||||||
@ -62,6 +65,7 @@
|
|||||||
v-if="0 === index"
|
v-if="0 === index"
|
||||||
v-on="$listeners"
|
v-on="$listeners"
|
||||||
:index="index"
|
:index="index"
|
||||||
|
:transaction-type="transactionType"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -69,11 +73,14 @@
|
|||||||
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
||||||
<!-- DESTINATION -->
|
<!-- DESTINATION -->
|
||||||
<TransactionAccount
|
<TransactionAccount
|
||||||
v-on="$listeners"
|
|
||||||
v-model="destinationAccount"
|
v-model="destinationAccount"
|
||||||
direction="destination"
|
v-on="$listeners"
|
||||||
:index="index"
|
:allowed-opposing-types="allowedOpposingTypes"
|
||||||
|
:destination-allowed-types="destinationAllowedTypes"
|
||||||
:errors="transaction.errors.destination"
|
:errors="transaction.errors.destination"
|
||||||
|
:index="index"
|
||||||
|
:source-allowed-types="sourceAllowedTypes"
|
||||||
|
direction="destination"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -84,24 +91,24 @@
|
|||||||
<div class="col-xl-5 col-lg-5 col-md-10 col-sm-12 col-xs-12">
|
<div class="col-xl-5 col-lg-5 col-md-10 col-sm-12 col-xs-12">
|
||||||
<!-- AMOUNT -->
|
<!-- AMOUNT -->
|
||||||
<TransactionAmount
|
<TransactionAmount
|
||||||
:index="index"
|
|
||||||
:errors="transaction.errors.amount"
|
|
||||||
:amount="transaction.amount"
|
|
||||||
:transaction-type="this.transactionType"
|
|
||||||
:source-currency-symbol="this.transaction.source_account_currency_symbol"
|
|
||||||
:destination-currency-symbol="this.transaction.destination_account_currency_symbol"
|
|
||||||
v-on="$listeners"
|
v-on="$listeners"
|
||||||
|
:amount="transaction.amount"
|
||||||
|
:destination-currency-symbol="this.transaction.destination_account_currency_symbol"
|
||||||
|
:errors="transaction.errors.amount"
|
||||||
|
:index="index"
|
||||||
|
:source-currency-symbol="this.transaction.source_account_currency_symbol"
|
||||||
|
:transaction-type="this.transactionType"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-2 col-lg-2 col-md-2 col-sm-12 text-center d-none d-sm-block">
|
<div class="col-xl-2 col-lg-2 col-md-2 col-sm-12 text-center d-none d-sm-block">
|
||||||
<TransactionForeignCurrency
|
<TransactionForeignCurrency
|
||||||
v-on="$listeners"
|
|
||||||
v-model="transaction.foreign_currency_id"
|
v-model="transaction.foreign_currency_id"
|
||||||
:transaction-type="this.transactionType"
|
v-on="$listeners"
|
||||||
:source-currency-id="this.transaction.source_account_currency_id"
|
|
||||||
:destination-currency-id="this.transaction.destination_account_currency_id"
|
:destination-currency-id="this.transaction.destination_account_currency_id"
|
||||||
:selected-currency-id="this.transaction.foreign_currency_id"
|
|
||||||
:index="index"
|
:index="index"
|
||||||
|
:selected-currency-id="this.transaction.foreign_currency_id"
|
||||||
|
:source-currency-id="this.transaction.source_account_currency_id"
|
||||||
|
:transaction-type="this.transactionType"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
||||||
@ -112,14 +119,14 @@
|
|||||||
currency id is submitted to Firefly III.
|
currency id is submitted to Firefly III.
|
||||||
-->
|
-->
|
||||||
<TransactionForeignAmount
|
<TransactionForeignAmount
|
||||||
:index="index"
|
|
||||||
v-on="$listeners"
|
|
||||||
:errors="transaction.errors.foreign_amount"
|
|
||||||
v-model="transaction.foreign_amount"
|
v-model="transaction.foreign_amount"
|
||||||
:transaction-type="this.transactionType"
|
v-on="$listeners"
|
||||||
:source-currency-id="this.transaction.source_account_currency_id"
|
|
||||||
:destination-currency-id="this.transaction.destination_account_currency_id"
|
:destination-currency-id="this.transaction.destination_account_currency_id"
|
||||||
|
:errors="transaction.errors.foreign_amount"
|
||||||
|
:index="index"
|
||||||
:selected-currency-id="this.transaction.foreign_currency_id"
|
:selected-currency-id="this.transaction.foreign_currency_id"
|
||||||
|
:source-currency-id="this.transaction.source_account_currency_id"
|
||||||
|
:transaction-type="this.transactionType"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -128,26 +135,26 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12">
|
||||||
<TransactionDate
|
<TransactionDate
|
||||||
:index="index"
|
|
||||||
v-on="$listeners"
|
v-on="$listeners"
|
||||||
:date="splitDate"
|
:date="splitDate"
|
||||||
:time="splitTime"
|
|
||||||
:errors="transaction.errors.date"
|
:errors="transaction.errors.date"
|
||||||
|
:index="index"
|
||||||
|
:time="splitTime"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12 offset-xl-2 offset-lg-2">
|
<div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12 offset-xl-2 offset-lg-2">
|
||||||
<TransactionCustomDates
|
<TransactionCustomDates
|
||||||
:index="index"
|
|
||||||
v-on="$listeners"
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
|
||||||
:errors="transaction.errors.custom_dates"
|
|
||||||
:interest-date="transaction.interest_date"
|
|
||||||
:book-date="transaction.book_date"
|
:book-date="transaction.book_date"
|
||||||
:process-date="transaction.process_date"
|
:custom-fields.sync="customFields"
|
||||||
:due-date="transaction.due_date"
|
:due-date="transaction.due_date"
|
||||||
:payment-date="transaction.payment_date"
|
:errors="transaction.errors.custom_dates"
|
||||||
|
:index="index"
|
||||||
|
:interest-date="transaction.interest_date"
|
||||||
:invoice-date="transaction.invoice_date"
|
:invoice-date="transaction.invoice_date"
|
||||||
|
:payment-date="transaction.payment_date"
|
||||||
|
:process-date="transaction.process_date"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -174,39 +181,39 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
||||||
<TransactionBudget
|
<TransactionBudget
|
||||||
v-on="$listeners"
|
|
||||||
v-model="transaction.budget_id"
|
|
||||||
:index="index"
|
|
||||||
:errors="transaction.errors.budget"
|
|
||||||
v-if="!('Transfer' === transactionType || 'Deposit' === transactionType)"
|
v-if="!('Transfer' === transactionType || 'Deposit' === transactionType)"
|
||||||
|
v-model="transaction.budget_id"
|
||||||
|
v-on="$listeners"
|
||||||
|
:errors="transaction.errors.budget"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
<TransactionCategory
|
<TransactionCategory
|
||||||
v-on="$listeners"
|
|
||||||
v-model="transaction.category"
|
v-model="transaction.category"
|
||||||
:index="index"
|
v-on="$listeners"
|
||||||
:errors="transaction.errors.category"
|
:errors="transaction.errors.category"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
||||||
<TransactionBill
|
<TransactionBill
|
||||||
v-on="$listeners"
|
|
||||||
v-model="transaction.bill_id"
|
|
||||||
:index="index"
|
|
||||||
:errors="transaction.errors.bill"
|
|
||||||
v-if="!('Transfer' === transactionType || 'Deposit' === transactionType)"
|
v-if="!('Transfer' === transactionType || 'Deposit' === transactionType)"
|
||||||
|
v-model="transaction.bill_id"
|
||||||
|
v-on="$listeners"
|
||||||
|
:errors="transaction.errors.bill"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
<TransactionTags
|
<TransactionTags
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.tags"
|
v-model="transaction.tags"
|
||||||
|
v-on="$listeners"
|
||||||
:errors="transaction.errors.tags"
|
:errors="transaction.errors.tags"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
<TransactionPiggyBank
|
<TransactionPiggyBank
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.piggy_bank_id"
|
|
||||||
:errors="transaction.errors.piggy_bank"
|
|
||||||
v-if="!('Withdrawal' === transactionType || 'Deposit' === transactionType)"
|
v-if="!('Withdrawal' === transactionType || 'Deposit' === transactionType)"
|
||||||
|
v-model="transaction.piggy_bank_id"
|
||||||
|
v-on="$listeners"
|
||||||
|
:errors="transaction.errors.piggy_bank"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -216,7 +223,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- end card for meta -->
|
<!-- end card for meta -->
|
||||||
<!-- card for extra -->
|
<!-- card for extra -->
|
||||||
<div class="row" v-if="hasMetaFields">
|
<div v-if="hasMetaFields" class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
@ -231,52 +238,52 @@
|
|||||||
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
||||||
|
|
||||||
<TransactionInternalReference
|
<TransactionInternalReference
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.internal_reference"
|
v-model="transaction.internal_reference"
|
||||||
:errors="transaction.errors.internal_reference"
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:errors="transaction.errors.internal_reference"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TransactionExternalUrl
|
<TransactionExternalUrl
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.external_url"
|
v-model="transaction.external_url"
|
||||||
:errors="transaction.errors.external_url"
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:errors="transaction.errors.external_url"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
<TransactionNotes
|
<TransactionNotes
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.notes"
|
v-model="transaction.notes"
|
||||||
:errors="transaction.errors.notes"
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:errors="transaction.errors.notes"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
<div class="col-xl-6 col-lg-6 col-md-12 col-sm-12 col-xs-12">
|
||||||
|
|
||||||
<TransactionAttachments
|
<TransactionAttachments
|
||||||
:index="index"
|
|
||||||
ref="attachments"
|
ref="attachments"
|
||||||
v-on="$listeners"
|
|
||||||
:transaction_journal_id="transaction.transaction_journal_id"
|
|
||||||
:submitted_transaction="submittedTransaction"
|
|
||||||
v-model="transaction.attachments"
|
v-model="transaction.attachments"
|
||||||
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:index="index"
|
||||||
|
:submitted_transaction="submittedTransaction"
|
||||||
|
:transaction_journal_id="transaction.transaction_journal_id"
|
||||||
/>
|
/>
|
||||||
<TransactionLocation
|
<TransactionLocation
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.notes"
|
v-model="transaction.notes"
|
||||||
:errors="transaction.errors.location"
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:errors="transaction.errors.location"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TransactionLinks
|
<TransactionLinks
|
||||||
v-on="$listeners"
|
|
||||||
:index="index"
|
|
||||||
v-model="transaction.links"
|
v-model="transaction.links"
|
||||||
|
v-on="$listeners"
|
||||||
:custom-fields.sync="customFields"
|
:custom-fields.sync="customFields"
|
||||||
|
:index="index"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -312,11 +319,8 @@ import TransactionNotes from "./TransactionNotes";
|
|||||||
import TransactionLinks from "./TransactionLinks";
|
import TransactionLinks from "./TransactionLinks";
|
||||||
import TransactionAttachments from "./TransactionAttachments";
|
import TransactionAttachments from "./TransactionAttachments";
|
||||||
import SplitPills from "./SplitPills";
|
import SplitPills from "./SplitPills";
|
||||||
import {createNamespacedHelpers} from "vuex";
|
|
||||||
import TransactionLocation from "./TransactionLocation";
|
import TransactionLocation from "./TransactionLocation";
|
||||||
|
|
||||||
const {mapState, mapGetters, mapActions, mapMutations} = createNamespacedHelpers('transactions/create')
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "SplitForm",
|
name: "SplitForm",
|
||||||
props: [
|
props: [
|
||||||
@ -325,8 +329,19 @@ export default {
|
|||||||
'count',
|
'count',
|
||||||
'customFields', // for custom transaction form fields.
|
'customFields', // for custom transaction form fields.
|
||||||
'index',
|
'index',
|
||||||
'submittedTransaction' // need to know if transaction is submitted.
|
'date',
|
||||||
|
'time',
|
||||||
|
'transactionType',
|
||||||
|
'submittedTransaction', // need to know if transaction is submitted.
|
||||||
|
'sourceAllowedTypes', // allowed source account types.
|
||||||
|
'destinationAllowedTypes',
|
||||||
|
'allowedOpposingTypes'
|
||||||
],
|
],
|
||||||
|
// watch: {
|
||||||
|
// allowedOpposingTypes: function() {
|
||||||
|
// console.log('SplitForm noticed change in allowedOpposingTypes');
|
||||||
|
// }
|
||||||
|
// },
|
||||||
methods: {
|
methods: {
|
||||||
removeTransaction: function () {
|
removeTransaction: function () {
|
||||||
// console.log('Will remove transaction ' + this.index);
|
// console.log('Will remove transaction ' + this.index);
|
||||||
@ -334,7 +349,6 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(['transactionType', 'date', 'time']),
|
|
||||||
splitDate: function () {
|
splitDate: function () {
|
||||||
return this.date;
|
return this.date;
|
||||||
},
|
},
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="row" v-if="transactions.length > 1">
|
<div v-if="transactions.length > 1" class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<!-- tabs -->
|
<!-- tabs -->
|
||||||
<ul class="nav nav-pills ml-auto p-2">
|
<ul class="nav nav-pills ml-auto p-2">
|
||||||
|
@ -21,10 +21,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
<span class="text-muted" v-if="'any' !== this.transactionType">
|
<span v-if="'any' !== this.transactionType" class="text-muted">
|
||||||
{{ $t('firefly.' + this.transactionType) }}
|
{{ $t('firefly.' + this.transactionType) }}
|
||||||
</span>
|
</span>
|
||||||
<span class="text-muted" v-if="'any' === this.transactionType"> </span>
|
<span v-if="'any' === this.transactionType" class="text-muted"> </span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group d-flex">
|
<div class="btn-group d-flex">
|
||||||
<button class="btn btn-light" @click="switchAccounts">↔</button>
|
<button class="btn btn-light" @click="switchAccounts">↔</button>
|
||||||
@ -33,27 +33,13 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
import {createNamespacedHelpers} from "vuex";
|
|
||||||
|
|
||||||
const {mapState, mapGetters, mapActions, mapMutations} = createNamespacedHelpers('transactions/create')
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "SwitchAccount",
|
name: "SwitchAccount",
|
||||||
props: ['index'],
|
props: ['index', 'transactionType'],
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(
|
|
||||||
[
|
|
||||||
'updateField',
|
|
||||||
],
|
|
||||||
),
|
|
||||||
|
|
||||||
switchAccounts() {
|
switchAccounts() {
|
||||||
this.$emit('switch-accounts', this.index);
|
this.$emit('switch-accounts', this.index);
|
||||||
}
|
}
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
...mapGetters(['transactionType']),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -20,39 +20,39 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block" v-if="visible">
|
<div v-if="visible" class="text-xs d-none d-lg-block d-xl-block">
|
||||||
<span v-if="0 === this.index">{{ $t('firefly.' + this.direction + '_account') }}</span>
|
<span v-if="0 === this.index">{{ $t('firefly.' + this.direction + '_account') }}</span>
|
||||||
<span class="text-warning" v-if="this.index > 0">{{ $t('firefly.first_split_overrules_' + this.direction) }}</span>
|
<span v-if="this.index > 0" class="text-warning">{{ $t('firefly.first_split_overrules_' + this.direction) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block" v-if="!visible">
|
<div v-if="!visible" class="text-xs d-none d-lg-block d-xl-block">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<vue-typeahead-bootstrap
|
<vue-typeahead-bootstrap
|
||||||
v-if="visible"
|
v-if="visible"
|
||||||
v-model="accountName"
|
v-model="accountName"
|
||||||
:data="accounts"
|
:data="accounts"
|
||||||
:showOnFocus=true
|
|
||||||
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
||||||
:inputName="direction + '[]'"
|
:inputName="direction + '[]'"
|
||||||
:serializer="item => item.name_with_balance"
|
|
||||||
:minMatchingChars="3"
|
:minMatchingChars="3"
|
||||||
:placeholder="$t('firefly.' + direction + '_account')"
|
:placeholder="$t('firefly.' + direction + '_account')"
|
||||||
@input="lookupAccount"
|
:serializer="item => item.name_with_balance"
|
||||||
|
:showOnFocus=true
|
||||||
@hit="selectedAccount = $event"
|
@hit="selectedAccount = $event"
|
||||||
|
@input="lookupAccount"
|
||||||
>
|
>
|
||||||
|
|
||||||
<template slot="suggestion" slot-scope="{ data, htmlText }">
|
<template slot="suggestion" slot-scope="{ data, htmlText }">
|
||||||
<div class="d-flex" :title="data.type">
|
<div :title="data.type" class="d-flex">
|
||||||
<span v-html="htmlText"></span><br>
|
<span v-html="htmlText"></span><br>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template slot="append">
|
<template slot="append">
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" class="btn btn-outline-secondary" v-on:click="clearAccount" type="button"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button" v-on:click="clearAccount"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</vue-typeahead-bootstrap>
|
</vue-typeahead-bootstrap>
|
||||||
<div class="form-control-static" v-if="!visible">
|
<div v-if="!visible" class="form-control-static">
|
||||||
<span class="small text-muted"><em>{{ $t('firefly.first_split_decides') }}</em></span>
|
<span class="small text-muted"><em>{{ $t('firefly.first_split_decides') }}</em></span>
|
||||||
</div>
|
</div>
|
||||||
<span v-if="errors.length > 0">
|
<span v-if="errors.length > 0">
|
||||||
@ -65,14 +65,19 @@
|
|||||||
|
|
||||||
import VueTypeaheadBootstrap from 'vue-typeahead-bootstrap';
|
import VueTypeaheadBootstrap from 'vue-typeahead-bootstrap';
|
||||||
import {debounce} from 'lodash';
|
import {debounce} from 'lodash';
|
||||||
import {createNamespacedHelpers} from "vuex";
|
|
||||||
|
|
||||||
const {mapState, mapGetters, mapActions, mapMutations} = createNamespacedHelpers('transactions/create')
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "TransactionAccount",
|
name: "TransactionAccount",
|
||||||
components: {VueTypeaheadBootstrap},
|
components: {VueTypeaheadBootstrap},
|
||||||
props: ['index', 'direction', 'value', 'errors'],
|
props: [
|
||||||
|
'index',
|
||||||
|
'direction',
|
||||||
|
'value',
|
||||||
|
'errors',
|
||||||
|
'sourceAllowedTypes',
|
||||||
|
'destinationAllowedTypes',
|
||||||
|
'allowedOpposingTypes'
|
||||||
|
],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
query: '',
|
query: '',
|
||||||
@ -89,13 +94,6 @@ export default {
|
|||||||
this.createInitialSet();
|
this.createInitialSet();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations(
|
|
||||||
[
|
|
||||||
'updateField',
|
|
||||||
'setDestinationAllowedTypes',
|
|
||||||
'setSourceAllowedTypes'
|
|
||||||
],
|
|
||||||
),
|
|
||||||
getACURL: function (types, query) {
|
getACURL: function (types, query) {
|
||||||
return './api/v1/autocomplete/accounts?types=' + types.join(',') + '&query=' + query;
|
return './api/v1/autocomplete/accounts?types=' + types.join(',') + '&query=' + query;
|
||||||
},
|
},
|
||||||
@ -110,6 +108,8 @@ export default {
|
|||||||
// set the types from the default types for this direction:
|
// set the types from the default types for this direction:
|
||||||
this.accountTypes = 'source' === this.direction ? this.sourceAllowedTypes : this.destinationAllowedTypes;
|
this.accountTypes = 'source' === this.direction ? this.sourceAllowedTypes : this.destinationAllowedTypes;
|
||||||
}
|
}
|
||||||
|
// console.log(this.direction + ': Will search for types:');
|
||||||
|
// console.log(this.accountTypes);
|
||||||
|
|
||||||
// update autocomplete URL:
|
// update autocomplete URL:
|
||||||
axios.get(this.getACURL(this.accountTypes, this.accountName))
|
axios.get(this.getACURL(this.accountTypes, this.accountName))
|
||||||
@ -125,6 +125,8 @@ export default {
|
|||||||
if ('destination' === this.direction) {
|
if ('destination' === this.direction) {
|
||||||
types = this.destinationAllowedTypes;
|
types = this.destinationAllowedTypes;
|
||||||
}
|
}
|
||||||
|
// console.log(this.direction + ' initial set searches for');
|
||||||
|
// console.log(types);
|
||||||
|
|
||||||
axios.get(this.getACURL(types, ''))
|
axios.get(this.getACURL(types, ''))
|
||||||
.then(response => {
|
.then(response => {
|
||||||
@ -134,8 +136,20 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
// allowedOpposingTypes: function () {
|
||||||
|
// console.log(this.direction + ' account noticed change in allowedOpposingTypes');
|
||||||
|
// },
|
||||||
|
sourceAllowedTypes: function (value) {
|
||||||
|
// console.log(this.direction + ' account noticed change in sourceAllowedTypes');
|
||||||
|
// console.log(value);
|
||||||
|
this.createInitialSet();
|
||||||
|
},
|
||||||
|
destinationAllowedTypes: function (value) {
|
||||||
|
// console.log(this.direction + ' account noticed change in destinationAllowedTypes');
|
||||||
|
// console.log(value);
|
||||||
|
this.createInitialSet();
|
||||||
|
},
|
||||||
selectedAccount: function (value) {
|
selectedAccount: function (value) {
|
||||||
// console.log('Emit on selected account');
|
|
||||||
this.selectedAccountTrigger = true;
|
this.selectedAccountTrigger = true;
|
||||||
this.account = value;
|
this.account = value;
|
||||||
|
|
||||||
@ -183,10 +197,10 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ('source' === this.direction) {
|
if ('source' === this.direction) {
|
||||||
this.setDestinationAllowedTypes(opposingAccounts);
|
this.$emit('set-dest-types', opposingAccounts);
|
||||||
}
|
}
|
||||||
if ('destination' === this.direction) {
|
if ('destination' === this.direction) {
|
||||||
this.setSourceAllowedTypes(opposingAccounts);
|
this.$emit('set-src-types', opposingAccounts);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
value: function (value) {
|
value: function (value) {
|
||||||
@ -199,53 +213,15 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters([
|
// 'transactionType',
|
||||||
'transactionType',
|
// 'sourceAllowedTypes',
|
||||||
'sourceAllowedTypes',
|
// 'destinationAllowedTypes',
|
||||||
'destinationAllowedTypes',
|
// 'allowedOpposingTypes'
|
||||||
'allowedOpposingTypes'
|
|
||||||
]),
|
|
||||||
accountKey: {
|
accountKey: {
|
||||||
get() {
|
get() {
|
||||||
return 'source' === this.direction ? 'source_account' : 'destination_account';
|
return 'source' === this.direction ? 'source_account' : 'destination_account';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
emitAccountId: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-id';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccount: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccountName: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-name';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccountType: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-type';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccountCurrencyId: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-currency-id';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccountCurrencyCode: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-currency-code';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
emitAccountCurrencySymbol: {
|
|
||||||
get() {
|
|
||||||
return 'set-' + this.direction + '-account-currency-symbol';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
visible: {
|
visible: {
|
||||||
get() {
|
get() {
|
||||||
// index 0 is always visible:
|
// index 0 is always visible:
|
||||||
|
@ -22,17 +22,17 @@
|
|||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="text-xs">{{ $t('firefly.amount') }}</div>
|
<div class="text-xs">{{ $t('firefly.amount') }}</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<div class="input-group-prepend" v-if="currencySymbol">
|
<div v-if="currencySymbol" class="input-group-prepend">
|
||||||
<div class="input-group-text">{{ currencySymbol }}</div>
|
<div class="input-group-text">{{ currencySymbol }}</div>
|
||||||
</div>
|
</div>
|
||||||
<input
|
<input
|
||||||
|
v-model="transactionAmount"
|
||||||
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:placeholder="$t('firefly.amount')"
|
||||||
:title="$t('firefly.amount')"
|
:title="$t('firefly.amount')"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
|
||||||
name="amount[]"
|
name="amount[]"
|
||||||
type="number"
|
type="number"
|
||||||
v-model="transactionAmount"
|
|
||||||
:placeholder="$t('firefly.amount')"
|
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<span v-if="errors.length > 0">
|
<span v-if="errors.length > 0">
|
||||||
|
@ -19,17 +19,17 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="form-group" v-if="showField">
|
<div v-if="showField" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('firefly.attachments') }}
|
{{ $t('firefly.attachments') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input
|
<input
|
||||||
type="file"
|
|
||||||
multiple
|
|
||||||
ref="att"
|
ref="att"
|
||||||
name="attachments[]"
|
|
||||||
class="form-control"
|
class="form-control"
|
||||||
|
multiple
|
||||||
|
name="attachments[]"
|
||||||
|
type="file"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -26,14 +26,14 @@
|
|||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<select
|
<select
|
||||||
ref="bill"
|
ref="bill"
|
||||||
:title="$t('firefly.bill')"
|
|
||||||
v-model="bill"
|
v-model="bill"
|
||||||
autocomplete="off"
|
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:title="$t('firefly.bill')"
|
||||||
|
autocomplete="off"
|
||||||
name="bill_id[]"
|
name="bill_id[]"
|
||||||
v-on:submit.prevent
|
v-on:submit.prevent
|
||||||
>
|
>
|
||||||
<option v-for="bill in this.billList" :value="bill.id" :label="bill.name">{{ bill.name }}</option>
|
<option v-for="bill in this.billList" :label="bill.name" :value="bill.id">{{ bill.name }}</option>
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
@ -26,14 +26,14 @@
|
|||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<select
|
<select
|
||||||
ref="budget"
|
ref="budget"
|
||||||
:title="$t('firefly.budget')"
|
|
||||||
v-model="budget"
|
v-model="budget"
|
||||||
autocomplete="off"
|
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:title="$t('firefly.budget')"
|
||||||
|
autocomplete="off"
|
||||||
name="budget_id[]"
|
name="budget_id[]"
|
||||||
v-on:submit.prevent
|
v-on:submit.prevent
|
||||||
>
|
>
|
||||||
<option v-for="budget in this.budgetList" :value="budget.id" :label="budget.name">{{ budget.name }}</option>
|
<option v-for="budget in this.budgetList" :label="budget.name" :value="budget.id">{{ budget.name }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<span v-if="errors.length > 0">
|
<span v-if="errors.length > 0">
|
||||||
|
@ -25,20 +25,20 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<vue-typeahead-bootstrap
|
<vue-typeahead-bootstrap
|
||||||
inputName="category[]"
|
|
||||||
v-model="category"
|
v-model="category"
|
||||||
:data="categories"
|
:data="categories"
|
||||||
:placeholder="$t('firefly.category')"
|
|
||||||
:showOnFocus=true
|
|
||||||
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
||||||
:minMatchingChars="3"
|
:minMatchingChars="3"
|
||||||
|
:placeholder="$t('firefly.category')"
|
||||||
:serializer="item => item.name"
|
:serializer="item => item.name"
|
||||||
|
:showOnFocus=true
|
||||||
|
inputName="category[]"
|
||||||
@hit="selectedCategory = $event"
|
@hit="selectedCategory = $event"
|
||||||
@input="lookupCategory"
|
@input="lookupCategory"
|
||||||
>
|
>
|
||||||
<template slot="append">
|
<template slot="append">
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" v-on:click="clearCategory" class="btn btn-outline-secondary" type="button"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button" v-on:click="clearCategory"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</vue-typeahead-bootstrap>
|
</vue-typeahead-bootstrap>
|
||||||
|
@ -20,21 +20,21 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="form-group" v-for="(enabled, name) in availableFields">
|
<div v-for="(enabled, name) in availableFields" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block" v-if="enabled && isDateField(name)">
|
<div v-if="enabled && isDateField(name)" class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('form.' + name) }}
|
{{ $t('form.' + name) }}
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group" v-if="enabled && isDateField(name)">
|
<div v-if="enabled && isDateField(name)" class="input-group">
|
||||||
<input
|
<input
|
||||||
class="form-control"
|
|
||||||
type="date"
|
|
||||||
:ref="name"
|
:ref="name"
|
||||||
:title="$t('form.' + name)"
|
|
||||||
:value="getFieldValue(name)"
|
|
||||||
@change="setFieldValue($event, name)"
|
|
||||||
autocomplete="off"
|
|
||||||
:name="name + '[]'"
|
:name="name + '[]'"
|
||||||
:placeholder="$t('form.' + name)"
|
:placeholder="$t('form.' + name)"
|
||||||
|
:title="$t('form.' + name)"
|
||||||
|
:value="getFieldValue(name)"
|
||||||
|
autocomplete="off"
|
||||||
|
class="form-control"
|
||||||
|
type="date"
|
||||||
|
@change="setFieldValue($event, name)"
|
||||||
v-on:submit.prevent
|
v-on:submit.prevent
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
@ -25,26 +25,26 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input
|
<input
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
|
||||||
type="date"
|
|
||||||
ref="date"
|
ref="date"
|
||||||
:title="$t('firefly.date')"
|
|
||||||
v-model="dateStr"
|
v-model="dateStr"
|
||||||
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
:disabled="index > 0"
|
:disabled="index > 0"
|
||||||
|
:placeholder="dateStr"
|
||||||
|
:title="$t('firefly.date')"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
name="date[]"
|
name="date[]"
|
||||||
:placeholder="dateStr"
|
type="date"
|
||||||
>
|
>
|
||||||
<input
|
<input
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
|
||||||
type="time"
|
|
||||||
ref="time"
|
ref="time"
|
||||||
:title="$t('firefly.time')"
|
|
||||||
v-model="timeStr"
|
v-model="timeStr"
|
||||||
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
:disabled="index > 0"
|
:disabled="index > 0"
|
||||||
|
:placeholder="timeStr"
|
||||||
|
:title="$t('firefly.time')"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
name="time[]"
|
name="time[]"
|
||||||
:placeholder="timeStr"
|
type="time"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<span v-if="errors.length > 0">
|
<span v-if="errors.length > 0">
|
||||||
|
@ -21,20 +21,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<vue-typeahead-bootstrap
|
<vue-typeahead-bootstrap
|
||||||
inputName="description[]"
|
|
||||||
v-model="description"
|
v-model="description"
|
||||||
:data="descriptions"
|
:data="descriptions"
|
||||||
:placeholder="$t('firefly.description')"
|
|
||||||
:showOnFocus=true
|
|
||||||
autofocus
|
|
||||||
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
||||||
:minMatchingChars="3"
|
:minMatchingChars="3"
|
||||||
|
:placeholder="$t('firefly.description')"
|
||||||
:serializer="item => item.description"
|
:serializer="item => item.description"
|
||||||
|
:showOnFocus=true
|
||||||
|
autofocus
|
||||||
|
inputName="description[]"
|
||||||
@input="lookupDescription"
|
@input="lookupDescription"
|
||||||
>
|
>
|
||||||
<template slot="append">
|
<template slot="append">
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" v-on:click="clearDescription" class="btn btn-outline-secondary" type="button"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button" v-on:click="clearDescription"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</vue-typeahead-bootstrap>
|
</vue-typeahead-bootstrap>
|
||||||
|
@ -19,20 +19,20 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="form-group" v-if="showField">
|
<div v-if="showField" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('firefly.external_url') }}
|
{{ $t('firefly.external_url') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input
|
<input
|
||||||
type="url"
|
|
||||||
name="external_url[]"
|
|
||||||
:placeholder="$t('firefly.external_url')"
|
|
||||||
v-model="url"
|
v-model="url"
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:placeholder="$t('firefly.external_url')"
|
||||||
|
name="external_url[]"
|
||||||
|
type="url"
|
||||||
/>
|
/>
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" type="button" class="btn btn-outline-secondary"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -20,17 +20,17 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<!-- FOREIGN AMOUNT -->
|
<!-- FOREIGN AMOUNT -->
|
||||||
<div class="form-group" v-if="isVisible">
|
<div v-if="isVisible" class="form-group">
|
||||||
<div class="text-xs">{{ $t('form.foreign_amount') }}</div>
|
<div class="text-xs">{{ $t('form.foreign_amount') }}</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input
|
<input
|
||||||
|
v-model="amount"
|
||||||
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:placeholder="$t('form.foreign_amount')"
|
||||||
:title="$t('form.foreign_amount')"
|
:title="$t('form.foreign_amount')"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
|
||||||
name="foreign_amount[]"
|
name="foreign_amount[]"
|
||||||
type="number"
|
type="number"
|
||||||
v-model="amount"
|
|
||||||
:placeholder="$t('form.foreign_amount')"
|
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<span v-if="errors.length > 0">
|
<span v-if="errors.length > 0">
|
||||||
|
@ -20,10 +20,10 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<!-- FOREIGN Currency -->
|
<!-- FOREIGN Currency -->
|
||||||
<div class="form-group" v-if="isVisible">
|
<div v-if="isVisible" class="form-group">
|
||||||
<div class="text-xs"> </div>
|
<div class="text-xs"> </div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<select name="foreign_currency_id[]" v-model="selectedCurrency" class="form-control">
|
<select v-model="selectedCurrency" class="form-control" name="foreign_currency_id[]">
|
||||||
<option v-for="currency in selectableCurrencies" :label="currency.name" :value="currency.id">{{ currency.name }}</option>
|
<option v-for="currency in selectableCurrencies" :label="currency.name" :value="currency.id">{{ currency.name }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
@ -24,19 +24,19 @@
|
|||||||
{{ $t('firefly.split_transaction_title') }}
|
{{ $t('firefly.split_transaction_title') }}
|
||||||
</div>
|
</div>
|
||||||
<vue-typeahead-bootstrap
|
<vue-typeahead-bootstrap
|
||||||
inputName="group_title"
|
|
||||||
v-model="title"
|
v-model="title"
|
||||||
:data="descriptions"
|
:data="descriptions"
|
||||||
:placeholder="$t('firefly.split_transaction_title')"
|
|
||||||
:showOnFocus=true
|
|
||||||
:minMatchingChars="3"
|
|
||||||
:serializer="item => item.description"
|
|
||||||
@input="lookupDescription"
|
|
||||||
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
:inputClass="errors.length > 0 ? 'is-invalid' : ''"
|
||||||
|
:minMatchingChars="3"
|
||||||
|
:placeholder="$t('firefly.split_transaction_title')"
|
||||||
|
:serializer="item => item.description"
|
||||||
|
:showOnFocus=true
|
||||||
|
inputName="group_title"
|
||||||
|
@input="lookupDescription"
|
||||||
>
|
>
|
||||||
<template slot="append">
|
<template slot="append">
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" v-on:click="clearDescription" class="btn btn-outline-secondary" type="button"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button" v-on:click="clearDescription"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</vue-typeahead-bootstrap>
|
</vue-typeahead-bootstrap>
|
||||||
|
@ -19,20 +19,20 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="form-group" v-if="showField">
|
<div v-if="showField" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('firefly.internal_reference') }}
|
{{ $t('firefly.internal_reference') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input
|
<input
|
||||||
type="text"
|
|
||||||
name="internal_reference[]"
|
|
||||||
v-model="reference"
|
v-model="reference"
|
||||||
:placeholder="$t('firefly.internal_reference')"
|
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:placeholder="$t('firefly.internal_reference')"
|
||||||
|
name="internal_reference[]"
|
||||||
|
type="text"
|
||||||
/>
|
/>
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button tabindex="-1" type="button" class="btn btn-outline-secondary"><i class="far fa-trash-alt"></i></button>
|
<button class="btn btn-outline-secondary" tabindex="-1" type="button"><i class="far fa-trash-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -57,8 +57,7 @@ export default {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {},
|
||||||
},
|
|
||||||
watch: {
|
watch: {
|
||||||
customFields: function (value) {
|
customFields: function (value) {
|
||||||
this.availableFields = value;
|
this.availableFields = value;
|
||||||
|
@ -27,10 +27,10 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<p v-if="links.length === 0">
|
<p v-if="links.length === 0">
|
||||||
<button data-toggle="modal" data-target="#linkModal" class="btn btn-default btn-xs"><i class="fas fa-plus"></i> Add transaction link</button>
|
<button class="btn btn-default btn-xs" data-target="#linkModal" data-toggle="modal"><i class="fas fa-plus"></i> Add transaction link</button>
|
||||||
</p>
|
</p>
|
||||||
<ul class="list-group" v-if="links.length > 0">
|
<ul v-if="links.length > 0" class="list-group">
|
||||||
<li class="list-group-item" v-for="transaction in links">
|
<li v-for="transaction in links" class="list-group-item">
|
||||||
<em>{{ getTextForLinkType(transaction.link_type_id) }}</em>
|
<em>{{ getTextForLinkType(transaction.link_type_id) }}</em>
|
||||||
<a :href='"./transaction/show/" + transaction.transaction_group_id'>{{ transaction.description }}</a>
|
<a :href='"./transaction/show/" + transaction.transaction_group_id'>{{ transaction.description }}</a>
|
||||||
|
|
||||||
@ -59,24 +59,24 @@
|
|||||||
}}</span>)
|
}}</span>)
|
||||||
</span>
|
</span>
|
||||||
<div class="btn-group btn-group-xs float-right">
|
<div class="btn-group btn-group-xs float-right">
|
||||||
<a tabindex="-1" href="#" class="btn btn-xs btn-default"><i class="far fa-edit"></i></a>
|
<a class="btn btn-xs btn-default" href="#" tabindex="-1"><i class="far fa-edit"></i></a>
|
||||||
<a tabindex="-1" href="#" class="btn btn-xs btn-danger"><i class="far fa-trash-alt"></i></a>
|
<a class="btn btn-xs btn-danger" href="#" tabindex="-1"><i class="far fa-trash-alt"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="form-text" v-if="links.length > 0">
|
<div v-if="links.length > 0" class="form-text">
|
||||||
<button data-toggle="modal" data-target="#linkModal" class="btn btn-default"><i class="fas fa-plus"></i></button>
|
<button class="btn btn-default" data-target="#linkModal" data-toggle="modal"><i class="fas fa-plus"></i></button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- modal -->
|
<!-- modal -->
|
||||||
<div class="modal" tabindex="-1" id="linkModal">
|
<div id="linkModal" class="modal" tabindex="-1">
|
||||||
<div class="modal-dialog modal-lg">
|
<div class="modal-dialog modal-lg">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<h5 class="modal-title">Transaction thing dialog.</h5>
|
<h5 class="modal-title">Transaction thing dialog.</h5>
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
<button aria-label="Close" class="close" data-dismiss="modal" type="button">
|
||||||
<span aria-hidden="true">×</span>
|
<span aria-hidden="true">×</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -94,10 +94,10 @@
|
|||||||
<div class="col">
|
<div class="col">
|
||||||
<form v-on:submit.prevent="search">
|
<form v-on:submit.prevent="search">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input autocomplete="off" maxlength="255" type="text" name="search" v-model="query" id="query"
|
<input id="query" v-model="query" autocomplete="off" class="form-control" maxlength="255" name="search"
|
||||||
class="form-control" placeholder="Search query">
|
placeholder="Search query" type="text">
|
||||||
<div class="input-group-append">
|
<div class="input-group-append">
|
||||||
<button type="submit" class="btn btn-default"><i class="fas fa-search"></i> Search</button>
|
<button class="btn btn-default" type="submit"><i class="fas fa-search"></i> Search</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@ -107,28 +107,28 @@
|
|||||||
<div class="col">
|
<div class="col">
|
||||||
<span v-if="searching"><i class="fas fa-spinner fa-spin"></i></span>
|
<span v-if="searching"><i class="fas fa-spinner fa-spin"></i></span>
|
||||||
<h4 v-if="searchResults.length > 0">Search results</h4>
|
<h4 v-if="searchResults.length > 0">Search results</h4>
|
||||||
<table class="table table-sm" v-if="searchResults.length > 0">
|
<table v-if="searchResults.length > 0" class="table table-sm">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th style="width:33%" colspan="2">Include?</th>
|
<th colspan="2" style="width:33%">Include?</th>
|
||||||
<th>Transaction</th>
|
<th>Transaction</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="result in searchResults">
|
<tr v-for="result in searchResults">
|
||||||
<td>
|
<td>
|
||||||
<input type="checkbox" class="form-control"
|
<input v-model="result.selected" class="form-control"
|
||||||
|
type="checkbox"
|
||||||
@change="selectTransaction($event)"
|
@change="selectTransaction($event)"
|
||||||
v-model="result.selected"
|
|
||||||
/>
|
/>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<select
|
<select
|
||||||
@change="selectLinkType($event)"
|
|
||||||
class="form-control"
|
|
||||||
v-model="result.link_type_id"
|
v-model="result.link_type_id"
|
||||||
|
class="form-control"
|
||||||
|
@change="selectLinkType($event)"
|
||||||
>
|
>
|
||||||
<option v-for="linkType in linkTypes" :value="linkType.id + '-' + linkType.direction" :label="linkType.type">{{
|
<option v-for="linkType in linkTypes" :label="linkType.type" :value="linkType.id + '-' + linkType.direction">{{
|
||||||
linkType.type
|
linkType.type
|
||||||
}}
|
}}
|
||||||
</option>
|
</option>
|
||||||
@ -175,7 +175,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
|
<button class="btn btn-secondary" data-dismiss="modal" type="button">Close</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -23,9 +23,9 @@
|
|||||||
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col" class="text-left">{{ $t('firefly.description') }}</th>
|
<th class="text-left" scope="col">{{ $t('firefly.description') }}</th>
|
||||||
<th scope="col">{{ $t('firefly.opposing_account') }}</th>
|
<th scope="col">{{ $t('firefly.opposing_account') }}</th>
|
||||||
<th scope="col" class="text-right">{{ $t('firefly.amount') }}</th>
|
<th class="text-right" scope="col">{{ $t('firefly.amount') }}</th>
|
||||||
<th scope="col">{{ $t('firefly.category') }}</th>
|
<th scope="col">{{ $t('firefly.category') }}</th>
|
||||||
<th scope="col">{{ $t('firefly.budget') }}</th>
|
<th scope="col">{{ $t('firefly.budget') }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
@ -40,10 +40,10 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span v-for="tr in transaction.attributes.transactions">
|
<span v-for="tr in transaction.attributes.transactions">
|
||||||
<a :href="'accounts/show/' + tr.destination_id" v-if="'withdrawal' === tr.type">{{ tr.destination_name }}</a>
|
<a v-if="'withdrawal' === tr.type" :href="'accounts/show/' + tr.destination_id">{{ tr.destination_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.source_id" v-if="'deposit' === tr.type">{{ tr.source_name }}</a>
|
<a v-if="'deposit' === tr.type" :href="'accounts/show/' + tr.source_id">{{ tr.source_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.destination_id" v-if="'transfer' === tr.type && tr.source_id === account_id">{{ tr.destination_name }}</a>
|
<a v-if="'transfer' === tr.type && tr.source_id === account_id" :href="'accounts/show/' + tr.destination_id">{{ tr.destination_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.source_id" v-if="'transfer' === tr.type && tr.destination_id === account_id">{{ tr.source_name }}</a>
|
<a v-if="'transfer' === tr.type && tr.destination_id === account_id" :href="'accounts/show/' + tr.source_id">{{ tr.source_name }}</a>
|
||||||
<br/>
|
<br/>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
@ -65,12 +65,12 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span v-for="tr in transaction.attributes.transactions">
|
<span v-for="tr in transaction.attributes.transactions">
|
||||||
<a :href="'categories/show/' + tr.category_id" v-if="0!==tr.category_id">{{ tr.category_name }}</a><br/>
|
<a v-if="0!==tr.category_id" :href="'categories/show/' + tr.category_id">{{ tr.category_name }}</a><br/>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span v-for="tr in transaction.attributes.transactions">
|
<span v-for="tr in transaction.attributes.transactions">
|
||||||
<a :href="'budgets/show/' + tr.budget_id" v-if="0!==tr.budget_id">{{ tr.budget_name }}</a><br/>
|
<a v-if="0!==tr.budget_id" :href="'budgets/show/' + tr.budget_id">{{ tr.budget_name }}</a><br/>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -23,9 +23,9 @@
|
|||||||
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col" class="text-left">{{ $t('firefly.description') }}</th>
|
<th class="text-left" scope="col">{{ $t('firefly.description') }}</th>
|
||||||
<th scope="col">{{ $t('firefly.opposing_account') }}</th>
|
<th scope="col">{{ $t('firefly.opposing_account') }}</th>
|
||||||
<th scope="col" class="text-right">{{ $t('firefly.amount') }}</th>
|
<th class="text-right" scope="col">{{ $t('firefly.amount') }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -38,10 +38,10 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span v-for="tr in transaction.attributes.transactions">
|
<span v-for="tr in transaction.attributes.transactions">
|
||||||
<a :href="'accounts/show/' + tr.destination_id" v-if="'withdrawal' === tr.type">{{ tr.destination_name }}</a>
|
<a v-if="'withdrawal' === tr.type" :href="'accounts/show/' + tr.destination_id">{{ tr.destination_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.source_id" v-if="'deposit' === tr.type">{{ tr.source_name }}</a>
|
<a v-if="'deposit' === tr.type" :href="'accounts/show/' + tr.source_id">{{ tr.source_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.destination_id" v-if="'transfer' === tr.type && tr.source_id === account_id">{{ tr.destination_name }}</a>
|
<a v-if="'transfer' === tr.type && tr.source_id === account_id" :href="'accounts/show/' + tr.destination_id">{{ tr.destination_name }}</a>
|
||||||
<a :href="'accounts/show/' + tr.source_id" v-if="'transfer' === tr.type && tr.destination_id === account_id">{{ tr.source_name }}</a>
|
<a v-if="'transfer' === tr.type && tr.destination_id === account_id" :href="'accounts/show/' + tr.source_id">{{ tr.source_name }}</a>
|
||||||
<br/>
|
<br/>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
|
@ -23,14 +23,15 @@
|
|||||||
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
<caption style="display:none;">{{ $t('firefly.transaction_table_description') }}</caption>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col" class="text-left">{{ $t('firefly.description') }}</th>
|
<th class="text-left" scope="col">{{ $t('firefly.description') }}</th>
|
||||||
<th scope="col" class="text-right">{{ $t('firefly.amount') }}</th>
|
<th class="text-right" scope="col">{{ $t('firefly.amount') }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="transaction in this.transactions">
|
<tr v-for="transaction in this.transactions">
|
||||||
<td>
|
<td>
|
||||||
<a :href="'transactions/show/' + transaction.id " :title="new Intl.DateTimeFormat(locale, { year: 'numeric', month: 'long', day: 'numeric' }).format(new Date(transaction.attributes.transactions[0].date))">
|
<a :href="'transactions/show/' + transaction.id "
|
||||||
|
:title="new Intl.DateTimeFormat(locale, { year: 'numeric', month: 'long', day: 'numeric' }).format(new Date(transaction.attributes.transactions[0].date))">
|
||||||
<span v-if="transaction.attributes.transactions.length > 1">{{ transaction.attributes.group_title }}</span>
|
<span v-if="transaction.attributes.transactions.length > 1">{{ transaction.attributes.group_title }}</span>
|
||||||
<span v-if="1===transaction.attributes.transactions.length">{{ transaction.attributes.transactions[0].description }}</span>
|
<span v-if="1===transaction.attributes.transactions.length">{{ transaction.attributes.transactions[0].description }}</span>
|
||||||
</a>
|
</a>
|
||||||
@ -67,8 +68,7 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
this.locale = localStorage.locale ?? 'en-US';
|
this.locale = localStorage.locale ?? 'en-US';
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {},
|
||||||
},
|
|
||||||
props: {
|
props: {
|
||||||
transactions: {
|
transactions: {
|
||||||
type: Array,
|
type: Array,
|
||||||
|
@ -19,16 +19,16 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="form-group" v-if="showField">
|
<div v-if="showField" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('firefly.location') }}
|
{{ $t('firefly.location') }}
|
||||||
</div>
|
</div>
|
||||||
<div style="width:100%;height:300px;">
|
<div style="width:100%;height:300px;">
|
||||||
<l-map
|
<l-map
|
||||||
style="width:100%;height:300px;"
|
ref="myMap"
|
||||||
:zoom="zoom"
|
|
||||||
ref="myMap" @ready="prepMap()"
|
|
||||||
:center="center"
|
:center="center"
|
||||||
|
:zoom="zoom" style="width:100%;height:300px;"
|
||||||
|
@ready="prepMap()"
|
||||||
@update:zoom="zoomUpdated"
|
@update:zoom="zoomUpdated"
|
||||||
@update:center="centerUpdated"
|
@update:center="centerUpdated"
|
||||||
@update:bounds="boundsUpdated"
|
@update:bounds="boundsUpdated"
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|
||||||
<div class="form-group" v-if="showField">
|
<div v-if="showField" class="form-group">
|
||||||
<div class="text-xs d-none d-lg-block d-xl-block">
|
<div class="text-xs d-none d-lg-block d-xl-block">
|
||||||
{{ $t('firefly.notes') }}
|
{{ $t('firefly.notes') }}
|
||||||
</div>
|
</div>
|
||||||
|
@ -26,14 +26,14 @@
|
|||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<select
|
<select
|
||||||
ref="piggy_bank_id"
|
ref="piggy_bank_id"
|
||||||
:title="$t('firefly.piggy_bank')"
|
|
||||||
v-model="piggy_bank_id"
|
v-model="piggy_bank_id"
|
||||||
autocomplete="off"
|
|
||||||
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
:class="errors.length > 0 ? 'form-control is-invalid' : 'form-control'"
|
||||||
|
:title="$t('firefly.piggy_bank')"
|
||||||
|
autocomplete="off"
|
||||||
name="piggy_bank_id[]"
|
name="piggy_bank_id[]"
|
||||||
v-on:submit.prevent
|
v-on:submit.prevent
|
||||||
>
|
>
|
||||||
<option v-for="piggy in this.piggyList" :value="piggy.id" :label="piggy.name_with_balance">{{ piggy.name_with_balance }}</option>
|
<option v-for="piggy in this.piggyList" :label="piggy.name_with_balance" :value="piggy.id">{{ piggy.name_with_balance }}</option>
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "\u041e\u0442\u0438\u0434\u0438 \u0432 \u0420\u0430\u0437\u0445\u043e\u0434\u0438",
|
"go_to_expenses": "\u041e\u0442\u0438\u0434\u0438 \u0432 \u0420\u0430\u0437\u0445\u043e\u0434\u0438",
|
||||||
"go_to_bills": "\u0412\u0438\u0436 \u0441\u043c\u0435\u0442\u043a\u0438\u0442\u0435 \u0441\u0438",
|
"go_to_bills": "\u0412\u0438\u0436 \u0441\u043c\u0435\u0442\u043a\u0438\u0442\u0435 \u0441\u0438",
|
||||||
"bills": "\u0421\u043c\u0435\u0442\u043a\u0438",
|
"bills": "\u0421\u043c\u0435\u0442\u043a\u0438",
|
||||||
|
"last_thirty_days": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0442\u0440\u0438\u0439\u0441\u0435\u0442 \u0434\u043d\u0438",
|
||||||
|
"last_seven_days": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0441\u0435\u0434\u0435\u043c \u0434\u043d\u0438",
|
||||||
"go_to_piggies": "\u0412\u0438\u0436 \u043a\u0430\u0441\u0438\u0447\u043a\u0438\u0442\u0435 \u0441\u0438",
|
"go_to_piggies": "\u0412\u0438\u0436 \u043a\u0430\u0441\u0438\u0447\u043a\u0438\u0442\u0435 \u0441\u0438",
|
||||||
"saved": "\u0417\u0430\u043f\u0438\u0441\u0430\u043d",
|
"saved": "\u0417\u0430\u043f\u0438\u0441\u0430\u043d",
|
||||||
"piggy_banks": "\u041a\u0430\u0441\u0438\u0447\u043a\u0438",
|
"piggy_banks": "\u041a\u0430\u0441\u0438\u0447\u043a\u0438",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "P\u0159ej\u00edt k \u00fa\u010dt\u016fm",
|
"go_to_bills": "P\u0159ej\u00edt k \u00fa\u010dt\u016fm",
|
||||||
"bills": "\u00da\u010dty",
|
"bills": "\u00da\u010dty",
|
||||||
|
"last_thirty_days": "Uplynul\u00fdch 30 dn\u00ed",
|
||||||
|
"last_seven_days": "Uplynul\u00fdch 7 dn\u016f",
|
||||||
"go_to_piggies": "P\u0159ej\u00edt k pokladni\u010dk\u00e1m",
|
"go_to_piggies": "P\u0159ej\u00edt k pokladni\u010dk\u00e1m",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "Pokladni\u010dky",
|
"piggy_banks": "Pokladni\u010dky",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Zu Ausgaben wechseln",
|
"go_to_expenses": "Zu Ausgaben wechseln",
|
||||||
"go_to_bills": "Rechnungen anzeigen",
|
"go_to_bills": "Rechnungen anzeigen",
|
||||||
"bills": "Rechnungen",
|
"bills": "Rechnungen",
|
||||||
|
"last_thirty_days": "Letzte 30 Tage",
|
||||||
|
"last_seven_days": "Letzte sieben Tage",
|
||||||
"go_to_piggies": "Sparschweine anzeigen",
|
"go_to_piggies": "Sparschweine anzeigen",
|
||||||
"saved": "Gespeichert",
|
"saved": "Gespeichert",
|
||||||
"piggy_banks": "Sparschweine",
|
"piggy_banks": "Sparschweine",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03b9\u03c2 \u03b4\u03b1\u03c0\u03ac\u03bd\u03b5\u03c2",
|
"go_to_expenses": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03b9\u03c2 \u03b4\u03b1\u03c0\u03ac\u03bd\u03b5\u03c2",
|
||||||
"go_to_bills": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03b1 \u03c0\u03ac\u03b3\u03b9\u03b1 \u03ad\u03be\u03bf\u03b4\u03b1",
|
"go_to_bills": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03b1 \u03c0\u03ac\u03b3\u03b9\u03b1 \u03ad\u03be\u03bf\u03b4\u03b1",
|
||||||
"bills": "\u03a0\u03ac\u03b3\u03b9\u03b1 \u03ad\u03be\u03bf\u03b4\u03b1",
|
"bills": "\u03a0\u03ac\u03b3\u03b9\u03b1 \u03ad\u03be\u03bf\u03b4\u03b1",
|
||||||
|
"last_thirty_days": "\u03a4\u03b5\u03bb\u03b5\u03c5\u03c4\u03b1\u03af\u03b5\u03c2 \u03c4\u03c1\u03b9\u03ac\u03bd\u03c4\u03b1 \u03b7\u03bc\u03ad\u03c1\u03b5\u03c2",
|
||||||
|
"last_seven_days": "\u03a4\u03b5\u03bb\u03b5\u03c5\u03c4\u03b1\u03af\u03b5\u03c2 \u03b5\u03c0\u03c4\u03ac \u03b7\u03bc\u03ad\u03c1\u03b5\u03c2",
|
||||||
"go_to_piggies": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03bf\u03c5\u03c2 \u03ba\u03bf\u03c5\u03bc\u03c0\u03b1\u03c1\u03ac\u03b4\u03b5\u03c2 \u03c3\u03b1\u03c2",
|
"go_to_piggies": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bd\u03b5\u03c4\u03b5 \u03c3\u03c4\u03bf\u03c5\u03c2 \u03ba\u03bf\u03c5\u03bc\u03c0\u03b1\u03c1\u03ac\u03b4\u03b5\u03c2 \u03c3\u03b1\u03c2",
|
||||||
"saved": "\u0391\u03c0\u03bf\u03b8\u03b7\u03ba\u03b5\u03cd\u03c4\u03b7\u03ba\u03b5",
|
"saved": "\u0391\u03c0\u03bf\u03b8\u03b7\u03ba\u03b5\u03cd\u03c4\u03b7\u03ba\u03b5",
|
||||||
"piggy_banks": "\u039a\u03bf\u03c5\u03bc\u03c0\u03b1\u03c1\u03ac\u03b4\u03b5\u03c2",
|
"piggy_banks": "\u039a\u03bf\u03c5\u03bc\u03c0\u03b1\u03c1\u03ac\u03b4\u03b5\u03c2",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "Go to your bills",
|
"go_to_bills": "Go to your bills",
|
||||||
"bills": "Bills",
|
"bills": "Bills",
|
||||||
|
"last_thirty_days": "Last thirty days",
|
||||||
|
"last_seven_days": "Last seven days",
|
||||||
"go_to_piggies": "Go to your piggy banks",
|
"go_to_piggies": "Go to your piggy banks",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "Piggy banks",
|
"piggy_banks": "Piggy banks",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "Go to your bills",
|
"go_to_bills": "Go to your bills",
|
||||||
"bills": "Bills",
|
"bills": "Bills",
|
||||||
|
"last_thirty_days": "Last thirty days",
|
||||||
|
"last_seven_days": "Last seven days",
|
||||||
"go_to_piggies": "Go to your piggy banks",
|
"go_to_piggies": "Go to your piggy banks",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "Piggy banks",
|
"piggy_banks": "Piggy banks",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Ir a gastos",
|
"go_to_expenses": "Ir a gastos",
|
||||||
"go_to_bills": "Ir a tus cuentas",
|
"go_to_bills": "Ir a tus cuentas",
|
||||||
"bills": "Facturas",
|
"bills": "Facturas",
|
||||||
|
"last_thirty_days": "\u00daltimos treinta d\u00edas",
|
||||||
|
"last_seven_days": "\u00daltimos siete d\u00edas",
|
||||||
"go_to_piggies": "Ir a tu hucha",
|
"go_to_piggies": "Ir a tu hucha",
|
||||||
"saved": "Guardado",
|
"saved": "Guardado",
|
||||||
"piggy_banks": "Huchas",
|
"piggy_banks": "Huchas",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "Avaa omat laskut",
|
"go_to_bills": "Avaa omat laskut",
|
||||||
"bills": "Laskut",
|
"bills": "Laskut",
|
||||||
|
"last_thirty_days": "Viimeiset 30 p\u00e4iv\u00e4\u00e4",
|
||||||
|
"last_seven_days": "Viimeiset 7 p\u00e4iv\u00e4\u00e4",
|
||||||
"go_to_piggies": "Tarkastele s\u00e4\u00e4st\u00f6possujasi",
|
"go_to_piggies": "Tarkastele s\u00e4\u00e4st\u00f6possujasi",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "S\u00e4\u00e4st\u00f6possut",
|
"piggy_banks": "S\u00e4\u00e4st\u00f6possut",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Aller aux d\u00e9penses",
|
"go_to_expenses": "Aller aux d\u00e9penses",
|
||||||
"go_to_bills": "G\u00e9rer vos factures",
|
"go_to_bills": "G\u00e9rer vos factures",
|
||||||
"bills": "Factures",
|
"bills": "Factures",
|
||||||
|
"last_thirty_days": "Trente derniers jours",
|
||||||
|
"last_seven_days": "7 Derniers Jours",
|
||||||
"go_to_piggies": "G\u00e9rer vos tirelires",
|
"go_to_piggies": "G\u00e9rer vos tirelires",
|
||||||
"saved": "Sauvegard\u00e9",
|
"saved": "Sauvegard\u00e9",
|
||||||
"piggy_banks": "Tirelires",
|
"piggy_banks": "Tirelires",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Ugr\u00e1s a kiad\u00e1sokra",
|
"go_to_expenses": "Ugr\u00e1s a kiad\u00e1sokra",
|
||||||
"go_to_bills": "Ugr\u00e1s a sz\u00e1ml\u00e1khoz",
|
"go_to_bills": "Ugr\u00e1s a sz\u00e1ml\u00e1khoz",
|
||||||
"bills": "Sz\u00e1ml\u00e1k",
|
"bills": "Sz\u00e1ml\u00e1k",
|
||||||
|
"last_thirty_days": "Elm\u00falt harminc nap",
|
||||||
|
"last_seven_days": "Utols\u00f3 h\u00e9t nap",
|
||||||
"go_to_piggies": "Ugr\u00e1s a malacperselyekhez",
|
"go_to_piggies": "Ugr\u00e1s a malacperselyekhez",
|
||||||
"saved": "Mentve",
|
"saved": "Mentve",
|
||||||
"piggy_banks": "Malacperselyek",
|
"piggy_banks": "Malacperselyek",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Vai alle spese",
|
"go_to_expenses": "Vai alle spese",
|
||||||
"go_to_bills": "Vai alle tue bollette",
|
"go_to_bills": "Vai alle tue bollette",
|
||||||
"bills": "Bollette",
|
"bills": "Bollette",
|
||||||
|
"last_thirty_days": "Ultimi trenta giorni",
|
||||||
|
"last_seven_days": "Ultimi sette giorni",
|
||||||
"go_to_piggies": "Vai ai tuoi salvadanai",
|
"go_to_piggies": "Vai ai tuoi salvadanai",
|
||||||
"saved": "Salvata",
|
"saved": "Salvata",
|
||||||
"piggy_banks": "Salvadanai",
|
"piggy_banks": "Salvadanai",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "G\u00e5 til regningene dine",
|
"go_to_bills": "G\u00e5 til regningene dine",
|
||||||
"bills": "Regninger",
|
"bills": "Regninger",
|
||||||
|
"last_thirty_days": "Tredve siste dager",
|
||||||
|
"last_seven_days": "Syv siste dager",
|
||||||
"go_to_piggies": "G\u00e5 til sparegrisene dine",
|
"go_to_piggies": "G\u00e5 til sparegrisene dine",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "Sparegriser",
|
"piggy_banks": "Sparegriser",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Ga naar je uitgaven",
|
"go_to_expenses": "Ga naar je uitgaven",
|
||||||
"go_to_bills": "Ga naar je contracten",
|
"go_to_bills": "Ga naar je contracten",
|
||||||
"bills": "Contracten",
|
"bills": "Contracten",
|
||||||
|
"last_thirty_days": "Laatste dertig dagen",
|
||||||
|
"last_seven_days": "Laatste zeven dagen",
|
||||||
"go_to_piggies": "Ga naar je spaarpotjes",
|
"go_to_piggies": "Ga naar je spaarpotjes",
|
||||||
"saved": "Opgeslagen",
|
"saved": "Opgeslagen",
|
||||||
"piggy_banks": "Spaarpotjes",
|
"piggy_banks": "Spaarpotjes",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Przejd\u017a do wydatk\u00f3w",
|
"go_to_expenses": "Przejd\u017a do wydatk\u00f3w",
|
||||||
"go_to_bills": "Przejd\u017a do swoich rachunk\u00f3w",
|
"go_to_bills": "Przejd\u017a do swoich rachunk\u00f3w",
|
||||||
"bills": "Rachunki",
|
"bills": "Rachunki",
|
||||||
|
"last_thirty_days": "Ostanie 30 dni",
|
||||||
|
"last_seven_days": "Ostatnie 7 dni",
|
||||||
"go_to_piggies": "Przejd\u017a do swoich skarbonek",
|
"go_to_piggies": "Przejd\u017a do swoich skarbonek",
|
||||||
"saved": "Zapisano",
|
"saved": "Zapisano",
|
||||||
"piggy_banks": "Skarbonki",
|
"piggy_banks": "Skarbonki",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Ir para despesas",
|
"go_to_expenses": "Ir para despesas",
|
||||||
"go_to_bills": "V\u00e1 para suas contas",
|
"go_to_bills": "V\u00e1 para suas contas",
|
||||||
"bills": "Faturas",
|
"bills": "Faturas",
|
||||||
|
"last_thirty_days": "\u00daltimos 30 dias",
|
||||||
|
"last_seven_days": "\u00daltimos sete dias",
|
||||||
"go_to_piggies": "V\u00e1 para sua poupan\u00e7a",
|
"go_to_piggies": "V\u00e1 para sua poupan\u00e7a",
|
||||||
"saved": "Salvo",
|
"saved": "Salvo",
|
||||||
"piggy_banks": "Cofrinhos",
|
"piggy_banks": "Cofrinhos",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Ir para despesas",
|
"go_to_expenses": "Ir para despesas",
|
||||||
"go_to_bills": "Ir para contas",
|
"go_to_bills": "Ir para contas",
|
||||||
"bills": "Contas",
|
"bills": "Contas",
|
||||||
|
"last_thirty_days": "\u00daltimos trinta dias",
|
||||||
|
"last_seven_days": "\u00daltimos sete dias",
|
||||||
"go_to_piggies": "Ir para mealheiros",
|
"go_to_piggies": "Ir para mealheiros",
|
||||||
"saved": "Guardado",
|
"saved": "Guardado",
|
||||||
"piggy_banks": "Mealheiros",
|
"piggy_banks": "Mealheiros",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "Mergi la facturi",
|
"go_to_bills": "Mergi la facturi",
|
||||||
"bills": "Facturi",
|
"bills": "Facturi",
|
||||||
|
"last_thirty_days": "Ultimele 30 de zile",
|
||||||
|
"last_seven_days": "Ultimele 7 zile",
|
||||||
"go_to_piggies": "Mergi la pu\u0219culi\u021b\u0103",
|
"go_to_piggies": "Mergi la pu\u0219culi\u021b\u0103",
|
||||||
"saved": "Salvat",
|
"saved": "Salvat",
|
||||||
"piggy_banks": "Pu\u0219culi\u021b\u0103",
|
"piggy_banks": "Pu\u0219culi\u021b\u0103",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0440\u0430\u0441\u0445\u043e\u0434\u0430\u043c",
|
"go_to_expenses": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0440\u0430\u0441\u0445\u043e\u0434\u0430\u043c",
|
||||||
"go_to_bills": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0432\u0430\u0448\u0438\u043c \u0441\u0447\u0435\u0442\u0430\u043c \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443",
|
"go_to_bills": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0432\u0430\u0448\u0438\u043c \u0441\u0447\u0435\u0442\u0430\u043c \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443",
|
||||||
"bills": "\u0421\u0447\u0435\u0442\u0430 \u043a \u043e\u043f\u043b\u0430\u0442\u0435",
|
"bills": "\u0421\u0447\u0435\u0442\u0430 \u043a \u043e\u043f\u043b\u0430\u0442\u0435",
|
||||||
|
"last_thirty_days": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 30 \u0434\u043d\u0435\u0439",
|
||||||
|
"last_seven_days": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 7 \u0434\u043d\u0435\u0439",
|
||||||
"go_to_piggies": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0432\u0430\u0448\u0438\u043c \u043a\u043e\u043f\u0438\u043b\u043a\u0430\u043c",
|
"go_to_piggies": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0432\u0430\u0448\u0438\u043c \u043a\u043e\u043f\u0438\u043b\u043a\u0430\u043c",
|
||||||
"saved": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043e",
|
"saved": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043e",
|
||||||
"piggy_banks": "\u041a\u043e\u043f\u0438\u043b\u043a\u0438",
|
"piggy_banks": "\u041a\u043e\u043f\u0438\u043b\u043a\u0438",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Zobrazi\u0165 v\u00fddavky",
|
"go_to_expenses": "Zobrazi\u0165 v\u00fddavky",
|
||||||
"go_to_bills": "Zobrazi\u0165 \u00fa\u010dty",
|
"go_to_bills": "Zobrazi\u0165 \u00fa\u010dty",
|
||||||
"bills": "\u00da\u010dty",
|
"bills": "\u00da\u010dty",
|
||||||
|
"last_thirty_days": "Uplynul\u00fdch 30 dn\u00ed",
|
||||||
|
"last_seven_days": "Uplynul\u00fdch 7 dn\u00ed",
|
||||||
"go_to_piggies": "Zobrazi\u0165 pokladni\u010dky",
|
"go_to_piggies": "Zobrazi\u0165 pokladni\u010dky",
|
||||||
"saved": "Ulo\u017een\u00e9",
|
"saved": "Ulo\u017een\u00e9",
|
||||||
"piggy_banks": "Pokladni\u010dky",
|
"piggy_banks": "Pokladni\u010dky",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "G\u00e5 till utgifter",
|
"go_to_expenses": "G\u00e5 till utgifter",
|
||||||
"go_to_bills": "G\u00e5 till dina notor",
|
"go_to_bills": "G\u00e5 till dina notor",
|
||||||
"bills": "Notor",
|
"bills": "Notor",
|
||||||
|
"last_thirty_days": "Senaste 30 dagarna",
|
||||||
|
"last_seven_days": "Senaste 7 dagarna",
|
||||||
"go_to_piggies": "G\u00e5 till dina sparb\u00f6ssor",
|
"go_to_piggies": "G\u00e5 till dina sparb\u00f6ssor",
|
||||||
"saved": "Sparad",
|
"saved": "Sparad",
|
||||||
"piggy_banks": "Spargrisar",
|
"piggy_banks": "Spargrisar",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "\u0110i \u0111\u1ebfn h\u00f3a \u0111\u01a1n c\u1ee7a b\u1ea1n",
|
"go_to_bills": "\u0110i \u0111\u1ebfn h\u00f3a \u0111\u01a1n c\u1ee7a b\u1ea1n",
|
||||||
"bills": "H\u00f3a \u0111\u01a1n",
|
"bills": "H\u00f3a \u0111\u01a1n",
|
||||||
|
"last_thirty_days": "Ba m\u01b0\u01a1i ng\u00e0y g\u1ea7n \u0111\u00e2y",
|
||||||
|
"last_seven_days": "B\u1ea3y ng\u00e0y g\u1ea7n \u0111\u00e2y",
|
||||||
"go_to_piggies": "T\u1edbi heo \u0111\u1ea5t c\u1ee7a b\u1ea1n",
|
"go_to_piggies": "T\u1edbi heo \u0111\u1ea5t c\u1ee7a b\u1ea1n",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "Heo \u0111\u1ea5t",
|
"piggy_banks": "Heo \u0111\u1ea5t",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "\u524d\u5f80\u652f\u51fa",
|
"go_to_expenses": "\u524d\u5f80\u652f\u51fa",
|
||||||
"go_to_bills": "\u524d\u5f80\u8d26\u5355",
|
"go_to_bills": "\u524d\u5f80\u8d26\u5355",
|
||||||
"bills": "\u8d26\u5355",
|
"bills": "\u8d26\u5355",
|
||||||
|
"last_thirty_days": "\u6700\u8fd1 30 \u5929",
|
||||||
|
"last_seven_days": "\u6700\u8fd1 7 \u5929",
|
||||||
"go_to_piggies": "\u524d\u5f80\u60a8\u7684\u5b58\u94b1\u7f50",
|
"go_to_piggies": "\u524d\u5f80\u60a8\u7684\u5b58\u94b1\u7f50",
|
||||||
"saved": "\u5df2\u4fdd\u5b58",
|
"saved": "\u5df2\u4fdd\u5b58",
|
||||||
"piggy_banks": "\u5b58\u94b1\u7f50",
|
"piggy_banks": "\u5b58\u94b1\u7f50",
|
||||||
|
@ -47,6 +47,8 @@
|
|||||||
"go_to_expenses": "Go to expenses",
|
"go_to_expenses": "Go to expenses",
|
||||||
"go_to_bills": "\u524d\u5f80\u60a8\u7684\u5e33\u55ae",
|
"go_to_bills": "\u524d\u5f80\u60a8\u7684\u5e33\u55ae",
|
||||||
"bills": "\u5e33\u55ae",
|
"bills": "\u5e33\u55ae",
|
||||||
|
"last_thirty_days": "\u6700\u8fd130\u5929",
|
||||||
|
"last_seven_days": "\u6700\u8fd17\u5929",
|
||||||
"go_to_piggies": "\u524d\u5f80\u60a8\u7684\u5c0f\u8c6c\u64b2\u6eff",
|
"go_to_piggies": "\u524d\u5f80\u60a8\u7684\u5c0f\u8c6c\u64b2\u6eff",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
"piggy_banks": "\u5c0f\u8c6c\u64b2\u6eff",
|
"piggy_banks": "\u5c0f\u8c6c\u64b2\u6eff",
|
||||||
|
@ -89,10 +89,10 @@
|
|||||||
"@babel/helper-annotate-as-pure" "^7.12.13"
|
"@babel/helper-annotate-as-pure" "^7.12.13"
|
||||||
regexpu-core "^4.7.1"
|
regexpu-core "^4.7.1"
|
||||||
|
|
||||||
"@babel/helper-define-polyfill-provider@^0.1.2":
|
"@babel/helper-define-polyfill-provider@^0.1.4":
|
||||||
version "0.1.2"
|
version "0.1.4"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.2.tgz#619f01afe1deda460676c25c463b42eaefdb71a2"
|
resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.4.tgz#b618b087c6a0328127e5d53576df818bcee2b15f"
|
||||||
integrity sha512-hWeolZJivTNGHXHzJjQz/NwDaG4mGXf22ZroOP8bQYgvHNzaQ5tylsVbAcAS2oDjXBwpu8qH2I/654QFS2rDpw==
|
integrity sha512-K5V2GaQZ1gpB+FTXM4AFVG2p1zzhm67n9wrQCJYNzvuLzQybhJyftW7qeDd2uUxPDNdl5Rkon1rOAeUeNDZ28Q==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-compilation-targets" "^7.13.0"
|
"@babel/helper-compilation-targets" "^7.13.0"
|
||||||
"@babel/helper-module-imports" "^7.12.13"
|
"@babel/helper-module-imports" "^7.12.13"
|
||||||
@ -865,9 +865,9 @@
|
|||||||
integrity sha512-h0lY7g36rhjNV8KVHKS3/BEOgfsxu0AiRI8+ry5IFBGEsQFkpjxtcpVc9ndN8zrKUeMZXAWMc7eQMepfgykpxQ==
|
integrity sha512-h0lY7g36rhjNV8KVHKS3/BEOgfsxu0AiRI8+ry5IFBGEsQFkpjxtcpVc9ndN8zrKUeMZXAWMc7eQMepfgykpxQ==
|
||||||
|
|
||||||
"@types/chart.js@^2.7.55":
|
"@types/chart.js@^2.7.55":
|
||||||
version "2.9.30"
|
version "2.9.31"
|
||||||
resolved "https://registry.yarnpkg.com/@types/chart.js/-/chart.js-2.9.30.tgz#34b99897f4f5ef0f74c8fe4ced70ac52b4d752dd"
|
resolved "https://registry.yarnpkg.com/@types/chart.js/-/chart.js-2.9.31.tgz#e8ebc7ed18eb0e5114c69bd46ef8e0037c89d39d"
|
||||||
integrity sha512-EgjxUUZFvf6ls3kW2CwyrnSJhgyKxgwrlp/W5G9wqyPEO9iFatO63zAA7L24YqgMxiDjQ+tG7ODU+2yWH91lPg==
|
integrity sha512-hzS6phN/kx3jClk3iYqEHNnYIRSi4RZrIGJ8CDLjgatpHoftCezvC44uqB3o3OUm9ftU1m7sHG8+RLyPTlACrA==
|
||||||
dependencies:
|
dependencies:
|
||||||
moment "^2.10.2"
|
moment "^2.10.2"
|
||||||
|
|
||||||
@ -1369,28 +1369,28 @@ babel-plugin-dynamic-import-node@^2.3.3:
|
|||||||
object.assign "^4.1.0"
|
object.assign "^4.1.0"
|
||||||
|
|
||||||
babel-plugin-polyfill-corejs2@^0.1.4:
|
babel-plugin-polyfill-corejs2@^0.1.4:
|
||||||
version "0.1.6"
|
version "0.1.8"
|
||||||
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.1.6.tgz#947a1227efa1a14ce09ac5fafc66ce8e039071e2"
|
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.1.8.tgz#54ef37b1c4b2311e515029e8f1f07bbd4d7a5321"
|
||||||
integrity sha512-1PfghLDuzX5lFY6XXO0hrfxwYf0LD9YajMWeQBGNaPNLQ35paV7YB4hlFW+HfwFS5kcp4rtPI/237xLfQ1ah8A==
|
integrity sha512-kB5/xNR9GYDuRmVlL9EGfdKBSUVI/9xAU7PCahA/1hbC2Jbmks9dlBBYjHF9IHMNY2jV/G2lIG7z0tJIW27Rog==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/compat-data" "^7.13.0"
|
"@babel/compat-data" "^7.13.0"
|
||||||
"@babel/helper-define-polyfill-provider" "^0.1.2"
|
"@babel/helper-define-polyfill-provider" "^0.1.4"
|
||||||
semver "^6.1.1"
|
semver "^6.1.1"
|
||||||
|
|
||||||
babel-plugin-polyfill-corejs3@^0.1.3:
|
babel-plugin-polyfill-corejs3@^0.1.3:
|
||||||
version "0.1.4"
|
version "0.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.4.tgz#2ae290200e953bade30907b7a3bebcb696e6c59d"
|
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.6.tgz#ed1b02fba4885e0892e06094e27865f499758d27"
|
||||||
integrity sha512-ysSzFn/qM8bvcDAn4mC7pKk85Y5dVaoa9h4u0mHxOEpDzabsseONhUpR7kHxpUinfj1bjU7mUZqD23rMZBoeSg==
|
integrity sha512-IkYhCxPrjrUWigEmkMDXYzM5iblzKCdCD8cZrSAkQOyhhJm26DcG+Mxbx13QT//Olkpkg/AlRdT2L+Ww4Ciphw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-define-polyfill-provider" "^0.1.2"
|
"@babel/helper-define-polyfill-provider" "^0.1.4"
|
||||||
core-js-compat "^3.8.1"
|
core-js-compat "^3.8.1"
|
||||||
|
|
||||||
babel-plugin-polyfill-regenerator@^0.1.2:
|
babel-plugin-polyfill-regenerator@^0.1.2:
|
||||||
version "0.1.3"
|
version "0.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.1.3.tgz#350f857225fc640ae1ec78d1536afcbb457db841"
|
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.1.5.tgz#f42a58fd86a1c97fbe3a2752d80a4a3e017203e1"
|
||||||
integrity sha512-hRjTJQiOYt/wBKEc+8V8p9OJ9799blAJcuKzn1JXh3pApHoWl1Emxh2BHc6MC7Qt6bbr3uDpNxaYQnATLIudEg==
|
integrity sha512-EyhBA6uN94W97lR7ecQVTvH9F5tIIdEw3ZqHuU4zekMlW82k5cXNXniiB7PRxQm06BqAjVr4sDT1mOy4RcphIA==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-define-polyfill-provider" "^0.1.2"
|
"@babel/helper-define-polyfill-provider" "^0.1.4"
|
||||||
|
|
||||||
balanced-match@^1.0.0:
|
balanced-match@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
@ -1768,9 +1768,9 @@ caniuse-api@^3.0.0:
|
|||||||
lodash.uniq "^4.5.0"
|
lodash.uniq "^4.5.0"
|
||||||
|
|
||||||
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001181:
|
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001181:
|
||||||
version "1.0.30001191"
|
version "1.0.30001192"
|
||||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001191.tgz#bacb432b6701f690c8c5f7c680166b9a9f0843d9"
|
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001192.tgz#b848ebc0ab230cf313d194a4775a30155d50ae40"
|
||||||
integrity sha512-xJJqzyd+7GCJXkcoBiQ1GuxEiOBCLQ0aVW9HMekifZsAVGdj5eJ4mFB9fEhSHipq9IOk/QXFJUiIr9lZT+EsGw==
|
integrity sha512-63OrUnwJj5T1rUmoyqYTdRWBqFFxZFlyZnRRjDR8NSUQFB6A+j/uBORU/SyJ5WzDLg4SPiZH40hQCBNdZ/jmAw==
|
||||||
|
|
||||||
chalk@^1.1.3:
|
chalk@^1.1.3:
|
||||||
version "1.1.3"
|
version "1.1.3"
|
||||||
@ -1982,9 +1982,9 @@ color@^3.0.0:
|
|||||||
color-string "^1.5.4"
|
color-string "^1.5.4"
|
||||||
|
|
||||||
colorette@^1.2.1:
|
colorette@^1.2.1:
|
||||||
version "1.2.1"
|
version "1.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b"
|
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94"
|
||||||
integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==
|
integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==
|
||||||
|
|
||||||
commander@2.17.x:
|
commander@2.17.x:
|
||||||
version "2.17.1"
|
version "2.17.1"
|
||||||
@ -2671,9 +2671,9 @@ ejs@^2.6.1:
|
|||||||
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
|
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
|
||||||
|
|
||||||
electron-to-chromium@^1.3.649:
|
electron-to-chromium@^1.3.649:
|
||||||
version "1.3.673"
|
version "1.3.674"
|
||||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.673.tgz#b4f81c930b388f962b7eba20d0483299aaa40913"
|
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.674.tgz#d97feefdf1d9411fdc9d56d17e1b9d67b818e710"
|
||||||
integrity sha512-ms+QR2ckfrrpEAjXweLx6kNCbpAl66DcW//3BZD4BV5KhUgr0RZRce1ON/9J3QyA3JO28nzgb5Xv8DnPr05ILg==
|
integrity sha512-DBmEKRVYLZAoQSW+AmLcTF5Bpwhk4RUkobtzXVDlfPPYIlbsH3Jfg3QbBjAfFcRARzMIo4YiMhp3N+RnMuo1Eg==
|
||||||
|
|
||||||
elliptic@^6.5.3:
|
elliptic@^6.5.3:
|
||||||
version "6.5.4"
|
version "6.5.4"
|
||||||
|
2
public/v2/js/accounts/index.js
vendored
2
public/v2/js/accounts/index.js
vendored
@ -1,2 +1,2 @@
|
|||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{297:function(t,s,a){t.exports=a(424)},424:function(t,s,a){"use strict";a.r(s);var e={name:"Index",props:{accountTypes:String},data:function(){return{accounts:[]}},created:function(){var t=this;axios.get("./api/v1/accounts?type="+this.$props.accountTypes).then((function(s){t.loadAccounts(s.data.data)}))},methods:{loadAccounts:function(t){for(var s in t)if(t.hasOwnProperty(s)&&/^0$|^[1-9]\d*$/.test(s)&&s<=4294967294){var a=t[s];"asset"===a.attributes.type&&null!==a.attributes.account_role&&(a.attributes.account_role=this.$t("firefly.account_role_"+a.attributes.account_role)),"asset"===a.attributes.type&&null===a.attributes.account_role&&(a.attributes.account_role=this.$t("firefly.Default asset account")),null===a.attributes.iban&&(a.attributes.iban=a.attributes.account_number),this.accounts.push(a)}}}},c=a(1),n=Object(c.a)(e,(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"row"},[a("div",{staticClass:"col-lg-12 col-md-12 col-sm-12 col-xs-12"},[a("div",{staticClass:"card"},[t._m(0),t._v(" "),a("div",{staticClass:"card-body p-0"},[a("table",{staticClass:"table table-sm table-striped"},[a("caption",{staticStyle:{display:"none"}},[t._v(t._s(t.$t("list.name")))]),t._v(" "),a("thead",[a("tr",[a("th",{attrs:{scope:"col"}},[t._v(" ")]),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.name")))]),t._v(" "),"asset"===t.$props.accountTypes?a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.role")))]):t._e(),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.iban")))]),t._v(" "),a("th",{staticStyle:{"text-align":"right"},attrs:{scope:"col"}},[t._v(t._s(t.$t("list.currentBalance")))]),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.balanceDiff")))])])]),t._v(" "),a("tbody",t._l(t.accounts,(function(s){return a("tr",[a("td",[a("div",{staticClass:"btn-group btn-group-xs"},[a("a",{staticClass:"btn btn-xs btn-default",attrs:{href:"./accounts/edit/"+s.id}},[a("i",{staticClass:"fa fas fa-pencil-alt"})]),t._v(" "),a("a",{staticClass:"btn btn-xs btn-danger",attrs:{href:"./accounts/delete/"+s.id}},[a("i",{staticClass:"fa far fa-trash"})])])]),t._v(" "),a("td",[t._v(t._s(s.attributes.name)+"\n ")]),t._v(" "),"asset"===t.$props.accountTypes?a("td",[t._v("\n "+t._s(s.attributes.account_role)+"\n ")]):t._e(),t._v(" "),a("td",[t._v("\n "+t._s(s.attributes.iban)+"\n ")]),t._v(" "),a("td",{staticStyle:{"text-align":"right"}},[t._v("\n "+t._s(Intl.NumberFormat("en-US",{style:"currency",currency:s.attributes.currency_code}).format(s.attributes.current_balance))+"\n ")]),t._v(" "),a("td",[t._v("diff")])])})),0)])]),t._v(" "),a("div",{staticClass:"card-footer"},[t._v("\n Footer stuff.\n ")])])])])}),[function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticClass:"card-header"},[s("h3",{staticClass:"card-title"},[this._v("Title thing")]),this._v(" "),s("div",{staticClass:"card-tools"},[s("div",{staticClass:"input-group input-group-sm",staticStyle:{width:"150px"}},[s("input",{staticClass:"form-control float-right",attrs:{type:"text",name:"table_search",placeholder:"Search"}}),this._v(" "),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-default",attrs:{type:"submit"}},[s("i",{staticClass:"fas fa-search"})])])])])])}],!1,null,"d668ce46",null).exports;a(15);var i=a(18),r={};new Vue({i18n:i,render:function(t){return t(n,{props:r})}}).$mount("#accounts")}},[[297,0,1]]]);
|
(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{297:function(t,s,a){t.exports=a(424)},424:function(t,s,a){"use strict";a.r(s);var e={name:"Index",props:{accountTypes:String},data:function(){return{accounts:[]}},created:function(){var t=this;axios.get("./api/v1/accounts?type="+this.$props.accountTypes).then((function(s){t.loadAccounts(s.data.data)}))},methods:{loadAccounts:function(t){for(var s in t)if(t.hasOwnProperty(s)&&/^0$|^[1-9]\d*$/.test(s)&&s<=4294967294){var a=t[s];"asset"===a.attributes.type&&null!==a.attributes.account_role&&(a.attributes.account_role=this.$t("firefly.account_role_"+a.attributes.account_role)),"asset"===a.attributes.type&&null===a.attributes.account_role&&(a.attributes.account_role=this.$t("firefly.Default asset account")),null===a.attributes.iban&&(a.attributes.iban=a.attributes.account_number),this.accounts.push(a)}}}},c=a(1),n=Object(c.a)(e,(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"row"},[a("div",{staticClass:"col-lg-12 col-md-12 col-sm-12 col-xs-12"},[a("div",{staticClass:"card"},[t._m(0),t._v(" "),a("div",{staticClass:"card-body p-0"},[a("table",{staticClass:"table table-sm table-striped"},[a("caption",{staticStyle:{display:"none"}},[t._v(t._s(t.$t("list.name")))]),t._v(" "),a("thead",[a("tr",[a("th",{attrs:{scope:"col"}},[t._v(" ")]),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.name")))]),t._v(" "),"asset"===t.$props.accountTypes?a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.role")))]):t._e(),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.iban")))]),t._v(" "),a("th",{staticStyle:{"text-align":"right"},attrs:{scope:"col"}},[t._v(t._s(t.$t("list.currentBalance")))]),t._v(" "),a("th",{attrs:{scope:"col"}},[t._v(t._s(t.$t("list.balanceDiff")))])])]),t._v(" "),a("tbody",t._l(t.accounts,(function(s){return a("tr",[a("td",[a("div",{staticClass:"btn-group btn-group-xs"},[a("a",{staticClass:"btn btn-xs btn-default",attrs:{href:"./accounts/edit/"+s.id}},[a("i",{staticClass:"fa fas fa-pencil-alt"})]),t._v(" "),a("a",{staticClass:"btn btn-xs btn-danger",attrs:{href:"./accounts/delete/"+s.id}},[a("i",{staticClass:"fa far fa-trash"})])])]),t._v(" "),a("td",[t._v(t._s(s.attributes.name)+"\n ")]),t._v(" "),"asset"===t.$props.accountTypes?a("td",[t._v("\n "+t._s(s.attributes.account_role)+"\n ")]):t._e(),t._v(" "),a("td",[t._v("\n "+t._s(s.attributes.iban)+"\n ")]),t._v(" "),a("td",{staticStyle:{"text-align":"right"}},[t._v("\n "+t._s(Intl.NumberFormat("en-US",{style:"currency",currency:s.attributes.currency_code}).format(s.attributes.current_balance))+"\n ")]),t._v(" "),a("td",[t._v("diff")])])})),0)])]),t._v(" "),a("div",{staticClass:"card-footer"},[t._v("\n Footer stuff.\n ")])])])])}),[function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticClass:"card-header"},[s("h3",{staticClass:"card-title"},[this._v("Title thing")]),this._v(" "),s("div",{staticClass:"card-tools"},[s("div",{staticClass:"input-group input-group-sm",staticStyle:{width:"150px"}},[s("input",{staticClass:"form-control float-right",attrs:{name:"table_search",placeholder:"Search",type:"text"}}),this._v(" "),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-default",attrs:{type:"submit"}},[s("i",{staticClass:"fas fa-search"})])])])])])}],!1,null,"3bbb2516",null).exports;a(15);var i=a(18),r={};new Vue({i18n:i,render:function(t){return t(n,{props:r})}}).$mount("#accounts")}},[[297,0,1]]]);
|
||||||
//# sourceMappingURL=index.js.map
|
//# sourceMappingURL=index.js.map
|
File diff suppressed because one or more lines are too long
2
public/v2/js/accounts/show.js
vendored
2
public/v2/js/accounts/show.js
vendored
@ -1,2 +1,2 @@
|
|||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{298:function(n,e,t){n.exports=t(425)},425:function(n,e,t){"use strict";t.r(e);var o={name:"Show"},r=t(1),s=Object(r.a)(o,(function(){var n=this.$createElement;return(this._self._c||n)("div",[this._v("\n I am a show\n")])}),[],!1,null,"dcd61a50",null).exports;t(15);var c=t(18),u={};new Vue({i18n:c,render:function(n){return n(s,{props:u})}}).$mount("#accounts_show")}},[[298,0,1]]]);
|
(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{298:function(n,e,t){n.exports=t(425)},425:function(n,e,t){"use strict";t.r(e);var o={name:"Show"},r=t(1),s=Object(r.a)(o,(function(){var n=this.$createElement;return(this._self._c||n)("div",[this._v("\n I am a show\n")])}),[],!1,null,"321a1058",null).exports;t(15);var u=t(18),a={};new Vue({i18n:u,render:function(n){return n(s,{props:a})}}).$mount("#accounts_show")}},[[298,0,1]]]);
|
||||||
//# sourceMappingURL=show.js.map
|
//# sourceMappingURL=show.js.map
|
@ -1 +1 @@
|
|||||||
{"version":3,"sources":["webpack:///./src/components/accounts/Show.vue?b4b4","webpack:///./src/components/accounts/Show.vue?4c02","webpack:///src/components/accounts/Show.vue","webpack:///./src/components/accounts/Show.vue","webpack:///./src/pages/accounts/show.js"],"names":["_h","this","$createElement","_self","_c","_v","require","i18n","props","Vue","render","createElement","Show","$mount"],"mappings":"uIAAA,ICAoM,EC2BpM,CACE,KAAF,Q,OCVe,EAXC,YACd,GHRW,WAAa,IAAiBA,EAATC,KAAgBC,eAAuC,OAAvDD,KAA0CE,MAAMC,IAAIJ,GAAa,MAAM,CAAvEC,KAA4EI,GAAG,2BAC3F,IGUpB,EACA,KACA,WACA,M,QCOFC,EAAQ,IAKR,IAAIC,EAAOD,EAAQ,IAKfE,EAAQ,GAGZ,IAAIC,IAAI,CACIF,OACAG,OAFJ,SAEWC,GACH,OAAOA,EAAcC,EAAM,CAACJ,MAAOA,OAExCK,OAAO,oB","file":"/public/js/accounts/show.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"\\n I am a show\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js??ref--4-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js??ref--4-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Show.vue?vue&type=script&lang=js&\"","<!--\n - Show.vue\n - Copyright (c) 2020 james@firefly-iii.org\n -\n - This file is part of Firefly III (https://github.com/firefly-iii).\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <https://www.gnu.org/licenses/>.\n -->\n\n<template>\n <div>\n I am a show\n </div>\n</template>\n\n<script>\n export default {\n name: \"Show\"\n }\n</script>\n\n<style scoped>\n\n</style>\n","import { render, staticRenderFns } from \"./Show.vue?vue&type=template&id=dcd61a50&scoped=true&\"\nimport script from \"./Show.vue?vue&type=script&lang=js&\"\nexport * from \"./Show.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dcd61a50\",\n null\n \n)\n\nexport default component.exports","/*\n * index.js\n * Copyright (c) 2020 james@firefly-iii.org\n *\n * This file is part of Firefly III (https://github.com/firefly-iii).\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <https://www.gnu.org/licenses/>.\n */\n\n\nrequire('../../bootstrap');\n\nimport Show from \"../../components/accounts/Show\";\n\n// i18n\nlet i18n = require('../../i18n');\n\n// get page name?\n\n\nlet props = {\n\n};\nnew Vue({\n i18n,\n render(createElement) {\n return createElement(Show, {props: props});\n }\n }).$mount('#accounts_show');\n"],"sourceRoot":""}
|
{"version":3,"sources":["webpack:///./src/components/accounts/Show.vue?4a89","webpack:///./src/components/accounts/Show.vue?4c02","webpack:///src/components/accounts/Show.vue","webpack:///./src/components/accounts/Show.vue","webpack:///./src/pages/accounts/show.js"],"names":["name","_h","this","$createElement","_self","_c","_v","require","i18n","props","Vue","render","createElement","Show","$mount"],"mappings":"uIAAA,ICAoM,EC2BpM,CACEA,KAAM,Q,OCVO,EAXC,YACd,GHRW,WAAa,IAAiBC,EAATC,KAAgBC,eAAuC,OAAvDD,KAA0CE,MAAMC,IAAIJ,GAAa,MAAM,CAAvEC,KAA4EI,GAAG,yBAC3F,IGUpB,EACA,KACA,WACA,M,QCOFC,EAAQ,IAKR,IAAIC,EAAOD,EAAQ,IAKfE,EAAQ,GAGZ,IAAIC,IAAI,CACIF,OACAG,OAFJ,SAEWC,GACH,OAAOA,EAAcC,EAAM,CAACJ,MAAOA,OAExCK,OAAO,oB","file":"/public/js/accounts/show.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"\\n I am a show\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js??ref--4-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js??ref--4-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Show.vue?vue&type=script&lang=js&\"","<!--\n - Show.vue\n - Copyright (c) 2020 james@firefly-iii.org\n -\n - This file is part of Firefly III (https://github.com/firefly-iii).\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <https://www.gnu.org/licenses/>.\n -->\n\n<template>\n <div>\n I am a show\n </div>\n</template>\n\n<script>\nexport default {\n name: \"Show\"\n}\n</script>\n\n<style scoped>\n\n</style>\n","import { render, staticRenderFns } from \"./Show.vue?vue&type=template&id=321a1058&scoped=true&\"\nimport script from \"./Show.vue?vue&type=script&lang=js&\"\nexport * from \"./Show.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"321a1058\",\n null\n \n)\n\nexport default component.exports","/*\n * index.js\n * Copyright (c) 2020 james@firefly-iii.org\n *\n * This file is part of Firefly III (https://github.com/firefly-iii).\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <https://www.gnu.org/licenses/>.\n */\n\n\nrequire('../../bootstrap');\n\nimport Show from \"../../components/accounts/Show\";\n\n// i18n\nlet i18n = require('../../i18n');\n\n// get page name?\n\n\nlet props = {\n\n};\nnew Vue({\n i18n,\n render(createElement) {\n return createElement(Show, {props: props});\n }\n }).$mount('#accounts_show');\n"],"sourceRoot":""}
|
2
public/v2/js/dashboard.js
vendored
2
public/v2/js/dashboard.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
public/v2/js/new-user/index.js
vendored
2
public/v2/js/new-user/index.js
vendored
@ -1,2 +1,2 @@
|
|||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{296:function(a,e,t){a.exports=t(423)},423:function(a,e,t){"use strict";t.r(e);var s={name:"Index"},n=t(1),i=Object(n.a)(s,(function(){var a=this.$createElement;this._self._c;return this._m(0)}),[function(){var a=this,e=a.$createElement,t=a._self._c||e;return t("div",{staticClass:"row"},[t("div",{staticClass:"col"},[t("div",{attrs:{id:"accordion"}},[t("div",{staticClass:"card card-primary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-toggle":"collapse","data-parent":"#accordion",href:"#collapseOne"}},[a._v("\n Create new accounts\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse show",attrs:{id:"collapseOne"}},[t("div",{staticClass:"card-body"},[t("div",{staticClass:"row"},[t("div",{staticClass:"col"},[t("p",[a._v("Explain")])])]),a._v(" "),t("div",{staticClass:"row"},[t("div",{staticClass:"col-lg-4"},[a._v("\n A\n ")]),a._v(" "),t("div",{staticClass:"col-lg-8"},[a._v("\n B\n ")])])])])]),a._v(" "),t("div",{staticClass:"card card-secondary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-toggle":"collapse","data-parent":"#accordion",href:"#collapseTwo"}},[a._v("\n Collapsible Group Danger\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse",attrs:{id:"collapseTwo"}},[t("div",{staticClass:"card-body"},[a._v("\n Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid.\n 3\n wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt\n laborum\n eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee\n nulla\n assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred\n nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft\n beer\n farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus\n labore sustainable VHS.\n ")])])]),a._v(" "),t("div",{staticClass:"card card-secondary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-toggle":"collapse","data-parent":"#accordion",href:"#collapseThree"}},[a._v("\n Collapsible Group Success\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse",attrs:{id:"collapseThree"}},[t("div",{staticClass:"card-body"},[a._v("\n Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid.\n 3\n wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt\n laborum\n eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee\n nulla\n assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred\n nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft\n beer\n farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus\n labore sustainable VHS.\n ")])])])])])])}],!1,null,"5c520d02",null).exports;t(15);var c=t(18),r={};new Vue({i18n:c,render:function(a){return a(i,{props:r})}}).$mount("#newuser")}},[[296,0,1]]]);
|
(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{296:function(a,e,t){a.exports=t(423)},423:function(a,e,t){"use strict";t.r(e);var s={name:"Index"},n=t(1),i=Object(n.a)(s,(function(){var a=this.$createElement;this._self._c;return this._m(0)}),[function(){var a=this,e=a.$createElement,t=a._self._c||e;return t("div",{staticClass:"row"},[t("div",{staticClass:"col"},[t("div",{attrs:{id:"accordion"}},[t("div",{staticClass:"card card-primary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-parent":"#accordion","data-toggle":"collapse",href:"#collapseOne"}},[a._v("\n Create new accounts\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse show",attrs:{id:"collapseOne"}},[t("div",{staticClass:"card-body"},[t("div",{staticClass:"row"},[t("div",{staticClass:"col"},[t("p",[a._v("Explain")])])]),a._v(" "),t("div",{staticClass:"row"},[t("div",{staticClass:"col-lg-4"},[a._v("\n A\n ")]),a._v(" "),t("div",{staticClass:"col-lg-8"},[a._v("\n B\n ")])])])])]),a._v(" "),t("div",{staticClass:"card card-secondary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-parent":"#accordion","data-toggle":"collapse",href:"#collapseTwo"}},[a._v("\n Collapsible Group Danger\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse",attrs:{id:"collapseTwo"}},[t("div",{staticClass:"card-body"},[a._v("\n Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid.\n 3\n wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt\n laborum\n eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee\n nulla\n assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred\n nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft\n beer\n farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus\n labore sustainable VHS.\n ")])])]),a._v(" "),t("div",{staticClass:"card card-secondary"},[t("div",{staticClass:"card-header"},[t("h4",{staticClass:"card-title"},[t("a",{attrs:{"data-parent":"#accordion","data-toggle":"collapse",href:"#collapseThree"}},[a._v("\n Collapsible Group Success\n ")])])]),a._v(" "),t("div",{staticClass:"panel-collapse collapse",attrs:{id:"collapseThree"}},[t("div",{staticClass:"card-body"},[a._v("\n Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid.\n 3\n wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt\n laborum\n eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee\n nulla\n assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred\n nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft\n beer\n farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus\n labore sustainable VHS.\n ")])])])])])])}],!1,null,"2d2bc9db",null).exports;t(15);var c=t(18),r={};new Vue({i18n:c,render:function(a){return a(i,{props:r})}}).$mount("#newuser")}},[[296,0,1]]]);
|
||||||
//# sourceMappingURL=index.js.map
|
//# sourceMappingURL=index.js.map
|
File diff suppressed because one or more lines are too long
2
public/v2/js/transactions/create.js
vendored
2
public/v2/js/transactions/create.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
public/v2/js/transactions/edit.js
vendored
2
public/v2/js/transactions/edit.js
vendored
@ -1,2 +1,2 @@
|
|||||||
(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{417:function(e,t,s){e.exports=s(426)},426:function(e,t,s){"use strict";s.r(t);var r=s(16),n={name:"Edit",data:function(){return{successMessage:"",errorMessage:""}}},a=s(1),i=Object(a.a)(n,(function(){var e=this.$createElement,t=this._self._c||e;return t("div",[t("alert",{attrs:{message:this.errorMessage,type:"danger"}}),this._v(" "),t("alert",{attrs:{message:this.successMessage,type:"success"}})],1)}),[],!1,null,"7a362243",null).exports,o=s(3),c=s.n(o);s(15),c.a.config.productionTip=!1;var u=s(18),p={};new c.a({i18n:u,store:r.a,render:function(e){return e(i,{props:p})},beforeCreate:function(){this.$store.commit("initialiseStore"),this.$store.dispatch("updateCurrencyPreference")}}).$mount("#transactions_edit")}},[[417,0,1]]]);
|
(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{417:function(e,t,s){e.exports=s(426)},426:function(e,t,s){"use strict";s.r(t);var r=s(16),n={name:"Edit",data:function(){return{successMessage:"",errorMessage:""}}},a=s(1),i=Object(a.a)(n,(function(){var e=this.$createElement,t=this._self._c||e;return t("div",[t("alert",{attrs:{message:this.errorMessage,type:"danger"}}),this._v(" "),t("alert",{attrs:{message:this.successMessage,type:"success"}})],1)}),[],!1,null,"7a362243",null).exports,o=s(2),c=s.n(o);s(15),c.a.config.productionTip=!1;var u=s(18),p={};new c.a({i18n:u,store:r.a,render:function(e){return e(i,{props:p})},beforeCreate:function(){this.$store.commit("initialiseStore"),this.$store.dispatch("updateCurrencyPreference")}}).$mount("#transactions_edit")}},[[417,0,1]]]);
|
||||||
//# sourceMappingURL=edit.js.map
|
//# sourceMappingURL=edit.js.map
|
2
public/v2/js/vendor.js
vendored
2
public/v2/js/vendor.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user