@equt/clis 0.1.10 → 0.1.11
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.
- package/dist/bookkeeping/commands/journals.js +1 -1
- package/dist/bookkeeping/commands/journals.js.map +1 -1
- package/dist/bookkeeping/commands/sms-parse.d.ts.map +1 -1
- package/dist/bookkeeping/commands/sms-parse.js +10 -7
- package/dist/bookkeeping/commands/sms-parse.js.map +1 -1
- package/package.json +3 -1
|
@@ -7,7 +7,7 @@ export function registerJournals(program) {
|
|
|
7
7
|
.description('Manage journals');
|
|
8
8
|
journals
|
|
9
9
|
.command('add <date>')
|
|
10
|
-
.description('Create a new journal entry (date: YYYY-MM-
|
|
10
|
+
.description('Create a new journal entry (date: YYYY-MM-DDTHH:MM:SS.sssZ)')
|
|
11
11
|
.option('--name <name>', 'Journal title (omit for untitled)')
|
|
12
12
|
.option('--note <note>', 'Optional note')
|
|
13
13
|
.action(async (date, opts) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journals.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/journals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAExE,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,MAAM,QAAQ,GAAG,OAAO;SACrB,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,iBAAiB,CAAC,CAAA;IAEjC,QAAQ;SACL,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC
|
|
1
|
+
{"version":3,"file":"journals.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/journals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAExE,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,MAAM,QAAQ,GAAG,OAAO;SACrB,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,iBAAiB,CAAC,CAAA;IAEjC,QAAQ;SACL,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,6DAA6D,CAAC;SAC1E,MAAM,CAAC,eAAe,EAAE,mCAAmC,CAAC;SAC5D,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC;SACxC,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,IAAsC,EAAE,EAAE;QACrE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAqB,CAAC,IAAI,CAAA;QACnD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;QAE7B,MAAM,UAAU,GAA4B;YAC1C,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;SAChC,CAAA;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,UAAU,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAA;QACjE,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,UAAU,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAA;QACrE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,CAAC,QAAQ,EAAE;YAC/D,UAAU,EAAE,UAEM;SACnB,CAAC,CAAA;QAEF,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QACtC,CAAC;aACI,CAAC;YACJ,WAAW,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;IACH,CAAC,CAAC,CAAA;IAEJ,QAAQ;SACL,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;SACpC,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,aAAa,EAAE,2BAA2B,EAAE,IAAI,CAAC;SACxD,MAAM,CAAC,gBAAgB,EAAE,yCAAyC,CAAC;SACnE,MAAM,CAAC,KAAK,EAAE,IAA8C,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAqB,CAAC,IAAI,CAAA;QACnD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAE7C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAC1B,MAAM,EACN;YACE,cAAc,EAAE,EAAE,CAAC,QAAQ;YAC3B,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,WAAW;gBAClB,CAAC,CAAC;oBACE,MAAM,EAAE;wBACN,QAAQ,EAAE,OAAO;wBACjB,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;qBACzC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,EACD,KAAK,CACN,CAAA;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACvC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;SAC5C,CAAC,CAAC,CAAA;QAEH,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QACzE,CAAC;aACI,CAAC;YACJ,WAAW,CACT,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EACxB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CACzC,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-parse.d.ts","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"sms-parse.d.ts","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA6FxC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+CvD"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import fs from 'node:fs';
|
|
2
2
|
import process from 'node:process';
|
|
3
|
+
import { TZDate } from '@date-fns/tz';
|
|
4
|
+
import { format } from 'date-fns';
|
|
3
5
|
const RE_BOC = /信用卡(\d+)于[^在]+在([^消]+)消费(RMB|USD|JPY|人民币)([0-9,]+(?:\.\d+)?)元/;
|
|
4
6
|
const RE_SPDB = /转入([0-9,]+(?:\.\d+)?)元\[(工资|其他代发)\]/;
|
|
5
7
|
const RE_CMB = /您账户(\d+)于[^信]+信用卡还款交易人民币([0-9,]+(?:\.\d+)?)/;
|
|
6
8
|
const RE_BOS = /本期贷款已足额归还,当期还款本息合计([0-9,]+(?:\.\d+)?)元/;
|
|
7
9
|
const RE_COMMA = /,/g;
|
|
10
|
+
function toLocalISOString(createdAt) {
|
|
11
|
+
const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
12
|
+
return format(new TZDate(createdAt, tz), 'yyyy-MM-dd\'T\'HH:mm:ss.SSSxxx');
|
|
13
|
+
}
|
|
8
14
|
function normalizeCurrency(raw) {
|
|
9
15
|
if (raw === 'RMB' || raw === '人民币')
|
|
10
16
|
return 'CNY';
|
|
@@ -13,9 +19,6 @@ function normalizeCurrency(raw) {
|
|
|
13
19
|
function parseAmount(raw) {
|
|
14
20
|
return Number.parseFloat(raw.replace(RE_COMMA, ''));
|
|
15
21
|
}
|
|
16
|
-
function extractDate(createdAt) {
|
|
17
|
-
return createdAt.slice(0, 10);
|
|
18
|
-
}
|
|
19
22
|
function parse95566(text, createdAt) {
|
|
20
23
|
if (text.includes('交易失败'))
|
|
21
24
|
return null;
|
|
@@ -23,7 +26,7 @@ function parse95566(text, createdAt) {
|
|
|
23
26
|
if (!m)
|
|
24
27
|
return null;
|
|
25
28
|
return {
|
|
26
|
-
date:
|
|
29
|
+
date: toLocalISOString(createdAt),
|
|
27
30
|
account: `BOC ${m[1]}`,
|
|
28
31
|
currency: normalizeCurrency(m[3]),
|
|
29
32
|
amount: parseAmount(m[4]),
|
|
@@ -36,7 +39,7 @@ function parse95528(text, createdAt) {
|
|
|
36
39
|
if (!m)
|
|
37
40
|
return null;
|
|
38
41
|
return {
|
|
39
|
-
date:
|
|
42
|
+
date: toLocalISOString(createdAt),
|
|
40
43
|
account: 'SPDB 6587',
|
|
41
44
|
currency: 'CNY',
|
|
42
45
|
amount: parseAmount(m[1]),
|
|
@@ -49,7 +52,7 @@ function parse95555(text, createdAt) {
|
|
|
49
52
|
if (!m)
|
|
50
53
|
return null;
|
|
51
54
|
return {
|
|
52
|
-
date:
|
|
55
|
+
date: toLocalISOString(createdAt),
|
|
53
56
|
account: `CMB ${m[1]}`,
|
|
54
57
|
currency: 'CNY',
|
|
55
58
|
amount: parseAmount(m[2]),
|
|
@@ -61,7 +64,7 @@ function parse95594(text, createdAt) {
|
|
|
61
64
|
if (!m)
|
|
62
65
|
return null;
|
|
63
66
|
return {
|
|
64
|
-
date:
|
|
67
|
+
date: toLocalISOString(createdAt),
|
|
65
68
|
account: 'BOSC 5571',
|
|
66
69
|
currency: 'CNY',
|
|
67
70
|
amount: parseAmount(m[1]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-parse.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,OAAO,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"sms-parse.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@equt/clis",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.11",
|
|
5
5
|
"packageManager": "bun@1.3.10",
|
|
6
6
|
"bin": {
|
|
7
7
|
"bookkeeping": "./dist/bookkeeping/index.js"
|
|
@@ -18,9 +18,11 @@
|
|
|
18
18
|
"prepare": "simple-git-hooks"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
+
"@date-fns/tz": "^1.4.1",
|
|
21
22
|
"@notionhq/client": "^5.13.0",
|
|
22
23
|
"cli-table3": "^0.6.5",
|
|
23
24
|
"commander": "^14.0.0",
|
|
25
|
+
"date-fns": "^4.1.0",
|
|
24
26
|
"js-yaml": "^4.1.0"
|
|
25
27
|
},
|
|
26
28
|
"devDependencies": {
|