@mx-cartographer/experiences 4.0.14-alpha.JB1 → 4.0.14-alpha.JB2
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/AccountStore-B23-oV1B.mjs +244 -0
- package/dist/AccountStore-B23-oV1B.mjs.map +1 -0
- package/dist/BeatApi-BxXgbSJY.mjs +99 -0
- package/dist/BeatApi-BxXgbSJY.mjs.map +1 -0
- package/dist/BudgetUtil-BSn9Zr71.mjs +208 -0
- package/dist/BudgetUtil-BSn9Zr71.mjs.map +1 -0
- package/dist/CashflowApi-zcebgnO1.mjs +103 -0
- package/dist/CashflowApi-zcebgnO1.mjs.map +1 -0
- package/dist/CashflowStore-gPEEBiXo.mjs +53 -0
- package/dist/CashflowStore-gPEEBiXo.mjs.map +1 -0
- package/dist/Categories-XVFviD23.mjs +117 -0
- package/dist/Categories-XVFviD23.mjs.map +1 -0
- package/dist/CategoryStore-CSNSMNA6.mjs +298 -0
- package/dist/CategoryStore-CSNSMNA6.mjs.map +1 -0
- package/dist/ConnectMiniWidget-Ep65CtHH.mjs +10854 -0
- package/dist/ConnectMiniWidget-Ep65CtHH.mjs.map +1 -0
- package/dist/DebtsStore-Duf3n1vZ.mjs +127 -0
- package/dist/DebtsStore-Duf3n1vZ.mjs.map +1 -0
- package/dist/Donut-DgMeKScZ.mjs +53 -0
- package/dist/Donut-DgMeKScZ.mjs.map +1 -0
- package/dist/Fetch-DpUi1_Dx.mjs +99 -0
- package/dist/Fetch-DpUi1_Dx.mjs.map +1 -0
- package/dist/GoalStore-BYoRLx99.mjs +128 -0
- package/dist/GoalStore-BYoRLx99.mjs.map +1 -0
- package/dist/MerchantStore-RhLvDvX-.mjs +118 -0
- package/dist/MerchantStore-RhLvDvX-.mjs.map +1 -0
- package/dist/NetWorthStore-syD1VnxE.mjs +66 -0
- package/dist/NetWorthStore-syD1VnxE.mjs.map +1 -0
- package/dist/NotificationStore-CqTYHfJC.mjs +141 -0
- package/dist/NotificationStore-CqTYHfJC.mjs.map +1 -0
- package/dist/RecurringActivityStore-B_COvGWG.mjs +304 -0
- package/dist/RecurringActivityStore-B_COvGWG.mjs.map +1 -0
- package/dist/StackedLineChart-CCqGRwvs.mjs +342 -0
- package/dist/StackedLineChart-CCqGRwvs.mjs.map +1 -0
- package/dist/TransactionStore-BUrjBWkk.mjs +478 -0
- package/dist/TransactionStore-BUrjBWkk.mjs.map +1 -0
- package/dist/index.es.js +12 -17869
- package/dist/index.es.js.map +1 -1
- package/dist/index.es10.js +107 -0
- package/dist/index.es10.js.map +1 -0
- package/dist/index.es11.js +159 -0
- package/dist/index.es11.js.map +1 -0
- package/dist/index.es12.js +483 -0
- package/dist/index.es12.js.map +1 -0
- package/dist/index.es13.js +620 -0
- package/dist/index.es13.js.map +1 -0
- package/dist/index.es14.js +788 -0
- package/dist/index.es14.js.map +1 -0
- package/dist/index.es15.js +891 -0
- package/dist/index.es15.js.map +1 -0
- package/dist/index.es16.js +962 -0
- package/dist/index.es16.js.map +1 -0
- package/dist/index.es17.js +1904 -0
- package/dist/index.es17.js.map +1 -0
- package/dist/index.es2.js +11 -0
- package/dist/index.es2.js.map +1 -0
- package/dist/index.es3.js +10 -0
- package/dist/index.es3.js.map +1 -0
- package/dist/index.es4.js +9 -0
- package/dist/index.es4.js.map +1 -0
- package/dist/index.es5.js +7 -0
- package/dist/index.es5.js.map +1 -0
- package/dist/index.es6.js +7 -0
- package/dist/index.es6.js.map +1 -0
- package/dist/index.es7.js +10 -0
- package/dist/index.es7.js.map +1 -0
- package/dist/index.es8.js +10 -0
- package/dist/index.es8.js.map +1 -0
- package/dist/index.es9.js +18 -0
- package/dist/index.es9.js.map +1 -0
- package/dist/useCombineEvents-CZUDHE96.mjs +170 -0
- package/dist/useCombineEvents-CZUDHE96.mjs.map +1 -0
- package/dist/usePrevious-BLb3umpI.mjs +11 -0
- package/dist/usePrevious-BLb3umpI.mjs.map +1 -0
- package/package.json +2 -3
- package/src/accounts/AccountsMiniWidget.tsx +0 -62
- package/src/accounts/AccountsWidget.tsx +0 -93
- package/src/accounts/ConnectMiniWidget.tsx +0 -36
- package/src/accounts/__tests__/Accounts.test.tsx +0 -561
- package/src/accounts/api/AccountApi.ts +0 -74
- package/src/accounts/api/__mocks__/AccountApi.ts +0 -46
- package/src/accounts/components/AccountListItem.tsx +0 -102
- package/src/accounts/components/AccountsList.tsx +0 -133
- package/src/accounts/components/ConnectImage.tsx +0 -314
- package/src/accounts/components/ConnectMiniWidgetCard.tsx +0 -41
- package/src/accounts/components/ConnectStatus.tsx +0 -44
- package/src/accounts/components/ConnectionStatusIcons.tsx +0 -26
- package/src/accounts/components/ConnectionsDrawer.tsx +0 -84
- package/src/accounts/components/detailsdrawer/Accounts/AccountActions.tsx +0 -177
- package/src/accounts/components/detailsdrawer/Accounts/AccountActionsRow.tsx +0 -33
- package/src/accounts/components/detailsdrawer/Accounts/AccountConnection.tsx +0 -139
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetailEdit.tsx +0 -162
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetails.tsx +0 -98
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetailsChart.tsx +0 -63
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetailsContent.tsx +0 -52
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetailsHeader.tsx +0 -71
- package/src/accounts/components/detailsdrawer/Accounts/AccountDetailsTab.tsx +0 -25
- package/src/accounts/components/detailsdrawer/Accounts/ConnectionErrorMessage.tsx +0 -99
- package/src/accounts/components/detailsdrawer/Transactions/TransactionsTab.tsx +0 -51
- package/src/accounts/constants/Accounts.ts +0 -11
- package/src/accounts/hooks/useGetMergeableAccounts.tsx +0 -13
- package/src/accounts/hooks/useUiStore.ts +0 -12
- package/src/accounts/index.ts +0 -8
- package/src/accounts/stores/AccountStore.ts +0 -220
- package/src/accounts/stores/UiStore.ts +0 -18
- package/src/accounts/stores/__tests__/AccountStore.test.ts +0 -204
- package/src/accounts/utils/AccountFields.tsx +0 -248
- package/src/accounts/utils/Accounts.ts +0 -28
- package/src/accounts/utils/__tests__/AccountFieldsUtils.test.tsx +0 -215
- package/src/accounts/utils/__tests__/AccountsUtils.test.tsx +0 -104
- package/src/accounts/utils/getConnectionMessages.tsx +0 -198
- package/src/accounts/utils/index.ts +0 -1
- package/src/budgets/BubbleBudgetsMiniWidget.tsx +0 -57
- package/src/budgets/BubbleBudgetsWidget.tsx +0 -154
- package/src/budgets/__tests__/BubbleBudgetsWidget.test.tsx +0 -40
- package/src/budgets/__tests__/BudgetList.test.tsx +0 -38
- package/src/budgets/__tests__/BudgetsStore.test.tsx +0 -48
- package/src/budgets/__tests__/Overview.test.tsx +0 -38
- package/src/budgets/api/BudgetsApi.ts +0 -43
- package/src/budgets/api/__mocks__/BudgetsApi.ts +0 -7
- package/src/budgets/components/AddBudgets.tsx +0 -50
- package/src/budgets/components/BubbleBudgets.tsx +0 -73
- package/src/budgets/components/BubbleChart.tsx +0 -50
- package/src/budgets/components/BudgetDetailsDrawer.tsx +0 -134
- package/src/budgets/components/BudgetList.tsx +0 -50
- package/src/budgets/components/Overview.tsx +0 -156
- package/src/budgets/components/ZeroState.tsx +0 -23
- package/src/budgets/components/addbudget/Header.tsx +0 -59
- package/src/budgets/components/addbudget/RecalculateBudgetRow.tsx +0 -53
- package/src/budgets/components/addbudget/RecalculateBudgets.tsx +0 -69
- package/src/budgets/components/addbudget/UnbudgetedRow.tsx +0 -57
- package/src/budgets/components/bubblechart/Bubble.tsx +0 -148
- package/src/budgets/components/bubblechart/Mercury.tsx +0 -57
- package/src/budgets/components/budgetdetails/AddSubBudget.tsx +0 -111
- package/src/budgets/components/budgetdetails/BudgetDetails.tsx +0 -93
- package/src/budgets/components/budgetdetails/Header.tsx +0 -48
- package/src/budgets/components/budgetdetails/SubBudgetList.tsx +0 -148
- package/src/budgets/components/budgetlist/BudgetRow.tsx +0 -63
- package/src/budgets/components/budgetlist/SubBudgetRow.tsx +0 -64
- package/src/budgets/components/budgetlist/SubBudgetZeroState.tsx +0 -22
- package/src/budgets/components/shared/BudgetAmount.tsx +0 -54
- package/src/budgets/index.ts +0 -2
- package/src/budgets/store/BudgetsStore.ts +0 -183
- package/src/budgets/utils/BubblesSVG.ts +0 -142
- package/src/budgets/utils/BudgetUtil.ts +0 -140
- package/src/cashflow/CashflowMiniWidget.tsx +0 -25
- package/src/cashflow/CashflowOnboarding.tsx +0 -298
- package/src/cashflow/CashflowWidget.tsx +0 -111
- package/src/cashflow/api/CashflowApi.ts +0 -62
- package/src/cashflow/api/__mocks__/CashflowApi.ts +0 -15
- package/src/cashflow/components/CashflowAmountHeading.tsx +0 -46
- package/src/cashflow/components/CashflowContent.tsx +0 -63
- package/src/cashflow/components/CashflowHeading.tsx +0 -172
- package/src/cashflow/components/CashflowWidgetContent.tsx +0 -225
- package/src/cashflow/components/DetailsExpenseHeader.tsx +0 -47
- package/src/cashflow/components/DetailsExpenseRow.tsx +0 -46
- package/src/cashflow/components/DetailsFooter.tsx +0 -28
- package/src/cashflow/components/DetailsTab.tsx +0 -128
- package/src/cashflow/components/RemainingCash.tsx +0 -44
- package/src/cashflow/components/SummaryTab.tsx +0 -247
- package/src/cashflow/components/onboarding/StepOne.tsx +0 -90
- package/src/cashflow/components/onboarding/StepTwo.tsx +0 -23
- package/src/cashflow/context/hooks.tsx +0 -12
- package/src/cashflow/images/cashflow-onboarding.png +0 -0
- package/src/cashflow/images/loading-animation.gif +0 -0
- package/src/cashflow/index.ts +0 -5
- package/src/cashflow/stores/CashflowStore.ts +0 -26
- package/src/cashflow/stores/UiStore.ts +0 -48
- package/src/cashflow/stores/__tests__/CashflowStore.test.ts +0 -16
- package/src/cashflow/util/Filters.ts +0 -15
- package/src/categories/components/CategoryList.tsx +0 -64
- package/src/categories/components/CategoryRow.tsx +0 -68
- package/src/categories/components/CategorySelector.tsx +0 -80
- package/src/categories/components/CategorySelectorDrawer.tsx +0 -41
- package/src/categories/components/CustomCategories/AddSubcategory.tsx +0 -65
- package/src/categories/components/CustomCategories/CustomCategoryModal.tsx +0 -99
- package/src/categories/components/CustomCategories/DeleteSubcategory.tsx +0 -49
- package/src/categories/components/CustomCategories/RenameSubcategory.tsx +0 -48
- package/src/categories/components/CustomCategories/index.ts +0 -4
- package/src/categories/components/SubcategoryList.tsx +0 -47
- package/src/categories/components/SubcategoryRow.tsx +0 -123
- package/src/categories/constants/Analytics.ts +0 -89
- package/src/categories/constants/OnClickEvents.ts +0 -13
- package/src/categories/context/hooks.ts +0 -12
- package/src/categories/index.ts +0 -5
- package/src/categories/stores/CategoryStore.ts +0 -184
- package/src/categories/stores/UiStore.ts +0 -36
- package/src/categories/stores/__tests__/CategoryStore.test.ts +0 -54
- package/src/categories/util/CategoryUtil.ts +0 -136
- package/src/common/api/AnalyticsApi.ts +0 -49
- package/src/common/api/BeatApi.ts +0 -32
- package/src/common/api/CategoryApi.ts +0 -52
- package/src/common/api/GlobalCopyApi.ts +0 -17
- package/src/common/api/LocalizedCopyApi.ts +0 -21
- package/src/common/api/NotificationApi.ts +0 -40
- package/src/common/api/ScheduledPaymentsApi.ts +0 -37
- package/src/common/api/UserApi.ts +0 -23
- package/src/common/api/WidgetApi.ts +0 -15
- package/src/common/api/__mocks__/BeatApi.ts +0 -8
- package/src/common/api/__mocks__/CategoryApi.ts +0 -15
- package/src/common/api/__mocks__/GlobalCopyApi.ts +0 -7
- package/src/common/api/__mocks__/NotificationApi.ts +0 -11
- package/src/common/api/__mocks__/ScheduledPaymentsApi.ts +0 -7
- package/src/common/api/__mocks__/UserApi.ts +0 -9
- package/src/common/api/__mocks__/WidgetApi.ts +0 -11
- package/src/common/api/index.ts +0 -9
- package/src/common/components/ConnectDrawer.tsx +0 -87
- package/src/common/components/CurrencyInput.tsx +0 -147
- package/src/common/components/CurrencyText.tsx +0 -44
- package/src/common/components/DataRow.tsx +0 -52
- package/src/common/components/IconBacking.tsx +0 -41
- package/src/common/components/InformationTooltip.tsx +0 -52
- package/src/common/components/ListItemWrapper.tsx +0 -49
- package/src/common/components/Loader.tsx +0 -24
- package/src/common/components/MiniWidgetContainer.tsx +0 -64
- package/src/common/components/ResponsiveButton.tsx +0 -65
- package/src/common/components/SearchBox.tsx +0 -64
- package/src/common/components/SelectionBox.tsx +0 -64
- package/src/common/components/SubheaderRow.tsx +0 -22
- package/src/common/components/TabContentContainer.tsx +0 -28
- package/src/common/components/WidgetContainer.tsx +0 -239
- package/src/common/components/accountfilter/AccountFilter.tsx +0 -133
- package/src/common/components/accountfilter/AccountFilterOptions.tsx +0 -263
- package/src/common/components/accountfilter/index.ts +0 -1
- package/src/common/components/barchart/Bar.tsx +0 -123
- package/src/common/components/barchart/BarChart.tsx +0 -136
- package/src/common/components/barchart/BarColumn.tsx +0 -150
- package/src/common/components/barchart/Legend.tsx +0 -60
- package/src/common/components/barchart/Util.ts +0 -54
- package/src/common/components/barchart/__tests__/BarChart.test.tsx +0 -46
- package/src/common/components/barchart/index.ts +0 -1
- package/src/common/components/calendar/Calendar.tsx +0 -223
- package/src/common/components/calendar/Day.tsx +0 -127
- package/src/common/components/calendar/Header.tsx +0 -58
- package/src/common/components/calendar/__tests__/Calendar.test.tsx +0 -50
- package/src/common/components/calendar/index.ts +0 -1
- package/src/common/components/calendar/upcomingActivity/CalendarIcons.tsx +0 -40
- package/src/common/components/charts/Donut.tsx +0 -82
- package/src/common/components/charts/LineChart.tsx +0 -204
- package/src/common/components/charts/StackedLineChart.tsx +0 -292
- package/src/common/components/charts/StatusBar.tsx +0 -41
- package/src/common/components/charts/index.ts +0 -4
- package/src/common/components/charts/linechart/CustomLegend.tsx +0 -49
- package/src/common/components/charts/linechart/CustomLine.tsx +0 -31
- package/src/common/components/charts/linechart/CustomMark.tsx +0 -68
- package/src/common/components/charts/stackedlinechart/CategoryIconLabel.tsx +0 -29
- package/src/common/components/charts/stackedlinechart/CustomAreaTooltip.tsx +0 -115
- package/src/common/components/charts/stackedlinechart/CustomLegend.tsx +0 -73
- package/src/common/components/charts/stackedlinechart/CustomPointTooltip.tsx +0 -41
- package/src/common/components/charts/stackedlinechart/utils.ts +0 -13
- package/src/common/components/daterangeselector/DateRangeSelector.tsx +0 -383
- package/src/common/components/daterangeselector/index.ts +0 -1
- package/src/common/components/dialog/Dialog.tsx +0 -92
- package/src/common/components/dialog/index.ts +0 -1
- package/src/common/components/donuts/MultiSegmentDonut.tsx +0 -89
- package/src/common/components/donuts/SingleSegmentDonut.tsx +0 -75
- package/src/common/components/donuts/index.ts +0 -2
- package/src/common/components/drawer/Drawer.tsx +0 -97
- package/src/common/components/drawer/Header.tsx +0 -64
- package/src/common/components/drawer/index.ts +0 -1
- package/src/common/components/index.ts +0 -22
- package/src/common/constants/Account.ts +0 -30
- package/src/common/constants/Analytics.ts +0 -70
- package/src/common/constants/ApiEndpoints.ts +0 -30
- package/src/common/constants/Category.ts +0 -302
- package/src/common/constants/Connect.ts +0 -2
- package/src/common/constants/DateFormats.ts +0 -122
- package/src/common/constants/Donut.ts +0 -2
- package/src/common/constants/Numbers.ts +0 -6
- package/src/common/constants/ScheduledPayment.ts +0 -21
- package/src/common/constants/Sizes.ts +0 -7
- package/src/common/constants/SpendingPlan.ts +0 -17
- package/src/common/constants/Table.ts +0 -13
- package/src/common/constants/index.ts +0 -21
- package/src/common/context/GlobalDataProvider.tsx +0 -31
- package/src/common/context/WidgetContainerProvider.tsx +0 -24
- package/src/common/context/__mocks__/GlobalDataProvider.tsx +0 -25
- package/src/common/context/hooks.tsx +0 -57
- package/src/common/context/index.ts +0 -22
- package/src/common/hooks/__tests__/useDimensions.test.tsx +0 -190
- package/src/common/hooks/index.ts +0 -3
- package/src/common/hooks/useCombineEvents.tsx +0 -53
- package/src/common/hooks/useDimensions.tsx +0 -78
- package/src/common/hooks/usePrevious.tsx +0 -10
- package/src/common/hooks/useScreenSize.tsx +0 -15
- package/src/common/index.ts +0 -23
- package/src/common/stores/ConnectStore.ts +0 -26
- package/src/common/stores/GlobalCopyStore.ts +0 -36
- package/src/common/stores/GlobalStore.ts +0 -83
- package/src/common/stores/GlobalUiStore.ts +0 -66
- package/src/common/stores/UserStore.ts +0 -45
- package/src/common/stores/__tests__/GlobalCopyStore.test.ts +0 -23
- package/src/common/stores/__tests__/GlobalStore.test.ts +0 -24
- package/src/common/stores/index.ts +0 -3
- package/src/common/types/Account.ts +0 -406
- package/src/common/types/Activity.ts +0 -31
- package/src/common/types/Analytics.ts +0 -70
- package/src/common/types/Beat.ts +0 -71
- package/src/common/types/Budget.ts +0 -29
- package/src/common/types/Cashflow.ts +0 -110
- package/src/common/types/Category.ts +0 -68
- package/src/common/types/Date.ts +0 -2
- package/src/common/types/Debt.ts +0 -19
- package/src/common/types/Expense.ts +0 -20
- package/src/common/types/Global.ts +0 -13
- package/src/common/types/GlobalCopy.ts +0 -37
- package/src/common/types/Goal.ts +0 -59
- package/src/common/types/Institution.ts +0 -11
- package/src/common/types/LocalizedContent.ts +0 -9
- package/src/common/types/Merchant.ts +0 -6
- package/src/common/types/Notification.ts +0 -15
- package/src/common/types/ScheduledPayment.ts +0 -15
- package/src/common/types/ScreenSize.tsx +0 -4
- package/src/common/types/SpendingPlan.ts +0 -48
- package/src/common/types/Transaction.ts +0 -91
- package/src/common/types/User.ts +0 -20
- package/src/common/types/Widgets.ts +0 -11
- package/src/common/types/index.ts +0 -93
- package/src/common/types/localization/AccountFilterCopy.ts +0 -12
- package/src/common/types/localization/AccountTypeCopy.ts +0 -16
- package/src/common/types/localization/AccountsCopy.ts +0 -113
- package/src/common/types/localization/BudgetsCopy.ts +0 -52
- package/src/common/types/localization/CashflowCopy.ts +0 -77
- package/src/common/types/localization/CategoryCopy.ts +0 -18
- package/src/common/types/localization/CommonCopy.ts +0 -30
- package/src/common/types/localization/ConnectCopy.ts +0 -74
- package/src/common/types/localization/CurrencyInputCopy.ts +0 -6
- package/src/common/types/localization/DateRangePickerCopy.ts +0 -23
- package/src/common/types/localization/GoalsCopy.ts +0 -37
- package/src/common/types/localization/InsightsFeedCopy.ts +0 -26
- package/src/common/types/localization/MicroInsightsCopy.ts +0 -28
- package/src/common/types/localization/NetWorthCopy.ts +0 -14
- package/src/common/types/localization/NotificationsCopy.ts +0 -7
- package/src/common/types/localization/RecurringCopy.ts +0 -76
- package/src/common/types/localization/SpendingCopy.ts +0 -16
- package/src/common/types/localization/TransactionsCopy.ts +0 -81
- package/src/common/types/localization/TrendsCopy.ts +0 -10
- package/src/common/types/localization/index.ts +0 -19
- package/src/common/utils/AccountFilter.ts +0 -45
- package/src/common/utils/Analytics.ts +0 -51
- package/src/common/utils/Categories.ts +0 -75
- package/src/common/utils/DateUtil.ts +0 -67
- package/src/common/utils/Fetch.ts +0 -115
- package/src/common/utils/Localization.ts +0 -67
- package/src/common/utils/NumberFormatting.ts +0 -65
- package/src/common/utils/__tests__/Fetch.test.tsx +0 -34
- package/src/common/utils/index.ts +0 -18
- package/src/dashboard/Dashboard.tsx +0 -92
- package/src/dashboard/Greeting.tsx +0 -75
- package/src/dashboard/__tests__/Dashboard.test.tsx +0 -84
- package/src/dashboard/constants/Dashboard.ts +0 -4
- package/src/dashboard/index.ts +0 -3
- package/src/dashboard/types/DashboardTypes.ts +0 -9
- package/src/debts/DebtsWidget.tsx +0 -90
- package/src/debts/components/DebtsChart.tsx +0 -190
- package/src/debts/components/DebtsTable.tsx +0 -209
- package/src/debts/components/SnowballCard.tsx +0 -70
- package/src/debts/components/SnowballDrawer.tsx +0 -384
- package/src/debts/components/debtstable/AccountCell.tsx +0 -25
- package/src/debts/components/debtstable/PriorityCell.tsx +0 -46
- package/src/debts/index.ts +0 -4
- package/src/debts/store/DebtsStore.ts +0 -20
- package/src/debts/utils/DebtStore.ts +0 -75
- package/src/debts/utils/DebtsWidget.ts +0 -32
- package/src/debts/utils/SnowballCard.tsx +0 -48
- package/src/goals/GoalsWidget.tsx +0 -128
- package/src/goals/api/GoalApi.ts +0 -29
- package/src/goals/components/GoalDetails.tsx +0 -240
- package/src/goals/components/GoalList.tsx +0 -101
- package/src/goals/components/GoalStatusCard.tsx +0 -87
- package/src/goals/components/TabTitle.tsx +0 -21
- package/src/goals/constants/CopyKeys.ts +0 -29
- package/src/goals/index.ts +0 -2
- package/src/goals/stores/GoalStore.ts +0 -47
- package/src/goals/util/GoalsUtil.ts +0 -61
- package/src/index.ts +0 -17
- package/src/insights/README.md +0 -16
- package/src/insights/contexts/ToastContext.tsx +0 -62
- package/src/insights/index.ts +0 -5
- package/src/insights/settings/SettingsDrawer.tsx +0 -40
- package/src/insights/settings/__tests__/SettingsDrawer.test.tsx +0 -50
- package/src/insights/settings/components/PulseSubheaderRow.tsx +0 -34
- package/src/insights/settings/components/SettingsItem.tsx +0 -55
- package/src/insights/settings/components/Toast.tsx +0 -69
- package/src/insights/settings/hiddeninsights/__tests__/HiddenInsightsDrawer.test.tsx +0 -108
- package/src/insights/settings/hiddeninsights/__tests__/SubCategoryDrawer.test.tsx +0 -150
- package/src/insights/settings/hiddeninsights/components/CategoryEmptyState.tsx +0 -50
- package/src/insights/settings/hiddeninsights/components/HiddenInsightsDrawer.tsx +0 -222
- package/src/insights/settings/hiddeninsights/components/HiddenInsightsDrawerWrapper.tsx +0 -24
- package/src/insights/settings/hiddeninsights/components/SubCategoryDrawer.tsx +0 -256
- package/src/insights/settings/hiddeninsights/images/no-insights.png +0 -0
- package/src/insights/settings/hiddeninsights/types/index.ts +0 -74
- package/src/insights/settings/manageaccounts/__tests__/AccountGroup.test.tsx +0 -92
- package/src/insights/settings/manageaccounts/__tests__/ManageAccountsDrawer.test.tsx +0 -83
- package/src/insights/settings/manageaccounts/components/AccountGroup.tsx +0 -109
- package/src/insights/settings/manageaccounts/components/ManageAccountsDrawer.tsx +0 -63
- package/src/insights/settings/manageaccounts/types/index.ts +0 -13
- package/src/insights/settings/types/index.ts +0 -4
- package/src/insights/store/BeatStore.ts +0 -25
- package/src/insights/utils/beatTemplateCategories.ts +0 -103
- package/src/merchants/api/MerchantApi.ts +0 -33
- package/src/merchants/components/MerchantLookup.tsx +0 -117
- package/src/merchants/index.ts +0 -2
- package/src/merchants/stores/MerchantStore.ts +0 -42
- package/src/microinsights/analytics.ts +0 -31
- package/src/microinsights/components/beatCard/BeatCard.tsx +0 -124
- package/src/microinsights/components/beaticons/BeatCategoryIcon.tsx +0 -20
- package/src/microinsights/components/beaticons/BeatIcon.tsx +0 -45
- package/src/microinsights/components/beaticons/BeatMerchantLogo.tsx +0 -33
- package/src/microinsights/components/beaticons/ChartFilledIcon.tsx +0 -37
- package/src/microinsights/components/beaticons/MonthlySpendComparisonIcon.tsx +0 -30
- package/src/microinsights/components/beaticons/ZeroStateIcon.tsx +0 -558
- package/src/microinsights/components/beaticons/index.tsx +0 -7
- package/src/microinsights/components/carouselheader/CarouselHeader.tsx +0 -111
- package/src/microinsights/components/insightsmicrowidget/InsightsMicroWidget.tsx +0 -163
- package/src/microinsights/components/microBeatCarousel/CarouselControls.tsx +0 -99
- package/src/microinsights/components/microBeatCarousel/MicroBeatCarousel.tsx +0 -207
- package/src/microinsights/components/microInsightCard/MicroInsightCard.tsx +0 -173
- package/src/microinsights/components/noRelevantInsightsCard/NoRelevantInsightsCard.tsx +0 -89
- package/src/microinsights/components/spinner/Spinner.tsx +0 -21
- package/src/microinsights/components/viewMoreMicroCard/ViewMoreMicroCard.tsx +0 -101
- package/src/microinsights/components/zeroStateCard/ZeroStateCard.tsx +0 -62
- package/src/microinsights/constants/Analytics.ts +0 -192
- package/src/microinsights/constants/App.ts +0 -53
- package/src/microinsights/constants/Insights.tsx +0 -3
- package/src/microinsights/constants/OnClickEvents.ts +0 -3
- package/src/microinsights/context/InsightsMicroWidgetDataProvider.tsx +0 -24
- package/src/microinsights/context/hooks.tsx +0 -65
- package/src/microinsights/index.ts +0 -16
- package/src/microinsights/interfaces.ts +0 -28
- package/src/microinsights/stores/AppStore.ts +0 -34
- package/src/microinsights/stores/CopyStore.ts +0 -38
- package/src/microinsights/stores/InsightsMicroWidgetStore.ts +0 -61
- package/src/microinsights/types/BeatUIComponent.ts +0 -5
- package/src/microinsights/utils/DataSeries.ts +0 -20
- package/src/networth/NetWorthWidget.tsx +0 -171
- package/src/networth/__tests__/AssetsLiabilitiesDetail.test.tsx +0 -94
- package/src/networth/__tests__/NetWorthChart.test.tsx +0 -31
- package/src/networth/__tests__/NetWorthList.test.tsx +0 -33
- package/src/networth/components/AssetsLiabilitiesDetail.tsx +0 -146
- package/src/networth/components/GainsLossesDetail.tsx +0 -110
- package/src/networth/components/NetWorthChange.tsx +0 -51
- package/src/networth/components/NetWorthChart.tsx +0 -71
- package/src/networth/components/NetWorthList.tsx +0 -91
- package/src/networth/components/NetWorthListItem.tsx +0 -72
- package/src/networth/components/NetWorthSummary.tsx +0 -36
- package/src/networth/index.ts +0 -5
- package/src/networth/stores/NetWorthStore.ts +0 -99
- package/src/networth/stores/__tests__/NetWorthStore.test.ts +0 -32
- package/src/networth/types/NetWorth.ts +0 -59
- package/src/networth/utils/NetWorthUtils.ts +0 -177
- package/src/networth/utils/__tests__/NetWorthUtils.test.ts +0 -198
- package/src/notifications/__tests__/NotificationList.test.tsx +0 -67
- package/src/notifications/components/DateRow.tsx +0 -21
- package/src/notifications/components/NotificationBadge.tsx +0 -51
- package/src/notifications/components/NotificationCard.tsx +0 -63
- package/src/notifications/components/NotificationList.tsx +0 -65
- package/src/notifications/constants/NotificationConstants.ts +0 -104
- package/src/notifications/index.ts +0 -3
- package/src/notifications/stores/NotificationStore.ts +0 -62
- package/src/notifications/utils/NotificationUtils.ts +0 -21
- package/src/recurringactivity/RecurringActivityMiniWidget.tsx +0 -45
- package/src/recurringactivity/RecurringActivityWidget.tsx +0 -89
- package/src/recurringactivity/__tests__/BuildActivities.test.ts +0 -30
- package/src/recurringactivity/__tests__/BuildNewActivity.test.ts +0 -59
- package/src/recurringactivity/__tests__/RecurringActivityWidget.test.tsx +0 -33
- package/src/recurringactivity/components/ActivityBadges.tsx +0 -40
- package/src/recurringactivity/components/ActivityDetails.tsx +0 -196
- package/src/recurringactivity/components/ActivityList.tsx +0 -141
- package/src/recurringactivity/components/ActivityRow.tsx +0 -161
- package/src/recurringactivity/components/ActivityStatus.tsx +0 -82
- package/src/recurringactivity/components/MiniWidgetContent.tsx +0 -61
- package/src/recurringactivity/components/RecurringActivity.tsx +0 -165
- package/src/recurringactivity/components/actions/FrequencyAction.tsx +0 -130
- package/src/recurringactivity/components/actions/PaymentDateAction.tsx +0 -99
- package/src/recurringactivity/components/activitycalendar/ActivityCalendar.tsx +0 -100
- package/src/recurringactivity/components/activitycalendar/ActivityDay.tsx +0 -88
- package/src/recurringactivity/components/activitycalendar/Legend.tsx +0 -42
- package/src/recurringactivity/components/shared/ActivitySettings.tsx +0 -43
- package/src/recurringactivity/components/shared/activitysettings/AddActivity.tsx +0 -175
- package/src/recurringactivity/components/shared/activitysettings/AddActivityDetails.tsx +0 -148
- package/src/recurringactivity/components/shared/activitysettings/ManageExpenses.tsx +0 -84
- package/src/recurringactivity/components/shared/activitysettings/ManageIncome.tsx +0 -102
- package/src/recurringactivity/components/shared/activitysettings/SelectTransaction.tsx +0 -45
- package/src/recurringactivity/index.ts +0 -5
- package/src/recurringactivity/stores/RecurringActivityStore.ts +0 -312
- package/src/recurringactivity/util/RecurringActivityUtils.ts +0 -40
- package/src/recurringactivity/util/buildActivities.ts +0 -334
- package/src/recurringactivity/util/buildNewActivity.ts +0 -111
- package/src/recurringactivity/util/getRecurrence.ts +0 -50
- package/src/recurringactivity/util/getStatus.ts +0 -32
- package/src/recurringactivity/util/updateActivity.ts +0 -66
- package/src/spending/SpendingMiniWidget.tsx +0 -23
- package/src/spending/SpendingWidget.tsx +0 -71
- package/src/spending/__tests__/MiniSpendingChart.test.tsx +0 -43
- package/src/spending/__tests__/SpendingData.test.ts +0 -38
- package/src/spending/__tests__/SpendingMiniWidget.test.tsx +0 -49
- package/src/spending/__tests__/SpendingWidget.test.tsx +0 -49
- package/src/spending/components/MiniSpendingChart.tsx +0 -125
- package/src/spending/components/Spending.tsx +0 -175
- package/src/spending/components/SpendingChart.tsx +0 -74
- package/src/spending/components/SpendingDonut.tsx +0 -125
- package/src/spending/components/SpendingLegend.tsx +0 -41
- package/src/spending/components/SpendingList.tsx +0 -112
- package/src/spending/components/SpendingTabLabel.tsx +0 -25
- package/src/spending/index.ts +0 -2
- package/src/spending/utils/SpendingData.ts +0 -196
- package/src/transactions/TransactionWidget.tsx +0 -319
- package/src/transactions/analytics.ts +0 -12
- package/src/transactions/api/TransactionApi.ts +0 -204
- package/src/transactions/api/__mocks__/TransactionApi.ts +0 -20
- package/src/transactions/components/shared/TransactionDetails.tsx +0 -140
- package/src/transactions/components/shared/TransactionList.tsx +0 -124
- package/src/transactions/components/shared/TransactionTable.tsx +0 -123
- package/src/transactions/components/shared/transactiondetails/Description.tsx +0 -97
- package/src/transactions/components/shared/transactiondetails/FlagTransaction.tsx +0 -63
- package/src/transactions/components/shared/transactiondetails/ManualTransactionDetails.tsx +0 -148
- package/src/transactions/components/shared/transactiondetails/TransactionAmountHeader.tsx +0 -39
- package/src/transactions/components/shared/transactiondetails/actions/CategoryAction.tsx +0 -149
- package/src/transactions/components/shared/transactiondetails/actions/DateAction.tsx +0 -119
- package/src/transactions/components/shared/transactiondetails/actions/DeleteAction.tsx +0 -85
- package/src/transactions/components/shared/transactiondetails/actions/DeleteLogoAction.tsx +0 -88
- package/src/transactions/components/shared/transactiondetails/actions/HideAction.tsx +0 -126
- package/src/transactions/components/shared/transactiondetails/actions/MemoAction.tsx +0 -112
- package/src/transactions/components/shared/transactiondetails/actions/SplitAction.tsx +0 -234
- package/src/transactions/components/shared/transactiondetails/actions/TagsAction.tsx +0 -119
- package/src/transactions/components/shared/transactiondetails/actions/index.ts +0 -8
- package/src/transactions/components/shared/transactionlist/DateRow.tsx +0 -33
- package/src/transactions/components/shared/transactionlist/TransactionRow.tsx +0 -92
- package/src/transactions/components/shared/transactionlist/ZeroState.tsx +0 -36
- package/src/transactions/components/shared/transactiontable/cells/AccountCell.tsx +0 -12
- package/src/transactions/components/shared/transactiontable/cells/AmountCell.tsx +0 -35
- package/src/transactions/components/shared/transactiontable/cells/CategoryCell.tsx +0 -37
- package/src/transactions/components/shared/transactiontable/cells/DateCell.tsx +0 -17
- package/src/transactions/components/shared/transactiontable/cells/FlagCell.tsx +0 -43
- package/src/transactions/components/shared/transactiontable/cells/HeaderCell.tsx +0 -11
- package/src/transactions/components/shared/transactiontable/cells/PayeeCell.tsx +0 -21
- package/src/transactions/components/shared/transactiontable/cells/index.ts +0 -7
- package/src/transactions/components/splitmanager/SplitManager.tsx +0 -93
- package/src/transactions/components/splitmanager/SplitRow.tsx +0 -149
- package/src/transactions/components/splitmanager/index.ts +0 -1
- package/src/transactions/components/tagmanager/Header.tsx +0 -100
- package/src/transactions/components/tagmanager/SearchBox.tsx +0 -60
- package/src/transactions/components/tagmanager/TagManager.tsx +0 -51
- package/src/transactions/components/tagmanager/TagRow.tsx +0 -145
- package/src/transactions/components/tagmanager/index.ts +0 -1
- package/src/transactions/components/transactionwidget/AddAccountModal.tsx +0 -30
- package/src/transactions/components/transactionwidget/actions/AddTransactionAction.tsx +0 -74
- package/src/transactions/components/transactionwidget/actions/EditCategoryAction.tsx +0 -80
- package/src/transactions/components/transactionwidget/actions/ExportCsvAction.tsx +0 -32
- package/src/transactions/constants/Actions.ts +0 -28
- package/src/transactions/constants/Analytics.ts +0 -272
- package/src/transactions/constants/OnClickEvents.ts +0 -45
- package/src/transactions/constants/Transaction.ts +0 -32
- package/src/transactions/constants/TransactionsTable.ts +0 -26
- package/src/transactions/context/hooks.tsx +0 -12
- package/src/transactions/index.ts +0 -12
- package/src/transactions/stores/TransactionStore.ts +0 -327
- package/src/transactions/stores/UiStore.ts +0 -72
- package/src/transactions/stores/__tests__/TransactionStore.test.ts +0 -80
- package/src/transactions/utils/Filters.ts +0 -35
- package/src/transactions/utils/Transactions.ts +0 -22
- package/src/transactions/utils/buildDetailedTransactions.ts +0 -66
- package/src/transactions/utils/exportTransactionsToCSV.ts +0 -85
- package/src/transactions/utils/sortAndFilterTransactions.ts +0 -127
- package/src/trends/TrendsFullWidget.tsx +0 -286
- package/src/trends/TrendsMiniWidget.tsx +0 -49
- package/src/trends/__tests__/TrendsFullWidget.test.tsx +0 -45
- package/src/trends/__tests__/TrendsMiniWidget.test.tsx +0 -35
- package/src/trends/components/SpendingChart.tsx +0 -29
- package/src/trends/components/TrendsChart.tsx +0 -75
- package/src/trends/components/TrendsDrawer.tsx +0 -74
- package/src/trends/components/TrendsTable.tsx +0 -161
- package/src/trends/components/__tests__/SpendingChart.test.tsx +0 -37
- package/src/trends/components/trendstable/AmountCell.tsx +0 -14
- package/src/trends/components/trendstable/CategoryCell.tsx +0 -39
- package/src/trends/components/trendstable/HeaderCell.tsx +0 -8
- package/src/trends/index.ts +0 -2
- package/src/trends/mocks.ts +0 -423
- package/src/trends/utils/SpendingData.ts +0 -76
- package/src/trends/utils/TrendsData.ts +0 -127
- package/src/trends/utils/shared.ts +0 -39
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es15.js","sources":["../src/common/constants/SpendingPlan.ts","../src/common/api/LocalizedCopyApi.ts","../src/common/api/UserApi.ts","../src/common/api/WidgetApi.ts","../src/common/components/barchart/Legend.tsx","../src/common/components/barchart/Bar.tsx","../src/common/components/barchart/BarColumn.tsx","../src/common/components/barchart/Util.ts","../src/common/components/barchart/BarChart.tsx","../src/common/components/donuts/MultiSegmentDonut.tsx","../src/common/components/ResponsiveButton.tsx","../src/common/stores/GlobalCopyStore.ts","../src/insights/store/BeatStore.ts","../src/budgets/api/BudgetsApi.ts","../src/budgets/store/BudgetsStore.ts","../src/common/types/Beat.ts","../src/common/types/Expense.ts","../src/common/types/ScreenSize.tsx","../src/common/stores/ConnectStore.ts","../src/common/stores/GlobalUiStore.ts","../src/common/stores/UserStore.ts","../src/common/stores/GlobalStore.ts"],"sourcesContent":["export const LOADING_STATUS = {\n ERROR: 'ERROR',\n LOADING: 'LOADING',\n SUCCESS: 'SUCCESS',\n}\n\nexport enum PlanTypes {\n SpendingPlan = 0,\n Budgets = 1,\n}\n\nexport enum IterationItemTypes {\n RecurringExpense = 0,\n PlannedExpense = 1,\n Other = 2,\n Income = 3,\n}\n","import Fetch from '../utils/Fetch'\n\nimport { ApiEndpoints } from '../constants/ApiEndpoints'\n\nexport class LocalizedCopyApi {\n fetchInstance: Fetch\n\n constructor(endpoint: string, token: string) {\n this.fetchInstance = new Fetch(endpoint, token)\n }\n\n getLocalizedCopy = async (req: any) => {\n return this.fetchInstance.post(ApiEndpoints.LOCALIZED_COPY, req).then((data) => data)\n }\n\n getLocalizedContent = async (namespace: string) => {\n return this.fetchInstance\n .post(`${ApiEndpoints.LOCALIZED_CONTENT}/${namespace}`)\n .then((data) => data)\n }\n}\n","import Fetch from '../utils/Fetch'\n\nimport { ApiEndpoints } from '../constants'\n\nimport type { UserProfile } from '../types'\n\nexport class UserApi {\n fetchInstance: Fetch\n\n constructor(endpoint: string, token: string) {\n this.fetchInstance = new Fetch(endpoint, token)\n }\n\n getUserProfile = async () => {\n return this.fetchInstance.get(ApiEndpoints.APP_DATA).then((data) => data.user_profile)\n }\n\n updateUserProfile = async (userProfile: UserProfile) => {\n return this.fetchInstance\n .put(`${ApiEndpoints.USER_PROFILES}/${userProfile.guid}`, userProfile)\n .then((data) => data.user_profile)\n }\n}\n","import Fetch from '../utils/Fetch'\n\nimport { ApiEndpoints } from '../constants'\n\nexport class WidgetApi {\n fetchInstance: Fetch\n\n constructor(endpoint: string, token: string) {\n this.fetchInstance = new Fetch(endpoint, token)\n }\n\n requestWidgetUrl = async (req: any) => {\n return this.fetchInstance.post(ApiEndpoints.WIDGET_URLS, req).then((data) => data.widget_url)\n }\n}\n","import React from 'react'\nimport { css } from '@mxenabled/cssinjs'\n\nimport { Text, useTokens } from '@kyper/mui'\n\ninterface BarChartLegendProps {\n color: string\n labelAverage: string\n labelMain: string\n}\n\nconst Legend: React.FC<BarChartLegendProps> = ({ color, labelAverage, labelMain }) => {\n const tokens = useTokens()\n const styles = getStyles(tokens, color)\n\n return (\n <div className={`mx-cmn-bar-chart-legend ${styles}`}>\n <div aria-label={labelMain} className=\"mx-cmn-color-square\" role=\"img\" />\n <Text variant=\"XSmall\">{labelMain}</Text>\n\n <div aria-label={labelAverage} className=\"mx-cmn-triple-dot\" role=\"img\">\n <div className=\"mx-cmn-dot\" />\n <div className=\"mx-cmn-dot\" />\n <div className=\"mx-cmn-dot\" />\n </div>\n <Text variant=\"XSmall\">{labelAverage}</Text>\n </div>\n )\n}\n\nconst getStyles = (tokens: any, color: string) =>\n css({\n alignItems: 'center',\n display: 'flex',\n gap: tokens.Spacing.XSmall,\n justifyContent: 'flex-end',\n marginRight: tokens.Spacing.XLarge,\n paddingBottom: tokens.Spacing.XSmall,\n width: '100%',\n '& .mx-cmn-color-square': {\n backgroundColor: color,\n height: 6,\n width: 6,\n },\n '& .mx-cmn-triple-dot': {\n display: 'flex',\n gap: 1,\n },\n '& .mx-cmn-dot': {\n backgroundColor: tokens.Color.Neutral500,\n height: 3,\n width: 3,\n borderRadius: 1.5,\n },\n '& > .kyper-text': {\n marginRight: tokens.Spacing.XSmall,\n },\n })\n\nexport default Legend\n","import React from 'react'\nimport { css, keyframes } from '@mxenabled/cssinjs'\n\nimport { Text, useTokens } from '@kyper/mui'\n\ninterface BarProps {\n ariaLabel?: string\n color: string\n height: number\n index: number\n label: string\n onClick?: (index: number) => void\n selectedIndex?: number\n value: number\n}\n\n/**\n * The Bar component is what displays the colored (optionally clickable) bar\n *\n * @param ariaLabel OPTIONAL aria label used on the bar\n * @param color The color of the bar\n * @param height The pixel height of the bar\n * @param index The index of the bar\n * @param label The label to use above (on positive bars) or below (on negative bars)\n * @param onClick OPTIONAL function to call if the bar is clicked\n * @param selectedIndex OPTIONAL indicates the selected bar\n * @param value Value representing the bar\n */\nconst Bar: React.FC<BarProps> = ({\n ariaLabel,\n color,\n height,\n index,\n label,\n onClick,\n selectedIndex,\n value,\n}) => {\n const tokens = useTokens()\n const styles = getStyles(tokens, color, height)\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (onClick && (event.key === ' ' || event.key === 'Enter')) {\n onClick(index)\n }\n }\n\n const labelColor =\n selectedIndex === undefined || selectedIndex === index ? 'primary' : 'secondary'\n\n const BarLabel = () => (\n <Text\n aria-hidden={true}\n bold={selectedIndex === index}\n className=\"mx-cmn-bar-text\"\n color={labelColor}\n component=\"div\"\n variant=\"Small\"\n >\n {label}\n </Text>\n )\n\n return (\n <div className={`mx-cmn-bar-container ${styles} ${value < 0 ? 'mx-cmn-negative' : ''}`}>\n {/* Display the value on top for positive values */}\n {value >= 0 && <BarLabel />}\n\n <div\n aria-label={ariaLabel}\n className={`mx-cmn-bar ${onClick ? 'mx-cmn-clickable' : ''} ${\n value < 0 ? 'mx-cmn-bar-negative' : ''\n }`}\n onClick={onClick ? () => onClick?.(index) : undefined}\n onKeyDown={handleKeyDown}\n role={ariaLabel ? 'button' : undefined}\n tabIndex={ariaLabel ? 0 : undefined}\n />\n\n {/* Display the value on bottom for negative values */}\n {value < 0 && <BarLabel />}\n </div>\n )\n}\n\nconst getStyles = (tokens: any, color: string, height: number) => {\n const frameName = `expandBar-${Math.round(height)}`\n const expandAnimation = keyframes(frameName, { from: { height: 0 }, to: { height } })\n\n return css({\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'flex-end',\n height: '100%',\n '&.mx-cmn-negative': {\n justifyContent: 'flex-start',\n },\n '& .mx-cmn-bar': {\n animationDelay: '.5s',\n animationDuration: '1s',\n animationFillMode: 'forwards',\n animationName: expandAnimation,\n animationTimingFunction: tokens.Easing.Default,\n backgroundColor: color,\n borderRadius: `${tokens.BorderRadius.Medium}px ${tokens.BorderRadius.Medium}px 0 0`,\n maxHeight: height,\n },\n '& .mx-cmn-bar-negative': {\n borderRadius: `0 0 ${tokens.BorderRadius.Medium}px ${tokens.BorderRadius.Medium}px`,\n marginTop: -tokens.Spacing.XTiny,\n },\n '& .mx-cmn-bar-text': {\n display: 'flex',\n justifyContent: 'center',\n marginBottom: tokens.Spacing.Tiny,\n marginTop: tokens.Spacing.Tiny,\n whiteSpace: 'nowrap',\n width: '100%',\n },\n })\n}\n\nexport default Bar\n","import React from 'react'\nimport { css } from '@mxenabled/cssinjs'\n\nimport { Text, useTokens } from '@kyper/mui'\n\nimport Bar from './Bar'\n\ninterface BarColumnProps {\n ariaLabel?: string\n averageLineHeight: number\n bottomHeight: number\n color: string\n index?: number\n onClick?: (index: number) => void\n range: number\n selectedIndex?: number\n topHeight: number\n value: number\n valueLabel?: string\n width?: number | string\n xAxisLabel?: string\n}\n\n/**\n * The BarColumn component represents a single vertical slice of the bar chart. It contains from top to bottom\n * the positive section, which will only display a bar if value > 0, the zero line, the average line, negative\n * section, which will only display a bar if value < 0 and the X-Axis label.\n *\n * @param ariaLabel OPTIONAL aria label used to label the bar\n * @param averageLineHeight the pixel height above/below the zero line for the dashed average line\n * @param bottomHeight the height of the bottom (negative) section\n * @param color the color of the bar\n * @param index OPTIONAL index of the bar (Only used when bar is clickable)\n * @param onClick OPTIONAL function to call if the bar is clicked\n * @param range\n * @param selectedIndex OPTIONAL indicates the selected bar\n * @param topHeight the pixel height of the top (positvie section)\n * @param value the value for the bar\n * @param valueLabel OPTIONAL string value to use for the bar\n * @param width OPTIONAL pixel or percentage width of the bar\n * @param xAxisLabel label for the X-Axis\n */\nconst BarColumn: React.FC<BarColumnProps> = ({\n ariaLabel,\n averageLineHeight,\n bottomHeight,\n color,\n index = -1,\n onClick,\n range,\n selectedIndex,\n topHeight,\n value,\n valueLabel = '',\n width,\n xAxisLabel = '',\n}) => {\n const tokens = useTokens()\n const styles = getStyles(tokens, width)\n\n const topBarHeight = (value / range) * topHeight\n const bottomBarHeight = (Math.abs(value) / range) * bottomHeight\n const xAxisColor =\n selectedIndex === undefined || selectedIndex === index ? 'primary' : 'secondary'\n\n return (\n <div className={`mx-cmn-barchart-bar-column ${styles}`}>\n {/* Top (Positive) Chart Area */}\n <div style={{ height: topHeight }}>\n {/* Only display the bar here if it has a positive value */}\n {value >= 0 && (\n <Bar\n ariaLabel={ariaLabel}\n color={color}\n height={topBarHeight}\n index={index}\n label={valueLabel}\n onClick={onClick}\n selectedIndex={selectedIndex}\n value={value}\n />\n )}\n </div>\n\n {/* Zero Line */}\n <div className=\"mx-cmn-zero-line\" />\n\n {/* Average Line - Only display if average is not 0 */}\n {averageLineHeight !== 0 && (\n <div className=\"mx-cmn-chart-average\" style={{ bottom: averageLineHeight }} />\n )}\n\n {/* Bottom (Negative) Chart Area */}\n <div style={{ height: bottomHeight }}>\n {/* Only display the bar here if it has a negative value */}\n {value < 0 && (\n <Bar\n ariaLabel={ariaLabel}\n color={color}\n height={bottomBarHeight}\n index={index}\n label={valueLabel}\n onClick={onClick}\n value={value}\n />\n )}\n </div>\n\n {/* X-Axis label */}\n <div\n className={`mx-cmn-bar-label ${onClick ? 'mx-cmn-clickable' : ''}`}\n onClick={onClick ? () => onClick(index) : undefined}\n >\n <Text bold={selectedIndex === index} color={xAxisColor} variant=\"Small\">\n {xAxisLabel}\n </Text>\n </div>\n </div>\n )\n}\n\nconst getStyles = (tokens: any, width: number | string | undefined) =>\n css({\n display: 'flex',\n flexDirection: 'column',\n flexGrow: width === undefined ? 1 : 0,\n width,\n '& .mx-cmn-chart-average': {\n borderTop: `${tokens.Spacing.XTiny}px dotted ${tokens.Color.Neutral500}`,\n position: 'relative',\n marginRight: tokens.Spacing.XTiny,\n },\n '& .mx-cmn-zero-line': {\n borderBottom: '1px solid text.primary',\n width: '100%',\n },\n '& .mx-cmn-bar-label': {\n minHeight: tokens.Spacing.Medium,\n maxHeight: tokens.Spacing.Medium,\n marginBottom: tokens.Spacing.XSmall,\n marginTop: tokens.Spacing.XSmall,\n textAlign: 'center',\n width: '100%',\n },\n '& .mx-cmn-clickable': {\n cursor: 'pointer',\n },\n })\n\nexport default BarColumn\n","/**\n * Returns a sum\n *\n * @param acc accumulator\n * @param value current value\n */\nexport const sumReducer = (acc: number, value: number) => acc + value\n\n/**\n * Returns the max range\n *\n * @param acc accumulator\n * @param value current value\n */\nexport const rangeReducer = (acc: number, value: number) =>\n Math.abs(value) > acc ? Math.abs(value) : acc\n\n/**\n * Returns an array with the value of an object added\n *\n * @param acc accumulator\n * @param value current value\n */\nexport const valueReducer = (acc: number[], value: { value: number }) => [...acc, value.value]\n\n/**\n * Returns full height if only the first section is visible, half height if both sections\n * are visible and 0 if the first section is not visible\n *\n * @param hasSection1 If the first section is visible\n * @param hasSection2 If the second section is visible\n * @param fullHeight The full height\n */\nexport const getSectionHeight = (\n hasSection1: boolean,\n hasSection2: boolean,\n fullHeight: number,\n) => {\n const height = hasSection1 && hasSection2 ? fullHeight / 2 : fullHeight\n return !hasSection1 ? 0 : height\n}\n\n/**\n * Returns the +/- pixel height of the average line. This is calcluated using the percentange of average\n * to max value multiplied by the height. If the max value is less than 0, then we use negative min value.\n *\n * @param average The average value\n * @param max The maximum value\n * @param min The minimum value\n * @param height The height of the container the average line displays in.\n */\nexport const getAverageLineHeight = (average: number, max: number, min: number, height: number) => {\n return (average / (max < 0 ? -min : max)) * height || 0\n}\n","import React from 'react'\nimport { css } from '@mxenabled/cssinjs'\n\nimport { useTokens } from '@kyper/mui'\n\nimport Legend from './Legend'\nimport BarColumn from './BarColumn'\nimport {\n getAverageLineHeight,\n getSectionHeight,\n rangeReducer,\n sumReducer,\n valueReducer,\n} from './Util'\n\nexport type BarChartData = {\n ariaLabel: string\n label: string\n value: number\n}\n\nexport interface BarChartProps {\n average?: number\n barWidth?: number | string\n color: string\n data: BarChartData[]\n height: number\n legendLabelAverage: string\n legendLabelMain: string\n onBarClick?: (index: number) => void\n selectedIndex?: number\n valueFormatter?: (value: number) => string\n}\n\n/**\n * BarChart component to display a vertical bar chart given an array of data\n *\n * @param average OPTIONAL custom average not based on average or all value\n * @param barWidth OPTIONAL pixel or percentage width of bars\n * @param color Color of the bars\n * @param data An array of chart data. Chart data must contain and aria label, label and value.\n * @param height Height in pixels of the chart\n * @param legendLabelAverage Label to use on legend for the average value\n * @param legendLabelMain Label to use on the legend for the data\n * @param onBarClick OPTIONAL function to call if bar is clicked\n * @param selectedIndex OPTIONAL indicates the selected bar\n * @param valueFormatter OPTIONAL function to call to format the value displayed with the bars\n */\nconst BarChart: React.FC<BarChartProps> = ({\n average,\n barWidth = '8%',\n color,\n data,\n height,\n legendLabelAverage,\n legendLabelMain,\n onBarClick,\n selectedIndex,\n valueFormatter = (value: number) => `${value}`,\n}) => {\n const tokens = useTokens()\n const styles = getStyles(tokens)\n\n const values = data.reduce(valueReducer, [])\n const avg = average !== undefined ? average : values.reduce(sumReducer, 0) / values.length\n const max = Math.max(...values)\n const min = Math.min(...values)\n const range = values.reduce(rangeReducer, 0)\n\n const hasTop = max >= 0\n const hasBottom = min < 0\n const topHeight = getSectionHeight(hasTop, hasBottom, height)\n const bottomHeight = getSectionHeight(hasBottom, hasTop, height)\n const averageLineHeight = getAverageLineHeight(avg, max, min, topHeight || bottomHeight)\n\n const getBarColor = (index: number) => {\n if (selectedIndex === undefined || index === selectedIndex) {\n return color\n }\n return `${color}80`\n }\n\n const EmptyColumn = () => (\n <BarColumn\n averageLineHeight={averageLineHeight}\n bottomHeight={bottomHeight}\n color={''}\n range={range}\n topHeight={topHeight}\n value={0}\n width={undefined}\n />\n )\n\n return (\n <div className={`mx-cmn-bar-chart ${styles}`}>\n <div className=\"mx-cmn-chart-container\">\n <EmptyColumn />\n {data.map((d, index) => (\n <React.Fragment key={`column-${index}`}>\n <BarColumn\n ariaLabel={d.ariaLabel}\n averageLineHeight={averageLineHeight}\n bottomHeight={bottomHeight}\n color={getBarColor(index)}\n index={index}\n onClick={onBarClick}\n range={range}\n selectedIndex={selectedIndex}\n topHeight={topHeight}\n value={d.value}\n valueLabel={valueFormatter(d.value)}\n width={barWidth}\n xAxisLabel={d.label}\n />\n <EmptyColumn />\n </React.Fragment>\n ))}\n </div>\n <Legend color={color} labelAverage={legendLabelAverage} labelMain={legendLabelMain} />\n </div>\n )\n}\n\nconst getStyles = (tokens: any) =>\n css({\n '& .mx-cmn-chart-container': {\n alignItems: 'flex-end',\n display: 'flex',\n justifyContent: 'space-evenly',\n marginTop: tokens.Spacing.Large,\n marginBottom: tokens.Spacing.Medium,\n },\n })\n\nexport default BarChart\n","import React from 'react'\nimport { css } from '@mxenabled/cssinjs'\n\nimport { useTokens } from '@kyper/mui'\n\nimport { DEFAULT_DONUT_SIZE, DEFAULT_STROKE_WIDTH } from '../../constants/Donut'\n\nexport interface Segment {\n percent: number\n color: string\n}\n\nexport interface MultiSegmentDonutProps {\n children: React.ReactNode\n hasGap?: boolean\n segments: Segment[]\n size?: number\n strokeWidth?: number\n}\n\nconst MultiSegmentDonut: React.FC<MultiSegmentDonutProps> = ({\n hasGap = false,\n segments,\n size = DEFAULT_DONUT_SIZE,\n strokeWidth = DEFAULT_STROKE_WIDTH,\n children,\n}) => {\n const tokens = useTokens()\n const styles = getStyles(tokens, size)\n\n const radius = (size - strokeWidth) / 2\n const halfSize = size / 2\n\n let offset = -90 - (hasGap ? 1 : 0)\n\n let length = 0\n\n return (\n <div className={`mx-cmn-multi-segment-donut ${styles}`}>\n <svg height={size} width={size}>\n <circle\n cx={halfSize}\n cy={halfSize}\n fill=\"none\"\n r={radius}\n stroke={tokens.Color.Neutral300}\n strokeWidth={strokeWidth}\n />\n {segments.map((segment, index) => {\n offset += 360 * length + (hasGap ? 1 : 0)\n length = (segment.percent - (hasGap ? 0.3 : 0)) / 100\n\n return (\n <circle\n cx={halfSize}\n cy={halfSize}\n fill=\"none\"\n key={index}\n r={radius}\n stroke={segment.color}\n strokeDasharray={2 * Math.PI * radius}\n strokeDashoffset={2 * Math.PI * radius * (1 - length)}\n strokeWidth={strokeWidth}\n transform={`rotate(${offset}, ${halfSize}, ${halfSize})`}\n />\n )\n })}\n </svg>\n <div className=\"mx-cmn-multi-segment-donut-children\">{children}</div>\n </div>\n )\n}\n\nconst getStyles = (tokens: any, size: number) =>\n css({\n height: size,\n marginTop: `-${tokens.Spacing.XSmall}px`,\n position: 'relative',\n width: size,\n '& .mx-cmn-multi-segment-donut-children': {\n left: '50%',\n position: 'absolute',\n textAlign: 'center',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n },\n })\n\nexport default MultiSegmentDonut\n","import React from 'react'\n\nimport Button from '@mui/material/Button'\nimport IconButton from '@mui/material/IconButton'\nimport Tooltip from '@mui/material/Tooltip'\nimport useTheme from '@mui/material/styles/useTheme'\n\ninterface ResponsiveButtonProps {\n icon: React.ReactElement\n label: string\n onClick?: () => void\n placement?:\n | 'bottom-end'\n | 'bottom-start'\n | 'bottom'\n | 'left-end'\n | 'left-start'\n | 'left'\n | 'right-end'\n | 'right-start'\n | 'right'\n | 'top-end'\n | 'top-start'\n | 'top'\n tooltipText: string\n variant?: 'contained' | 'outlined' | 'text'\n}\n\nconst ResponsiveButton: React.FC<ResponsiveButtonProps> = ({\n icon,\n label,\n onClick,\n placement = 'bottom',\n tooltipText,\n variant = 'text',\n}) => {\n const theme = useTheme()\n\n return (\n <React.Fragment>\n <Button\n onClick={onClick}\n startIcon={icon}\n sx={{\n [theme.breakpoints.down('lg')]: { display: 'none' },\n [theme.breakpoints.up('lg')]: { display: 'inline-flex' },\n }}\n title={tooltipText}\n variant={variant}\n >\n {label}\n </Button>\n <Tooltip\n describeChild={true}\n placement={placement}\n sx={{ display: { xs: 'inline-flex', lg: 'none' } }}\n title={tooltipText}\n >\n <IconButton onClick={onClick}>{icon}</IconButton>\n </Tooltip>\n </React.Fragment>\n )\n}\n\nexport default ResponsiveButton\n","import { makeAutoObservable, runInAction } from 'mobx'\nimport { GlobalCopyApi } from '../api/GlobalCopyApi'\nimport { GlobalCopy } from '../types'\n\nexport class GlobalCopyStore {\n copy: GlobalCopy = {} as GlobalCopy\n featureNamespace = 'experiences'\n\n api: GlobalCopyApi = new GlobalCopyApi('/', '')\n isInitialized = false\n\n constructor() {\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n this.api = new GlobalCopyApi(endpoint, token)\n\n await this.getCopy(this.featureNamespace)\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 ${this.featureNamespace} copy: ${error}`)\n }\n }\n}\n","import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { Beat, BeatApi } from '../../common'\n\nexport class BeatStore {\n beats: Beat[] = []\n api: BeatApi = new BeatApi('/', '')\n\n constructor() {\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n this.api = new BeatApi(endpoint, token)\n await this.loadBeats()\n }\n\n loadBeats = async () => {\n const beats = await this.api.getBeats()\n\n runInAction(() => {\n this.beats = beats\n })\n }\n}\n","import { ApiEndpoints, type Budget, Category, Fetch } from '../../common'\n\nexport class BudgetsApi {\n fetchInstance: Fetch\n\n constructor(endpoint: string, token: string) {\n this.fetchInstance = new Fetch(endpoint, token)\n }\n\n addBudget = async (category: Category, amount: number, parentGuid: string | null = null) => {\n return this.fetchInstance\n .post(ApiEndpoints.BUDGETS, {\n amount,\n category_guid: category.guid,\n category_name: category.name,\n parent_guid: parentGuid,\n })\n .then((data) => data.budget)\n .catch((error) => error)\n }\n\n deleteBudget = async (guid: string) => {\n return this.fetchInstance.delete(`${ApiEndpoints.BUDGETS}/${guid}`).then((data) => data)\n }\n\n generateBudgets = async () => {\n return this.fetchInstance.post(`${ApiEndpoints.BUDGETS}/generate`).then((data) => data)\n }\n\n getBudgets = async () => {\n return this.fetchInstance\n .get(ApiEndpoints.BUDGETS)\n .then((data) => data.budgets)\n .catch((error) => error)\n }\n\n updateBudget = async (budget: Budget) => {\n return this.fetchInstance\n .put(`${ApiEndpoints.BUDGETS}/${budget.guid}`, budget)\n .then((data) => data.budget)\n .catch((error) => error)\n }\n}\n","import { makeAutoObservable, reaction, runInAction } from 'mobx'\n\nimport { endOfMonth } from 'date-fns/endOfMonth'\nimport { startOfMonth } from 'date-fns/startOfMonth'\nimport { startOfToday } from 'date-fns/startOfToday'\n\nimport { Theme } from '@mui/system'\n\nimport {\n type Budget,\n type Category,\n type DateRange,\n type DetailedBudget,\n type DetailedCategory,\n CategoryApi,\n CategoryGuids,\n GlobalStore,\n} from '../../common'\n\nimport { BudgetsApi } from '../api/BudgetsApi'\nimport { augmentBudgets, findBudget, findSubBudget } from '../utils/BudgetUtil'\n\nexport class BudgetsStore {\n api: BudgetsApi = new BudgetsApi('/', '')\n categoryApi: CategoryApi = new CategoryApi('/', '')\n\n globalStore: GlobalStore\n\n alert: string = ''\n dateRange: DateRange = { start: startOfMonth(startOfToday()), end: endOfMonth(startOfToday()) }\n budgets: Budget[] = []\n selectedBudget: DetailedBudget | undefined\n selectedSubBudget: DetailedBudget | undefined\n\n theme = {} as Theme\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n this.api = new BudgetsApi(endpoint, token)\n this.categoryApi = new CategoryApi(endpoint, token)\n\n /** Reaction to update the selected budget/sub-budget if detailedBudgets is updated **/\n reaction(\n () => this.detailedBudgets,\n (detailedBudgets) => {\n if (detailedBudgets) {\n const budget = this.selectedBudget\n if (budget) {\n this.selectedBudget = findBudget(detailedBudgets, budget.guid)\n }\n\n const subBudget = this.selectedSubBudget\n if (subBudget && subBudget.parent_guid) {\n this.selectedSubBudget = findSubBudget(\n detailedBudgets,\n subBudget.guid,\n subBudget.parent_guid,\n )\n }\n }\n },\n )\n }\n\n get detailedBudgets(): DetailedBudget[] {\n return augmentBudgets(\n this.budgets.filter(\n (budget: Budget) =>\n budget.category_guid !== CategoryGuids.INCOME &&\n budget.category_guid !== CategoryGuids.TRANSFER &&\n budget.category_guid !== CategoryGuids.INVESTMENTS,\n ),\n this.globalStore.categoryStore.detailedCategories,\n this.globalStore.copyStore.copy.budgets,\n this.theme,\n ).sort((a, b) => {\n if (a.percentage > b.percentage) return -1\n if (a.percentage < b.percentage) return 1\n return 0\n })\n }\n\n get unbudgetedCategories(): DetailedCategory[] {\n return this.globalStore.categoryStore.spendCategories.filter(\n (category) => !this.detailedBudgets.find((budget) => budget.category_guid === category.guid),\n )\n }\n\n get totalBudgeted(): number {\n return this.detailedBudgets.reduce((total, budget) => total + budget.amount, 0)\n }\n\n addBudget = async (category: Category, amount: number, parentGuid: string | null = null) => {\n try {\n const budget = await this.api.addBudget(category, amount, parentGuid)\n runInAction(() => {\n this.budgets.push(budget)\n })\n } catch (error) {\n console.error(`Error adding budget: ${error}`)\n }\n }\n\n deleteBudget = async (guid: string) => {\n try {\n await this.api.deleteBudget(guid)\n\n runInAction(() => {\n const index = this.budgets.findIndex((budget) => budget.guid === guid)\n if (index >= 0) {\n this.budgets.splice(index, 1)\n }\n })\n } catch (error) {\n console.error(`Error deleting budget: ${error}`)\n }\n }\n\n loadBudgets = async () => {\n try {\n const budgets = (await this.api.getBudgets()) as Budget[]\n\n runInAction(() => {\n this.budgets = budgets\n })\n } catch (error) {\n console.error(`Error occurred while loading budgets: ${error}`)\n }\n }\n\n setAlert = (alert: string) => (this.alert = alert)\n\n setDateRange = (dateRange: DateRange) => (this.dateRange = dateRange)\n\n setSelectedBudget = (budget: DetailedBudget | undefined) => (this.selectedBudget = budget)\n\n setSelectedSubBudget = (budget: DetailedBudget | undefined) => (this.selectedSubBudget = budget)\n\n setTheme = (theme: Theme) => (this.theme = theme)\n\n /**\n * Recalculate budget by using the average amount from top-level categories\n * @param categories Detailed categories\n */\n recalculateBudgets = async (categories: DetailedCategory[]) => {\n for (const category of categories) {\n const budget = this.budgets.find((budget) => budget.category_guid === category.guid)\n if (budget) {\n await this.api.updateBudget({ ...budget, amount: category.totalAverageAmount })\n } else {\n await this.api.addBudget(category, category.totalAverageAmount)\n }\n }\n\n const budgetsToDelete = this.budgets.filter(\n (budget) => !categories.find((c) => c.guid === budget.category_guid),\n )\n\n for (const budgetToDelete of budgetsToDelete) {\n await this.api.deleteBudget(budgetToDelete.guid)\n }\n await this.loadBudgets()\n }\n\n updateBudget = async (budget: Budget) => {\n try {\n const updatedBudget = await this.api.updateBudget(budget)\n\n runInAction(() => {\n const index = this.budgets.findIndex((b) => b.guid === budget.guid)\n if (index >= 0) {\n this.budgets[index] = updatedBudget\n }\n })\n } catch (error) {\n console.error(`Error updating budget: ${error}`)\n }\n }\n}\n","import { Account } from './Account'\nimport { Transaction } from './Transaction'\n\nexport interface Beat {\n account_guids: string[] | []\n active_at?: string | number\n associated_transaction_guid?: string | null\n call_to_action?: string | null\n category_guids?: string[] | []\n created_at?: string | number\n cta_clicked_at?: number | null\n data_series: DataSeries\n description?: string\n digest?: string\n dismissed_at?: number | null\n displayed_at?: string | null\n errors?: any\n guid: string\n has_been_displayed: boolean\n html_description?: string\n html_in_description_cta?: string\n html_micro_call_to_action?: string\n html_micro_description?: string\n html_micro_title?: string\n html_short_title?: string\n html_title: string\n icon_color?: string | null\n icon_type?: number | null\n in_description_cta?: string | null\n is_dismissed: boolean\n is_obsolete: boolean\n is_refreshable: boolean\n is_sampled: boolean\n merchant_guids: string[] | []\n metadata?: string | null\n micro_call_to_action?: string | null\n micro_description?: string | null\n micro_title?: string | null\n payload: any\n primary_account?: Account\n primary_account_guid?: string | null\n primary_category_guid?: string | null\n primary_goal_guid?: string | null\n primary_merchant_guid?: string | null\n primary_scheduled_payment_guid?: string | null\n primary_transaction?: Transaction\n primary_transaction_guid?: string | null\n power_action_completed_at?: string | null\n power_action_has_been_completed?: boolean\n scheduled_payment_guids: string[] | []\n short_title?: string | null\n supporting_action?: string | null\n template: string\n title: string\n transaction_guids: string[] | []\n transactions?: Transaction[]\n user_guid: string\n user_verification: UserVerification\n}\n\nexport interface DataSeries {\n names?: string[]\n types?: string[]\n data?: any[]\n}\n\nexport enum UserVerification {\n UNKNOWN = 0,\n CORRECT = 1,\n INCORRECT = 2,\n}\n","import { ScheduledPayment, Transaction } from '../index'\n\nexport enum ExpenseStatus {\n Missed = 'Missed',\n Paid = 'Paid',\n Upcoming = 'Upcoming expense',\n Income = 'Income',\n}\n\nexport interface Expense extends ScheduledPayment {\n status: ExpenseStatus\n payments: Transaction[]\n transactions: Transaction[]\n}\n\nexport enum ScheduledPaymentTypes {\n Unknown = 0,\n Subscription = 1,\n Bill = 2,\n}\n","export enum ScreenSize {\n Desktop = 'Desktop',\n Mobile = 'Mobile',\n}\n","import { makeAutoObservable } from 'mobx'\n\nimport { WidgetApi } from '../../common'\n\nimport type { GlobalStore } from '../../common'\n\nexport class ConnectStore {\n widgetApi: WidgetApi = new WidgetApi('/', '')\n\n globalStore: GlobalStore\n\n constructor(globalStore: GlobalStore) {\n this.globalStore = globalStore\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n this.widgetApi = new WidgetApi(endpoint, token)\n }\n\n loadWidget = async ({ widget = 'connect_widget', mode = 'light', ...rest }) => {\n return await this.widgetApi.requestWidgetUrl({\n widget_url: { widget_type: widget, color_scheme: mode, ...rest },\n })\n }\n}\n","import { makeAutoObservable } from 'mobx'\n\nimport { addMonths } from 'date-fns/addMonths'\nimport { endOfMonth } from 'date-fns/endOfMonth'\nimport { getMonth } from 'date-fns/getMonth'\nimport { startOfMonth } from 'date-fns/startOfMonth'\n\nimport { Account } from '../types'\nimport type { GlobalStore } from './GlobalStore'\n\nexport class GlobalUiStore {\n globalStore: GlobalStore\n isInitialized = false\n\n selectedAccounts: Account[] = []\n selectedAccountGuids: string[] = this.selectedAccounts.map((account) => account.guid)\n\n displayedDate = new Date()\n displayedDateRange = {\n start: startOfMonth(this.displayedDate),\n end: endOfMonth(this.displayedDate),\n }\n\n constructor(globalStore: GlobalStore) {\n makeAutoObservable(this)\n this.globalStore = globalStore\n }\n\n setInitialized = (isInitialized: boolean) => {\n this.isInitialized = isInitialized\n }\n\n setSelectedAccounts = (accounts: Account[]) => {\n this.selectedAccounts = accounts\n this.selectedAccountGuids = this.selectedAccounts.map((account) => account.guid)\n }\n // Sets an array of selected account guids for the AccountFilter component\n setSelectedAccountGuids = (guids: string[]) => {\n this.selectedAccounts = this.globalStore.accountStore.accounts.filter((account) =>\n guids.includes(account.guid),\n )\n this.selectedAccountGuids = guids\n }\n\n setDisplayedDate = (startDate: Date, endDate: Date) => {\n this.displayedDate = endDate\n this.displayedDateRange = {\n start: startDate,\n end: endDate,\n }\n }\n\n get shouldDisableNextDate() {\n const selectedMonth = getMonth(this.displayedDate)\n const nextMonth = getMonth(addMonths(new Date(), 1))\n\n return selectedMonth === nextMonth\n }\n\n get shouldDisablePrevDate() {\n const selectedMonth = getMonth(this.displayedDate)\n const currentMonth = getMonth(new Date())\n\n return selectedMonth === currentMonth\n }\n}\n","import { makeAutoObservable, runInAction } from 'mobx'\n\nimport { UserApi } from '../api'\n\nimport type { UserProfile } from '../types'\n\nexport class UserStore {\n api: UserApi = new UserApi('/', '')\n\n userProfile: UserProfile | null = null\n\n constructor() {\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n this.api = new UserApi(endpoint, token)\n\n await this.loadUserProfile()\n }\n\n loadUserProfile = async () => {\n try {\n const userProfile = await this.api.getUserProfile()\n\n runInAction(() => {\n this.userProfile = userProfile\n })\n } catch (error) {\n console.error(`Error occurred while loading user profile: ${error}`)\n }\n }\n\n updateUserProfile = async (userProfile: UserProfile) => {\n try {\n const updatedProfile = await this.api.updateUserProfile(userProfile)\n\n runInAction(() => {\n this.userProfile = updatedProfile\n })\n } catch (error) {\n console.error(`Error occurred while updating user profile: ${error}`)\n }\n }\n}\n","import { makeAutoObservable } from 'mobx'\n\nimport { AccountStore } from '../../accounts'\nimport { BeatStore } from '../../insights/store/BeatStore'\nimport { BudgetsStore } from '../../budgets/store/BudgetsStore'\nimport { CashflowStore } from '../../cashflow'\nimport { CategoryStore } from '../../categories'\nimport { ConnectStore } from './ConnectStore'\nimport { DebtsStore } from '../../debts/index'\nimport { GlobalUiStore } from './GlobalUiStore'\nimport { GoalStore } from '../../goals'\nimport { MerchantStore } from '../../merchants'\nimport { NetWorthStore } from '../../networth'\nimport { NotificationStore } from '../../notifications'\nimport { RecurringActivityStore } from '../../recurringactivity'\nimport { TransactionStore } from '../../transactions'\nimport { UserStore } from './UserStore'\nimport { GlobalCopyStore } from './GlobalCopyStore'\n\nexport class GlobalStore {\n accountStore: AccountStore\n beatStore: BeatStore\n budgetsStore: BudgetsStore\n cashflowStore: CashflowStore\n categoryStore: CategoryStore\n connectStore: ConnectStore\n copyStore: GlobalCopyStore\n goalStore: GoalStore\n debtsStore: DebtsStore\n merchantStore: MerchantStore\n netWorthStore: NetWorthStore\n notificationStore: NotificationStore\n recurringActivityStore: RecurringActivityStore\n transactionStore: TransactionStore\n userStore: UserStore\n\n globalUiStore: GlobalUiStore\n\n isInitialized = false\n\n constructor() {\n this.accountStore = new AccountStore(this)\n this.beatStore = new BeatStore()\n this.budgetsStore = new BudgetsStore(this)\n this.cashflowStore = new CashflowStore(this)\n this.categoryStore = new CategoryStore(this)\n this.connectStore = new ConnectStore(this)\n this.goalStore = new GoalStore(this)\n this.debtsStore = new DebtsStore(this)\n this.copyStore = new GlobalCopyStore()\n this.merchantStore = new MerchantStore()\n this.netWorthStore = new NetWorthStore(this)\n this.notificationStore = new NotificationStore()\n this.recurringActivityStore = new RecurringActivityStore(this)\n this.transactionStore = new TransactionStore(this)\n this.userStore = new UserStore()\n\n this.globalUiStore = new GlobalUiStore(this)\n\n makeAutoObservable(this)\n }\n\n initialize = async (endpoint: string, token: string) => {\n await this.copyStore.initialize(endpoint, token)\n\n Promise.all([\n this.accountStore.initialize(endpoint, token),\n this.beatStore.initialize(endpoint, token),\n this.goalStore.initialize(endpoint, token),\n this.merchantStore.initialize(endpoint, token),\n this.userStore.initialize(endpoint, token),\n this.categoryStore.initialize(endpoint, token),\n this.transactionStore.initialize(endpoint, token),\n this.recurringActivityStore.initialize(endpoint, token),\n this.budgetsStore.initialize(endpoint, token),\n this.notificationStore.initialize(endpoint, token),\n this.connectStore.initialize(endpoint, token),\n ]).then(() => {\n this.isInitialized = true\n this.globalUiStore.setInitialized(true)\n })\n }\n}\n"],"names":["LOADING_STATUS","PlanTypes","IterationItemTypes","LocalizedCopyApi","endpoint","token","Fetch","req","ApiEndpoints","data","namespace","UserApi","userProfile","WidgetApi","Legend","color","labelAverage","labelMain","tokens","useTokens","styles","getStyles","jsxs","jsx","Text","css","Bar","ariaLabel","height","index","label","onClick","selectedIndex","value","handleKeyDown","event","labelColor","BarLabel","frameName","expandAnimation","keyframes","BarColumn","averageLineHeight","bottomHeight","range","topHeight","valueLabel","width","xAxisLabel","topBarHeight","bottomBarHeight","xAxisColor","sumReducer","acc","rangeReducer","valueReducer","getSectionHeight","hasSection1","hasSection2","fullHeight","getAverageLineHeight","average","max","min","BarChart","barWidth","legendLabelAverage","legendLabelMain","onBarClick","valueFormatter","values","avg","hasTop","hasBottom","getBarColor","EmptyColumn","d","React","MultiSegmentDonut","hasGap","segments","size","DEFAULT_DONUT_SIZE","strokeWidth","DEFAULT_STROKE_WIDTH","children","radius","halfSize","offset","length","segment","ResponsiveButton","icon","placement","tooltipText","variant","theme","useTheme","Button","Tooltip","IconButton","GlobalCopyStore","GlobalCopyApi","makeAutoObservable","runInAction","translationKey","newCopy","error","BeatStore","BeatApi","beats","BudgetsApi","category","amount","parentGuid","guid","budget","BudgetsStore","CategoryApi","startOfMonth","startOfToday","endOfMonth","globalStore","reaction","detailedBudgets","findBudget","subBudget","findSubBudget","augmentBudgets","CategoryGuids","a","b","total","budgets","alert","dateRange","categories","budgetsToDelete","c","budgetToDelete","updatedBudget","UserVerification","ExpenseStatus","ScheduledPaymentTypes","ScreenSize","ConnectStore","widget","mode","rest","GlobalUiStore","account","isInitialized","accounts","guids","startDate","endDate","selectedMonth","getMonth","nextMonth","addMonths","currentMonth","UserStore","updatedProfile","GlobalStore","AccountStore","CashflowStore","CategoryStore","GoalStore","DebtsStore","MerchantStore","NetWorthStore","NotificationStore","RecurringActivityStore","TransactionStore"],"mappings":"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"}
|