@layerfi/components 0.1.82 → 0.1.84-alpha

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.
@@ -57,7 +57,7 @@ import React9, { useState as useState7 } from "react";
57
57
  import React8, { useReducer, useEffect as useEffect4 } from "react";
58
58
 
59
59
  // package.json
60
- var version = "0.1.82";
60
+ var version = "0.1.84-alpha";
61
61
 
62
62
  // src/models/APIError.ts
63
63
  var APIError = class _APIError extends Error {
@@ -296,6 +296,9 @@ var getLedgerAccountsLines = get(
296
296
  var getLedgerAccountsEntry = get(
297
297
  ({ businessId, entryId }) => `/v1/businesses/${businessId}/ledger/entries/${entryId}`
298
298
  );
299
+ var getLedgerAccountBalancesCSV = get(
300
+ ({ businessId }) => `/v1/businesses/${businessId}/ledger/balances/exports/csv`
301
+ );
299
302
 
300
303
  // src/api/layer/journal.ts
301
304
  var getJournal = get(
@@ -307,6 +310,9 @@ var createJournalEntries = post(
307
310
  var reverseJournalEntry = post(
308
311
  ({ businessId, entryId }) => `/v1/businesses/${businessId}/ledger/entries/${entryId}/reverse`
309
312
  );
313
+ var getJournalEntriesCSV = get(
314
+ ({ businessId }) => `/v1/businesses/${businessId}/ledger/entries/exports/csv`
315
+ );
310
316
 
311
317
  // src/api/layer/linked_accounts.ts
312
318
  var syncConnection = post(({ businessId }) => `/v1/businesses/${businessId}/sync`);
@@ -449,6 +455,7 @@ var Layer = {
449
455
  getCategories,
450
456
  getChartOfAccounts,
451
457
  getLedgerAccountBalances,
458
+ getLedgerAccountBalancesCSV,
452
459
  getLedgerAccountsLines,
453
460
  getLedgerAccountsEntry,
454
461
  getProfitAndLoss,
@@ -456,6 +463,7 @@ var Layer = {
456
463
  getProfitAndLossCsv,
457
464
  getLinkedAccounts,
458
465
  getJournal,
466
+ getJournalEntriesCSV,
459
467
  reverseJournalEntry,
460
468
  compareProfitAndLoss,
461
469
  profitAndLossComparisonCsv,
@@ -11811,6 +11819,9 @@ var Indicator = ({
11811
11819
  setCustomCursorSize,
11812
11820
  viewBox = {}
11813
11821
  }) => {
11822
+ if (!(className == null ? void 0 : className.match(/selected/))) {
11823
+ return null;
11824
+ }
11814
11825
  const [opacityIndicator, setOpacityIndicator] = useState37(0);
11815
11826
  const { x: animateTo = 0, width = 0 } = "x" in viewBox ? viewBox : emptyViewBox;
11816
11827
  const margin = width > 12 ? 12 : 6;
@@ -11828,9 +11839,6 @@ var Indicator = ({
11828
11839
  setOpacityIndicator(1);
11829
11840
  }, 200);
11830
11841
  }, [animateTo]);
11831
- if (!(className == null ? void 0 : className.match(/selected/))) {
11832
- return null;
11833
- }
11834
11842
  const rectRef = (ref) => {
11835
11843
  if (ref) {
11836
11844
  const refRectWidth = ref.getBoundingClientRect().width;
@@ -15511,7 +15519,7 @@ var StatementOfCashFlowView = ({
15511
15519
  };
15512
15520
 
15513
15521
  // src/components/ChartOfAccounts/ChartOfAccounts.tsx
15514
- import React202, { useContext as useContext36 } from "react";
15522
+ import React203, { useContext as useContext36 } from "react";
15515
15523
 
15516
15524
  // src/contexts/ChartOfAccountsContext/ChartOfAccountsContext.tsx
15517
15525
  import { createContext as createContext16 } from "react";
@@ -16154,7 +16162,7 @@ var useLedgerAccounts = (showReversalEntries = false) => {
16154
16162
  };
16155
16163
 
16156
16164
  // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
16157
- import React194, { useContext as useContext32, useState as useState51 } from "react";
16165
+ import React195, { useContext as useContext32, useState as useState51 } from "react";
16158
16166
 
16159
16167
  // src/icons/Plus.tsx
16160
16168
  import * as React188 from "react";
@@ -16587,6 +16595,91 @@ var ChartOfAccountsTableContent = ({
16587
16595
  )));
16588
16596
  };
16589
16597
 
16598
+ // src/components/ChartOfAccounts/download/AccountBalancesDownloadButton.tsx
16599
+ import React194 from "react";
16600
+
16601
+ // src/components/ChartOfAccounts/download/useAccountBalancesDownload.ts
16602
+ import useSWRMutation4 from "swr/mutation";
16603
+ function buildKey4({
16604
+ access_token: accessToken,
16605
+ apiUrl,
16606
+ businessId,
16607
+ startCutoff,
16608
+ endCutoff
16609
+ }) {
16610
+ if (accessToken && apiUrl) {
16611
+ return {
16612
+ accessToken,
16613
+ apiUrl,
16614
+ businessId,
16615
+ startCutoff,
16616
+ endCutoff,
16617
+ tags: ["#account-balances", "#exports", "#csv"]
16618
+ };
16619
+ }
16620
+ }
16621
+ function useAccountBalancesDownload({
16622
+ startCutoff,
16623
+ endCutoff,
16624
+ onSuccess
16625
+ }) {
16626
+ const { data: auth } = useAuth();
16627
+ const { businessId } = useLayerContext();
16628
+ return useSWRMutation4(
16629
+ () => buildKey4(__spreadProps(__spreadValues({}, auth), {
16630
+ businessId,
16631
+ startCutoff,
16632
+ endCutoff
16633
+ })),
16634
+ ({ accessToken, apiUrl, businessId: businessId2, startCutoff: startCutoff2, endCutoff: endCutoff2 }) => getLedgerAccountBalancesCSV(
16635
+ apiUrl,
16636
+ accessToken,
16637
+ {
16638
+ params: {
16639
+ businessId: businessId2,
16640
+ startCutoff: startCutoff2 == null ? void 0 : startCutoff2.toISOString(),
16641
+ endCutoff: endCutoff2 == null ? void 0 : endCutoff2.toISOString()
16642
+ }
16643
+ }
16644
+ )().then(({ data }) => {
16645
+ if (onSuccess) {
16646
+ return onSuccess(data);
16647
+ }
16648
+ }),
16649
+ {
16650
+ revalidate: false,
16651
+ throwOnError: false
16652
+ }
16653
+ );
16654
+ }
16655
+
16656
+ // src/components/ChartOfAccounts/download/AccountBalancesDownloadButton.tsx
16657
+ function AccountBalancesDownloadButton({
16658
+ startCutoff,
16659
+ endCutoff,
16660
+ iconOnly
16661
+ }) {
16662
+ const { invisibleDownloadRef, triggerInvisibleDownload } = useInvisibleDownload();
16663
+ const { trigger, isMutating, error } = useAccountBalancesDownload({
16664
+ startCutoff,
16665
+ endCutoff,
16666
+ onSuccess: ({ presignedUrl }) => triggerInvisibleDownload({ url: presignedUrl })
16667
+ });
16668
+ return /* @__PURE__ */ React194.createElement(React194.Fragment, null, /* @__PURE__ */ React194.createElement(
16669
+ DownloadButton,
16670
+ {
16671
+ iconOnly,
16672
+ onClick: () => {
16673
+ trigger();
16674
+ },
16675
+ isDownloading: isMutating,
16676
+ requestFailed: Boolean(error),
16677
+ text: "Download CSV",
16678
+ retryText: "Retry"
16679
+ }
16680
+ ), /* @__PURE__ */ React194.createElement(InvisibleDownload_default, { ref: invisibleDownloadRef }));
16681
+ }
16682
+
16590
16683
  // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
16591
16684
  var COMPONENT_NAME5 = "chart-of-accounts";
16592
16685
  var ChartOfAccountsTableWithPanel = ({
@@ -16595,6 +16688,7 @@ var ChartOfAccountsTableWithPanel = ({
16595
16688
  asWidget = false,
16596
16689
  withDateControl = false,
16597
16690
  withExpandAllButton = false,
16691
+ showAddAccountButton = true,
16598
16692
  stringOverrides,
16599
16693
  templateAccountsEditable
16600
16694
  }) => {
@@ -16603,10 +16697,10 @@ var ChartOfAccountsTableWithPanel = ({
16603
16697
  const [expandAll, setExpandAll] = useState51();
16604
16698
  const cumulativeIndex = 0;
16605
16699
  const accountsLength = (_a = data == null ? void 0 : data.accounts.length) != null ? _a : 0;
16606
- return /* @__PURE__ */ React194.createElement(
16700
+ return /* @__PURE__ */ React195.createElement(
16607
16701
  Panel,
16608
16702
  {
16609
- sidebar: /* @__PURE__ */ React194.createElement(
16703
+ sidebar: /* @__PURE__ */ React195.createElement(
16610
16704
  ChartOfAccountsSidebar,
16611
16705
  {
16612
16706
  parentRef: containerRef,
@@ -16616,7 +16710,7 @@ var ChartOfAccountsTableWithPanel = ({
16616
16710
  sidebarIsOpen: Boolean(form),
16617
16711
  parentRef: containerRef
16618
16712
  },
16619
- /* @__PURE__ */ React194.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, asHeader: true, rounded: true }, /* @__PURE__ */ React194.createElement(HeaderRow, null, /* @__PURE__ */ React194.createElement(HeaderCol, null, /* @__PURE__ */ React194.createElement(
16713
+ /* @__PURE__ */ React195.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, asHeader: true, rounded: true }, /* @__PURE__ */ React195.createElement(HeaderRow, null, /* @__PURE__ */ React195.createElement(HeaderCol, null, /* @__PURE__ */ React195.createElement(
16620
16714
  Heading,
16621
16715
  {
16622
16716
  className: `Layer__${COMPONENT_NAME5}__title`,
@@ -16624,13 +16718,13 @@ var ChartOfAccountsTableWithPanel = ({
16624
16718
  },
16625
16719
  (stringOverrides == null ? void 0 : stringOverrides.headerText) || "Chart of Accounts"
16626
16720
  )))),
16627
- /* @__PURE__ */ React194.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, sticky: true }, /* @__PURE__ */ React194.createElement(HeaderRow, null, /* @__PURE__ */ React194.createElement(HeaderCol, null, /* @__PURE__ */ React194.createElement(
16721
+ /* @__PURE__ */ React195.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, sticky: true }, /* @__PURE__ */ React195.createElement(HeaderRow, null, /* @__PURE__ */ React195.createElement(HeaderCol, null, /* @__PURE__ */ React195.createElement(
16628
16722
  Heading,
16629
16723
  {
16630
16724
  size: "secondary" /* secondary */,
16631
16725
  className: `Layer__${COMPONENT_NAME5}__subtitle`
16632
16726
  },
16633
- withDateControl || withExpandAllButton ? /* @__PURE__ */ React194.createElement("div", { className: "Layer__header__actions-col" }, withDateControl && /* @__PURE__ */ React194.createElement(ChartOfAccountsDatePicker, null), withExpandAllButton && /* @__PURE__ */ React194.createElement(
16727
+ withDateControl || withExpandAllButton ? /* @__PURE__ */ React195.createElement("div", { className: "Layer__header__actions-col" }, withDateControl && /* @__PURE__ */ React195.createElement(ChartOfAccountsDatePicker, null), withExpandAllButton && /* @__PURE__ */ React195.createElement(
16634
16728
  ExpandCollapseButton,
16635
16729
  {
16636
16730
  iconOnly: view === "mobile",
@@ -16641,17 +16735,22 @@ var ChartOfAccountsTableWithPanel = ({
16641
16735
  variant: "secondary" /* secondary */
16642
16736
  }
16643
16737
  )) : null
16644
- )), /* @__PURE__ */ React194.createElement(HeaderCol, null, /* @__PURE__ */ React194.createElement(
16738
+ )), /* @__PURE__ */ React195.createElement(HeaderCol, null, /* @__PURE__ */ React195.createElement(
16739
+ AccountBalancesDownloadButton,
16740
+ {
16741
+ iconOnly: ["mobile", "tablet"].includes(view)
16742
+ }
16743
+ ), showAddAccountButton && /* @__PURE__ */ React195.createElement(
16645
16744
  Button,
16646
16745
  {
16647
16746
  onClick: () => addAccount(),
16648
16747
  disabled: isLoading,
16649
16748
  iconOnly: ["mobile", "tablet"].includes(view),
16650
- leftIcon: ["mobile", "tablet"].includes(view) && /* @__PURE__ */ React194.createElement(Plus_default, { size: 14 })
16749
+ leftIcon: ["mobile", "tablet"].includes(view) && /* @__PURE__ */ React195.createElement(Plus_default, { size: 14 })
16651
16750
  },
16652
16751
  (stringOverrides == null ? void 0 : stringOverrides.addAccountButtonText) || "Add Account"
16653
16752
  )))),
16654
- data && /* @__PURE__ */ React194.createElement(
16753
+ data && /* @__PURE__ */ React195.createElement(
16655
16754
  ChartOfAccountsTable,
16656
16755
  {
16657
16756
  view,
@@ -16664,7 +16763,7 @@ var ChartOfAccountsTableWithPanel = ({
16664
16763
  templateAccountsEditable
16665
16764
  }
16666
16765
  ),
16667
- error ? /* @__PURE__ */ React194.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React194.createElement(
16766
+ error ? /* @__PURE__ */ React195.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React195.createElement(
16668
16767
  DataState,
16669
16768
  {
16670
16769
  status: "failed" /* failed */,
@@ -16674,8 +16773,8 @@ var ChartOfAccountsTableWithPanel = ({
16674
16773
  isLoading: isValidating || isLoading
16675
16774
  }
16676
16775
  )) : null,
16677
- (!data || isLoading) && !error ? /* @__PURE__ */ React194.createElement("div", { className: `Layer__${COMPONENT_NAME5}__loader-container` }, /* @__PURE__ */ React194.createElement(Loader2, null)) : null,
16678
- !isLoading && !error && (data == null ? void 0 : data.accounts.length) === 0 ? /* @__PURE__ */ React194.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React194.createElement(
16776
+ (!data || isLoading) && !error ? /* @__PURE__ */ React195.createElement("div", { className: `Layer__${COMPONENT_NAME5}__loader-container` }, /* @__PURE__ */ React195.createElement(Loader2, null)) : null,
16777
+ !isLoading && !error && (data == null ? void 0 : data.accounts.length) === 0 ? /* @__PURE__ */ React195.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React195.createElement(
16679
16778
  DataState,
16680
16779
  {
16681
16780
  status: "info" /* info */,
@@ -16689,7 +16788,7 @@ var ChartOfAccountsTableWithPanel = ({
16689
16788
  };
16690
16789
 
16691
16790
  // src/components/LedgerAccount/LedgerAccountIndex.tsx
16692
- import React201, {
16791
+ import React202, {
16693
16792
  useContext as useContext35,
16694
16793
  useEffect as useEffect43,
16695
16794
  useMemo as useMemo28,
@@ -16697,7 +16796,7 @@ import React201, {
16697
16796
  } from "react";
16698
16797
 
16699
16798
  // src/components/LedgerAccountEntryDetails/LedgerAccountEntryDetails.tsx
16700
- import React199, { useContext as useContext33, useMemo as useMemo27 } from "react";
16799
+ import React200, { useContext as useContext33, useMemo as useMemo27 } from "react";
16701
16800
 
16702
16801
  // src/utils/journal.ts
16703
16802
  var getAccountIdentifierPayload = (journalLineItem) => {
@@ -16721,14 +16820,14 @@ var entryNumber = (entry) => {
16721
16820
  };
16722
16821
 
16723
16822
  // src/components/Card/Card.tsx
16724
- import React195 from "react";
16823
+ import React196 from "react";
16725
16824
  import classNames62 from "classnames";
16726
16825
  var Card = ({ children, className }) => {
16727
- return /* @__PURE__ */ React195.createElement("div", { className: classNames62("Layer__card", className) }, children);
16826
+ return /* @__PURE__ */ React196.createElement("div", { className: classNames62("Layer__card", className) }, children);
16728
16827
  };
16729
16828
 
16730
16829
  // src/components/DateTime/DateTime.tsx
16731
- import React196 from "react";
16830
+ import React197 from "react";
16732
16831
  import { parseISO as parseISO12, format as formatTime10 } from "date-fns";
16733
16832
  var DateTime = ({
16734
16833
  value,
@@ -16739,11 +16838,11 @@ var DateTime = ({
16739
16838
  onlyTime
16740
16839
  }) => {
16741
16840
  if (format9) {
16742
- return /* @__PURE__ */ React196.createElement(Text, { className: "Layer__datetime" }, formatTime10(parseISO12(value), format9));
16841
+ return /* @__PURE__ */ React197.createElement(Text, { className: "Layer__datetime" }, formatTime10(parseISO12(value), format9));
16743
16842
  }
16744
16843
  const date = formatTime10(parseISO12(value), dateFormat != null ? dateFormat : DATE_FORMAT);
16745
16844
  const time = formatTime10(parseISO12(value), timeFormat != null ? timeFormat : TIME_FORMAT);
16746
- return /* @__PURE__ */ React196.createElement(Text, { className: "Layer__datetime" }, !onlyTime && /* @__PURE__ */ React196.createElement(
16845
+ return /* @__PURE__ */ React197.createElement(Text, { className: "Layer__datetime" }, !onlyTime && /* @__PURE__ */ React197.createElement(
16747
16846
  Text,
16748
16847
  {
16749
16848
  as: "span",
@@ -16752,7 +16851,7 @@ var DateTime = ({
16752
16851
  className: "Layer__datetime__date"
16753
16852
  },
16754
16853
  date
16755
- ), !onlyDate && /* @__PURE__ */ React196.createElement(
16854
+ ), !onlyDate && /* @__PURE__ */ React197.createElement(
16756
16855
  Text,
16757
16856
  {
16758
16857
  as: "span",
@@ -16765,7 +16864,7 @@ var DateTime = ({
16765
16864
  };
16766
16865
 
16767
16866
  // src/components/DetailsList/DetailsList.tsx
16768
- import React197 from "react";
16867
+ import React198 from "react";
16769
16868
  import classNames63 from "classnames";
16770
16869
  var DetailsList = ({
16771
16870
  title,
@@ -16774,14 +16873,14 @@ var DetailsList = ({
16774
16873
  titleClassName,
16775
16874
  actions
16776
16875
  }) => {
16777
- return /* @__PURE__ */ React197.createElement("div", { className: classNames63("Layer__details-list", className) }, title && /* @__PURE__ */ React197.createElement(Header, { className: titleClassName }, /* @__PURE__ */ React197.createElement(Heading, { size: "secondary" /* secondary */ }, title), actions && /* @__PURE__ */ React197.createElement("div", { className: "Layer__details-list__actions" }, actions)), /* @__PURE__ */ React197.createElement("ul", { className: "Layer__details-list__list" }, children));
16876
+ return /* @__PURE__ */ React198.createElement("div", { className: classNames63("Layer__details-list", className) }, title && /* @__PURE__ */ React198.createElement(Header, { className: titleClassName }, /* @__PURE__ */ React198.createElement(Heading, { size: "secondary" /* secondary */ }, title), actions && /* @__PURE__ */ React198.createElement("div", { className: "Layer__details-list__actions" }, actions)), /* @__PURE__ */ React198.createElement("ul", { className: "Layer__details-list__list" }, children));
16778
16877
  };
16779
16878
 
16780
16879
  // src/components/DetailsList/DetailsListItem.tsx
16781
- import React198 from "react";
16880
+ import React199 from "react";
16782
16881
  var renderValue = (value) => {
16783
16882
  if (typeof value === "string") {
16784
- return /* @__PURE__ */ React198.createElement(Text, { weight: "bold" /* bold */, size: "sm" /* sm */ }, value);
16883
+ return /* @__PURE__ */ React199.createElement(Text, { weight: "bold" /* bold */, size: "sm" /* sm */ }, value);
16785
16884
  }
16786
16885
  return value;
16787
16886
  };
@@ -16790,7 +16889,7 @@ var DetailsListItem = ({
16790
16889
  children,
16791
16890
  isLoading
16792
16891
  }) => {
16793
- return /* @__PURE__ */ React198.createElement("li", { className: "Layer__details-list-item" }, /* @__PURE__ */ React198.createElement("label", { className: "Layer__details-list-item__label" }, label), /* @__PURE__ */ React198.createElement("span", { className: "Layer__details-list-item__value" }, isLoading ? /* @__PURE__ */ React198.createElement(SkeletonLoader, null) : renderValue(children)));
16892
+ return /* @__PURE__ */ React199.createElement("li", { className: "Layer__details-list-item" }, /* @__PURE__ */ React199.createElement("label", { className: "Layer__details-list-item__label" }, label), /* @__PURE__ */ React199.createElement("span", { className: "Layer__details-list-item__value" }, isLoading ? /* @__PURE__ */ React199.createElement(SkeletonLoader, null) : renderValue(children)));
16794
16893
  };
16795
16894
 
16796
16895
  // src/components/LedgerAccountEntryDetails/LedgerAccountEntryDetails.tsx
@@ -16801,19 +16900,19 @@ var SourceDetailView = ({
16801
16900
  switch (source.type) {
16802
16901
  case "Transaction_Ledger_Entry_Source": {
16803
16902
  const transactionSource = source;
16804
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(
16903
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(
16805
16904
  DetailsListItem,
16806
16905
  {
16807
16906
  label: (stringOverrides == null ? void 0 : stringOverrides.accountNameLabel) || "Account name"
16808
16907
  },
16809
16908
  transactionSource.account_name
16810
- ), /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ React199.createElement(DateTime, { value: transactionSource.date })), /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(transactionSource.amount)}`), /* @__PURE__ */ React199.createElement(
16909
+ ), /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ React200.createElement(DateTime, { value: transactionSource.date })), /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(transactionSource.amount)}`), /* @__PURE__ */ React200.createElement(
16811
16910
  DetailsListItem,
16812
16911
  {
16813
16912
  label: (stringOverrides == null ? void 0 : stringOverrides.directionLabel) || "Direction"
16814
16913
  },
16815
16914
  transactionSource.direction
16816
- ), /* @__PURE__ */ React199.createElement(
16915
+ ), /* @__PURE__ */ React200.createElement(
16817
16916
  DetailsListItem,
16818
16917
  {
16819
16918
  label: (stringOverrides == null ? void 0 : stringOverrides.counterpartyLabel) || "Counterparty"
@@ -16823,23 +16922,23 @@ var SourceDetailView = ({
16823
16922
  }
16824
16923
  case "Invoice_Ledger_Entry_Source": {
16825
16924
  const invoiceSource = source;
16826
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(
16925
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(
16827
16926
  DetailsListItem,
16828
16927
  {
16829
16928
  label: (stringOverrides == null ? void 0 : stringOverrides.invoiceNumberLabel) || "Invoice number"
16830
16929
  },
16831
16930
  invoiceSource.invoice_number
16832
- ), /* @__PURE__ */ React199.createElement(
16931
+ ), /* @__PURE__ */ React200.createElement(
16833
16932
  DetailsListItem,
16834
16933
  {
16835
16934
  label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
16836
16935
  },
16837
16936
  invoiceSource.recipient_name
16838
- ), /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ React199.createElement(DateTime, { value: invoiceSource.date })), /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoiceSource.amount)}`));
16937
+ ), /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ React200.createElement(DateTime, { value: invoiceSource.date })), /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoiceSource.amount)}`));
16839
16938
  }
16840
16939
  case "Manual_Ledger_Entry_Source": {
16841
16940
  const manualSource = source;
16842
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.memoLabel) || "Memo" }, manualSource.memo), /* @__PURE__ */ React199.createElement(
16941
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.memoLabel) || "Memo" }, manualSource.memo), /* @__PURE__ */ React200.createElement(
16843
16942
  DetailsListItem,
16844
16943
  {
16845
16944
  label: (stringOverrides == null ? void 0 : stringOverrides.createdByLabel) || "Created by"
@@ -16849,17 +16948,17 @@ var SourceDetailView = ({
16849
16948
  }
16850
16949
  case "Invoice_Payment_Ledger_Entry_Source": {
16851
16950
  const invoicePaymentSource = source;
16852
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(
16951
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(
16853
16952
  DetailsListItem,
16854
16953
  {
16855
16954
  label: (stringOverrides == null ? void 0 : stringOverrides.invoiceNumberLabel) || "Invoice number"
16856
16955
  },
16857
16956
  invoicePaymentSource.invoice_number
16858
- ), /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoicePaymentSource.amount)}`));
16957
+ ), /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoicePaymentSource.amount)}`));
16859
16958
  }
16860
16959
  case "Refund_Ledger_Entry_Source": {
16861
16960
  const refundSource = source;
16862
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ React199.createElement(
16961
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ React200.createElement(
16863
16962
  DetailsListItem,
16864
16963
  {
16865
16964
  label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
@@ -16869,7 +16968,7 @@ var SourceDetailView = ({
16869
16968
  }
16870
16969
  case "Refund_Payment_Ledger_Entry_Source": {
16871
16970
  const refundSource = source;
16872
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ React199.createElement(
16971
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ React200.createElement(
16873
16972
  DetailsListItem,
16874
16973
  {
16875
16974
  label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
@@ -16879,7 +16978,7 @@ var SourceDetailView = ({
16879
16978
  }
16880
16979
  case "Opening_Balance_Ledger_Entry_Source": {
16881
16980
  const openingBalanceSource = source;
16882
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(
16981
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(
16883
16982
  DetailsListItem,
16884
16983
  {
16885
16984
  label: (stringOverrides == null ? void 0 : stringOverrides.accountNameLabel) || "Account name"
@@ -16889,7 +16988,7 @@ var SourceDetailView = ({
16889
16988
  }
16890
16989
  case "Payout_Ledger_Entry_Source": {
16891
16990
  const payoutSource = source;
16892
- return /* @__PURE__ */ React199.createElement(React199.Fragment, null, /* @__PURE__ */ React199.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(payoutSource.paid_out_amount)}`), /* @__PURE__ */ React199.createElement(
16991
+ return /* @__PURE__ */ React200.createElement(React200.Fragment, null, /* @__PURE__ */ React200.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(payoutSource.paid_out_amount)}`), /* @__PURE__ */ React200.createElement(
16893
16992
  DetailsListItem,
16894
16993
  {
16895
16994
  label: (stringOverrides == null ? void 0 : stringOverrides.processorLabel) || "Processor"
@@ -16919,15 +17018,15 @@ var LedgerAccountEntryDetails = ({
16919
17018
  });
16920
17019
  return { totalDebit: totalDebit2, totalCredit: totalCredit2 };
16921
17020
  }, [entryData]);
16922
- return /* @__PURE__ */ React199.createElement("div", { className: "Layer__ledger-account__entry-details" }, /* @__PURE__ */ React199.createElement(Header2, { className: "Layer__ledger-account__entry-details__header" }, /* @__PURE__ */ React199.createElement(HeaderRow, null, /* @__PURE__ */ React199.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ React199.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ React199.createElement(Heading, { size: "secondary" /* secondary */ }, (stringOverrides == null ? void 0 : stringOverrides.title) || "Transaction details")), /* @__PURE__ */ React199.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React199.createElement(Heading, { size: "secondary" /* secondary */ }, ((_a = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _a.header) || "Transaction source")), /* @__PURE__ */ React199.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React199.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ React199.createElement(
17021
+ return /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger-account__entry-details" }, /* @__PURE__ */ React200.createElement(Header2, { className: "Layer__ledger-account__entry-details__header" }, /* @__PURE__ */ React200.createElement(HeaderRow, null, /* @__PURE__ */ React200.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ React200.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ React200.createElement(Heading, { size: "secondary" /* secondary */ }, (stringOverrides == null ? void 0 : stringOverrides.title) || "Transaction details")), /* @__PURE__ */ React200.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React200.createElement(Heading, { size: "secondary" /* secondary */ }, ((_a = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _a.header) || "Transaction source")), /* @__PURE__ */ React200.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React200.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ React200.createElement(
16923
17022
  DetailsList,
16924
17023
  {
16925
17024
  title: ((_b = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _b.header) || "Transaction source",
16926
17025
  titleClassName: "Layer__hidden-lg Layer__hidden-xl",
16927
- actions: /* @__PURE__ */ React199.createElement(
17026
+ actions: /* @__PURE__ */ React200.createElement(
16928
17027
  Button,
16929
17028
  {
16930
- rightIcon: /* @__PURE__ */ React199.createElement(X_default, null),
17029
+ rightIcon: /* @__PURE__ */ React200.createElement(X_default, null),
16931
17030
  iconOnly: true,
16932
17031
  onClick: closeSelectedEntry,
16933
17032
  variant: "secondary" /* secondary */,
@@ -16935,16 +17034,16 @@ var LedgerAccountEntryDetails = ({
16935
17034
  }
16936
17035
  )
16937
17036
  },
16938
- /* @__PURE__ */ React199.createElement(
17037
+ /* @__PURE__ */ React200.createElement(
16939
17038
  DetailsListItem,
16940
17039
  {
16941
17040
  label: ((_d = (_c = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _c.details) == null ? void 0 : _d.sourceLabel) || "Source",
16942
17041
  isLoading: isLoadingEntry
16943
17042
  },
16944
- /* @__PURE__ */ React199.createElement(Badge, null, (_e = entryData == null ? void 0 : entryData.source) == null ? void 0 : _e.entity_name)
17043
+ /* @__PURE__ */ React200.createElement(Badge, null, (_e = entryData == null ? void 0 : entryData.source) == null ? void 0 : _e.entity_name)
16945
17044
  ),
16946
- ((_f = entryData == null ? void 0 : entryData.source) == null ? void 0 : _f.display_description) && /* @__PURE__ */ React199.createElement(SourceDetailView, { source: entryData == null ? void 0 : entryData.source })
16947
- ), /* @__PURE__ */ React199.createElement(
17045
+ ((_f = entryData == null ? void 0 : entryData.source) == null ? void 0 : _f.display_description) && /* @__PURE__ */ React200.createElement(SourceDetailView, { source: entryData == null ? void 0 : entryData.source })
17046
+ ), /* @__PURE__ */ React200.createElement(
16948
17047
  DetailsList,
16949
17048
  {
16950
17049
  title: ((_g = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _g.header) ? (_h = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _h.header(
@@ -16952,7 +17051,7 @@ var LedgerAccountEntryDetails = ({
16952
17051
  ) : `Journal Entry ${entryData ? entryNumber(entryData) : ""}`,
16953
17052
  className: "Layer__border-top"
16954
17053
  },
16955
- /* @__PURE__ */ React199.createElement(
17054
+ /* @__PURE__ */ React200.createElement(
16956
17055
  DetailsListItem,
16957
17056
  {
16958
17057
  label: ((_j = (_i = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _i.details) == null ? void 0 : _j.entryTypeLabel) || "Entry type",
@@ -16960,23 +17059,23 @@ var LedgerAccountEntryDetails = ({
16960
17059
  },
16961
17060
  humanizeEnum((_k = entryData == null ? void 0 : entryData.entry_type) != null ? _k : "")
16962
17061
  ),
16963
- /* @__PURE__ */ React199.createElement(
17062
+ /* @__PURE__ */ React200.createElement(
16964
17063
  DetailsListItem,
16965
17064
  {
16966
17065
  label: ((_m = (_l = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _l.details) == null ? void 0 : _m.dateLabel) || "Date",
16967
17066
  isLoading: isLoadingEntry
16968
17067
  },
16969
- (entryData == null ? void 0 : entryData.entry_at) && /* @__PURE__ */ React199.createElement(DateTime, { value: entryData == null ? void 0 : entryData.entry_at })
17068
+ (entryData == null ? void 0 : entryData.entry_at) && /* @__PURE__ */ React200.createElement(DateTime, { value: entryData == null ? void 0 : entryData.entry_at })
16970
17069
  ),
16971
- /* @__PURE__ */ React199.createElement(
17070
+ /* @__PURE__ */ React200.createElement(
16972
17071
  DetailsListItem,
16973
17072
  {
16974
17073
  label: ((_o = (_n = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _n.details) == null ? void 0 : _o.creationDateLabel) || "Creation date",
16975
17074
  isLoading: isLoadingEntry
16976
17075
  },
16977
- (entryData == null ? void 0 : entryData.date) && /* @__PURE__ */ React199.createElement(DateTime, { value: entryData == null ? void 0 : entryData.date })
17076
+ (entryData == null ? void 0 : entryData.date) && /* @__PURE__ */ React200.createElement(DateTime, { value: entryData == null ? void 0 : entryData.date })
16978
17077
  ),
16979
- (entryData == null ? void 0 : entryData.reversal_id) && /* @__PURE__ */ React199.createElement(
17078
+ (entryData == null ? void 0 : entryData.reversal_id) && /* @__PURE__ */ React200.createElement(
16980
17079
  DetailsListItem,
16981
17080
  {
16982
17081
  label: ((_q = (_p = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _p.details) == null ? void 0 : _q.reversalLabel) || "Reversal",
@@ -16984,40 +17083,40 @@ var LedgerAccountEntryDetails = ({
16984
17083
  },
16985
17084
  entryData == null ? void 0 : entryData.reversal_id.substring(0, 5)
16986
17085
  )
16987
- ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ React199.createElement("div", { className: "Layer__ledger-account__entry-details__line-items" }, /* @__PURE__ */ React199.createElement(Card, null, /* @__PURE__ */ React199.createElement(
17086
+ ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger-account__entry-details__line-items" }, /* @__PURE__ */ React200.createElement(Card, null, /* @__PURE__ */ React200.createElement(
16988
17087
  Table,
16989
17088
  {
16990
17089
  componentName: "ledger-account__entry-details",
16991
17090
  borderCollapse: "collapse"
16992
17091
  },
16993
- /* @__PURE__ */ React199.createElement(TableHead, null, /* @__PURE__ */ React199.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ React199.createElement(TableCell, null, ((_r = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _r.lineItemsColumnHeader) || "Line items"), /* @__PURE__ */ React199.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_s = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _s.debitColumnHeader) || "Debit"), /* @__PURE__ */ React199.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_t = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _t.creditColumnHeader) || "Credit"))),
16994
- /* @__PURE__ */ React199.createElement(TableBody, null, (_u = entryData == null ? void 0 : entryData.line_items) == null ? void 0 : _u.map((item, index) => {
17092
+ /* @__PURE__ */ React200.createElement(TableHead, null, /* @__PURE__ */ React200.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ React200.createElement(TableCell, null, ((_r = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _r.lineItemsColumnHeader) || "Line items"), /* @__PURE__ */ React200.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_s = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _s.debitColumnHeader) || "Debit"), /* @__PURE__ */ React200.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_t = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _t.creditColumnHeader) || "Credit"))),
17093
+ /* @__PURE__ */ React200.createElement(TableBody, null, (_u = entryData == null ? void 0 : entryData.line_items) == null ? void 0 : _u.map((item, index) => {
16995
17094
  var _a2;
16996
- return /* @__PURE__ */ React199.createElement(
17095
+ return /* @__PURE__ */ React200.createElement(
16997
17096
  TableRow,
16998
17097
  {
16999
17098
  key: `ledger-line-item-${index}`,
17000
17099
  rowKey: `ledger-line-item-${index}`
17001
17100
  },
17002
- /* @__PURE__ */ React199.createElement(TableCell, null, ((_a2 = item.account) == null ? void 0 : _a2.name) || ""),
17003
- /* @__PURE__ */ React199.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ React199.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
17004
- /* @__PURE__ */ React199.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ React199.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
17101
+ /* @__PURE__ */ React200.createElement(TableCell, null, ((_a2 = item.account) == null ? void 0 : _a2.name) || ""),
17102
+ /* @__PURE__ */ React200.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ React200.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
17103
+ /* @__PURE__ */ React200.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ React200.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
17005
17104
  );
17006
- }), /* @__PURE__ */ React199.createElement(
17105
+ }), /* @__PURE__ */ React200.createElement(
17007
17106
  TableRow,
17008
17107
  {
17009
17108
  rowKey: "ledger-line-item-summation",
17010
17109
  variant: "summation"
17011
17110
  },
17012
- /* @__PURE__ */ React199.createElement(TableCell, { primary: true }, ((_v = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _v.totalRowHeader) || "Total"),
17013
- /* @__PURE__ */ React199.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalDebit || 0),
17014
- /* @__PURE__ */ React199.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalCredit || 0)
17111
+ /* @__PURE__ */ React200.createElement(TableCell, { primary: true }, ((_v = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _v.totalRowHeader) || "Total"),
17112
+ /* @__PURE__ */ React200.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalDebit || 0),
17113
+ /* @__PURE__ */ React200.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalCredit || 0)
17015
17114
  ))
17016
17115
  ))) : null);
17017
17116
  };
17018
17117
 
17019
17118
  // src/components/LedgerAccount/LedgerAccountRow.tsx
17020
- import React200, { useContext as useContext34, useEffect as useEffect42, useState as useState52 } from "react";
17119
+ import React201, { useContext as useContext34, useEffect as useEffect42, useState as useState52 } from "react";
17021
17120
  import classNames64 from "classnames";
17022
17121
  import { parseISO as parseISO13, format as formatTime11 } from "date-fns";
17023
17122
  var LedgerAccountRow = ({
@@ -17040,7 +17139,7 @@ var LedgerAccountRow = ({
17040
17139
  }
17041
17140
  }, []);
17042
17141
  if (view === "tablet") {
17043
- return /* @__PURE__ */ React200.createElement(
17142
+ return /* @__PURE__ */ React201.createElement(
17044
17143
  "tr",
17045
17144
  {
17046
17145
  className: classNames64(
@@ -17059,21 +17158,21 @@ var LedgerAccountRow = ({
17059
17158
  }
17060
17159
  }
17061
17160
  },
17062
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ React200.createElement(Text, null, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT)), /* @__PURE__ */ React200.createElement(
17161
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ React201.createElement(Text, null, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT)), /* @__PURE__ */ React201.createElement(
17063
17162
  Text,
17064
17163
  {
17065
17164
  weight: "normal" /* normal */,
17066
17165
  className: "Layer__ledger_account-table__journal-id"
17067
17166
  },
17068
17167
  entryNumber(row)
17069
- )), /* @__PURE__ */ React200.createElement(Text, null, (_b = (_a = row.source) == null ? void 0 : _a.display_description) != null ? _b : ""))),
17070
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17071
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17072
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
17168
+ )), /* @__PURE__ */ React201.createElement(Text, null, (_b = (_a = row.source) == null ? void 0 : _a.display_description) != null ? _b : ""))),
17169
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17170
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17171
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
17073
17172
  );
17074
17173
  }
17075
17174
  if (view === "mobile") {
17076
- return /* @__PURE__ */ React200.createElement(
17175
+ return /* @__PURE__ */ React201.createElement(
17077
17176
  "tr",
17078
17177
  {
17079
17178
  className: classNames64(
@@ -17092,17 +17191,17 @@ var LedgerAccountRow = ({
17092
17191
  }
17093
17192
  }
17094
17193
  },
17095
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ React200.createElement(Text, null, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT)), /* @__PURE__ */ React200.createElement(
17194
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ React201.createElement(Text, null, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT)), /* @__PURE__ */ React201.createElement(
17096
17195
  Text,
17097
17196
  {
17098
17197
  weight: "normal" /* normal */,
17099
17198
  className: "Layer__ledger_account-table__journal-id"
17100
17199
  },
17101
17200
  entryNumber(row)
17102
- )), /* @__PURE__ */ React200.createElement(Text, null, (_d = (_c = row.source) == null ? void 0 : _c.display_description) != null ? _d : ""), /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger_account-table__balances-mobile" }, /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Debit"), /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, " ", row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Credit"), /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ React200.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Running balance"), /* @__PURE__ */ React200.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, `$${centsToDollars(row.running_balance)}`)))))
17201
+ )), /* @__PURE__ */ React201.createElement(Text, null, (_d = (_c = row.source) == null ? void 0 : _c.display_description) != null ? _d : ""), /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger_account-table__balances-mobile" }, /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Debit"), /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, " ", row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Credit"), /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Running balance"), /* @__PURE__ */ React201.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, `$${centsToDollars(row.running_balance)}`)))))
17103
17202
  );
17104
17203
  }
17105
- return /* @__PURE__ */ React200.createElement(
17204
+ return /* @__PURE__ */ React201.createElement(
17106
17205
  "tr",
17107
17206
  {
17108
17207
  className: classNames64(
@@ -17121,12 +17220,12 @@ var LedgerAccountRow = ({
17121
17220
  }
17122
17221
  }
17123
17222
  },
17124
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content" }, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT))),
17125
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content" }, entryNumber(row))),
17126
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content" }, (_f = (_e = row.source) == null ? void 0 : _e.display_description) != null ? _f : "")),
17127
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17128
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17129
- /* @__PURE__ */ React200.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React200.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
17223
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content" }, row.date && formatTime11(parseISO13(row.date), DATE_FORMAT))),
17224
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content" }, entryNumber(row))),
17225
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content" }, (_f = (_e = row.source) == null ? void 0 : _e.display_description) != null ? _f : "")),
17226
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17227
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
17228
+ /* @__PURE__ */ React201.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ React201.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
17130
17229
  );
17131
17230
  };
17132
17231
 
@@ -17180,10 +17279,10 @@ var LedgerAccount = ({
17180
17279
  setAccountId(void 0);
17181
17280
  closeSelectedEntry();
17182
17281
  };
17183
- return /* @__PURE__ */ React201.createElement(
17282
+ return /* @__PURE__ */ React202.createElement(
17184
17283
  Panel,
17185
17284
  {
17186
- sidebar: /* @__PURE__ */ React201.createElement(
17285
+ sidebar: /* @__PURE__ */ React202.createElement(
17187
17286
  LedgerAccountEntryDetails,
17188
17287
  {
17189
17288
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.ledgerEntryDetail
@@ -17193,21 +17292,21 @@ var LedgerAccount = ({
17193
17292
  parentRef: containerRef,
17194
17293
  className: "Layer__ledger-account__panel"
17195
17294
  },
17196
- /* @__PURE__ */ React201.createElement("div", { className: baseClassName }, /* @__PURE__ */ React201.createElement(Header2, { className: "Layer__ledger-account__header" }, /* @__PURE__ */ React201.createElement(HeaderRow, null, /* @__PURE__ */ React201.createElement(HeaderCol, null, /* @__PURE__ */ React201.createElement(BackButton, { onClick: close }), /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account__title-container" }, /* @__PURE__ */ React201.createElement(
17295
+ /* @__PURE__ */ React202.createElement("div", { className: baseClassName }, /* @__PURE__ */ React202.createElement(Header2, { className: "Layer__ledger-account__header" }, /* @__PURE__ */ React202.createElement(HeaderRow, null, /* @__PURE__ */ React202.createElement(HeaderCol, null, /* @__PURE__ */ React202.createElement(BackButton, { onClick: close }), /* @__PURE__ */ React202.createElement("div", { className: "Layer__ledger-account__title-container" }, /* @__PURE__ */ React202.createElement(
17197
17296
  Text,
17198
17297
  {
17199
17298
  weight: "bold" /* bold */,
17200
17299
  className: "Layer__ledger-account__title"
17201
17300
  },
17202
17301
  (_a = account == null ? void 0 : account.name) != null ? _a : ""
17203
- ), /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account__balance-container" }, /* @__PURE__ */ React201.createElement(
17302
+ ), /* @__PURE__ */ React202.createElement("div", { className: "Layer__ledger-account__balance-container" }, /* @__PURE__ */ React202.createElement(
17204
17303
  Text,
17205
17304
  {
17206
17305
  className: "Layer__ledger-account__balance-label",
17207
17306
  size: "sm" /* sm */
17208
17307
  },
17209
17308
  "Current balance"
17210
- ), /* @__PURE__ */ React201.createElement(
17309
+ ), /* @__PURE__ */ React202.createElement(
17211
17310
  Text,
17212
17311
  {
17213
17312
  className: "Layer__ledger-account__balance-value",
@@ -17215,9 +17314,9 @@ var LedgerAccount = ({
17215
17314
  },
17216
17315
  "$",
17217
17316
  centsToDollars((account == null ? void 0 : account.balance) || 0)
17218
- )))))), /* @__PURE__ */ React201.createElement("table", { className: "Layer__table Layer__table--hover-effect Layer__ledger-account-table" }, /* @__PURE__ */ React201.createElement("thead", null, /* @__PURE__ */ React201.createElement("tr", null, view !== "desktop" && /* @__PURE__ */ React201.createElement("th", null), view === "desktop" && /* @__PURE__ */ React201.createElement(React201.Fragment, null, /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header" }, ((_b = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _b.dateColumnHeader) || "Date"), /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header" }, ((_c = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _c.journalIdColumnHeader) || "Journal id #"), /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header" }, ((_d = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _d.sourceColumnHeader) || "Source")), view !== "mobile" && /* @__PURE__ */ React201.createElement(React201.Fragment, null, /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_e = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _e.debitColumnHeader) || "Debit"), /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_f = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _f.creditColumnHeader) || "Credit"), /* @__PURE__ */ React201.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_g = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _g.runningBalanceColumnHeader) || "Running balance")))), /* @__PURE__ */ React201.createElement("tbody", null, (_h = data == null ? void 0 : data.filter(
17317
+ )))))), /* @__PURE__ */ React202.createElement("table", { className: "Layer__table Layer__table--hover-effect Layer__ledger-account-table" }, /* @__PURE__ */ React202.createElement("thead", null, /* @__PURE__ */ React202.createElement("tr", null, view !== "desktop" && /* @__PURE__ */ React202.createElement("th", null), view === "desktop" && /* @__PURE__ */ React202.createElement(React202.Fragment, null, /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header" }, ((_b = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _b.dateColumnHeader) || "Date"), /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header" }, ((_c = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _c.journalIdColumnHeader) || "Journal id #"), /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header" }, ((_d = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _d.sourceColumnHeader) || "Source")), view !== "mobile" && /* @__PURE__ */ React202.createElement(React202.Fragment, null, /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_e = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _e.debitColumnHeader) || "Debit"), /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_f = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _f.creditColumnHeader) || "Credit"), /* @__PURE__ */ React202.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_g = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _g.runningBalanceColumnHeader) || "Running balance")))), /* @__PURE__ */ React202.createElement("tbody", null, (_h = data == null ? void 0 : data.filter(
17219
17318
  (entry) => !entry.entry_reversal_of && !entry.entry_reversed_by
17220
- )) == null ? void 0 : _h.map((x, index) => /* @__PURE__ */ React201.createElement(
17319
+ )) == null ? void 0 : _h.map((x, index) => /* @__PURE__ */ React202.createElement(
17221
17320
  LedgerAccountRow,
17222
17321
  {
17223
17322
  key: x.id,
@@ -17226,7 +17325,7 @@ var LedgerAccount = ({
17226
17325
  initialLoad,
17227
17326
  view
17228
17327
  }
17229
- )))), data && /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account__pagination" }, /* @__PURE__ */ React201.createElement(
17328
+ )))), data && /* @__PURE__ */ React202.createElement("div", { className: "Layer__ledger-account__pagination" }, /* @__PURE__ */ React202.createElement(
17230
17329
  Pagination,
17231
17330
  {
17232
17331
  currentPage,
@@ -17234,7 +17333,7 @@ var LedgerAccount = ({
17234
17333
  pageSize,
17235
17334
  onPageChange: (page) => setCurrentPage(page)
17236
17335
  }
17237
- )), error ? /* @__PURE__ */ React201.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React201.createElement(
17336
+ )), error ? /* @__PURE__ */ React202.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React202.createElement(
17238
17337
  DataState,
17239
17338
  {
17240
17339
  status: "failed" /* failed */,
@@ -17243,7 +17342,7 @@ var LedgerAccount = ({
17243
17342
  onRefresh: () => refetch(),
17244
17343
  isLoading: isValidating || isLoading
17245
17344
  }
17246
- )) : null, (!data || isLoading) && !error ? /* @__PURE__ */ React201.createElement("div", { className: "Layer__ledger-account__loader-container" }, /* @__PURE__ */ React201.createElement(Loader2, null)) : null, !isLoading && !error && (data == null ? void 0 : data.length) === 0 ? /* @__PURE__ */ React201.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React201.createElement(
17345
+ )) : null, (!data || isLoading) && !error ? /* @__PURE__ */ React202.createElement("div", { className: "Layer__ledger-account__loader-container" }, /* @__PURE__ */ React202.createElement(Loader2, null)) : null, !isLoading && !error && (data == null ? void 0 : data.length) === 0 ? /* @__PURE__ */ React202.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React202.createElement(
17247
17346
  DataState,
17248
17347
  {
17249
17348
  status: "info" /* info */,
@@ -17264,25 +17363,26 @@ var ChartOfAccounts = (props) => {
17264
17363
  const ledgerAccountsContextData = useLedgerAccounts(
17265
17364
  (_a = props.showReversalEntries) != null ? _a : false
17266
17365
  );
17267
- return /* @__PURE__ */ React202.createElement(ChartOfAccountsContext.Provider, { value: chartOfAccountsContextData }, /* @__PURE__ */ React202.createElement(LedgerAccountsContext.Provider, { value: ledgerAccountsContextData }, /* @__PURE__ */ React202.createElement(ChartOfAccountsContent, __spreadValues({}, props))));
17366
+ return /* @__PURE__ */ React203.createElement(ChartOfAccountsContext.Provider, { value: chartOfAccountsContextData }, /* @__PURE__ */ React203.createElement(LedgerAccountsContext.Provider, { value: ledgerAccountsContextData }, /* @__PURE__ */ React203.createElement(ChartOfAccountsContent, __spreadValues({}, props))));
17268
17367
  };
17269
17368
  var ChartOfAccountsContent = ({
17270
17369
  asWidget,
17271
17370
  withDateControl,
17272
17371
  withExpandAllButton,
17273
17372
  stringOverrides,
17274
- templateAccountsEditable
17373
+ templateAccountsEditable,
17374
+ showAddAccountButton
17275
17375
  }) => {
17276
17376
  const { accountId } = useContext36(LedgerAccountsContext);
17277
17377
  const { view, containerRef } = useElementViewSize();
17278
- return /* @__PURE__ */ React202.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ React202.createElement(
17378
+ return /* @__PURE__ */ React203.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ React203.createElement(
17279
17379
  LedgerAccount,
17280
17380
  {
17281
17381
  view,
17282
17382
  containerRef,
17283
17383
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.ledgerAccount
17284
17384
  }
17285
- ) : /* @__PURE__ */ React202.createElement(
17385
+ ) : /* @__PURE__ */ React203.createElement(
17286
17386
  ChartOfAccountsTableWithPanel,
17287
17387
  {
17288
17388
  asWidget,
@@ -17290,6 +17390,7 @@ var ChartOfAccountsContent = ({
17290
17390
  withExpandAllButton,
17291
17391
  view,
17292
17392
  containerRef,
17393
+ showAddAccountButton,
17293
17394
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.chartOfAccountsTable,
17294
17395
  templateAccountsEditable
17295
17396
  }
@@ -17297,7 +17398,7 @@ var ChartOfAccountsContent = ({
17297
17398
  };
17298
17399
 
17299
17400
  // src/components/Journal/Journal.tsx
17300
- import React209 from "react";
17401
+ import React211 from "react";
17301
17402
 
17302
17403
  // src/contexts/JournalContext/JournalContext.tsx
17303
17404
  import { createContext as createContext18 } from "react";
@@ -17604,13 +17705,13 @@ var useJournal = () => {
17604
17705
  };
17605
17706
 
17606
17707
  // src/components/JournalTable/JournalTableWithPanel.tsx
17607
- import React208, { useContext as useContext42, useMemo as useMemo30, useState as useState56 } from "react";
17708
+ import React210, { useContext as useContext42, useMemo as useMemo30, useState as useState56 } from "react";
17608
17709
 
17609
17710
  // src/components/JournalSidebar/JournalSidebar.tsx
17610
- import React206, { useContext as useContext40 } from "react";
17711
+ import React207, { useContext as useContext40 } from "react";
17611
17712
 
17612
17713
  // src/components/JournalEntryDetails/JournalEntryDetails.tsx
17613
- import React203, { useContext as useContext37, useMemo as useMemo29, useState as useState55 } from "react";
17714
+ import React204, { useContext as useContext37, useMemo as useMemo29, useState as useState55 } from "react";
17614
17715
  var JournalEntryDetails = () => {
17615
17716
  var _a, _b, _c, _d;
17616
17717
  const {
@@ -17654,15 +17755,15 @@ var JournalEntryDetails = () => {
17654
17755
  setReverseEntryProcessing(false);
17655
17756
  }
17656
17757
  });
17657
- return /* @__PURE__ */ React203.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ React203.createElement(Header2, { className: "Layer__journal__entry-details__mobile-header" }, /* @__PURE__ */ React203.createElement(HeaderRow, null, /* @__PURE__ */ React203.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ React203.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ React203.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction details")), /* @__PURE__ */ React203.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React203.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction source")), /* @__PURE__ */ React203.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React203.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ React203.createElement(
17758
+ return /* @__PURE__ */ React204.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ React204.createElement(Header2, { className: "Layer__journal__entry-details__mobile-header" }, /* @__PURE__ */ React204.createElement(HeaderRow, null, /* @__PURE__ */ React204.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ React204.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ React204.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction details")), /* @__PURE__ */ React204.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React204.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction source")), /* @__PURE__ */ React204.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ React204.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ React204.createElement(
17658
17759
  DetailsList,
17659
17760
  {
17660
17761
  title: "Transaction source",
17661
17762
  titleClassName: "Layer__hidden-lg Layer__hidden-xl",
17662
- actions: /* @__PURE__ */ React203.createElement(
17763
+ actions: /* @__PURE__ */ React204.createElement(
17663
17764
  Button,
17664
17765
  {
17665
- rightIcon: /* @__PURE__ */ React203.createElement(X_default, null),
17766
+ rightIcon: /* @__PURE__ */ React204.createElement(X_default, null),
17666
17767
  iconOnly: true,
17667
17768
  onClick: closeSelectedEntry,
17668
17769
  className: "Layer__details-list__close-btn",
@@ -17670,32 +17771,32 @@ var JournalEntryDetails = () => {
17670
17771
  }
17671
17772
  )
17672
17773
  },
17673
- /* @__PURE__ */ React203.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ React203.createElement(Badge, null, (_a = entry == null ? void 0 : entry.source) == null ? void 0 : _a.entity_name)),
17674
- ((_b = entry == null ? void 0 : entry.source) == null ? void 0 : _b.display_description) && /* @__PURE__ */ React203.createElement(SourceDetailView, { source: entry == null ? void 0 : entry.source })
17675
- ), /* @__PURE__ */ React203.createElement(
17774
+ /* @__PURE__ */ React204.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ React204.createElement(Badge, null, (_a = entry == null ? void 0 : entry.source) == null ? void 0 : _a.entity_name)),
17775
+ ((_b = entry == null ? void 0 : entry.source) == null ? void 0 : _b.display_description) && /* @__PURE__ */ React204.createElement(SourceDetailView, { source: entry == null ? void 0 : entry.source })
17776
+ ), /* @__PURE__ */ React204.createElement(
17676
17777
  DetailsList,
17677
17778
  {
17678
17779
  title: `Journal Entry ${entry ? entryNumber(entry) : ""}`,
17679
17780
  className: "Layer__border-top"
17680
17781
  },
17681
- /* @__PURE__ */ React203.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum((_c = entry == null ? void 0 : entry.entry_type) != null ? _c : "")),
17682
- /* @__PURE__ */ React203.createElement(DetailsListItem, { label: "Effective date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.entry_at) && /* @__PURE__ */ React203.createElement(DateTime, { value: entry == null ? void 0 : entry.entry_at })),
17683
- /* @__PURE__ */ React203.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.date) && /* @__PURE__ */ React203.createElement(DateTime, { value: entry == null ? void 0 : entry.date })),
17684
- (entry == null ? void 0 : entry.reversal_id) && /* @__PURE__ */ React203.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, `Journal Entry #${entry == null ? void 0 : entry.reversal_id.substring(0, 5)}`)
17685
- ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ React203.createElement("div", { className: "Layer__journal__entry-details__line-items" }, /* @__PURE__ */ React203.createElement(Card, null, /* @__PURE__ */ React203.createElement(
17782
+ /* @__PURE__ */ React204.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum((_c = entry == null ? void 0 : entry.entry_type) != null ? _c : "")),
17783
+ /* @__PURE__ */ React204.createElement(DetailsListItem, { label: "Effective date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.entry_at) && /* @__PURE__ */ React204.createElement(DateTime, { value: entry == null ? void 0 : entry.entry_at })),
17784
+ /* @__PURE__ */ React204.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.date) && /* @__PURE__ */ React204.createElement(DateTime, { value: entry == null ? void 0 : entry.date })),
17785
+ (entry == null ? void 0 : entry.reversal_id) && /* @__PURE__ */ React204.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, `Journal Entry #${entry == null ? void 0 : entry.reversal_id.substring(0, 5)}`)
17786
+ ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ React204.createElement("div", { className: "Layer__journal__entry-details__line-items" }, /* @__PURE__ */ React204.createElement(Card, null, /* @__PURE__ */ React204.createElement(
17686
17787
  Table,
17687
17788
  {
17688
17789
  componentName: "journal__entry-details",
17689
17790
  borderCollapse: "collapse"
17690
17791
  },
17691
- /* @__PURE__ */ React203.createElement(TableHead, null, /* @__PURE__ */ React203.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ React203.createElement(TableCell, null, "Line items"), /* @__PURE__ */ React203.createElement(
17792
+ /* @__PURE__ */ React204.createElement(TableHead, null, /* @__PURE__ */ React204.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ React204.createElement(TableCell, null, "Line items"), /* @__PURE__ */ React204.createElement(
17692
17793
  TableCell,
17693
17794
  {
17694
17795
  className: "Layer__journal__debit-credit-col",
17695
17796
  align: "right" /* RIGHT */
17696
17797
  },
17697
17798
  "Debit"
17698
- ), /* @__PURE__ */ React203.createElement(
17799
+ ), /* @__PURE__ */ React204.createElement(
17699
17800
  TableCell,
17700
17801
  {
17701
17802
  className: "Layer__journal__debit-credit-col",
@@ -17703,37 +17804,37 @@ var JournalEntryDetails = () => {
17703
17804
  },
17704
17805
  "Credit"
17705
17806
  ))),
17706
- /* @__PURE__ */ React203.createElement(TableBody, null, sortedLineItems == null ? void 0 : sortedLineItems.map((item, index) => /* @__PURE__ */ React203.createElement(
17807
+ /* @__PURE__ */ React204.createElement(TableBody, null, sortedLineItems == null ? void 0 : sortedLineItems.map((item, index) => /* @__PURE__ */ React204.createElement(
17707
17808
  TableRow,
17708
17809
  {
17709
17810
  key: `ledger-line-item-${index}`,
17710
17811
  rowKey: `ledger-line-item-${index}`
17711
17812
  },
17712
- /* @__PURE__ */ React203.createElement(TableCell, null, item.account.name),
17713
- /* @__PURE__ */ React203.createElement(
17813
+ /* @__PURE__ */ React204.createElement(TableCell, null, item.account.name),
17814
+ /* @__PURE__ */ React204.createElement(
17714
17815
  TableCell,
17715
17816
  {
17716
17817
  className: "Layer__journal__debit-credit-col",
17717
17818
  align: "right" /* RIGHT */
17718
17819
  },
17719
- item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ React203.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))
17820
+ item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ React204.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))
17720
17821
  ),
17721
- /* @__PURE__ */ React203.createElement(
17822
+ /* @__PURE__ */ React204.createElement(
17722
17823
  TableCell,
17723
17824
  {
17724
17825
  className: "Layer__journal__debit-credit-col",
17725
17826
  align: "right" /* RIGHT */
17726
17827
  },
17727
- item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ React203.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0))
17828
+ item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ React204.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0))
17728
17829
  )
17729
- )), /* @__PURE__ */ React203.createElement(
17830
+ )), /* @__PURE__ */ React204.createElement(
17730
17831
  TableRow,
17731
17832
  {
17732
17833
  rowKey: "ledger-line-item-summation",
17733
17834
  variant: "summation"
17734
17835
  },
17735
- /* @__PURE__ */ React203.createElement(TableCell, { primary: true }, "Total"),
17736
- /* @__PURE__ */ React203.createElement(
17836
+ /* @__PURE__ */ React204.createElement(TableCell, { primary: true }, "Total"),
17837
+ /* @__PURE__ */ React204.createElement(
17737
17838
  TableCell,
17738
17839
  {
17739
17840
  isCurrency: true,
@@ -17743,7 +17844,7 @@ var JournalEntryDetails = () => {
17743
17844
  },
17744
17845
  (entry == null ? void 0 : entry.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)) || 0
17745
17846
  ),
17746
- /* @__PURE__ */ React203.createElement(
17847
+ /* @__PURE__ */ React204.createElement(
17747
17848
  TableCell,
17748
17849
  {
17749
17850
  isCurrency: true,
@@ -17754,10 +17855,10 @@ var JournalEntryDetails = () => {
17754
17855
  (entry == null ? void 0 : entry.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)) || 0
17755
17856
  )
17756
17857
  ))
17757
- )), /* @__PURE__ */ React203.createElement("div", { className: "Layer__journal__entry-details__reverse-btn-container" }, /* @__PURE__ */ React203.createElement(
17858
+ )), /* @__PURE__ */ React204.createElement("div", { className: "Layer__journal__entry-details__reverse-btn-container" }, /* @__PURE__ */ React204.createElement(
17758
17859
  Button,
17759
17860
  {
17760
- rightIcon: reverseEntryError ? /* @__PURE__ */ React203.createElement(AlertCircle_default, { size: 12 }) : /* @__PURE__ */ React203.createElement(RefreshCcw_default, { size: 12 }),
17861
+ rightIcon: reverseEntryError ? /* @__PURE__ */ React204.createElement(AlertCircle_default, { size: 12 }) : /* @__PURE__ */ React204.createElement(RefreshCcw_default, { size: 12 }),
17761
17862
  variant: "secondary" /* secondary */,
17762
17863
  onClick: reverseEntryProcessing ? () => {
17763
17864
  } : onReverseEntry,
@@ -17770,10 +17871,10 @@ var JournalEntryDetails = () => {
17770
17871
  };
17771
17872
 
17772
17873
  // src/components/JournalForm/JournalForm.tsx
17773
- import React205, { useContext as useContext39 } from "react";
17874
+ import React206, { useContext as useContext39 } from "react";
17774
17875
 
17775
17876
  // src/components/JournalForm/JournalFormEntryLines.tsx
17776
- import React204, { useContext as useContext38 } from "react";
17877
+ import React205, { useContext as useContext38 } from "react";
17777
17878
  var JournalFormEntryLines = ({
17778
17879
  entrylineItems,
17779
17880
  addEntryLine,
@@ -17785,14 +17886,14 @@ var JournalFormEntryLines = ({
17785
17886
  const { data: accountsData } = useContext38(ChartOfAccountsContext);
17786
17887
  const { form } = useContext38(JournalContext);
17787
17888
  const parentOptions = useParentOptions(accountsData);
17788
- return /* @__PURE__ */ React204.createElement(React204.Fragment, null, ["DEBIT", "CREDIT"].map((direction, idx) => {
17789
- return /* @__PURE__ */ React204.createElement(
17889
+ return /* @__PURE__ */ React205.createElement(React205.Fragment, null, ["DEBIT", "CREDIT"].map((direction, idx) => {
17890
+ return /* @__PURE__ */ React205.createElement(
17790
17891
  "div",
17791
17892
  {
17792
17893
  key: "Layer__journal__form__input-group-" + idx,
17793
17894
  className: "Layer__journal__form__input-group Layer__journal__form__input-group__border"
17794
17895
  },
17795
- /* @__PURE__ */ React204.createElement(
17896
+ /* @__PURE__ */ React205.createElement(
17796
17897
  Text,
17797
17898
  {
17798
17899
  className: "Layer__journal__form__input-group__title",
@@ -17807,13 +17908,13 @@ var JournalFormEntryLines = ({
17807
17908
  if (item.direction !== direction) {
17808
17909
  return null;
17809
17910
  }
17810
- return /* @__PURE__ */ React204.createElement(
17911
+ return /* @__PURE__ */ React205.createElement(
17811
17912
  "div",
17812
17913
  {
17813
17914
  className: "Layer__journal__form__input-group__line-item",
17814
17915
  key: direction + "-" + idx2
17815
17916
  },
17816
- /* @__PURE__ */ React204.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ React204.createElement(
17917
+ /* @__PURE__ */ React205.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ React205.createElement(
17817
17918
  InputWithBadge,
17818
17919
  {
17819
17920
  name: direction,
@@ -17839,14 +17940,14 @@ var JournalFormEntryLines = ({
17839
17940
  )) == null ? void 0 : _c.message
17840
17941
  }
17841
17942
  )),
17842
- /* @__PURE__ */ React204.createElement(
17943
+ /* @__PURE__ */ React205.createElement(
17843
17944
  InputGroup,
17844
17945
  {
17845
17946
  name: "account-name",
17846
17947
  label: "Account name",
17847
17948
  inline: true
17848
17949
  },
17849
- /* @__PURE__ */ React204.createElement(
17950
+ /* @__PURE__ */ React205.createElement(
17850
17951
  Select2,
17851
17952
  {
17852
17953
  options: parentOptions,
@@ -17870,18 +17971,18 @@ var JournalFormEntryLines = ({
17870
17971
  )) == null ? void 0 : _f.message
17871
17972
  }
17872
17973
  ),
17873
- idx2 >= 2 && /* @__PURE__ */ React204.createElement(
17974
+ idx2 >= 2 && /* @__PURE__ */ React205.createElement(
17874
17975
  IconButton,
17875
17976
  {
17876
17977
  className: "Layer__remove__button",
17877
17978
  onClick: () => removeEntryLine(idx2),
17878
- icon: /* @__PURE__ */ React204.createElement(Trash_default, null)
17979
+ icon: /* @__PURE__ */ React205.createElement(Trash_default, null)
17879
17980
  }
17880
17981
  )
17881
17982
  )
17882
17983
  );
17883
17984
  }),
17884
- (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > (entrylineItems == null ? void 0 : entrylineItems.length)) && /* @__PURE__ */ React204.createElement(
17985
+ (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > (entrylineItems == null ? void 0 : entrylineItems.length)) && /* @__PURE__ */ React205.createElement(
17885
17986
  TextButton,
17886
17987
  {
17887
17988
  className: "Layer__journal__add-entry-line",
@@ -17909,7 +18010,7 @@ var JournalForm = ({
17909
18010
  addEntryLine,
17910
18011
  removeEntryLine
17911
18012
  } = useContext39(JournalContext);
17912
- return /* @__PURE__ */ React205.createElement(
18013
+ return /* @__PURE__ */ React206.createElement(
17913
18014
  "form",
17914
18015
  {
17915
18016
  className: "Layer__form",
@@ -17918,7 +18019,7 @@ var JournalForm = ({
17918
18019
  submitForm();
17919
18020
  }
17920
18021
  },
17921
- /* @__PURE__ */ React205.createElement(Header2, { className: "Layer__journal__sidebar__header" }, /* @__PURE__ */ React205.createElement(HeaderRow, null, /* @__PURE__ */ React205.createElement(HeaderCol, null, /* @__PURE__ */ React205.createElement(Heading, { size: "secondary" /* secondary */, className: "title" }, (_a = stringOverrides == null ? void 0 : stringOverrides.header) != null ? _a : "Add New Entry")), /* @__PURE__ */ React205.createElement(HeaderCol, { className: "actions" }, /* @__PURE__ */ React205.createElement(
18022
+ /* @__PURE__ */ React206.createElement(Header2, { className: "Layer__journal__sidebar__header" }, /* @__PURE__ */ React206.createElement(HeaderRow, null, /* @__PURE__ */ React206.createElement(HeaderCol, null, /* @__PURE__ */ React206.createElement(Heading, { size: "secondary" /* secondary */, className: "title" }, (_a = stringOverrides == null ? void 0 : stringOverrides.header) != null ? _a : "Add New Entry")), /* @__PURE__ */ React206.createElement(HeaderCol, { className: "actions" }, /* @__PURE__ */ React206.createElement(
17922
18023
  Button,
17923
18024
  {
17924
18025
  type: "button",
@@ -17927,7 +18028,7 @@ var JournalForm = ({
17927
18028
  disabled: sendingForm
17928
18029
  },
17929
18030
  (stringOverrides == null ? void 0 : stringOverrides.cancelButton) || "Cancel"
17930
- ), apiError && /* @__PURE__ */ React205.createElement(
18031
+ ), apiError && /* @__PURE__ */ React206.createElement(
17931
18032
  RetryButton,
17932
18033
  {
17933
18034
  type: "submit",
@@ -17936,7 +18037,7 @@ var JournalForm = ({
17936
18037
  disabled: sendingForm
17937
18038
  },
17938
18039
  (stringOverrides == null ? void 0 : stringOverrides.retryButton) || "Retry"
17939
- ), !apiError && /* @__PURE__ */ React205.createElement(
18040
+ ), !apiError && /* @__PURE__ */ React206.createElement(
17940
18041
  SubmitButton,
17941
18042
  {
17942
18043
  type: "submit",
@@ -17946,7 +18047,7 @@ var JournalForm = ({
17946
18047
  },
17947
18048
  (stringOverrides == null ? void 0 : stringOverrides.saveButton) || "Save"
17948
18049
  )))),
17949
- apiError && /* @__PURE__ */ React205.createElement(
18050
+ apiError && /* @__PURE__ */ React206.createElement(
17950
18051
  Text,
17951
18052
  {
17952
18053
  size: "sm" /* sm */,
@@ -17954,7 +18055,7 @@ var JournalForm = ({
17954
18055
  },
17955
18056
  apiError
17956
18057
  ),
17957
- /* @__PURE__ */ React205.createElement("div", { className: "Layer__journal__form__input-group" }, /* @__PURE__ */ React205.createElement(InputGroup, { name: "date", label: "Effective Date", inline: true }, /* @__PURE__ */ React205.createElement("div", { className: "Layer__journal__datepicker__wrapper" }, /* @__PURE__ */ React205.createElement(
18058
+ /* @__PURE__ */ React206.createElement("div", { className: "Layer__journal__form__input-group" }, /* @__PURE__ */ React206.createElement(InputGroup, { name: "date", label: "Effective Date", inline: true }, /* @__PURE__ */ React206.createElement("div", { className: "Layer__journal__datepicker__wrapper" }, /* @__PURE__ */ React206.createElement(
17958
18059
  DatePicker,
17959
18060
  {
17960
18061
  selected: (form == null ? void 0 : form.data.entry_at) ? new Date(form == null ? void 0 : form.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -17967,7 +18068,7 @@ var JournalForm = ({
17967
18068
  placeholderText: "Select date",
17968
18069
  currentDateOption: false
17969
18070
  }
17970
- ), /* @__PURE__ */ React205.createElement(
18071
+ ), /* @__PURE__ */ React206.createElement(
17971
18072
  DatePicker,
17972
18073
  {
17973
18074
  selected: (form == null ? void 0 : form.data.entry_at) ? new Date(form == null ? void 0 : form.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -17981,7 +18082,7 @@ var JournalForm = ({
17981
18082
  currentDateOption: false
17982
18083
  }
17983
18084
  )))),
17984
- /* @__PURE__ */ React205.createElement(
18085
+ /* @__PURE__ */ React206.createElement(
17985
18086
  JournalFormEntryLines,
17986
18087
  {
17987
18088
  entrylineItems: (form == null ? void 0 : form.data.line_items) || [],
@@ -17992,7 +18093,7 @@ var JournalForm = ({
17992
18093
  config
17993
18094
  }
17994
18095
  ),
17995
- /* @__PURE__ */ React205.createElement("div", { className: "Layer__journal__form__input-group Layer__journal__form__input-group__textarea" }, /* @__PURE__ */ React205.createElement(InputGroup, { name: "memo", label: "Notes" }, /* @__PURE__ */ React205.createElement(
18096
+ /* @__PURE__ */ React206.createElement("div", { className: "Layer__journal__form__input-group Layer__journal__form__input-group__textarea" }, /* @__PURE__ */ React206.createElement(InputGroup, { name: "memo", label: "Notes" }, /* @__PURE__ */ React206.createElement(
17996
18097
  Textarea,
17997
18098
  {
17998
18099
  name: "memo",
@@ -18002,7 +18103,7 @@ var JournalForm = ({
18002
18103
  disabled: sendingForm
18003
18104
  }
18004
18105
  ))),
18005
- /* @__PURE__ */ React205.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ React205.createElement(
18106
+ /* @__PURE__ */ React206.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ React206.createElement(
18006
18107
  Button,
18007
18108
  {
18008
18109
  type: "button",
@@ -18011,7 +18112,7 @@ var JournalForm = ({
18011
18112
  disabled: sendingForm
18012
18113
  },
18013
18114
  (stringOverrides == null ? void 0 : stringOverrides.cancelButton) || "Cancel"
18014
- ), apiError && /* @__PURE__ */ React205.createElement(
18115
+ ), apiError && /* @__PURE__ */ React206.createElement(
18015
18116
  RetryButton,
18016
18117
  {
18017
18118
  type: "submit",
@@ -18020,7 +18121,7 @@ var JournalForm = ({
18020
18121
  disabled: sendingForm
18021
18122
  },
18022
18123
  (stringOverrides == null ? void 0 : stringOverrides.retryButton) || "Retry"
18023
- ), !apiError && /* @__PURE__ */ React205.createElement(
18124
+ ), !apiError && /* @__PURE__ */ React206.createElement(
18024
18125
  SubmitButton,
18025
18126
  {
18026
18127
  type: "submit",
@@ -18041,13 +18142,13 @@ var JournalSidebar = ({
18041
18142
  }) => {
18042
18143
  const { selectedEntryId } = useContext40(JournalContext);
18043
18144
  if (selectedEntryId !== "new") {
18044
- return /* @__PURE__ */ React206.createElement(JournalEntryDetails, null);
18145
+ return /* @__PURE__ */ React207.createElement(JournalEntryDetails, null);
18045
18146
  }
18046
- return /* @__PURE__ */ React206.createElement(JournalForm, { config, stringOverrides });
18147
+ return /* @__PURE__ */ React207.createElement(JournalForm, { config, stringOverrides });
18047
18148
  };
18048
18149
 
18049
18150
  // src/components/JournalTable/JournalTable.tsx
18050
- import React207, { useContext as useContext41, useEffect as useEffect45 } from "react";
18151
+ import React208, { useContext as useContext41, useEffect as useEffect45 } from "react";
18051
18152
  import { parseISO as parseISO14, format as formatTime12 } from "date-fns";
18052
18153
  var accountName = (row) => {
18053
18154
  if ("account" in row) {
@@ -18062,7 +18163,7 @@ var JournalTable = ({
18062
18163
  view,
18063
18164
  data,
18064
18165
  stringOverrides
18065
- }) => /* @__PURE__ */ React207.createElement(TableProvider, null, /* @__PURE__ */ React207.createElement(
18166
+ }) => /* @__PURE__ */ React208.createElement(TableProvider, null, /* @__PURE__ */ React208.createElement(
18066
18167
  JournalTableContent,
18067
18168
  {
18068
18169
  view,
@@ -18084,7 +18185,7 @@ var JournalTableContent = ({
18084
18185
  const renderJournalRow = (row, index, rowKey, depth) => {
18085
18186
  const expandable = !!row.line_items && row.line_items.length > 0;
18086
18187
  const expanded = expandable ? isOpen(rowKey) : true;
18087
- return /* @__PURE__ */ React207.createElement(React207.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ React207.createElement(
18188
+ return /* @__PURE__ */ React208.createElement(React208.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ React208.createElement(
18088
18189
  TableRow,
18089
18190
  {
18090
18191
  rowKey: rowKey + "-" + index,
@@ -18102,7 +18203,7 @@ var JournalTableContent = ({
18102
18203
  },
18103
18204
  depth
18104
18205
  },
18105
- /* @__PURE__ */ React207.createElement(
18206
+ /* @__PURE__ */ React208.createElement(
18106
18207
  TableCell,
18107
18208
  {
18108
18209
  withExpandIcon: expandable,
@@ -18113,16 +18214,16 @@ var JournalTableContent = ({
18113
18214
  },
18114
18215
  entryNumber(row)
18115
18216
  ),
18116
- /* @__PURE__ */ React207.createElement(TableCell, null, row.entry_at && formatTime12(parseISO14(row.entry_at), DATE_FORMAT)),
18117
- /* @__PURE__ */ React207.createElement(TableCell, null, humanizeEnum(row.entry_type)),
18118
- /* @__PURE__ */ React207.createElement(TableCell, null, "(", row.line_items.length, ")"),
18119
- /* @__PURE__ */ React207.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
18217
+ /* @__PURE__ */ React208.createElement(TableCell, null, row.entry_at && formatTime12(parseISO14(row.entry_at), DATE_FORMAT)),
18218
+ /* @__PURE__ */ React208.createElement(TableCell, null, humanizeEnum(row.entry_type)),
18219
+ /* @__PURE__ */ React208.createElement(TableCell, null, "(", row.line_items.length, ")"),
18220
+ /* @__PURE__ */ React208.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
18120
18221
  row.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
18121
18222
  )),
18122
- /* @__PURE__ */ React207.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
18223
+ /* @__PURE__ */ React208.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
18123
18224
  row.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
18124
18225
  ))
18125
- ), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */ React207.createElement(
18226
+ ), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */ React208.createElement(
18126
18227
  TableRow,
18127
18228
  {
18128
18229
  key: rowKey + "-" + index + "-" + subIdx,
@@ -18130,19 +18231,104 @@ var JournalTableContent = ({
18130
18231
  depth: depth + 1,
18131
18232
  selected: selectedEntryId === row.id
18132
18233
  },
18133
- /* @__PURE__ */ React207.createElement(TableCell, null),
18134
- /* @__PURE__ */ React207.createElement(TableCell, null),
18135
- /* @__PURE__ */ React207.createElement(TableCell, null),
18136
- /* @__PURE__ */ React207.createElement(TableCell, null, accountName(subItem)),
18137
- subItem.direction === "DEBIT" && subItem.amount >= 0 ? /* @__PURE__ */ React207.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ React207.createElement(TableCell, null),
18138
- subItem.direction === "CREDIT" && subItem.amount >= 0 ? /* @__PURE__ */ React207.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ React207.createElement(TableCell, null)
18234
+ /* @__PURE__ */ React208.createElement(TableCell, null),
18235
+ /* @__PURE__ */ React208.createElement(TableCell, null),
18236
+ /* @__PURE__ */ React208.createElement(TableCell, null),
18237
+ /* @__PURE__ */ React208.createElement(TableCell, null, accountName(subItem)),
18238
+ subItem.direction === "DEBIT" && subItem.amount >= 0 ? /* @__PURE__ */ React208.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ React208.createElement(TableCell, null),
18239
+ subItem.direction === "CREDIT" && subItem.amount >= 0 ? /* @__PURE__ */ React208.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ React208.createElement(TableCell, null)
18139
18240
  )));
18140
18241
  };
18141
- return /* @__PURE__ */ React207.createElement(Table, { borderCollapse: "collapse" }, /* @__PURE__ */ React207.createElement(TableHead, null, /* @__PURE__ */ React207.createElement(TableRow, { isHeadRow: true, rowKey: "journal-head-row" }, /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.idColumnHeader) || "Id"), /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.dateColumnHeader) || "Date"), /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.transactionColumnHeader) || "Transaction"), /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.accountColumnHeader) || "Account Name"), /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.debitColumnHeader) || "Debit"), /* @__PURE__ */ React207.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.creditColumnHeader) || "Credit"))), /* @__PURE__ */ React207.createElement(TableBody, null, data.map(
18242
+ return /* @__PURE__ */ React208.createElement(Table, { borderCollapse: "collapse" }, /* @__PURE__ */ React208.createElement(TableHead, null, /* @__PURE__ */ React208.createElement(TableRow, { isHeadRow: true, rowKey: "journal-head-row" }, /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.idColumnHeader) || "Id"), /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.dateColumnHeader) || "Date"), /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.transactionColumnHeader) || "Transaction"), /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.accountColumnHeader) || "Account Name"), /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.debitColumnHeader) || "Debit"), /* @__PURE__ */ React208.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.creditColumnHeader) || "Credit"))), /* @__PURE__ */ React208.createElement(TableBody, null, data.map(
18142
18243
  (entry, idx) => renderJournalRow(entry, idx, `journal-row-${entry.id}`, 0)
18143
18244
  )));
18144
18245
  };
18145
18246
 
18247
+ // src/components/Journal/download/JournalEntriesDownloadButton.tsx
18248
+ import React209 from "react";
18249
+
18250
+ // src/components/Journal/download/useJournalEntriesDownload.ts
18251
+ import useSWRMutation5 from "swr/mutation";
18252
+ function buildKey5({
18253
+ access_token: accessToken,
18254
+ apiUrl,
18255
+ businessId,
18256
+ startCutoff,
18257
+ endCutoff
18258
+ }) {
18259
+ if (accessToken && apiUrl) {
18260
+ return {
18261
+ accessToken,
18262
+ apiUrl,
18263
+ businessId,
18264
+ startCutoff,
18265
+ endCutoff,
18266
+ tags: ["#journal-entries", "#exports", "#csv"]
18267
+ };
18268
+ }
18269
+ }
18270
+ function useJournalEntriesDownload({
18271
+ startCutoff,
18272
+ endCutoff,
18273
+ onSuccess
18274
+ }) {
18275
+ const { data: auth } = useAuth();
18276
+ const { businessId } = useLayerContext();
18277
+ return useSWRMutation5(
18278
+ () => buildKey5(__spreadProps(__spreadValues({}, auth), {
18279
+ businessId,
18280
+ startCutoff,
18281
+ endCutoff
18282
+ })),
18283
+ ({ accessToken, apiUrl, businessId: businessId2, startCutoff: startCutoff2, endCutoff: endCutoff2 }) => getJournalEntriesCSV(
18284
+ apiUrl,
18285
+ accessToken,
18286
+ {
18287
+ params: {
18288
+ businessId: businessId2,
18289
+ startCutoff: startCutoff2 == null ? void 0 : startCutoff2.toISOString(),
18290
+ endCutoff: endCutoff2 == null ? void 0 : endCutoff2.toISOString()
18291
+ }
18292
+ }
18293
+ )().then(({ data }) => {
18294
+ if (onSuccess) {
18295
+ return onSuccess(data);
18296
+ }
18297
+ }),
18298
+ {
18299
+ revalidate: false,
18300
+ throwOnError: false
18301
+ }
18302
+ );
18303
+ }
18304
+
18305
+ // src/components/Journal/download/JournalEntriesDownloadButton.tsx
18306
+ function JournalEntriesDownloadButton({
18307
+ startCutoff,
18308
+ endCutoff,
18309
+ iconOnly
18310
+ }) {
18311
+ const { invisibleDownloadRef, triggerInvisibleDownload } = useInvisibleDownload();
18312
+ const { trigger, isMutating, error } = useJournalEntriesDownload({
18313
+ startCutoff,
18314
+ endCutoff,
18315
+ onSuccess: ({ presignedUrl }) => triggerInvisibleDownload({ url: presignedUrl })
18316
+ });
18317
+ return /* @__PURE__ */ React209.createElement(React209.Fragment, null, /* @__PURE__ */ React209.createElement(
18318
+ DownloadButton,
18319
+ {
18320
+ iconOnly,
18321
+ onClick: () => {
18322
+ trigger();
18323
+ },
18324
+ isDownloading: isMutating,
18325
+ requestFailed: Boolean(error),
18326
+ text: "Download CSV",
18327
+ retryText: "Retry"
18328
+ }
18329
+ ), /* @__PURE__ */ React209.createElement(InvisibleDownload_default, { ref: invisibleDownloadRef }));
18330
+ }
18331
+
18146
18332
  // src/components/JournalTable/JournalTableWithPanel.tsx
18147
18333
  var COMPONENT_NAME6 = "journal";
18148
18334
  var JournalTableWithPanel = ({
@@ -18168,10 +18354,10 @@ var JournalTableWithPanel = ({
18168
18354
  const lastPageIndex = firstPageIndex + pageSize;
18169
18355
  return (_a = rawData == null ? void 0 : rawData.sort((a, b) => Date.parse(b.entry_at) - Date.parse(a.entry_at))) == null ? void 0 : _a.slice(firstPageIndex, lastPageIndex);
18170
18356
  }, [rawData, currentPage]);
18171
- return /* @__PURE__ */ React208.createElement(
18357
+ return /* @__PURE__ */ React210.createElement(
18172
18358
  Panel,
18173
18359
  {
18174
- sidebar: /* @__PURE__ */ React208.createElement(
18360
+ sidebar: /* @__PURE__ */ React210.createElement(
18175
18361
  JournalSidebar,
18176
18362
  {
18177
18363
  parentRef: containerRef,
@@ -18182,7 +18368,7 @@ var JournalTableWithPanel = ({
18182
18368
  sidebarIsOpen: Boolean(selectedEntryId),
18183
18369
  parentRef: containerRef
18184
18370
  },
18185
- /* @__PURE__ */ React208.createElement(
18371
+ /* @__PURE__ */ React210.createElement(
18186
18372
  Header2,
18187
18373
  {
18188
18374
  className: `Layer__${COMPONENT_NAME6}__header`,
@@ -18190,7 +18376,7 @@ var JournalTableWithPanel = ({
18190
18376
  sticky: true,
18191
18377
  rounded: true
18192
18378
  },
18193
- /* @__PURE__ */ React208.createElement(HeaderRow, null, /* @__PURE__ */ React208.createElement(HeaderCol, null, /* @__PURE__ */ React208.createElement(
18379
+ /* @__PURE__ */ React210.createElement(HeaderRow, null, /* @__PURE__ */ React210.createElement(HeaderCol, null, /* @__PURE__ */ React210.createElement(
18194
18380
  Heading,
18195
18381
  {
18196
18382
  className: `Layer__${COMPONENT_NAME6}__title`,
@@ -18199,25 +18385,30 @@ var JournalTableWithPanel = ({
18199
18385
  (stringOverrides == null ? void 0 : stringOverrides.componentTitle) || "Journal"
18200
18386
  )))
18201
18387
  ),
18202
- /* @__PURE__ */ React208.createElement(Header2, null, /* @__PURE__ */ React208.createElement(HeaderRow, null, /* @__PURE__ */ React208.createElement(HeaderCol, null, /* @__PURE__ */ React208.createElement(
18388
+ /* @__PURE__ */ React210.createElement(Header2, null, /* @__PURE__ */ React210.createElement(HeaderRow, null, /* @__PURE__ */ React210.createElement(HeaderCol, null, /* @__PURE__ */ React210.createElement(
18203
18389
  Heading,
18204
18390
  {
18205
18391
  size: "secondary" /* secondary */,
18206
18392
  className: `Layer__${COMPONENT_NAME6}__subtitle`
18207
18393
  },
18208
18394
  (stringOverrides == null ? void 0 : stringOverrides.componentSubtitle) || "Entries"
18209
- )), /* @__PURE__ */ React208.createElement(HeaderCol, null, /* @__PURE__ */ React208.createElement(
18395
+ )), /* @__PURE__ */ React210.createElement(HeaderCol, null, /* @__PURE__ */ React210.createElement(
18396
+ JournalEntriesDownloadButton,
18397
+ {
18398
+ iconOnly: ["mobile", "tablet"].includes(view)
18399
+ }
18400
+ ), /* @__PURE__ */ React210.createElement(
18210
18401
  Button,
18211
18402
  {
18212
18403
  onClick: () => addEntry(),
18213
18404
  disabled: isLoading,
18214
18405
  iconOnly: view === "mobile",
18215
- leftIcon: view === "mobile" && /* @__PURE__ */ React208.createElement(PlusIcon_default, { size: 14 })
18406
+ leftIcon: view === "mobile" && /* @__PURE__ */ React210.createElement(PlusIcon_default, { size: 14 })
18216
18407
  },
18217
18408
  (stringOverrides == null ? void 0 : stringOverrides.addEntryButton) || "Add Entry"
18218
18409
  )))),
18219
- data && /* @__PURE__ */ React208.createElement(JournalTable, { view: "desktop", data }),
18220
- data && /* @__PURE__ */ React208.createElement("div", { className: "Layer__journal__pagination" }, /* @__PURE__ */ React208.createElement(
18410
+ data && /* @__PURE__ */ React210.createElement(JournalTable, { view: "desktop", data }),
18411
+ data && /* @__PURE__ */ React210.createElement("div", { className: "Layer__journal__pagination" }, /* @__PURE__ */ React210.createElement(
18221
18412
  Pagination,
18222
18413
  {
18223
18414
  currentPage,
@@ -18226,7 +18417,7 @@ var JournalTableWithPanel = ({
18226
18417
  onPageChange: (page) => setCurrentPage(page)
18227
18418
  }
18228
18419
  )),
18229
- (data == null ? void 0 : data.length) === 0 && !isLoading && !error && /* @__PURE__ */ React208.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React208.createElement(
18420
+ (data == null ? void 0 : data.length) === 0 && !isLoading && !error && /* @__PURE__ */ React210.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React210.createElement(
18230
18421
  DataState,
18231
18422
  {
18232
18423
  status: "allDone" /* allDone */,
@@ -18234,7 +18425,7 @@ var JournalTableWithPanel = ({
18234
18425
  description: "There are no entries in the journal."
18235
18426
  }
18236
18427
  )),
18237
- error ? /* @__PURE__ */ React208.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React208.createElement(
18428
+ error ? /* @__PURE__ */ React210.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React210.createElement(
18238
18429
  DataState,
18239
18430
  {
18240
18431
  status: "failed" /* failed */,
@@ -18244,7 +18435,7 @@ var JournalTableWithPanel = ({
18244
18435
  isLoading: isValidating || isLoading
18245
18436
  }
18246
18437
  )) : null,
18247
- (!data || isLoading) && !error ? /* @__PURE__ */ React208.createElement("div", { className: `Layer__${COMPONENT_NAME6}__loader-container` }, /* @__PURE__ */ React208.createElement(Loader2, null)) : null
18438
+ (!data || isLoading) && !error ? /* @__PURE__ */ React210.createElement("div", { className: `Layer__${COMPONENT_NAME6}__loader-container` }, /* @__PURE__ */ React210.createElement(Loader2, null)) : null
18248
18439
  );
18249
18440
  };
18250
18441
 
@@ -18257,7 +18448,7 @@ var JOURNAL_CONFIG = {
18257
18448
  var Journal = (props) => {
18258
18449
  const JournalContextData = useJournal();
18259
18450
  const AccountsContextData = useChartOfAccounts();
18260
- return /* @__PURE__ */ React209.createElement(ChartOfAccountsContext.Provider, { value: AccountsContextData }, /* @__PURE__ */ React209.createElement(JournalContext.Provider, { value: JournalContextData }, /* @__PURE__ */ React209.createElement(JournalContent, __spreadValues({}, props))));
18451
+ return /* @__PURE__ */ React211.createElement(ChartOfAccountsContext.Provider, { value: AccountsContextData }, /* @__PURE__ */ React211.createElement(JournalContext.Provider, { value: JournalContextData }, /* @__PURE__ */ React211.createElement(JournalContent, __spreadValues({}, props))));
18261
18452
  };
18262
18453
  var JournalContent = ({
18263
18454
  asWidget,
@@ -18265,7 +18456,7 @@ var JournalContent = ({
18265
18456
  stringOverrides
18266
18457
  }) => {
18267
18458
  const { view, containerRef } = useElementViewSize();
18268
- return /* @__PURE__ */ React209.createElement(Container, { name: "journal", ref: containerRef, asWidget }, /* @__PURE__ */ React209.createElement(
18459
+ return /* @__PURE__ */ React211.createElement(Container, { name: "journal", ref: containerRef, asWidget }, /* @__PURE__ */ React211.createElement(
18269
18460
  JournalTableWithPanel,
18270
18461
  {
18271
18462
  view,
@@ -18277,7 +18468,7 @@ var JournalContent = ({
18277
18468
  };
18278
18469
 
18279
18470
  // src/components/Tasks/Tasks.tsx
18280
- import React218, {
18471
+ import React220, {
18281
18472
  createContext as createContext20,
18282
18473
  useContext as useContext47,
18283
18474
  useEffect as useEffect48,
@@ -18491,13 +18682,13 @@ var useTasks = ({
18491
18682
  };
18492
18683
 
18493
18684
  // src/components/TasksHeader/TasksHeader.tsx
18494
- import React211, { useContext as useContext43 } from "react";
18685
+ import React213, { useContext as useContext43 } from "react";
18495
18686
 
18496
18687
  // src/icons/ProgressIcon.tsx
18497
- import * as React210 from "react";
18688
+ import * as React212 from "react";
18498
18689
  var ProgressIcon = (_a) => {
18499
18690
  var _b = _a, { size = 12 } = _b, props = __objRest(_b, ["size"]);
18500
- return /* @__PURE__ */ React210.createElement(
18691
+ return /* @__PURE__ */ React212.createElement(
18501
18692
  "svg",
18502
18693
  __spreadProps(__spreadValues({
18503
18694
  xmlns: "http://www.w3.org/2000/svg",
@@ -18507,7 +18698,7 @@ var ProgressIcon = (_a) => {
18507
18698
  width: size,
18508
18699
  height: size
18509
18700
  }),
18510
- /* @__PURE__ */ React210.createElement(
18701
+ /* @__PURE__ */ React212.createElement(
18511
18702
  "path",
18512
18703
  {
18513
18704
  d: "M9 1.5V4.5",
@@ -18516,7 +18707,7 @@ var ProgressIcon = (_a) => {
18516
18707
  strokeLinejoin: "round"
18517
18708
  }
18518
18709
  ),
18519
- /* @__PURE__ */ React210.createElement(
18710
+ /* @__PURE__ */ React212.createElement(
18520
18711
  "path",
18521
18712
  {
18522
18713
  d: "M9 13.5V16.5",
@@ -18525,7 +18716,7 @@ var ProgressIcon = (_a) => {
18525
18716
  strokeLinejoin: "round"
18526
18717
  }
18527
18718
  ),
18528
- /* @__PURE__ */ React210.createElement(
18719
+ /* @__PURE__ */ React212.createElement(
18529
18720
  "path",
18530
18721
  {
18531
18722
  d: "M3.6975 3.6975L5.82 5.82",
@@ -18534,7 +18725,7 @@ var ProgressIcon = (_a) => {
18534
18725
  strokeLinejoin: "round"
18535
18726
  }
18536
18727
  ),
18537
- /* @__PURE__ */ React210.createElement(
18728
+ /* @__PURE__ */ React212.createElement(
18538
18729
  "path",
18539
18730
  {
18540
18731
  d: "M12.18 12.18L14.3025 14.3025",
@@ -18543,7 +18734,7 @@ var ProgressIcon = (_a) => {
18543
18734
  strokeLinejoin: "round"
18544
18735
  }
18545
18736
  ),
18546
- /* @__PURE__ */ React210.createElement(
18737
+ /* @__PURE__ */ React212.createElement(
18547
18738
  "path",
18548
18739
  {
18549
18740
  d: "M1.5 9H4.5",
@@ -18552,7 +18743,7 @@ var ProgressIcon = (_a) => {
18552
18743
  strokeLinejoin: "round"
18553
18744
  }
18554
18745
  ),
18555
- /* @__PURE__ */ React210.createElement(
18746
+ /* @__PURE__ */ React212.createElement(
18556
18747
  "path",
18557
18748
  {
18558
18749
  d: "M13.5 9H16.5",
@@ -18561,7 +18752,7 @@ var ProgressIcon = (_a) => {
18561
18752
  strokeLinejoin: "round"
18562
18753
  }
18563
18754
  ),
18564
- /* @__PURE__ */ React210.createElement(
18755
+ /* @__PURE__ */ React212.createElement(
18565
18756
  "path",
18566
18757
  {
18567
18758
  d: "M3.6975 14.3025L5.82 12.18",
@@ -18570,7 +18761,7 @@ var ProgressIcon = (_a) => {
18570
18761
  strokeLinejoin: "round"
18571
18762
  }
18572
18763
  ),
18573
- /* @__PURE__ */ React210.createElement(
18764
+ /* @__PURE__ */ React212.createElement(
18574
18765
  "path",
18575
18766
  {
18576
18767
  d: "M12.18 5.82L14.3025 3.6975",
@@ -18588,22 +18779,22 @@ import { endOfYear as endOfYear5, getYear as getYear3, startOfYear as startOfYea
18588
18779
  import classNames66 from "classnames";
18589
18780
  var ICONS = {
18590
18781
  loading: {
18591
- icon: /* @__PURE__ */ React211.createElement(ProgressIcon_default, { size: 12, className: "Layer__anim--rotating" }),
18782
+ icon: /* @__PURE__ */ React213.createElement(ProgressIcon_default, { size: 12, className: "Layer__anim--rotating" }),
18592
18783
  text: "Loading",
18593
18784
  badge: "default" /* DEFAULT */
18594
18785
  },
18595
18786
  done: {
18596
- icon: /* @__PURE__ */ React211.createElement(Check_default, { size: 12 }),
18787
+ icon: /* @__PURE__ */ React213.createElement(Check_default, { size: 12 }),
18597
18788
  text: "Done",
18598
18789
  badge: "success" /* SUCCESS */
18599
18790
  },
18600
18791
  pending: {
18601
- icon: /* @__PURE__ */ React211.createElement(AlertCircle_default, { size: 12 }),
18792
+ icon: /* @__PURE__ */ React213.createElement(AlertCircle_default, { size: 12 }),
18602
18793
  text: "In progress",
18603
18794
  badge: "warning" /* WARNING */
18604
18795
  },
18605
18796
  refresh: {
18606
- icon: /* @__PURE__ */ React211.createElement(RefreshCcw_default, { size: 12 }),
18797
+ icon: /* @__PURE__ */ React213.createElement(RefreshCcw_default, { size: 12 }),
18607
18798
  text: "Refresh",
18608
18799
  badge: "default" /* DEFAULT */
18609
18800
  }
@@ -18626,7 +18817,7 @@ var TasksHeader = ({
18626
18817
  const completedTasks = tasks == null ? void 0 : tasks.filter((task) => isComplete(task.status)).length;
18627
18818
  const badgeVariant = completedTasks === (tasks == null ? void 0 : tasks.length) ? ICONS.done : ICONS.pending;
18628
18819
  const minDate = getEarliestDateToBrowse(business);
18629
- return /* @__PURE__ */ React211.createElement("div", { className: classNames66("Layer__tasks-header", collapsable && "Layer__tasks-header--collapsable") }, /* @__PURE__ */ React211.createElement("div", { className: "Layer__tasks-header__left-col" }, /* @__PURE__ */ React211.createElement("div", { className: "Layer__tasks-header__left-col__title" }, /* @__PURE__ */ React211.createElement(Text, { size: "lg" /* lg */ }, tasksHeader), loadedStatus !== "complete" && !open ? /* @__PURE__ */ React211.createElement(Badge, { variant: ICONS.loading.badge, icon: ICONS.loading.icon }, ICONS.loading.text) : loadedStatus === "complete" && !open && (!tasks || error) ? /* @__PURE__ */ React211.createElement(
18820
+ return /* @__PURE__ */ React213.createElement("div", { className: classNames66("Layer__tasks-header", collapsable && "Layer__tasks-header--collapsable") }, /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-header__left-col" }, /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-header__left-col__title" }, /* @__PURE__ */ React213.createElement(Text, { size: "lg" /* lg */ }, tasksHeader), loadedStatus !== "complete" && !open ? /* @__PURE__ */ React213.createElement(Badge, { variant: ICONS.loading.badge, icon: ICONS.loading.icon }, ICONS.loading.text) : loadedStatus === "complete" && !open && (!tasks || error) ? /* @__PURE__ */ React213.createElement(
18630
18821
  Badge,
18631
18822
  {
18632
18823
  onClick: () => refetch(),
@@ -18634,7 +18825,7 @@ var TasksHeader = ({
18634
18825
  icon: ICONS.refresh.icon
18635
18826
  },
18636
18827
  ICONS.refresh.text
18637
- ) : loadedStatus === "complete" && !open ? /* @__PURE__ */ React211.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text) : open ? null : /* @__PURE__ */ React211.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text)), /* @__PURE__ */ React211.createElement("div", { className: "Layer__tasks-header__left-col__controls" }, /* @__PURE__ */ React211.createElement(
18828
+ ) : loadedStatus === "complete" && !open ? /* @__PURE__ */ React213.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text) : open ? null : /* @__PURE__ */ React213.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text)), /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-header__left-col__controls" }, /* @__PURE__ */ React213.createElement(
18638
18829
  DatePicker,
18639
18830
  {
18640
18831
  selected: dateRange.startDate,
@@ -18654,17 +18845,17 @@ var TasksHeader = ({
18654
18845
  navigateArrows: ["mobile", "desktop"],
18655
18846
  disabled: minDate && getYear3(minDate) === getYear3(/* @__PURE__ */ new Date())
18656
18847
  }
18657
- ), collapsable && /* @__PURE__ */ React211.createElement("div", { className: "Layer__tasks-header__left-col__expand" }, /* @__PURE__ */ React211.createElement(ExpandButton, { onClick: toggleContent, collapsed: !open })))));
18848
+ ), collapsable && /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-header__left-col__expand" }, /* @__PURE__ */ React213.createElement(ExpandButton, { onClick: toggleContent, collapsed: !open })))));
18658
18849
  };
18659
18850
 
18660
18851
  // src/components/TasksList/TasksList.tsx
18661
- import React214, { useContext as useContext45, useMemo as useMemo33, useState as useState59 } from "react";
18852
+ import React216, { useContext as useContext45, useMemo as useMemo33, useState as useState59 } from "react";
18662
18853
 
18663
18854
  // src/icons/SmileIcon.tsx
18664
- import * as React212 from "react";
18855
+ import * as React214 from "react";
18665
18856
  var SmileIcon = (_a) => {
18666
18857
  var _b = _a, { size = 12 } = _b, props = __objRest(_b, ["size"]);
18667
- return /* @__PURE__ */ React212.createElement(
18858
+ return /* @__PURE__ */ React214.createElement(
18668
18859
  "svg",
18669
18860
  __spreadProps(__spreadValues({
18670
18861
  viewBox: "0 0 12 12",
@@ -18674,7 +18865,7 @@ var SmileIcon = (_a) => {
18674
18865
  width: size,
18675
18866
  height: size
18676
18867
  }),
18677
- /* @__PURE__ */ React212.createElement(
18868
+ /* @__PURE__ */ React214.createElement(
18678
18869
  "path",
18679
18870
  {
18680
18871
  d: "M6.5 11.5C9.26142 11.5 11.5 9.26142 11.5 6.5C11.5 3.73858 9.26142 1.5 6.5 1.5C3.73858 1.5 1.5 3.73858 1.5 6.5C1.5 9.26142 3.73858 11.5 6.5 11.5Z",
@@ -18683,7 +18874,7 @@ var SmileIcon = (_a) => {
18683
18874
  strokeLinejoin: "round"
18684
18875
  }
18685
18876
  ),
18686
- /* @__PURE__ */ React212.createElement(
18877
+ /* @__PURE__ */ React214.createElement(
18687
18878
  "path",
18688
18879
  {
18689
18880
  d: "M4.5 7.5C4.5 7.5 5.25 8.5 6.5 8.5C7.75 8.5 8.5 7.5 8.5 7.5",
@@ -18692,7 +18883,7 @@ var SmileIcon = (_a) => {
18692
18883
  strokeLinejoin: "round"
18693
18884
  }
18694
18885
  ),
18695
- /* @__PURE__ */ React212.createElement(
18886
+ /* @__PURE__ */ React214.createElement(
18696
18887
  "path",
18697
18888
  {
18698
18889
  d: "M5 5H5.005",
@@ -18701,7 +18892,7 @@ var SmileIcon = (_a) => {
18701
18892
  strokeLinejoin: "round"
18702
18893
  }
18703
18894
  ),
18704
- /* @__PURE__ */ React212.createElement(
18895
+ /* @__PURE__ */ React214.createElement(
18705
18896
  "path",
18706
18897
  {
18707
18898
  d: "M8 5H8.005",
@@ -18715,7 +18906,7 @@ var SmileIcon = (_a) => {
18715
18906
  var SmileIcon_default = SmileIcon;
18716
18907
 
18717
18908
  // src/components/TasksListItem/TasksListItem.tsx
18718
- import React213, { useContext as useContext44, useEffect as useEffect47, useMemo as useMemo32, useState as useState58 } from "react";
18909
+ import React215, { useContext as useContext44, useEffect as useEffect47, useMemo as useMemo32, useState as useState58 } from "react";
18719
18910
  import classNames67 from "classnames";
18720
18911
  var TasksListItem = ({
18721
18912
  task,
@@ -18752,7 +18943,7 @@ var TasksListItem = ({
18752
18943
  if (task.user_response_type === "UPLOAD_DOCUMENT") {
18753
18944
  if (task.status === "TODO") {
18754
18945
  if (!selectedFiles) {
18755
- return /* @__PURE__ */ React213.createElement(
18946
+ return /* @__PURE__ */ React215.createElement(
18756
18947
  FileInput,
18757
18948
  {
18758
18949
  onUpload: (files) => {
@@ -18763,10 +18954,19 @@ var TasksListItem = ({
18763
18954
  }
18764
18955
  );
18765
18956
  } else {
18766
- return /* @__PURE__ */ React213.createElement(
18957
+ return /* @__PURE__ */ React215.createElement(React215.Fragment, null, /* @__PURE__ */ React215.createElement(
18767
18958
  Button,
18768
18959
  {
18769
18960
  variant: "secondary" /* secondary */,
18961
+ onClick: () => __async(void 0, null, function* () {
18962
+ setSelectedFiles(void 0);
18963
+ })
18964
+ },
18965
+ "Cancel"
18966
+ ), /* @__PURE__ */ React215.createElement(
18967
+ Button,
18968
+ {
18969
+ variant: "primary" /* primary */,
18770
18970
  onClick: () => __async(void 0, null, function* () {
18771
18971
  yield uploadDocumentsForTask(task.id, selectedFiles, userResponse);
18772
18972
  setIsOpen(false);
@@ -18775,11 +18975,11 @@ var TasksListItem = ({
18775
18975
  })
18776
18976
  },
18777
18977
  "Submit"
18778
- );
18978
+ ));
18779
18979
  }
18780
18980
  } else if (task.status === "USER_MARKED_COMPLETED") {
18781
18981
  if (task.user_response && task.user_response != userResponse) {
18782
- return /* @__PURE__ */ React213.createElement(
18982
+ return /* @__PURE__ */ React215.createElement(
18783
18983
  Button,
18784
18984
  {
18785
18985
  variant: "secondary" /* secondary */,
@@ -18790,7 +18990,7 @@ var TasksListItem = ({
18790
18990
  "Update"
18791
18991
  );
18792
18992
  } else {
18793
- return /* @__PURE__ */ React213.createElement(
18993
+ return /* @__PURE__ */ React215.createElement(
18794
18994
  Button,
18795
18995
  {
18796
18996
  variant: "secondary" /* secondary */,
@@ -18806,14 +19006,14 @@ var TasksListItem = ({
18806
19006
  }
18807
19007
  }
18808
19008
  }, [task, selectedFiles, userResponse]);
18809
- return /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list-item-wrapper" }, /* @__PURE__ */ React213.createElement("div", { className: taskItemClassName }, /* @__PURE__ */ React213.createElement(
19009
+ return /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list-item-wrapper" }, /* @__PURE__ */ React215.createElement("div", { className: taskItemClassName }, /* @__PURE__ */ React215.createElement(
18810
19010
  "div",
18811
19011
  {
18812
19012
  className: "Layer__tasks-list-item__head",
18813
19013
  onClick: () => setIsOpen(!isOpen)
18814
19014
  },
18815
- /* @__PURE__ */ React213.createElement("div", { className: taskHeadClassName }, /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list-item__head-info__status" }, isComplete(task.status) ? /* @__PURE__ */ React213.createElement(Check_default, { size: 12 }) : /* @__PURE__ */ React213.createElement(AlertCircle_default, { size: 12 })), /* @__PURE__ */ React213.createElement(Text, { size: "md" /* md */ }, task.title)),
18816
- /* @__PURE__ */ React213.createElement(
19015
+ /* @__PURE__ */ React215.createElement("div", { className: taskHeadClassName }, /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list-item__head-info__status" }, isComplete(task.status) ? /* @__PURE__ */ React215.createElement(Check_default, { size: 12 }) : /* @__PURE__ */ React215.createElement(AlertCircle_default, { size: 12 })), /* @__PURE__ */ React215.createElement(Text, { size: "md" /* md */ }, task.title)),
19016
+ /* @__PURE__ */ React215.createElement(
18817
19017
  ChevronDownFill_default,
18818
19018
  {
18819
19019
  size: 16,
@@ -18823,14 +19023,14 @@ var TasksListItem = ({
18823
19023
  }
18824
19024
  }
18825
19025
  )
18826
- ), /* @__PURE__ */ React213.createElement("div", { className: taskBodyClassName }, /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list-item__body-info" }, /* @__PURE__ */ React213.createElement(Text, { size: "sm" /* sm */ }, task.question), /* @__PURE__ */ React213.createElement(
19026
+ ), /* @__PURE__ */ React215.createElement("div", { className: taskBodyClassName }, /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list-item__body-info" }, /* @__PURE__ */ React215.createElement(Text, { size: "sm" /* sm */ }, task.question), /* @__PURE__ */ React215.createElement(
18827
19027
  Textarea,
18828
19028
  {
18829
19029
  value: userResponse,
18830
19030
  placeholder: task.user_response_type === "UPLOAD_DOCUMENT" ? "Optional description" : "",
18831
19031
  onChange: (e) => setUserResponse(e.target.value)
18832
19032
  }
18833
- ), task.user_response_type === "UPLOAD_DOCUMENT" ? /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list__link-list" }, selectedFiles ? /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Selected Files:") : task.documents ? /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Uploaded Files:") : null, /* @__PURE__ */ React213.createElement("ul", { className: "Layer__tasks-list__links-list" }, (_a = task.documents) == null ? void 0 : _a.map((document2, idx) => /* @__PURE__ */ React213.createElement("li", { key: `uploaded-doc-name-${idx}` }, /* @__PURE__ */ React213.createElement("a", { className: "Layer__tasks-list-item__link", href: document2.presigned_url.presignedUrl }, document2.file_name))), selectedFiles == null ? void 0 : selectedFiles.map((file, idx) => /* @__PURE__ */ React213.createElement("li", { key: `selected-file-name-${idx}` }, /* @__PURE__ */ React213.createElement("a", { className: "Layer__tasks-list-item__link" }, file.name))))) : null, /* @__PURE__ */ React213.createElement("div", { className: "Layer__tasks-list-item__actions" }, task.user_response_type === "UPLOAD_DOCUMENT" ? uploadDocumentAction : /* @__PURE__ */ React213.createElement(
19033
+ ), task.user_response_type === "UPLOAD_DOCUMENT" ? /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list__link-list" }, selectedFiles ? /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Selected Files:") : task.documents ? /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Uploaded Files:") : null, /* @__PURE__ */ React215.createElement("ul", { className: "Layer__tasks-list__links-list" }, (_a = task.documents) == null ? void 0 : _a.map((document2, idx) => /* @__PURE__ */ React215.createElement("li", { key: `uploaded-doc-name-${idx}` }, /* @__PURE__ */ React215.createElement("a", { className: "Layer__tasks-list-item__link", href: document2.presigned_url.presignedUrl }, document2.file_name))), selectedFiles == null ? void 0 : selectedFiles.map((file, idx) => /* @__PURE__ */ React215.createElement("li", { key: `selected-file-name-${idx}` }, /* @__PURE__ */ React215.createElement("a", { className: "Layer__tasks-list-item__link" }, file.name))))) : null, /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-list-item__actions" }, task.user_response_type === "UPLOAD_DOCUMENT" ? uploadDocumentAction : /* @__PURE__ */ React215.createElement(
18834
19034
  Button,
18835
19035
  {
18836
19036
  disabled: userResponse.length === 0 || userResponse === task.user_response,
@@ -18855,7 +19055,7 @@ function paginateArray(array, chunkSize = 10) {
18855
19055
  }
18856
19056
  return result;
18857
19057
  }
18858
- var TasksEmptyState = () => /* @__PURE__ */ React214.createElement("div", { className: "Layer__tasks-empty-state" }, /* @__PURE__ */ React214.createElement("div", { className: "Layer__tasks-icon" }, /* @__PURE__ */ React214.createElement(SmileIcon_default, null)), /* @__PURE__ */ React214.createElement(Text, { size: "sm" /* sm */ }, "There are no pending tasks!", /* @__PURE__ */ React214.createElement("br", null), " Great job!"));
19058
+ var TasksEmptyState = () => /* @__PURE__ */ React216.createElement("div", { className: "Layer__tasks-empty-state" }, /* @__PURE__ */ React216.createElement("div", { className: "Layer__tasks-icon" }, /* @__PURE__ */ React216.createElement(SmileIcon_default, null)), /* @__PURE__ */ React216.createElement(Text, { size: "sm" /* sm */ }, "There are no pending tasks!", /* @__PURE__ */ React216.createElement("br", null), " Great job!"));
18859
19059
  var TasksList = ({ pageSize = 10 }) => {
18860
19060
  const { data: rawData, error, currentDate } = useContext45(TasksContext);
18861
19061
  const tasks = useMemo33(() => {
@@ -18881,11 +19081,12 @@ var TasksList = ({ pageSize = 10 }) => {
18881
19081
  );
18882
19082
  const goToNextPage = (task) => {
18883
19083
  const allComplete = sortedTasks == null ? void 0 : sortedTasks.filter((taskInList) => taskInList.id !== task.id).every((task2) => isComplete(task2.status));
18884
- if (allComplete) {
19084
+ const hasMorePages = sortedTasks ? sortedTasks.length > pageSize * currentPage : false;
19085
+ if (allComplete && hasMorePages) {
18885
19086
  setCurrentPage(currentPage + 1);
18886
19087
  }
18887
19088
  };
18888
- return /* @__PURE__ */ React214.createElement("div", { className: "Layer__tasks-list" }, sortedTasks && sortedTasks.length > 0 ? /* @__PURE__ */ React214.createElement(React214.Fragment, null, sortedTasks.map((task, index) => /* @__PURE__ */ React214.createElement(
19089
+ return /* @__PURE__ */ React216.createElement("div", { className: "Layer__tasks-list" }, sortedTasks && sortedTasks.length > 0 ? /* @__PURE__ */ React216.createElement(React216.Fragment, null, sortedTasks.map((task, index) => /* @__PURE__ */ React216.createElement(
18889
19090
  TasksListItem,
18890
19091
  {
18891
19092
  key: task.id,
@@ -18893,7 +19094,7 @@ var TasksList = ({ pageSize = 10 }) => {
18893
19094
  goToNextPageIfAllComplete: goToNextPage,
18894
19095
  defaultOpen: index === indexFirstIncomplete
18895
19096
  }
18896
- )), tasks && tasks.length >= 10 && /* @__PURE__ */ React214.createElement("div", { className: "Layer__tasks__pagination" }, /* @__PURE__ */ React214.createElement(
19097
+ )), tasks && tasks.length >= 10 && /* @__PURE__ */ React216.createElement("div", { className: "Layer__tasks__pagination" }, /* @__PURE__ */ React216.createElement(
18897
19098
  Pagination,
18898
19099
  {
18899
19100
  currentPage,
@@ -18901,11 +19102,11 @@ var TasksList = ({ pageSize = 10 }) => {
18901
19102
  pageSize,
18902
19103
  onPageChange: (page) => setCurrentPage(page)
18903
19104
  }
18904
- ))) : /* @__PURE__ */ React214.createElement(React214.Fragment, null, error ? /* @__PURE__ */ React214.createElement(ErrorText, null, "Approval failed. Check connection and retry in few seconds.") : /* @__PURE__ */ React214.createElement(TasksEmptyState, null)));
19105
+ ))) : /* @__PURE__ */ React216.createElement(React216.Fragment, null, error ? /* @__PURE__ */ React216.createElement(ErrorText, null, "Approval failed. Check connection and retry in few seconds.") : /* @__PURE__ */ React216.createElement(TasksEmptyState, null)));
18905
19106
  };
18906
19107
 
18907
19108
  // src/components/TasksPending/TasksPending.tsx
18908
- import React215, { useContext as useContext46, useMemo as useMemo34 } from "react";
19109
+ import React217, { useContext as useContext46, useMemo as useMemo34 } from "react";
18909
19110
  import classNames68 from "classnames";
18910
19111
  import { endOfMonth as endOfMonth16, format as format7, isAfter as isAfter2, isBefore as isBefore2, parseISO as parseISO17, startOfMonth as startOfMonth18 } from "date-fns";
18911
19112
  import { Cell as Cell4, Pie as Pie3, PieChart as PieChart4 } from "recharts";
@@ -18931,7 +19132,7 @@ var TasksPending = () => {
18931
19132
  const taskStatusClassName = classNames68(
18932
19133
  completedTasks && completedTasks > 0 ? "Layer__tasks-pending-bar__status--done" : "Layer__tasks-pending-bar__status--pending"
18933
19134
  );
18934
- return /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-pending" }, /* @__PURE__ */ React215.createElement(Text, { size: "lg" /* lg */ }, format7(currentDate, "MMMM")), data && (data == null ? void 0 : data.length) > 0 ? /* @__PURE__ */ React215.createElement("div", { className: "Layer__tasks-pending-bar" }, /* @__PURE__ */ React215.createElement(Text, { size: "sm" /* sm */ }, /* @__PURE__ */ React215.createElement("span", { className: taskStatusClassName }, completedTasks), "/", data == null ? void 0 : data.length, " done"), /* @__PURE__ */ React215.createElement(PieChart4, { width: 24, height: 24, className: "mini-chart" }, /* @__PURE__ */ React215.createElement(
19135
+ return /* @__PURE__ */ React217.createElement("div", { className: "Layer__tasks-pending" }, /* @__PURE__ */ React217.createElement(Text, { size: "lg" /* lg */ }, format7(currentDate, "MMMM")), data && (data == null ? void 0 : data.length) > 0 ? /* @__PURE__ */ React217.createElement("div", { className: "Layer__tasks-pending-bar" }, /* @__PURE__ */ React217.createElement(Text, { size: "sm" /* sm */ }, /* @__PURE__ */ React217.createElement("span", { className: taskStatusClassName }, completedTasks), "/", data == null ? void 0 : data.length, " done"), /* @__PURE__ */ React217.createElement(PieChart4, { width: 24, height: 24, className: "mini-chart" }, /* @__PURE__ */ React217.createElement(
18935
19136
  Pie3,
18936
19137
  {
18937
19138
  data: chartData,
@@ -18949,7 +19150,7 @@ var TasksPending = () => {
18949
19150
  animationEasing: "ease-in-out"
18950
19151
  },
18951
19152
  chartData.map((task, index) => {
18952
- return /* @__PURE__ */ React215.createElement(
19153
+ return /* @__PURE__ */ React217.createElement(
18953
19154
  Cell4,
18954
19155
  {
18955
19156
  key: `cell-${index}`,
@@ -18962,11 +19163,11 @@ var TasksPending = () => {
18962
19163
  };
18963
19164
 
18964
19165
  // src/components/TasksMonthSelector/TasksMonthSelector.tsx
18965
- import React217, { useMemo as useMemo35 } from "react";
19166
+ import React219, { useMemo as useMemo35 } from "react";
18966
19167
  import { endOfMonth as endOfMonth17, format as format8, getMonth as getMonth3, getYear as getYear4, isAfter as isAfter3, isBefore as isBefore3, set, startOfMonth as startOfMonth19 } from "date-fns";
18967
19168
 
18968
19169
  // src/components/TasksMonthSelector/TaskMonthTile.tsx
18969
- import React216 from "react";
19170
+ import React218 from "react";
18970
19171
  import classNames69 from "classnames";
18971
19172
  var TaskMonthTile = ({ monthData, onClick, active, disabled }) => {
18972
19173
  const isCompleted = monthData.total === monthData.completed;
@@ -18976,7 +19177,7 @@ var TaskMonthTile = ({ monthData, onClick, active, disabled }) => {
18976
19177
  active && "Layer__tasks-month-selector__month--active",
18977
19178
  disabled && "Layer__tasks-month-selector__month--disabled"
18978
19179
  );
18979
- return /* @__PURE__ */ React216.createElement("div", { className: baseClass, onClick: () => !disabled && onClick(monthData.startDate) }, /* @__PURE__ */ React216.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__str" }, monthData.monthStr), /* @__PURE__ */ React216.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__total" }, monthData.total > 0 && isCompleted ? monthData.total : ""), isCompleted && monthData.total > 0 && /* @__PURE__ */ React216.createElement("span", { className: "Layer__tasks-month-selector__month__completed" }, /* @__PURE__ */ React216.createElement(Check_default, { size: 12 })), !isCompleted && monthData.total > 0 && /* @__PURE__ */ React216.createElement("span", { className: "Layer__tasks-month-selector__month__incompleted" }, /* @__PURE__ */ React216.createElement(Text, { size: "sm" /* sm */ }, monthData.total), /* @__PURE__ */ React216.createElement(AlertCircle_default, { size: 12 })));
19180
+ return /* @__PURE__ */ React218.createElement("div", { className: baseClass, onClick: () => !disabled && onClick(monthData.startDate) }, /* @__PURE__ */ React218.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__str" }, monthData.monthStr), /* @__PURE__ */ React218.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__total" }, monthData.total > 0 && isCompleted ? monthData.total : ""), isCompleted && monthData.total > 0 && /* @__PURE__ */ React218.createElement("span", { className: "Layer__tasks-month-selector__month__completed" }, /* @__PURE__ */ React218.createElement(Check_default, { size: 12 })), !isCompleted && monthData.total > 0 && /* @__PURE__ */ React218.createElement("span", { className: "Layer__tasks-month-selector__month__incompleted" }, /* @__PURE__ */ React218.createElement(Text, { size: "sm" /* sm */ }, monthData.total), /* @__PURE__ */ React218.createElement(AlertCircle_default, { size: 12 })));
18980
19181
  };
18981
19182
 
18982
19183
  // src/components/TasksMonthSelector/TasksMonthSelector.tsx
@@ -19021,8 +19222,8 @@ var TasksMonthSelector = ({ tasks, year, currentDate, onClick }) => {
19021
19222
  }, taskData);
19022
19223
  });
19023
19224
  }, [tasks, year, minDate]);
19024
- return /* @__PURE__ */ React217.createElement("div", { className: "Layer__tasks-month-selector" }, months.map((month, idx) => {
19025
- return /* @__PURE__ */ React217.createElement(
19225
+ return /* @__PURE__ */ React219.createElement("div", { className: "Layer__tasks-month-selector" }, months.map((month, idx) => {
19226
+ return /* @__PURE__ */ React219.createElement(
19026
19227
  TaskMonthTile,
19027
19228
  {
19028
19229
  key: idx,
@@ -19068,7 +19269,7 @@ var Tasks = ({
19068
19269
  // deprecated
19069
19270
  stringOverrides
19070
19271
  }) => {
19071
- return /* @__PURE__ */ React218.createElement(TasksProvider, null, /* @__PURE__ */ React218.createElement(
19272
+ return /* @__PURE__ */ React220.createElement(TasksProvider, null, /* @__PURE__ */ React220.createElement(
19072
19273
  TasksComponent,
19073
19274
  {
19074
19275
  collapsable,
@@ -19081,7 +19282,7 @@ var Tasks = ({
19081
19282
  };
19082
19283
  var TasksProvider = ({ children }) => {
19083
19284
  const contextData = useTasks();
19084
- return /* @__PURE__ */ React218.createElement(TasksContext.Provider, { value: contextData }, children);
19285
+ return /* @__PURE__ */ React220.createElement(TasksContext.Provider, { value: contextData }, children);
19085
19286
  };
19086
19287
  var TasksComponent = ({
19087
19288
  collapsable = false,
@@ -19117,7 +19318,7 @@ var TasksComponent = ({
19117
19318
  setOpen(false);
19118
19319
  }
19119
19320
  }, [allComplete]);
19120
- return /* @__PURE__ */ React218.createElement("div", { className: "Layer__tasks-component" }, /* @__PURE__ */ React218.createElement(
19321
+ return /* @__PURE__ */ React220.createElement("div", { className: "Layer__tasks-component" }, /* @__PURE__ */ React220.createElement(
19121
19322
  TasksHeader,
19122
19323
  {
19123
19324
  tasksHeader: (stringOverrides == null ? void 0 : stringOverrides.header) || tasksHeader,
@@ -19125,7 +19326,7 @@ var TasksComponent = ({
19125
19326
  open,
19126
19327
  toggleContent: () => setOpen(!open)
19127
19328
  }
19128
- ), /* @__PURE__ */ React218.createElement(
19329
+ ), /* @__PURE__ */ React220.createElement(
19129
19330
  "div",
19130
19331
  {
19131
19332
  className: classNames70(
@@ -19133,7 +19334,7 @@ var TasksComponent = ({
19133
19334
  !open && "Layer__tasks__content--collapsed"
19134
19335
  )
19135
19336
  },
19136
- isLoading || !data ? /* @__PURE__ */ React218.createElement("div", { className: "Layer__tasks__loader-container" }, /* @__PURE__ */ React218.createElement(Loader2, null)) : /* @__PURE__ */ React218.createElement(React218.Fragment, null, /* @__PURE__ */ React218.createElement(
19337
+ isLoading || !data ? /* @__PURE__ */ React220.createElement("div", { className: "Layer__tasks__loader-container" }, /* @__PURE__ */ React220.createElement(Loader2, null)) : /* @__PURE__ */ React220.createElement(React220.Fragment, null, /* @__PURE__ */ React220.createElement(
19137
19338
  TasksMonthSelector,
19138
19339
  {
19139
19340
  tasks: monthlyData,
@@ -19141,21 +19342,21 @@ var TasksComponent = ({
19141
19342
  onClick: setCurrentDate,
19142
19343
  year: getYear5(dateRange.startDate)
19143
19344
  }
19144
- ), /* @__PURE__ */ React218.createElement(TasksPending, null), /* @__PURE__ */ React218.createElement(TasksList, null))
19345
+ ), /* @__PURE__ */ React220.createElement(TasksPending, null), /* @__PURE__ */ React220.createElement(TasksList, null))
19145
19346
  ));
19146
19347
  };
19147
19348
 
19148
19349
  // src/components/PlatformOnboarding/LinkAccounts.tsx
19149
- import React219, { useContext as useContext48, useMemo as useMemo37 } from "react";
19350
+ import React221, { useContext as useContext48, useMemo as useMemo37 } from "react";
19150
19351
  var LinkAccounts = (_a) => {
19151
19352
  var _b = _a, { inBox } = _b, props = __objRest(_b, ["inBox"]);
19152
19353
  const content = useMemo37(() => {
19153
19354
  if (inBox) {
19154
- return /* @__PURE__ */ React219.createElement("div", { className: "Layer__link-accounts__box" }, /* @__PURE__ */ React219.createElement(LinkAccountsContent, __spreadValues({}, props)));
19355
+ return /* @__PURE__ */ React221.createElement("div", { className: "Layer__link-accounts__box" }, /* @__PURE__ */ React221.createElement(LinkAccountsContent, __spreadValues({}, props)));
19155
19356
  }
19156
- return /* @__PURE__ */ React219.createElement(LinkAccountsContent, __spreadValues({}, props));
19357
+ return /* @__PURE__ */ React221.createElement(LinkAccountsContent, __spreadValues({}, props));
19157
19358
  }, [inBox, props]);
19158
- return /* @__PURE__ */ React219.createElement(LinkedAccountsProvider, null, content);
19359
+ return /* @__PURE__ */ React221.createElement(LinkedAccountsProvider, null, content);
19159
19360
  };
19160
19361
  var LinkAccountsContent = ({
19161
19362
  title,
@@ -19170,7 +19371,7 @@ var LinkAccountsContent = ({
19170
19371
  }) => {
19171
19372
  var _a;
19172
19373
  const { data, loadingStatus, error, refetchAccounts, addConnection } = useContext48(LinkedAccountsContext);
19173
- return /* @__PURE__ */ React219.createElement("div", { className: "Layer__link-accounts Layer__component" }, title && /* @__PURE__ */ React219.createElement(Heading, { size: "view" /* view */ }, title), data && data.length === 0 ? /* @__PURE__ */ React219.createElement("div", { className: "Layer__link-accounts__data-status-container" }, !hideLoading && loadingStatus !== "complete" ? /* @__PURE__ */ React219.createElement(Loader2, null) : null, Boolean(error) && /* @__PURE__ */ React219.createElement(
19374
+ return /* @__PURE__ */ React221.createElement("div", { className: "Layer__link-accounts Layer__component" }, title && /* @__PURE__ */ React221.createElement(Heading, { size: "view" /* view */ }, title), data && data.length === 0 ? /* @__PURE__ */ React221.createElement("div", { className: "Layer__link-accounts__data-status-container" }, !hideLoading && loadingStatus !== "complete" ? /* @__PURE__ */ React221.createElement(Loader2, null) : null, Boolean(error) && /* @__PURE__ */ React221.createElement(
19174
19375
  DataState,
19175
19376
  {
19176
19377
  status: "failed" /* failed */,
@@ -19178,7 +19379,7 @@ var LinkAccountsContent = ({
19178
19379
  description: "Please try again later",
19179
19380
  onRefresh: refetchAccounts
19180
19381
  }
19181
- )) : null, data && data.length > 0 ? /* @__PURE__ */ React219.createElement("div", { className: "Layer__link-accounts__list" }, data == null ? void 0 : data.map((account, index) => /* @__PURE__ */ React219.createElement(
19382
+ )) : null, data && data.length > 0 ? /* @__PURE__ */ React221.createElement("div", { className: "Layer__link-accounts__list" }, data == null ? void 0 : data.map((account, index) => /* @__PURE__ */ React221.createElement(
19182
19383
  LinkedAccountItemThumb,
19183
19384
  {
19184
19385
  key: index,
@@ -19188,33 +19389,33 @@ var LinkAccountsContent = ({
19188
19389
  showBreakConnection,
19189
19390
  asWidget
19190
19391
  }
19191
- ))) : null, /* @__PURE__ */ React219.createElement(
19392
+ ))) : null, /* @__PURE__ */ React221.createElement(
19192
19393
  ActionableRow,
19193
19394
  {
19194
- iconBox: /* @__PURE__ */ React219.createElement(PlaidIcon_default, null),
19395
+ iconBox: /* @__PURE__ */ React221.createElement(PlaidIcon_default, null),
19195
19396
  title: data && data.length > 0 ? "Connect my next business account" : "Connect accounts",
19196
19397
  description: "Import data with one simple integration.",
19197
- button: /* @__PURE__ */ React219.createElement(
19398
+ button: /* @__PURE__ */ React221.createElement(
19198
19399
  Button,
19199
19400
  {
19200
19401
  onClick: () => addConnection("PLAID"),
19201
- rightIcon: /* @__PURE__ */ React219.createElement(Link_default, { size: 12 }),
19402
+ rightIcon: /* @__PURE__ */ React221.createElement(Link_default, { size: 12 }),
19202
19403
  disabled: loadingStatus !== "complete"
19203
19404
  },
19204
19405
  data && data.length > 0 ? "Connect next" : "Connect"
19205
19406
  )
19206
19407
  }
19207
- ), /* @__PURE__ */ React219.createElement(LinkedAccountsConfirmationModal, null), onBack || onNext ? /* @__PURE__ */ React219.createElement("div", { className: "Layer__link-accounts__footer" }, onBack && /* @__PURE__ */ React219.createElement(Button, { onClick: onBack, variant: "secondary" /* secondary */ }, (_a = stringOverrides == null ? void 0 : stringOverrides.backButtonText) != null ? _a : "Back"), onNext && /* @__PURE__ */ React219.createElement(Button, { onClick: onNext }, (stringOverrides == null ? void 0 : stringOverrides.nextButtonText) || "I\u2019m done connecting my business accounts")) : null);
19408
+ ), /* @__PURE__ */ React221.createElement(LinkedAccountsConfirmationModal, null), onBack || onNext ? /* @__PURE__ */ React221.createElement("div", { className: "Layer__link-accounts__footer" }, onBack && /* @__PURE__ */ React221.createElement(Button, { onClick: onBack, variant: "secondary" /* secondary */ }, (_a = stringOverrides == null ? void 0 : stringOverrides.backButtonText) != null ? _a : "Back"), onNext && /* @__PURE__ */ React221.createElement(Button, { onClick: onNext }, (stringOverrides == null ? void 0 : stringOverrides.nextButtonText) || "I\u2019m done connecting my business accounts")) : null);
19208
19409
  };
19209
19410
 
19210
19411
  // src/components/UpsellBanner/BookkeepingUpsellBar.tsx
19211
- import React221 from "react";
19412
+ import React223 from "react";
19212
19413
 
19213
19414
  // src/icons/Coffee.tsx
19214
- import * as React220 from "react";
19415
+ import * as React222 from "react";
19215
19416
  var CoffeeIcon = (_a) => {
19216
19417
  var _b = _a, { size = 11 } = _b, props = __objRest(_b, ["size"]);
19217
- return /* @__PURE__ */ React220.createElement(
19418
+ return /* @__PURE__ */ React222.createElement(
19218
19419
  "svg",
19219
19420
  __spreadProps(__spreadValues({
19220
19421
  xmlns: "http://www.w3.org/2000/svg",
@@ -19224,7 +19425,7 @@ var CoffeeIcon = (_a) => {
19224
19425
  width: size,
19225
19426
  height: size
19226
19427
  }),
19227
- /* @__PURE__ */ React220.createElement("g", { clipPath: "url(#clip0_5018_10141)" }, /* @__PURE__ */ React220.createElement(
19428
+ /* @__PURE__ */ React222.createElement("g", { clipPath: "url(#clip0_5018_10141)" }, /* @__PURE__ */ React222.createElement(
19228
19429
  "path",
19229
19430
  {
19230
19431
  d: "M3.25 4.16666H2.79167C2.30544 4.16666 1.83912 4.35981 1.4953 4.70363C1.15149 5.04744 0.958333 5.51376 0.958333 5.99999C0.958333 6.48622 1.15149 6.95254 1.4953 7.29635C1.83912 7.64017 2.30544 7.83332 2.79167 7.83332H3.25",
@@ -19232,7 +19433,7 @@ var CoffeeIcon = (_a) => {
19232
19433
  strokeLinecap: "round",
19233
19434
  strokeLinejoin: "round"
19234
19435
  }
19235
- ), /* @__PURE__ */ React220.createElement(
19436
+ ), /* @__PURE__ */ React222.createElement(
19236
19437
  "path",
19237
19438
  {
19238
19439
  d: "M10.5834 4.16666H3.25004V8.29166C3.25004 8.77789 3.4432 9.2442 3.78701 9.58802C4.13083 9.93184 4.59714 10.125 5.08337 10.125H8.75004C9.23627 10.125 9.70259 9.93184 10.0464 9.58802C10.3902 9.2442 10.5834 8.77789 10.5834 8.29166V4.16666Z",
@@ -19240,7 +19441,7 @@ var CoffeeIcon = (_a) => {
19240
19441
  strokeLinecap: "round",
19241
19442
  strokeLinejoin: "round"
19242
19443
  }
19243
- ), /* @__PURE__ */ React220.createElement(
19444
+ ), /* @__PURE__ */ React222.createElement(
19244
19445
  "path",
19245
19446
  {
19246
19447
  d: "M8.75 0.958344V2.33334",
@@ -19248,7 +19449,7 @@ var CoffeeIcon = (_a) => {
19248
19449
  strokeLinecap: "round",
19249
19450
  strokeLinejoin: "round"
19250
19451
  }
19251
- ), /* @__PURE__ */ React220.createElement(
19452
+ ), /* @__PURE__ */ React222.createElement(
19252
19453
  "path",
19253
19454
  {
19254
19455
  d: "M6.91663 0.958344V2.33334",
@@ -19256,7 +19457,7 @@ var CoffeeIcon = (_a) => {
19256
19457
  strokeLinecap: "round",
19257
19458
  strokeLinejoin: "round"
19258
19459
  }
19259
- ), /* @__PURE__ */ React220.createElement(
19460
+ ), /* @__PURE__ */ React222.createElement(
19260
19461
  "path",
19261
19462
  {
19262
19463
  d: "M5.08337 0.958344V2.33334",
@@ -19265,7 +19466,7 @@ var CoffeeIcon = (_a) => {
19265
19466
  strokeLinejoin: "round"
19266
19467
  }
19267
19468
  )),
19268
- /* @__PURE__ */ React220.createElement("defs", null, /* @__PURE__ */ React220.createElement("clipPath", { id: "clip0_5018_10141" }, /* @__PURE__ */ React220.createElement(
19469
+ /* @__PURE__ */ React222.createElement("defs", null, /* @__PURE__ */ React222.createElement("clipPath", { id: "clip0_5018_10141" }, /* @__PURE__ */ React222.createElement(
19269
19470
  "rect",
19270
19471
  {
19271
19472
  width: "11",
@@ -19283,26 +19484,26 @@ var BookkeepingUpsellBar = ({
19283
19484
  onClick,
19284
19485
  href
19285
19486
  }) => {
19286
- return /* @__PURE__ */ React221.createElement("div", { className: "Layer__bar-banner Layer__bar-banner--bookkeeping" }, /* @__PURE__ */ React221.createElement("div", { className: "Layer__bar-banner__left-col" }, /* @__PURE__ */ React221.createElement(IconBox, null, /* @__PURE__ */ React221.createElement(Coffee_default, null)), /* @__PURE__ */ React221.createElement("div", { className: "Layer__bar-banner__text-container" }, /* @__PURE__ */ React221.createElement(Text, { size: "md" /* md */, weight: "bold" /* bold */ }, "Need help with your books?"), /* @__PURE__ */ React221.createElement(
19487
+ return /* @__PURE__ */ React223.createElement("div", { className: "Layer__bar-banner Layer__bar-banner--bookkeeping" }, /* @__PURE__ */ React223.createElement("div", { className: "Layer__bar-banner__left-col" }, /* @__PURE__ */ React223.createElement(IconBox, null, /* @__PURE__ */ React223.createElement(Coffee_default, null)), /* @__PURE__ */ React223.createElement("div", { className: "Layer__bar-banner__text-container" }, /* @__PURE__ */ React223.createElement(Text, { size: "md" /* md */, weight: "bold" /* bold */ }, "Need help with your books?"), /* @__PURE__ */ React223.createElement(
19287
19488
  Text,
19288
19489
  {
19289
19490
  size: "sm" /* sm */,
19290
19491
  className: "Layer__bar-banner__text-container__desc"
19291
19492
  },
19292
19493
  "Order bookkeeping service supported by real humans."
19293
- ))), onClick ? /* @__PURE__ */ React221.createElement(Button, { variant: "secondary" /* secondary */, onClick }, "Schedule a demo") : href ? /* @__PURE__ */ React221.createElement(Link2, { href, target: "_blank", variant: "secondary" /* secondary */ }, "Schedule a demo") : null);
19494
+ ))), onClick ? /* @__PURE__ */ React223.createElement(Button, { variant: "secondary" /* secondary */, onClick }, "Schedule a demo") : href ? /* @__PURE__ */ React223.createElement(Link2, { href, target: "_blank", variant: "secondary" /* secondary */ }, "Schedule a demo") : null);
19294
19495
  };
19295
19496
 
19296
19497
  // src/views/BookkeepingOverview/BookkeepingOverview.tsx
19297
- import React223, { useState as useState61 } from "react";
19498
+ import React225, { useState as useState61 } from "react";
19298
19499
 
19299
19500
  // src/views/BookkeepingOverview/internal/BookkeepingProfitAndLossSummariesContainer.tsx
19300
- import React222 from "react";
19501
+ import React224 from "react";
19301
19502
  var CLASS_NAME7 = "Layer__BookkeepingProfitAndLossSummariesContainer";
19302
19503
  function BookkeepingProfitAndLossSummariesContainer({
19303
19504
  children
19304
19505
  }) {
19305
- return /* @__PURE__ */ React222.createElement("div", { className: CLASS_NAME7 }, children);
19506
+ return /* @__PURE__ */ React224.createElement("div", { className: CLASS_NAME7 }, children);
19306
19507
  }
19307
19508
 
19308
19509
  // src/views/BookkeepingOverview/BookkeepingOverview.tsx
@@ -19317,16 +19518,16 @@ var BookkeepingOverview = ({
19317
19518
  const [pnlToggle, setPnlToggle] = useState61("expenses");
19318
19519
  const [width] = useWindowSize();
19319
19520
  const profitAndLossSummariesVariants = (_b = (_a = slotProps == null ? void 0 : slotProps.profitAndLoss) == null ? void 0 : _a.summaries) == null ? void 0 : _b.variants;
19320
- return /* @__PURE__ */ React223.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React223.createElement(TasksProvider, null, /* @__PURE__ */ React223.createElement(
19521
+ return /* @__PURE__ */ React225.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React225.createElement(TasksProvider, null, /* @__PURE__ */ React225.createElement(
19321
19522
  View,
19322
19523
  {
19323
19524
  viewClassName: "Layer__bookkeeping-overview--view",
19324
19525
  title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "Bookkeeping overview",
19325
19526
  withSidebar: width > 1100,
19326
- sidebar: /* @__PURE__ */ React223.createElement(TasksComponent, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.tasks }),
19527
+ sidebar: /* @__PURE__ */ React225.createElement(TasksComponent, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.tasks }),
19327
19528
  showHeader: showTitle
19328
19529
  },
19329
- width <= 1100 && /* @__PURE__ */ React223.createElement(
19530
+ width <= 1100 && /* @__PURE__ */ React225.createElement(
19330
19531
  TasksComponent,
19331
19532
  {
19332
19533
  collapsable: true,
@@ -19334,30 +19535,30 @@ var BookkeepingOverview = ({
19334
19535
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.tasks
19335
19536
  }
19336
19537
  ),
19337
- /* @__PURE__ */ React223.createElement(
19538
+ /* @__PURE__ */ React225.createElement(
19338
19539
  Container,
19339
19540
  {
19340
19541
  name: "bookkeeping-overview-profit-and-loss",
19341
19542
  asWidget: true,
19342
19543
  elevated: true
19343
19544
  },
19344
- /* @__PURE__ */ React223.createElement(
19545
+ /* @__PURE__ */ React225.createElement(
19345
19546
  ProfitAndLoss.Header,
19346
19547
  {
19347
19548
  text: ((_c = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _c.header) || "Profit & Loss",
19348
19549
  withDatePicker: true
19349
19550
  }
19350
19551
  ),
19351
- /* @__PURE__ */ React223.createElement(BookkeepingProfitAndLossSummariesContainer, null, /* @__PURE__ */ React223.createElement(
19552
+ /* @__PURE__ */ React225.createElement(BookkeepingProfitAndLossSummariesContainer, null, /* @__PURE__ */ React225.createElement(
19352
19553
  ProfitAndLoss.Summaries,
19353
19554
  {
19354
19555
  stringOverrides: (_d = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _d.summaries,
19355
19556
  variants: profitAndLossSummariesVariants
19356
19557
  }
19357
19558
  )),
19358
- /* @__PURE__ */ React223.createElement(ProfitAndLoss.Chart, null)
19559
+ /* @__PURE__ */ React225.createElement(ProfitAndLoss.Chart, null)
19359
19560
  ),
19360
- /* @__PURE__ */ React223.createElement("div", { className: "Layer__bookkeeping-overview-profit-and-loss-charts" }, /* @__PURE__ */ React223.createElement(
19561
+ /* @__PURE__ */ React225.createElement("div", { className: "Layer__bookkeeping-overview-profit-and-loss-charts" }, /* @__PURE__ */ React225.createElement(
19361
19562
  Toggle,
19362
19563
  {
19363
19564
  name: "pnl-detailed-charts",
@@ -19374,7 +19575,7 @@ var BookkeepingOverview = ({
19374
19575
  selected: pnlToggle,
19375
19576
  onChange: (e) => setPnlToggle(e.target.value)
19376
19577
  }
19377
- ), /* @__PURE__ */ React223.createElement(
19578
+ ), /* @__PURE__ */ React225.createElement(
19378
19579
  Container,
19379
19580
  {
19380
19581
  name: classNames71(
@@ -19382,7 +19583,7 @@ var BookkeepingOverview = ({
19382
19583
  pnlToggle !== "revenue" && "bookkeeping-overview-profit-and-loss-chart--hidden"
19383
19584
  )
19384
19585
  },
19385
- /* @__PURE__ */ React223.createElement(
19586
+ /* @__PURE__ */ React225.createElement(
19386
19587
  ProfitAndLoss.DetailedCharts,
19387
19588
  {
19388
19589
  scope: "revenue",
@@ -19390,7 +19591,7 @@ var BookkeepingOverview = ({
19390
19591
  stringOverrides: (_e = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _e.detailedCharts
19391
19592
  }
19392
19593
  )
19393
- ), /* @__PURE__ */ React223.createElement(
19594
+ ), /* @__PURE__ */ React225.createElement(
19394
19595
  Container,
19395
19596
  {
19396
19597
  name: classNames71(
@@ -19398,7 +19599,7 @@ var BookkeepingOverview = ({
19398
19599
  pnlToggle !== "expenses" && "bookkeeping-overview-profit-and-loss-chart--hidden"
19399
19600
  )
19400
19601
  },
19401
- /* @__PURE__ */ React223.createElement(
19602
+ /* @__PURE__ */ React225.createElement(
19402
19603
  ProfitAndLoss.DetailedCharts,
19403
19604
  {
19404
19605
  scope: "expenses",
@@ -19411,15 +19612,15 @@ var BookkeepingOverview = ({
19411
19612
  };
19412
19613
 
19413
19614
  // src/views/AccountingOverview/AccountingOverview.tsx
19414
- import React226, { useState as useState63 } from "react";
19615
+ import React228, { useState as useState63 } from "react";
19415
19616
 
19416
19617
  // src/views/AccountingOverview/internal/TransactionsToReview.tsx
19417
- import React225, { useContext as useContext49, useEffect as useEffect49, useState as useState62 } from "react";
19618
+ import React227, { useContext as useContext49, useEffect as useEffect49, useState as useState62 } from "react";
19418
19619
 
19419
19620
  // src/components/BadgeLoader/BadgeLoader.tsx
19420
- import React224 from "react";
19621
+ import React226 from "react";
19421
19622
  var BadgeLoader = ({ children }) => {
19422
- return /* @__PURE__ */ React224.createElement("span", { className: "Layer__loader Layer__loader--as-badge" }, /* @__PURE__ */ React224.createElement(Loader_default, { size: 11, className: "Layer__anim--rotating" }), children);
19623
+ return /* @__PURE__ */ React226.createElement("span", { className: "Layer__loader Layer__loader--as-badge" }, /* @__PURE__ */ React226.createElement(Loader_default, { size: 11, className: "Layer__anim--rotating" }), children);
19423
19624
  };
19424
19625
 
19425
19626
  // src/views/AccountingOverview/internal/TransactionsToReview.tsx
@@ -19464,33 +19665,33 @@ function TransactionsToReview({
19464
19665
  verticalGap = "sm";
19465
19666
  break;
19466
19667
  }
19467
- return /* @__PURE__ */ React225.createElement("div", { onClick, className: CLASS_NAME8 }, /* @__PURE__ */ React225.createElement(VStack, { gap: verticalGap, align: "start" }, /* @__PURE__ */ React225.createElement(ProfitAndLossSummariesHeading, { variants }, "Transactions to review"), loaded === "initial" || loaded === "loading" ? /* @__PURE__ */ React225.createElement(BadgeLoader, null) : null, loaded === "complete" && error ? /* @__PURE__ */ React225.createElement(
19668
+ return /* @__PURE__ */ React227.createElement("div", { onClick, className: CLASS_NAME8 }, /* @__PURE__ */ React227.createElement(VStack, { gap: verticalGap, align: "start" }, /* @__PURE__ */ React227.createElement(ProfitAndLossSummariesHeading, { variants }, "Transactions to review"), loaded === "initial" || loaded === "loading" ? /* @__PURE__ */ React227.createElement(BadgeLoader, null) : null, loaded === "complete" && error ? /* @__PURE__ */ React227.createElement(
19468
19669
  Badge,
19469
19670
  {
19470
19671
  variant: "error" /* ERROR */,
19471
19672
  size: "small" /* SMALL */,
19472
- icon: /* @__PURE__ */ React225.createElement(RefreshCcw_default, { size: 12 }),
19673
+ icon: /* @__PURE__ */ React227.createElement(RefreshCcw_default, { size: 12 }),
19473
19674
  onClick: () => refetch()
19474
19675
  },
19475
19676
  "Refresh"
19476
- ) : null, loaded === "complete" && !error && toReview > 0 ? /* @__PURE__ */ React225.createElement(
19677
+ ) : null, loaded === "complete" && !error && toReview > 0 ? /* @__PURE__ */ React227.createElement(
19477
19678
  Badge,
19478
19679
  {
19479
19680
  variant: "warning" /* WARNING */,
19480
19681
  size: "small" /* SMALL */,
19481
- icon: /* @__PURE__ */ React225.createElement(Bell_default, { size: 12 })
19682
+ icon: /* @__PURE__ */ React227.createElement(Bell_default, { size: 12 })
19482
19683
  },
19483
19684
  toReview,
19484
19685
  " pending"
19485
- ) : null, loaded === "complete" && !error && toReview === 0 ? /* @__PURE__ */ React225.createElement(
19686
+ ) : null, loaded === "complete" && !error && toReview === 0 ? /* @__PURE__ */ React227.createElement(
19486
19687
  Badge,
19487
19688
  {
19488
19689
  variant: "success" /* SUCCESS */,
19489
19690
  size: "small" /* SMALL */,
19490
- icon: /* @__PURE__ */ React225.createElement(Check_default, { size: 12 })
19691
+ icon: /* @__PURE__ */ React227.createElement(Check_default, { size: 12 })
19491
19692
  },
19492
19693
  "All done"
19493
- ) : null), /* @__PURE__ */ React225.createElement(IconButton, { icon: /* @__PURE__ */ React225.createElement(ChevronRight_default, null), withBorder: true, onClick }));
19694
+ ) : null), /* @__PURE__ */ React227.createElement(IconButton, { icon: /* @__PURE__ */ React227.createElement(ChevronRight_default, null), withBorder: true, onClick }));
19494
19695
  }
19495
19696
 
19496
19697
  // src/views/AccountingOverview/AccountingOverview.tsx
@@ -19511,34 +19712,34 @@ var AccountingOverview = ({
19511
19712
  var _a, _b, _c, _d, _e;
19512
19713
  const [pnlToggle, setPnlToggle] = useState63("expenses");
19513
19714
  const profitAndLossSummariesVariants = (_b = (_a = slotProps == null ? void 0 : slotProps.profitAndLoss) == null ? void 0 : _a.summaries) == null ? void 0 : _b.variants;
19514
- return /* @__PURE__ */ React226.createElement(
19715
+ return /* @__PURE__ */ React228.createElement(
19515
19716
  ProfitAndLoss,
19516
19717
  {
19517
19718
  asContainer: false,
19518
19719
  tagFilter: tagFilter ? { key: tagFilter.tagKey, values: tagFilter.tagValues } : void 0
19519
19720
  },
19520
- /* @__PURE__ */ React226.createElement(
19721
+ /* @__PURE__ */ React228.createElement(
19521
19722
  View,
19522
19723
  {
19523
19724
  title,
19524
19725
  showHeader: showTitle,
19525
- header: /* @__PURE__ */ React226.createElement(Header2, null, /* @__PURE__ */ React226.createElement(HeaderRow, null, /* @__PURE__ */ React226.createElement(HeaderCol, null, /* @__PURE__ */ React226.createElement(ProfitAndLoss.DatePicker, null))))
19726
+ header: /* @__PURE__ */ React228.createElement(Header2, null, /* @__PURE__ */ React228.createElement(HeaderRow, null, /* @__PURE__ */ React228.createElement(HeaderCol, null, /* @__PURE__ */ React228.createElement(ProfitAndLoss.DatePicker, null))))
19526
19727
  },
19527
- enableOnboarding && /* @__PURE__ */ React226.createElement(
19728
+ enableOnboarding && /* @__PURE__ */ React228.createElement(
19528
19729
  Onboarding,
19529
19730
  {
19530
19731
  onTransactionsToReviewClick,
19531
19732
  onboardingStepOverride
19532
19733
  }
19533
19734
  ),
19534
- /* @__PURE__ */ React226.createElement(
19735
+ /* @__PURE__ */ React228.createElement(
19535
19736
  Internal_ProfitAndLossSummaries,
19536
19737
  {
19537
19738
  stringOverrides: (_c = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _c.summaries,
19538
19739
  chartColorsList,
19539
19740
  slots: {
19540
19741
  unstable_AdditionalListItems: showTransactionsToReview ? [
19541
- /* @__PURE__ */ React226.createElement(
19742
+ /* @__PURE__ */ React228.createElement(
19542
19743
  TransactionsToReview,
19543
19744
  {
19544
19745
  key: "transactions-to-review",
@@ -19552,28 +19753,28 @@ var AccountingOverview = ({
19552
19753
  variants: profitAndLossSummariesVariants
19553
19754
  }
19554
19755
  ),
19555
- /* @__PURE__ */ React226.createElement(
19756
+ /* @__PURE__ */ React228.createElement(
19556
19757
  Container,
19557
19758
  {
19558
19759
  name: "accounting-overview-profit-and-loss",
19559
19760
  asWidget: true,
19560
19761
  elevated: true
19561
19762
  },
19562
- /* @__PURE__ */ React226.createElement(
19763
+ /* @__PURE__ */ React228.createElement(
19563
19764
  ProfitAndLoss.Header,
19564
19765
  {
19565
19766
  text: (stringOverrides == null ? void 0 : stringOverrides.header) || "Profit & Loss"
19566
19767
  }
19567
19768
  ),
19568
- /* @__PURE__ */ React226.createElement(
19769
+ /* @__PURE__ */ React228.createElement(
19569
19770
  ProfitAndLoss.Chart,
19570
19771
  {
19571
19772
  tagFilter: tagFilter ? { key: tagFilter.tagKey, values: tagFilter.tagValues } : void 0
19572
19773
  }
19573
19774
  )
19574
19775
  ),
19575
- middleBanner && /* @__PURE__ */ React226.createElement(Container, { name: "accounting-overview-middle-banner" }, middleBanner),
19576
- /* @__PURE__ */ React226.createElement("div", { className: "Layer__accounting-overview-profit-and-loss-charts" }, /* @__PURE__ */ React226.createElement(
19776
+ middleBanner && /* @__PURE__ */ React228.createElement(Container, { name: "accounting-overview-middle-banner" }, middleBanner),
19777
+ /* @__PURE__ */ React228.createElement("div", { className: "Layer__accounting-overview-profit-and-loss-charts" }, /* @__PURE__ */ React228.createElement(
19577
19778
  Toggle,
19578
19779
  {
19579
19780
  name: "pnl-detailed-charts",
@@ -19590,7 +19791,7 @@ var AccountingOverview = ({
19590
19791
  selected: pnlToggle,
19591
19792
  onChange: (e) => setPnlToggle(e.target.value)
19592
19793
  }
19593
- ), /* @__PURE__ */ React226.createElement(
19794
+ ), /* @__PURE__ */ React228.createElement(
19594
19795
  Container,
19595
19796
  {
19596
19797
  name: classNames72(
@@ -19598,7 +19799,7 @@ var AccountingOverview = ({
19598
19799
  pnlToggle !== "revenue" && "accounting-overview-profit-and-loss-chart--hidden"
19599
19800
  )
19600
19801
  },
19601
- /* @__PURE__ */ React226.createElement(
19802
+ /* @__PURE__ */ React228.createElement(
19602
19803
  ProfitAndLoss.DetailedCharts,
19603
19804
  {
19604
19805
  scope: "revenue",
@@ -19607,7 +19808,7 @@ var AccountingOverview = ({
19607
19808
  chartColorsList
19608
19809
  }
19609
19810
  )
19610
- ), /* @__PURE__ */ React226.createElement(
19811
+ ), /* @__PURE__ */ React228.createElement(
19611
19812
  Container,
19612
19813
  {
19613
19814
  name: classNames72(
@@ -19615,7 +19816,7 @@ var AccountingOverview = ({
19615
19816
  pnlToggle !== "expenses" && "accounting-overview-profit-and-loss-chart--hidden"
19616
19817
  )
19617
19818
  },
19618
- /* @__PURE__ */ React226.createElement(
19819
+ /* @__PURE__ */ React228.createElement(
19619
19820
  ProfitAndLoss.DetailedCharts,
19620
19821
  {
19621
19822
  scope: "expenses",
@@ -19630,7 +19831,7 @@ var AccountingOverview = ({
19630
19831
  };
19631
19832
 
19632
19833
  // src/views/BankTransactionsWithLinkedAccounts/BankTransactionsWithLinkedAccounts.tsx
19633
- import React227 from "react";
19834
+ import React229 from "react";
19634
19835
  var BankTransactionsWithLinkedAccounts = ({
19635
19836
  title,
19636
19837
  // deprecated
@@ -19646,13 +19847,13 @@ var BankTransactionsWithLinkedAccounts = ({
19646
19847
  mobileComponent,
19647
19848
  stringOverrides
19648
19849
  }) => {
19649
- return /* @__PURE__ */ React227.createElement(
19850
+ return /* @__PURE__ */ React229.createElement(
19650
19851
  View,
19651
19852
  {
19652
19853
  title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "Bank transactions",
19653
19854
  showHeader: showTitle
19654
19855
  },
19655
- /* @__PURE__ */ React227.createElement(
19856
+ /* @__PURE__ */ React229.createElement(
19656
19857
  LinkedAccounts,
19657
19858
  {
19658
19859
  elevated: elevatedLinkedAccounts,
@@ -19662,7 +19863,7 @@ var BankTransactionsWithLinkedAccounts = ({
19662
19863
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.linkedAccounts
19663
19864
  }
19664
19865
  ),
19665
- /* @__PURE__ */ React227.createElement(
19866
+ /* @__PURE__ */ React229.createElement(
19666
19867
  BankTransactions,
19667
19868
  {
19668
19869
  asWidget: true,
@@ -19678,7 +19879,7 @@ var BankTransactionsWithLinkedAccounts = ({
19678
19879
  };
19679
19880
 
19680
19881
  // src/views/GeneralLedger/GeneralLedger.tsx
19681
- import React228, { useState as useState64 } from "react";
19882
+ import React230, { useState as useState64 } from "react";
19682
19883
  var GeneralLedgerView = ({
19683
19884
  title,
19684
19885
  // deprecated
@@ -19687,13 +19888,13 @@ var GeneralLedgerView = ({
19687
19888
  chartOfAccountsOptions
19688
19889
  }) => {
19689
19890
  const [activeTab, setActiveTab] = useState64("chartOfAccounts");
19690
- return /* @__PURE__ */ React228.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React228.createElement(
19891
+ return /* @__PURE__ */ React230.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React230.createElement(
19691
19892
  View,
19692
19893
  {
19693
19894
  title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "General Ledger",
19694
19895
  showHeader: showTitle
19695
19896
  },
19696
- /* @__PURE__ */ React228.createElement(
19897
+ /* @__PURE__ */ React230.createElement(
19697
19898
  Toggle,
19698
19899
  {
19699
19900
  name: "general-ledger-tabs",
@@ -19711,7 +19912,7 @@ var GeneralLedgerView = ({
19711
19912
  onChange: (opt) => setActiveTab(opt.target.value)
19712
19913
  }
19713
19914
  ),
19714
- activeTab === "chartOfAccounts" ? /* @__PURE__ */ React228.createElement(
19915
+ activeTab === "chartOfAccounts" ? /* @__PURE__ */ React230.createElement(
19715
19916
  ChartOfAccounts,
19716
19917
  {
19717
19918
  asWidget: true,
@@ -19720,12 +19921,12 @@ var GeneralLedgerView = ({
19720
19921
  templateAccountsEditable: chartOfAccountsOptions == null ? void 0 : chartOfAccountsOptions.templateAccountsEditable,
19721
19922
  showReversalEntries: chartOfAccountsOptions == null ? void 0 : chartOfAccountsOptions.showReversalEntries
19722
19923
  }
19723
- ) : /* @__PURE__ */ React228.createElement(Journal, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.journal })
19924
+ ) : /* @__PURE__ */ React230.createElement(Journal, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.journal })
19724
19925
  ));
19725
19926
  };
19726
19927
 
19727
19928
  // src/views/ProjectProfitability/ProjectProfitability.tsx
19728
- import React229, { useState as useState65 } from "react";
19929
+ import React231, { useState as useState65 } from "react";
19729
19930
  import Select4 from "react-select";
19730
19931
  var ProjectProfitabilityView = ({
19731
19932
  valueOptions,
@@ -19750,14 +19951,14 @@ var ProjectProfitabilityView = ({
19750
19951
  values: tagFilter2.tagValues
19751
19952
  } : void 0;
19752
19953
  };
19753
- return /* @__PURE__ */ React229.createElement(
19954
+ return /* @__PURE__ */ React231.createElement(
19754
19955
  View,
19755
19956
  {
19756
19957
  title: (stringOverrides == null ? void 0 : stringOverrides.title) || "",
19757
19958
  showHeader: showTitle,
19758
19959
  viewClassName: "Layer__project-view"
19759
19960
  },
19760
- /* @__PURE__ */ React229.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ React229.createElement("div", { className: "Layer__component" }, /* @__PURE__ */ React229.createElement(
19961
+ /* @__PURE__ */ React231.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ React231.createElement("div", { className: "Layer__component" }, /* @__PURE__ */ React231.createElement(
19761
19962
  Toggle,
19762
19963
  {
19763
19964
  name: "project-tabs",
@@ -19778,7 +19979,7 @@ var ProjectProfitabilityView = ({
19778
19979
  selected: activeTab,
19779
19980
  onChange: (opt) => setActiveTab(opt.target.value)
19780
19981
  }
19781
- )), /* @__PURE__ */ React229.createElement(
19982
+ )), /* @__PURE__ */ React231.createElement(
19782
19983
  Select4,
19783
19984
  {
19784
19985
  className: "Layer__category-menu Layer__select",
@@ -19796,7 +19997,7 @@ var ProjectProfitabilityView = ({
19796
19997
  }
19797
19998
  }
19798
19999
  )),
19799
- /* @__PURE__ */ React229.createElement(Container, { name: "project" }, /* @__PURE__ */ React229.createElement(React229.Fragment, null, activeTab === "overview" && /* @__PURE__ */ React229.createElement(
20000
+ /* @__PURE__ */ React231.createElement(Container, { name: "project" }, /* @__PURE__ */ React231.createElement(React231.Fragment, null, activeTab === "overview" && /* @__PURE__ */ React231.createElement(
19800
20001
  AccountingOverview,
19801
20002
  {
19802
20003
  stringOverrides: { header: "Project Overview" },
@@ -19806,7 +20007,7 @@ var ProjectProfitabilityView = ({
19806
20007
  showTransactionsToReview: false,
19807
20008
  showTitle: false
19808
20009
  }
19809
- ), activeTab === "transactions" && /* @__PURE__ */ React229.createElement(
20010
+ ), activeTab === "transactions" && /* @__PURE__ */ React231.createElement(
19810
20011
  BankTransactions,
19811
20012
  {
19812
20013
  hideHeader: true,
@@ -19815,7 +20016,7 @@ var ProjectProfitabilityView = ({
19815
20016
  tagFilter: tagFilter != null ? tagFilter : void 0
19816
20017
  }
19817
20018
  }
19818
- ), activeTab === "report" && /* @__PURE__ */ React229.createElement(ProfitAndLoss, { asContainer: false, tagFilter: pnlTagFilter }, /* @__PURE__ */ React229.createElement(
20019
+ ), activeTab === "report" && /* @__PURE__ */ React231.createElement(ProfitAndLoss, { asContainer: false, tagFilter: pnlTagFilter }, /* @__PURE__ */ React231.createElement(
19819
20020
  ProfitAndLoss.Report,
19820
20021
  {
19821
20022
  stringOverrides,
@@ -19827,7 +20028,7 @@ var ProjectProfitabilityView = ({
19827
20028
  };
19828
20029
 
19829
20030
  // src/views/Reports/Reports.tsx
19830
- import React230, { useState as useState66 } from "react";
20031
+ import React232, { useState as useState66 } from "react";
19831
20032
  var getOptions = (enabledReports) => {
19832
20033
  return [
19833
20034
  enabledReports.includes("profitAndLoss") ? {
@@ -19858,13 +20059,13 @@ var Reports = ({
19858
20059
  const { view, containerRef } = useElementViewSize();
19859
20060
  const options = getOptions(enabledReports);
19860
20061
  const defaultTitle = enabledReports.length > 1 ? "Reports" : (_a = options.find((option) => option.value = enabledReports[0])) == null ? void 0 : _a.label;
19861
- return /* @__PURE__ */ React230.createElement(
20062
+ return /* @__PURE__ */ React232.createElement(
19862
20063
  View,
19863
20064
  {
19864
20065
  title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || defaultTitle,
19865
20066
  showHeader: showTitle
19866
20067
  },
19867
- enabledReports.length > 1 && /* @__PURE__ */ React230.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ React230.createElement(
20068
+ enabledReports.length > 1 && /* @__PURE__ */ React232.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ React232.createElement(
19868
20069
  Toggle,
19869
20070
  {
19870
20071
  name: "reports-tabs",
@@ -19873,7 +20074,7 @@ var Reports = ({
19873
20074
  onChange: (opt) => setActiveTab(opt.target.value)
19874
20075
  }
19875
20076
  )),
19876
- /* @__PURE__ */ React230.createElement(Container, { name: "reports", ref: containerRef }, /* @__PURE__ */ React230.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React230.createElement(
20077
+ /* @__PURE__ */ React232.createElement(Container, { name: "reports", ref: containerRef }, /* @__PURE__ */ React232.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ React232.createElement(
19877
20078
  ReportsPanel,
19878
20079
  {
19879
20080
  containerRef,
@@ -19896,7 +20097,7 @@ var ReportsPanel = ({
19896
20097
  statementOfCashFlowConfig,
19897
20098
  view
19898
20099
  }) => {
19899
- return /* @__PURE__ */ React230.createElement(React230.Fragment, null, openReport === "profitAndLoss" && /* @__PURE__ */ React230.createElement(
20100
+ return /* @__PURE__ */ React232.createElement(React232.Fragment, null, openReport === "profitAndLoss" && /* @__PURE__ */ React232.createElement(
19900
20101
  ProfitAndLoss.Report,
19901
20102
  __spreadValues({
19902
20103
  stringOverrides,
@@ -19904,7 +20105,7 @@ var ReportsPanel = ({
19904
20105
  parentRef: containerRef,
19905
20106
  view
19906
20107
  }, profitAndLossConfig)
19907
- ), openReport === "balanceSheet" && /* @__PURE__ */ React230.createElement(BalanceSheet, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.balanceSheet }), openReport === "statementOfCashFlow" && /* @__PURE__ */ React230.createElement(
20108
+ ), openReport === "balanceSheet" && /* @__PURE__ */ React232.createElement(BalanceSheet, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.balanceSheet }), openReport === "statementOfCashFlow" && /* @__PURE__ */ React232.createElement(
19908
20109
  StatementOfCashFlow,
19909
20110
  __spreadValues({
19910
20111
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.statementOfCashflow
@@ -19913,11 +20114,11 @@ var ReportsPanel = ({
19913
20114
  };
19914
20115
 
19915
20116
  // src/components/ProfitAndLossView/ProfitAndLossView.tsx
19916
- import React231, { useContext as useContext50, useRef as useRef23 } from "react";
20117
+ import React233, { useContext as useContext50, useRef as useRef23 } from "react";
19917
20118
  var COMPONENT_NAME7 = "profit-and-loss";
19918
20119
  var ProfitAndLossView = (props) => {
19919
20120
  const containerRef = useRef23(null);
19920
- return /* @__PURE__ */ React231.createElement(Container, { name: COMPONENT_NAME7, ref: containerRef }, /* @__PURE__ */ React231.createElement(ProfitAndLoss, null, /* @__PURE__ */ React231.createElement(ProfitAndLossPanel, __spreadValues({ containerRef }, props))));
20121
+ return /* @__PURE__ */ React233.createElement(Container, { name: COMPONENT_NAME7, ref: containerRef }, /* @__PURE__ */ React233.createElement(ProfitAndLoss, null, /* @__PURE__ */ React233.createElement(ProfitAndLossPanel, __spreadValues({ containerRef }, props))));
19921
20122
  };
19922
20123
  var ProfitAndLossPanel = (_a) => {
19923
20124
  var _b = _a, {
@@ -19928,10 +20129,10 @@ var ProfitAndLossPanel = (_a) => {
19928
20129
  "stringOverrides"
19929
20130
  ]);
19930
20131
  const { sidebarScope } = useContext50(ProfitAndLoss.Context);
19931
- return /* @__PURE__ */ React231.createElement(
20132
+ return /* @__PURE__ */ React233.createElement(
19932
20133
  Panel,
19933
20134
  {
19934
- sidebar: /* @__PURE__ */ React231.createElement(
20135
+ sidebar: /* @__PURE__ */ React233.createElement(
19935
20136
  ProfitAndLossDetailedCharts,
19936
20137
  {
19937
20138
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossDetailedCharts
@@ -19940,7 +20141,7 @@ var ProfitAndLossPanel = (_a) => {
19940
20141
  sidebarIsOpen: Boolean(sidebarScope),
19941
20142
  parentRef: containerRef
19942
20143
  },
19943
- /* @__PURE__ */ React231.createElement(
20144
+ /* @__PURE__ */ React233.createElement(
19944
20145
  ProfitAndLoss.Header,
19945
20146
  {
19946
20147
  text: (stringOverrides == null ? void 0 : stringOverrides.header) || "Profit & Loss",
@@ -19948,7 +20149,7 @@ var ProfitAndLossPanel = (_a) => {
19948
20149
  headingClassName: "Layer__profit-and-loss__title"
19949
20150
  }
19950
20151
  ),
19951
- /* @__PURE__ */ React231.createElement(Components, __spreadValues({ stringOverrides }, props))
20152
+ /* @__PURE__ */ React233.createElement(Components, __spreadValues({ stringOverrides }, props))
19952
20153
  );
19953
20154
  };
19954
20155
  var Components = ({
@@ -19960,7 +20161,7 @@ var Components = ({
19960
20161
  ProfitAndLoss.Context
19961
20162
  );
19962
20163
  if (!isLoading && error) {
19963
- return /* @__PURE__ */ React231.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React231.createElement(
20164
+ return /* @__PURE__ */ React233.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ React233.createElement(
19964
20165
  DataState,
19965
20166
  {
19966
20167
  status: "failed" /* failed */,
@@ -19971,26 +20172,26 @@ var Components = ({
19971
20172
  }
19972
20173
  ));
19973
20174
  }
19974
- return /* @__PURE__ */ React231.createElement(React231.Fragment, null, !hideChart && /* @__PURE__ */ React231.createElement("div", { className: `Layer__${COMPONENT_NAME7}__chart_with_summaries` }, /* @__PURE__ */ React231.createElement(
20175
+ return /* @__PURE__ */ React233.createElement(React233.Fragment, null, !hideChart && /* @__PURE__ */ React233.createElement("div", { className: `Layer__${COMPONENT_NAME7}__chart_with_summaries` }, /* @__PURE__ */ React233.createElement(
19975
20176
  "div",
19976
20177
  {
19977
20178
  className: `Layer__${COMPONENT_NAME7}__chart_with_summaries__summary-col`
19978
20179
  },
19979
- /* @__PURE__ */ React231.createElement(ProfitAndLoss.DatePicker, null),
19980
- /* @__PURE__ */ React231.createElement(
20180
+ /* @__PURE__ */ React233.createElement(ProfitAndLoss.DatePicker, null),
20181
+ /* @__PURE__ */ React233.createElement(
19981
20182
  ProfitAndLoss.Summaries,
19982
20183
  {
19983
20184
  actionable: true,
19984
20185
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossSummaries
19985
20186
  }
19986
20187
  )
19987
- ), /* @__PURE__ */ React231.createElement(
20188
+ ), /* @__PURE__ */ React233.createElement(
19988
20189
  "div",
19989
20190
  {
19990
20191
  className: `Layer__${COMPONENT_NAME7}__chart_with_summaries__chart-col`
19991
20192
  },
19992
- /* @__PURE__ */ React231.createElement(ProfitAndLoss.Chart, null)
19993
- )), !hideTable && /* @__PURE__ */ React231.createElement(
20193
+ /* @__PURE__ */ React233.createElement(ProfitAndLoss.Chart, null)
20194
+ )), !hideTable && /* @__PURE__ */ React233.createElement(
19994
20195
  ProfitAndLoss.Table,
19995
20196
  {
19996
20197
  stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossTable