@wirecat/cli-memo 0.131.63 → 0.131.64
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/bin/memo.js +2 -2
- package/dist/bundle/{app-server-QBJG7OGQ.js → app-server-7KM4MSDA.js} +9 -9
- package/dist/bundle/{auto-LGA3VXKQ.js → auto-V3FUD6RW.js} +16 -16
- package/dist/bundle/{chunk-LK6D26RK.js → chunk-3SCHFNUH.js} +5 -5
- package/dist/bundle/{chunk-HGNWJJDT.js → chunk-3YNJBKGV.js} +13 -1
- package/dist/bundle/{chunk-Q3VEUHC7.js → chunk-6OS7PTOC.js} +3 -3
- package/dist/bundle/{chunk-2UCLF4AO.js → chunk-DXTNBVLV.js} +394 -115
- package/dist/bundle/{chunk-5Q534L4I.js → chunk-EDBZEHAU.js} +5 -4
- package/dist/bundle/{chunk-GNHDE7FH.js → chunk-FHZKHKBJ.js} +9 -9
- package/dist/bundle/{chunk-TBSWOVM3.js → chunk-FKUA3BTM.js} +14 -14
- package/dist/bundle/{chunk-TSKGEK2S.js → chunk-LVLFLWGY.js} +3 -3
- package/dist/bundle/{chunk-O2NQCWRM.js → chunk-ML46T7UC.js} +8 -8
- package/dist/bundle/{chunk-RSG7BRXI.js → chunk-MYXB2T77.js} +25 -1
- package/dist/bundle/{chunk-WDZOEBTE.js → chunk-NH3A5QTW.js} +2 -2
- package/dist/bundle/{chunk-6OZ2WI7Y.js → chunk-NIJZXGJN.js} +1 -1
- package/dist/bundle/{chunk-EGI6JHIA.js → chunk-NRHF7TQ4.js} +2 -2
- package/dist/bundle/{chunk-WDWKG7FJ.js → chunk-PVGK67AJ.js} +17 -0
- package/dist/bundle/{chunk-E5JQFEIQ.js → chunk-QHNAPLVB.js} +4 -4
- package/dist/bundle/{chunk-SJ55SMBE.js → chunk-QTF4ZXOL.js} +2 -1
- package/dist/bundle/{chunk-YVJAD5E7.js → chunk-T3LVSUNZ.js} +38 -5
- package/dist/bundle/{chunk-OXBETHGN.js → chunk-UXAP7MNL.js} +4 -4
- package/dist/bundle/{chunk-3ZXWLFUG.js → chunk-VLUDHCCX.js} +3 -3
- package/dist/bundle/{chunk-K4WCDPDL.js → chunk-WINH45XG.js} +4 -4
- package/dist/bundle/{chunk-4BKSE3CG.js → chunk-XPT5PX7H.js} +4 -4
- package/dist/bundle/{chunk-BOMHJR2E.js → chunk-ZX6SWNSR.js} +3 -3
- package/dist/bundle/{command-contract-SIXWLKAS.js → command-contract-PLB2JGFJ.js} +2 -2
- package/dist/bundle/{entry-SFLEGFSN.js → entry-MUE6HWX3.js} +1 -1
- package/dist/bundle/{failure-OGSLUNT6.js → failure-6SP64Q66.js} +14 -14
- package/dist/bundle/{first-run-ZKDGFY6P.js → first-run-3JYWLJCH.js} +1 -1
- package/dist/bundle/{first-screen-IQEU7XF2.js → first-screen-QH34AIFV.js} +3 -3
- package/dist/bundle/{mcp-Y4XMDC5Q.js → mcp-QX2D6EXA.js} +6 -6
- package/dist/bundle/memo.js +6 -6
- package/dist/bundle/{program-ZHLCEVWB.js → program-LXQLWUAG.js} +1755 -413
- package/dist/bundle/{server-IQILK5YP.js → server-L622PMVC.js} +9 -9
- package/dist/bundle/{server-I5BPRS5C.js → server-MVJU7QG4.js} +19 -19
- package/dist/bundle/{server-NKI7SVK5.js → server-SJVP2XXD.js} +6 -6
- package/dist/bundle/{store-6H4FPFTX.js → store-M5QSIRWJ.js} +1 -1
- package/dist/bundle/{store-maintenance-command-IFVWSQMJ.js → store-maintenance-command-PQCO5ICC.js} +5 -5
- package/dist/bundle/{update-YMILPFRY.js → update-MQUCCIBB.js} +15 -15
- package/dist/discovery/command.d.ts.map +1 -1
- package/dist/discovery/command.js +6 -0
- package/dist/discovery/command.js.map +1 -1
- package/dist/events/command.d.ts +4 -0
- package/dist/events/command.d.ts.map +1 -0
- package/dist/events/command.js +35 -0
- package/dist/events/command.js.map +1 -0
- package/dist/events/events.d.ts +52 -0
- package/dist/events/events.d.ts.map +1 -0
- package/dist/events/events.js +199 -0
- package/dist/events/events.js.map +1 -0
- package/dist/examples.d.ts.map +1 -1
- package/dist/examples.js +90 -3
- package/dist/examples.js.map +1 -1
- package/dist/finance/command.d.ts +1 -1
- package/dist/finance/command.d.ts.map +1 -1
- package/dist/finance/command.js +13 -30
- package/dist/finance/command.js.map +1 -1
- package/dist/finance/contracts-command.d.ts +12 -0
- package/dist/finance/contracts-command.d.ts.map +1 -0
- package/dist/finance/contracts-command.js +110 -0
- package/dist/finance/contracts-command.js.map +1 -0
- package/dist/finance/deals-command.d.ts.map +1 -1
- package/dist/finance/deals-command.js +5 -4
- package/dist/finance/deals-command.js.map +1 -1
- package/dist/finance/lines-command.d.ts +37 -0
- package/dist/finance/lines-command.d.ts.map +1 -0
- package/dist/finance/lines-command.js +70 -0
- package/dist/finance/lines-command.js.map +1 -0
- package/dist/finance/orders-command.d.ts.map +1 -1
- package/dist/finance/orders-command.js +5 -2
- package/dist/finance/orders-command.js.map +1 -1
- package/dist/finance/products-command.d.ts +12 -0
- package/dist/finance/products-command.d.ts.map +1 -0
- package/dist/finance/products-command.js +99 -0
- package/dist/finance/products-command.js.map +1 -0
- package/dist/finance/subscriptions-command.d.ts +12 -0
- package/dist/finance/subscriptions-command.d.ts.map +1 -0
- package/dist/finance/subscriptions-command.js +153 -0
- package/dist/finance/subscriptions-command.js.map +1 -0
- package/dist/finance/transactions-command.d.ts +12 -0
- package/dist/finance/transactions-command.d.ts.map +1 -0
- package/dist/finance/transactions-command.js +137 -0
- package/dist/finance/transactions-command.js.map +1 -0
- package/dist/finance/wallets-command.d.ts +12 -0
- package/dist/finance/wallets-command.d.ts.map +1 -0
- package/dist/finance/wallets-command.js +106 -0
- package/dist/finance/wallets-command.js.map +1 -0
- package/dist/finance/written.d.ts +37 -0
- package/dist/finance/written.d.ts.map +1 -0
- package/dist/finance/written.js +36 -0
- package/dist/finance/written.js.map +1 -0
- package/dist/knowledge/command.d.ts.map +1 -1
- package/dist/knowledge/command.js +3 -2
- package/dist/knowledge/command.js.map +1 -1
- package/dist/mcp/permissions.d.ts +1 -1
- package/dist/mcp/permissions.d.ts.map +1 -1
- package/dist/mcp/permissions.js +1 -0
- package/dist/mcp/permissions.js.map +1 -1
- package/dist/options.d.ts +2 -0
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +2 -0
- package/dist/options.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +174 -0
- package/dist/program.js.map +1 -1
- package/dist/reasons.d.ts.map +1 -1
- package/dist/reasons.js +24 -0
- package/dist/reasons.js.map +1 -1
- package/dist/records/import.d.ts +2 -4
- package/dist/records/import.d.ts.map +1 -1
- package/dist/records/import.js +41 -41
- package/dist/records/import.js.map +1 -1
- package/dist/records/input.d.ts +20 -0
- package/dist/records/input.d.ts.map +1 -0
- package/dist/records/input.js +115 -0
- package/dist/records/input.js.map +1 -0
- package/dist/records/mapping.d.ts +16 -1
- package/dist/records/mapping.d.ts.map +1 -1
- package/dist/records/mapping.js +24 -11
- package/dist/records/mapping.js.map +1 -1
- package/dist/records/record-commands.d.ts +8 -0
- package/dist/records/record-commands.d.ts.map +1 -0
- package/dist/records/record-commands.js +89 -0
- package/dist/records/record-commands.js.map +1 -0
- package/dist/records/sources.d.ts +48 -0
- package/dist/records/sources.d.ts.map +1 -0
- package/dist/records/sources.js +72 -0
- package/dist/records/sources.js.map +1 -0
- package/dist/review/kinds.d.ts +1 -1
- package/dist/review/kinds.d.ts.map +1 -1
- package/dist/review/kinds.js +4 -0
- package/dist/review/kinds.js.map +1 -1
- package/dist/review/review.d.ts.map +1 -1
- package/dist/review/review.js +4 -0
- package/dist/review/review.js.map +1 -1
- package/dist/rows.d.ts.map +1 -1
- package/dist/rows.js +34 -0
- package/dist/rows.js.map +1 -1
- package/dist/search/lane-gates.js +1 -1
- package/dist/search/lane-gates.js.map +1 -1
- package/dist/show/command.d.ts +3 -0
- package/dist/show/command.d.ts.map +1 -1
- package/dist/show/command.js +21 -1
- package/dist/show/command.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/skills/cli-memo/SKILL.md +8 -5
- package/skills/cli-memo/topics/money.md +20 -1
- package/skills/cli-memo/topics/proposals.md +8 -5
- package/skills/cli-memo/topics/search.md +7 -0
|
@@ -6,22 +6,22 @@ import {
|
|
|
6
6
|
envelope,
|
|
7
7
|
serveOverHttpUntilStopped,
|
|
8
8
|
serveOverStdio
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-ML46T7UC.js";
|
|
10
|
+
import "./chunk-6OS7PTOC.js";
|
|
11
|
+
import "./chunk-3SCHFNUH.js";
|
|
12
12
|
import "./chunk-DKO7WEXJ.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-QTF4ZXOL.js";
|
|
14
14
|
import "./chunk-I5L7MLZ6.js";
|
|
15
15
|
import "./chunk-B3SERZMP.js";
|
|
16
16
|
import "./chunk-XVREIQ2N.js";
|
|
17
17
|
import "./chunk-MM5NVP7F.js";
|
|
18
18
|
import "./chunk-3X4JM3ZR.js";
|
|
19
19
|
import "./chunk-H3ZN4YLB.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-VLUDHCCX.js";
|
|
21
|
+
import "./chunk-DXTNBVLV.js";
|
|
22
22
|
import "./chunk-FC5PK6M6.js";
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-NIJZXGJN.js";
|
|
24
|
+
import "./chunk-PVGK67AJ.js";
|
|
25
25
|
import "./chunk-SIJA2UYC.js";
|
|
26
26
|
import "./chunk-ASWLM74P.js";
|
|
27
27
|
import "./chunk-6G53ZFUT.js";
|
|
@@ -30,7 +30,7 @@ import "./chunk-RP6VV35S.js";
|
|
|
30
30
|
import "./chunk-RTLQHLHG.js";
|
|
31
31
|
import "./chunk-ACG5QN77.js";
|
|
32
32
|
import "./chunk-ZUQXDJ7A.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-3YNJBKGV.js";
|
|
34
34
|
import "./chunk-37E74SKW.js";
|
|
35
35
|
import "./chunk-2XVXF4RW.js";
|
|
36
36
|
import "./chunk-RGZUDHAQ.js";
|
|
@@ -6,21 +6,21 @@ import {
|
|
|
6
6
|
memoLevels,
|
|
7
7
|
readOnly,
|
|
8
8
|
refuseUnknownPermissions
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-EDBZEHAU.js";
|
|
10
10
|
import {
|
|
11
11
|
itemAnswer
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-T3LVSUNZ.js";
|
|
13
13
|
import {
|
|
14
14
|
grantLevels
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-FHZKHKBJ.js";
|
|
16
16
|
import "./chunk-QP3KNC5D.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-UXAP7MNL.js";
|
|
18
18
|
import {
|
|
19
19
|
errorObject,
|
|
20
20
|
mcpFailure,
|
|
21
21
|
throwParseFailures
|
|
22
|
-
} from "./chunk-
|
|
23
|
-
import "./chunk-
|
|
22
|
+
} from "./chunk-ZX6SWNSR.js";
|
|
23
|
+
import "./chunk-FKUA3BTM.js";
|
|
24
24
|
import "./chunk-RLX5SC2X.js";
|
|
25
25
|
import "./chunk-FG4Q6T72.js";
|
|
26
26
|
import "./chunk-SIBQ34LX.js";
|
|
@@ -29,13 +29,13 @@ import {
|
|
|
29
29
|
registerCommands,
|
|
30
30
|
runCommandForAgent,
|
|
31
31
|
toolsFromCommands
|
|
32
|
-
} from "./chunk-
|
|
33
|
-
import "./chunk-
|
|
32
|
+
} from "./chunk-6OS7PTOC.js";
|
|
33
|
+
import "./chunk-3SCHFNUH.js";
|
|
34
34
|
import "./chunk-DKO7WEXJ.js";
|
|
35
35
|
import {
|
|
36
36
|
UNTRUSTED_INSTRUCTION,
|
|
37
37
|
agentResult
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-QTF4ZXOL.js";
|
|
39
39
|
import "./chunk-VTKLHYCZ.js";
|
|
40
40
|
import "./chunk-B3SERZMP.js";
|
|
41
41
|
import {
|
|
@@ -46,13 +46,13 @@ import "./chunk-3X4JM3ZR.js";
|
|
|
46
46
|
import {
|
|
47
47
|
McpServer
|
|
48
48
|
} from "./chunk-H3ZN4YLB.js";
|
|
49
|
-
import "./chunk-
|
|
50
|
-
import "./chunk-
|
|
51
|
-
import "./chunk-
|
|
49
|
+
import "./chunk-QHNAPLVB.js";
|
|
50
|
+
import "./chunk-VLUDHCCX.js";
|
|
51
|
+
import "./chunk-DXTNBVLV.js";
|
|
52
52
|
import "./chunk-FC5PK6M6.js";
|
|
53
|
-
import "./chunk-
|
|
53
|
+
import "./chunk-NH3A5QTW.js";
|
|
54
54
|
import "./chunk-HTQTIKWP.js";
|
|
55
|
-
import "./chunk-
|
|
55
|
+
import "./chunk-NIJZXGJN.js";
|
|
56
56
|
import {
|
|
57
57
|
changesAuthorityAt,
|
|
58
58
|
describeProgram,
|
|
@@ -61,20 +61,20 @@ import {
|
|
|
61
61
|
inRun,
|
|
62
62
|
provide,
|
|
63
63
|
sealed
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-PVGK67AJ.js";
|
|
65
65
|
import "./chunk-SIJA2UYC.js";
|
|
66
|
-
import "./chunk-
|
|
66
|
+
import "./chunk-LVLFLWGY.js";
|
|
67
67
|
import "./chunk-ASWLM74P.js";
|
|
68
68
|
import "./chunk-6G53ZFUT.js";
|
|
69
69
|
import "./chunk-FH4P5UQA.js";
|
|
70
|
-
import "./chunk-
|
|
70
|
+
import "./chunk-NRHF7TQ4.js";
|
|
71
71
|
import "./chunk-RP6VV35S.js";
|
|
72
72
|
import "./chunk-RTLQHLHG.js";
|
|
73
73
|
import "./chunk-ACG5QN77.js";
|
|
74
74
|
import "./chunk-ZUQXDJ7A.js";
|
|
75
75
|
import {
|
|
76
76
|
openStore
|
|
77
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-3YNJBKGV.js";
|
|
78
78
|
import "./chunk-37E74SKW.js";
|
|
79
79
|
import "./chunk-2XVXF4RW.js";
|
|
80
80
|
import "./chunk-RGZUDHAQ.js";
|
|
@@ -91,7 +91,7 @@ import {
|
|
|
91
91
|
APP,
|
|
92
92
|
STORE_CLIENT,
|
|
93
93
|
VERSION
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-MYXB2T77.js";
|
|
95
95
|
import "./chunk-IK6KH3RE.js";
|
|
96
96
|
import "./chunk-SW6C6WH5.js";
|
|
97
97
|
import "./chunk-D72URWJE.js";
|
|
@@ -3,24 +3,24 @@ const require = __bundleRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
createBotServer,
|
|
5
5
|
serveBotOverStdio
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UXAP7MNL.js";
|
|
7
7
|
import "./chunk-RLX5SC2X.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-6OS7PTOC.js";
|
|
9
|
+
import "./chunk-QTF4ZXOL.js";
|
|
10
10
|
import "./chunk-XVREIQ2N.js";
|
|
11
11
|
import "./chunk-MM5NVP7F.js";
|
|
12
12
|
import "./chunk-3X4JM3ZR.js";
|
|
13
13
|
import "./chunk-H3ZN4YLB.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-DXTNBVLV.js";
|
|
15
15
|
import "./chunk-FC5PK6M6.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-PVGK67AJ.js";
|
|
17
17
|
import "./chunk-SIJA2UYC.js";
|
|
18
18
|
import "./chunk-ASWLM74P.js";
|
|
19
19
|
import "./chunk-6G53ZFUT.js";
|
|
20
20
|
import "./chunk-FH4P5UQA.js";
|
|
21
21
|
import "./chunk-RP6VV35S.js";
|
|
22
22
|
import "./chunk-ZUQXDJ7A.js";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-3YNJBKGV.js";
|
|
24
24
|
import "./chunk-37E74SKW.js";
|
|
25
25
|
import "./chunk-2XVXF4RW.js";
|
|
26
26
|
import "./chunk-RGZUDHAQ.js";
|
package/dist/bundle/{store-maintenance-command-IFVWSQMJ.js → store-maintenance-command-PQCO5ICC.js}
RENAMED
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
buildStems,
|
|
5
5
|
storeMaintenanceCommands,
|
|
6
6
|
storeSummary
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-QHNAPLVB.js";
|
|
8
|
+
import "./chunk-VLUDHCCX.js";
|
|
9
|
+
import "./chunk-DXTNBVLV.js";
|
|
10
10
|
import "./chunk-FC5PK6M6.js";
|
|
11
11
|
import "./chunk-HTQTIKWP.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-PVGK67AJ.js";
|
|
13
13
|
import "./chunk-SIJA2UYC.js";
|
|
14
14
|
import "./chunk-ASWLM74P.js";
|
|
15
15
|
import "./chunk-6G53ZFUT.js";
|
|
@@ -17,7 +17,7 @@ import "./chunk-FH4P5UQA.js";
|
|
|
17
17
|
import "./chunk-RP6VV35S.js";
|
|
18
18
|
import "./chunk-ACG5QN77.js";
|
|
19
19
|
import "./chunk-ZUQXDJ7A.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-3YNJBKGV.js";
|
|
21
21
|
import "./chunk-37E74SKW.js";
|
|
22
22
|
import "./chunk-2XVXF4RW.js";
|
|
23
23
|
import "./chunk-RGZUDHAQ.js";
|
|
@@ -7,34 +7,34 @@ import {
|
|
|
7
7
|
runUpdate,
|
|
8
8
|
updateNotice,
|
|
9
9
|
upgradeCommand
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-WINH45XG.js";
|
|
11
|
+
import "./chunk-FHZKHKBJ.js";
|
|
12
12
|
import "./chunk-QP3KNC5D.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-FKUA3BTM.js";
|
|
14
14
|
import "./chunk-RLX5SC2X.js";
|
|
15
15
|
import "./chunk-SIBQ34LX.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-3SCHFNUH.js";
|
|
17
17
|
import "./chunk-DKO7WEXJ.js";
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-QTF4ZXOL.js";
|
|
19
|
+
import "./chunk-QHNAPLVB.js";
|
|
20
|
+
import "./chunk-VLUDHCCX.js";
|
|
21
|
+
import "./chunk-DXTNBVLV.js";
|
|
22
22
|
import "./chunk-FC5PK6M6.js";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-NH3A5QTW.js";
|
|
24
24
|
import "./chunk-HTQTIKWP.js";
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
import "./chunk-NIJZXGJN.js";
|
|
26
|
+
import "./chunk-PVGK67AJ.js";
|
|
27
27
|
import "./chunk-SIJA2UYC.js";
|
|
28
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-LVLFLWGY.js";
|
|
29
29
|
import "./chunk-ASWLM74P.js";
|
|
30
30
|
import "./chunk-6G53ZFUT.js";
|
|
31
31
|
import "./chunk-FH4P5UQA.js";
|
|
32
|
-
import "./chunk-
|
|
32
|
+
import "./chunk-NRHF7TQ4.js";
|
|
33
33
|
import "./chunk-RP6VV35S.js";
|
|
34
34
|
import "./chunk-RTLQHLHG.js";
|
|
35
35
|
import "./chunk-ACG5QN77.js";
|
|
36
36
|
import "./chunk-ZUQXDJ7A.js";
|
|
37
|
-
import "./chunk-
|
|
37
|
+
import "./chunk-3YNJBKGV.js";
|
|
38
38
|
import "./chunk-37E74SKW.js";
|
|
39
39
|
import "./chunk-2XVXF4RW.js";
|
|
40
40
|
import "./chunk-RGZUDHAQ.js";
|
|
@@ -46,7 +46,7 @@ import "./chunk-VX4HNQLN.js";
|
|
|
46
46
|
import "./chunk-K5VF47E2.js";
|
|
47
47
|
import "./chunk-347UBASY.js";
|
|
48
48
|
import "./chunk-NZJUMLTD.js";
|
|
49
|
-
import "./chunk-
|
|
49
|
+
import "./chunk-MYXB2T77.js";
|
|
50
50
|
import "./chunk-IK6KH3RE.js";
|
|
51
51
|
import "./chunk-SW6C6WH5.js";
|
|
52
52
|
import "./chunk-D72URWJE.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAmB1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,wGAAwG;AACxG,eAAO,MAAM,QAAQ,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAmB1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,wGAAwG;AACxG,eAAO,MAAM,QAAQ,IAAI,CAAA;AAgFzB,gFAAgF;AAChF,eAAO,MAAM,eAAe,YAAa,OAAO,KAAG,IAOlD,CAAA;AAED,eAAO,MAAM,eAAe,YAAa,OAAO,WAAW,OAAO,KAAG,IAapE,CAAA"}
|
|
@@ -50,6 +50,7 @@ const SECTIONS = [
|
|
|
50
50
|
["notes remove", "write"],
|
|
51
51
|
["notes export", "write"],
|
|
52
52
|
["mail", "read"],
|
|
53
|
+
["events", "read"],
|
|
53
54
|
["agents", "read"],
|
|
54
55
|
["answers", "read"],
|
|
55
56
|
["memories", "write"],
|
|
@@ -64,6 +65,11 @@ const SECTIONS = [
|
|
|
64
65
|
["leads", "organise"],
|
|
65
66
|
["pipelines", "organise"],
|
|
66
67
|
["payments", "organise"],
|
|
68
|
+
["products", "organise"],
|
|
69
|
+
["contracts", "organise"],
|
|
70
|
+
["subscriptions", "organise"],
|
|
71
|
+
["wallets", "organise"],
|
|
72
|
+
["transactions", "organise"],
|
|
67
73
|
["records", "organise"],
|
|
68
74
|
["projects", "organise"],
|
|
69
75
|
["people", "organise"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/events/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGhD,OAAO,EAAE,KAAK,OAAO,EAAwB,MAAM,WAAW,CAAA;AAW9D,eAAO,MAAM,aAAa,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IA+B1F,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { annotate } from "@wirecat/cli-base/commands";
|
|
2
|
+
import { LOCAL_READ, withQuery } from "@wirecat/cli-core/cli";
|
|
3
|
+
import { InvalidArgumentError } from "commander";
|
|
4
|
+
import { answers, itemAnswer, plainText, withStore } from "../answer.js";
|
|
5
|
+
import { accountsLine, EVENTS_NOTE, EVENTS_QUERY, listEvents, showEvent } from "./events.js";
|
|
6
|
+
const upTo1000 = (value) => {
|
|
7
|
+
const number = Number(value);
|
|
8
|
+
if (!Number.isInteger(number) || number < 1 || number > 1000)
|
|
9
|
+
throw new InvalidArgumentError("a whole number, 1 to 1000");
|
|
10
|
+
return number;
|
|
11
|
+
};
|
|
12
|
+
export const eventsCommand = (program, streams, env) => {
|
|
13
|
+
const { print } = answers(program, streams, env);
|
|
14
|
+
const events = program
|
|
15
|
+
.command("events")
|
|
16
|
+
.description("calendar events of every account in the store, phone calls included")
|
|
17
|
+
.summary("calendar events and phone calls of every account");
|
|
18
|
+
withQuery(annotate(events.command("list"), { effects: LOCAL_READ, partial: true })
|
|
19
|
+
.description("events of every calendar account in the store, latest start first: calendars and imported phone calls")
|
|
20
|
+
.summary("events and phone calls of every account, latest first"), EVENTS_QUERY)
|
|
21
|
+
.addHelpText("after", EVENTS_NOTE)
|
|
22
|
+
.option("--limit <n>", "events at most, 1–1000", upTo1000, 100)
|
|
23
|
+
.option("--json", "print JSON; --json=ref,title keeps only those fields")
|
|
24
|
+
.action(async (words, { json, limit }, command) => {
|
|
25
|
+
const body = await withStore(env, (store) => listEvents(store, words, limit));
|
|
26
|
+
const accounts = body.meta?.accounts ?? [];
|
|
27
|
+
print(json, body, `${accountsLine(accounts)}\n${plainText(body, command)}`);
|
|
28
|
+
});
|
|
29
|
+
annotate(events.command("show"), { effects: LOCAL_READ, output: { entity: "event" } })
|
|
30
|
+
.description("one event: its time, the accounts and calendars that hold it, and its attendees")
|
|
31
|
+
.argument("<ref>", "event:<id>")
|
|
32
|
+
.option("--json", "print JSON; --json=ref,title keeps only those fields")
|
|
33
|
+
.action(async (ref, { json }) => print(json, itemAnswer(await withStore(env, (store) => showEvent(store, ref)))));
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/events/command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAgB,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE5F,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE;IACzC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,IAAI;QAC1D,MAAM,IAAI,oBAAoB,CAAC,2BAA2B,CAAC,CAAA;IAC7D,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IAChG,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,OAAO;SACnB,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,qEAAqE,CAAC;SAClF,OAAO,CAAC,kDAAkD,CAAC,CAAA;IAE9D,SAAS,CACP,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACrE,WAAW,CACV,uGAAuG,CACxG;SACA,OAAO,CAAC,uDAAuD,CAAC,EACnE,YAAY,CACb;SACE,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC;SACjC,MAAM,CAAC,aAAa,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAAG,CAAC;SAC9D,MAAM,CAAC,QAAQ,EAAE,sDAAsD,CAAC;SACxE,MAAM,CAAC,KAAK,EAAE,KAAe,EAAE,EAAE,IAAI,EAAE,KAAK,EAAqC,EAAE,OAAgB,EAAE,EAAE;QACtG,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QAC7E,MAAM,QAAQ,GAAI,IAAI,CAAC,IAAI,EAAE,QAAiC,IAAI,EAAE,CAAA;QACpE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IAC7E,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC;SACnF,WAAW,CAAC,iFAAiF,CAAC;SAC9F,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;SAC/B,MAAM,CAAC,QAAQ,EAAE,sDAAsD,CAAC;SACxE,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,EAAE,IAAI,EAAsB,EAAE,EAAE,CAC1D,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAChF,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type EntryEventType } from "@wirecat/cli-core/calendar";
|
|
2
|
+
import type { MessageStore } from "@wirecat/cli-core/store";
|
|
3
|
+
export declare const EVENTS_QUERY: {
|
|
4
|
+
readonly entity: "event";
|
|
5
|
+
readonly backend: "native";
|
|
6
|
+
readonly fields: readonly [import("@wirecat/cli-base/query").FieldSpec, import("@wirecat/cli-base/query").FieldSpec, import("@wirecat/cli-base/query").FieldSpec, import("@wirecat/cli-base/query").FieldSpec];
|
|
7
|
+
};
|
|
8
|
+
export declare const EVENTS_NOTE: string;
|
|
9
|
+
/** `memo events list`: one list over every calendar account the store holds, latest start first. */
|
|
10
|
+
export declare const listEvents: (store: MessageStore, words: readonly string[] | string | undefined, limit: number, { now, zone }?: {
|
|
11
|
+
now?: number;
|
|
12
|
+
zone?: string;
|
|
13
|
+
}) => Promise<import("@wirecat/cli-core/cli").ListBody<unknown>>;
|
|
14
|
+
/** `memo events show`: one event with its copies in every calendar account the store holds. */
|
|
15
|
+
export declare const showEvent: (store: MessageStore, reference: string) => Promise<{
|
|
16
|
+
id: string;
|
|
17
|
+
event_series_id: string | null;
|
|
18
|
+
title: string | null;
|
|
19
|
+
description: string | null;
|
|
20
|
+
location: string | null;
|
|
21
|
+
starts_at: string | null;
|
|
22
|
+
ends_at: string | null;
|
|
23
|
+
timezone: string | null;
|
|
24
|
+
origin: "auto" | "calendar" | "owner";
|
|
25
|
+
status: string | null;
|
|
26
|
+
all_day: boolean;
|
|
27
|
+
source_deleted_at: string | null;
|
|
28
|
+
deleted_at: string | null;
|
|
29
|
+
created_at: string;
|
|
30
|
+
updated_at: string;
|
|
31
|
+
change?: "cancelled" | "moved" | "new" | undefined;
|
|
32
|
+
changed_at?: string | null | undefined;
|
|
33
|
+
was?: {
|
|
34
|
+
starts_at: string | null;
|
|
35
|
+
ends_at: string | null;
|
|
36
|
+
} | undefined;
|
|
37
|
+
overlapping?: boolean | undefined;
|
|
38
|
+
overlaps?: string[] | undefined;
|
|
39
|
+
ref: string;
|
|
40
|
+
event_type: EntryEventType;
|
|
41
|
+
accounts: string[];
|
|
42
|
+
in: string;
|
|
43
|
+
attendees: {
|
|
44
|
+
email: string;
|
|
45
|
+
name: string | null;
|
|
46
|
+
response: import("@wirecat/cli-core/calendar").ParticipantResponse | null;
|
|
47
|
+
organizer: boolean;
|
|
48
|
+
}[];
|
|
49
|
+
untrusted: string[];
|
|
50
|
+
}>;
|
|
51
|
+
export declare const accountsLine: (accounts: readonly string[]) => string;
|
|
52
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events/events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,cAAc,EAAyC,MAAM,4BAA4B,CAAA;AAIrH,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAiBvE,eAAO,MAAM,YAAY;qBACf,OAAO;sBACN,QAAQ;;CAiBe,CAAA;AAMlC,eAAO,MAAM,WAAW,QAEgC,CAAA;AAqHxD,oGAAoG;AACpG,eAAO,MAAM,UAAU,UACd,YAAY,SACZ,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,SACtC,MAAM,kBAC8B;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,+DA0C3E,CAAA;AAED,+FAA+F;AAC/F,eAAO,MAAM,SAAS,UAAiB,YAAY,aAAa,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBrE,CAAA;AAED,eAAO,MAAM,YAAY,aAAc,SAAS,MAAM,EAAE,WACiD,CAAA"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { CliError } from "@wirecat/cli-base";
|
|
2
|
+
import { dateRange, dayBoundary, timezoneOf } from "@wirecat/cli-base/query";
|
|
3
|
+
import { accountsMeta } from "@wirecat/cli-core/calendar";
|
|
4
|
+
import { listQuery, nativeField, nativeTerms, termField, typedQuery } from "@wirecat/cli-core/cli";
|
|
5
|
+
import { eventItem } from "@wirecat/cli-core/meetings";
|
|
6
|
+
import { calendarAccounts } from "@wirecat/cli-core/services";
|
|
7
|
+
import { listAnswer } from "../answer.js";
|
|
8
|
+
import { accountName } from "../store/source-list.js";
|
|
9
|
+
const LIST = "events list";
|
|
10
|
+
// cli-core 0.613 keeps its own list of these, EVENTS_QUERY and eventsFilter unexported.
|
|
11
|
+
const EVENT_TYPES = [
|
|
12
|
+
"default",
|
|
13
|
+
"out-of-office",
|
|
14
|
+
"focus",
|
|
15
|
+
"working-location",
|
|
16
|
+
"birthday",
|
|
17
|
+
"from-mail",
|
|
18
|
+
"call",
|
|
19
|
+
];
|
|
20
|
+
export const EVENTS_QUERY = {
|
|
21
|
+
entity: "event",
|
|
22
|
+
backend: "native",
|
|
23
|
+
fields: [
|
|
24
|
+
nativeField({
|
|
25
|
+
name: "starts_at",
|
|
26
|
+
type: "time",
|
|
27
|
+
operators: ["term", "range"],
|
|
28
|
+
example: "starts_at:[2026-11-02 TO 2026-11-07}",
|
|
29
|
+
}),
|
|
30
|
+
termField("account", "kw", 'account:"phone:pixel"', {
|
|
31
|
+
relation: "one calendar account, provider:account, or every account of a provider",
|
|
32
|
+
}),
|
|
33
|
+
termField("calendar", "kw", "calendar:Calls", { relation: "one calendar, by its id or its title" }),
|
|
34
|
+
termField("event_type", "enum", "event_type:call", {
|
|
35
|
+
values: EVENT_TYPES,
|
|
36
|
+
relation: "events with a copy of this kind; a phone's imported calls are call",
|
|
37
|
+
}),
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
/** Recent history matters as much as what comes next: imported calls are all in the past. */
|
|
41
|
+
const RECENT_DAYS = 30;
|
|
42
|
+
const AHEAD_DAYS = 7;
|
|
43
|
+
export const EVENTS_NOTE = `\nEvery calendar account in the store is read, phone imports included. Without starts_at: the last ${RECENT_DAYS} ` +
|
|
44
|
+
`days and the next ${AHEAD_DAYS}. Latest start first.`;
|
|
45
|
+
/** Whoever sent the invitation or shared the calendar wrote these; a call's title is the name the phone shows. */
|
|
46
|
+
const UNTRUSTED = ["title", "description", "location", "in"];
|
|
47
|
+
const readAccounts = async (store) => {
|
|
48
|
+
const held = await calendarAccounts(store);
|
|
49
|
+
const stored = await store.accounts.storedAccounts();
|
|
50
|
+
const read = [];
|
|
51
|
+
for (const key of held) {
|
|
52
|
+
const one = stored.find(({ provider, account }) => provider === key.provider && account === key.account);
|
|
53
|
+
if (one)
|
|
54
|
+
read.push({ id: one.id, key, calendars: await store.calendar.calendars(one.id) });
|
|
55
|
+
}
|
|
56
|
+
return read;
|
|
57
|
+
};
|
|
58
|
+
const narrowed = (accounts, value) => {
|
|
59
|
+
const chosen = accounts.filter(({ key }) => accountName(key) === value || key.provider === value);
|
|
60
|
+
if (chosen.length === 0)
|
|
61
|
+
throw new CliError("not_found", `account:${value} names no calendar account — the store holds ${accounts.map(({ key }) => accountName(key)).join(", ") || "none"}`, { reason: "events.account-unknown" });
|
|
62
|
+
return chosen;
|
|
63
|
+
};
|
|
64
|
+
/** One calendar among the accounts read: a title two accounts share is refused with each one's id, never picked. */
|
|
65
|
+
const calendarOf = (accounts, value) => {
|
|
66
|
+
const all = accounts.flatMap((account) => account.calendars.map((calendar) => ({ account, calendar })));
|
|
67
|
+
const byId = all.filter(({ calendar }) => String(calendar.id) === value);
|
|
68
|
+
const found = byId.length ? byId : all.filter(({ calendar }) => calendar.title === value);
|
|
69
|
+
if (found.length === 1)
|
|
70
|
+
return found[0];
|
|
71
|
+
if (found.length === 0)
|
|
72
|
+
throw new CliError("not_found", `calendar:${value} names no calendar in the accounts read`);
|
|
73
|
+
throw new CliError("validation_error", `calendar:${value} names ${found.length} calendars; give one by its id: ` +
|
|
74
|
+
found.map(({ account, calendar }) => `calendar:${calendar.id} (${accountName(account.key)})`).join(", "));
|
|
75
|
+
};
|
|
76
|
+
const localDate = (at, zone) => new Intl.DateTimeFormat("en-CA", { timeZone: zone, year: "numeric", month: "2-digit", day: "2-digit" }).format(at);
|
|
77
|
+
const plusDays = (date, days) => {
|
|
78
|
+
const [year, month, day] = date.split("-").map(Number);
|
|
79
|
+
return new Date(Date.UTC(year, month - 1, day + days)).toISOString().slice(0, 10);
|
|
80
|
+
};
|
|
81
|
+
const midnight = (date, zone) => dayBoundary(date, zone, false, { start: 0, end: date.length });
|
|
82
|
+
/** As cli-core's own events list reads a `starts_at` term: from `lower` on, and before `upper`. */
|
|
83
|
+
const startsWindow = (node, zone, now) => {
|
|
84
|
+
const range = node.operator === "range"
|
|
85
|
+
? dateRange(node.value, node.upper ?? "*", node.lower_inclusive !== false, node.upper_inclusive !== false, zone, node.span, now)
|
|
86
|
+
: dateRange(node.value, node.value, true, true, zone, node.span, now);
|
|
87
|
+
return {
|
|
88
|
+
...(range.lower === undefined ? {} : { lower: range.lower_inclusive ? range.lower : range.lower + 1 }),
|
|
89
|
+
...(range.upper === undefined ? {} : { upper: range.upper_inclusive ? range.upper + 1 : range.upper }),
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
/** All-day events have days, not instants: the store compares them by these local days. */
|
|
93
|
+
const dated = (filter, zone) => {
|
|
94
|
+
if (filter.from !== undefined)
|
|
95
|
+
filter.fromDate = localDate(filter.from, zone);
|
|
96
|
+
if (filter.to !== undefined)
|
|
97
|
+
filter.toDate = plusDays(localDate(filter.to - 1, zone), 1);
|
|
98
|
+
if (filter.startsFrom !== undefined) {
|
|
99
|
+
const date = localDate(filter.startsFrom, zone);
|
|
100
|
+
filter.startsFromDate = midnight(date, zone) < filter.startsFrom ? plusDays(date, 1) : date;
|
|
101
|
+
}
|
|
102
|
+
return filter;
|
|
103
|
+
};
|
|
104
|
+
const windowMeta = (filter, zone) => {
|
|
105
|
+
const since = filter.startsFrom ?? filter.from;
|
|
106
|
+
return {
|
|
107
|
+
timezone: zone,
|
|
108
|
+
window: {
|
|
109
|
+
...(since === undefined ? {} : { since: new Date(since).toISOString() }),
|
|
110
|
+
...(filter.to === undefined ? {} : { until: new Date(filter.to - 1).toISOString() }),
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
const rowOf = (details, accounts) => {
|
|
115
|
+
const live = details.entries.filter(({ deletedAt }) => deletedAt === null);
|
|
116
|
+
const copies = live.length ? live : details.entries;
|
|
117
|
+
const held = accounts.flatMap((account) => account.calendars
|
|
118
|
+
.filter(({ id }) => copies.some(({ calendarId }) => calendarId === id))
|
|
119
|
+
.map((calendar) => ({ account: accountName(account.key), calendar: calendar.title ?? String(calendar.id) })));
|
|
120
|
+
return {
|
|
121
|
+
...eventItem(details.event),
|
|
122
|
+
ref: `event:${details.event.id}`,
|
|
123
|
+
event_type: copies.find(({ eventType }) => eventType !== null)?.eventType ?? "default",
|
|
124
|
+
accounts: [...new Set(held.map(({ account }) => account))],
|
|
125
|
+
in: held.map(({ account, calendar }) => `${account}/${calendar}`).join(", "),
|
|
126
|
+
untrusted: UNTRUSTED,
|
|
127
|
+
};
|
|
128
|
+
};
|
|
129
|
+
/** `memo events list`: one list over every calendar account the store holds, latest start first. */
|
|
130
|
+
export const listEvents = async (store, words, limit, { now = Date.now(), zone = timezoneOf() } = {}) => {
|
|
131
|
+
const terms = nativeTerms(listQuery(typedQuery(words), EVENTS_QUERY, LIST), LIST);
|
|
132
|
+
const every = await readAccounts(store);
|
|
133
|
+
const account = terms.get("account");
|
|
134
|
+
let accounts = account ? narrowed(every, account.value) : every;
|
|
135
|
+
const filter = { newest: true };
|
|
136
|
+
const calendar = terms.get("calendar");
|
|
137
|
+
if (calendar) {
|
|
138
|
+
const found = calendarOf(accounts, calendar.value);
|
|
139
|
+
accounts = [found.account];
|
|
140
|
+
filter.calendarId = found.calendar.id;
|
|
141
|
+
}
|
|
142
|
+
const kind = terms.get("event_type");
|
|
143
|
+
if (kind)
|
|
144
|
+
filter.eventType = kind.value.toLowerCase();
|
|
145
|
+
const starts = terms.get("starts_at");
|
|
146
|
+
if (starts) {
|
|
147
|
+
const { lower, upper } = startsWindow(starts, zone, now);
|
|
148
|
+
if (lower !== undefined)
|
|
149
|
+
filter.startsFrom = lower;
|
|
150
|
+
if (upper !== undefined)
|
|
151
|
+
filter.to = upper;
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
const today = localDate(now, zone);
|
|
155
|
+
filter.from = midnight(plusDays(today, -RECENT_DAYS), zone);
|
|
156
|
+
filter.to = midnight(plusDays(today, AHEAD_DAYS + 1), zone);
|
|
157
|
+
}
|
|
158
|
+
dated(filter, zone);
|
|
159
|
+
const read = accounts.map(({ id, key }) => ({ id, key }));
|
|
160
|
+
const events = read.length
|
|
161
|
+
? await store.calendar.events({ ...filter, accountIds: read.map(({ id }) => id), limit: limit + 1 })
|
|
162
|
+
: [];
|
|
163
|
+
const rows = [];
|
|
164
|
+
for (const event of events.slice(0, limit)) {
|
|
165
|
+
const details = await store.calendar.event(event.id);
|
|
166
|
+
if (details)
|
|
167
|
+
rows.push(rowOf(details, accounts));
|
|
168
|
+
}
|
|
169
|
+
const body = listAnswer(LIST, { items: rows, limit, has_more: events.length > limit });
|
|
170
|
+
body.meta = {
|
|
171
|
+
...body.meta,
|
|
172
|
+
...(await accountsMeta(store.calendar, read, [], now)),
|
|
173
|
+
...windowMeta(filter, zone),
|
|
174
|
+
};
|
|
175
|
+
return body;
|
|
176
|
+
};
|
|
177
|
+
/** `memo events show`: one event with its copies in every calendar account the store holds. */
|
|
178
|
+
export const showEvent = async (store, reference) => {
|
|
179
|
+
const text = reference.replace(/^event:/u, "");
|
|
180
|
+
if (!/^[1-9]\d*$/u.test(text))
|
|
181
|
+
throw new CliError("validation_error", "an event is event:<id>");
|
|
182
|
+
const details = await store.calendar.event(Number(text));
|
|
183
|
+
const accounts = await readAccounts(store);
|
|
184
|
+
const row = details && rowOf(details, accounts);
|
|
185
|
+
if (!details || !row?.accounts.length)
|
|
186
|
+
throw new CliError("not_found", `no event ${text} in any calendar account`);
|
|
187
|
+
return {
|
|
188
|
+
...row,
|
|
189
|
+
attendees: details.participants.map(({ email, name, response, organizer }) => ({
|
|
190
|
+
email,
|
|
191
|
+
name,
|
|
192
|
+
response,
|
|
193
|
+
organizer,
|
|
194
|
+
})),
|
|
195
|
+
untrusted: [...UNTRUSTED, "attendees.name"],
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
export const accountsLine = (accounts) => accounts.length ? `calendar accounts read: ${accounts.join(", ")}` : "no calendar account in the store";
|
|
199
|
+
//# sourceMappingURL=events.js.map
|