monopyly 1.5.2__py3-none-any.whl → 1.6.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- monopyly/CHANGELOG.md +22 -0
- monopyly/README.md +1 -1
- monopyly/__init__.py +1 -1
- monopyly/_version.py +2 -2
- monopyly/auth/blueprint.py +2 -0
- monopyly/auth/routes.py +1 -2
- monopyly/banking/accounts.py +4 -4
- monopyly/banking/actions.py +20 -17
- monopyly/banking/blueprint.py +2 -0
- monopyly/banking/filters.py +6 -6
- monopyly/banking/forms.py +7 -5
- monopyly/banking/routes.py +71 -9
- monopyly/banking/transactions.py +2 -3
- monopyly/common/forms/__init__.py +8 -0
- monopyly/common/forms/_forms.py +6 -16
- monopyly/common/forms/fields.py +0 -11
- monopyly/common/forms/utils.py +4 -4
- monopyly/common/transactions.py +72 -7
- monopyly/core/actions.py +2 -1
- monopyly/core/blueprint.py +2 -0
- monopyly/core/context_processors.py +3 -21
- monopyly/core/filters.py +0 -2
- monopyly/core/routes.py +1 -1
- monopyly/credit/actions.py +4 -5
- monopyly/credit/blueprint.py +2 -0
- monopyly/credit/cards.py +1 -1
- monopyly/credit/forms.py +9 -7
- monopyly/credit/routes.py +37 -62
- monopyly/credit/transactions/__init__.py +2 -0
- monopyly/credit/transactions/_transactions.py +1 -4
- monopyly/credit/transactions/activity/__init__.py +6 -0
- monopyly/credit/transactions/activity/parser.py +0 -1
- monopyly/credit/transactions/activity/reconciliation.py +5 -3
- monopyly/database/__init__.py +0 -3
- monopyly/database/models.py +63 -49
- monopyly/database/preloads.sql +6 -1
- monopyly/scripts/screenshot_application.py +100 -0
- monopyly/static/chartist-1.5.0.min.js +8 -0
- monopyly/static/css/style.css +39 -14
- monopyly/static/img/about/bank-account-details.png +0 -0
- monopyly/static/img/about/bank-account-summaries.png +0 -0
- monopyly/static/img/about/bank-accounts.png +0 -0
- monopyly/static/img/about/credit-account-details.png +0 -0
- monopyly/static/img/about/credit-statement-details.png +0 -0
- monopyly/static/img/about/credit-transactions.png +0 -0
- monopyly/static/img/about/homepage-user.png +0 -0
- monopyly/static/img/about/homepage.png +0 -0
- monopyly/static/jquery-3.7.1.min.js +2 -0
- monopyly/static/js/add-transfer.js +8 -9
- monopyly/static/js/bind-tag-actions.js +6 -0
- monopyly/static/js/create-balance-chart.js +1 -1
- monopyly/static/js/create-category-chart.js +1 -1
- monopyly/static/js/load-more-transactions.js +27 -0
- monopyly/static/js/modules/expand-transaction.js +7 -6
- monopyly/static/js/modules/update-display-ajax.js +20 -1
- monopyly/static/js/update-transactions-display.js +8 -2
- monopyly/templates/banking/account_form/account_form_page_new.html +10 -8
- monopyly/templates/banking/account_page.html +32 -33
- monopyly/templates/banking/account_summaries.html +2 -2
- monopyly/templates/banking/account_summary.html +1 -1
- monopyly/templates/banking/accounts_page.html +10 -8
- monopyly/templates/banking/transactions_table/table.html +3 -0
- monopyly/templates/banking/transactions_table/transactions.html +0 -1
- monopyly/templates/common/tag_tree.html +25 -0
- monopyly/templates/{credit → common}/tags_page.html +17 -13
- monopyly/templates/common/transactions_table/linked_bank_transaction.html +2 -2
- monopyly/templates/common/transactions_table/table.html +6 -0
- monopyly/templates/common/transactions_table/transactions.html +9 -15
- monopyly/templates/core/index.html +124 -109
- monopyly/templates/core/profile.html +19 -20
- monopyly/templates/credit/account_page.html +17 -17
- monopyly/templates/credit/card_form/card_form_page_new.html +8 -5
- monopyly/templates/credit/statement_page.html +45 -46
- monopyly/templates/credit/statement_reconciliation/statement_reconciliation_page.html +22 -22
- monopyly/templates/credit/statement_summary.html +2 -2
- monopyly/templates/credit/statements_page.html +13 -13
- monopyly/templates/credit/transaction_form/transaction_form_page_update.html +9 -9
- monopyly/templates/credit/transaction_submission_page.html +3 -3
- monopyly/templates/credit/transactions_page.html +38 -22
- monopyly/templates/credit/transactions_table/condensed_row_content.html +2 -2
- monopyly/templates/credit/transactions_table/expanded_row_content.html +5 -5
- monopyly/templates/credit/transactions_table/table.html +3 -0
- monopyly/templates/credit/transactions_table/transactions.html +0 -1
- monopyly/templates/layout.html +16 -9
- {monopyly-1.5.2.dist-info → monopyly-1.6.1.dist-info}/METADATA +8 -8
- {monopyly-1.5.2.dist-info → monopyly-1.6.1.dist-info}/RECORD +90 -84
- monopyly-1.6.1.dist-info/entry_points.txt +3 -0
- monopyly/static/jquery-3.7.0.min.js +0 -2
- monopyly/templates/credit/tag_tree/subtag_tree.html +0 -22
- monopyly/templates/credit/tag_tree/tag_tree.html +0 -13
- monopyly-1.5.2.dist-info/entry_points.txt +0 -2
- {monopyly-1.5.2.dist-info → monopyly-1.6.1.dist-info}/WHEEL +0 -0
- {monopyly-1.5.2.dist-info → monopyly-1.6.1.dist-info}/licenses/COPYING +0 -0
- {monopyly-1.5.2.dist-info → monopyly-1.6.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
{% extends 'layout.html' %}
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
{% block javascript %}
|
|
5
|
+
|
|
6
|
+
<script>
|
|
7
|
+
const CREDIT_ACTIVITY_RECONCILIATION_ENDPOINT = "{{ url_for('credit.reconcile_activity', statement_id=statement.id) }}";
|
|
8
|
+
const EXPAND_TRANSACTION_ENDPOINT = "{{ url_for('credit.expand_transaction') }}";
|
|
9
|
+
const LINKED_TRANSACTION_ENDPOINT = "{{ url_for('credit.show_linked_transaction') }}";
|
|
10
|
+
</script>
|
|
11
|
+
<script type="module" src="{{ url_for('static', filename='js/show-credit-activity-loader.js') }}">
|
|
12
|
+
</script>
|
|
13
|
+
<script type="module" src="{{ url_for('static', filename='js/highlight-discrepant-transactions.js') }}">
|
|
14
|
+
</script>
|
|
15
|
+
<script type="module" src="{{ url_for('static', filename='js/expand-transaction.js') }}">
|
|
16
|
+
</script>
|
|
17
|
+
<script type="module" src="{{ url_for('static', filename='js/show-linked-transaction.js') }}">
|
|
18
|
+
</script>
|
|
19
|
+
|
|
20
|
+
{% endblock %}
|
|
21
|
+
|
|
22
|
+
|
|
4
23
|
{% block header %}
|
|
5
24
|
|
|
6
25
|
<h1>
|
|
@@ -13,7 +32,7 @@
|
|
|
13
32
|
|
|
14
33
|
|
|
15
34
|
{% block content %}
|
|
16
|
-
{% set highlighted_transactions =
|
|
35
|
+
{% set highlighted_transactions = transactions|selectattr("highlight")|first %}
|
|
17
36
|
|
|
18
37
|
<div id="credit-statement-reconciliation-details" class="details">
|
|
19
38
|
|
|
@@ -30,8 +49,8 @@
|
|
|
30
49
|
</p>
|
|
31
50
|
{% endif %}
|
|
32
51
|
|
|
33
|
-
{% with
|
|
34
|
-
{% include 'credit/transactions_table/
|
|
52
|
+
{% with full_view = False %}
|
|
53
|
+
{% include 'credit/transactions_table/table.html' %}
|
|
35
54
|
{% endwith %}
|
|
36
55
|
</div>
|
|
37
56
|
|
|
@@ -65,22 +84,3 @@
|
|
|
65
84
|
</div>
|
|
66
85
|
|
|
67
86
|
{% endblock %}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
{% block javascript %}
|
|
71
|
-
|
|
72
|
-
<script>
|
|
73
|
-
const CREDIT_ACTIVITY_RECONCILIATION_ENDPOINT = "{{ url_for('credit.reconcile_activity', statement_id=statement.id) }}";
|
|
74
|
-
const EXPAND_TRANSACTION_ENDPOINT = "{{ url_for('credit.expand_transaction') }}";
|
|
75
|
-
const LINKED_TRANSACTION_ENDPOINT = "{{ url_for('credit.show_linked_transaction') }}";
|
|
76
|
-
</script>
|
|
77
|
-
<script type="module" src="{{ url_for('static', filename='js/show-credit-activity-loader.js') }}">
|
|
78
|
-
</script>
|
|
79
|
-
<script type="module" src="{{ url_for('static', filename='js/highlight-discrepant-transactions.js') }}">
|
|
80
|
-
</script>
|
|
81
|
-
<script type="module" src="{{ url_for('static', filename='js/expand-transaction.js') }}">
|
|
82
|
-
</script>
|
|
83
|
-
<script type="module" src="{{ url_for('static', filename='js/show-linked-transaction.js') }}">
|
|
84
|
-
</script>
|
|
85
|
-
|
|
86
|
-
{% endblock %}
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
|
|
53
53
|
<div class="form-line">
|
|
54
54
|
<div class="dollar-sign">$</div>
|
|
55
|
-
<input id="pay-amount" type="number" name="pay_amount" value="{{ statement.balance }}" />
|
|
55
|
+
<input id="pay-amount" type="number" name="pay_amount" value="{{ statement.balance }}" step="0.01" />
|
|
56
56
|
<input id="pay-date" type="date" name="pay_date" value="{{ date_today }}" />
|
|
57
57
|
</div>
|
|
58
58
|
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
<option value="0">Select a bank</option>
|
|
63
63
|
{% for account in bank_accounts %}
|
|
64
64
|
<option value="{{ account.id }}">
|
|
65
|
-
{{ account.bank.bank_name }} {{ account.
|
|
65
|
+
{{ account.bank.bank_name }} {{ account.account_type_view.type_name }} ({{ account.last_four_digits }})
|
|
66
66
|
</option>
|
|
67
67
|
{% endfor %}
|
|
68
68
|
</optgroup>
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
{% extends 'layout.html' %}
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
{% block javascript %}
|
|
5
|
+
|
|
6
|
+
<script src="{{ url_for('static', filename='js/define-filter.js') }}" defer>
|
|
7
|
+
</script>
|
|
8
|
+
<script>
|
|
9
|
+
const FILTER_ENDPOINT = "{{ url_for('credit.update_statements_display') }}";
|
|
10
|
+
</script>
|
|
11
|
+
<script type="module" src="{{ url_for('static', filename='js/update-statements-display.js') }}">
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
{% endblock %}
|
|
15
|
+
|
|
16
|
+
|
|
4
17
|
{% block left_sidebar %}
|
|
5
18
|
|
|
6
19
|
<nav id="sidebar-nav-menu">
|
|
@@ -54,16 +67,3 @@
|
|
|
54
67
|
<a name="bottom"></a>
|
|
55
68
|
|
|
56
69
|
{% endblock %}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
{% block javascript %}
|
|
60
|
-
|
|
61
|
-
<script src="{{ url_for('static', filename='js/define-filter.js') }}">
|
|
62
|
-
</script>
|
|
63
|
-
<script>
|
|
64
|
-
const FILTER_ENDPOINT = "{{ url_for('credit.update_statements_display') }}";
|
|
65
|
-
</script>
|
|
66
|
-
<script type="module" src="{{ url_for('static', filename='js/update-statements-display.js') }}">
|
|
67
|
-
</script>
|
|
68
|
-
|
|
69
|
-
{% endblock %}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
{% extends "credit/transaction_form/transaction_form_page.html" %}
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
{% block javascript %}
|
|
5
|
+
|
|
6
|
+
{{ super() }}
|
|
7
|
+
<script type="module" src="{{ url_for('static', filename='js/use-suggested-amount.js') }}">
|
|
8
|
+
</script>
|
|
9
|
+
|
|
10
|
+
{% endblock %}
|
|
11
|
+
|
|
12
|
+
|
|
4
13
|
{% block title %}
|
|
5
14
|
Update Credit Transaction
|
|
6
15
|
{% endblock %}
|
|
@@ -13,12 +22,3 @@
|
|
|
13
22
|
{% endwith %}
|
|
14
23
|
|
|
15
24
|
{% endblock %}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
{% block javascript %}
|
|
19
|
-
|
|
20
|
-
{{ super() }}
|
|
21
|
-
<script type="module" src="{{ url_for('static', filename='js/use-suggested-amount.js') }}">
|
|
22
|
-
</script>
|
|
23
|
-
|
|
24
|
-
{% endblock %}
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
<div id="receipt-card">
|
|
44
44
|
<div class="receipt-item">
|
|
45
45
|
<div class="receipt-key">Card:</div>
|
|
46
|
-
<div class="receipt-value">{{ transaction.
|
|
46
|
+
<div class="receipt-value">{{ transaction.statement_view.card.account.bank.bank_name }} ****-{{ transaction.statement_view.card.last_four_digits }}</div>
|
|
47
47
|
</div>
|
|
48
48
|
<div class="receipt-item">
|
|
49
49
|
<div class="receipt-key">Statement Date:</div>
|
|
50
|
-
<div class="receipt-value">{{ transaction.
|
|
50
|
+
<div class="receipt-value">{{ transaction.statement_view.issue_date }}</div>
|
|
51
51
|
</div>
|
|
52
52
|
</div>
|
|
53
53
|
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
<a class="submission button" href="{{ url_for('credit.add_transaction') }}">
|
|
63
63
|
Create a new transaction
|
|
64
64
|
</a>
|
|
65
|
-
<a class="submission button" href="{{ url_for('credit.add_transaction', card_id=transaction.
|
|
65
|
+
<a class="submission button" href="{{ url_for('credit.add_transaction', card_id=transaction.statement_view.card_id, statement_id=transaction.statement_id) }}">
|
|
66
66
|
Create a new transaction on this statement
|
|
67
67
|
</a>
|
|
68
68
|
<a class="submission button" href="{{ url_for('credit.load_statement_details', statement_id=transaction.statement_id) }}">
|
|
@@ -1,4 +1,33 @@
|
|
|
1
1
|
{% extends 'layout.html' %}
|
|
2
|
+
{% set full_view = True %}
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
{% block javascript %}
|
|
6
|
+
|
|
7
|
+
<script src="{{ url_for('static', filename='js/define-filter.js') }}" defer>
|
|
8
|
+
</script>
|
|
9
|
+
<script>
|
|
10
|
+
const FILTER_ENDPOINT = "{{ url_for('credit.update_transactions_display') }}";
|
|
11
|
+
const EXPAND_TRANSACTION_ENDPOINT = "{{ url_for('credit.expand_transaction') }}";
|
|
12
|
+
const LINKED_TRANSACTION_ENDPOINT = "{{ url_for('credit.show_linked_transaction') }}";
|
|
13
|
+
const LOAD_TRANSACTIONS_ENDPOINT = "{{ url_for('credit.load_more_transactions') }}";
|
|
14
|
+
const LOAD_TRANSACTIONS_SELECTORS = {
|
|
15
|
+
"selected_card_ids": {{ selected_card_ids }},
|
|
16
|
+
"sort_order": "{{ sort_order }}",
|
|
17
|
+
"block_count": 1,
|
|
18
|
+
"full_view": {{ full_view|tojson }}
|
|
19
|
+
}
|
|
20
|
+
</script>
|
|
21
|
+
<script type="module" src="{{ url_for('static', filename='js/update-transactions-display.js') }}">
|
|
22
|
+
</script>
|
|
23
|
+
<script type="module" src="{{ url_for('static', filename='js/load-more-transactions.js') }}">
|
|
24
|
+
</script>
|
|
25
|
+
<script type="module" src="{{ url_for('static', filename='js/expand-transaction.js') }}">
|
|
26
|
+
</script>
|
|
27
|
+
<script type="module" src="{{ url_for('static', filename='js/show-linked-transaction.js') }}">
|
|
28
|
+
</script>
|
|
29
|
+
|
|
30
|
+
{% endblock %}
|
|
2
31
|
|
|
3
32
|
|
|
4
33
|
{% block left_sidebar %}
|
|
@@ -60,30 +89,17 @@
|
|
|
60
89
|
</div>
|
|
61
90
|
|
|
62
91
|
<div class="transactions-container">
|
|
63
|
-
{%
|
|
64
|
-
|
|
65
|
-
{%
|
|
92
|
+
{% include 'credit/transactions_table/table.html' %}
|
|
93
|
+
|
|
94
|
+
{% if transactions|length < total_transactions %}
|
|
95
|
+
<div id="more-transactions" class="button">
|
|
96
|
+
<img class="icon" src="{{ url_for('static', filename='img/icons/plus-thick.png') }}">
|
|
97
|
+
<div>Load more transactions</div>
|
|
98
|
+
</div>
|
|
99
|
+
{% endif %}
|
|
66
100
|
</div>
|
|
67
101
|
|
|
68
|
-
<a name="bottom"></a>
|
|
69
|
-
|
|
70
|
-
{% endblock %}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
{% block javascript %}
|
|
74
102
|
|
|
75
|
-
<
|
|
76
|
-
</script>
|
|
77
|
-
<script>
|
|
78
|
-
const FILTER_ENDPOINT = "{{ url_for('credit.update_transactions_display') }}";
|
|
79
|
-
const EXPAND_TRANSACTION_ENDPOINT = "{{ url_for('credit.expand_transaction') }}";
|
|
80
|
-
const LINKED_TRANSACTION_ENDPOINT = "{{ url_for('credit.show_linked_transaction') }}";
|
|
81
|
-
</script>
|
|
82
|
-
<script type="module" src="{{ url_for('static', filename='js/update-transactions-display.js') }}">
|
|
83
|
-
</script>
|
|
84
|
-
<script type="module" src="{{ url_for('static', filename='js/expand-transaction.js') }}">
|
|
85
|
-
</script>
|
|
86
|
-
<script type="module" src="{{ url_for('static', filename='js/show-linked-transaction.js') }}">
|
|
87
|
-
</script>
|
|
103
|
+
<a name="bottom"></a>
|
|
88
104
|
|
|
89
105
|
{% endblock %}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
{% if full_view %}
|
|
21
21
|
<div class="card column">
|
|
22
|
-
<span class="bank">{{ transaction.
|
|
23
|
-
-<span class="digits">{{ transaction.
|
|
22
|
+
<span class="bank">{{ transaction.statement_view.card.account.bank.bank_name }}</span>
|
|
23
|
+
-<span class="digits">{{ transaction.statement_view.card.last_four_digits }}</span>
|
|
24
24
|
</div>
|
|
25
25
|
{% endif %}
|
|
@@ -46,21 +46,21 @@
|
|
|
46
46
|
<a href="{{ url_for('credit.load_statement_details', statement_id=transaction.statement_id) }}">
|
|
47
47
|
<img src="{{ url_for('static', filename='img/statement.png') }}" />
|
|
48
48
|
<div class="date">
|
|
49
|
-
<div class="month">{{ transaction.
|
|
50
|
-
<div class="year">{{ transaction.
|
|
49
|
+
<div class="month">{{ transaction.statement_view.issue_date.strftime('%b')|upper }}</div>
|
|
50
|
+
<div class="year">{{ transaction.statement_view.issue_date.year }}</div>
|
|
51
51
|
</div>
|
|
52
52
|
</a>
|
|
53
53
|
</div>
|
|
54
54
|
|
|
55
55
|
<div class="card">
|
|
56
|
-
<a href="{{ url_for('credit.load_account', account_id=transaction.
|
|
56
|
+
<a href="{{ url_for('credit.load_account', account_id=transaction.statement_view.card.account_id) }}">
|
|
57
57
|
{% with %}
|
|
58
58
|
{% set img_base = url_for('static', filename='img/cards/') %}
|
|
59
|
-
{% set card_url = img_base + transaction.
|
|
59
|
+
{% set card_url = img_base + transaction.statement_view.card.account.bank.bank_name.lower() + '-card.png' %}
|
|
60
60
|
{% set template_url = img_base + 'template-card.png' %}
|
|
61
61
|
<img class="card-background" src="{{ card_url }}" onerror="if (this.src != '{{ template_url }}') this.src = '{{ template_url }}'" />
|
|
62
62
|
<div class="card-number">
|
|
63
|
-
{{ transaction.
|
|
63
|
+
{{ transaction.statement_view.card.last_four_digits }}
|
|
64
64
|
</div>
|
|
65
65
|
{% endwith %}
|
|
66
66
|
</a>
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
{% set field_title_template = 'credit/transactions_table/transaction_field_titles.html' %}
|
|
2
1
|
{% set condensed_row_content_template = 'credit/transactions_table/condensed_row_content.html' %}
|
|
3
2
|
{% set expanded_row_content_template = 'credit/transactions_table/expanded_row_content.html' %}
|
|
4
3
|
{% set update_transaction_function = 'credit.update_transaction' %}
|
monopyly/templates/layout.html
CHANGED
|
@@ -33,12 +33,24 @@
|
|
|
33
33
|
<meta name="msapplication-config" content="{{ url_for('static', filename='favicon/browserconfig.xml') }}" />
|
|
34
34
|
<!-- ****** faviconit.com favicons ****** -->
|
|
35
35
|
<!-- Use Google JQuery CDN -->
|
|
36
|
-
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.
|
|
37
|
-
<script>
|
|
36
|
+
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
|
|
37
|
+
<script>
|
|
38
|
+
window.jQuery || document.write('<script src="{{ url_for('static', filename='jquery-3.7.1.min.js') }}"><\/script>')
|
|
39
|
+
</script>
|
|
38
40
|
<!-- Use Chartist via CDN -->
|
|
39
|
-
<link rel="stylesheet" href="
|
|
40
|
-
<script src="
|
|
41
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/chartist@1.5.0/dist/index.min.css" />
|
|
42
|
+
<script src="https://cdn.jsdelivr.net/npm/chartist@1.5.0/dist/index.umd.min.js"></script>
|
|
43
|
+
<script>
|
|
44
|
+
window.Chartist || document.write('<script src="{{ url_for('static', filename='chartist-1.5.0.min.js') }}"><\/script>')
|
|
45
|
+
</script>
|
|
46
|
+
<!-- Custom application JavaScript -->
|
|
47
|
+
<script type="module" src="{{ url_for('static', filename='js/toggle-navigation.js') }}">
|
|
48
|
+
</script>
|
|
49
|
+
{% block javascript %}
|
|
50
|
+
{% endblock %}
|
|
51
|
+
|
|
41
52
|
</head>
|
|
53
|
+
|
|
42
54
|
<body>
|
|
43
55
|
|
|
44
56
|
<header id="masthead">
|
|
@@ -112,10 +124,5 @@
|
|
|
112
124
|
</p>
|
|
113
125
|
</footer>
|
|
114
126
|
|
|
115
|
-
<script type="module" src="{{ url_for('static', filename='js/toggle-navigation.js') }}">
|
|
116
|
-
</script>
|
|
117
|
-
{% block javascript %}
|
|
118
|
-
{% endblock %}
|
|
119
|
-
|
|
120
127
|
</body>
|
|
121
128
|
</html>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: monopyly
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.6.1
|
|
4
4
|
Summary: A homemade personal finance manager.
|
|
5
5
|
Project-URL: Download, https://pypi.org/project/monopyly
|
|
6
6
|
Project-URL: Homepage, http://monopyly.com
|
|
@@ -22,16 +22,16 @@ Classifier: Programming Language :: Python
|
|
|
22
22
|
Classifier: Topic :: Office/Business :: Financial
|
|
23
23
|
Classifier: Topic :: Office/Business :: Financial :: Accounting
|
|
24
24
|
Classifier: Topic :: Office/Business :: Financial :: Spreadsheet
|
|
25
|
-
Requires-Python:
|
|
26
|
-
Requires-Dist: dry-foundation==1.
|
|
25
|
+
Requires-Python: >=3.10
|
|
26
|
+
Requires-Dist: dry-foundation==1.6.0
|
|
27
27
|
Requires-Dist: flask-wtf==1.2.2
|
|
28
28
|
Requires-Dist: flask==3.1.2
|
|
29
29
|
Requires-Dist: gunicorn==23.0.0
|
|
30
|
-
Requires-Dist: markdown==3.
|
|
31
|
-
Requires-Dist: nltk==3.9.
|
|
30
|
+
Requires-Dist: markdown==3.10
|
|
31
|
+
Requires-Dist: nltk==3.9.2
|
|
32
32
|
Requires-Dist: python-dateutil==2.9.0
|
|
33
|
-
Requires-Dist: rich==14.
|
|
34
|
-
Requires-Dist: sqlalchemy==2.0.
|
|
33
|
+
Requires-Dist: rich==14.2.0
|
|
34
|
+
Requires-Dist: sqlalchemy==2.0.45
|
|
35
35
|
Description-Content-Type: text/markdown
|
|
36
36
|
|
|
37
37
|
<div id="header">
|
|
@@ -159,7 +159,7 @@ Card balances are also visible by visiting the pages for individual statements.
|
|
|
159
159
|
A full history of statements for each card is available off the homepage.
|
|
160
160
|
Each statement's page gives the statement's balance, transactions, and due date.
|
|
161
161
|
|
|
162
|
-
<img class="screenshot" src="https://raw.githubusercontent.com/mitchnegus/monopyly/main/monopyly/static/img/about/statement-details.png" alt="statement details" width="800px" />
|
|
162
|
+
<img class="screenshot" src="https://raw.githubusercontent.com/mitchnegus/monopyly/main/monopyly/static/img/about/credit-statement-details.png" alt="statement details" width="800px" />
|
|
163
163
|
|
|
164
164
|
Payments can be made directly from a statement's page and can be linked to a bank account in the _Monopyly_ system for simplified tracking.
|
|
165
165
|
(Note that even linked transactions must be edited independently, as there are times when a user may wish to have separate values for linked transactions. For example, a credit card payment may be processed on a given date while it is only registered as a bank account transaction several days later.)
|