@mx-cartographer/experiences 9.6.9 → 9.6.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.
Files changed (47) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/core/stores/AccountStore.d.ts +1 -0
  3. package/dist/core/stores/AccountStore.es.js +47 -42
  4. package/dist/core/stores/AccountStore.es.js.map +1 -1
  5. package/dist/core/stores/AppDataStore.d.ts +1 -0
  6. package/dist/core/stores/AppDataStore.es.js +15 -11
  7. package/dist/core/stores/AppDataStore.es.js.map +1 -1
  8. package/dist/core/stores/BeatStore.d.ts +1 -0
  9. package/dist/core/stores/BeatStore.es.js +10 -6
  10. package/dist/core/stores/BeatStore.es.js.map +1 -1
  11. package/dist/core/stores/BudgetsStore.d.ts +1 -0
  12. package/dist/core/stores/BudgetsStore.es.js +37 -35
  13. package/dist/core/stores/BudgetsStore.es.js.map +1 -1
  14. package/dist/core/stores/CategoryStore.d.ts +1 -0
  15. package/dist/core/stores/CategoryStore.es.js +36 -32
  16. package/dist/core/stores/CategoryStore.es.js.map +1 -1
  17. package/dist/core/stores/FinstrongStore.d.ts +1 -0
  18. package/dist/core/stores/FinstrongStore.es.js +42 -38
  19. package/dist/core/stores/FinstrongStore.es.js.map +1 -1
  20. package/dist/core/stores/GlobalCopyStore.d.ts +1 -0
  21. package/dist/core/stores/GlobalCopyStore.es.js +17 -13
  22. package/dist/core/stores/GlobalCopyStore.es.js.map +1 -1
  23. package/dist/core/stores/GoalStore.d.ts +1 -0
  24. package/dist/core/stores/GoalStore.es.js +104 -100
  25. package/dist/core/stores/GoalStore.es.js.map +1 -1
  26. package/dist/core/stores/HelpStore.d.ts +1 -0
  27. package/dist/core/stores/HelpStore.es.js +10 -6
  28. package/dist/core/stores/HelpStore.es.js.map +1 -1
  29. package/dist/core/stores/HoldingStore.d.ts +1 -0
  30. package/dist/core/stores/HoldingStore.es.js +6 -2
  31. package/dist/core/stores/HoldingStore.es.js.map +1 -1
  32. package/dist/core/stores/NetWorthStore.d.ts +1 -0
  33. package/dist/core/stores/NetWorthStore.es.js +12 -8
  34. package/dist/core/stores/NetWorthStore.es.js.map +1 -1
  35. package/dist/core/stores/NotificationStore.d.ts +1 -0
  36. package/dist/core/stores/NotificationStore.es.js +11 -7
  37. package/dist/core/stores/NotificationStore.es.js.map +1 -1
  38. package/dist/core/stores/SettingsStore.d.ts +1 -0
  39. package/dist/core/stores/SettingsStore.es.js +23 -19
  40. package/dist/core/stores/SettingsStore.es.js.map +1 -1
  41. package/dist/core/stores/TransactionStore.d.ts +1 -0
  42. package/dist/core/stores/TransactionStore.es.js +71 -67
  43. package/dist/core/stores/TransactionStore.es.js.map +1 -1
  44. package/dist/core/stores/UserStore.d.ts +1 -0
  45. package/dist/core/stores/UserStore.es.js +10 -6
  46. package/dist/core/stores/UserStore.es.js.map +1 -1
  47. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
- import { FinstrongApi as o } from "../api/FinstrongApi.es.js";
2
- import { augmentChartData as s, augmentSpendingFeeTransactions as i } from "../utils/FinstrongUtils.es.js";
1
+ import { FinstrongApi as r } from "../api/FinstrongApi.es.js";
2
+ import { augmentChartData as i, augmentSpendingFeeTransactions as o } from "../utils/FinstrongUtils.es.js";
3
3
  import { format as c } from "date-fns/format";
4
4
  import { subMonths as h } from "date-fns/subMonths";
5
- import { fromUnixTime as l } from "date-fns/fromUnixTime";
6
- import { getUnixTime as n } from "date-fns/getUnixTime";
7
- import { makeAutoObservable as g, runInAction as r } from "mobx";
8
- var b = class {
9
- api = new o("/", "");
5
+ import { fromUnixTime as d } from "date-fns/fromUnixTime";
6
+ import { getUnixTime as s } from "date-fns/getUnixTime";
7
+ import { makeAutoObservable as l, runInAction as a } from "mobx";
8
+ var C = class {
9
+ api = new r("/", "");
10
10
  augmentedChartData = [];
11
11
  averageHealthScores = [];
12
12
  monthlySummaries = [];
@@ -22,7 +22,7 @@ var b = class {
22
22
  isSpendingInitialized = !1;
23
23
  isIncomeInitialized = !1;
24
24
  constructor(e) {
25
- this.globalStore = e, this.api = new o(e.endpoint, e.sessionToken, e.onError), g(this);
25
+ this.globalStore = e, this.api = new r(e.endpoint, e.sessionToken, e.onError), l(this);
26
26
  }
27
27
  setSpendingInitialized = (e) => {
28
28
  this.isSpendingInitialized = e;
@@ -33,106 +33,106 @@ var b = class {
33
33
  calculateHealthScore = async (e = !0) => {
34
34
  try {
35
35
  const t = await this.api.calculateHealthScore();
36
- let a = 0;
37
- e && await this.loadHealthScoreChangeReports(), a = (t?.health_score || 0) - (this.healthScoreChangeReports.at(-1)?.older_health_score || 0), r(() => {
38
- this.healthScore = t, this.healthScoreChange = a;
36
+ let n = 0;
37
+ e && await this.loadHealthScoreChangeReports(), n = (t?.health_score || 0) - (this.healthScoreChangeReports.at(-1)?.older_health_score || 0), a(() => {
38
+ this.healthScore = t, this.healthScoreChange = n;
39
39
  });
40
40
  } catch (t) {
41
- console.error("Error calculating health score:", t), this.globalStore.captureException(t, { store: "FinstrongStore" });
41
+ this.captureError("calculateHealthScore", t);
42
42
  }
43
43
  };
44
44
  loadAverageHealthScores = async () => {
45
45
  try {
46
46
  const e = await this.api.getAverageHealthScores();
47
- r(() => {
47
+ a(() => {
48
48
  this.averageHealthScores = e;
49
49
  });
50
50
  } catch (e) {
51
- console.error("Error loading average health scores:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
51
+ this.captureError("loadAverageHealthScores", e);
52
52
  }
53
53
  };
54
54
  loadMonthlySummaries = async () => {
55
55
  try {
56
56
  const e = await this.api.getMonthlySummaries();
57
- r(() => {
57
+ a(() => {
58
58
  this.monthlySummaries = e;
59
59
  });
60
60
  } catch (e) {
61
- console.error("Error loading monthly summaries:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
61
+ this.captureError("loadMonthlySummaries", e);
62
62
  }
63
63
  };
64
64
  loadDebtSpend = async () => {
65
65
  try {
66
66
  const e = await this.api.getDebtSpend();
67
- r(() => {
67
+ a(() => {
68
68
  this.debtSpendTransactions = e;
69
69
  });
70
70
  } catch (e) {
71
- console.error("Error loading debt spend:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
71
+ this.captureError("loadDebtSpend", e);
72
72
  }
73
73
  };
74
74
  loadIncome = async () => {
75
75
  this.setIncomeInitialized(!1);
76
76
  try {
77
77
  const e = await this.api.getIncome();
78
- r(() => {
78
+ a(() => {
79
79
  this.incomeTransactions = e, this.setIncomeInitialized(!0);
80
80
  });
81
81
  } catch (e) {
82
- console.error("Error loading income:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
82
+ this.captureError("loadIncome", e);
83
83
  }
84
84
  };
85
85
  loadHealthScoreChangeReports = async () => {
86
- const e = n(h(/* @__PURE__ */ new Date(), 2)), t = n(/* @__PURE__ */ new Date());
86
+ const e = s(h(/* @__PURE__ */ new Date(), 2)), t = s(/* @__PURE__ */ new Date());
87
87
  try {
88
- const a = await this.api.getHealthScoreChangeReports(e, t);
89
- r(() => {
90
- this.healthScoreChangeReports = a;
88
+ const n = await this.api.getHealthScoreChangeReports(e, t);
89
+ a(() => {
90
+ this.healthScoreChangeReports = n;
91
91
  });
92
- } catch (a) {
93
- console.error("Error loading health score change reports:", a), this.globalStore.captureException(a, { store: "FinstrongStore" });
92
+ } catch (n) {
93
+ this.captureError("loadHealthScoreChangeReports", n);
94
94
  }
95
95
  };
96
96
  loadPeerScore = async () => {
97
- const e = c(l(this.globalStore.appDataStore.user.birthday), "yyyy");
97
+ const e = c(d(this.globalStore.appDataStore.user.birthday), "yyyy");
98
98
  try {
99
99
  const t = await this.api.getPeerScore(e);
100
- r(() => {
100
+ a(() => {
101
101
  this.peerScore = t;
102
102
  });
103
103
  } catch (t) {
104
- console.error("Error loading peer score:", t), this.globalStore.captureException(t, { store: "FinstrongStore" });
104
+ this.captureError("loadPeerScore", t);
105
105
  }
106
106
  };
107
107
  loadAugmentedChartData = async () => {
108
108
  try {
109
109
  const e = await this.api.getAverageHealthScores();
110
- r(() => {
111
- this.augmentedChartData = s(e);
110
+ a(() => {
111
+ this.augmentedChartData = i(e);
112
112
  });
113
113
  } catch (e) {
114
- console.error("Error occurred while getting augmented chart data:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
114
+ this.captureError("loadAugmentedChartData", e);
115
115
  }
116
116
  };
117
117
  getSpendingFeeTransactions = async () => {
118
118
  try {
119
- const e = await this.api.getSpendingFeeTransactions(), t = i(e);
120
- r(() => {
119
+ const e = await this.api.getSpendingFeeTransactions(), t = o(e);
120
+ a(() => {
121
121
  this.spendingFeeTransactions = t;
122
122
  });
123
123
  } catch (e) {
124
- console.error("Error occurred while getting spending fee transactions:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
124
+ this.captureError("getSpendingFeeTransactions", e);
125
125
  }
126
126
  };
127
127
  loadSpendTransactions = async () => {
128
128
  this.setSpendingInitialized(!1);
129
129
  try {
130
130
  const e = await this.api.getStandardSpend();
131
- r(() => {
131
+ a(() => {
132
132
  this.spendTransactions = [...e], this.setSpendingInitialized(!0);
133
133
  });
134
134
  } catch (e) {
135
- console.error("Error loading spend transactions:", e), this.globalStore.captureException(e, { store: "FinstrongStore" });
135
+ this.captureError("loadSpendTransactions", e);
136
136
  }
137
137
  };
138
138
  get spendAndDebtTransactions() {
@@ -148,9 +148,13 @@ var b = class {
148
148
  }
149
149
  handleFinstrongWidgetPrimaryCtaClick = (e) => () => {
150
150
  };
151
+ captureError = (e, t) => this.globalStore.captureException(t, {
152
+ store: "FinstrongStore",
153
+ action: e
154
+ });
151
155
  };
152
156
  export {
153
- b as FinstrongStore
157
+ C as FinstrongStore
154
158
  };
155
159
 
156
160
  //# sourceMappingURL=FinstrongStore.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FinstrongStore.es.js","names":[],"sources":["../../../src/core/stores/FinstrongStore.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { format } from 'date-fns/format'\nimport { fromUnixTime } from 'date-fns/fromUnixTime'\nimport { getUnixTime } from 'date-fns/getUnixTime'\nimport { subMonths } from 'date-fns/subMonths'\n\nimport { FinstrongApi } from '../api'\nimport type {\n MonthlySummaries,\n HealthScore,\n HealthScoreReport,\n MonthlyHealthScore,\n Transaction,\n} from '../types'\nimport type { FinstrongTransaction, PeerAverage } from '../types/Finstrong'\nimport { augmentChartData, augmentSpendingFeeTransactions } from '../utils/FinstrongUtils'\n\nimport { GlobalStore } from './GlobalStore'\n\nexport class FinstrongStore {\n api = new FinstrongApi('/', '')\n augmentedChartData: { x: string; y: number }[] = []\n averageHealthScores: MonthlyHealthScore[] = []\n monthlySummaries: MonthlySummaries[] = []\n incomeTransactions: FinstrongTransaction[] = []\n debtSpendTransactions: FinstrongTransaction[] = []\n spendingFeeTransactions: Transaction[] = []\n spendTransactions: FinstrongTransaction[] = []\n globalStore: GlobalStore\n healthScore: HealthScore = {} as HealthScore\n healthScoreChange?: number\n healthScoreChangeReports: HealthScoreReport[] = []\n peerScore: PeerAverage | null = null\n isSpendingInitialized: boolean = false\n isIncomeInitialized: boolean = false\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n this.api = new FinstrongApi(globalStore.endpoint, globalStore.sessionToken, globalStore.onError)\n makeAutoObservable(this)\n }\n\n setSpendingInitialized = (isSpendingInitialized: boolean) => {\n this.isSpendingInitialized = isSpendingInitialized\n }\n\n setIncomeInitialized = (isIncomeInitialized: boolean) => {\n this.isIncomeInitialized = isIncomeInitialized\n }\n\n calculateHealthScore = async (needHealthScoreChangeReport: boolean = true) => {\n try {\n const healthScore = await this.api.calculateHealthScore()\n\n let healthScoreChange = 0\n\n if (needHealthScoreChangeReport) {\n await this.loadHealthScoreChangeReports()\n }\n\n const currentScore = healthScore?.health_score || 0\n const oldScore = this.healthScoreChangeReports.at(-1)?.older_health_score || 0\n healthScoreChange = currentScore - oldScore\n\n runInAction(() => {\n this.healthScore = healthScore\n this.healthScoreChange = healthScoreChange\n })\n } catch (e) {\n console.error('Error calculating health score:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadAverageHealthScores = async () => {\n try {\n const averageHealthScores = await this.api.getAverageHealthScores()\n runInAction(() => {\n this.averageHealthScores = averageHealthScores\n })\n } catch (e) {\n console.error('Error loading average health scores:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadMonthlySummaries = async () => {\n try {\n const monthlySummaries = await this.api.getMonthlySummaries()\n runInAction(() => {\n this.monthlySummaries = monthlySummaries\n })\n } catch (e) {\n console.error('Error loading monthly summaries:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadDebtSpend = async () => {\n try {\n const debtSpend = await this.api.getDebtSpend()\n runInAction(() => {\n this.debtSpendTransactions = debtSpend\n })\n } catch (e) {\n console.error('Error loading debt spend:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadIncome = async () => {\n this.setIncomeInitialized(false)\n try {\n const income = await this.api.getIncome()\n runInAction(() => {\n this.incomeTransactions = income\n this.setIncomeInitialized(true)\n })\n } catch (e) {\n console.error('Error loading income:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadHealthScoreChangeReports = async () => {\n const startDate = getUnixTime(subMonths(new Date(), 2))\n const endDate = getUnixTime(new Date())\n\n try {\n const healthScoreChangeReports = await this.api.getHealthScoreChangeReports(\n startDate,\n endDate,\n )\n runInAction(() => {\n this.healthScoreChangeReports = healthScoreChangeReports\n })\n } catch (e) {\n console.error('Error loading health score change reports:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadPeerScore = async () => {\n const birthYear = format(fromUnixTime(this.globalStore.appDataStore.user.birthday!), 'yyyy')\n\n try {\n const peerScore = await this.api.getPeerScore(birthYear)\n runInAction(() => {\n this.peerScore = peerScore\n })\n } catch (e) {\n console.error('Error loading peer score:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n loadAugmentedChartData = async () => {\n try {\n const augmentedChartData = await this.api.getAverageHealthScores()\n\n runInAction(() => {\n this.augmentedChartData = augmentChartData(augmentedChartData)\n })\n } catch (error) {\n console.error('Error occurred while getting augmented chart data:', error)\n this.globalStore.captureException(error, { store: 'FinstrongStore' })\n }\n }\n\n getSpendingFeeTransactions = async () => {\n try {\n const spendingFeeTransaction = await this.api.getSpendingFeeTransactions()\n const organizedSpendingFeeTransactions =\n augmentSpendingFeeTransactions(spendingFeeTransaction)\n runInAction(() => {\n this.spendingFeeTransactions = organizedSpendingFeeTransactions\n })\n } catch (error) {\n console.error('Error occurred while getting spending fee transactions:', error)\n this.globalStore.captureException(error, { store: 'FinstrongStore' })\n }\n }\n\n loadSpendTransactions = async () => {\n this.setSpendingInitialized(false)\n try {\n const spendTransaction = await this.api.getStandardSpend()\n runInAction(() => {\n this.spendTransactions = [...spendTransaction]\n this.setSpendingInitialized(true)\n })\n } catch (e) {\n console.error('Error loading spend transactions:', e)\n this.globalStore.captureException(e, { store: 'FinstrongStore' })\n }\n }\n\n get spendAndDebtTransactions() {\n return [...this.spendTransactions, ...this.debtSpendTransactions]\n }\n\n get allTransactions() {\n return {\n income: this.incomeTransactions,\n debtSpend: this.debtSpendTransactions,\n spendingFee: this.spendingFeeTransactions,\n spend: this.spendTransactions,\n }\n }\n handleFinstrongWidgetPrimaryCtaClick = (value: string) => () => {\n // eslint-disable-next-line no-void\n void value\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FinstrongStore.es.js","names":[],"sources":["../../../src/core/stores/FinstrongStore.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { format } from 'date-fns/format'\nimport { fromUnixTime } from 'date-fns/fromUnixTime'\nimport { getUnixTime } from 'date-fns/getUnixTime'\nimport { subMonths } from 'date-fns/subMonths'\n\nimport { FinstrongApi } from '../api'\nimport type {\n MonthlySummaries,\n HealthScore,\n HealthScoreReport,\n MonthlyHealthScore,\n Transaction,\n} from '../types'\nimport type { FinstrongTransaction, PeerAverage } from '../types/Finstrong'\nimport { augmentChartData, augmentSpendingFeeTransactions } from '../utils/FinstrongUtils'\n\nimport { GlobalStore } from './GlobalStore'\n\nexport class FinstrongStore {\n api = new FinstrongApi('/', '')\n augmentedChartData: { x: string; y: number }[] = []\n averageHealthScores: MonthlyHealthScore[] = []\n monthlySummaries: MonthlySummaries[] = []\n incomeTransactions: FinstrongTransaction[] = []\n debtSpendTransactions: FinstrongTransaction[] = []\n spendingFeeTransactions: Transaction[] = []\n spendTransactions: FinstrongTransaction[] = []\n globalStore: GlobalStore\n healthScore: HealthScore = {} as HealthScore\n healthScoreChange?: number\n healthScoreChangeReports: HealthScoreReport[] = []\n peerScore: PeerAverage | null = null\n isSpendingInitialized: boolean = false\n isIncomeInitialized: boolean = false\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n this.api = new FinstrongApi(globalStore.endpoint, globalStore.sessionToken, globalStore.onError)\n makeAutoObservable(this)\n }\n\n setSpendingInitialized = (isSpendingInitialized: boolean) => {\n this.isSpendingInitialized = isSpendingInitialized\n }\n\n setIncomeInitialized = (isIncomeInitialized: boolean) => {\n this.isIncomeInitialized = isIncomeInitialized\n }\n\n calculateHealthScore = async (needHealthScoreChangeReport: boolean = true) => {\n try {\n const healthScore = await this.api.calculateHealthScore()\n\n let healthScoreChange = 0\n\n if (needHealthScoreChangeReport) {\n await this.loadHealthScoreChangeReports()\n }\n\n const currentScore = healthScore?.health_score || 0\n const oldScore = this.healthScoreChangeReports.at(-1)?.older_health_score || 0\n healthScoreChange = currentScore - oldScore\n\n runInAction(() => {\n this.healthScore = healthScore\n this.healthScoreChange = healthScoreChange\n })\n } catch (e) {\n this.captureError('calculateHealthScore', e)\n }\n }\n\n loadAverageHealthScores = async () => {\n try {\n const averageHealthScores = await this.api.getAverageHealthScores()\n runInAction(() => {\n this.averageHealthScores = averageHealthScores\n })\n } catch (e) {\n this.captureError('loadAverageHealthScores', e)\n }\n }\n\n loadMonthlySummaries = async () => {\n try {\n const monthlySummaries = await this.api.getMonthlySummaries()\n runInAction(() => {\n this.monthlySummaries = monthlySummaries\n })\n } catch (e) {\n this.captureError('loadMonthlySummaries', e)\n }\n }\n\n loadDebtSpend = async () => {\n try {\n const debtSpend = await this.api.getDebtSpend()\n runInAction(() => {\n this.debtSpendTransactions = debtSpend\n })\n } catch (e) {\n this.captureError('loadDebtSpend', e)\n }\n }\n\n loadIncome = async () => {\n this.setIncomeInitialized(false)\n try {\n const income = await this.api.getIncome()\n runInAction(() => {\n this.incomeTransactions = income\n this.setIncomeInitialized(true)\n })\n } catch (e) {\n this.captureError('loadIncome', e)\n }\n }\n\n loadHealthScoreChangeReports = async () => {\n const startDate = getUnixTime(subMonths(new Date(), 2))\n const endDate = getUnixTime(new Date())\n\n try {\n const healthScoreChangeReports = await this.api.getHealthScoreChangeReports(\n startDate,\n endDate,\n )\n runInAction(() => {\n this.healthScoreChangeReports = healthScoreChangeReports\n })\n } catch (e) {\n this.captureError('loadHealthScoreChangeReports', e)\n }\n }\n\n loadPeerScore = async () => {\n const birthYear = format(fromUnixTime(this.globalStore.appDataStore.user.birthday!), 'yyyy')\n\n try {\n const peerScore = await this.api.getPeerScore(birthYear)\n runInAction(() => {\n this.peerScore = peerScore\n })\n } catch (e) {\n this.captureError('loadPeerScore', e)\n }\n }\n\n loadAugmentedChartData = async () => {\n try {\n const augmentedChartData = await this.api.getAverageHealthScores()\n\n runInAction(() => {\n this.augmentedChartData = augmentChartData(augmentedChartData)\n })\n } catch (error) {\n this.captureError('loadAugmentedChartData', error)\n }\n }\n\n getSpendingFeeTransactions = async () => {\n try {\n const spendingFeeTransaction = await this.api.getSpendingFeeTransactions()\n const organizedSpendingFeeTransactions =\n augmentSpendingFeeTransactions(spendingFeeTransaction)\n runInAction(() => {\n this.spendingFeeTransactions = organizedSpendingFeeTransactions\n })\n } catch (error) {\n this.captureError('getSpendingFeeTransactions', error)\n }\n }\n\n loadSpendTransactions = async () => {\n this.setSpendingInitialized(false)\n try {\n const spendTransaction = await this.api.getStandardSpend()\n runInAction(() => {\n this.spendTransactions = [...spendTransaction]\n this.setSpendingInitialized(true)\n })\n } catch (e) {\n this.captureError('loadSpendTransactions', e)\n }\n }\n\n get spendAndDebtTransactions() {\n return [...this.spendTransactions, ...this.debtSpendTransactions]\n }\n\n get allTransactions() {\n return {\n income: this.incomeTransactions,\n debtSpend: this.debtSpendTransactions,\n spendingFee: this.spendingFeeTransactions,\n spend: this.spendTransactions,\n }\n }\n handleFinstrongWidgetPrimaryCtaClick = (value: string) => () => {\n // eslint-disable-next-line no-void\n void value\n }\n\n private captureError = (action: string, error: unknown) =>\n this.globalStore.captureException(error, { store: 'FinstrongStore', action })\n}\n"],"mappings":"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"}
@@ -10,4 +10,5 @@ export declare class GlobalCopyStore {
10
10
  constructor(globalStore: GlobalStore);
11
11
  loadCopy: () => Promise<void>;
12
12
  getCopy: (namespace: string, translationKey?: string) => Promise<void>;
13
+ private captureError;
13
14
  }
@@ -1,32 +1,36 @@
1
- import { GlobalCopyApi as t } from "../api/GlobalCopyApi.es.js";
2
- import { makeAutoObservable as a, runInAction as r } from "mobx";
3
- var c = class {
1
+ import { GlobalCopyApi as r } from "../api/GlobalCopyApi.es.js";
2
+ import { makeAutoObservable as a, runInAction as i } from "mobx";
3
+ var n = class {
4
4
  globalStore;
5
- api = new t("/", "");
5
+ api = new r("/", "");
6
6
  copy = {};
7
7
  featureNamespace = "experiences";
8
8
  isInitialized = !1;
9
- constructor(o) {
10
- this.globalStore = o, this.api = new t(o.endpoint, o.sessionToken, o.onError), a(this);
9
+ constructor(t) {
10
+ this.globalStore = t, this.api = new r(t.endpoint, t.sessionToken, t.onError), a(this);
11
11
  }
12
12
  loadCopy = async () => {
13
- await this.getCopy(this.featureNamespace), r(() => {
13
+ await this.getCopy(this.featureNamespace), i(() => {
14
14
  this.isInitialized = !0;
15
15
  });
16
16
  };
17
- getCopy = async (o, i = "") => {
17
+ getCopy = async (t, o = "") => {
18
18
  try {
19
- const e = await this.api.getGlobalCopy(o, i);
20
- r(() => {
21
- this.copy = e[o];
19
+ const e = await this.api.getGlobalCopy(t, o);
20
+ i(() => {
21
+ this.copy = e[t];
22
22
  });
23
23
  } catch (e) {
24
- console.error("Error occurred while fetching copy:", e), this.globalStore.captureException(e, { store: "GlobalCopyStore" });
24
+ this.captureError("getCopy", e);
25
25
  }
26
26
  };
27
+ captureError = (t, o) => this.globalStore.captureException(o, {
28
+ store: "GlobalCopyStore",
29
+ action: t
30
+ });
27
31
  };
28
32
  export {
29
- c as GlobalCopyStore
33
+ n as GlobalCopyStore
30
34
  };
31
35
 
32
36
  //# sourceMappingURL=GlobalCopyStore.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalCopyStore.es.js","names":[],"sources":["../../../src/core/stores/GlobalCopyStore.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { GlobalCopyApi } from '../api'\nimport { GlobalCopy } from '../types'\n\nimport { GlobalStore } from './GlobalStore'\n\nexport class GlobalCopyStore {\n globalStore: GlobalStore\n api: GlobalCopyApi = new GlobalCopyApi('/', '')\n\n copy: GlobalCopy = {} as GlobalCopy\n featureNamespace = 'experiences'\n\n isInitialized = false\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n this.api = new GlobalCopyApi(\n globalStore.endpoint,\n globalStore.sessionToken,\n globalStore.onError,\n )\n\n makeAutoObservable(this)\n }\n\n loadCopy = async () => {\n await this.getCopy(this.featureNamespace)\n\n runInAction(() => {\n this.isInitialized = true\n })\n }\n\n getCopy = async (namespace: string, translationKey: string = '') => {\n try {\n const newCopy = await this.api.getGlobalCopy(namespace, translationKey)\n\n runInAction(() => {\n this.copy = newCopy[namespace]\n })\n } catch (error) {\n console.error('Error occurred while fetching copy:', error)\n this.globalStore.captureException(error, { store: 'GlobalCopyStore' })\n }\n }\n}\n"],"mappings":";;AAOA,IAAa,IAAb,MAA6B;AAAA,EAC3B;AAAA,EACA,MAAqB,IAAI,EAAc,KAAK,EAAE;AAAA,EAE9C,OAAmB,CAAC;AAAA,EACpB,mBAAmB;AAAA,EAEnB,gBAAgB;AAAA,EAEhB,YAAY,GAA0B;AACpC,SAAK,cAAc,GACnB,KAAK,MAAM,IAAI,EACb,EAAY,UACZ,EAAY,cACZ,EAAY,OACd,GAEA,EAAmB,IAAI;AAAA,EACzB;AAAA,EAEA,WAAW,YAAY;AACrB,UAAM,KAAK,QAAQ,KAAK,gBAAgB,GAExC,EAAA,MAAkB;AAChB,WAAK,gBAAgB;AAAA,IACvB,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,OAAO,GAAmB,IAAyB,OAAO;AAClE,QAAI;AACF,YAAM,IAAU,MAAM,KAAK,IAAI,cAAc,GAAW,CAAc;AAEtE,MAAA,EAAA,MAAkB;AAChB,aAAK,OAAO,EAAQ,CAAA;AAAA,MACtB,CAAC;AAAA,IACH,SAAS,GAAO;AACd,cAAQ,MAAM,uCAAuC,CAAK,GAC1D,KAAK,YAAY,iBAAiB,GAAO,EAAE,OAAO,kBAAkB,CAAC;AAAA,IACvE;AAAA,EACF;AACF"}
1
+ {"version":3,"file":"GlobalCopyStore.es.js","names":[],"sources":["../../../src/core/stores/GlobalCopyStore.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { GlobalCopyApi } from '../api'\nimport { GlobalCopy } from '../types'\n\nimport { GlobalStore } from './GlobalStore'\n\nexport class GlobalCopyStore {\n globalStore: GlobalStore\n api: GlobalCopyApi = new GlobalCopyApi('/', '')\n\n copy: GlobalCopy = {} as GlobalCopy\n featureNamespace = 'experiences'\n\n isInitialized = false\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n this.api = new GlobalCopyApi(\n globalStore.endpoint,\n globalStore.sessionToken,\n globalStore.onError,\n )\n\n makeAutoObservable(this)\n }\n\n loadCopy = async () => {\n await this.getCopy(this.featureNamespace)\n\n runInAction(() => {\n this.isInitialized = true\n })\n }\n\n getCopy = async (namespace: string, translationKey: string = '') => {\n try {\n const newCopy = await this.api.getGlobalCopy(namespace, translationKey)\n\n runInAction(() => {\n this.copy = newCopy[namespace]\n })\n } catch (error) {\n this.captureError('getCopy', error)\n }\n }\n\n private captureError = (action: string, error: unknown) =>\n this.globalStore.captureException(error, { store: 'GlobalCopyStore', action })\n}\n"],"mappings":";;AAOA,IAAa,IAAb,MAA6B;AAAA,EAC3B;AAAA,EACA,MAAqB,IAAI,EAAc,KAAK,EAAE;AAAA,EAE9C,OAAmB,CAAC;AAAA,EACpB,mBAAmB;AAAA,EAEnB,gBAAgB;AAAA,EAEhB,YAAY,GAA0B;AACpC,SAAK,cAAc,GACnB,KAAK,MAAM,IAAI,EACb,EAAY,UACZ,EAAY,cACZ,EAAY,OACd,GAEA,EAAmB,IAAI;AAAA,EACzB;AAAA,EAEA,WAAW,YAAY;AACrB,UAAM,KAAK,QAAQ,KAAK,gBAAgB,GAExC,EAAA,MAAkB;AAChB,WAAK,gBAAgB;AAAA,IACvB,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,OAAO,GAAmB,IAAyB,OAAO;AAClE,QAAI;AACF,YAAM,IAAU,MAAM,KAAK,IAAI,cAAc,GAAW,CAAc;AAEtE,MAAA,EAAA,MAAkB;AAChB,aAAK,OAAO,EAAQ,CAAA;AAAA,MACtB,CAAC;AAAA,IACH,SAAS,GAAO;AACd,WAAK,aAAa,WAAW,CAAK;AAAA,IACpC;AAAA,EACF;AAAA,EAEA,eAAA,CAAwB,GAAgB,MACtC,KAAK,YAAY,iBAAiB,GAAO;AAAA,IAAE,OAAO;AAAA,IAAmB,QAAA;AAAA,EAAO,CAAC;AACjF"}
@@ -45,4 +45,5 @@ export declare class GoalStore {
45
45
  updateGoal: (goal: Goal) => Promise<void>;
46
46
  updateRetirementGoal: (goal: Goal) => Promise<void>;
47
47
  updateMonthlyCashFlowProfile: (profile: MonthlyCashFlowProfile) => Promise<void>;
48
+ private captureError;
48
49
  }
@@ -3,7 +3,7 @@ import { GoalApi as n } from "../api/GoalApi.es.js";
3
3
  import { upsertByGuid as l } from "../utils/upsertByGuid.es.js";
4
4
  import { getProjectedRetirementDate as c } from "../utils/GoalsUtil.es.js";
5
5
  import { makeAutoObservable as d, runInAction as s } from "mobx";
6
- var g = class {
6
+ var y = class {
7
7
  globalStore;
8
8
  api = new n("/", "");
9
9
  goals = [];
@@ -17,54 +17,54 @@ var g = class {
17
17
  newRetirementGoalAccounts = [];
18
18
  alert = "";
19
19
  selectedGoal = void 0;
20
- constructor(e) {
21
- this.globalStore = e, this.api = new n(e.endpoint, e.sessionToken, e.onError), d(this);
20
+ constructor(t) {
21
+ this.globalStore = t, this.api = new n(t.endpoint, t.sessionToken, t.onError), d(this);
22
22
  }
23
23
  get allGoals() {
24
24
  if (!this.isAllGoalDataLoaded) return [];
25
- const e = this.globalStore.copyStore.copy.goals, t = this.globalStore.userStore.user.birthday;
25
+ const t = this.globalStore.copyStore.copy.goals, e = this.globalStore.userStore.user.birthday;
26
26
  return [...this.goals, ...this.retirementGoals.map((o) => ({
27
27
  ...o,
28
28
  amount: o.target_amount,
29
- name: e.retirement,
29
+ name: t.retirement,
30
30
  track_type: a.RETIREMENT_TRACK,
31
- projected_to_complete_at: o.retirement_age && t ? c(o.retirement_age, t) : void 0
31
+ projected_to_complete_at: o.retirement_age && e ? c(o.retirement_age, e) : void 0
32
32
  }))];
33
33
  }
34
34
  get orderedGoals() {
35
- return this.allGoals.slice().sort((e, t) => e.position - t.position);
35
+ return this.allGoals.slice().sort((t, e) => t.position - e.position);
36
36
  }
37
37
  get debtGoals() {
38
- return this.orderedGoals.filter((e) => e.track_type === a.DEBT_TRACK);
38
+ return this.orderedGoals.filter((t) => t.track_type === a.DEBT_TRACK);
39
39
  }
40
40
  get retirmentGoals() {
41
- return this.orderedGoals.filter((e) => e.track_type === a.RETIREMENT_TRACK);
41
+ return this.orderedGoals.filter((t) => t.track_type === a.RETIREMENT_TRACK);
42
42
  }
43
43
  get savingGoals() {
44
- return this.orderedGoals.filter((e) => e.track_type === a.SAVINGS_TRACK);
44
+ return this.orderedGoals.filter((t) => t.track_type === a.SAVINGS_TRACK);
45
45
  }
46
46
  get ongoingGoalsForMicroWidget() {
47
- const e = this.allGoals.filter((o) => !o.is_complete && o.track_type !== a.EMERGENCY_FUND_TRACK && o.track_type !== null), t = [
47
+ const t = this.allGoals.filter((o) => !o.is_complete && o.track_type !== a.EMERGENCY_FUND_TRACK && o.track_type !== null), e = [
48
48
  a.SAVINGS_TRACK,
49
49
  a.DEBT_TRACK,
50
50
  a.RETIREMENT_TRACK
51
51
  ];
52
- return e.sort((o, r) => (o.track_type ? t.indexOf(o.track_type) : -1) - (r.track_type ? t.indexOf(r.track_type) : -1)).slice(0, 3);
52
+ return t.sort((o, r) => (o.track_type ? e.indexOf(o.track_type) : -1) - (r.track_type ? e.indexOf(r.track_type) : -1)).slice(0, 3);
53
53
  }
54
54
  get isAllGoalDataLoaded() {
55
55
  return this.goalsLoaded && this.retirementGoalsLoaded && this.retirementGoalAccountsLoaded && this.monthlyCashFlowProfileLoaded;
56
56
  }
57
- setGoals = (e) => {
58
- this.goals = e, this.goalsLoaded = !0;
57
+ setGoals = (t) => {
58
+ this.goals = t, this.goalsLoaded = !0;
59
59
  };
60
- setRetirementGoals = (e) => {
61
- this.retirementGoals = e, this.retirementGoalsLoaded = !0;
60
+ setRetirementGoals = (t) => {
61
+ this.retirementGoals = t, this.retirementGoalsLoaded = !0;
62
62
  };
63
- setRetirementGoalAccounts = (e) => {
64
- this.retirementGoalAccounts = e, this.retirementGoalAccountsLoaded = !0;
63
+ setRetirementGoalAccounts = (t) => {
64
+ this.retirementGoalAccounts = t, this.retirementGoalAccountsLoaded = !0;
65
65
  };
66
- setMonthlyCashFlowProfile = (e) => {
67
- this.monthlyCashFlowProfile = e, this.monthlyCashFlowProfileLoaded = !0;
66
+ setMonthlyCashFlowProfile = (t) => {
67
+ this.monthlyCashFlowProfile = t, this.monthlyCashFlowProfileLoaded = !0;
68
68
  };
69
69
  loadGoalData = async () => {
70
70
  await Promise.all([
@@ -76,154 +76,158 @@ var g = class {
76
76
  };
77
77
  loadGoals = async () => {
78
78
  try {
79
- const e = await this.api.getGoals();
80
- this.setGoals(e);
81
- } catch (e) {
82
- console.error("Error occurred while getting goals:", e), this.globalStore.captureException(e, { store: "GoalStore" });
79
+ const t = await this.api.getGoals();
80
+ this.setGoals(t);
81
+ } catch (t) {
82
+ this.captureError("loadGoals", t);
83
83
  }
84
84
  };
85
85
  loadRetirementGoals = async () => {
86
86
  try {
87
- const e = await this.api.getRetirementGoals();
88
- this.setRetirementGoals(e);
89
- } catch (e) {
90
- console.error("Error occurred while loading retirement goals:", e), this.globalStore.captureException(e, { store: "GoalStore" });
87
+ const t = await this.api.getRetirementGoals();
88
+ this.setRetirementGoals(t);
89
+ } catch (t) {
90
+ this.captureError("loadRetirementGoals", t);
91
91
  }
92
92
  };
93
93
  loadRetirementGoalAccounts = async () => {
94
94
  try {
95
- const e = await this.api.getRetirementGoalAccounts();
96
- this.setRetirementGoalAccounts(e);
97
- } catch (e) {
98
- console.error("Error occurred while loading retirement goal accounts:", e), this.globalStore.captureException(e, { store: "GoalStore" });
95
+ const t = await this.api.getRetirementGoalAccounts();
96
+ this.setRetirementGoalAccounts(t);
97
+ } catch (t) {
98
+ this.captureError("loadRetirementGoalAccounts", t);
99
99
  }
100
100
  };
101
101
  loadMonthlyCashFlowProfile = async () => {
102
102
  try {
103
- const e = await this.api.getMonthlyCashFlowProfile();
104
- this.setMonthlyCashFlowProfile(e);
105
- } catch (e) {
106
- console.error("Error occurred while loading monthly cash flow profile:", e), this.globalStore.captureException(e, { store: "GoalStore" });
103
+ const t = await this.api.getMonthlyCashFlowProfile();
104
+ this.setMonthlyCashFlowProfile(t);
105
+ } catch (t) {
106
+ this.captureError("loadMonthlyCashFlowProfile", t);
107
107
  }
108
108
  };
109
- addGoal = async (e) => {
109
+ addGoal = async (t) => {
110
110
  try {
111
- const t = await this.api.addGoal(e);
112
- this.setGoals(l(this.goals, t));
113
- } catch (t) {
114
- console.error("Error occurred while adding goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
111
+ const e = await this.api.addGoal(t);
112
+ this.setGoals(l(this.goals, e));
113
+ } catch (e) {
114
+ this.captureError("addGoal", e);
115
115
  }
116
116
  };
117
- addRetirementGoal = async (e) => {
117
+ addRetirementGoal = async (t) => {
118
118
  try {
119
- const t = await this.api.addRetirementGoal(e), o = [];
119
+ const e = await this.api.addRetirementGoal(t), o = [];
120
120
  for (const r of this.newRetirementGoalAccounts) {
121
121
  const i = await this.api.addRetirementGoalAccount({
122
122
  ...r,
123
- retirement_goal_guid: t.guid
123
+ retirement_goal_guid: e.guid
124
124
  });
125
125
  o.push(i);
126
126
  }
127
127
  this.setNewRetirementGoalAccounts([]), s(() => {
128
- this.setRetirementGoals(l(this.retirementGoals, t)), this.setRetirementGoalAccounts(o.reduce((r, i) => l(r, i), this.retirementGoalAccounts));
128
+ this.setRetirementGoals(l(this.retirementGoals, e)), this.setRetirementGoalAccounts(o.reduce((r, i) => l(r, i), this.retirementGoalAccounts));
129
129
  });
130
- } catch (t) {
131
- console.error("Error occurred while adding retirement goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
130
+ } catch (e) {
131
+ this.captureError("addRetirementGoal", e);
132
132
  }
133
133
  };
134
- addRetirementGoalAccount = async (e) => {
134
+ addRetirementGoalAccount = async (t) => {
135
135
  try {
136
- const t = await this.api.addRetirementGoalAccount(e);
136
+ const e = await this.api.addRetirementGoalAccount(t);
137
137
  s(() => {
138
- this.retirementGoalAccounts = l(this.retirementGoalAccounts, t);
138
+ this.retirementGoalAccounts = l(this.retirementGoalAccounts, e);
139
139
  });
140
- } catch (t) {
141
- console.error("Error occurred while adding retirement goal account:", t), this.globalStore.captureException(t, { store: "GoalStore" });
140
+ } catch (e) {
141
+ this.captureError("addRetirementGoalAccount", e);
142
142
  }
143
143
  };
144
- deleteGoal = async (e) => {
144
+ deleteGoal = async (t) => {
145
145
  try {
146
- await this.api.removeGoal(e);
147
- const t = this.goals.findIndex((o) => o.guid === e);
148
- t >= 0 && this.goals.splice(t, 1);
149
- } catch (t) {
150
- console.error("Error occurred while deleting goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
146
+ await this.api.removeGoal(t);
147
+ const e = this.goals.findIndex((o) => o.guid === t);
148
+ e >= 0 && this.goals.splice(e, 1);
149
+ } catch (e) {
150
+ this.captureError("deleteGoal", e);
151
151
  }
152
152
  };
153
- deleteRetirementGoal = async (e) => {
153
+ deleteRetirementGoal = async (t) => {
154
154
  try {
155
- const t = this.retirementGoalAccounts.filter((r) => r.retirement_goal_guid === e.guid);
156
- for (const r of t) await this.deleteRetirementGoalAccount(r.guid);
157
- await this.api.removeRetirementGoal(e.guid);
158
- const o = this.retirementGoals.findIndex((r) => r.guid === e.guid);
155
+ const e = this.retirementGoalAccounts.filter((r) => r.retirement_goal_guid === t.guid);
156
+ for (const r of e) await this.deleteRetirementGoalAccount(r.guid);
157
+ await this.api.removeRetirementGoal(t.guid);
158
+ const o = this.retirementGoals.findIndex((r) => r.guid === t.guid);
159
159
  o >= 0 && this.retirementGoals.splice(o, 1);
160
- } catch (t) {
161
- console.error("Error deleting retirement goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
160
+ } catch (e) {
161
+ this.captureError("deleteRetirementGoal", e);
162
162
  }
163
163
  };
164
- deleteRetirementGoalAccount = async (e) => {
164
+ deleteRetirementGoalAccount = async (t) => {
165
165
  try {
166
- await this.api.removeRetirementGoalAccount(e);
167
- const t = this.retirementGoalAccounts.findIndex((o) => o.guid === e);
168
- t >= 0 && this.retirementGoalAccounts.splice(t, 1);
169
- } catch (t) {
170
- console.error("Error deleting retirement goal account:", t), this.globalStore.captureException(t, { store: "GoalStore" });
166
+ await this.api.removeRetirementGoalAccount(t);
167
+ const e = this.retirementGoalAccounts.findIndex((o) => o.guid === t);
168
+ e >= 0 && this.retirementGoalAccounts.splice(e, 1);
169
+ } catch (e) {
170
+ this.captureError("deleteRetirementGoalAccount", e);
171
171
  }
172
172
  };
173
- reorderGoals = async (e) => {
173
+ reorderGoals = async (t) => {
174
174
  try {
175
- const t = await this.api.reorderGoals(e);
175
+ const e = await this.api.reorderGoals(t);
176
176
  s(() => {
177
- for (const o of t) {
177
+ for (const o of e) {
178
178
  const r = this.goals.findIndex((i) => i.guid === o.guid);
179
179
  r >= 0 && (this.goals[r].position = o.position);
180
180
  }
181
181
  });
182
- } catch (t) {
183
- console.error("Error reordering goals:", t), this.globalStore.captureException(t, { store: "GoalStore" });
182
+ } catch (e) {
183
+ this.captureError("reorderGoals", e);
184
184
  }
185
185
  };
186
- setAlert = (e) => this.alert = e;
187
- setNewRetirementGoalAccounts = (e) => {
188
- this.newRetirementGoalAccounts = e;
186
+ setAlert = (t) => this.alert = t;
187
+ setNewRetirementGoalAccounts = (t) => {
188
+ this.newRetirementGoalAccounts = t;
189
189
  };
190
- setSelectedGoal = (e) => this.selectedGoal = e;
191
- updateGoal = async (e) => {
190
+ setSelectedGoal = (t) => this.selectedGoal = t;
191
+ updateGoal = async (t) => {
192
192
  try {
193
- const t = await this.api.updateGoal(e);
193
+ const e = await this.api.updateGoal(t);
194
194
  s(() => {
195
- const o = this.goals.findIndex((r) => r.guid === e.guid);
196
- o >= 0 && (this.goals[o] = t), this.selectedGoal?.guid === e.guid && this.setSelectedGoal(t);
195
+ const o = this.goals.findIndex((r) => r.guid === t.guid);
196
+ o >= 0 && (this.goals[o] = e), this.selectedGoal?.guid === t.guid && this.setSelectedGoal(e);
197
197
  });
198
- } catch (t) {
199
- console.error("Error occurred while updating goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
198
+ } catch (e) {
199
+ this.captureError("updateGoal", e);
200
200
  }
201
201
  };
202
- updateRetirementGoal = async (e) => {
202
+ updateRetirementGoal = async (t) => {
203
203
  try {
204
- const t = await this.api.updateRetirementGoal({
205
- ...e,
206
- target_amount: e.amount
204
+ const e = await this.api.updateRetirementGoal({
205
+ ...t,
206
+ target_amount: t.amount
207
207
  });
208
208
  s(() => {
209
- const o = this.retirementGoals.findIndex((r) => r.guid === e.guid);
210
- o >= 0 && (this.retirementGoals[o] = t), this.selectedGoal?.guid === e.guid && this.setSelectedGoal(this.allGoals.find((r) => r.guid === e.guid));
209
+ const o = this.retirementGoals.findIndex((r) => r.guid === t.guid);
210
+ o >= 0 && (this.retirementGoals[o] = e), this.selectedGoal?.guid === t.guid && this.setSelectedGoal(this.allGoals.find((r) => r.guid === t.guid));
211
211
  });
212
- } catch (t) {
213
- console.error("Error occurred while updating retirement goal:", t), this.globalStore.captureException(t, { store: "GoalStore" });
212
+ } catch (e) {
213
+ this.captureError("updateRetirementGoal", e);
214
214
  }
215
215
  };
216
- updateMonthlyCashFlowProfile = async (e) => {
216
+ updateMonthlyCashFlowProfile = async (t) => {
217
217
  try {
218
- const t = await this.api.updateMonthlyCashFlowProfile(e);
219
- this.setMonthlyCashFlowProfile(t);
220
- } catch (t) {
221
- console.error("Error occurred while updating monthly cash flow profile:", t), this.globalStore.captureException(t, { store: "GoalStore" });
218
+ const e = await this.api.updateMonthlyCashFlowProfile(t);
219
+ this.setMonthlyCashFlowProfile(e);
220
+ } catch (e) {
221
+ this.captureError("updateMonthlyCashFlowProfile", e);
222
222
  }
223
223
  };
224
+ captureError = (t, e) => this.globalStore.captureException(e, {
225
+ store: "GoalStore",
226
+ action: t
227
+ });
224
228
  };
225
229
  export {
226
- g as GoalStore
230
+ y as GoalStore
227
231
  };
228
232
 
229
233
  //# sourceMappingURL=GoalStore.es.js.map