@mx-cartographer/experiences 7.2.16-alpha.mm0 → 7.2.17
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/CHANGELOG.md +12 -0
- package/dist/{ExportCsvAction-sX8Rg4Ov.mjs → ExportCsvAction-DTO_UotC.mjs} +1 -1
- package/dist/{ManageIncome-CV-bGuR-.mjs → ManageIncome-CsCM4rNt.mjs} +63 -62
- package/dist/{RecurringSettings-G6_BbsIF.mjs → RecurringSettings-DZu2hw1r.mjs} +1 -1
- package/dist/{TransactionStore-DxPLdF3B.mjs → TransactionStore-hfOsBbDt.mjs} +1 -1
- package/dist/budgets/index.es.js +2 -2
- package/dist/cashflow/index.es.js +2 -2
- package/dist/common/index.es.js +2 -2
- package/dist/{exportTransactionsToCSV-7bVS7KXf.mjs → exportTransactionsToCSV-BwwmL4pM.mjs} +14 -13
- package/dist/finstrong/index.es.js +1 -1
- package/dist/recurringtransactions/index.es.js +4 -4
- package/dist/transactions/index.es.js +4 -4
- package/dist/trends/index.es.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## [7.2.17] - 12-01-2025
|
|
2
|
+
|
|
3
|
+
- **ADDED** - Load time tracking for full standalone widgets
|
|
4
|
+
|
|
5
|
+
## [7.2.16] - 12-01-2025
|
|
6
|
+
|
|
7
|
+
- **FIXED** - Missing `Pending` column in CSV export
|
|
8
|
+
|
|
9
|
+
## [7.2.15] - 11-25-2025
|
|
10
|
+
|
|
11
|
+
- **FIXED** - Next recurring transaction date displayed offset by one day
|
|
12
|
+
|
|
1
13
|
## [7.2.14] - 11-25-2025
|
|
2
14
|
|
|
3
15
|
- **FIXED** - Removed border from embedded widgets
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { observer as c } from "mobx-react-lite";
|
|
3
3
|
import { Icon as i } from "@mxenabled/mxui";
|
|
4
|
-
import { e as p } from "./exportTransactionsToCSV-
|
|
4
|
+
import { e as p } from "./exportTransactionsToCSV-BwwmL4pM.mjs";
|
|
5
5
|
import { O as m } from "./User-BQUxBeZV.mjs";
|
|
6
6
|
import { R as x } from "./ResponsiveButton-DZFp78fJ.mjs";
|
|
7
7
|
import { g as _, h as C, u as l } from "./hooks-D6XlXHf4.mjs";
|
|
@@ -14,23 +14,24 @@ import { F as d, S as N, D as Y, g as Q, R as E, e as de } from "./RecurringTran
|
|
|
14
14
|
import { subDays as ue } from "date-fns/subDays";
|
|
15
15
|
import { startOfToday as z } from "date-fns/startOfToday";
|
|
16
16
|
import { endOfMonth as _e } from "date-fns/endOfMonth";
|
|
17
|
+
import { parseISO as me } from "date-fns/parseISO";
|
|
17
18
|
import $ from "@mui/material/Button";
|
|
18
|
-
import { Delete as
|
|
19
|
-
import { T as X, a as
|
|
20
|
-
import { getDayOfYear as
|
|
21
|
-
import { setDayOfYear as
|
|
22
|
-
import { AdapterDateFns as
|
|
23
|
-
import { DatePicker as
|
|
24
|
-
import { LocalizationProvider as
|
|
25
|
-
import { u as w, j as M, g as F, b as
|
|
26
|
-
import { b as
|
|
19
|
+
import { Delete as pe, Add as he, ReceiptLong as ye } from "@mxenabled/mx-icons";
|
|
20
|
+
import { T as X, a as ge, u as fe, S as Ce, b as be } from "./TransactionDetails-CDtya0KS.mjs";
|
|
21
|
+
import { getDayOfYear as xe } from "date-fns/getDayOfYear";
|
|
22
|
+
import { setDayOfYear as Se } from "date-fns/setDayOfYear";
|
|
23
|
+
import { AdapterDateFns as ve } from "@mui/x-date-pickers/AdapterDateFnsV3";
|
|
24
|
+
import { DatePicker as we } from "@mui/x-date-pickers";
|
|
25
|
+
import { LocalizationProvider as Ae } from "@mui/x-date-pickers/LocalizationProvider";
|
|
26
|
+
import { u as w, j as M, g as F, b as Ie, h as Z, p as De } from "./hooks-D6XlXHf4.mjs";
|
|
27
|
+
import { b as Ee, f as J } from "./NumberFormatting-Buh7u8Oi.mjs";
|
|
27
28
|
import { D as O } from "./Drawer-kEE73B87.mjs";
|
|
28
29
|
import { A as R } from "./WidgetContainer-EbrN1oIo.mjs";
|
|
29
|
-
import { f as
|
|
30
|
-
import { formatISO as
|
|
31
|
-
import { fromUnixTime as
|
|
32
|
-
import { S as
|
|
33
|
-
import { h as
|
|
30
|
+
import { f as Re, D as Te, a as Le } from "./Dialog-CWW597AF.mjs";
|
|
31
|
+
import { formatISO as Oe } from "date-fns/formatISO";
|
|
32
|
+
import { fromUnixTime as ke } from "date-fns/fromUnixTime";
|
|
33
|
+
import { S as Ne } from "./SearchBox-B2_zLv8-.mjs";
|
|
34
|
+
import { h as Me } from "./DateUtil-BcuH7ErC.mjs";
|
|
34
35
|
import { b as B } from "./Category-CevNQ03n.mjs";
|
|
35
36
|
import { T as V } from "./User-BQUxBeZV.mjs";
|
|
36
37
|
const ee = ({
|
|
@@ -63,11 +64,11 @@ const ee = ({
|
|
|
63
64
|
{ id: 6, label: o.weekday_saturday }
|
|
64
65
|
], y = [...Array(31).keys()].map((p) => ({
|
|
65
66
|
id: p + 1,
|
|
66
|
-
label:
|
|
67
|
+
label: Ee(p + 1)
|
|
67
68
|
}));
|
|
68
69
|
y[30].label += ` (${o.last_day_of_month})`;
|
|
69
|
-
const C = y.slice(0, 15), v = y.slice(14), b = n === d.EveryWeek || n === d.EveryOtherWeek, g = n === d.TwiceAMonth || n === d.EveryMonth || n === d.EveryOtherMonth || n === d.EveryQuarter || n === d.EveryOtherQuarter,
|
|
70
|
-
p && s(
|
|
70
|
+
const C = y.slice(0, 15), v = y.slice(14), b = n === d.EveryWeek || n === d.EveryOtherWeek, g = n === d.TwiceAMonth || n === d.EveryMonth || n === d.EveryOtherMonth || n === d.EveryQuarter || n === d.EveryOtherQuarter, I = Se(z(), t), f = (p) => {
|
|
71
|
+
p && s(xe(p));
|
|
71
72
|
};
|
|
72
73
|
return /* @__PURE__ */ c(h, { gap: 24, sx: { m: 24 }, children: [
|
|
73
74
|
/* @__PURE__ */ e(
|
|
@@ -106,17 +107,17 @@ const ee = ({
|
|
|
106
107
|
value: r || 0
|
|
107
108
|
}
|
|
108
109
|
),
|
|
109
|
-
n === d.EveryYear && /* @__PURE__ */ e(
|
|
110
|
-
|
|
110
|
+
n === d.EveryYear && /* @__PURE__ */ e(Ae, { dateAdapter: ve, children: /* @__PURE__ */ e(
|
|
111
|
+
we,
|
|
111
112
|
{
|
|
112
113
|
disablePast: !0,
|
|
113
114
|
label: o.next_payment_date,
|
|
114
115
|
onChange: f,
|
|
115
|
-
value:
|
|
116
|
+
value: I
|
|
116
117
|
}
|
|
117
118
|
) })
|
|
118
119
|
] });
|
|
119
|
-
},
|
|
120
|
+
}, Fe = A(({ repeatingTransaction: n }) => {
|
|
120
121
|
const { recurring: t } = w(), { updateRepeatingTransaction: r } = M(), { onEvent: i } = F(), [s, l] = u.useState(!1), [o, a] = u.useState(n.recurrence_type), [m, y] = u.useState(n.recurrence_day), [C, v] = u.useState(n.second_recurrence_day), b = async () => {
|
|
121
122
|
await r({
|
|
122
123
|
...n,
|
|
@@ -159,9 +160,9 @@ const ee = ({
|
|
|
159
160
|
}
|
|
160
161
|
)
|
|
161
162
|
] });
|
|
162
|
-
}),
|
|
163
|
+
}), Ge = A(
|
|
163
164
|
({ onDeleted: n, recurringTransaction: t }) => {
|
|
164
|
-
const { recurring: r } = w(), { selectedAccountGuids: i } =
|
|
165
|
+
const { recurring: r } = w(), { selectedAccountGuids: i } = Ie(), { onEvent: s } = F(), { deleteRepeatingTransaction: l } = M(), { setFilter: o, transactions: a } = Z(), { amount: m, description: y, merchant_guid: C } = t, [v, b] = u.useState(!1), [g, I] = u.useState("");
|
|
165
166
|
u.useEffect(() => {
|
|
166
167
|
o({
|
|
167
168
|
accounts: i,
|
|
@@ -193,9 +194,9 @@ const ee = ({
|
|
|
193
194
|
p ? "+" : "",
|
|
194
195
|
J(m, "0,0.00")
|
|
195
196
|
] }),
|
|
196
|
-
/* @__PURE__ */ e(S, { color: "text.secondary", variant: "body2", children: `${r.next_payment_date}: ${
|
|
197
|
-
t.predicted_occurs_on,
|
|
198
|
-
|
|
197
|
+
/* @__PURE__ */ e(S, { color: "text.secondary", variant: "body2", children: `${r.next_payment_date}: ${Re(
|
|
198
|
+
me(t.predicted_occurs_on),
|
|
199
|
+
Te.MONTH_DAY_YEAR
|
|
199
200
|
)}` })
|
|
200
201
|
] }),
|
|
201
202
|
/* @__PURE__ */ c(K, { sx: { bgcolor: "background.paper" }, children: [
|
|
@@ -221,7 +222,7 @@ const ee = ({
|
|
|
221
222
|
),
|
|
222
223
|
/* @__PURE__ */ e(T, { variant: "inset" })
|
|
223
224
|
] }),
|
|
224
|
-
/* @__PURE__ */ e(
|
|
225
|
+
/* @__PURE__ */ e(Fe, { repeatingTransaction: t }),
|
|
225
226
|
/* @__PURE__ */ e(T, {})
|
|
226
227
|
] }),
|
|
227
228
|
/* @__PURE__ */ e(
|
|
@@ -229,26 +230,26 @@ const ee = ({
|
|
|
229
230
|
{
|
|
230
231
|
color: "error",
|
|
231
232
|
onClick: G,
|
|
232
|
-
startIcon: /* @__PURE__ */ e(
|
|
233
|
+
startIcon: /* @__PURE__ */ e(pe, {}),
|
|
233
234
|
sx: { mx: 24, my: 16 },
|
|
234
235
|
variant: "text",
|
|
235
236
|
children: p ? r.delete_income_title : r.delete_expense_title
|
|
236
237
|
}
|
|
237
238
|
),
|
|
238
239
|
/* @__PURE__ */ e(S, { bold: !0, sx: { ml: 24, mt: 16 }, variant: "Body", children: r.paid_transactions }),
|
|
239
|
-
/* @__PURE__ */ e(X, { height: "30dvh", onClick:
|
|
240
|
+
/* @__PURE__ */ e(X, { height: "30dvh", onClick: I }),
|
|
240
241
|
/* @__PURE__ */ e(
|
|
241
242
|
O,
|
|
242
243
|
{
|
|
243
244
|
ariaLabelClose: r.close_drawer_aria,
|
|
244
245
|
isOpen: !!g && !!f,
|
|
245
|
-
onClose: () =>
|
|
246
|
+
onClose: () => I(""),
|
|
246
247
|
title: r.transaction_details_drawer_title,
|
|
247
|
-
children: f && /* @__PURE__ */ e(
|
|
248
|
+
children: f && /* @__PURE__ */ e(ge, { transaction: f })
|
|
248
249
|
}
|
|
249
250
|
),
|
|
250
251
|
/* @__PURE__ */ e(
|
|
251
|
-
|
|
252
|
+
Le,
|
|
252
253
|
{
|
|
253
254
|
copy: {
|
|
254
255
|
title: p ? r.delete_income_title : r.delete_expense_title,
|
|
@@ -262,7 +263,7 @@ const ee = ({
|
|
|
262
263
|
)
|
|
263
264
|
] });
|
|
264
265
|
}
|
|
265
|
-
),
|
|
266
|
+
), Pe = A(
|
|
266
267
|
({ onClick: n = () => {
|
|
267
268
|
}, repeatingTransaction: t }) => {
|
|
268
269
|
const { recurring: r } = w(), [i, s] = u.useState(!1), l = u.useMemo(
|
|
@@ -333,7 +334,7 @@ const ee = ({
|
|
|
333
334
|
onClose: () => s(!1),
|
|
334
335
|
title: t.repeating_transaction_type === E.Income ? r.income_details : r.expense_details,
|
|
335
336
|
children: /* @__PURE__ */ e(
|
|
336
|
-
|
|
337
|
+
Ge,
|
|
337
338
|
{
|
|
338
339
|
onDeleted: () => s(!1),
|
|
339
340
|
recurringTransaction: t
|
|
@@ -343,18 +344,18 @@ const ee = ({
|
|
|
343
344
|
)
|
|
344
345
|
] });
|
|
345
346
|
}
|
|
346
|
-
),
|
|
347
|
+
), Ue = A(
|
|
347
348
|
({
|
|
348
349
|
bgcolor: n = "background.default",
|
|
349
350
|
description: t,
|
|
350
351
|
onSearch: r,
|
|
351
352
|
onSelected: i
|
|
352
353
|
}) => {
|
|
353
|
-
const { recurring: s } = w(), { searchValue: l, setSearchValue: o } =
|
|
354
|
+
const { recurring: s } = w(), { searchValue: l, setSearchValue: o } = fe();
|
|
354
355
|
return /* @__PURE__ */ c(h, { sx: { bgcolor: n, gap: 16, pt: 8 }, children: [
|
|
355
356
|
t && /* @__PURE__ */ e(U, { sx: { mx: 24 }, children: t }),
|
|
356
357
|
/* @__PURE__ */ e(
|
|
357
|
-
|
|
358
|
+
Ne,
|
|
358
359
|
{
|
|
359
360
|
ariaLabel: s.select_transaction_search_aria,
|
|
360
361
|
cancelAriaLabel: s.select_transaction_search_cancel_aria,
|
|
@@ -377,7 +378,7 @@ const ee = ({
|
|
|
377
378
|
)
|
|
378
379
|
] });
|
|
379
380
|
}
|
|
380
|
-
),
|
|
381
|
+
), Ye = A(
|
|
381
382
|
({
|
|
382
383
|
bgcolor: n = "background.default",
|
|
383
384
|
firstDay: t,
|
|
@@ -391,8 +392,8 @@ const ee = ({
|
|
|
391
392
|
const { recurring: m } = w();
|
|
392
393
|
return /* @__PURE__ */ c(h, { bgcolor: n, gap: 24, height: "100%", children: [
|
|
393
394
|
/* @__PURE__ */ c(h, { children: [
|
|
394
|
-
/* @__PURE__ */ e(
|
|
395
|
-
/* @__PURE__ */ e(
|
|
395
|
+
/* @__PURE__ */ e(Ce, { bgcolor: n, children: Me(a.date) }),
|
|
396
|
+
/* @__PURE__ */ e(be, { transaction: a })
|
|
396
397
|
] }),
|
|
397
398
|
/* @__PURE__ */ e(S, { bold: !0, sx: { mx: 24 }, variant: "Body", children: m.payment_schedule }),
|
|
398
399
|
/* @__PURE__ */ e(
|
|
@@ -408,13 +409,13 @@ const ee = ({
|
|
|
408
409
|
)
|
|
409
410
|
] });
|
|
410
411
|
}
|
|
411
|
-
), q = (n) => n.top_level_category_guid !== B.INCOME && n.transaction_type === V.DEBIT,
|
|
412
|
+
), q = (n) => n.top_level_category_guid !== B.INCOME && n.transaction_type === V.DEBIT, ze = (n, t) => q(n) ? n.payee?.toLowerCase().includes(t.toLowerCase()) || n.description.toLowerCase().includes(t.toLowerCase()) || n.feed_description.toLowerCase().includes(t.toLowerCase()) : !1, W = (n) => n.top_level_category_guid === B.INCOME || n.top_level_category_guid === B.TRANSFER && n.transaction_type === V.CREDIT, Be = (n, t) => W(n) ? n.payee?.toLowerCase().includes(t.toLowerCase()) || n.description?.toLowerCase().includes(t.toLowerCase()) || n.feed_description?.toLowerCase().includes(t.toLowerCase()) : !1, te = A(
|
|
412
413
|
({
|
|
413
414
|
isIncome: n = !1,
|
|
414
415
|
label: t,
|
|
415
416
|
onAddRecurringTransaction: r = () => null
|
|
416
417
|
}) => {
|
|
417
|
-
const { recurring: i } = w(), { filter: s, setFilter: l, transactions: o } = Z(), { addRepeatingTransaction: a } = M(), { user: m } = De(), [y, C] = u.useState(!1), [v, b] = u.useState(""), [g,
|
|
418
|
+
const { recurring: i } = w(), { filter: s, setFilter: l, transactions: o } = Z(), { addRepeatingTransaction: a } = M(), { user: m } = De(), [y, C] = u.useState(!1), [v, b] = u.useState(""), [g, I] = u.useState(d.EveryMonth), [f, p] = u.useState(1), [k, G] = u.useState(15), _ = u.useMemo(
|
|
418
419
|
() => o.find((x) => x.guid === v),
|
|
419
420
|
[v, o]
|
|
420
421
|
), ne = () => {
|
|
@@ -425,14 +426,14 @@ const ee = ({
|
|
|
425
426
|
return;
|
|
426
427
|
}
|
|
427
428
|
r();
|
|
428
|
-
const x = de(g,
|
|
429
|
+
const x = de(g, ke(_.date)), D = {
|
|
429
430
|
account_guid: _.account_guid,
|
|
430
431
|
amount: _.amount,
|
|
431
432
|
created_by: 0,
|
|
432
433
|
// User
|
|
433
434
|
merchant_guid: _.merchant_guid,
|
|
434
435
|
description: _.payee || _.description || _.feed_description,
|
|
435
|
-
predicted_occurs_on:
|
|
436
|
+
predicted_occurs_on: Oe(x, { representation: "date" }),
|
|
436
437
|
recurrence_day: f,
|
|
437
438
|
recurrence_type: g,
|
|
438
439
|
repeating_transaction_type: n ? E.Income : E.Bill,
|
|
@@ -440,12 +441,12 @@ const ee = ({
|
|
|
440
441
|
transaction_type: _.transaction_type,
|
|
441
442
|
user_guid: m.guid
|
|
442
443
|
};
|
|
443
|
-
await a(
|
|
444
|
+
await a(D, _), j();
|
|
444
445
|
}, j = () => {
|
|
445
446
|
b(""), C(!1);
|
|
446
447
|
};
|
|
447
448
|
return /* @__PURE__ */ c(L, { children: [
|
|
448
|
-
/* @__PURE__ */ e($, { onClick: ne, startIcon: /* @__PURE__ */ e(
|
|
449
|
+
/* @__PURE__ */ e($, { onClick: ne, startIcon: /* @__PURE__ */ e(he, { size: 24 }), variant: "contained", children: t }),
|
|
449
450
|
/* @__PURE__ */ e(
|
|
450
451
|
O,
|
|
451
452
|
{
|
|
@@ -454,13 +455,13 @@ const ee = ({
|
|
|
454
455
|
onClose: () => C(!1),
|
|
455
456
|
title: t,
|
|
456
457
|
children: /* @__PURE__ */ e(
|
|
457
|
-
|
|
458
|
+
Ue,
|
|
458
459
|
{
|
|
459
460
|
description: n ? i.add_income_description : i.add_expense_description,
|
|
460
461
|
onSearch: (x) => {
|
|
461
462
|
l({
|
|
462
463
|
...s,
|
|
463
|
-
custom: (
|
|
464
|
+
custom: (D) => n ? x ? Be(D, x) : W(D) : x ? ze(D, x) : q(D)
|
|
464
465
|
});
|
|
465
466
|
},
|
|
466
467
|
onSelected: (x) => b(x)
|
|
@@ -477,12 +478,12 @@ const ee = ({
|
|
|
477
478
|
onPrimaryAction: oe,
|
|
478
479
|
title: n ? i.income_details : i.expense_details,
|
|
479
480
|
children: _ && /* @__PURE__ */ e(
|
|
480
|
-
|
|
481
|
+
Ye,
|
|
481
482
|
{
|
|
482
483
|
firstDay: f,
|
|
483
484
|
frequency: g,
|
|
484
485
|
onFirstDayChange: p,
|
|
485
|
-
onFrequencyChange:
|
|
486
|
+
onFrequencyChange: I,
|
|
486
487
|
onSecondDayChange: G,
|
|
487
488
|
secondDay: k,
|
|
488
489
|
transaction: _
|
|
@@ -492,11 +493,11 @@ const ee = ({
|
|
|
492
493
|
)
|
|
493
494
|
] });
|
|
494
495
|
}
|
|
495
|
-
),
|
|
496
|
+
), qe = A(
|
|
496
497
|
({ zeroStateFor: n }) => {
|
|
497
498
|
const { recurring: t } = w(), { onEvent: r } = F(), i = n === "income", s = i ? t.recurring_setting_zero_state_income_title : t.recurring_setting_zero_state_expenses_title, l = i ? t.recurring_setting_zero_state_income_description : t.recurring_setting_zero_state_expenses_description, o = i ? t.add_income : t.add_expense;
|
|
498
499
|
return /* @__PURE__ */ c(h, { sx: { alignItems: "center", p: 24, pt: 48 }, children: [
|
|
499
|
-
/* @__PURE__ */ e(
|
|
500
|
+
/* @__PURE__ */ e(ye, { size: 48 }),
|
|
500
501
|
/* @__PURE__ */ e(U, { sx: { my: 8, fontWeight: 600 }, variant: "body1", children: s }),
|
|
501
502
|
/* @__PURE__ */ e(U, { color: "text.secondary", sx: { mb: 32 }, variant: "subtitle2", children: l }),
|
|
502
503
|
/* @__PURE__ */ e(
|
|
@@ -513,7 +514,7 @@ const ee = ({
|
|
|
513
514
|
)
|
|
514
515
|
] });
|
|
515
516
|
}
|
|
516
|
-
),
|
|
517
|
+
), It = A(({ forOverview: n = !1 }) => {
|
|
517
518
|
const { recurring: t } = w(), { repeatingTransactions: r } = M(), { onEvent: i } = F(), s = (a) => {
|
|
518
519
|
i(R.RECURRING_TRANSACTIONS_CLICK_INCOME, {
|
|
519
520
|
repeating_transaction_guid: a.guid
|
|
@@ -533,7 +534,7 @@ const ee = ({
|
|
|
533
534
|
children: [
|
|
534
535
|
n && /* @__PURE__ */ e(S, { bold: !0, sx: { mb: 4, mt: 12, mx: 24 }, variant: "Small", children: t.income }),
|
|
535
536
|
/* @__PURE__ */ e(P, { sx: { flex: 1, overflow: "auto" }, children: /* @__PURE__ */ e(K, { sx: { bgcolor: "background.paper" }, children: o.map((a, m) => /* @__PURE__ */ c(u.Fragment, { children: [
|
|
536
|
-
/* @__PURE__ */ e(
|
|
537
|
+
/* @__PURE__ */ e(Pe, { onClick: s, repeatingTransaction: a }),
|
|
537
538
|
/* @__PURE__ */ e(
|
|
538
539
|
T,
|
|
539
540
|
{
|
|
@@ -567,16 +568,16 @@ const ee = ({
|
|
|
567
568
|
] })
|
|
568
569
|
]
|
|
569
570
|
}
|
|
570
|
-
) : /* @__PURE__ */ e(
|
|
571
|
+
) : /* @__PURE__ */ e(qe, { zeroStateFor: "income" }) });
|
|
571
572
|
});
|
|
572
573
|
export {
|
|
573
574
|
te as A,
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
575
|
+
It as M,
|
|
576
|
+
Pe as R,
|
|
577
|
+
Ue as S,
|
|
578
|
+
qe as a,
|
|
579
|
+
Ge as b,
|
|
580
|
+
Ye as c,
|
|
580
581
|
W as d,
|
|
581
|
-
|
|
582
|
+
Be as i
|
|
582
583
|
};
|
|
@@ -7,7 +7,7 @@ import b from "@mui/material/Tabs";
|
|
|
7
7
|
import d from "@mui/material/Divider";
|
|
8
8
|
import R from "@mui/material/List";
|
|
9
9
|
import T from "@mui/material/Stack";
|
|
10
|
-
import { R as C, A as S, a as E, M as v } from "./ManageIncome-
|
|
10
|
+
import { R as C, A as S, a as E, M as v } from "./ManageIncome-CsCM4rNt.mjs";
|
|
11
11
|
import { u as _, j as A, g as f } from "./hooks-D6XlXHf4.mjs";
|
|
12
12
|
import { R as y, F as N } from "./RecurringTransactions-ej39mgA6.mjs";
|
|
13
13
|
import { A as m } from "./WidgetContainer-EbrN1oIo.mjs";
|
|
@@ -16,7 +16,7 @@ import { subDays as F } from "date-fns/subDays";
|
|
|
16
16
|
import { O as n, a as G, T as w } from "./User-BQUxBeZV.mjs";
|
|
17
17
|
import { T as p } from "./TransactionApi-B3Tksf7L.mjs";
|
|
18
18
|
import { b as W } from "./Category-CevNQ03n.mjs";
|
|
19
|
-
import { f as z } from "./exportTransactionsToCSV-
|
|
19
|
+
import { f as z } from "./exportTransactionsToCSV-BwwmL4pM.mjs";
|
|
20
20
|
import { format as k } from "date-fns/format";
|
|
21
21
|
import { f as g, D as O, O as $ } from "./Dialog-CWW597AF.mjs";
|
|
22
22
|
import { endOfMonth as X } from "date-fns/endOfMonth";
|
package/dist/budgets/index.es.js
CHANGED
|
@@ -37,7 +37,7 @@ import et from "@mui/material/Alert";
|
|
|
37
37
|
import tt from "@mui/material/Snackbar";
|
|
38
38
|
import Ce from "@mui/material/Tab";
|
|
39
39
|
import nt from "@mui/material/Tabs";
|
|
40
|
-
import { e as ot } from "../exportTransactionsToCSV-
|
|
40
|
+
import { e as ot } from "../exportTransactionsToCSV-BwwmL4pM.mjs";
|
|
41
41
|
import { T as De, a as at } from "../TransactionDetails-CDtya0KS.mjs";
|
|
42
42
|
import fe from "@mui/material/Card";
|
|
43
43
|
import be from "@mui/material/CardContent";
|
|
@@ -47,7 +47,7 @@ import { u as rt, b as st } from "../CategorySelectorDrawer-DUe4lH5-.mjs";
|
|
|
47
47
|
import Ee from "@mui/material/CardHeader";
|
|
48
48
|
import { subDays as it } from "date-fns/subDays";
|
|
49
49
|
import ct from "@mui/material/IconButton";
|
|
50
|
-
import { M as lt } from "../ManageIncome-
|
|
50
|
+
import { M as lt } from "../ManageIncome-CsCM4rNt.mjs";
|
|
51
51
|
const dt = I(() => {
|
|
52
52
|
const { budgets: t } = w(), { totalBudgeted: o } = D(), { incomeTotal: i } = ne(), s = i - o;
|
|
53
53
|
return /* @__PURE__ */ m(S, { direction: "row", justifyContent: "center", my: 16, spacing: 20, children: [
|
|
@@ -17,7 +17,7 @@ import { C as zn } from "../CashflowStore-D9Dpuz7X.mjs";
|
|
|
17
17
|
import { b as M } from "../Localization-2MODESHW.mjs";
|
|
18
18
|
import { M as Je } from "../MiniWidgetContainer-D0gfmbaF.mjs";
|
|
19
19
|
import { E as Ze } from "../EmptyState-DA_lfRBv.mjs";
|
|
20
|
-
import { R as et } from "../RecurringSettings-
|
|
20
|
+
import { R as et } from "../RecurringSettings-DZu2hw1r.mjs";
|
|
21
21
|
import tt from "@mui/material/Tabs";
|
|
22
22
|
import Ce from "@mui/material/Tab";
|
|
23
23
|
import { getUnixTime as B } from "date-fns/getUnixTime";
|
|
@@ -35,7 +35,7 @@ import { alpha as at, keyframes as it } from "@mui/material/styles";
|
|
|
35
35
|
import { DataGridPro as rt } from "@mui/x-data-grid-pro";
|
|
36
36
|
import { T as Se } from "../TabContentContainer-j01JYR_7.mjs";
|
|
37
37
|
import G from "@mui/material/Button";
|
|
38
|
-
import { M as st, S as ct, i as lt, d as _e, c as dt } from "../ManageIncome-
|
|
38
|
+
import { M as st, S as ct, i as lt, d as _e, c as dt } from "../ManageIncome-CsCM4rNt.mjs";
|
|
39
39
|
import { D as Ge } from "../Drawer-kEE73B87.mjs";
|
|
40
40
|
import { formatISO as mt } from "date-fns/formatISO";
|
|
41
41
|
import { fromUnixTime as Ie } from "date-fns/fromUnixTime";
|
package/dist/common/index.es.js
CHANGED
|
@@ -18,8 +18,8 @@ import { C as Ys } from "../CurrencyInput-DUsQbkXb.mjs";
|
|
|
18
18
|
import { L as zs } from "../Loader-DUaFpDGv.mjs";
|
|
19
19
|
import { R as js } from "../ResponsiveButton-DZFp78fJ.mjs";
|
|
20
20
|
import { S as Vs } from "../SearchBox-B2_zLv8-.mjs";
|
|
21
|
-
import { T as at } from "../TransactionStore-
|
|
22
|
-
import { S as Js } from "../TransactionStore-
|
|
21
|
+
import { T as at } from "../TransactionStore-hfOsBbDt.mjs";
|
|
22
|
+
import { S as Js } from "../TransactionStore-hfOsBbDt.mjs";
|
|
23
23
|
import { T as er } from "../TabContentContainer-j01JYR_7.mjs";
|
|
24
24
|
import { I as rr } from "../IconBacking-B9oC6uL2.mjs";
|
|
25
25
|
import { D as ar, F as nr, a as ir, c as cr, R as dr, S as lr } from "../RecurringTransactions-ej39mgA6.mjs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { fromUnixTime as d } from "date-fns/fromUnixTime";
|
|
2
2
|
import { c as u } from "./Category-CevNQ03n.mjs";
|
|
3
|
-
import { f as p, D as
|
|
4
|
-
import { T as
|
|
3
|
+
import { f as p, D as g } from "./Dialog-CWW597AF.mjs";
|
|
4
|
+
import { T as m } from "./User-BQUxBeZV.mjs";
|
|
5
5
|
function f(e) {
|
|
6
6
|
return new Set(
|
|
7
7
|
e.filter((n) => n.parent_guid !== void 0).map((n) => n.parent_guid)
|
|
@@ -10,28 +10,29 @@ function f(e) {
|
|
|
10
10
|
function T(e) {
|
|
11
11
|
return e.reduce((n, t) => (t.parent_guid && (n[t.parent_guid] || (n[t.parent_guid] = []), n[t.parent_guid].push(t)), n), {});
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function A(e, n) {
|
|
14
14
|
const t = f(n), r = T(n), o = /* @__PURE__ */ new Set(), a = [];
|
|
15
|
-
for (const
|
|
16
|
-
t.has(
|
|
17
|
-
o.has(
|
|
18
|
-
}) : o.has(
|
|
15
|
+
for (const i of e)
|
|
16
|
+
t.has(i.guid) ? (r[i.guid] ?? []).slice().sort((s, c) => Math.abs(c.amount) - Math.abs(s.amount)).forEach((s) => {
|
|
17
|
+
o.has(s.guid) || (a.push(s), o.add(s.guid));
|
|
18
|
+
}) : o.has(i.guid) || (a.push(i), o.add(i.guid));
|
|
19
19
|
return a;
|
|
20
20
|
}
|
|
21
|
-
const
|
|
21
|
+
const j = (e, n) => {
|
|
22
22
|
const t = _(h(e, n)), r = encodeURIComponent(t), o = document.createElement("a");
|
|
23
23
|
o.href = `data:attachment/csv;charset=utf-8,${r}`, o.download = "transactions.csv", document.body.appendChild(o), o.click(), document.body.removeChild(o);
|
|
24
24
|
}, h = (e, n) => e.map((t) => ({
|
|
25
|
-
Date: p(d(t.date),
|
|
25
|
+
Date: p(d(t.date), g.YEAR_MONTH_DAY),
|
|
26
26
|
Description: C(t),
|
|
27
27
|
"Original Description": t.feed_description,
|
|
28
28
|
Amount: `${t.amount}`,
|
|
29
|
-
Type: t.transaction_type ===
|
|
29
|
+
Type: t.transaction_type === m.CREDIT ? "Credit" : "Debit",
|
|
30
30
|
"Parent Category": u[t.top_level_category_guid || ""],
|
|
31
31
|
Category: t.category,
|
|
32
32
|
Account: t.account,
|
|
33
33
|
Tags: y(t, n),
|
|
34
|
-
Memo: t.memo
|
|
34
|
+
Memo: t.memo,
|
|
35
|
+
Pending: t.isPending ? "TRUE" : "FALSE"
|
|
35
36
|
})), l = (e) => e ? /[,"\n\r]/.test(e) ? `"${e.replace(/"/g, '""')}"` : e : "", _ = (e) => {
|
|
36
37
|
const n = Object.keys(e[0]).join(",").concat(`\r
|
|
37
38
|
`), t = e.map((r) => Object.values(r).map(l).join(",")).join(`\r
|
|
@@ -42,6 +43,6 @@ const A = (e, n) => {
|
|
|
42
43
|
return n += e.is_hidden ? "(Excluded) " : "", n += e.description, n;
|
|
43
44
|
}, y = (e, n) => e.tags.map((t) => n.filter((o) => o.guid === t)[0]?.name ?? "").join(" ");
|
|
44
45
|
export {
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
j as e,
|
|
47
|
+
A as f
|
|
47
48
|
};
|
|
@@ -30,7 +30,7 @@ import Ve from "@mui/material/AccordionSummary";
|
|
|
30
30
|
import Ye from "@mui/material/CardHeader";
|
|
31
31
|
import { u as qe } from "../useDimensions-27p2evRx.mjs";
|
|
32
32
|
import { C as Je } from "../ConnectionsDrawer-BDvVuJQf.mjs";
|
|
33
|
-
import { R as Qe } from "../RecurringSettings-
|
|
33
|
+
import { R as Qe } from "../RecurringSettings-DZu2hw1r.mjs";
|
|
34
34
|
import Ze from "@mui/material/TextField";
|
|
35
35
|
import { u as Se } from "../useScreenSize-B6JyS_Lj.mjs";
|
|
36
36
|
import { a as et } from "../Dialog-CWW597AF.mjs";
|
|
@@ -8,8 +8,8 @@ import { startOfToday as ue } from "date-fns/startOfToday";
|
|
|
8
8
|
import { subDays as me } from "date-fns/subDays";
|
|
9
9
|
import ae from "@mui/material/Skeleton";
|
|
10
10
|
import c from "@mui/material/Stack";
|
|
11
|
-
import { R as Ee } from "../RecurringSettings-
|
|
12
|
-
import { M as Gn } from "../RecurringSettings-
|
|
11
|
+
import { R as Ee } from "../RecurringSettings-DZu2hw1r.mjs";
|
|
12
|
+
import { M as Gn } from "../RecurringSettings-DZu2hw1r.mjs";
|
|
13
13
|
import { addMonths as ze } from "date-fns/addMonths";
|
|
14
14
|
import { subMonths as Fe } from "date-fns/subMonths";
|
|
15
15
|
import { isBefore as Ue } from "date-fns/isBefore";
|
|
@@ -41,8 +41,8 @@ import lt from "@mui/material/ListSubheader";
|
|
|
41
41
|
import dt from "@mui/material/ListItemAvatar";
|
|
42
42
|
import ut from "@mui/material/ListItemButton";
|
|
43
43
|
import mt from "@mui/material/ListItemText";
|
|
44
|
-
import { b as pt } from "../ManageIncome-
|
|
45
|
-
import { c as Wn, M as $n, S as Pn } from "../ManageIncome-
|
|
44
|
+
import { b as pt } from "../ManageIncome-CsCM4rNt.mjs";
|
|
45
|
+
import { c as Wn, M as $n, S as Pn } from "../ManageIncome-CsCM4rNt.mjs";
|
|
46
46
|
import { f as A } from "../NumberFormatting-Buh7u8Oi.mjs";
|
|
47
47
|
import { D as xe } from "../Drawer-kEE73B87.mjs";
|
|
48
48
|
import { b as O } from "../Localization-2MODESHW.mjs";
|
|
@@ -3,10 +3,10 @@ import { u as P, C as Pe, D as $e, M as Ve, c as We, T as Ge, a as Ue } from "..
|
|
|
3
3
|
import { B as xa, d as wa, b as Ia } from "../TransactionDetails-CDtya0KS.mjs";
|
|
4
4
|
import { T as M } from "../User-BQUxBeZV.mjs";
|
|
5
5
|
import { O as Da } from "../User-BQUxBeZV.mjs";
|
|
6
|
-
import { S as ae, D as Fe } from "../TransactionStore-
|
|
7
|
-
import { T as Ea } from "../TransactionStore-
|
|
8
|
-
import { e as ze } from "../exportTransactionsToCSV-
|
|
9
|
-
import { E as Ma } from "../ExportCsvAction-
|
|
6
|
+
import { S as ae, D as Fe } from "../TransactionStore-hfOsBbDt.mjs";
|
|
7
|
+
import { T as Ea } from "../TransactionStore-hfOsBbDt.mjs";
|
|
8
|
+
import { e as ze } from "../exportTransactionsToCSV-BwwmL4pM.mjs";
|
|
9
|
+
import { E as Ma } from "../ExportCsvAction-DTO_UotC.mjs";
|
|
10
10
|
import { jsxs as _, jsx as e } from "react/jsx-runtime";
|
|
11
11
|
import u from "react";
|
|
12
12
|
import { observer as x } from "mobx-react-lite";
|
package/dist/trends/index.es.js
CHANGED
|
@@ -43,7 +43,7 @@ import Nt from "@mui/material/Divider";
|
|
|
43
43
|
import { useTheme as Ht, Stack as Wt } from "@mui/material";
|
|
44
44
|
import Ot from "@mui/material/Paper";
|
|
45
45
|
import { b as Vt } from "../CategoryUtil-BR3H5i6n.mjs";
|
|
46
|
-
import { E as Gt } from "../ExportCsvAction-
|
|
46
|
+
import { E as Gt } from "../ExportCsvAction-DTO_UotC.mjs";
|
|
47
47
|
import { u as Bt } from "../useInsightsEnabled-DBpwEq10.mjs";
|
|
48
48
|
import { E as zt } from "../EmptyState-DA_lfRBv.mjs";
|
|
49
49
|
import { l as Pt } from "../ConnectDrawer-Bw5s6Dw1.mjs";
|