@layerfi/components 0.1.83 → 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.
- package/dist/cjs/index.cjs +619 -419
- package/dist/esm/index.mjs +534 -334
- package/dist/index.d.ts +86 -1
- package/package.json +7 -2
- package/dist/esm/index.mjs.map +0 -7
- package/dist/index.css.map +0 -7
- package/eslint.config.mjs +0 -101
package/dist/cjs/index.cjs
CHANGED
|
@@ -115,7 +115,7 @@ var import_react17 = __toESM(require("react"));
|
|
|
115
115
|
var import_react16 = __toESM(require("react"));
|
|
116
116
|
|
|
117
117
|
// package.json
|
|
118
|
-
var version = "0.1.
|
|
118
|
+
var version = "0.1.84-alpha";
|
|
119
119
|
|
|
120
120
|
// src/models/APIError.ts
|
|
121
121
|
var APIError = class _APIError extends Error {
|
|
@@ -354,6 +354,9 @@ var getLedgerAccountsLines = get(
|
|
|
354
354
|
var getLedgerAccountsEntry = get(
|
|
355
355
|
({ businessId, entryId }) => `/v1/businesses/${businessId}/ledger/entries/${entryId}`
|
|
356
356
|
);
|
|
357
|
+
var getLedgerAccountBalancesCSV = get(
|
|
358
|
+
({ businessId }) => `/v1/businesses/${businessId}/ledger/balances/exports/csv`
|
|
359
|
+
);
|
|
357
360
|
|
|
358
361
|
// src/api/layer/journal.ts
|
|
359
362
|
var getJournal = get(
|
|
@@ -365,6 +368,9 @@ var createJournalEntries = post(
|
|
|
365
368
|
var reverseJournalEntry = post(
|
|
366
369
|
({ businessId, entryId }) => `/v1/businesses/${businessId}/ledger/entries/${entryId}/reverse`
|
|
367
370
|
);
|
|
371
|
+
var getJournalEntriesCSV = get(
|
|
372
|
+
({ businessId }) => `/v1/businesses/${businessId}/ledger/entries/exports/csv`
|
|
373
|
+
);
|
|
368
374
|
|
|
369
375
|
// src/api/layer/linked_accounts.ts
|
|
370
376
|
var syncConnection = post(({ businessId }) => `/v1/businesses/${businessId}/sync`);
|
|
@@ -507,6 +513,7 @@ var Layer = {
|
|
|
507
513
|
getCategories,
|
|
508
514
|
getChartOfAccounts,
|
|
509
515
|
getLedgerAccountBalances,
|
|
516
|
+
getLedgerAccountBalancesCSV,
|
|
510
517
|
getLedgerAccountsLines,
|
|
511
518
|
getLedgerAccountsEntry,
|
|
512
519
|
getProfitAndLoss,
|
|
@@ -514,6 +521,7 @@ var Layer = {
|
|
|
514
521
|
getProfitAndLossCsv,
|
|
515
522
|
getLinkedAccounts,
|
|
516
523
|
getJournal,
|
|
524
|
+
getJournalEntriesCSV,
|
|
517
525
|
reverseJournalEntry,
|
|
518
526
|
compareProfitAndLoss,
|
|
519
527
|
profitAndLossComparisonCsv,
|
|
@@ -15486,7 +15494,7 @@ var StatementOfCashFlowView = ({
|
|
|
15486
15494
|
};
|
|
15487
15495
|
|
|
15488
15496
|
// src/components/ChartOfAccounts/ChartOfAccounts.tsx
|
|
15489
|
-
var
|
|
15497
|
+
var import_react201 = __toESM(require("react"));
|
|
15490
15498
|
|
|
15491
15499
|
// src/contexts/ChartOfAccountsContext/ChartOfAccountsContext.tsx
|
|
15492
15500
|
var import_react183 = require("react");
|
|
@@ -16129,7 +16137,7 @@ var useLedgerAccounts = (showReversalEntries = false) => {
|
|
|
16129
16137
|
};
|
|
16130
16138
|
|
|
16131
16139
|
// src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
|
|
16132
|
-
var
|
|
16140
|
+
var import_react193 = __toESM(require("react"));
|
|
16133
16141
|
|
|
16134
16142
|
// src/icons/Plus.tsx
|
|
16135
16143
|
var React188 = __toESM(require("react"));
|
|
@@ -16562,6 +16570,91 @@ var ChartOfAccountsTableContent = ({
|
|
|
16562
16570
|
)));
|
|
16563
16571
|
};
|
|
16564
16572
|
|
|
16573
|
+
// src/components/ChartOfAccounts/download/AccountBalancesDownloadButton.tsx
|
|
16574
|
+
var import_react192 = __toESM(require("react"));
|
|
16575
|
+
|
|
16576
|
+
// src/components/ChartOfAccounts/download/useAccountBalancesDownload.ts
|
|
16577
|
+
var import_mutation4 = __toESM(require("swr/mutation"));
|
|
16578
|
+
function buildKey4({
|
|
16579
|
+
access_token: accessToken,
|
|
16580
|
+
apiUrl,
|
|
16581
|
+
businessId,
|
|
16582
|
+
startCutoff,
|
|
16583
|
+
endCutoff
|
|
16584
|
+
}) {
|
|
16585
|
+
if (accessToken && apiUrl) {
|
|
16586
|
+
return {
|
|
16587
|
+
accessToken,
|
|
16588
|
+
apiUrl,
|
|
16589
|
+
businessId,
|
|
16590
|
+
startCutoff,
|
|
16591
|
+
endCutoff,
|
|
16592
|
+
tags: ["#account-balances", "#exports", "#csv"]
|
|
16593
|
+
};
|
|
16594
|
+
}
|
|
16595
|
+
}
|
|
16596
|
+
function useAccountBalancesDownload({
|
|
16597
|
+
startCutoff,
|
|
16598
|
+
endCutoff,
|
|
16599
|
+
onSuccess
|
|
16600
|
+
}) {
|
|
16601
|
+
const { data: auth } = useAuth();
|
|
16602
|
+
const { businessId } = useLayerContext();
|
|
16603
|
+
return (0, import_mutation4.default)(
|
|
16604
|
+
() => buildKey4(__spreadProps(__spreadValues({}, auth), {
|
|
16605
|
+
businessId,
|
|
16606
|
+
startCutoff,
|
|
16607
|
+
endCutoff
|
|
16608
|
+
})),
|
|
16609
|
+
({ accessToken, apiUrl, businessId: businessId2, startCutoff: startCutoff2, endCutoff: endCutoff2 }) => getLedgerAccountBalancesCSV(
|
|
16610
|
+
apiUrl,
|
|
16611
|
+
accessToken,
|
|
16612
|
+
{
|
|
16613
|
+
params: {
|
|
16614
|
+
businessId: businessId2,
|
|
16615
|
+
startCutoff: startCutoff2 == null ? void 0 : startCutoff2.toISOString(),
|
|
16616
|
+
endCutoff: endCutoff2 == null ? void 0 : endCutoff2.toISOString()
|
|
16617
|
+
}
|
|
16618
|
+
}
|
|
16619
|
+
)().then(({ data }) => {
|
|
16620
|
+
if (onSuccess) {
|
|
16621
|
+
return onSuccess(data);
|
|
16622
|
+
}
|
|
16623
|
+
}),
|
|
16624
|
+
{
|
|
16625
|
+
revalidate: false,
|
|
16626
|
+
throwOnError: false
|
|
16627
|
+
}
|
|
16628
|
+
);
|
|
16629
|
+
}
|
|
16630
|
+
|
|
16631
|
+
// src/components/ChartOfAccounts/download/AccountBalancesDownloadButton.tsx
|
|
16632
|
+
function AccountBalancesDownloadButton({
|
|
16633
|
+
startCutoff,
|
|
16634
|
+
endCutoff,
|
|
16635
|
+
iconOnly
|
|
16636
|
+
}) {
|
|
16637
|
+
const { invisibleDownloadRef, triggerInvisibleDownload } = useInvisibleDownload();
|
|
16638
|
+
const { trigger, isMutating, error } = useAccountBalancesDownload({
|
|
16639
|
+
startCutoff,
|
|
16640
|
+
endCutoff,
|
|
16641
|
+
onSuccess: ({ presignedUrl }) => triggerInvisibleDownload({ url: presignedUrl })
|
|
16642
|
+
});
|
|
16643
|
+
return /* @__PURE__ */ import_react192.default.createElement(import_react192.default.Fragment, null, /* @__PURE__ */ import_react192.default.createElement(
|
|
16644
|
+
DownloadButton,
|
|
16645
|
+
{
|
|
16646
|
+
iconOnly,
|
|
16647
|
+
onClick: () => {
|
|
16648
|
+
trigger();
|
|
16649
|
+
},
|
|
16650
|
+
isDownloading: isMutating,
|
|
16651
|
+
requestFailed: Boolean(error),
|
|
16652
|
+
text: "Download CSV",
|
|
16653
|
+
retryText: "Retry"
|
|
16654
|
+
}
|
|
16655
|
+
), /* @__PURE__ */ import_react192.default.createElement(InvisibleDownload_default, { ref: invisibleDownloadRef }));
|
|
16656
|
+
}
|
|
16657
|
+
|
|
16565
16658
|
// src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
|
|
16566
16659
|
var COMPONENT_NAME5 = "chart-of-accounts";
|
|
16567
16660
|
var ChartOfAccountsTableWithPanel = ({
|
|
@@ -16570,18 +16663,19 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16570
16663
|
asWidget = false,
|
|
16571
16664
|
withDateControl = false,
|
|
16572
16665
|
withExpandAllButton = false,
|
|
16666
|
+
showAddAccountButton = true,
|
|
16573
16667
|
stringOverrides,
|
|
16574
16668
|
templateAccountsEditable
|
|
16575
16669
|
}) => {
|
|
16576
16670
|
var _a;
|
|
16577
|
-
const { data, isLoading, addAccount, error, isValidating, refetch, form } = (0,
|
|
16578
|
-
const [expandAll, setExpandAll] = (0,
|
|
16671
|
+
const { data, isLoading, addAccount, error, isValidating, refetch, form } = (0, import_react193.useContext)(ChartOfAccountsContext);
|
|
16672
|
+
const [expandAll, setExpandAll] = (0, import_react193.useState)();
|
|
16579
16673
|
const cumulativeIndex = 0;
|
|
16580
16674
|
const accountsLength = (_a = data == null ? void 0 : data.accounts.length) != null ? _a : 0;
|
|
16581
|
-
return /* @__PURE__ */
|
|
16675
|
+
return /* @__PURE__ */ import_react193.default.createElement(
|
|
16582
16676
|
Panel,
|
|
16583
16677
|
{
|
|
16584
|
-
sidebar: /* @__PURE__ */
|
|
16678
|
+
sidebar: /* @__PURE__ */ import_react193.default.createElement(
|
|
16585
16679
|
ChartOfAccountsSidebar,
|
|
16586
16680
|
{
|
|
16587
16681
|
parentRef: containerRef,
|
|
@@ -16591,7 +16685,7 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16591
16685
|
sidebarIsOpen: Boolean(form),
|
|
16592
16686
|
parentRef: containerRef
|
|
16593
16687
|
},
|
|
16594
|
-
/* @__PURE__ */
|
|
16688
|
+
/* @__PURE__ */ import_react193.default.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, asHeader: true, rounded: true }, /* @__PURE__ */ import_react193.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react193.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react193.default.createElement(
|
|
16595
16689
|
Heading,
|
|
16596
16690
|
{
|
|
16597
16691
|
className: `Layer__${COMPONENT_NAME5}__title`,
|
|
@@ -16599,13 +16693,13 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16599
16693
|
},
|
|
16600
16694
|
(stringOverrides == null ? void 0 : stringOverrides.headerText) || "Chart of Accounts"
|
|
16601
16695
|
)))),
|
|
16602
|
-
/* @__PURE__ */
|
|
16696
|
+
/* @__PURE__ */ import_react193.default.createElement(Header2, { className: `Layer__${COMPONENT_NAME5}__header`, sticky: true }, /* @__PURE__ */ import_react193.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react193.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react193.default.createElement(
|
|
16603
16697
|
Heading,
|
|
16604
16698
|
{
|
|
16605
16699
|
size: "secondary" /* secondary */,
|
|
16606
16700
|
className: `Layer__${COMPONENT_NAME5}__subtitle`
|
|
16607
16701
|
},
|
|
16608
|
-
withDateControl || withExpandAllButton ? /* @__PURE__ */
|
|
16702
|
+
withDateControl || withExpandAllButton ? /* @__PURE__ */ import_react193.default.createElement("div", { className: "Layer__header__actions-col" }, withDateControl && /* @__PURE__ */ import_react193.default.createElement(ChartOfAccountsDatePicker, null), withExpandAllButton && /* @__PURE__ */ import_react193.default.createElement(
|
|
16609
16703
|
ExpandCollapseButton,
|
|
16610
16704
|
{
|
|
16611
16705
|
iconOnly: view === "mobile",
|
|
@@ -16616,17 +16710,22 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16616
16710
|
variant: "secondary" /* secondary */
|
|
16617
16711
|
}
|
|
16618
16712
|
)) : null
|
|
16619
|
-
)), /* @__PURE__ */
|
|
16713
|
+
)), /* @__PURE__ */ import_react193.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react193.default.createElement(
|
|
16714
|
+
AccountBalancesDownloadButton,
|
|
16715
|
+
{
|
|
16716
|
+
iconOnly: ["mobile", "tablet"].includes(view)
|
|
16717
|
+
}
|
|
16718
|
+
), showAddAccountButton && /* @__PURE__ */ import_react193.default.createElement(
|
|
16620
16719
|
Button,
|
|
16621
16720
|
{
|
|
16622
16721
|
onClick: () => addAccount(),
|
|
16623
16722
|
disabled: isLoading,
|
|
16624
16723
|
iconOnly: ["mobile", "tablet"].includes(view),
|
|
16625
|
-
leftIcon: ["mobile", "tablet"].includes(view) && /* @__PURE__ */
|
|
16724
|
+
leftIcon: ["mobile", "tablet"].includes(view) && /* @__PURE__ */ import_react193.default.createElement(Plus_default, { size: 14 })
|
|
16626
16725
|
},
|
|
16627
16726
|
(stringOverrides == null ? void 0 : stringOverrides.addAccountButtonText) || "Add Account"
|
|
16628
16727
|
)))),
|
|
16629
|
-
data && /* @__PURE__ */
|
|
16728
|
+
data && /* @__PURE__ */ import_react193.default.createElement(
|
|
16630
16729
|
ChartOfAccountsTable,
|
|
16631
16730
|
{
|
|
16632
16731
|
view,
|
|
@@ -16639,7 +16738,7 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16639
16738
|
templateAccountsEditable
|
|
16640
16739
|
}
|
|
16641
16740
|
),
|
|
16642
|
-
error ? /* @__PURE__ */
|
|
16741
|
+
error ? /* @__PURE__ */ import_react193.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react193.default.createElement(
|
|
16643
16742
|
DataState,
|
|
16644
16743
|
{
|
|
16645
16744
|
status: "failed" /* failed */,
|
|
@@ -16649,8 +16748,8 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16649
16748
|
isLoading: isValidating || isLoading
|
|
16650
16749
|
}
|
|
16651
16750
|
)) : null,
|
|
16652
|
-
(!data || isLoading) && !error ? /* @__PURE__ */
|
|
16653
|
-
!isLoading && !error && (data == null ? void 0 : data.accounts.length) === 0 ? /* @__PURE__ */
|
|
16751
|
+
(!data || isLoading) && !error ? /* @__PURE__ */ import_react193.default.createElement("div", { className: `Layer__${COMPONENT_NAME5}__loader-container` }, /* @__PURE__ */ import_react193.default.createElement(Loader2, null)) : null,
|
|
16752
|
+
!isLoading && !error && (data == null ? void 0 : data.accounts.length) === 0 ? /* @__PURE__ */ import_react193.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react193.default.createElement(
|
|
16654
16753
|
DataState,
|
|
16655
16754
|
{
|
|
16656
16755
|
status: "info" /* info */,
|
|
@@ -16664,10 +16763,10 @@ var ChartOfAccountsTableWithPanel = ({
|
|
|
16664
16763
|
};
|
|
16665
16764
|
|
|
16666
16765
|
// src/components/LedgerAccount/LedgerAccountIndex.tsx
|
|
16667
|
-
var
|
|
16766
|
+
var import_react200 = __toESM(require("react"));
|
|
16668
16767
|
|
|
16669
16768
|
// src/components/LedgerAccountEntryDetails/LedgerAccountEntryDetails.tsx
|
|
16670
|
-
var
|
|
16769
|
+
var import_react198 = __toESM(require("react"));
|
|
16671
16770
|
|
|
16672
16771
|
// src/utils/journal.ts
|
|
16673
16772
|
var getAccountIdentifierPayload = (journalLineItem) => {
|
|
@@ -16691,14 +16790,14 @@ var entryNumber = (entry) => {
|
|
|
16691
16790
|
};
|
|
16692
16791
|
|
|
16693
16792
|
// src/components/Card/Card.tsx
|
|
16694
|
-
var
|
|
16793
|
+
var import_react194 = __toESM(require("react"));
|
|
16695
16794
|
var import_classnames63 = __toESM(require("classnames"));
|
|
16696
16795
|
var Card = ({ children, className }) => {
|
|
16697
|
-
return /* @__PURE__ */
|
|
16796
|
+
return /* @__PURE__ */ import_react194.default.createElement("div", { className: (0, import_classnames63.default)("Layer__card", className) }, children);
|
|
16698
16797
|
};
|
|
16699
16798
|
|
|
16700
16799
|
// src/components/DateTime/DateTime.tsx
|
|
16701
|
-
var
|
|
16800
|
+
var import_react195 = __toESM(require("react"));
|
|
16702
16801
|
var import_date_fns33 = require("date-fns");
|
|
16703
16802
|
var DateTime = ({
|
|
16704
16803
|
value,
|
|
@@ -16709,11 +16808,11 @@ var DateTime = ({
|
|
|
16709
16808
|
onlyTime
|
|
16710
16809
|
}) => {
|
|
16711
16810
|
if (format9) {
|
|
16712
|
-
return /* @__PURE__ */
|
|
16811
|
+
return /* @__PURE__ */ import_react195.default.createElement(Text, { className: "Layer__datetime" }, (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(value), format9));
|
|
16713
16812
|
}
|
|
16714
16813
|
const date = (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(value), dateFormat != null ? dateFormat : DATE_FORMAT);
|
|
16715
16814
|
const time = (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(value), timeFormat != null ? timeFormat : TIME_FORMAT);
|
|
16716
|
-
return /* @__PURE__ */
|
|
16815
|
+
return /* @__PURE__ */ import_react195.default.createElement(Text, { className: "Layer__datetime" }, !onlyTime && /* @__PURE__ */ import_react195.default.createElement(
|
|
16717
16816
|
Text,
|
|
16718
16817
|
{
|
|
16719
16818
|
as: "span",
|
|
@@ -16722,7 +16821,7 @@ var DateTime = ({
|
|
|
16722
16821
|
className: "Layer__datetime__date"
|
|
16723
16822
|
},
|
|
16724
16823
|
date
|
|
16725
|
-
), !onlyDate && /* @__PURE__ */
|
|
16824
|
+
), !onlyDate && /* @__PURE__ */ import_react195.default.createElement(
|
|
16726
16825
|
Text,
|
|
16727
16826
|
{
|
|
16728
16827
|
as: "span",
|
|
@@ -16735,7 +16834,7 @@ var DateTime = ({
|
|
|
16735
16834
|
};
|
|
16736
16835
|
|
|
16737
16836
|
// src/components/DetailsList/DetailsList.tsx
|
|
16738
|
-
var
|
|
16837
|
+
var import_react196 = __toESM(require("react"));
|
|
16739
16838
|
var import_classnames64 = __toESM(require("classnames"));
|
|
16740
16839
|
var DetailsList = ({
|
|
16741
16840
|
title,
|
|
@@ -16744,14 +16843,14 @@ var DetailsList = ({
|
|
|
16744
16843
|
titleClassName,
|
|
16745
16844
|
actions
|
|
16746
16845
|
}) => {
|
|
16747
|
-
return /* @__PURE__ */
|
|
16846
|
+
return /* @__PURE__ */ import_react196.default.createElement("div", { className: (0, import_classnames64.default)("Layer__details-list", className) }, title && /* @__PURE__ */ import_react196.default.createElement(Header, { className: titleClassName }, /* @__PURE__ */ import_react196.default.createElement(Heading, { size: "secondary" /* secondary */ }, title), actions && /* @__PURE__ */ import_react196.default.createElement("div", { className: "Layer__details-list__actions" }, actions)), /* @__PURE__ */ import_react196.default.createElement("ul", { className: "Layer__details-list__list" }, children));
|
|
16748
16847
|
};
|
|
16749
16848
|
|
|
16750
16849
|
// src/components/DetailsList/DetailsListItem.tsx
|
|
16751
|
-
var
|
|
16850
|
+
var import_react197 = __toESM(require("react"));
|
|
16752
16851
|
var renderValue = (value) => {
|
|
16753
16852
|
if (typeof value === "string") {
|
|
16754
|
-
return /* @__PURE__ */
|
|
16853
|
+
return /* @__PURE__ */ import_react197.default.createElement(Text, { weight: "bold" /* bold */, size: "sm" /* sm */ }, value);
|
|
16755
16854
|
}
|
|
16756
16855
|
return value;
|
|
16757
16856
|
};
|
|
@@ -16760,7 +16859,7 @@ var DetailsListItem = ({
|
|
|
16760
16859
|
children,
|
|
16761
16860
|
isLoading
|
|
16762
16861
|
}) => {
|
|
16763
|
-
return /* @__PURE__ */
|
|
16862
|
+
return /* @__PURE__ */ import_react197.default.createElement("li", { className: "Layer__details-list-item" }, /* @__PURE__ */ import_react197.default.createElement("label", { className: "Layer__details-list-item__label" }, label), /* @__PURE__ */ import_react197.default.createElement("span", { className: "Layer__details-list-item__value" }, isLoading ? /* @__PURE__ */ import_react197.default.createElement(SkeletonLoader, null) : renderValue(children)));
|
|
16764
16863
|
};
|
|
16765
16864
|
|
|
16766
16865
|
// src/components/LedgerAccountEntryDetails/LedgerAccountEntryDetails.tsx
|
|
@@ -16771,19 +16870,19 @@ var SourceDetailView = ({
|
|
|
16771
16870
|
switch (source.type) {
|
|
16772
16871
|
case "Transaction_Ledger_Entry_Source": {
|
|
16773
16872
|
const transactionSource = source;
|
|
16774
|
-
return /* @__PURE__ */
|
|
16873
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(
|
|
16775
16874
|
DetailsListItem,
|
|
16776
16875
|
{
|
|
16777
16876
|
label: (stringOverrides == null ? void 0 : stringOverrides.accountNameLabel) || "Account name"
|
|
16778
16877
|
},
|
|
16779
16878
|
transactionSource.account_name
|
|
16780
|
-
), /* @__PURE__ */
|
|
16879
|
+
), /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ import_react198.default.createElement(DateTime, { value: transactionSource.date })), /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(transactionSource.amount)}`), /* @__PURE__ */ import_react198.default.createElement(
|
|
16781
16880
|
DetailsListItem,
|
|
16782
16881
|
{
|
|
16783
16882
|
label: (stringOverrides == null ? void 0 : stringOverrides.directionLabel) || "Direction"
|
|
16784
16883
|
},
|
|
16785
16884
|
transactionSource.direction
|
|
16786
|
-
), /* @__PURE__ */
|
|
16885
|
+
), /* @__PURE__ */ import_react198.default.createElement(
|
|
16787
16886
|
DetailsListItem,
|
|
16788
16887
|
{
|
|
16789
16888
|
label: (stringOverrides == null ? void 0 : stringOverrides.counterpartyLabel) || "Counterparty"
|
|
@@ -16793,23 +16892,23 @@ var SourceDetailView = ({
|
|
|
16793
16892
|
}
|
|
16794
16893
|
case "Invoice_Ledger_Entry_Source": {
|
|
16795
16894
|
const invoiceSource = source;
|
|
16796
|
-
return /* @__PURE__ */
|
|
16895
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(
|
|
16797
16896
|
DetailsListItem,
|
|
16798
16897
|
{
|
|
16799
16898
|
label: (stringOverrides == null ? void 0 : stringOverrides.invoiceNumberLabel) || "Invoice number"
|
|
16800
16899
|
},
|
|
16801
16900
|
invoiceSource.invoice_number
|
|
16802
|
-
), /* @__PURE__ */
|
|
16901
|
+
), /* @__PURE__ */ import_react198.default.createElement(
|
|
16803
16902
|
DetailsListItem,
|
|
16804
16903
|
{
|
|
16805
16904
|
label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
|
|
16806
16905
|
},
|
|
16807
16906
|
invoiceSource.recipient_name
|
|
16808
|
-
), /* @__PURE__ */
|
|
16907
|
+
), /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.dateLabel) || "Date" }, /* @__PURE__ */ import_react198.default.createElement(DateTime, { value: invoiceSource.date })), /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoiceSource.amount)}`));
|
|
16809
16908
|
}
|
|
16810
16909
|
case "Manual_Ledger_Entry_Source": {
|
|
16811
16910
|
const manualSource = source;
|
|
16812
|
-
return /* @__PURE__ */
|
|
16911
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.memoLabel) || "Memo" }, manualSource.memo), /* @__PURE__ */ import_react198.default.createElement(
|
|
16813
16912
|
DetailsListItem,
|
|
16814
16913
|
{
|
|
16815
16914
|
label: (stringOverrides == null ? void 0 : stringOverrides.createdByLabel) || "Created by"
|
|
@@ -16819,17 +16918,17 @@ var SourceDetailView = ({
|
|
|
16819
16918
|
}
|
|
16820
16919
|
case "Invoice_Payment_Ledger_Entry_Source": {
|
|
16821
16920
|
const invoicePaymentSource = source;
|
|
16822
|
-
return /* @__PURE__ */
|
|
16921
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(
|
|
16823
16922
|
DetailsListItem,
|
|
16824
16923
|
{
|
|
16825
16924
|
label: (stringOverrides == null ? void 0 : stringOverrides.invoiceNumberLabel) || "Invoice number"
|
|
16826
16925
|
},
|
|
16827
16926
|
invoicePaymentSource.invoice_number
|
|
16828
|
-
), /* @__PURE__ */
|
|
16927
|
+
), /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(invoicePaymentSource.amount)}`));
|
|
16829
16928
|
}
|
|
16830
16929
|
case "Refund_Ledger_Entry_Source": {
|
|
16831
16930
|
const refundSource = source;
|
|
16832
|
-
return /* @__PURE__ */
|
|
16931
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ import_react198.default.createElement(
|
|
16833
16932
|
DetailsListItem,
|
|
16834
16933
|
{
|
|
16835
16934
|
label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
|
|
@@ -16839,7 +16938,7 @@ var SourceDetailView = ({
|
|
|
16839
16938
|
}
|
|
16840
16939
|
case "Refund_Payment_Ledger_Entry_Source": {
|
|
16841
16940
|
const refundSource = source;
|
|
16842
|
-
return /* @__PURE__ */
|
|
16941
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(refundSource.refunded_to_customer_amount)}`), /* @__PURE__ */ import_react198.default.createElement(
|
|
16843
16942
|
DetailsListItem,
|
|
16844
16943
|
{
|
|
16845
16944
|
label: (stringOverrides == null ? void 0 : stringOverrides.recipientNameLabel) || "Recipient name"
|
|
@@ -16849,7 +16948,7 @@ var SourceDetailView = ({
|
|
|
16849
16948
|
}
|
|
16850
16949
|
case "Opening_Balance_Ledger_Entry_Source": {
|
|
16851
16950
|
const openingBalanceSource = source;
|
|
16852
|
-
return /* @__PURE__ */
|
|
16951
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(
|
|
16853
16952
|
DetailsListItem,
|
|
16854
16953
|
{
|
|
16855
16954
|
label: (stringOverrides == null ? void 0 : stringOverrides.accountNameLabel) || "Account name"
|
|
@@ -16859,7 +16958,7 @@ var SourceDetailView = ({
|
|
|
16859
16958
|
}
|
|
16860
16959
|
case "Payout_Ledger_Entry_Source": {
|
|
16861
16960
|
const payoutSource = source;
|
|
16862
|
-
return /* @__PURE__ */
|
|
16961
|
+
return /* @__PURE__ */ import_react198.default.createElement(import_react198.default.Fragment, null, /* @__PURE__ */ import_react198.default.createElement(DetailsListItem, { label: (stringOverrides == null ? void 0 : stringOverrides.amountLabel) || "Amount" }, `$${centsToDollars(payoutSource.paid_out_amount)}`), /* @__PURE__ */ import_react198.default.createElement(
|
|
16863
16962
|
DetailsListItem,
|
|
16864
16963
|
{
|
|
16865
16964
|
label: (stringOverrides == null ? void 0 : stringOverrides.processorLabel) || "Processor"
|
|
@@ -16875,8 +16974,8 @@ var LedgerAccountEntryDetails = ({
|
|
|
16875
16974
|
stringOverrides
|
|
16876
16975
|
}) => {
|
|
16877
16976
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
16878
|
-
const { entryData, isLoadingEntry, closeSelectedEntry, errorEntry } = (0,
|
|
16879
|
-
const { totalDebit, totalCredit } = (0,
|
|
16977
|
+
const { entryData, isLoadingEntry, closeSelectedEntry, errorEntry } = (0, import_react198.useContext)(LedgerAccountsContext);
|
|
16978
|
+
const { totalDebit, totalCredit } = (0, import_react198.useMemo)(() => {
|
|
16880
16979
|
var _a2;
|
|
16881
16980
|
let totalDebit2 = 0;
|
|
16882
16981
|
let totalCredit2 = 0;
|
|
@@ -16889,15 +16988,15 @@ var LedgerAccountEntryDetails = ({
|
|
|
16889
16988
|
});
|
|
16890
16989
|
return { totalDebit: totalDebit2, totalCredit: totalCredit2 };
|
|
16891
16990
|
}, [entryData]);
|
|
16892
|
-
return /* @__PURE__ */
|
|
16991
|
+
return /* @__PURE__ */ import_react198.default.createElement("div", { className: "Layer__ledger-account__entry-details" }, /* @__PURE__ */ import_react198.default.createElement(Header2, { className: "Layer__ledger-account__entry-details__header" }, /* @__PURE__ */ import_react198.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react198.default.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ import_react198.default.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ import_react198.default.createElement(Heading, { size: "secondary" /* secondary */ }, (stringOverrides == null ? void 0 : stringOverrides.title) || "Transaction details")), /* @__PURE__ */ import_react198.default.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ import_react198.default.createElement(Heading, { size: "secondary" /* secondary */ }, ((_a = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _a.header) || "Transaction source")), /* @__PURE__ */ import_react198.default.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ import_react198.default.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ import_react198.default.createElement(
|
|
16893
16992
|
DetailsList,
|
|
16894
16993
|
{
|
|
16895
16994
|
title: ((_b = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _b.header) || "Transaction source",
|
|
16896
16995
|
titleClassName: "Layer__hidden-lg Layer__hidden-xl",
|
|
16897
|
-
actions: /* @__PURE__ */
|
|
16996
|
+
actions: /* @__PURE__ */ import_react198.default.createElement(
|
|
16898
16997
|
Button,
|
|
16899
16998
|
{
|
|
16900
|
-
rightIcon: /* @__PURE__ */
|
|
16999
|
+
rightIcon: /* @__PURE__ */ import_react198.default.createElement(X_default, null),
|
|
16901
17000
|
iconOnly: true,
|
|
16902
17001
|
onClick: closeSelectedEntry,
|
|
16903
17002
|
variant: "secondary" /* secondary */,
|
|
@@ -16905,16 +17004,16 @@ var LedgerAccountEntryDetails = ({
|
|
|
16905
17004
|
}
|
|
16906
17005
|
)
|
|
16907
17006
|
},
|
|
16908
|
-
/* @__PURE__ */
|
|
17007
|
+
/* @__PURE__ */ import_react198.default.createElement(
|
|
16909
17008
|
DetailsListItem,
|
|
16910
17009
|
{
|
|
16911
17010
|
label: ((_d = (_c = stringOverrides == null ? void 0 : stringOverrides.transactionSource) == null ? void 0 : _c.details) == null ? void 0 : _d.sourceLabel) || "Source",
|
|
16912
17011
|
isLoading: isLoadingEntry
|
|
16913
17012
|
},
|
|
16914
|
-
/* @__PURE__ */
|
|
17013
|
+
/* @__PURE__ */ import_react198.default.createElement(Badge, null, (_e = entryData == null ? void 0 : entryData.source) == null ? void 0 : _e.entity_name)
|
|
16915
17014
|
),
|
|
16916
|
-
((_f = entryData == null ? void 0 : entryData.source) == null ? void 0 : _f.display_description) && /* @__PURE__ */
|
|
16917
|
-
), /* @__PURE__ */
|
|
17015
|
+
((_f = entryData == null ? void 0 : entryData.source) == null ? void 0 : _f.display_description) && /* @__PURE__ */ import_react198.default.createElement(SourceDetailView, { source: entryData == null ? void 0 : entryData.source })
|
|
17016
|
+
), /* @__PURE__ */ import_react198.default.createElement(
|
|
16918
17017
|
DetailsList,
|
|
16919
17018
|
{
|
|
16920
17019
|
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(
|
|
@@ -16922,7 +17021,7 @@ var LedgerAccountEntryDetails = ({
|
|
|
16922
17021
|
) : `Journal Entry ${entryData ? entryNumber(entryData) : ""}`,
|
|
16923
17022
|
className: "Layer__border-top"
|
|
16924
17023
|
},
|
|
16925
|
-
/* @__PURE__ */
|
|
17024
|
+
/* @__PURE__ */ import_react198.default.createElement(
|
|
16926
17025
|
DetailsListItem,
|
|
16927
17026
|
{
|
|
16928
17027
|
label: ((_j = (_i = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _i.details) == null ? void 0 : _j.entryTypeLabel) || "Entry type",
|
|
@@ -16930,23 +17029,23 @@ var LedgerAccountEntryDetails = ({
|
|
|
16930
17029
|
},
|
|
16931
17030
|
humanizeEnum((_k = entryData == null ? void 0 : entryData.entry_type) != null ? _k : "")
|
|
16932
17031
|
),
|
|
16933
|
-
/* @__PURE__ */
|
|
17032
|
+
/* @__PURE__ */ import_react198.default.createElement(
|
|
16934
17033
|
DetailsListItem,
|
|
16935
17034
|
{
|
|
16936
17035
|
label: ((_m = (_l = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _l.details) == null ? void 0 : _m.dateLabel) || "Date",
|
|
16937
17036
|
isLoading: isLoadingEntry
|
|
16938
17037
|
},
|
|
16939
|
-
(entryData == null ? void 0 : entryData.entry_at) && /* @__PURE__ */
|
|
17038
|
+
(entryData == null ? void 0 : entryData.entry_at) && /* @__PURE__ */ import_react198.default.createElement(DateTime, { value: entryData == null ? void 0 : entryData.entry_at })
|
|
16940
17039
|
),
|
|
16941
|
-
/* @__PURE__ */
|
|
17040
|
+
/* @__PURE__ */ import_react198.default.createElement(
|
|
16942
17041
|
DetailsListItem,
|
|
16943
17042
|
{
|
|
16944
17043
|
label: ((_o = (_n = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _n.details) == null ? void 0 : _o.creationDateLabel) || "Creation date",
|
|
16945
17044
|
isLoading: isLoadingEntry
|
|
16946
17045
|
},
|
|
16947
|
-
(entryData == null ? void 0 : entryData.date) && /* @__PURE__ */
|
|
17046
|
+
(entryData == null ? void 0 : entryData.date) && /* @__PURE__ */ import_react198.default.createElement(DateTime, { value: entryData == null ? void 0 : entryData.date })
|
|
16948
17047
|
),
|
|
16949
|
-
(entryData == null ? void 0 : entryData.reversal_id) && /* @__PURE__ */
|
|
17048
|
+
(entryData == null ? void 0 : entryData.reversal_id) && /* @__PURE__ */ import_react198.default.createElement(
|
|
16950
17049
|
DetailsListItem,
|
|
16951
17050
|
{
|
|
16952
17051
|
label: ((_q = (_p = stringOverrides == null ? void 0 : stringOverrides.journalEntry) == null ? void 0 : _p.details) == null ? void 0 : _q.reversalLabel) || "Reversal",
|
|
@@ -16954,40 +17053,40 @@ var LedgerAccountEntryDetails = ({
|
|
|
16954
17053
|
},
|
|
16955
17054
|
entryData == null ? void 0 : entryData.reversal_id.substring(0, 5)
|
|
16956
17055
|
)
|
|
16957
|
-
), !isLoadingEntry && !errorEntry ? /* @__PURE__ */
|
|
17056
|
+
), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ import_react198.default.createElement("div", { className: "Layer__ledger-account__entry-details__line-items" }, /* @__PURE__ */ import_react198.default.createElement(Card, null, /* @__PURE__ */ import_react198.default.createElement(
|
|
16958
17057
|
Table,
|
|
16959
17058
|
{
|
|
16960
17059
|
componentName: "ledger-account__entry-details",
|
|
16961
17060
|
borderCollapse: "collapse"
|
|
16962
17061
|
},
|
|
16963
|
-
/* @__PURE__ */
|
|
16964
|
-
/* @__PURE__ */
|
|
17062
|
+
/* @__PURE__ */ import_react198.default.createElement(TableHead, null, /* @__PURE__ */ import_react198.default.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ import_react198.default.createElement(TableCell, null, ((_r = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _r.lineItemsColumnHeader) || "Line items"), /* @__PURE__ */ import_react198.default.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_s = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _s.debitColumnHeader) || "Debit"), /* @__PURE__ */ import_react198.default.createElement(TableCell, { align: "right" /* RIGHT */ }, ((_t = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _t.creditColumnHeader) || "Credit"))),
|
|
17063
|
+
/* @__PURE__ */ import_react198.default.createElement(TableBody, null, (_u = entryData == null ? void 0 : entryData.line_items) == null ? void 0 : _u.map((item, index) => {
|
|
16965
17064
|
var _a2;
|
|
16966
|
-
return /* @__PURE__ */
|
|
17065
|
+
return /* @__PURE__ */ import_react198.default.createElement(
|
|
16967
17066
|
TableRow,
|
|
16968
17067
|
{
|
|
16969
17068
|
key: `ledger-line-item-${index}`,
|
|
16970
17069
|
rowKey: `ledger-line-item-${index}`
|
|
16971
17070
|
},
|
|
16972
|
-
/* @__PURE__ */
|
|
16973
|
-
/* @__PURE__ */
|
|
16974
|
-
/* @__PURE__ */
|
|
17071
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, null, ((_a2 = item.account) == null ? void 0 : _a2.name) || ""),
|
|
17072
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ import_react198.default.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
|
|
17073
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, { align: "right" /* RIGHT */ }, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ import_react198.default.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
|
|
16975
17074
|
);
|
|
16976
|
-
}), /* @__PURE__ */
|
|
17075
|
+
}), /* @__PURE__ */ import_react198.default.createElement(
|
|
16977
17076
|
TableRow,
|
|
16978
17077
|
{
|
|
16979
17078
|
rowKey: "ledger-line-item-summation",
|
|
16980
17079
|
variant: "summation"
|
|
16981
17080
|
},
|
|
16982
|
-
/* @__PURE__ */
|
|
16983
|
-
/* @__PURE__ */
|
|
16984
|
-
/* @__PURE__ */
|
|
17081
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, { primary: true }, ((_v = stringOverrides == null ? void 0 : stringOverrides.lineItemsTable) == null ? void 0 : _v.totalRowHeader) || "Total"),
|
|
17082
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalDebit || 0),
|
|
17083
|
+
/* @__PURE__ */ import_react198.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, totalCredit || 0)
|
|
16985
17084
|
))
|
|
16986
17085
|
))) : null);
|
|
16987
17086
|
};
|
|
16988
17087
|
|
|
16989
17088
|
// src/components/LedgerAccount/LedgerAccountRow.tsx
|
|
16990
|
-
var
|
|
17089
|
+
var import_react199 = __toESM(require("react"));
|
|
16991
17090
|
var import_classnames65 = __toESM(require("classnames"));
|
|
16992
17091
|
var import_date_fns34 = require("date-fns");
|
|
16993
17092
|
var LedgerAccountRow = ({
|
|
@@ -16997,9 +17096,9 @@ var LedgerAccountRow = ({
|
|
|
16997
17096
|
view
|
|
16998
17097
|
}) => {
|
|
16999
17098
|
var _a, _b, _c, _d, _e, _f;
|
|
17000
|
-
const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0,
|
|
17001
|
-
const [showComponent, setShowComponent] = (0,
|
|
17002
|
-
(0,
|
|
17099
|
+
const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0, import_react199.useContext)(LedgerAccountsContext);
|
|
17100
|
+
const [showComponent, setShowComponent] = (0, import_react199.useState)(false);
|
|
17101
|
+
(0, import_react199.useEffect)(() => {
|
|
17003
17102
|
if (initialLoad) {
|
|
17004
17103
|
const timeoutId = setTimeout(() => {
|
|
17005
17104
|
setShowComponent(true);
|
|
@@ -17010,7 +17109,7 @@ var LedgerAccountRow = ({
|
|
|
17010
17109
|
}
|
|
17011
17110
|
}, []);
|
|
17012
17111
|
if (view === "tablet") {
|
|
17013
|
-
return /* @__PURE__ */
|
|
17112
|
+
return /* @__PURE__ */ import_react199.default.createElement(
|
|
17014
17113
|
"tr",
|
|
17015
17114
|
{
|
|
17016
17115
|
className: (0, import_classnames65.default)(
|
|
@@ -17029,21 +17128,21 @@ var LedgerAccountRow = ({
|
|
|
17029
17128
|
}
|
|
17030
17129
|
}
|
|
17031
17130
|
},
|
|
17032
|
-
/* @__PURE__ */
|
|
17131
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ import_react199.default.createElement(Text, null, row.date && (0, import_date_fns34.format)((0, import_date_fns34.parseISO)(row.date), DATE_FORMAT)), /* @__PURE__ */ import_react199.default.createElement(
|
|
17033
17132
|
Text,
|
|
17034
17133
|
{
|
|
17035
17134
|
weight: "normal" /* normal */,
|
|
17036
17135
|
className: "Layer__ledger_account-table__journal-id"
|
|
17037
17136
|
},
|
|
17038
17137
|
entryNumber(row)
|
|
17039
|
-
)), /* @__PURE__ */
|
|
17040
|
-
/* @__PURE__ */
|
|
17041
|
-
/* @__PURE__ */
|
|
17042
|
-
/* @__PURE__ */
|
|
17138
|
+
)), /* @__PURE__ */ import_react199.default.createElement(Text, null, (_b = (_a = row.source) == null ? void 0 : _a.display_description) != null ? _b : ""))),
|
|
17139
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
|
|
17140
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
|
|
17141
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
|
|
17043
17142
|
);
|
|
17044
17143
|
}
|
|
17045
17144
|
if (view === "mobile") {
|
|
17046
|
-
return /* @__PURE__ */
|
|
17145
|
+
return /* @__PURE__ */ import_react199.default.createElement(
|
|
17047
17146
|
"tr",
|
|
17048
17147
|
{
|
|
17049
17148
|
className: (0, import_classnames65.default)(
|
|
@@ -17062,17 +17161,17 @@ var LedgerAccountRow = ({
|
|
|
17062
17161
|
}
|
|
17063
17162
|
}
|
|
17064
17163
|
},
|
|
17065
|
-
/* @__PURE__ */
|
|
17164
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__ledger-account-table__tablet-main-col" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger-account-table__tablet-main-col__date" }, /* @__PURE__ */ import_react199.default.createElement(Text, null, row.date && (0, import_date_fns34.format)((0, import_date_fns34.parseISO)(row.date), DATE_FORMAT)), /* @__PURE__ */ import_react199.default.createElement(
|
|
17066
17165
|
Text,
|
|
17067
17166
|
{
|
|
17068
17167
|
weight: "normal" /* normal */,
|
|
17069
17168
|
className: "Layer__ledger_account-table__journal-id"
|
|
17070
17169
|
},
|
|
17071
17170
|
entryNumber(row)
|
|
17072
|
-
)), /* @__PURE__ */
|
|
17171
|
+
)), /* @__PURE__ */ import_react199.default.createElement(Text, null, (_d = (_c = row.source) == null ? void 0 : _c.display_description) != null ? _d : ""), /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger_account-table__balances-mobile" }, /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Debit"), /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, " ", row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Credit"), /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)), /* @__PURE__ */ import_react199.default.createElement("div", { className: "Layer__ledger_account-table__balance-item" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__label" }, "Running balance"), /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__ledger_account-table__balances-mobile__value" }, `$${centsToDollars(row.running_balance)}`)))))
|
|
17073
17172
|
);
|
|
17074
17173
|
}
|
|
17075
|
-
return /* @__PURE__ */
|
|
17174
|
+
return /* @__PURE__ */ import_react199.default.createElement(
|
|
17076
17175
|
"tr",
|
|
17077
17176
|
{
|
|
17078
17177
|
className: (0, import_classnames65.default)(
|
|
@@ -17091,12 +17190,12 @@ var LedgerAccountRow = ({
|
|
|
17091
17190
|
}
|
|
17092
17191
|
}
|
|
17093
17192
|
},
|
|
17094
|
-
/* @__PURE__ */
|
|
17095
|
-
/* @__PURE__ */
|
|
17096
|
-
/* @__PURE__ */
|
|
17097
|
-
/* @__PURE__ */
|
|
17098
|
-
/* @__PURE__ */
|
|
17099
|
-
/* @__PURE__ */
|
|
17193
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content" }, row.date && (0, import_date_fns34.format)((0, import_date_fns34.parseISO)(row.date), DATE_FORMAT))),
|
|
17194
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content" }, entryNumber(row))),
|
|
17195
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content" }, (_f = (_e = row.source) == null ? void 0 : _e.display_description) != null ? _f : "")),
|
|
17196
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "DEBIT" /* DEBIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
|
|
17197
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, row.direction === "CREDIT" /* CREDIT */ && `$${centsToDollars((row == null ? void 0 : row.amount) || 0)}`)),
|
|
17198
|
+
/* @__PURE__ */ import_react199.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react199.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, `$${centsToDollars(row.running_balance)}`))
|
|
17100
17199
|
);
|
|
17101
17200
|
};
|
|
17102
17201
|
|
|
@@ -17109,9 +17208,9 @@ var LedgerAccount = ({
|
|
|
17109
17208
|
stringOverrides
|
|
17110
17209
|
}) => {
|
|
17111
17210
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
17112
|
-
const [currentPage, setCurrentPage] = (0,
|
|
17113
|
-
const [initialLoad, setInitialLoad] = (0,
|
|
17114
|
-
const { data: accountData } = (0,
|
|
17211
|
+
const [currentPage, setCurrentPage] = (0, import_react200.useState)(1);
|
|
17212
|
+
const [initialLoad, setInitialLoad] = (0, import_react200.useState)(true);
|
|
17213
|
+
const { data: accountData } = (0, import_react200.useContext)(ChartOfAccountsContext);
|
|
17115
17214
|
const {
|
|
17116
17215
|
data: rawData,
|
|
17117
17216
|
error,
|
|
@@ -17122,8 +17221,8 @@ var LedgerAccount = ({
|
|
|
17122
17221
|
selectedEntryId,
|
|
17123
17222
|
closeSelectedEntry,
|
|
17124
17223
|
refetch
|
|
17125
|
-
} = (0,
|
|
17126
|
-
(0,
|
|
17224
|
+
} = (0, import_react200.useContext)(LedgerAccountsContext);
|
|
17225
|
+
(0, import_react200.useEffect)(() => {
|
|
17127
17226
|
if (!isLoading) {
|
|
17128
17227
|
const timeoutLoad = setTimeout(() => {
|
|
17129
17228
|
setInitialLoad(false);
|
|
@@ -17135,12 +17234,12 @@ var LedgerAccount = ({
|
|
|
17135
17234
|
"Layer__ledger-account__index",
|
|
17136
17235
|
accountId && "open"
|
|
17137
17236
|
);
|
|
17138
|
-
const account = (0,
|
|
17237
|
+
const account = (0, import_react200.useMemo)(() => {
|
|
17139
17238
|
return flattenAccounts((accountData == null ? void 0 : accountData.accounts) || []).find(
|
|
17140
17239
|
(x) => x.id === accountId
|
|
17141
17240
|
);
|
|
17142
17241
|
}, [accountId]);
|
|
17143
|
-
const data = (0,
|
|
17242
|
+
const data = (0, import_react200.useMemo)(() => {
|
|
17144
17243
|
var _a2;
|
|
17145
17244
|
const firstPageIndex = (currentPage - 1) * pageSize;
|
|
17146
17245
|
const lastPageIndex = firstPageIndex + pageSize;
|
|
@@ -17150,10 +17249,10 @@ var LedgerAccount = ({
|
|
|
17150
17249
|
setAccountId(void 0);
|
|
17151
17250
|
closeSelectedEntry();
|
|
17152
17251
|
};
|
|
17153
|
-
return /* @__PURE__ */
|
|
17252
|
+
return /* @__PURE__ */ import_react200.default.createElement(
|
|
17154
17253
|
Panel,
|
|
17155
17254
|
{
|
|
17156
|
-
sidebar: /* @__PURE__ */
|
|
17255
|
+
sidebar: /* @__PURE__ */ import_react200.default.createElement(
|
|
17157
17256
|
LedgerAccountEntryDetails,
|
|
17158
17257
|
{
|
|
17159
17258
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.ledgerEntryDetail
|
|
@@ -17163,21 +17262,21 @@ var LedgerAccount = ({
|
|
|
17163
17262
|
parentRef: containerRef,
|
|
17164
17263
|
className: "Layer__ledger-account__panel"
|
|
17165
17264
|
},
|
|
17166
|
-
/* @__PURE__ */
|
|
17265
|
+
/* @__PURE__ */ import_react200.default.createElement("div", { className: baseClassName }, /* @__PURE__ */ import_react200.default.createElement(Header2, { className: "Layer__ledger-account__header" }, /* @__PURE__ */ import_react200.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react200.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react200.default.createElement(BackButton, { onClick: close }), /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__ledger-account__title-container" }, /* @__PURE__ */ import_react200.default.createElement(
|
|
17167
17266
|
Text,
|
|
17168
17267
|
{
|
|
17169
17268
|
weight: "bold" /* bold */,
|
|
17170
17269
|
className: "Layer__ledger-account__title"
|
|
17171
17270
|
},
|
|
17172
17271
|
(_a = account == null ? void 0 : account.name) != null ? _a : ""
|
|
17173
|
-
), /* @__PURE__ */
|
|
17272
|
+
), /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__ledger-account__balance-container" }, /* @__PURE__ */ import_react200.default.createElement(
|
|
17174
17273
|
Text,
|
|
17175
17274
|
{
|
|
17176
17275
|
className: "Layer__ledger-account__balance-label",
|
|
17177
17276
|
size: "sm" /* sm */
|
|
17178
17277
|
},
|
|
17179
17278
|
"Current balance"
|
|
17180
|
-
), /* @__PURE__ */
|
|
17279
|
+
), /* @__PURE__ */ import_react200.default.createElement(
|
|
17181
17280
|
Text,
|
|
17182
17281
|
{
|
|
17183
17282
|
className: "Layer__ledger-account__balance-value",
|
|
@@ -17185,9 +17284,9 @@ var LedgerAccount = ({
|
|
|
17185
17284
|
},
|
|
17186
17285
|
"$",
|
|
17187
17286
|
centsToDollars((account == null ? void 0 : account.balance) || 0)
|
|
17188
|
-
)))))), /* @__PURE__ */
|
|
17287
|
+
)))))), /* @__PURE__ */ import_react200.default.createElement("table", { className: "Layer__table Layer__table--hover-effect Layer__ledger-account-table" }, /* @__PURE__ */ import_react200.default.createElement("thead", null, /* @__PURE__ */ import_react200.default.createElement("tr", null, view !== "desktop" && /* @__PURE__ */ import_react200.default.createElement("th", null), view === "desktop" && /* @__PURE__ */ import_react200.default.createElement(import_react200.default.Fragment, null, /* @__PURE__ */ import_react200.default.createElement("th", { className: "Layer__table-header" }, ((_b = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _b.dateColumnHeader) || "Date"), /* @__PURE__ */ import_react200.default.createElement("th", { className: "Layer__table-header" }, ((_c = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _c.journalIdColumnHeader) || "Journal id #"), /* @__PURE__ */ import_react200.default.createElement("th", { className: "Layer__table-header" }, ((_d = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _d.sourceColumnHeader) || "Source")), view !== "mobile" && /* @__PURE__ */ import_react200.default.createElement(import_react200.default.Fragment, null, /* @__PURE__ */ import_react200.default.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_e = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _e.debitColumnHeader) || "Debit"), /* @__PURE__ */ import_react200.default.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, ((_f = stringOverrides == null ? void 0 : stringOverrides.ledgerEntriesTable) == null ? void 0 : _f.creditColumnHeader) || "Credit"), /* @__PURE__ */ import_react200.default.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__ */ import_react200.default.createElement("tbody", null, (_h = data == null ? void 0 : data.filter(
|
|
17189
17288
|
(entry) => !entry.entry_reversal_of && !entry.entry_reversed_by
|
|
17190
|
-
)) == null ? void 0 : _h.map((x, index) => /* @__PURE__ */
|
|
17289
|
+
)) == null ? void 0 : _h.map((x, index) => /* @__PURE__ */ import_react200.default.createElement(
|
|
17191
17290
|
LedgerAccountRow,
|
|
17192
17291
|
{
|
|
17193
17292
|
key: x.id,
|
|
@@ -17196,7 +17295,7 @@ var LedgerAccount = ({
|
|
|
17196
17295
|
initialLoad,
|
|
17197
17296
|
view
|
|
17198
17297
|
}
|
|
17199
|
-
)))), data && /* @__PURE__ */
|
|
17298
|
+
)))), data && /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__ledger-account__pagination" }, /* @__PURE__ */ import_react200.default.createElement(
|
|
17200
17299
|
Pagination,
|
|
17201
17300
|
{
|
|
17202
17301
|
currentPage,
|
|
@@ -17204,7 +17303,7 @@ var LedgerAccount = ({
|
|
|
17204
17303
|
pageSize,
|
|
17205
17304
|
onPageChange: (page) => setCurrentPage(page)
|
|
17206
17305
|
}
|
|
17207
|
-
)), error ? /* @__PURE__ */
|
|
17306
|
+
)), error ? /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react200.default.createElement(
|
|
17208
17307
|
DataState,
|
|
17209
17308
|
{
|
|
17210
17309
|
status: "failed" /* failed */,
|
|
@@ -17213,7 +17312,7 @@ var LedgerAccount = ({
|
|
|
17213
17312
|
onRefresh: () => refetch(),
|
|
17214
17313
|
isLoading: isValidating || isLoading
|
|
17215
17314
|
}
|
|
17216
|
-
)) : null, (!data || isLoading) && !error ? /* @__PURE__ */
|
|
17315
|
+
)) : null, (!data || isLoading) && !error ? /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__ledger-account__loader-container" }, /* @__PURE__ */ import_react200.default.createElement(Loader2, null)) : null, !isLoading && !error && (data == null ? void 0 : data.length) === 0 ? /* @__PURE__ */ import_react200.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react200.default.createElement(
|
|
17217
17316
|
DataState,
|
|
17218
17317
|
{
|
|
17219
17318
|
status: "info" /* info */,
|
|
@@ -17234,25 +17333,26 @@ var ChartOfAccounts = (props) => {
|
|
|
17234
17333
|
const ledgerAccountsContextData = useLedgerAccounts(
|
|
17235
17334
|
(_a = props.showReversalEntries) != null ? _a : false
|
|
17236
17335
|
);
|
|
17237
|
-
return /* @__PURE__ */
|
|
17336
|
+
return /* @__PURE__ */ import_react201.default.createElement(ChartOfAccountsContext.Provider, { value: chartOfAccountsContextData }, /* @__PURE__ */ import_react201.default.createElement(LedgerAccountsContext.Provider, { value: ledgerAccountsContextData }, /* @__PURE__ */ import_react201.default.createElement(ChartOfAccountsContent, __spreadValues({}, props))));
|
|
17238
17337
|
};
|
|
17239
17338
|
var ChartOfAccountsContent = ({
|
|
17240
17339
|
asWidget,
|
|
17241
17340
|
withDateControl,
|
|
17242
17341
|
withExpandAllButton,
|
|
17243
17342
|
stringOverrides,
|
|
17244
|
-
templateAccountsEditable
|
|
17343
|
+
templateAccountsEditable,
|
|
17344
|
+
showAddAccountButton
|
|
17245
17345
|
}) => {
|
|
17246
|
-
const { accountId } = (0,
|
|
17346
|
+
const { accountId } = (0, import_react201.useContext)(LedgerAccountsContext);
|
|
17247
17347
|
const { view, containerRef } = useElementViewSize();
|
|
17248
|
-
return /* @__PURE__ */
|
|
17348
|
+
return /* @__PURE__ */ import_react201.default.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ import_react201.default.createElement(
|
|
17249
17349
|
LedgerAccount,
|
|
17250
17350
|
{
|
|
17251
17351
|
view,
|
|
17252
17352
|
containerRef,
|
|
17253
17353
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.ledgerAccount
|
|
17254
17354
|
}
|
|
17255
|
-
) : /* @__PURE__ */
|
|
17355
|
+
) : /* @__PURE__ */ import_react201.default.createElement(
|
|
17256
17356
|
ChartOfAccountsTableWithPanel,
|
|
17257
17357
|
{
|
|
17258
17358
|
asWidget,
|
|
@@ -17260,6 +17360,7 @@ var ChartOfAccountsContent = ({
|
|
|
17260
17360
|
withExpandAllButton,
|
|
17261
17361
|
view,
|
|
17262
17362
|
containerRef,
|
|
17363
|
+
showAddAccountButton,
|
|
17263
17364
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.chartOfAccountsTable,
|
|
17264
17365
|
templateAccountsEditable
|
|
17265
17366
|
}
|
|
@@ -17267,11 +17368,11 @@ var ChartOfAccountsContent = ({
|
|
|
17267
17368
|
};
|
|
17268
17369
|
|
|
17269
17370
|
// src/components/Journal/Journal.tsx
|
|
17270
|
-
var
|
|
17371
|
+
var import_react211 = __toESM(require("react"));
|
|
17271
17372
|
|
|
17272
17373
|
// src/contexts/JournalContext/JournalContext.tsx
|
|
17273
|
-
var
|
|
17274
|
-
var JournalContext = (0,
|
|
17374
|
+
var import_react202 = require("react");
|
|
17375
|
+
var JournalContext = (0, import_react202.createContext)({
|
|
17275
17376
|
data: void 0,
|
|
17276
17377
|
isLoading: false,
|
|
17277
17378
|
error: void 0,
|
|
@@ -17305,7 +17406,7 @@ var JournalContext = (0, import_react201.createContext)({
|
|
|
17305
17406
|
});
|
|
17306
17407
|
|
|
17307
17408
|
// src/hooks/useJournal/useJournal.tsx
|
|
17308
|
-
var
|
|
17409
|
+
var import_react203 = require("react");
|
|
17309
17410
|
var import_swr11 = __toESM(require("swr"));
|
|
17310
17411
|
var useJournal = () => {
|
|
17311
17412
|
const {
|
|
@@ -17317,11 +17418,11 @@ var useJournal = () => {
|
|
|
17317
17418
|
} = useLayerContext();
|
|
17318
17419
|
const { apiUrl } = useEnvironment();
|
|
17319
17420
|
const { data: auth } = useAuth();
|
|
17320
|
-
const [selectedEntryId, setSelectedEntryId] = (0,
|
|
17321
|
-
const [form, setForm] = (0,
|
|
17322
|
-
const [addingEntry, setAddingEntry] = (0,
|
|
17323
|
-
const [sendingForm, setSendingForm] = (0,
|
|
17324
|
-
const [apiError, setApiError] = (0,
|
|
17421
|
+
const [selectedEntryId, setSelectedEntryId] = (0, import_react203.useState)();
|
|
17422
|
+
const [form, setForm] = (0, import_react203.useState)();
|
|
17423
|
+
const [addingEntry, setAddingEntry] = (0, import_react203.useState)(false);
|
|
17424
|
+
const [sendingForm, setSendingForm] = (0, import_react203.useState)(false);
|
|
17425
|
+
const [apiError, setApiError] = (0, import_react203.useState)(void 0);
|
|
17325
17426
|
const queryKey = businessId && (auth == null ? void 0 : auth.access_token) && `journal-lines-${businessId}`;
|
|
17326
17427
|
const { data, isLoading, isValidating, error, mutate } = (0, import_swr11.default)(
|
|
17327
17428
|
queryKey,
|
|
@@ -17537,12 +17638,12 @@ var useJournal = () => {
|
|
|
17537
17638
|
params: { businessId, entryId }
|
|
17538
17639
|
});
|
|
17539
17640
|
});
|
|
17540
|
-
(0,
|
|
17641
|
+
(0, import_react203.useEffect)(() => {
|
|
17541
17642
|
if (queryKey && (isLoading || isValidating)) {
|
|
17542
17643
|
read("JOURNAL" /* JOURNAL */, queryKey);
|
|
17543
17644
|
}
|
|
17544
17645
|
}, [isLoading, isValidating]);
|
|
17545
|
-
(0,
|
|
17646
|
+
(0, import_react203.useEffect)(() => {
|
|
17546
17647
|
if (queryKey && hasBeenTouched(queryKey)) {
|
|
17547
17648
|
refetch();
|
|
17548
17649
|
}
|
|
@@ -17574,13 +17675,13 @@ var useJournal = () => {
|
|
|
17574
17675
|
};
|
|
17575
17676
|
|
|
17576
17677
|
// src/components/JournalTable/JournalTableWithPanel.tsx
|
|
17577
|
-
var
|
|
17678
|
+
var import_react210 = __toESM(require("react"));
|
|
17578
17679
|
|
|
17579
17680
|
// src/components/JournalSidebar/JournalSidebar.tsx
|
|
17580
|
-
var
|
|
17681
|
+
var import_react207 = __toESM(require("react"));
|
|
17581
17682
|
|
|
17582
17683
|
// src/components/JournalEntryDetails/JournalEntryDetails.tsx
|
|
17583
|
-
var
|
|
17684
|
+
var import_react204 = __toESM(require("react"));
|
|
17584
17685
|
var JournalEntryDetails = () => {
|
|
17585
17686
|
var _a, _b, _c, _d;
|
|
17586
17687
|
const {
|
|
@@ -17591,16 +17692,16 @@ var JournalEntryDetails = () => {
|
|
|
17591
17692
|
selectedEntryId,
|
|
17592
17693
|
reverseEntry,
|
|
17593
17694
|
refetch
|
|
17594
|
-
} = (0,
|
|
17595
|
-
const [reverseEntryProcessing, setReverseEntryProcessing] = (0,
|
|
17596
|
-
const [reverseEntryError, setReverseEntryError] = (0,
|
|
17597
|
-
const entry = (0,
|
|
17695
|
+
} = (0, import_react204.useContext)(JournalContext);
|
|
17696
|
+
const [reverseEntryProcessing, setReverseEntryProcessing] = (0, import_react204.useState)(false);
|
|
17697
|
+
const [reverseEntryError, setReverseEntryError] = (0, import_react204.useState)();
|
|
17698
|
+
const entry = (0, import_react204.useMemo)(() => {
|
|
17598
17699
|
if (selectedEntryId && data) {
|
|
17599
17700
|
return data.find((x) => x.id === selectedEntryId);
|
|
17600
17701
|
}
|
|
17601
17702
|
return;
|
|
17602
17703
|
}, [data, selectedEntryId]);
|
|
17603
|
-
const sortedLineItems = (0,
|
|
17704
|
+
const sortedLineItems = (0, import_react204.useMemo)(
|
|
17604
17705
|
() => {
|
|
17605
17706
|
var _a2;
|
|
17606
17707
|
return (_a2 = entry == null ? void 0 : entry.line_items) == null ? void 0 : _a2.sort(
|
|
@@ -17624,15 +17725,15 @@ var JournalEntryDetails = () => {
|
|
|
17624
17725
|
setReverseEntryProcessing(false);
|
|
17625
17726
|
}
|
|
17626
17727
|
});
|
|
17627
|
-
return /* @__PURE__ */
|
|
17728
|
+
return /* @__PURE__ */ import_react204.default.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ import_react204.default.createElement(Header2, { className: "Layer__journal__entry-details__mobile-header" }, /* @__PURE__ */ import_react204.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react204.default.createElement(HeaderCol, { className: "Layer__hidden-lg Layer__hidden-xl" }, /* @__PURE__ */ import_react204.default.createElement(BackButton, { onClick: closeSelectedEntry }), /* @__PURE__ */ import_react204.default.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction details")), /* @__PURE__ */ import_react204.default.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ import_react204.default.createElement(Heading, { size: "secondary" /* secondary */ }, "Transaction source")), /* @__PURE__ */ import_react204.default.createElement(HeaderCol, { className: "Layer__show-lg Layer__show-xl" }, /* @__PURE__ */ import_react204.default.createElement(CloseButton, { onClick: closeSelectedEntry })))), /* @__PURE__ */ import_react204.default.createElement(
|
|
17628
17729
|
DetailsList,
|
|
17629
17730
|
{
|
|
17630
17731
|
title: "Transaction source",
|
|
17631
17732
|
titleClassName: "Layer__hidden-lg Layer__hidden-xl",
|
|
17632
|
-
actions: /* @__PURE__ */
|
|
17733
|
+
actions: /* @__PURE__ */ import_react204.default.createElement(
|
|
17633
17734
|
Button,
|
|
17634
17735
|
{
|
|
17635
|
-
rightIcon: /* @__PURE__ */
|
|
17736
|
+
rightIcon: /* @__PURE__ */ import_react204.default.createElement(X_default, null),
|
|
17636
17737
|
iconOnly: true,
|
|
17637
17738
|
onClick: closeSelectedEntry,
|
|
17638
17739
|
className: "Layer__details-list__close-btn",
|
|
@@ -17640,32 +17741,32 @@ var JournalEntryDetails = () => {
|
|
|
17640
17741
|
}
|
|
17641
17742
|
)
|
|
17642
17743
|
},
|
|
17643
|
-
/* @__PURE__ */
|
|
17644
|
-
((_b = entry == null ? void 0 : entry.source) == null ? void 0 : _b.display_description) && /* @__PURE__ */
|
|
17645
|
-
), /* @__PURE__ */
|
|
17744
|
+
/* @__PURE__ */ import_react204.default.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ import_react204.default.createElement(Badge, null, (_a = entry == null ? void 0 : entry.source) == null ? void 0 : _a.entity_name)),
|
|
17745
|
+
((_b = entry == null ? void 0 : entry.source) == null ? void 0 : _b.display_description) && /* @__PURE__ */ import_react204.default.createElement(SourceDetailView, { source: entry == null ? void 0 : entry.source })
|
|
17746
|
+
), /* @__PURE__ */ import_react204.default.createElement(
|
|
17646
17747
|
DetailsList,
|
|
17647
17748
|
{
|
|
17648
17749
|
title: `Journal Entry ${entry ? entryNumber(entry) : ""}`,
|
|
17649
17750
|
className: "Layer__border-top"
|
|
17650
17751
|
},
|
|
17651
|
-
/* @__PURE__ */
|
|
17652
|
-
/* @__PURE__ */
|
|
17653
|
-
/* @__PURE__ */
|
|
17654
|
-
(entry == null ? void 0 : entry.reversal_id) && /* @__PURE__ */
|
|
17655
|
-
), !isLoadingEntry && !errorEntry ? /* @__PURE__ */
|
|
17752
|
+
/* @__PURE__ */ import_react204.default.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum((_c = entry == null ? void 0 : entry.entry_type) != null ? _c : "")),
|
|
17753
|
+
/* @__PURE__ */ import_react204.default.createElement(DetailsListItem, { label: "Effective date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.entry_at) && /* @__PURE__ */ import_react204.default.createElement(DateTime, { value: entry == null ? void 0 : entry.entry_at })),
|
|
17754
|
+
/* @__PURE__ */ import_react204.default.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, (entry == null ? void 0 : entry.date) && /* @__PURE__ */ import_react204.default.createElement(DateTime, { value: entry == null ? void 0 : entry.date })),
|
|
17755
|
+
(entry == null ? void 0 : entry.reversal_id) && /* @__PURE__ */ import_react204.default.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, `Journal Entry #${entry == null ? void 0 : entry.reversal_id.substring(0, 5)}`)
|
|
17756
|
+
), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ import_react204.default.createElement("div", { className: "Layer__journal__entry-details__line-items" }, /* @__PURE__ */ import_react204.default.createElement(Card, null, /* @__PURE__ */ import_react204.default.createElement(
|
|
17656
17757
|
Table,
|
|
17657
17758
|
{
|
|
17658
17759
|
componentName: "journal__entry-details",
|
|
17659
17760
|
borderCollapse: "collapse"
|
|
17660
17761
|
},
|
|
17661
|
-
/* @__PURE__ */
|
|
17762
|
+
/* @__PURE__ */ import_react204.default.createElement(TableHead, null, /* @__PURE__ */ import_react204.default.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ import_react204.default.createElement(TableCell, null, "Line items"), /* @__PURE__ */ import_react204.default.createElement(
|
|
17662
17763
|
TableCell,
|
|
17663
17764
|
{
|
|
17664
17765
|
className: "Layer__journal__debit-credit-col",
|
|
17665
17766
|
align: "right" /* RIGHT */
|
|
17666
17767
|
},
|
|
17667
17768
|
"Debit"
|
|
17668
|
-
), /* @__PURE__ */
|
|
17769
|
+
), /* @__PURE__ */ import_react204.default.createElement(
|
|
17669
17770
|
TableCell,
|
|
17670
17771
|
{
|
|
17671
17772
|
className: "Layer__journal__debit-credit-col",
|
|
@@ -17673,37 +17774,37 @@ var JournalEntryDetails = () => {
|
|
|
17673
17774
|
},
|
|
17674
17775
|
"Credit"
|
|
17675
17776
|
))),
|
|
17676
|
-
/* @__PURE__ */
|
|
17777
|
+
/* @__PURE__ */ import_react204.default.createElement(TableBody, null, sortedLineItems == null ? void 0 : sortedLineItems.map((item, index) => /* @__PURE__ */ import_react204.default.createElement(
|
|
17677
17778
|
TableRow,
|
|
17678
17779
|
{
|
|
17679
17780
|
key: `ledger-line-item-${index}`,
|
|
17680
17781
|
rowKey: `ledger-line-item-${index}`
|
|
17681
17782
|
},
|
|
17682
|
-
/* @__PURE__ */
|
|
17683
|
-
/* @__PURE__ */
|
|
17783
|
+
/* @__PURE__ */ import_react204.default.createElement(TableCell, null, item.account.name),
|
|
17784
|
+
/* @__PURE__ */ import_react204.default.createElement(
|
|
17684
17785
|
TableCell,
|
|
17685
17786
|
{
|
|
17686
17787
|
className: "Layer__journal__debit-credit-col",
|
|
17687
17788
|
align: "right" /* RIGHT */
|
|
17688
17789
|
},
|
|
17689
|
-
item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */
|
|
17790
|
+
item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ import_react204.default.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))
|
|
17690
17791
|
),
|
|
17691
|
-
/* @__PURE__ */
|
|
17792
|
+
/* @__PURE__ */ import_react204.default.createElement(
|
|
17692
17793
|
TableCell,
|
|
17693
17794
|
{
|
|
17694
17795
|
className: "Layer__journal__debit-credit-col",
|
|
17695
17796
|
align: "right" /* RIGHT */
|
|
17696
17797
|
},
|
|
17697
|
-
item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */
|
|
17798
|
+
item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ import_react204.default.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0))
|
|
17698
17799
|
)
|
|
17699
|
-
)), /* @__PURE__ */
|
|
17800
|
+
)), /* @__PURE__ */ import_react204.default.createElement(
|
|
17700
17801
|
TableRow,
|
|
17701
17802
|
{
|
|
17702
17803
|
rowKey: "ledger-line-item-summation",
|
|
17703
17804
|
variant: "summation"
|
|
17704
17805
|
},
|
|
17705
|
-
/* @__PURE__ */
|
|
17706
|
-
/* @__PURE__ */
|
|
17806
|
+
/* @__PURE__ */ import_react204.default.createElement(TableCell, { primary: true }, "Total"),
|
|
17807
|
+
/* @__PURE__ */ import_react204.default.createElement(
|
|
17707
17808
|
TableCell,
|
|
17708
17809
|
{
|
|
17709
17810
|
isCurrency: true,
|
|
@@ -17713,7 +17814,7 @@ var JournalEntryDetails = () => {
|
|
|
17713
17814
|
},
|
|
17714
17815
|
(entry == null ? void 0 : entry.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)) || 0
|
|
17715
17816
|
),
|
|
17716
|
-
/* @__PURE__ */
|
|
17817
|
+
/* @__PURE__ */ import_react204.default.createElement(
|
|
17717
17818
|
TableCell,
|
|
17718
17819
|
{
|
|
17719
17820
|
isCurrency: true,
|
|
@@ -17724,10 +17825,10 @@ var JournalEntryDetails = () => {
|
|
|
17724
17825
|
(entry == null ? void 0 : entry.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)) || 0
|
|
17725
17826
|
)
|
|
17726
17827
|
))
|
|
17727
|
-
)), /* @__PURE__ */
|
|
17828
|
+
)), /* @__PURE__ */ import_react204.default.createElement("div", { className: "Layer__journal__entry-details__reverse-btn-container" }, /* @__PURE__ */ import_react204.default.createElement(
|
|
17728
17829
|
Button,
|
|
17729
17830
|
{
|
|
17730
|
-
rightIcon: reverseEntryError ? /* @__PURE__ */
|
|
17831
|
+
rightIcon: reverseEntryError ? /* @__PURE__ */ import_react204.default.createElement(AlertCircle_default, { size: 12 }) : /* @__PURE__ */ import_react204.default.createElement(RefreshCcw_default, { size: 12 }),
|
|
17731
17832
|
variant: "secondary" /* secondary */,
|
|
17732
17833
|
onClick: reverseEntryProcessing ? () => {
|
|
17733
17834
|
} : onReverseEntry,
|
|
@@ -17740,10 +17841,10 @@ var JournalEntryDetails = () => {
|
|
|
17740
17841
|
};
|
|
17741
17842
|
|
|
17742
17843
|
// src/components/JournalForm/JournalForm.tsx
|
|
17743
|
-
var
|
|
17844
|
+
var import_react206 = __toESM(require("react"));
|
|
17744
17845
|
|
|
17745
17846
|
// src/components/JournalForm/JournalFormEntryLines.tsx
|
|
17746
|
-
var
|
|
17847
|
+
var import_react205 = __toESM(require("react"));
|
|
17747
17848
|
var JournalFormEntryLines = ({
|
|
17748
17849
|
entrylineItems,
|
|
17749
17850
|
addEntryLine,
|
|
@@ -17752,17 +17853,17 @@ var JournalFormEntryLines = ({
|
|
|
17752
17853
|
sendingForm,
|
|
17753
17854
|
config
|
|
17754
17855
|
}) => {
|
|
17755
|
-
const { data: accountsData } = (0,
|
|
17756
|
-
const { form } = (0,
|
|
17856
|
+
const { data: accountsData } = (0, import_react205.useContext)(ChartOfAccountsContext);
|
|
17857
|
+
const { form } = (0, import_react205.useContext)(JournalContext);
|
|
17757
17858
|
const parentOptions = useParentOptions(accountsData);
|
|
17758
|
-
return /* @__PURE__ */
|
|
17759
|
-
return /* @__PURE__ */
|
|
17859
|
+
return /* @__PURE__ */ import_react205.default.createElement(import_react205.default.Fragment, null, ["DEBIT", "CREDIT"].map((direction, idx) => {
|
|
17860
|
+
return /* @__PURE__ */ import_react205.default.createElement(
|
|
17760
17861
|
"div",
|
|
17761
17862
|
{
|
|
17762
17863
|
key: "Layer__journal__form__input-group-" + idx,
|
|
17763
17864
|
className: "Layer__journal__form__input-group Layer__journal__form__input-group__border"
|
|
17764
17865
|
},
|
|
17765
|
-
/* @__PURE__ */
|
|
17866
|
+
/* @__PURE__ */ import_react205.default.createElement(
|
|
17766
17867
|
Text,
|
|
17767
17868
|
{
|
|
17768
17869
|
className: "Layer__journal__form__input-group__title",
|
|
@@ -17777,13 +17878,13 @@ var JournalFormEntryLines = ({
|
|
|
17777
17878
|
if (item.direction !== direction) {
|
|
17778
17879
|
return null;
|
|
17779
17880
|
}
|
|
17780
|
-
return /* @__PURE__ */
|
|
17881
|
+
return /* @__PURE__ */ import_react205.default.createElement(
|
|
17781
17882
|
"div",
|
|
17782
17883
|
{
|
|
17783
17884
|
className: "Layer__journal__form__input-group__line-item",
|
|
17784
17885
|
key: direction + "-" + idx2
|
|
17785
17886
|
},
|
|
17786
|
-
/* @__PURE__ */
|
|
17887
|
+
/* @__PURE__ */ import_react205.default.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ import_react205.default.createElement(
|
|
17787
17888
|
InputWithBadge,
|
|
17788
17889
|
{
|
|
17789
17890
|
name: direction,
|
|
@@ -17809,14 +17910,14 @@ var JournalFormEntryLines = ({
|
|
|
17809
17910
|
)) == null ? void 0 : _c.message
|
|
17810
17911
|
}
|
|
17811
17912
|
)),
|
|
17812
|
-
/* @__PURE__ */
|
|
17913
|
+
/* @__PURE__ */ import_react205.default.createElement(
|
|
17813
17914
|
InputGroup,
|
|
17814
17915
|
{
|
|
17815
17916
|
name: "account-name",
|
|
17816
17917
|
label: "Account name",
|
|
17817
17918
|
inline: true
|
|
17818
17919
|
},
|
|
17819
|
-
/* @__PURE__ */
|
|
17920
|
+
/* @__PURE__ */ import_react205.default.createElement(
|
|
17820
17921
|
Select2,
|
|
17821
17922
|
{
|
|
17822
17923
|
options: parentOptions,
|
|
@@ -17840,18 +17941,18 @@ var JournalFormEntryLines = ({
|
|
|
17840
17941
|
)) == null ? void 0 : _f.message
|
|
17841
17942
|
}
|
|
17842
17943
|
),
|
|
17843
|
-
idx2 >= 2 && /* @__PURE__ */
|
|
17944
|
+
idx2 >= 2 && /* @__PURE__ */ import_react205.default.createElement(
|
|
17844
17945
|
IconButton,
|
|
17845
17946
|
{
|
|
17846
17947
|
className: "Layer__remove__button",
|
|
17847
17948
|
onClick: () => removeEntryLine(idx2),
|
|
17848
|
-
icon: /* @__PURE__ */
|
|
17949
|
+
icon: /* @__PURE__ */ import_react205.default.createElement(Trash_default, null)
|
|
17849
17950
|
}
|
|
17850
17951
|
)
|
|
17851
17952
|
)
|
|
17852
17953
|
);
|
|
17853
17954
|
}),
|
|
17854
|
-
(config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > (entrylineItems == null ? void 0 : entrylineItems.length)) && /* @__PURE__ */
|
|
17955
|
+
(config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > (entrylineItems == null ? void 0 : entrylineItems.length)) && /* @__PURE__ */ import_react205.default.createElement(
|
|
17855
17956
|
TextButton,
|
|
17856
17957
|
{
|
|
17857
17958
|
className: "Layer__journal__add-entry-line",
|
|
@@ -17878,8 +17979,8 @@ var JournalForm = ({
|
|
|
17878
17979
|
changeFormData,
|
|
17879
17980
|
addEntryLine,
|
|
17880
17981
|
removeEntryLine
|
|
17881
|
-
} = (0,
|
|
17882
|
-
return /* @__PURE__ */
|
|
17982
|
+
} = (0, import_react206.useContext)(JournalContext);
|
|
17983
|
+
return /* @__PURE__ */ import_react206.default.createElement(
|
|
17883
17984
|
"form",
|
|
17884
17985
|
{
|
|
17885
17986
|
className: "Layer__form",
|
|
@@ -17888,7 +17989,7 @@ var JournalForm = ({
|
|
|
17888
17989
|
submitForm();
|
|
17889
17990
|
}
|
|
17890
17991
|
},
|
|
17891
|
-
/* @__PURE__ */
|
|
17992
|
+
/* @__PURE__ */ import_react206.default.createElement(Header2, { className: "Layer__journal__sidebar__header" }, /* @__PURE__ */ import_react206.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react206.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react206.default.createElement(Heading, { size: "secondary" /* secondary */, className: "title" }, (_a = stringOverrides == null ? void 0 : stringOverrides.header) != null ? _a : "Add New Entry")), /* @__PURE__ */ import_react206.default.createElement(HeaderCol, { className: "actions" }, /* @__PURE__ */ import_react206.default.createElement(
|
|
17892
17993
|
Button,
|
|
17893
17994
|
{
|
|
17894
17995
|
type: "button",
|
|
@@ -17897,7 +17998,7 @@ var JournalForm = ({
|
|
|
17897
17998
|
disabled: sendingForm
|
|
17898
17999
|
},
|
|
17899
18000
|
(stringOverrides == null ? void 0 : stringOverrides.cancelButton) || "Cancel"
|
|
17900
|
-
), apiError && /* @__PURE__ */
|
|
18001
|
+
), apiError && /* @__PURE__ */ import_react206.default.createElement(
|
|
17901
18002
|
RetryButton,
|
|
17902
18003
|
{
|
|
17903
18004
|
type: "submit",
|
|
@@ -17906,7 +18007,7 @@ var JournalForm = ({
|
|
|
17906
18007
|
disabled: sendingForm
|
|
17907
18008
|
},
|
|
17908
18009
|
(stringOverrides == null ? void 0 : stringOverrides.retryButton) || "Retry"
|
|
17909
|
-
), !apiError && /* @__PURE__ */
|
|
18010
|
+
), !apiError && /* @__PURE__ */ import_react206.default.createElement(
|
|
17910
18011
|
SubmitButton,
|
|
17911
18012
|
{
|
|
17912
18013
|
type: "submit",
|
|
@@ -17916,7 +18017,7 @@ var JournalForm = ({
|
|
|
17916
18017
|
},
|
|
17917
18018
|
(stringOverrides == null ? void 0 : stringOverrides.saveButton) || "Save"
|
|
17918
18019
|
)))),
|
|
17919
|
-
apiError && /* @__PURE__ */
|
|
18020
|
+
apiError && /* @__PURE__ */ import_react206.default.createElement(
|
|
17920
18021
|
Text,
|
|
17921
18022
|
{
|
|
17922
18023
|
size: "sm" /* sm */,
|
|
@@ -17924,7 +18025,7 @@ var JournalForm = ({
|
|
|
17924
18025
|
},
|
|
17925
18026
|
apiError
|
|
17926
18027
|
),
|
|
17927
|
-
/* @__PURE__ */
|
|
18028
|
+
/* @__PURE__ */ import_react206.default.createElement("div", { className: "Layer__journal__form__input-group" }, /* @__PURE__ */ import_react206.default.createElement(InputGroup, { name: "date", label: "Effective Date", inline: true }, /* @__PURE__ */ import_react206.default.createElement("div", { className: "Layer__journal__datepicker__wrapper" }, /* @__PURE__ */ import_react206.default.createElement(
|
|
17928
18029
|
DatePicker,
|
|
17929
18030
|
{
|
|
17930
18031
|
selected: (form == null ? void 0 : form.data.entry_at) ? new Date(form == null ? void 0 : form.data.entry_at) : /* @__PURE__ */ new Date(),
|
|
@@ -17937,7 +18038,7 @@ var JournalForm = ({
|
|
|
17937
18038
|
placeholderText: "Select date",
|
|
17938
18039
|
currentDateOption: false
|
|
17939
18040
|
}
|
|
17940
|
-
), /* @__PURE__ */
|
|
18041
|
+
), /* @__PURE__ */ import_react206.default.createElement(
|
|
17941
18042
|
DatePicker,
|
|
17942
18043
|
{
|
|
17943
18044
|
selected: (form == null ? void 0 : form.data.entry_at) ? new Date(form == null ? void 0 : form.data.entry_at) : /* @__PURE__ */ new Date(),
|
|
@@ -17951,7 +18052,7 @@ var JournalForm = ({
|
|
|
17951
18052
|
currentDateOption: false
|
|
17952
18053
|
}
|
|
17953
18054
|
)))),
|
|
17954
|
-
/* @__PURE__ */
|
|
18055
|
+
/* @__PURE__ */ import_react206.default.createElement(
|
|
17955
18056
|
JournalFormEntryLines,
|
|
17956
18057
|
{
|
|
17957
18058
|
entrylineItems: (form == null ? void 0 : form.data.line_items) || [],
|
|
@@ -17962,7 +18063,7 @@ var JournalForm = ({
|
|
|
17962
18063
|
config
|
|
17963
18064
|
}
|
|
17964
18065
|
),
|
|
17965
|
-
/* @__PURE__ */
|
|
18066
|
+
/* @__PURE__ */ import_react206.default.createElement("div", { className: "Layer__journal__form__input-group Layer__journal__form__input-group__textarea" }, /* @__PURE__ */ import_react206.default.createElement(InputGroup, { name: "memo", label: "Notes" }, /* @__PURE__ */ import_react206.default.createElement(
|
|
17966
18067
|
Textarea,
|
|
17967
18068
|
{
|
|
17968
18069
|
name: "memo",
|
|
@@ -17972,7 +18073,7 @@ var JournalForm = ({
|
|
|
17972
18073
|
disabled: sendingForm
|
|
17973
18074
|
}
|
|
17974
18075
|
))),
|
|
17975
|
-
/* @__PURE__ */
|
|
18076
|
+
/* @__PURE__ */ import_react206.default.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ import_react206.default.createElement(
|
|
17976
18077
|
Button,
|
|
17977
18078
|
{
|
|
17978
18079
|
type: "button",
|
|
@@ -17981,7 +18082,7 @@ var JournalForm = ({
|
|
|
17981
18082
|
disabled: sendingForm
|
|
17982
18083
|
},
|
|
17983
18084
|
(stringOverrides == null ? void 0 : stringOverrides.cancelButton) || "Cancel"
|
|
17984
|
-
), apiError && /* @__PURE__ */
|
|
18085
|
+
), apiError && /* @__PURE__ */ import_react206.default.createElement(
|
|
17985
18086
|
RetryButton,
|
|
17986
18087
|
{
|
|
17987
18088
|
type: "submit",
|
|
@@ -17990,7 +18091,7 @@ var JournalForm = ({
|
|
|
17990
18091
|
disabled: sendingForm
|
|
17991
18092
|
},
|
|
17992
18093
|
(stringOverrides == null ? void 0 : stringOverrides.retryButton) || "Retry"
|
|
17993
|
-
), !apiError && /* @__PURE__ */
|
|
18094
|
+
), !apiError && /* @__PURE__ */ import_react206.default.createElement(
|
|
17994
18095
|
SubmitButton,
|
|
17995
18096
|
{
|
|
17996
18097
|
type: "submit",
|
|
@@ -18009,15 +18110,15 @@ var JournalSidebar = ({
|
|
|
18009
18110
|
config,
|
|
18010
18111
|
stringOverrides
|
|
18011
18112
|
}) => {
|
|
18012
|
-
const { selectedEntryId } = (0,
|
|
18113
|
+
const { selectedEntryId } = (0, import_react207.useContext)(JournalContext);
|
|
18013
18114
|
if (selectedEntryId !== "new") {
|
|
18014
|
-
return /* @__PURE__ */
|
|
18115
|
+
return /* @__PURE__ */ import_react207.default.createElement(JournalEntryDetails, null);
|
|
18015
18116
|
}
|
|
18016
|
-
return /* @__PURE__ */
|
|
18117
|
+
return /* @__PURE__ */ import_react207.default.createElement(JournalForm, { config, stringOverrides });
|
|
18017
18118
|
};
|
|
18018
18119
|
|
|
18019
18120
|
// src/components/JournalTable/JournalTable.tsx
|
|
18020
|
-
var
|
|
18121
|
+
var import_react208 = __toESM(require("react"));
|
|
18021
18122
|
var import_date_fns35 = require("date-fns");
|
|
18022
18123
|
var accountName = (row) => {
|
|
18023
18124
|
if ("account" in row) {
|
|
@@ -18032,7 +18133,7 @@ var JournalTable = ({
|
|
|
18032
18133
|
view,
|
|
18033
18134
|
data,
|
|
18034
18135
|
stringOverrides
|
|
18035
|
-
}) => /* @__PURE__ */
|
|
18136
|
+
}) => /* @__PURE__ */ import_react208.default.createElement(TableProvider, null, /* @__PURE__ */ import_react208.default.createElement(
|
|
18036
18137
|
JournalTableContent,
|
|
18037
18138
|
{
|
|
18038
18139
|
view,
|
|
@@ -18044,9 +18145,9 @@ var JournalTableContent = ({
|
|
|
18044
18145
|
data,
|
|
18045
18146
|
stringOverrides
|
|
18046
18147
|
}) => {
|
|
18047
|
-
const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0,
|
|
18148
|
+
const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0, import_react208.useContext)(JournalContext);
|
|
18048
18149
|
const { isOpen, setIsOpen } = useTableExpandRow();
|
|
18049
|
-
(0,
|
|
18150
|
+
(0, import_react208.useEffect)(() => {
|
|
18050
18151
|
if (data.length > 0) {
|
|
18051
18152
|
setIsOpen(data.map((x) => `journal-row-${x.id}`));
|
|
18052
18153
|
}
|
|
@@ -18054,7 +18155,7 @@ var JournalTableContent = ({
|
|
|
18054
18155
|
const renderJournalRow = (row, index, rowKey, depth) => {
|
|
18055
18156
|
const expandable = !!row.line_items && row.line_items.length > 0;
|
|
18056
18157
|
const expanded = expandable ? isOpen(rowKey) : true;
|
|
18057
|
-
return /* @__PURE__ */
|
|
18158
|
+
return /* @__PURE__ */ import_react208.default.createElement(import_react208.default.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ import_react208.default.createElement(
|
|
18058
18159
|
TableRow,
|
|
18059
18160
|
{
|
|
18060
18161
|
rowKey: rowKey + "-" + index,
|
|
@@ -18072,7 +18173,7 @@ var JournalTableContent = ({
|
|
|
18072
18173
|
},
|
|
18073
18174
|
depth
|
|
18074
18175
|
},
|
|
18075
|
-
/* @__PURE__ */
|
|
18176
|
+
/* @__PURE__ */ import_react208.default.createElement(
|
|
18076
18177
|
TableCell,
|
|
18077
18178
|
{
|
|
18078
18179
|
withExpandIcon: expandable,
|
|
@@ -18083,16 +18184,16 @@ var JournalTableContent = ({
|
|
|
18083
18184
|
},
|
|
18084
18185
|
entryNumber(row)
|
|
18085
18186
|
),
|
|
18086
|
-
/* @__PURE__ */
|
|
18087
|
-
/* @__PURE__ */
|
|
18088
|
-
/* @__PURE__ */
|
|
18089
|
-
/* @__PURE__ */
|
|
18187
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null, row.entry_at && (0, import_date_fns35.format)((0, import_date_fns35.parseISO)(row.entry_at), DATE_FORMAT)),
|
|
18188
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null, humanizeEnum(row.entry_type)),
|
|
18189
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null, "(", row.line_items.length, ")"),
|
|
18190
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
|
|
18090
18191
|
row.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
|
|
18091
18192
|
)),
|
|
18092
|
-
/* @__PURE__ */
|
|
18193
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, "line_items" in row && Math.abs(
|
|
18093
18194
|
row.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
|
|
18094
18195
|
))
|
|
18095
|
-
), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */
|
|
18196
|
+
), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */ import_react208.default.createElement(
|
|
18096
18197
|
TableRow,
|
|
18097
18198
|
{
|
|
18098
18199
|
key: rowKey + "-" + index + "-" + subIdx,
|
|
@@ -18100,19 +18201,104 @@ var JournalTableContent = ({
|
|
|
18100
18201
|
depth: depth + 1,
|
|
18101
18202
|
selected: selectedEntryId === row.id
|
|
18102
18203
|
},
|
|
18103
|
-
/* @__PURE__ */
|
|
18104
|
-
/* @__PURE__ */
|
|
18105
|
-
/* @__PURE__ */
|
|
18106
|
-
/* @__PURE__ */
|
|
18107
|
-
subItem.direction === "DEBIT" && subItem.amount >= 0 ? /* @__PURE__ */
|
|
18108
|
-
subItem.direction === "CREDIT" && subItem.amount >= 0 ? /* @__PURE__ */
|
|
18204
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null),
|
|
18205
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null),
|
|
18206
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null),
|
|
18207
|
+
/* @__PURE__ */ import_react208.default.createElement(TableCell, null, accountName(subItem)),
|
|
18208
|
+
subItem.direction === "DEBIT" && subItem.amount >= 0 ? /* @__PURE__ */ import_react208.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ import_react208.default.createElement(TableCell, null),
|
|
18209
|
+
subItem.direction === "CREDIT" && subItem.amount >= 0 ? /* @__PURE__ */ import_react208.default.createElement(TableCell, { isCurrency: true, primary: true, align: "right" /* RIGHT */ }, subItem.amount) : /* @__PURE__ */ import_react208.default.createElement(TableCell, null)
|
|
18109
18210
|
)));
|
|
18110
18211
|
};
|
|
18111
|
-
return /* @__PURE__ */
|
|
18212
|
+
return /* @__PURE__ */ import_react208.default.createElement(Table, { borderCollapse: "collapse" }, /* @__PURE__ */ import_react208.default.createElement(TableHead, null, /* @__PURE__ */ import_react208.default.createElement(TableRow, { isHeadRow: true, rowKey: "journal-head-row" }, /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.idColumnHeader) || "Id"), /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.dateColumnHeader) || "Date"), /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.transactionColumnHeader) || "Transaction"), /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true }, (stringOverrides == null ? void 0 : stringOverrides.accountColumnHeader) || "Account Name"), /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.debitColumnHeader) || "Debit"), /* @__PURE__ */ import_react208.default.createElement(TableCell, { isHeaderCell: true, align: "right" /* RIGHT */ }, (stringOverrides == null ? void 0 : stringOverrides.creditColumnHeader) || "Credit"))), /* @__PURE__ */ import_react208.default.createElement(TableBody, null, data.map(
|
|
18112
18213
|
(entry, idx) => renderJournalRow(entry, idx, `journal-row-${entry.id}`, 0)
|
|
18113
18214
|
)));
|
|
18114
18215
|
};
|
|
18115
18216
|
|
|
18217
|
+
// src/components/Journal/download/JournalEntriesDownloadButton.tsx
|
|
18218
|
+
var import_react209 = __toESM(require("react"));
|
|
18219
|
+
|
|
18220
|
+
// src/components/Journal/download/useJournalEntriesDownload.ts
|
|
18221
|
+
var import_mutation5 = __toESM(require("swr/mutation"));
|
|
18222
|
+
function buildKey5({
|
|
18223
|
+
access_token: accessToken,
|
|
18224
|
+
apiUrl,
|
|
18225
|
+
businessId,
|
|
18226
|
+
startCutoff,
|
|
18227
|
+
endCutoff
|
|
18228
|
+
}) {
|
|
18229
|
+
if (accessToken && apiUrl) {
|
|
18230
|
+
return {
|
|
18231
|
+
accessToken,
|
|
18232
|
+
apiUrl,
|
|
18233
|
+
businessId,
|
|
18234
|
+
startCutoff,
|
|
18235
|
+
endCutoff,
|
|
18236
|
+
tags: ["#journal-entries", "#exports", "#csv"]
|
|
18237
|
+
};
|
|
18238
|
+
}
|
|
18239
|
+
}
|
|
18240
|
+
function useJournalEntriesDownload({
|
|
18241
|
+
startCutoff,
|
|
18242
|
+
endCutoff,
|
|
18243
|
+
onSuccess
|
|
18244
|
+
}) {
|
|
18245
|
+
const { data: auth } = useAuth();
|
|
18246
|
+
const { businessId } = useLayerContext();
|
|
18247
|
+
return (0, import_mutation5.default)(
|
|
18248
|
+
() => buildKey5(__spreadProps(__spreadValues({}, auth), {
|
|
18249
|
+
businessId,
|
|
18250
|
+
startCutoff,
|
|
18251
|
+
endCutoff
|
|
18252
|
+
})),
|
|
18253
|
+
({ accessToken, apiUrl, businessId: businessId2, startCutoff: startCutoff2, endCutoff: endCutoff2 }) => getJournalEntriesCSV(
|
|
18254
|
+
apiUrl,
|
|
18255
|
+
accessToken,
|
|
18256
|
+
{
|
|
18257
|
+
params: {
|
|
18258
|
+
businessId: businessId2,
|
|
18259
|
+
startCutoff: startCutoff2 == null ? void 0 : startCutoff2.toISOString(),
|
|
18260
|
+
endCutoff: endCutoff2 == null ? void 0 : endCutoff2.toISOString()
|
|
18261
|
+
}
|
|
18262
|
+
}
|
|
18263
|
+
)().then(({ data }) => {
|
|
18264
|
+
if (onSuccess) {
|
|
18265
|
+
return onSuccess(data);
|
|
18266
|
+
}
|
|
18267
|
+
}),
|
|
18268
|
+
{
|
|
18269
|
+
revalidate: false,
|
|
18270
|
+
throwOnError: false
|
|
18271
|
+
}
|
|
18272
|
+
);
|
|
18273
|
+
}
|
|
18274
|
+
|
|
18275
|
+
// src/components/Journal/download/JournalEntriesDownloadButton.tsx
|
|
18276
|
+
function JournalEntriesDownloadButton({
|
|
18277
|
+
startCutoff,
|
|
18278
|
+
endCutoff,
|
|
18279
|
+
iconOnly
|
|
18280
|
+
}) {
|
|
18281
|
+
const { invisibleDownloadRef, triggerInvisibleDownload } = useInvisibleDownload();
|
|
18282
|
+
const { trigger, isMutating, error } = useJournalEntriesDownload({
|
|
18283
|
+
startCutoff,
|
|
18284
|
+
endCutoff,
|
|
18285
|
+
onSuccess: ({ presignedUrl }) => triggerInvisibleDownload({ url: presignedUrl })
|
|
18286
|
+
});
|
|
18287
|
+
return /* @__PURE__ */ import_react209.default.createElement(import_react209.default.Fragment, null, /* @__PURE__ */ import_react209.default.createElement(
|
|
18288
|
+
DownloadButton,
|
|
18289
|
+
{
|
|
18290
|
+
iconOnly,
|
|
18291
|
+
onClick: () => {
|
|
18292
|
+
trigger();
|
|
18293
|
+
},
|
|
18294
|
+
isDownloading: isMutating,
|
|
18295
|
+
requestFailed: Boolean(error),
|
|
18296
|
+
text: "Download CSV",
|
|
18297
|
+
retryText: "Retry"
|
|
18298
|
+
}
|
|
18299
|
+
), /* @__PURE__ */ import_react209.default.createElement(InvisibleDownload_default, { ref: invisibleDownloadRef }));
|
|
18300
|
+
}
|
|
18301
|
+
|
|
18116
18302
|
// src/components/JournalTable/JournalTableWithPanel.tsx
|
|
18117
18303
|
var COMPONENT_NAME6 = "journal";
|
|
18118
18304
|
var JournalTableWithPanel = ({
|
|
@@ -18122,7 +18308,7 @@ var JournalTableWithPanel = ({
|
|
|
18122
18308
|
stringOverrides,
|
|
18123
18309
|
view
|
|
18124
18310
|
}) => {
|
|
18125
|
-
const [currentPage, setCurrentPage] = (0,
|
|
18311
|
+
const [currentPage, setCurrentPage] = (0, import_react210.useState)(1);
|
|
18126
18312
|
const {
|
|
18127
18313
|
data: rawData,
|
|
18128
18314
|
isLoading,
|
|
@@ -18131,17 +18317,17 @@ var JournalTableWithPanel = ({
|
|
|
18131
18317
|
refetch,
|
|
18132
18318
|
selectedEntryId,
|
|
18133
18319
|
addEntry
|
|
18134
|
-
} = (0,
|
|
18135
|
-
const data = (0,
|
|
18320
|
+
} = (0, import_react210.useContext)(JournalContext);
|
|
18321
|
+
const data = (0, import_react210.useMemo)(() => {
|
|
18136
18322
|
var _a;
|
|
18137
18323
|
const firstPageIndex = (currentPage - 1) * pageSize;
|
|
18138
18324
|
const lastPageIndex = firstPageIndex + pageSize;
|
|
18139
18325
|
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);
|
|
18140
18326
|
}, [rawData, currentPage]);
|
|
18141
|
-
return /* @__PURE__ */
|
|
18327
|
+
return /* @__PURE__ */ import_react210.default.createElement(
|
|
18142
18328
|
Panel,
|
|
18143
18329
|
{
|
|
18144
|
-
sidebar: /* @__PURE__ */
|
|
18330
|
+
sidebar: /* @__PURE__ */ import_react210.default.createElement(
|
|
18145
18331
|
JournalSidebar,
|
|
18146
18332
|
{
|
|
18147
18333
|
parentRef: containerRef,
|
|
@@ -18152,7 +18338,7 @@ var JournalTableWithPanel = ({
|
|
|
18152
18338
|
sidebarIsOpen: Boolean(selectedEntryId),
|
|
18153
18339
|
parentRef: containerRef
|
|
18154
18340
|
},
|
|
18155
|
-
/* @__PURE__ */
|
|
18341
|
+
/* @__PURE__ */ import_react210.default.createElement(
|
|
18156
18342
|
Header2,
|
|
18157
18343
|
{
|
|
18158
18344
|
className: `Layer__${COMPONENT_NAME6}__header`,
|
|
@@ -18160,7 +18346,7 @@ var JournalTableWithPanel = ({
|
|
|
18160
18346
|
sticky: true,
|
|
18161
18347
|
rounded: true
|
|
18162
18348
|
},
|
|
18163
|
-
/* @__PURE__ */
|
|
18349
|
+
/* @__PURE__ */ import_react210.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react210.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react210.default.createElement(
|
|
18164
18350
|
Heading,
|
|
18165
18351
|
{
|
|
18166
18352
|
className: `Layer__${COMPONENT_NAME6}__title`,
|
|
@@ -18169,25 +18355,30 @@ var JournalTableWithPanel = ({
|
|
|
18169
18355
|
(stringOverrides == null ? void 0 : stringOverrides.componentTitle) || "Journal"
|
|
18170
18356
|
)))
|
|
18171
18357
|
),
|
|
18172
|
-
/* @__PURE__ */
|
|
18358
|
+
/* @__PURE__ */ import_react210.default.createElement(Header2, null, /* @__PURE__ */ import_react210.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react210.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react210.default.createElement(
|
|
18173
18359
|
Heading,
|
|
18174
18360
|
{
|
|
18175
18361
|
size: "secondary" /* secondary */,
|
|
18176
18362
|
className: `Layer__${COMPONENT_NAME6}__subtitle`
|
|
18177
18363
|
},
|
|
18178
18364
|
(stringOverrides == null ? void 0 : stringOverrides.componentSubtitle) || "Entries"
|
|
18179
|
-
)), /* @__PURE__ */
|
|
18365
|
+
)), /* @__PURE__ */ import_react210.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react210.default.createElement(
|
|
18366
|
+
JournalEntriesDownloadButton,
|
|
18367
|
+
{
|
|
18368
|
+
iconOnly: ["mobile", "tablet"].includes(view)
|
|
18369
|
+
}
|
|
18370
|
+
), /* @__PURE__ */ import_react210.default.createElement(
|
|
18180
18371
|
Button,
|
|
18181
18372
|
{
|
|
18182
18373
|
onClick: () => addEntry(),
|
|
18183
18374
|
disabled: isLoading,
|
|
18184
18375
|
iconOnly: view === "mobile",
|
|
18185
|
-
leftIcon: view === "mobile" && /* @__PURE__ */
|
|
18376
|
+
leftIcon: view === "mobile" && /* @__PURE__ */ import_react210.default.createElement(PlusIcon_default, { size: 14 })
|
|
18186
18377
|
},
|
|
18187
18378
|
(stringOverrides == null ? void 0 : stringOverrides.addEntryButton) || "Add Entry"
|
|
18188
18379
|
)))),
|
|
18189
|
-
data && /* @__PURE__ */
|
|
18190
|
-
data && /* @__PURE__ */
|
|
18380
|
+
data && /* @__PURE__ */ import_react210.default.createElement(JournalTable, { view: "desktop", data }),
|
|
18381
|
+
data && /* @__PURE__ */ import_react210.default.createElement("div", { className: "Layer__journal__pagination" }, /* @__PURE__ */ import_react210.default.createElement(
|
|
18191
18382
|
Pagination,
|
|
18192
18383
|
{
|
|
18193
18384
|
currentPage,
|
|
@@ -18196,7 +18387,7 @@ var JournalTableWithPanel = ({
|
|
|
18196
18387
|
onPageChange: (page) => setCurrentPage(page)
|
|
18197
18388
|
}
|
|
18198
18389
|
)),
|
|
18199
|
-
(data == null ? void 0 : data.length) === 0 && !isLoading && !error && /* @__PURE__ */
|
|
18390
|
+
(data == null ? void 0 : data.length) === 0 && !isLoading && !error && /* @__PURE__ */ import_react210.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react210.default.createElement(
|
|
18200
18391
|
DataState,
|
|
18201
18392
|
{
|
|
18202
18393
|
status: "allDone" /* allDone */,
|
|
@@ -18204,7 +18395,7 @@ var JournalTableWithPanel = ({
|
|
|
18204
18395
|
description: "There are no entries in the journal."
|
|
18205
18396
|
}
|
|
18206
18397
|
)),
|
|
18207
|
-
error ? /* @__PURE__ */
|
|
18398
|
+
error ? /* @__PURE__ */ import_react210.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react210.default.createElement(
|
|
18208
18399
|
DataState,
|
|
18209
18400
|
{
|
|
18210
18401
|
status: "failed" /* failed */,
|
|
@@ -18214,7 +18405,7 @@ var JournalTableWithPanel = ({
|
|
|
18214
18405
|
isLoading: isValidating || isLoading
|
|
18215
18406
|
}
|
|
18216
18407
|
)) : null,
|
|
18217
|
-
(!data || isLoading) && !error ? /* @__PURE__ */
|
|
18408
|
+
(!data || isLoading) && !error ? /* @__PURE__ */ import_react210.default.createElement("div", { className: `Layer__${COMPONENT_NAME6}__loader-container` }, /* @__PURE__ */ import_react210.default.createElement(Loader2, null)) : null
|
|
18218
18409
|
);
|
|
18219
18410
|
};
|
|
18220
18411
|
|
|
@@ -18227,7 +18418,7 @@ var JOURNAL_CONFIG = {
|
|
|
18227
18418
|
var Journal = (props) => {
|
|
18228
18419
|
const JournalContextData = useJournal();
|
|
18229
18420
|
const AccountsContextData = useChartOfAccounts();
|
|
18230
|
-
return /* @__PURE__ */
|
|
18421
|
+
return /* @__PURE__ */ import_react211.default.createElement(ChartOfAccountsContext.Provider, { value: AccountsContextData }, /* @__PURE__ */ import_react211.default.createElement(JournalContext.Provider, { value: JournalContextData }, /* @__PURE__ */ import_react211.default.createElement(JournalContent, __spreadValues({}, props))));
|
|
18231
18422
|
};
|
|
18232
18423
|
var JournalContent = ({
|
|
18233
18424
|
asWidget,
|
|
@@ -18235,7 +18426,7 @@ var JournalContent = ({
|
|
|
18235
18426
|
stringOverrides
|
|
18236
18427
|
}) => {
|
|
18237
18428
|
const { view, containerRef } = useElementViewSize();
|
|
18238
|
-
return /* @__PURE__ */
|
|
18429
|
+
return /* @__PURE__ */ import_react211.default.createElement(Container, { name: "journal", ref: containerRef, asWidget }, /* @__PURE__ */ import_react211.default.createElement(
|
|
18239
18430
|
JournalTableWithPanel,
|
|
18240
18431
|
{
|
|
18241
18432
|
view,
|
|
@@ -18247,12 +18438,12 @@ var JournalContent = ({
|
|
|
18247
18438
|
};
|
|
18248
18439
|
|
|
18249
18440
|
// src/components/Tasks/Tasks.tsx
|
|
18250
|
-
var
|
|
18441
|
+
var import_react220 = __toESM(require("react"));
|
|
18251
18442
|
|
|
18252
18443
|
// src/contexts/TasksContext/TasksContext.tsx
|
|
18253
|
-
var
|
|
18444
|
+
var import_react212 = require("react");
|
|
18254
18445
|
var import_date_fns36 = require("date-fns");
|
|
18255
|
-
var TasksContext = (0,
|
|
18446
|
+
var TasksContext = (0, import_react212.createContext)({
|
|
18256
18447
|
data: void 0,
|
|
18257
18448
|
isLoading: false,
|
|
18258
18449
|
loadedStatus: "initial",
|
|
@@ -18275,7 +18466,7 @@ var TasksContext = (0, import_react210.createContext)({
|
|
|
18275
18466
|
});
|
|
18276
18467
|
|
|
18277
18468
|
// src/hooks/useTasks/useTasks.tsx
|
|
18278
|
-
var
|
|
18469
|
+
var import_react213 = require("react");
|
|
18279
18470
|
|
|
18280
18471
|
// src/types/tasks.ts
|
|
18281
18472
|
var COMPLETED_TASK_TYPES = ["COMPLETED", "USER_MARKED_COMPLETED"];
|
|
@@ -18331,15 +18522,15 @@ var useTasks = ({
|
|
|
18331
18522
|
startDate: initialStartDate = (0, import_date_fns37.startOfYear)(/* @__PURE__ */ new Date()),
|
|
18332
18523
|
endDate: initialEndDate = (0, import_date_fns37.endOfYear)(/* @__PURE__ */ new Date())
|
|
18333
18524
|
} = {}) => {
|
|
18334
|
-
const [loadedStatus, setLoadedStatus] = (0,
|
|
18525
|
+
const [loadedStatus, setLoadedStatus] = (0, import_react213.useState)("initial");
|
|
18335
18526
|
const { businessId, read, syncTimestamps, hasBeenTouched } = useLayerContext();
|
|
18336
18527
|
const { apiUrl } = useEnvironment();
|
|
18337
18528
|
const { data: auth } = useAuth();
|
|
18338
|
-
const [dateRange, setDateRange] = (0,
|
|
18529
|
+
const [dateRange, setDateRange] = (0, import_react213.useState)({
|
|
18339
18530
|
startDate: initialStartDate,
|
|
18340
18531
|
endDate: initialEndDate
|
|
18341
18532
|
});
|
|
18342
|
-
const [currentDate, setCurrentDate] = (0,
|
|
18533
|
+
const [currentDate, setCurrentDate] = (0, import_react213.useState)(/* @__PURE__ */ new Date());
|
|
18343
18534
|
const queryKey = businessId && (auth == null ? void 0 : auth.access_token) && `tasks-${businessId}-${dateRange.startDate}-${dateRange.endDate}`;
|
|
18344
18535
|
const { data, isLoading, isValidating, error, mutate } = (0, import_swr12.default)(
|
|
18345
18536
|
queryKey,
|
|
@@ -18351,7 +18542,7 @@ var useTasks = ({
|
|
|
18351
18542
|
}
|
|
18352
18543
|
})
|
|
18353
18544
|
);
|
|
18354
|
-
const monthlyData = (0,
|
|
18545
|
+
const monthlyData = (0, import_react213.useMemo)(() => {
|
|
18355
18546
|
if (data == null ? void 0 : data.data) {
|
|
18356
18547
|
const grouped = data.data.reduce((acc, task) => {
|
|
18357
18548
|
const effectiveDate = task.effective_date ? (0, import_date_fns37.parseISO)(task.effective_date) : (0, import_date_fns37.parseISO)(task.created_at);
|
|
@@ -18378,7 +18569,7 @@ var useTasks = ({
|
|
|
18378
18569
|
}
|
|
18379
18570
|
return [];
|
|
18380
18571
|
}, [data]);
|
|
18381
|
-
(0,
|
|
18572
|
+
(0, import_react213.useEffect)(() => {
|
|
18382
18573
|
if (isLoading && loadedStatus === "initial") {
|
|
18383
18574
|
setLoadedStatus("loading");
|
|
18384
18575
|
} else if (!isLoading && loadedStatus === "loading") {
|
|
@@ -18425,12 +18616,12 @@ var useTasks = ({
|
|
|
18425
18616
|
body: data2
|
|
18426
18617
|
}).then(() => refetch());
|
|
18427
18618
|
};
|
|
18428
|
-
(0,
|
|
18619
|
+
(0, import_react213.useEffect)(() => {
|
|
18429
18620
|
if (queryKey && (isLoading || isValidating)) {
|
|
18430
18621
|
read("TASKS" /* TASKS */, queryKey);
|
|
18431
18622
|
}
|
|
18432
18623
|
}, [isLoading, isValidating]);
|
|
18433
|
-
(0,
|
|
18624
|
+
(0, import_react213.useEffect)(() => {
|
|
18434
18625
|
if (queryKey && hasBeenTouched(queryKey)) {
|
|
18435
18626
|
refetch();
|
|
18436
18627
|
}
|
|
@@ -18455,13 +18646,13 @@ var useTasks = ({
|
|
|
18455
18646
|
};
|
|
18456
18647
|
|
|
18457
18648
|
// src/components/TasksHeader/TasksHeader.tsx
|
|
18458
|
-
var
|
|
18649
|
+
var import_react214 = __toESM(require("react"));
|
|
18459
18650
|
|
|
18460
18651
|
// src/icons/ProgressIcon.tsx
|
|
18461
|
-
var
|
|
18652
|
+
var React212 = __toESM(require("react"));
|
|
18462
18653
|
var ProgressIcon = (_a) => {
|
|
18463
18654
|
var _b = _a, { size = 12 } = _b, props = __objRest(_b, ["size"]);
|
|
18464
|
-
return /* @__PURE__ */
|
|
18655
|
+
return /* @__PURE__ */ React212.createElement(
|
|
18465
18656
|
"svg",
|
|
18466
18657
|
__spreadProps(__spreadValues({
|
|
18467
18658
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -18471,7 +18662,7 @@ var ProgressIcon = (_a) => {
|
|
|
18471
18662
|
width: size,
|
|
18472
18663
|
height: size
|
|
18473
18664
|
}),
|
|
18474
|
-
/* @__PURE__ */
|
|
18665
|
+
/* @__PURE__ */ React212.createElement(
|
|
18475
18666
|
"path",
|
|
18476
18667
|
{
|
|
18477
18668
|
d: "M9 1.5V4.5",
|
|
@@ -18480,7 +18671,7 @@ var ProgressIcon = (_a) => {
|
|
|
18480
18671
|
strokeLinejoin: "round"
|
|
18481
18672
|
}
|
|
18482
18673
|
),
|
|
18483
|
-
/* @__PURE__ */
|
|
18674
|
+
/* @__PURE__ */ React212.createElement(
|
|
18484
18675
|
"path",
|
|
18485
18676
|
{
|
|
18486
18677
|
d: "M9 13.5V16.5",
|
|
@@ -18489,7 +18680,7 @@ var ProgressIcon = (_a) => {
|
|
|
18489
18680
|
strokeLinejoin: "round"
|
|
18490
18681
|
}
|
|
18491
18682
|
),
|
|
18492
|
-
/* @__PURE__ */
|
|
18683
|
+
/* @__PURE__ */ React212.createElement(
|
|
18493
18684
|
"path",
|
|
18494
18685
|
{
|
|
18495
18686
|
d: "M3.6975 3.6975L5.82 5.82",
|
|
@@ -18498,7 +18689,7 @@ var ProgressIcon = (_a) => {
|
|
|
18498
18689
|
strokeLinejoin: "round"
|
|
18499
18690
|
}
|
|
18500
18691
|
),
|
|
18501
|
-
/* @__PURE__ */
|
|
18692
|
+
/* @__PURE__ */ React212.createElement(
|
|
18502
18693
|
"path",
|
|
18503
18694
|
{
|
|
18504
18695
|
d: "M12.18 12.18L14.3025 14.3025",
|
|
@@ -18507,7 +18698,7 @@ var ProgressIcon = (_a) => {
|
|
|
18507
18698
|
strokeLinejoin: "round"
|
|
18508
18699
|
}
|
|
18509
18700
|
),
|
|
18510
|
-
/* @__PURE__ */
|
|
18701
|
+
/* @__PURE__ */ React212.createElement(
|
|
18511
18702
|
"path",
|
|
18512
18703
|
{
|
|
18513
18704
|
d: "M1.5 9H4.5",
|
|
@@ -18516,7 +18707,7 @@ var ProgressIcon = (_a) => {
|
|
|
18516
18707
|
strokeLinejoin: "round"
|
|
18517
18708
|
}
|
|
18518
18709
|
),
|
|
18519
|
-
/* @__PURE__ */
|
|
18710
|
+
/* @__PURE__ */ React212.createElement(
|
|
18520
18711
|
"path",
|
|
18521
18712
|
{
|
|
18522
18713
|
d: "M13.5 9H16.5",
|
|
@@ -18525,7 +18716,7 @@ var ProgressIcon = (_a) => {
|
|
|
18525
18716
|
strokeLinejoin: "round"
|
|
18526
18717
|
}
|
|
18527
18718
|
),
|
|
18528
|
-
/* @__PURE__ */
|
|
18719
|
+
/* @__PURE__ */ React212.createElement(
|
|
18529
18720
|
"path",
|
|
18530
18721
|
{
|
|
18531
18722
|
d: "M3.6975 14.3025L5.82 12.18",
|
|
@@ -18534,7 +18725,7 @@ var ProgressIcon = (_a) => {
|
|
|
18534
18725
|
strokeLinejoin: "round"
|
|
18535
18726
|
}
|
|
18536
18727
|
),
|
|
18537
|
-
/* @__PURE__ */
|
|
18728
|
+
/* @__PURE__ */ React212.createElement(
|
|
18538
18729
|
"path",
|
|
18539
18730
|
{
|
|
18540
18731
|
d: "M12.18 5.82L14.3025 3.6975",
|
|
@@ -18552,22 +18743,22 @@ var import_date_fns38 = require("date-fns");
|
|
|
18552
18743
|
var import_classnames67 = __toESM(require("classnames"));
|
|
18553
18744
|
var ICONS = {
|
|
18554
18745
|
loading: {
|
|
18555
|
-
icon: /* @__PURE__ */
|
|
18746
|
+
icon: /* @__PURE__ */ import_react214.default.createElement(ProgressIcon_default, { size: 12, className: "Layer__anim--rotating" }),
|
|
18556
18747
|
text: "Loading",
|
|
18557
18748
|
badge: "default" /* DEFAULT */
|
|
18558
18749
|
},
|
|
18559
18750
|
done: {
|
|
18560
|
-
icon: /* @__PURE__ */
|
|
18751
|
+
icon: /* @__PURE__ */ import_react214.default.createElement(Check_default, { size: 12 }),
|
|
18561
18752
|
text: "Done",
|
|
18562
18753
|
badge: "success" /* SUCCESS */
|
|
18563
18754
|
},
|
|
18564
18755
|
pending: {
|
|
18565
|
-
icon: /* @__PURE__ */
|
|
18756
|
+
icon: /* @__PURE__ */ import_react214.default.createElement(AlertCircle_default, { size: 12 }),
|
|
18566
18757
|
text: "In progress",
|
|
18567
18758
|
badge: "warning" /* WARNING */
|
|
18568
18759
|
},
|
|
18569
18760
|
refresh: {
|
|
18570
|
-
icon: /* @__PURE__ */
|
|
18761
|
+
icon: /* @__PURE__ */ import_react214.default.createElement(RefreshCcw_default, { size: 12 }),
|
|
18571
18762
|
text: "Refresh",
|
|
18572
18763
|
badge: "default" /* DEFAULT */
|
|
18573
18764
|
}
|
|
@@ -18585,12 +18776,12 @@ var TasksHeader = ({
|
|
|
18585
18776
|
error,
|
|
18586
18777
|
dateRange,
|
|
18587
18778
|
setDateRange
|
|
18588
|
-
} = (0,
|
|
18779
|
+
} = (0, import_react214.useContext)(TasksContext);
|
|
18589
18780
|
const { business } = useLayerContext();
|
|
18590
18781
|
const completedTasks = tasks == null ? void 0 : tasks.filter((task) => isComplete(task.status)).length;
|
|
18591
18782
|
const badgeVariant = completedTasks === (tasks == null ? void 0 : tasks.length) ? ICONS.done : ICONS.pending;
|
|
18592
18783
|
const minDate = getEarliestDateToBrowse(business);
|
|
18593
|
-
return /* @__PURE__ */
|
|
18784
|
+
return /* @__PURE__ */ import_react214.default.createElement("div", { className: (0, import_classnames67.default)("Layer__tasks-header", collapsable && "Layer__tasks-header--collapsable") }, /* @__PURE__ */ import_react214.default.createElement("div", { className: "Layer__tasks-header__left-col" }, /* @__PURE__ */ import_react214.default.createElement("div", { className: "Layer__tasks-header__left-col__title" }, /* @__PURE__ */ import_react214.default.createElement(Text, { size: "lg" /* lg */ }, tasksHeader), loadedStatus !== "complete" && !open ? /* @__PURE__ */ import_react214.default.createElement(Badge, { variant: ICONS.loading.badge, icon: ICONS.loading.icon }, ICONS.loading.text) : loadedStatus === "complete" && !open && (!tasks || error) ? /* @__PURE__ */ import_react214.default.createElement(
|
|
18594
18785
|
Badge,
|
|
18595
18786
|
{
|
|
18596
18787
|
onClick: () => refetch(),
|
|
@@ -18598,7 +18789,7 @@ var TasksHeader = ({
|
|
|
18598
18789
|
icon: ICONS.refresh.icon
|
|
18599
18790
|
},
|
|
18600
18791
|
ICONS.refresh.text
|
|
18601
|
-
) : loadedStatus === "complete" && !open ? /* @__PURE__ */
|
|
18792
|
+
) : loadedStatus === "complete" && !open ? /* @__PURE__ */ import_react214.default.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text) : open ? null : /* @__PURE__ */ import_react214.default.createElement(Badge, { variant: badgeVariant.badge, icon: badgeVariant.icon }, badgeVariant.text)), /* @__PURE__ */ import_react214.default.createElement("div", { className: "Layer__tasks-header__left-col__controls" }, /* @__PURE__ */ import_react214.default.createElement(
|
|
18602
18793
|
DatePicker,
|
|
18603
18794
|
{
|
|
18604
18795
|
selected: dateRange.startDate,
|
|
@@ -18618,17 +18809,17 @@ var TasksHeader = ({
|
|
|
18618
18809
|
navigateArrows: ["mobile", "desktop"],
|
|
18619
18810
|
disabled: minDate && (0, import_date_fns38.getYear)(minDate) === (0, import_date_fns38.getYear)(/* @__PURE__ */ new Date())
|
|
18620
18811
|
}
|
|
18621
|
-
), collapsable && /* @__PURE__ */
|
|
18812
|
+
), collapsable && /* @__PURE__ */ import_react214.default.createElement("div", { className: "Layer__tasks-header__left-col__expand" }, /* @__PURE__ */ import_react214.default.createElement(ExpandButton, { onClick: toggleContent, collapsed: !open })))));
|
|
18622
18813
|
};
|
|
18623
18814
|
|
|
18624
18815
|
// src/components/TasksList/TasksList.tsx
|
|
18625
|
-
var
|
|
18816
|
+
var import_react216 = __toESM(require("react"));
|
|
18626
18817
|
|
|
18627
18818
|
// src/icons/SmileIcon.tsx
|
|
18628
|
-
var
|
|
18819
|
+
var React214 = __toESM(require("react"));
|
|
18629
18820
|
var SmileIcon = (_a) => {
|
|
18630
18821
|
var _b = _a, { size = 12 } = _b, props = __objRest(_b, ["size"]);
|
|
18631
|
-
return /* @__PURE__ */
|
|
18822
|
+
return /* @__PURE__ */ React214.createElement(
|
|
18632
18823
|
"svg",
|
|
18633
18824
|
__spreadProps(__spreadValues({
|
|
18634
18825
|
viewBox: "0 0 12 12",
|
|
@@ -18638,7 +18829,7 @@ var SmileIcon = (_a) => {
|
|
|
18638
18829
|
width: size,
|
|
18639
18830
|
height: size
|
|
18640
18831
|
}),
|
|
18641
|
-
/* @__PURE__ */
|
|
18832
|
+
/* @__PURE__ */ React214.createElement(
|
|
18642
18833
|
"path",
|
|
18643
18834
|
{
|
|
18644
18835
|
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",
|
|
@@ -18647,7 +18838,7 @@ var SmileIcon = (_a) => {
|
|
|
18647
18838
|
strokeLinejoin: "round"
|
|
18648
18839
|
}
|
|
18649
18840
|
),
|
|
18650
|
-
/* @__PURE__ */
|
|
18841
|
+
/* @__PURE__ */ React214.createElement(
|
|
18651
18842
|
"path",
|
|
18652
18843
|
{
|
|
18653
18844
|
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",
|
|
@@ -18656,7 +18847,7 @@ var SmileIcon = (_a) => {
|
|
|
18656
18847
|
strokeLinejoin: "round"
|
|
18657
18848
|
}
|
|
18658
18849
|
),
|
|
18659
|
-
/* @__PURE__ */
|
|
18850
|
+
/* @__PURE__ */ React214.createElement(
|
|
18660
18851
|
"path",
|
|
18661
18852
|
{
|
|
18662
18853
|
d: "M5 5H5.005",
|
|
@@ -18665,7 +18856,7 @@ var SmileIcon = (_a) => {
|
|
|
18665
18856
|
strokeLinejoin: "round"
|
|
18666
18857
|
}
|
|
18667
18858
|
),
|
|
18668
|
-
/* @__PURE__ */
|
|
18859
|
+
/* @__PURE__ */ React214.createElement(
|
|
18669
18860
|
"path",
|
|
18670
18861
|
{
|
|
18671
18862
|
d: "M8 5H8.005",
|
|
@@ -18679,7 +18870,7 @@ var SmileIcon = (_a) => {
|
|
|
18679
18870
|
var SmileIcon_default = SmileIcon;
|
|
18680
18871
|
|
|
18681
18872
|
// src/components/TasksListItem/TasksListItem.tsx
|
|
18682
|
-
var
|
|
18873
|
+
var import_react215 = __toESM(require("react"));
|
|
18683
18874
|
var import_classnames68 = __toESM(require("classnames"));
|
|
18684
18875
|
var TasksListItem = ({
|
|
18685
18876
|
task,
|
|
@@ -18687,15 +18878,15 @@ var TasksListItem = ({
|
|
|
18687
18878
|
defaultOpen
|
|
18688
18879
|
}) => {
|
|
18689
18880
|
var _a;
|
|
18690
|
-
const [isOpen, setIsOpen] = (0,
|
|
18691
|
-
const [userResponse, setUserResponse] = (0,
|
|
18692
|
-
const [selectedFiles, setSelectedFiles] = (0,
|
|
18881
|
+
const [isOpen, setIsOpen] = (0, import_react215.useState)(defaultOpen);
|
|
18882
|
+
const [userResponse, setUserResponse] = (0, import_react215.useState)(task.user_response || "");
|
|
18883
|
+
const [selectedFiles, setSelectedFiles] = (0, import_react215.useState)();
|
|
18693
18884
|
const {
|
|
18694
18885
|
submitResponseToTask: submitResponseToTask2,
|
|
18695
18886
|
uploadDocumentsForTask,
|
|
18696
18887
|
deleteUploadsForTask,
|
|
18697
18888
|
updateDocUploadTaskDescription
|
|
18698
|
-
} = (0,
|
|
18889
|
+
} = (0, import_react215.useContext)(TasksContext);
|
|
18699
18890
|
const taskBodyClassName = (0, import_classnames68.default)(
|
|
18700
18891
|
"Layer__tasks-list-item__body",
|
|
18701
18892
|
isOpen && "Layer__tasks-list-item__body--expanded",
|
|
@@ -18709,14 +18900,14 @@ var TasksListItem = ({
|
|
|
18709
18900
|
"Layer__tasks-list-item",
|
|
18710
18901
|
isOpen && "Layer__tasks-list-item__expanded"
|
|
18711
18902
|
);
|
|
18712
|
-
(0,
|
|
18903
|
+
(0, import_react215.useEffect)(() => {
|
|
18713
18904
|
setIsOpen(defaultOpen);
|
|
18714
18905
|
}, [defaultOpen]);
|
|
18715
|
-
const uploadDocumentAction = (0,
|
|
18906
|
+
const uploadDocumentAction = (0, import_react215.useMemo)(() => {
|
|
18716
18907
|
if (task.user_response_type === "UPLOAD_DOCUMENT") {
|
|
18717
18908
|
if (task.status === "TODO") {
|
|
18718
18909
|
if (!selectedFiles) {
|
|
18719
|
-
return /* @__PURE__ */
|
|
18910
|
+
return /* @__PURE__ */ import_react215.default.createElement(
|
|
18720
18911
|
FileInput,
|
|
18721
18912
|
{
|
|
18722
18913
|
onUpload: (files) => {
|
|
@@ -18727,10 +18918,19 @@ var TasksListItem = ({
|
|
|
18727
18918
|
}
|
|
18728
18919
|
);
|
|
18729
18920
|
} else {
|
|
18730
|
-
return /* @__PURE__ */
|
|
18921
|
+
return /* @__PURE__ */ import_react215.default.createElement(import_react215.default.Fragment, null, /* @__PURE__ */ import_react215.default.createElement(
|
|
18731
18922
|
Button,
|
|
18732
18923
|
{
|
|
18733
18924
|
variant: "secondary" /* secondary */,
|
|
18925
|
+
onClick: () => __async(void 0, null, function* () {
|
|
18926
|
+
setSelectedFiles(void 0);
|
|
18927
|
+
})
|
|
18928
|
+
},
|
|
18929
|
+
"Cancel"
|
|
18930
|
+
), /* @__PURE__ */ import_react215.default.createElement(
|
|
18931
|
+
Button,
|
|
18932
|
+
{
|
|
18933
|
+
variant: "primary" /* primary */,
|
|
18734
18934
|
onClick: () => __async(void 0, null, function* () {
|
|
18735
18935
|
yield uploadDocumentsForTask(task.id, selectedFiles, userResponse);
|
|
18736
18936
|
setIsOpen(false);
|
|
@@ -18739,11 +18939,11 @@ var TasksListItem = ({
|
|
|
18739
18939
|
})
|
|
18740
18940
|
},
|
|
18741
18941
|
"Submit"
|
|
18742
|
-
);
|
|
18942
|
+
));
|
|
18743
18943
|
}
|
|
18744
18944
|
} else if (task.status === "USER_MARKED_COMPLETED") {
|
|
18745
18945
|
if (task.user_response && task.user_response != userResponse) {
|
|
18746
|
-
return /* @__PURE__ */
|
|
18946
|
+
return /* @__PURE__ */ import_react215.default.createElement(
|
|
18747
18947
|
Button,
|
|
18748
18948
|
{
|
|
18749
18949
|
variant: "secondary" /* secondary */,
|
|
@@ -18754,7 +18954,7 @@ var TasksListItem = ({
|
|
|
18754
18954
|
"Update"
|
|
18755
18955
|
);
|
|
18756
18956
|
} else {
|
|
18757
|
-
return /* @__PURE__ */
|
|
18957
|
+
return /* @__PURE__ */ import_react215.default.createElement(
|
|
18758
18958
|
Button,
|
|
18759
18959
|
{
|
|
18760
18960
|
variant: "secondary" /* secondary */,
|
|
@@ -18770,14 +18970,14 @@ var TasksListItem = ({
|
|
|
18770
18970
|
}
|
|
18771
18971
|
}
|
|
18772
18972
|
}, [task, selectedFiles, userResponse]);
|
|
18773
|
-
return /* @__PURE__ */
|
|
18973
|
+
return /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list-item-wrapper" }, /* @__PURE__ */ import_react215.default.createElement("div", { className: taskItemClassName }, /* @__PURE__ */ import_react215.default.createElement(
|
|
18774
18974
|
"div",
|
|
18775
18975
|
{
|
|
18776
18976
|
className: "Layer__tasks-list-item__head",
|
|
18777
18977
|
onClick: () => setIsOpen(!isOpen)
|
|
18778
18978
|
},
|
|
18779
|
-
/* @__PURE__ */
|
|
18780
|
-
/* @__PURE__ */
|
|
18979
|
+
/* @__PURE__ */ import_react215.default.createElement("div", { className: taskHeadClassName }, /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list-item__head-info__status" }, isComplete(task.status) ? /* @__PURE__ */ import_react215.default.createElement(Check_default, { size: 12 }) : /* @__PURE__ */ import_react215.default.createElement(AlertCircle_default, { size: 12 })), /* @__PURE__ */ import_react215.default.createElement(Text, { size: "md" /* md */ }, task.title)),
|
|
18980
|
+
/* @__PURE__ */ import_react215.default.createElement(
|
|
18781
18981
|
ChevronDownFill_default,
|
|
18782
18982
|
{
|
|
18783
18983
|
size: 16,
|
|
@@ -18787,14 +18987,14 @@ var TasksListItem = ({
|
|
|
18787
18987
|
}
|
|
18788
18988
|
}
|
|
18789
18989
|
)
|
|
18790
|
-
), /* @__PURE__ */
|
|
18990
|
+
), /* @__PURE__ */ import_react215.default.createElement("div", { className: taskBodyClassName }, /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list-item__body-info" }, /* @__PURE__ */ import_react215.default.createElement(Text, { size: "sm" /* sm */ }, task.question), /* @__PURE__ */ import_react215.default.createElement(
|
|
18791
18991
|
Textarea,
|
|
18792
18992
|
{
|
|
18793
18993
|
value: userResponse,
|
|
18794
18994
|
placeholder: task.user_response_type === "UPLOAD_DOCUMENT" ? "Optional description" : "",
|
|
18795
18995
|
onChange: (e) => setUserResponse(e.target.value)
|
|
18796
18996
|
}
|
|
18797
|
-
), task.user_response_type === "UPLOAD_DOCUMENT" ? /* @__PURE__ */
|
|
18997
|
+
), task.user_response_type === "UPLOAD_DOCUMENT" ? /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list__link-list" }, selectedFiles ? /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Selected Files:") : task.documents ? /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list__link-list-header" }, "Uploaded Files:") : null, /* @__PURE__ */ import_react215.default.createElement("ul", { className: "Layer__tasks-list__links-list" }, (_a = task.documents) == null ? void 0 : _a.map((document2, idx) => /* @__PURE__ */ import_react215.default.createElement("li", { key: `uploaded-doc-name-${idx}` }, /* @__PURE__ */ import_react215.default.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__ */ import_react215.default.createElement("li", { key: `selected-file-name-${idx}` }, /* @__PURE__ */ import_react215.default.createElement("a", { className: "Layer__tasks-list-item__link" }, file.name))))) : null, /* @__PURE__ */ import_react215.default.createElement("div", { className: "Layer__tasks-list-item__actions" }, task.user_response_type === "UPLOAD_DOCUMENT" ? uploadDocumentAction : /* @__PURE__ */ import_react215.default.createElement(
|
|
18798
18998
|
Button,
|
|
18799
18999
|
{
|
|
18800
19000
|
disabled: userResponse.length === 0 || userResponse === task.user_response,
|
|
@@ -18819,10 +19019,10 @@ function paginateArray(array, chunkSize = 10) {
|
|
|
18819
19019
|
}
|
|
18820
19020
|
return result;
|
|
18821
19021
|
}
|
|
18822
|
-
var TasksEmptyState = () => /* @__PURE__ */
|
|
19022
|
+
var TasksEmptyState = () => /* @__PURE__ */ import_react216.default.createElement("div", { className: "Layer__tasks-empty-state" }, /* @__PURE__ */ import_react216.default.createElement("div", { className: "Layer__tasks-icon" }, /* @__PURE__ */ import_react216.default.createElement(SmileIcon_default, null)), /* @__PURE__ */ import_react216.default.createElement(Text, { size: "sm" /* sm */ }, "There are no pending tasks!", /* @__PURE__ */ import_react216.default.createElement("br", null), " Great job!"));
|
|
18823
19023
|
var TasksList = ({ pageSize = 10 }) => {
|
|
18824
|
-
const { data: rawData, error, currentDate } = (0,
|
|
18825
|
-
const tasks = (0,
|
|
19024
|
+
const { data: rawData, error, currentDate } = (0, import_react216.useContext)(TasksContext);
|
|
19025
|
+
const tasks = (0, import_react216.useMemo)(() => {
|
|
18826
19026
|
return rawData == null ? void 0 : rawData.filter((x) => {
|
|
18827
19027
|
const d = x.effective_date ? (0, import_date_fns39.parseISO)(x.effective_date) : (0, import_date_fns39.parseISO)(x.created_at);
|
|
18828
19028
|
return !(0, import_date_fns39.isBefore)(d, (0, import_date_fns39.startOfMonth)(currentDate)) && !(0, import_date_fns39.isAfter)(d, (0, import_date_fns39.endOfMonth)(currentDate));
|
|
@@ -18832,10 +19032,10 @@ var TasksList = ({ pageSize = 10 }) => {
|
|
|
18832
19032
|
tasks || [],
|
|
18833
19033
|
pageSize
|
|
18834
19034
|
).findIndex((page) => page.some((task) => !isComplete(task.status)));
|
|
18835
|
-
const [currentPage, setCurrentPage] = (0,
|
|
19035
|
+
const [currentPage, setCurrentPage] = (0, import_react216.useState)(
|
|
18836
19036
|
firstPageWithIincompleteTasks === -1 ? 1 : firstPageWithIincompleteTasks + 1
|
|
18837
19037
|
);
|
|
18838
|
-
const sortedTasks = (0,
|
|
19038
|
+
const sortedTasks = (0, import_react216.useMemo)(() => {
|
|
18839
19039
|
const firstPageIndex = (currentPage - 1) * pageSize;
|
|
18840
19040
|
const lastPageIndex = firstPageIndex + pageSize;
|
|
18841
19041
|
return tasks == null ? void 0 : tasks.sort((x) => isComplete(x.status) ? 1 : -1).slice(firstPageIndex, lastPageIndex);
|
|
@@ -18850,7 +19050,7 @@ var TasksList = ({ pageSize = 10 }) => {
|
|
|
18850
19050
|
setCurrentPage(currentPage + 1);
|
|
18851
19051
|
}
|
|
18852
19052
|
};
|
|
18853
|
-
return /* @__PURE__ */
|
|
19053
|
+
return /* @__PURE__ */ import_react216.default.createElement("div", { className: "Layer__tasks-list" }, sortedTasks && sortedTasks.length > 0 ? /* @__PURE__ */ import_react216.default.createElement(import_react216.default.Fragment, null, sortedTasks.map((task, index) => /* @__PURE__ */ import_react216.default.createElement(
|
|
18854
19054
|
TasksListItem,
|
|
18855
19055
|
{
|
|
18856
19056
|
key: task.id,
|
|
@@ -18858,7 +19058,7 @@ var TasksList = ({ pageSize = 10 }) => {
|
|
|
18858
19058
|
goToNextPageIfAllComplete: goToNextPage,
|
|
18859
19059
|
defaultOpen: index === indexFirstIncomplete
|
|
18860
19060
|
}
|
|
18861
|
-
)), tasks && tasks.length >= 10 && /* @__PURE__ */
|
|
19061
|
+
)), tasks && tasks.length >= 10 && /* @__PURE__ */ import_react216.default.createElement("div", { className: "Layer__tasks__pagination" }, /* @__PURE__ */ import_react216.default.createElement(
|
|
18862
19062
|
Pagination,
|
|
18863
19063
|
{
|
|
18864
19064
|
currentPage,
|
|
@@ -18866,17 +19066,17 @@ var TasksList = ({ pageSize = 10 }) => {
|
|
|
18866
19066
|
pageSize,
|
|
18867
19067
|
onPageChange: (page) => setCurrentPage(page)
|
|
18868
19068
|
}
|
|
18869
|
-
))) : /* @__PURE__ */
|
|
19069
|
+
))) : /* @__PURE__ */ import_react216.default.createElement(import_react216.default.Fragment, null, error ? /* @__PURE__ */ import_react216.default.createElement(ErrorText, null, "Approval failed. Check connection and retry in few seconds.") : /* @__PURE__ */ import_react216.default.createElement(TasksEmptyState, null)));
|
|
18870
19070
|
};
|
|
18871
19071
|
|
|
18872
19072
|
// src/components/TasksPending/TasksPending.tsx
|
|
18873
|
-
var
|
|
19073
|
+
var import_react217 = __toESM(require("react"));
|
|
18874
19074
|
var import_classnames69 = __toESM(require("classnames"));
|
|
18875
19075
|
var import_date_fns40 = require("date-fns");
|
|
18876
19076
|
var import_recharts4 = require("recharts");
|
|
18877
19077
|
var TasksPending = () => {
|
|
18878
|
-
const { data: rawData, currentDate } = (0,
|
|
18879
|
-
const data = (0,
|
|
19078
|
+
const { data: rawData, currentDate } = (0, import_react217.useContext)(TasksContext);
|
|
19079
|
+
const data = (0, import_react217.useMemo)(() => {
|
|
18880
19080
|
return rawData == null ? void 0 : rawData.filter((x) => {
|
|
18881
19081
|
const d = x.effective_date ? (0, import_date_fns40.parseISO)(x.effective_date) : (0, import_date_fns40.parseISO)(x.created_at);
|
|
18882
19082
|
return !(0, import_date_fns40.isBefore)(d, (0, import_date_fns40.startOfMonth)(currentDate)) && !(0, import_date_fns40.isAfter)(d, (0, import_date_fns40.endOfMonth)(currentDate));
|
|
@@ -18896,7 +19096,7 @@ var TasksPending = () => {
|
|
|
18896
19096
|
const taskStatusClassName = (0, import_classnames69.default)(
|
|
18897
19097
|
completedTasks && completedTasks > 0 ? "Layer__tasks-pending-bar__status--done" : "Layer__tasks-pending-bar__status--pending"
|
|
18898
19098
|
);
|
|
18899
|
-
return /* @__PURE__ */
|
|
19099
|
+
return /* @__PURE__ */ import_react217.default.createElement("div", { className: "Layer__tasks-pending" }, /* @__PURE__ */ import_react217.default.createElement(Text, { size: "lg" /* lg */ }, (0, import_date_fns40.format)(currentDate, "MMMM")), data && (data == null ? void 0 : data.length) > 0 ? /* @__PURE__ */ import_react217.default.createElement("div", { className: "Layer__tasks-pending-bar" }, /* @__PURE__ */ import_react217.default.createElement(Text, { size: "sm" /* sm */ }, /* @__PURE__ */ import_react217.default.createElement("span", { className: taskStatusClassName }, completedTasks), "/", data == null ? void 0 : data.length, " done"), /* @__PURE__ */ import_react217.default.createElement(import_recharts4.PieChart, { width: 24, height: 24, className: "mini-chart" }, /* @__PURE__ */ import_react217.default.createElement(
|
|
18900
19100
|
import_recharts4.Pie,
|
|
18901
19101
|
{
|
|
18902
19102
|
data: chartData,
|
|
@@ -18914,7 +19114,7 @@ var TasksPending = () => {
|
|
|
18914
19114
|
animationEasing: "ease-in-out"
|
|
18915
19115
|
},
|
|
18916
19116
|
chartData.map((task, index) => {
|
|
18917
|
-
return /* @__PURE__ */
|
|
19117
|
+
return /* @__PURE__ */ import_react217.default.createElement(
|
|
18918
19118
|
import_recharts4.Cell,
|
|
18919
19119
|
{
|
|
18920
19120
|
key: `cell-${index}`,
|
|
@@ -18927,11 +19127,11 @@ var TasksPending = () => {
|
|
|
18927
19127
|
};
|
|
18928
19128
|
|
|
18929
19129
|
// src/components/TasksMonthSelector/TasksMonthSelector.tsx
|
|
18930
|
-
var
|
|
19130
|
+
var import_react219 = __toESM(require("react"));
|
|
18931
19131
|
var import_date_fns41 = require("date-fns");
|
|
18932
19132
|
|
|
18933
19133
|
// src/components/TasksMonthSelector/TaskMonthTile.tsx
|
|
18934
|
-
var
|
|
19134
|
+
var import_react218 = __toESM(require("react"));
|
|
18935
19135
|
var import_classnames70 = __toESM(require("classnames"));
|
|
18936
19136
|
var TaskMonthTile = ({ monthData, onClick, active, disabled }) => {
|
|
18937
19137
|
const isCompleted = monthData.total === monthData.completed;
|
|
@@ -18941,7 +19141,7 @@ var TaskMonthTile = ({ monthData, onClick, active, disabled }) => {
|
|
|
18941
19141
|
active && "Layer__tasks-month-selector__month--active",
|
|
18942
19142
|
disabled && "Layer__tasks-month-selector__month--disabled"
|
|
18943
19143
|
);
|
|
18944
|
-
return /* @__PURE__ */
|
|
19144
|
+
return /* @__PURE__ */ import_react218.default.createElement("div", { className: baseClass, onClick: () => !disabled && onClick(monthData.startDate) }, /* @__PURE__ */ import_react218.default.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__str" }, monthData.monthStr), /* @__PURE__ */ import_react218.default.createElement(Text, { size: "sm" /* sm */, className: "Layer__tasks-month-selector__month__total" }, monthData.total > 0 && isCompleted ? monthData.total : ""), isCompleted && monthData.total > 0 && /* @__PURE__ */ import_react218.default.createElement("span", { className: "Layer__tasks-month-selector__month__completed" }, /* @__PURE__ */ import_react218.default.createElement(Check_default, { size: 12 })), !isCompleted && monthData.total > 0 && /* @__PURE__ */ import_react218.default.createElement("span", { className: "Layer__tasks-month-selector__month__incompleted" }, /* @__PURE__ */ import_react218.default.createElement(Text, { size: "sm" /* sm */ }, monthData.total), /* @__PURE__ */ import_react218.default.createElement(AlertCircle_default, { size: 12 })));
|
|
18945
19145
|
};
|
|
18946
19146
|
|
|
18947
19147
|
// src/components/TasksMonthSelector/TasksMonthSelector.tsx
|
|
@@ -18953,7 +19153,7 @@ var DEFAULT_TASK_DATA = {
|
|
|
18953
19153
|
var isCurrentMonth = (monthDate, currentDate) => (0, import_date_fns41.getMonth)(currentDate) === (0, import_date_fns41.getMonth)(monthDate) && (0, import_date_fns41.getYear)(currentDate) === (0, import_date_fns41.getYear)(monthDate);
|
|
18954
19154
|
var TasksMonthSelector = ({ tasks, year, currentDate, onClick }) => {
|
|
18955
19155
|
const { business } = useLayerContext();
|
|
18956
|
-
const minDate = (0,
|
|
19156
|
+
const minDate = (0, import_react219.useMemo)(() => {
|
|
18957
19157
|
if (business) {
|
|
18958
19158
|
const date = getEarliestDateToBrowse(business);
|
|
18959
19159
|
if (date) {
|
|
@@ -18962,7 +19162,7 @@ var TasksMonthSelector = ({ tasks, year, currentDate, onClick }) => {
|
|
|
18962
19162
|
}
|
|
18963
19163
|
return;
|
|
18964
19164
|
}, [business]);
|
|
18965
|
-
const months = (0,
|
|
19165
|
+
const months = (0, import_react219.useMemo)(() => {
|
|
18966
19166
|
return Array.from({ length: 12 }, (_, i) => {
|
|
18967
19167
|
var _a;
|
|
18968
19168
|
const startDate = (0, import_date_fns41.set)(
|
|
@@ -18986,8 +19186,8 @@ var TasksMonthSelector = ({ tasks, year, currentDate, onClick }) => {
|
|
|
18986
19186
|
}, taskData);
|
|
18987
19187
|
});
|
|
18988
19188
|
}, [tasks, year, minDate]);
|
|
18989
|
-
return /* @__PURE__ */
|
|
18990
|
-
return /* @__PURE__ */
|
|
19189
|
+
return /* @__PURE__ */ import_react219.default.createElement("div", { className: "Layer__tasks-month-selector" }, months.map((month, idx) => {
|
|
19190
|
+
return /* @__PURE__ */ import_react219.default.createElement(
|
|
18991
19191
|
TaskMonthTile,
|
|
18992
19192
|
{
|
|
18993
19193
|
key: idx,
|
|
@@ -19003,7 +19203,7 @@ var TasksMonthSelector = ({ tasks, year, currentDate, onClick }) => {
|
|
|
19003
19203
|
// src/components/Tasks/Tasks.tsx
|
|
19004
19204
|
var import_classnames71 = __toESM(require("classnames"));
|
|
19005
19205
|
var import_date_fns42 = require("date-fns");
|
|
19006
|
-
var UseTasksContext = (0,
|
|
19206
|
+
var UseTasksContext = (0, import_react220.createContext)({
|
|
19007
19207
|
data: void 0,
|
|
19008
19208
|
isLoading: void 0,
|
|
19009
19209
|
loadedStatus: "initial",
|
|
@@ -19033,7 +19233,7 @@ var Tasks = ({
|
|
|
19033
19233
|
// deprecated
|
|
19034
19234
|
stringOverrides
|
|
19035
19235
|
}) => {
|
|
19036
|
-
return /* @__PURE__ */
|
|
19236
|
+
return /* @__PURE__ */ import_react220.default.createElement(TasksProvider, null, /* @__PURE__ */ import_react220.default.createElement(
|
|
19037
19237
|
TasksComponent,
|
|
19038
19238
|
{
|
|
19039
19239
|
collapsable,
|
|
@@ -19046,7 +19246,7 @@ var Tasks = ({
|
|
|
19046
19246
|
};
|
|
19047
19247
|
var TasksProvider = ({ children }) => {
|
|
19048
19248
|
const contextData = useTasks();
|
|
19049
|
-
return /* @__PURE__ */
|
|
19249
|
+
return /* @__PURE__ */ import_react220.default.createElement(TasksContext.Provider, { value: contextData }, children);
|
|
19050
19250
|
};
|
|
19051
19251
|
var TasksComponent = ({
|
|
19052
19252
|
collapsable = false,
|
|
@@ -19064,8 +19264,8 @@ var TasksComponent = ({
|
|
|
19064
19264
|
currentDate,
|
|
19065
19265
|
setCurrentDate,
|
|
19066
19266
|
dateRange
|
|
19067
|
-
} = (0,
|
|
19068
|
-
const allComplete = (0,
|
|
19267
|
+
} = (0, import_react220.useContext)(TasksContext);
|
|
19268
|
+
const allComplete = (0, import_react220.useMemo)(() => {
|
|
19069
19269
|
if (!data) {
|
|
19070
19270
|
return void 0;
|
|
19071
19271
|
}
|
|
@@ -19074,15 +19274,15 @@ var TasksComponent = ({
|
|
|
19074
19274
|
}
|
|
19075
19275
|
return false;
|
|
19076
19276
|
}, [data, isLoading]);
|
|
19077
|
-
const [open, setOpen] = (0,
|
|
19277
|
+
const [open, setOpen] = (0, import_react220.useState)(
|
|
19078
19278
|
defaultCollapsed || collapsedWhenComplete ? false : true
|
|
19079
19279
|
);
|
|
19080
|
-
(0,
|
|
19280
|
+
(0, import_react220.useEffect)(() => {
|
|
19081
19281
|
if (allComplete && open && collapsedWhenComplete && loadedStatus === "complete") {
|
|
19082
19282
|
setOpen(false);
|
|
19083
19283
|
}
|
|
19084
19284
|
}, [allComplete]);
|
|
19085
|
-
return /* @__PURE__ */
|
|
19285
|
+
return /* @__PURE__ */ import_react220.default.createElement("div", { className: "Layer__tasks-component" }, /* @__PURE__ */ import_react220.default.createElement(
|
|
19086
19286
|
TasksHeader,
|
|
19087
19287
|
{
|
|
19088
19288
|
tasksHeader: (stringOverrides == null ? void 0 : stringOverrides.header) || tasksHeader,
|
|
@@ -19090,7 +19290,7 @@ var TasksComponent = ({
|
|
|
19090
19290
|
open,
|
|
19091
19291
|
toggleContent: () => setOpen(!open)
|
|
19092
19292
|
}
|
|
19093
|
-
), /* @__PURE__ */
|
|
19293
|
+
), /* @__PURE__ */ import_react220.default.createElement(
|
|
19094
19294
|
"div",
|
|
19095
19295
|
{
|
|
19096
19296
|
className: (0, import_classnames71.default)(
|
|
@@ -19098,7 +19298,7 @@ var TasksComponent = ({
|
|
|
19098
19298
|
!open && "Layer__tasks__content--collapsed"
|
|
19099
19299
|
)
|
|
19100
19300
|
},
|
|
19101
|
-
isLoading || !data ? /* @__PURE__ */
|
|
19301
|
+
isLoading || !data ? /* @__PURE__ */ import_react220.default.createElement("div", { className: "Layer__tasks__loader-container" }, /* @__PURE__ */ import_react220.default.createElement(Loader2, null)) : /* @__PURE__ */ import_react220.default.createElement(import_react220.default.Fragment, null, /* @__PURE__ */ import_react220.default.createElement(
|
|
19102
19302
|
TasksMonthSelector,
|
|
19103
19303
|
{
|
|
19104
19304
|
tasks: monthlyData,
|
|
@@ -19106,21 +19306,21 @@ var TasksComponent = ({
|
|
|
19106
19306
|
onClick: setCurrentDate,
|
|
19107
19307
|
year: (0, import_date_fns42.getYear)(dateRange.startDate)
|
|
19108
19308
|
}
|
|
19109
|
-
), /* @__PURE__ */
|
|
19309
|
+
), /* @__PURE__ */ import_react220.default.createElement(TasksPending, null), /* @__PURE__ */ import_react220.default.createElement(TasksList, null))
|
|
19110
19310
|
));
|
|
19111
19311
|
};
|
|
19112
19312
|
|
|
19113
19313
|
// src/components/PlatformOnboarding/LinkAccounts.tsx
|
|
19114
|
-
var
|
|
19314
|
+
var import_react221 = __toESM(require("react"));
|
|
19115
19315
|
var LinkAccounts = (_a) => {
|
|
19116
19316
|
var _b = _a, { inBox } = _b, props = __objRest(_b, ["inBox"]);
|
|
19117
|
-
const content = (0,
|
|
19317
|
+
const content = (0, import_react221.useMemo)(() => {
|
|
19118
19318
|
if (inBox) {
|
|
19119
|
-
return /* @__PURE__ */
|
|
19319
|
+
return /* @__PURE__ */ import_react221.default.createElement("div", { className: "Layer__link-accounts__box" }, /* @__PURE__ */ import_react221.default.createElement(LinkAccountsContent, __spreadValues({}, props)));
|
|
19120
19320
|
}
|
|
19121
|
-
return /* @__PURE__ */
|
|
19321
|
+
return /* @__PURE__ */ import_react221.default.createElement(LinkAccountsContent, __spreadValues({}, props));
|
|
19122
19322
|
}, [inBox, props]);
|
|
19123
|
-
return /* @__PURE__ */
|
|
19323
|
+
return /* @__PURE__ */ import_react221.default.createElement(LinkedAccountsProvider, null, content);
|
|
19124
19324
|
};
|
|
19125
19325
|
var LinkAccountsContent = ({
|
|
19126
19326
|
title,
|
|
@@ -19134,8 +19334,8 @@ var LinkAccountsContent = ({
|
|
|
19134
19334
|
onNext
|
|
19135
19335
|
}) => {
|
|
19136
19336
|
var _a;
|
|
19137
|
-
const { data, loadingStatus, error, refetchAccounts, addConnection } = (0,
|
|
19138
|
-
return /* @__PURE__ */
|
|
19337
|
+
const { data, loadingStatus, error, refetchAccounts, addConnection } = (0, import_react221.useContext)(LinkedAccountsContext);
|
|
19338
|
+
return /* @__PURE__ */ import_react221.default.createElement("div", { className: "Layer__link-accounts Layer__component" }, title && /* @__PURE__ */ import_react221.default.createElement(Heading, { size: "view" /* view */ }, title), data && data.length === 0 ? /* @__PURE__ */ import_react221.default.createElement("div", { className: "Layer__link-accounts__data-status-container" }, !hideLoading && loadingStatus !== "complete" ? /* @__PURE__ */ import_react221.default.createElement(Loader2, null) : null, Boolean(error) && /* @__PURE__ */ import_react221.default.createElement(
|
|
19139
19339
|
DataState,
|
|
19140
19340
|
{
|
|
19141
19341
|
status: "failed" /* failed */,
|
|
@@ -19143,7 +19343,7 @@ var LinkAccountsContent = ({
|
|
|
19143
19343
|
description: "Please try again later",
|
|
19144
19344
|
onRefresh: refetchAccounts
|
|
19145
19345
|
}
|
|
19146
|
-
)) : null, data && data.length > 0 ? /* @__PURE__ */
|
|
19346
|
+
)) : null, data && data.length > 0 ? /* @__PURE__ */ import_react221.default.createElement("div", { className: "Layer__link-accounts__list" }, data == null ? void 0 : data.map((account, index) => /* @__PURE__ */ import_react221.default.createElement(
|
|
19147
19347
|
LinkedAccountItemThumb,
|
|
19148
19348
|
{
|
|
19149
19349
|
key: index,
|
|
@@ -19153,33 +19353,33 @@ var LinkAccountsContent = ({
|
|
|
19153
19353
|
showBreakConnection,
|
|
19154
19354
|
asWidget
|
|
19155
19355
|
}
|
|
19156
|
-
))) : null, /* @__PURE__ */
|
|
19356
|
+
))) : null, /* @__PURE__ */ import_react221.default.createElement(
|
|
19157
19357
|
ActionableRow,
|
|
19158
19358
|
{
|
|
19159
|
-
iconBox: /* @__PURE__ */
|
|
19359
|
+
iconBox: /* @__PURE__ */ import_react221.default.createElement(PlaidIcon_default, null),
|
|
19160
19360
|
title: data && data.length > 0 ? "Connect my next business account" : "Connect accounts",
|
|
19161
19361
|
description: "Import data with one simple integration.",
|
|
19162
|
-
button: /* @__PURE__ */
|
|
19362
|
+
button: /* @__PURE__ */ import_react221.default.createElement(
|
|
19163
19363
|
Button,
|
|
19164
19364
|
{
|
|
19165
19365
|
onClick: () => addConnection("PLAID"),
|
|
19166
|
-
rightIcon: /* @__PURE__ */
|
|
19366
|
+
rightIcon: /* @__PURE__ */ import_react221.default.createElement(Link_default, { size: 12 }),
|
|
19167
19367
|
disabled: loadingStatus !== "complete"
|
|
19168
19368
|
},
|
|
19169
19369
|
data && data.length > 0 ? "Connect next" : "Connect"
|
|
19170
19370
|
)
|
|
19171
19371
|
}
|
|
19172
|
-
), /* @__PURE__ */
|
|
19372
|
+
), /* @__PURE__ */ import_react221.default.createElement(LinkedAccountsConfirmationModal, null), onBack || onNext ? /* @__PURE__ */ import_react221.default.createElement("div", { className: "Layer__link-accounts__footer" }, onBack && /* @__PURE__ */ import_react221.default.createElement(Button, { onClick: onBack, variant: "secondary" /* secondary */ }, (_a = stringOverrides == null ? void 0 : stringOverrides.backButtonText) != null ? _a : "Back"), onNext && /* @__PURE__ */ import_react221.default.createElement(Button, { onClick: onNext }, (stringOverrides == null ? void 0 : stringOverrides.nextButtonText) || "I\u2019m done connecting my business accounts")) : null);
|
|
19173
19373
|
};
|
|
19174
19374
|
|
|
19175
19375
|
// src/components/UpsellBanner/BookkeepingUpsellBar.tsx
|
|
19176
|
-
var
|
|
19376
|
+
var import_react222 = __toESM(require("react"));
|
|
19177
19377
|
|
|
19178
19378
|
// src/icons/Coffee.tsx
|
|
19179
|
-
var
|
|
19379
|
+
var React222 = __toESM(require("react"));
|
|
19180
19380
|
var CoffeeIcon = (_a) => {
|
|
19181
19381
|
var _b = _a, { size = 11 } = _b, props = __objRest(_b, ["size"]);
|
|
19182
|
-
return /* @__PURE__ */
|
|
19382
|
+
return /* @__PURE__ */ React222.createElement(
|
|
19183
19383
|
"svg",
|
|
19184
19384
|
__spreadProps(__spreadValues({
|
|
19185
19385
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -19189,7 +19389,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19189
19389
|
width: size,
|
|
19190
19390
|
height: size
|
|
19191
19391
|
}),
|
|
19192
|
-
/* @__PURE__ */
|
|
19392
|
+
/* @__PURE__ */ React222.createElement("g", { clipPath: "url(#clip0_5018_10141)" }, /* @__PURE__ */ React222.createElement(
|
|
19193
19393
|
"path",
|
|
19194
19394
|
{
|
|
19195
19395
|
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",
|
|
@@ -19197,7 +19397,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19197
19397
|
strokeLinecap: "round",
|
|
19198
19398
|
strokeLinejoin: "round"
|
|
19199
19399
|
}
|
|
19200
|
-
), /* @__PURE__ */
|
|
19400
|
+
), /* @__PURE__ */ React222.createElement(
|
|
19201
19401
|
"path",
|
|
19202
19402
|
{
|
|
19203
19403
|
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",
|
|
@@ -19205,7 +19405,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19205
19405
|
strokeLinecap: "round",
|
|
19206
19406
|
strokeLinejoin: "round"
|
|
19207
19407
|
}
|
|
19208
|
-
), /* @__PURE__ */
|
|
19408
|
+
), /* @__PURE__ */ React222.createElement(
|
|
19209
19409
|
"path",
|
|
19210
19410
|
{
|
|
19211
19411
|
d: "M8.75 0.958344V2.33334",
|
|
@@ -19213,7 +19413,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19213
19413
|
strokeLinecap: "round",
|
|
19214
19414
|
strokeLinejoin: "round"
|
|
19215
19415
|
}
|
|
19216
|
-
), /* @__PURE__ */
|
|
19416
|
+
), /* @__PURE__ */ React222.createElement(
|
|
19217
19417
|
"path",
|
|
19218
19418
|
{
|
|
19219
19419
|
d: "M6.91663 0.958344V2.33334",
|
|
@@ -19221,7 +19421,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19221
19421
|
strokeLinecap: "round",
|
|
19222
19422
|
strokeLinejoin: "round"
|
|
19223
19423
|
}
|
|
19224
|
-
), /* @__PURE__ */
|
|
19424
|
+
), /* @__PURE__ */ React222.createElement(
|
|
19225
19425
|
"path",
|
|
19226
19426
|
{
|
|
19227
19427
|
d: "M5.08337 0.958344V2.33334",
|
|
@@ -19230,7 +19430,7 @@ var CoffeeIcon = (_a) => {
|
|
|
19230
19430
|
strokeLinejoin: "round"
|
|
19231
19431
|
}
|
|
19232
19432
|
)),
|
|
19233
|
-
/* @__PURE__ */
|
|
19433
|
+
/* @__PURE__ */ React222.createElement("defs", null, /* @__PURE__ */ React222.createElement("clipPath", { id: "clip0_5018_10141" }, /* @__PURE__ */ React222.createElement(
|
|
19234
19434
|
"rect",
|
|
19235
19435
|
{
|
|
19236
19436
|
width: "11",
|
|
@@ -19248,26 +19448,26 @@ var BookkeepingUpsellBar = ({
|
|
|
19248
19448
|
onClick,
|
|
19249
19449
|
href
|
|
19250
19450
|
}) => {
|
|
19251
|
-
return /* @__PURE__ */
|
|
19451
|
+
return /* @__PURE__ */ import_react222.default.createElement("div", { className: "Layer__bar-banner Layer__bar-banner--bookkeeping" }, /* @__PURE__ */ import_react222.default.createElement("div", { className: "Layer__bar-banner__left-col" }, /* @__PURE__ */ import_react222.default.createElement(IconBox, null, /* @__PURE__ */ import_react222.default.createElement(Coffee_default, null)), /* @__PURE__ */ import_react222.default.createElement("div", { className: "Layer__bar-banner__text-container" }, /* @__PURE__ */ import_react222.default.createElement(Text, { size: "md" /* md */, weight: "bold" /* bold */ }, "Need help with your books?"), /* @__PURE__ */ import_react222.default.createElement(
|
|
19252
19452
|
Text,
|
|
19253
19453
|
{
|
|
19254
19454
|
size: "sm" /* sm */,
|
|
19255
19455
|
className: "Layer__bar-banner__text-container__desc"
|
|
19256
19456
|
},
|
|
19257
19457
|
"Order bookkeeping service supported by real humans."
|
|
19258
|
-
))), onClick ? /* @__PURE__ */
|
|
19458
|
+
))), onClick ? /* @__PURE__ */ import_react222.default.createElement(Button, { variant: "secondary" /* secondary */, onClick }, "Schedule a demo") : href ? /* @__PURE__ */ import_react222.default.createElement(Link2, { href, target: "_blank", variant: "secondary" /* secondary */ }, "Schedule a demo") : null);
|
|
19259
19459
|
};
|
|
19260
19460
|
|
|
19261
19461
|
// src/views/BookkeepingOverview/BookkeepingOverview.tsx
|
|
19262
|
-
var
|
|
19462
|
+
var import_react224 = __toESM(require("react"));
|
|
19263
19463
|
|
|
19264
19464
|
// src/views/BookkeepingOverview/internal/BookkeepingProfitAndLossSummariesContainer.tsx
|
|
19265
|
-
var
|
|
19465
|
+
var import_react223 = __toESM(require("react"));
|
|
19266
19466
|
var CLASS_NAME7 = "Layer__BookkeepingProfitAndLossSummariesContainer";
|
|
19267
19467
|
function BookkeepingProfitAndLossSummariesContainer({
|
|
19268
19468
|
children
|
|
19269
19469
|
}) {
|
|
19270
|
-
return /* @__PURE__ */
|
|
19470
|
+
return /* @__PURE__ */ import_react223.default.createElement("div", { className: CLASS_NAME7 }, children);
|
|
19271
19471
|
}
|
|
19272
19472
|
|
|
19273
19473
|
// src/views/BookkeepingOverview/BookkeepingOverview.tsx
|
|
@@ -19279,19 +19479,19 @@ var BookkeepingOverview = ({
|
|
|
19279
19479
|
slotProps
|
|
19280
19480
|
}) => {
|
|
19281
19481
|
var _a, _b, _c, _d, _e, _f;
|
|
19282
|
-
const [pnlToggle, setPnlToggle] = (0,
|
|
19482
|
+
const [pnlToggle, setPnlToggle] = (0, import_react224.useState)("expenses");
|
|
19283
19483
|
const [width] = useWindowSize();
|
|
19284
19484
|
const profitAndLossSummariesVariants = (_b = (_a = slotProps == null ? void 0 : slotProps.profitAndLoss) == null ? void 0 : _a.summaries) == null ? void 0 : _b.variants;
|
|
19285
|
-
return /* @__PURE__ */
|
|
19485
|
+
return /* @__PURE__ */ import_react224.default.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ import_react224.default.createElement(TasksProvider, null, /* @__PURE__ */ import_react224.default.createElement(
|
|
19286
19486
|
View,
|
|
19287
19487
|
{
|
|
19288
19488
|
viewClassName: "Layer__bookkeeping-overview--view",
|
|
19289
19489
|
title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "Bookkeeping overview",
|
|
19290
19490
|
withSidebar: width > 1100,
|
|
19291
|
-
sidebar: /* @__PURE__ */
|
|
19491
|
+
sidebar: /* @__PURE__ */ import_react224.default.createElement(TasksComponent, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.tasks }),
|
|
19292
19492
|
showHeader: showTitle
|
|
19293
19493
|
},
|
|
19294
|
-
width <= 1100 && /* @__PURE__ */
|
|
19494
|
+
width <= 1100 && /* @__PURE__ */ import_react224.default.createElement(
|
|
19295
19495
|
TasksComponent,
|
|
19296
19496
|
{
|
|
19297
19497
|
collapsable: true,
|
|
@@ -19299,30 +19499,30 @@ var BookkeepingOverview = ({
|
|
|
19299
19499
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.tasks
|
|
19300
19500
|
}
|
|
19301
19501
|
),
|
|
19302
|
-
/* @__PURE__ */
|
|
19502
|
+
/* @__PURE__ */ import_react224.default.createElement(
|
|
19303
19503
|
Container,
|
|
19304
19504
|
{
|
|
19305
19505
|
name: "bookkeeping-overview-profit-and-loss",
|
|
19306
19506
|
asWidget: true,
|
|
19307
19507
|
elevated: true
|
|
19308
19508
|
},
|
|
19309
|
-
/* @__PURE__ */
|
|
19509
|
+
/* @__PURE__ */ import_react224.default.createElement(
|
|
19310
19510
|
ProfitAndLoss.Header,
|
|
19311
19511
|
{
|
|
19312
19512
|
text: ((_c = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _c.header) || "Profit & Loss",
|
|
19313
19513
|
withDatePicker: true
|
|
19314
19514
|
}
|
|
19315
19515
|
),
|
|
19316
|
-
/* @__PURE__ */
|
|
19516
|
+
/* @__PURE__ */ import_react224.default.createElement(BookkeepingProfitAndLossSummariesContainer, null, /* @__PURE__ */ import_react224.default.createElement(
|
|
19317
19517
|
ProfitAndLoss.Summaries,
|
|
19318
19518
|
{
|
|
19319
19519
|
stringOverrides: (_d = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _d.summaries,
|
|
19320
19520
|
variants: profitAndLossSummariesVariants
|
|
19321
19521
|
}
|
|
19322
19522
|
)),
|
|
19323
|
-
/* @__PURE__ */
|
|
19523
|
+
/* @__PURE__ */ import_react224.default.createElement(ProfitAndLoss.Chart, null)
|
|
19324
19524
|
),
|
|
19325
|
-
/* @__PURE__ */
|
|
19525
|
+
/* @__PURE__ */ import_react224.default.createElement("div", { className: "Layer__bookkeeping-overview-profit-and-loss-charts" }, /* @__PURE__ */ import_react224.default.createElement(
|
|
19326
19526
|
Toggle,
|
|
19327
19527
|
{
|
|
19328
19528
|
name: "pnl-detailed-charts",
|
|
@@ -19339,7 +19539,7 @@ var BookkeepingOverview = ({
|
|
|
19339
19539
|
selected: pnlToggle,
|
|
19340
19540
|
onChange: (e) => setPnlToggle(e.target.value)
|
|
19341
19541
|
}
|
|
19342
|
-
), /* @__PURE__ */
|
|
19542
|
+
), /* @__PURE__ */ import_react224.default.createElement(
|
|
19343
19543
|
Container,
|
|
19344
19544
|
{
|
|
19345
19545
|
name: (0, import_classnames72.default)(
|
|
@@ -19347,7 +19547,7 @@ var BookkeepingOverview = ({
|
|
|
19347
19547
|
pnlToggle !== "revenue" && "bookkeeping-overview-profit-and-loss-chart--hidden"
|
|
19348
19548
|
)
|
|
19349
19549
|
},
|
|
19350
|
-
/* @__PURE__ */
|
|
19550
|
+
/* @__PURE__ */ import_react224.default.createElement(
|
|
19351
19551
|
ProfitAndLoss.DetailedCharts,
|
|
19352
19552
|
{
|
|
19353
19553
|
scope: "revenue",
|
|
@@ -19355,7 +19555,7 @@ var BookkeepingOverview = ({
|
|
|
19355
19555
|
stringOverrides: (_e = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _e.detailedCharts
|
|
19356
19556
|
}
|
|
19357
19557
|
)
|
|
19358
|
-
), /* @__PURE__ */
|
|
19558
|
+
), /* @__PURE__ */ import_react224.default.createElement(
|
|
19359
19559
|
Container,
|
|
19360
19560
|
{
|
|
19361
19561
|
name: (0, import_classnames72.default)(
|
|
@@ -19363,7 +19563,7 @@ var BookkeepingOverview = ({
|
|
|
19363
19563
|
pnlToggle !== "expenses" && "bookkeeping-overview-profit-and-loss-chart--hidden"
|
|
19364
19564
|
)
|
|
19365
19565
|
},
|
|
19366
|
-
/* @__PURE__ */
|
|
19566
|
+
/* @__PURE__ */ import_react224.default.createElement(
|
|
19367
19567
|
ProfitAndLoss.DetailedCharts,
|
|
19368
19568
|
{
|
|
19369
19569
|
scope: "expenses",
|
|
@@ -19376,15 +19576,15 @@ var BookkeepingOverview = ({
|
|
|
19376
19576
|
};
|
|
19377
19577
|
|
|
19378
19578
|
// src/views/AccountingOverview/AccountingOverview.tsx
|
|
19379
|
-
var
|
|
19579
|
+
var import_react227 = __toESM(require("react"));
|
|
19380
19580
|
|
|
19381
19581
|
// src/views/AccountingOverview/internal/TransactionsToReview.tsx
|
|
19382
|
-
var
|
|
19582
|
+
var import_react226 = __toESM(require("react"));
|
|
19383
19583
|
|
|
19384
19584
|
// src/components/BadgeLoader/BadgeLoader.tsx
|
|
19385
|
-
var
|
|
19585
|
+
var import_react225 = __toESM(require("react"));
|
|
19386
19586
|
var BadgeLoader = ({ children }) => {
|
|
19387
|
-
return /* @__PURE__ */
|
|
19587
|
+
return /* @__PURE__ */ import_react225.default.createElement("span", { className: "Layer__loader Layer__loader--as-badge" }, /* @__PURE__ */ import_react225.default.createElement(Loader_default, { size: 11, className: "Layer__anim--rotating" }), children);
|
|
19388
19588
|
};
|
|
19389
19589
|
|
|
19390
19590
|
// src/views/AccountingOverview/internal/TransactionsToReview.tsx
|
|
@@ -19397,17 +19597,17 @@ function TransactionsToReview({
|
|
|
19397
19597
|
variants
|
|
19398
19598
|
}) {
|
|
19399
19599
|
const { size = "sm" } = variants != null ? variants : {};
|
|
19400
|
-
const { dateRange: contextDateRange } = (0,
|
|
19600
|
+
const { dateRange: contextDateRange } = (0, import_react226.useContext)(ProfitAndLoss.Context);
|
|
19401
19601
|
const dateRange = usePnlDateRange ? contextDateRange : void 0;
|
|
19402
|
-
const [toReview, setToReview] = (0,
|
|
19602
|
+
const [toReview, setToReview] = (0, import_react226.useState)(0);
|
|
19403
19603
|
const { data, loaded, error, refetch } = useProfitAndLossLTM({
|
|
19404
19604
|
currentDate: dateRange ? dateRange.startDate : (0, import_date_fns43.startOfMonth)(/* @__PURE__ */ new Date()),
|
|
19405
19605
|
tagFilter
|
|
19406
19606
|
});
|
|
19407
|
-
(0,
|
|
19607
|
+
(0, import_react226.useEffect)(() => {
|
|
19408
19608
|
checkTransactionsToReview();
|
|
19409
19609
|
}, []);
|
|
19410
|
-
(0,
|
|
19610
|
+
(0, import_react226.useEffect)(() => {
|
|
19411
19611
|
checkTransactionsToReview();
|
|
19412
19612
|
}, [dateRange, loaded]);
|
|
19413
19613
|
const checkTransactionsToReview = () => {
|
|
@@ -19429,33 +19629,33 @@ function TransactionsToReview({
|
|
|
19429
19629
|
verticalGap = "sm";
|
|
19430
19630
|
break;
|
|
19431
19631
|
}
|
|
19432
|
-
return /* @__PURE__ */
|
|
19632
|
+
return /* @__PURE__ */ import_react226.default.createElement("div", { onClick, className: CLASS_NAME8 }, /* @__PURE__ */ import_react226.default.createElement(VStack, { gap: verticalGap, align: "start" }, /* @__PURE__ */ import_react226.default.createElement(ProfitAndLossSummariesHeading, { variants }, "Transactions to review"), loaded === "initial" || loaded === "loading" ? /* @__PURE__ */ import_react226.default.createElement(BadgeLoader, null) : null, loaded === "complete" && error ? /* @__PURE__ */ import_react226.default.createElement(
|
|
19433
19633
|
Badge,
|
|
19434
19634
|
{
|
|
19435
19635
|
variant: "error" /* ERROR */,
|
|
19436
19636
|
size: "small" /* SMALL */,
|
|
19437
|
-
icon: /* @__PURE__ */
|
|
19637
|
+
icon: /* @__PURE__ */ import_react226.default.createElement(RefreshCcw_default, { size: 12 }),
|
|
19438
19638
|
onClick: () => refetch()
|
|
19439
19639
|
},
|
|
19440
19640
|
"Refresh"
|
|
19441
|
-
) : null, loaded === "complete" && !error && toReview > 0 ? /* @__PURE__ */
|
|
19641
|
+
) : null, loaded === "complete" && !error && toReview > 0 ? /* @__PURE__ */ import_react226.default.createElement(
|
|
19442
19642
|
Badge,
|
|
19443
19643
|
{
|
|
19444
19644
|
variant: "warning" /* WARNING */,
|
|
19445
19645
|
size: "small" /* SMALL */,
|
|
19446
|
-
icon: /* @__PURE__ */
|
|
19646
|
+
icon: /* @__PURE__ */ import_react226.default.createElement(Bell_default, { size: 12 })
|
|
19447
19647
|
},
|
|
19448
19648
|
toReview,
|
|
19449
19649
|
" pending"
|
|
19450
|
-
) : null, loaded === "complete" && !error && toReview === 0 ? /* @__PURE__ */
|
|
19650
|
+
) : null, loaded === "complete" && !error && toReview === 0 ? /* @__PURE__ */ import_react226.default.createElement(
|
|
19451
19651
|
Badge,
|
|
19452
19652
|
{
|
|
19453
19653
|
variant: "success" /* SUCCESS */,
|
|
19454
19654
|
size: "small" /* SMALL */,
|
|
19455
|
-
icon: /* @__PURE__ */
|
|
19655
|
+
icon: /* @__PURE__ */ import_react226.default.createElement(Check_default, { size: 12 })
|
|
19456
19656
|
},
|
|
19457
19657
|
"All done"
|
|
19458
|
-
) : null), /* @__PURE__ */
|
|
19658
|
+
) : null), /* @__PURE__ */ import_react226.default.createElement(IconButton, { icon: /* @__PURE__ */ import_react226.default.createElement(ChevronRight_default, null), withBorder: true, onClick }));
|
|
19459
19659
|
}
|
|
19460
19660
|
|
|
19461
19661
|
// src/views/AccountingOverview/AccountingOverview.tsx
|
|
@@ -19474,36 +19674,36 @@ var AccountingOverview = ({
|
|
|
19474
19674
|
slotProps
|
|
19475
19675
|
}) => {
|
|
19476
19676
|
var _a, _b, _c, _d, _e;
|
|
19477
|
-
const [pnlToggle, setPnlToggle] = (0,
|
|
19677
|
+
const [pnlToggle, setPnlToggle] = (0, import_react227.useState)("expenses");
|
|
19478
19678
|
const profitAndLossSummariesVariants = (_b = (_a = slotProps == null ? void 0 : slotProps.profitAndLoss) == null ? void 0 : _a.summaries) == null ? void 0 : _b.variants;
|
|
19479
|
-
return /* @__PURE__ */
|
|
19679
|
+
return /* @__PURE__ */ import_react227.default.createElement(
|
|
19480
19680
|
ProfitAndLoss,
|
|
19481
19681
|
{
|
|
19482
19682
|
asContainer: false,
|
|
19483
19683
|
tagFilter: tagFilter ? { key: tagFilter.tagKey, values: tagFilter.tagValues } : void 0
|
|
19484
19684
|
},
|
|
19485
|
-
/* @__PURE__ */
|
|
19685
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19486
19686
|
View,
|
|
19487
19687
|
{
|
|
19488
19688
|
title,
|
|
19489
19689
|
showHeader: showTitle,
|
|
19490
|
-
header: /* @__PURE__ */
|
|
19690
|
+
header: /* @__PURE__ */ import_react227.default.createElement(Header2, null, /* @__PURE__ */ import_react227.default.createElement(HeaderRow, null, /* @__PURE__ */ import_react227.default.createElement(HeaderCol, null, /* @__PURE__ */ import_react227.default.createElement(ProfitAndLoss.DatePicker, null))))
|
|
19491
19691
|
},
|
|
19492
|
-
enableOnboarding && /* @__PURE__ */
|
|
19692
|
+
enableOnboarding && /* @__PURE__ */ import_react227.default.createElement(
|
|
19493
19693
|
Onboarding,
|
|
19494
19694
|
{
|
|
19495
19695
|
onTransactionsToReviewClick,
|
|
19496
19696
|
onboardingStepOverride
|
|
19497
19697
|
}
|
|
19498
19698
|
),
|
|
19499
|
-
/* @__PURE__ */
|
|
19699
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19500
19700
|
Internal_ProfitAndLossSummaries,
|
|
19501
19701
|
{
|
|
19502
19702
|
stringOverrides: (_c = stringOverrides == null ? void 0 : stringOverrides.profitAndLoss) == null ? void 0 : _c.summaries,
|
|
19503
19703
|
chartColorsList,
|
|
19504
19704
|
slots: {
|
|
19505
19705
|
unstable_AdditionalListItems: showTransactionsToReview ? [
|
|
19506
|
-
/* @__PURE__ */
|
|
19706
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19507
19707
|
TransactionsToReview,
|
|
19508
19708
|
{
|
|
19509
19709
|
key: "transactions-to-review",
|
|
@@ -19517,28 +19717,28 @@ var AccountingOverview = ({
|
|
|
19517
19717
|
variants: profitAndLossSummariesVariants
|
|
19518
19718
|
}
|
|
19519
19719
|
),
|
|
19520
|
-
/* @__PURE__ */
|
|
19720
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19521
19721
|
Container,
|
|
19522
19722
|
{
|
|
19523
19723
|
name: "accounting-overview-profit-and-loss",
|
|
19524
19724
|
asWidget: true,
|
|
19525
19725
|
elevated: true
|
|
19526
19726
|
},
|
|
19527
|
-
/* @__PURE__ */
|
|
19727
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19528
19728
|
ProfitAndLoss.Header,
|
|
19529
19729
|
{
|
|
19530
19730
|
text: (stringOverrides == null ? void 0 : stringOverrides.header) || "Profit & Loss"
|
|
19531
19731
|
}
|
|
19532
19732
|
),
|
|
19533
|
-
/* @__PURE__ */
|
|
19733
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19534
19734
|
ProfitAndLoss.Chart,
|
|
19535
19735
|
{
|
|
19536
19736
|
tagFilter: tagFilter ? { key: tagFilter.tagKey, values: tagFilter.tagValues } : void 0
|
|
19537
19737
|
}
|
|
19538
19738
|
)
|
|
19539
19739
|
),
|
|
19540
|
-
middleBanner && /* @__PURE__ */
|
|
19541
|
-
/* @__PURE__ */
|
|
19740
|
+
middleBanner && /* @__PURE__ */ import_react227.default.createElement(Container, { name: "accounting-overview-middle-banner" }, middleBanner),
|
|
19741
|
+
/* @__PURE__ */ import_react227.default.createElement("div", { className: "Layer__accounting-overview-profit-and-loss-charts" }, /* @__PURE__ */ import_react227.default.createElement(
|
|
19542
19742
|
Toggle,
|
|
19543
19743
|
{
|
|
19544
19744
|
name: "pnl-detailed-charts",
|
|
@@ -19555,7 +19755,7 @@ var AccountingOverview = ({
|
|
|
19555
19755
|
selected: pnlToggle,
|
|
19556
19756
|
onChange: (e) => setPnlToggle(e.target.value)
|
|
19557
19757
|
}
|
|
19558
|
-
), /* @__PURE__ */
|
|
19758
|
+
), /* @__PURE__ */ import_react227.default.createElement(
|
|
19559
19759
|
Container,
|
|
19560
19760
|
{
|
|
19561
19761
|
name: (0, import_classnames73.default)(
|
|
@@ -19563,7 +19763,7 @@ var AccountingOverview = ({
|
|
|
19563
19763
|
pnlToggle !== "revenue" && "accounting-overview-profit-and-loss-chart--hidden"
|
|
19564
19764
|
)
|
|
19565
19765
|
},
|
|
19566
|
-
/* @__PURE__ */
|
|
19766
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19567
19767
|
ProfitAndLoss.DetailedCharts,
|
|
19568
19768
|
{
|
|
19569
19769
|
scope: "revenue",
|
|
@@ -19572,7 +19772,7 @@ var AccountingOverview = ({
|
|
|
19572
19772
|
chartColorsList
|
|
19573
19773
|
}
|
|
19574
19774
|
)
|
|
19575
|
-
), /* @__PURE__ */
|
|
19775
|
+
), /* @__PURE__ */ import_react227.default.createElement(
|
|
19576
19776
|
Container,
|
|
19577
19777
|
{
|
|
19578
19778
|
name: (0, import_classnames73.default)(
|
|
@@ -19580,7 +19780,7 @@ var AccountingOverview = ({
|
|
|
19580
19780
|
pnlToggle !== "expenses" && "accounting-overview-profit-and-loss-chart--hidden"
|
|
19581
19781
|
)
|
|
19582
19782
|
},
|
|
19583
|
-
/* @__PURE__ */
|
|
19783
|
+
/* @__PURE__ */ import_react227.default.createElement(
|
|
19584
19784
|
ProfitAndLoss.DetailedCharts,
|
|
19585
19785
|
{
|
|
19586
19786
|
scope: "expenses",
|
|
@@ -19595,7 +19795,7 @@ var AccountingOverview = ({
|
|
|
19595
19795
|
};
|
|
19596
19796
|
|
|
19597
19797
|
// src/views/BankTransactionsWithLinkedAccounts/BankTransactionsWithLinkedAccounts.tsx
|
|
19598
|
-
var
|
|
19798
|
+
var import_react228 = __toESM(require("react"));
|
|
19599
19799
|
var BankTransactionsWithLinkedAccounts = ({
|
|
19600
19800
|
title,
|
|
19601
19801
|
// deprecated
|
|
@@ -19611,13 +19811,13 @@ var BankTransactionsWithLinkedAccounts = ({
|
|
|
19611
19811
|
mobileComponent,
|
|
19612
19812
|
stringOverrides
|
|
19613
19813
|
}) => {
|
|
19614
|
-
return /* @__PURE__ */
|
|
19814
|
+
return /* @__PURE__ */ import_react228.default.createElement(
|
|
19615
19815
|
View,
|
|
19616
19816
|
{
|
|
19617
19817
|
title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "Bank transactions",
|
|
19618
19818
|
showHeader: showTitle
|
|
19619
19819
|
},
|
|
19620
|
-
/* @__PURE__ */
|
|
19820
|
+
/* @__PURE__ */ import_react228.default.createElement(
|
|
19621
19821
|
LinkedAccounts,
|
|
19622
19822
|
{
|
|
19623
19823
|
elevated: elevatedLinkedAccounts,
|
|
@@ -19627,7 +19827,7 @@ var BankTransactionsWithLinkedAccounts = ({
|
|
|
19627
19827
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.linkedAccounts
|
|
19628
19828
|
}
|
|
19629
19829
|
),
|
|
19630
|
-
/* @__PURE__ */
|
|
19830
|
+
/* @__PURE__ */ import_react228.default.createElement(
|
|
19631
19831
|
BankTransactions,
|
|
19632
19832
|
{
|
|
19633
19833
|
asWidget: true,
|
|
@@ -19643,7 +19843,7 @@ var BankTransactionsWithLinkedAccounts = ({
|
|
|
19643
19843
|
};
|
|
19644
19844
|
|
|
19645
19845
|
// src/views/GeneralLedger/GeneralLedger.tsx
|
|
19646
|
-
var
|
|
19846
|
+
var import_react229 = __toESM(require("react"));
|
|
19647
19847
|
var GeneralLedgerView = ({
|
|
19648
19848
|
title,
|
|
19649
19849
|
// deprecated
|
|
@@ -19651,14 +19851,14 @@ var GeneralLedgerView = ({
|
|
|
19651
19851
|
stringOverrides,
|
|
19652
19852
|
chartOfAccountsOptions
|
|
19653
19853
|
}) => {
|
|
19654
|
-
const [activeTab, setActiveTab] = (0,
|
|
19655
|
-
return /* @__PURE__ */
|
|
19854
|
+
const [activeTab, setActiveTab] = (0, import_react229.useState)("chartOfAccounts");
|
|
19855
|
+
return /* @__PURE__ */ import_react229.default.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ import_react229.default.createElement(
|
|
19656
19856
|
View,
|
|
19657
19857
|
{
|
|
19658
19858
|
title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || "General Ledger",
|
|
19659
19859
|
showHeader: showTitle
|
|
19660
19860
|
},
|
|
19661
|
-
/* @__PURE__ */
|
|
19861
|
+
/* @__PURE__ */ import_react229.default.createElement(
|
|
19662
19862
|
Toggle,
|
|
19663
19863
|
{
|
|
19664
19864
|
name: "general-ledger-tabs",
|
|
@@ -19676,7 +19876,7 @@ var GeneralLedgerView = ({
|
|
|
19676
19876
|
onChange: (opt) => setActiveTab(opt.target.value)
|
|
19677
19877
|
}
|
|
19678
19878
|
),
|
|
19679
|
-
activeTab === "chartOfAccounts" ? /* @__PURE__ */
|
|
19879
|
+
activeTab === "chartOfAccounts" ? /* @__PURE__ */ import_react229.default.createElement(
|
|
19680
19880
|
ChartOfAccounts,
|
|
19681
19881
|
{
|
|
19682
19882
|
asWidget: true,
|
|
@@ -19685,12 +19885,12 @@ var GeneralLedgerView = ({
|
|
|
19685
19885
|
templateAccountsEditable: chartOfAccountsOptions == null ? void 0 : chartOfAccountsOptions.templateAccountsEditable,
|
|
19686
19886
|
showReversalEntries: chartOfAccountsOptions == null ? void 0 : chartOfAccountsOptions.showReversalEntries
|
|
19687
19887
|
}
|
|
19688
|
-
) : /* @__PURE__ */
|
|
19888
|
+
) : /* @__PURE__ */ import_react229.default.createElement(Journal, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.journal })
|
|
19689
19889
|
));
|
|
19690
19890
|
};
|
|
19691
19891
|
|
|
19692
19892
|
// src/views/ProjectProfitability/ProjectProfitability.tsx
|
|
19693
|
-
var
|
|
19893
|
+
var import_react230 = __toESM(require("react"));
|
|
19694
19894
|
var import_react_select5 = __toESM(require("react-select"));
|
|
19695
19895
|
var ProjectProfitabilityView = ({
|
|
19696
19896
|
valueOptions,
|
|
@@ -19699,9 +19899,9 @@ var ProjectProfitabilityView = ({
|
|
|
19699
19899
|
datePickerMode = "monthPicker",
|
|
19700
19900
|
csvMoneyFormat = "DOLLAR_STRING"
|
|
19701
19901
|
}) => {
|
|
19702
|
-
const [activeTab, setActiveTab] = (0,
|
|
19703
|
-
const [tagFilter, setTagFilter] = (0,
|
|
19704
|
-
const [pnlTagFilter, setPnlTagFilter] = (0,
|
|
19902
|
+
const [activeTab, setActiveTab] = (0, import_react230.useState)("overview");
|
|
19903
|
+
const [tagFilter, setTagFilter] = (0, import_react230.useState)(null);
|
|
19904
|
+
const [pnlTagFilter, setPnlTagFilter] = (0, import_react230.useState)(
|
|
19705
19905
|
void 0
|
|
19706
19906
|
);
|
|
19707
19907
|
const isOptionSelected = (option, selectValue) => {
|
|
@@ -19715,14 +19915,14 @@ var ProjectProfitabilityView = ({
|
|
|
19715
19915
|
values: tagFilter2.tagValues
|
|
19716
19916
|
} : void 0;
|
|
19717
19917
|
};
|
|
19718
|
-
return /* @__PURE__ */
|
|
19918
|
+
return /* @__PURE__ */ import_react230.default.createElement(
|
|
19719
19919
|
View,
|
|
19720
19920
|
{
|
|
19721
19921
|
title: (stringOverrides == null ? void 0 : stringOverrides.title) || "",
|
|
19722
19922
|
showHeader: showTitle,
|
|
19723
19923
|
viewClassName: "Layer__project-view"
|
|
19724
19924
|
},
|
|
19725
|
-
/* @__PURE__ */
|
|
19925
|
+
/* @__PURE__ */ import_react230.default.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ import_react230.default.createElement("div", { className: "Layer__component" }, /* @__PURE__ */ import_react230.default.createElement(
|
|
19726
19926
|
Toggle,
|
|
19727
19927
|
{
|
|
19728
19928
|
name: "project-tabs",
|
|
@@ -19743,7 +19943,7 @@ var ProjectProfitabilityView = ({
|
|
|
19743
19943
|
selected: activeTab,
|
|
19744
19944
|
onChange: (opt) => setActiveTab(opt.target.value)
|
|
19745
19945
|
}
|
|
19746
|
-
)), /* @__PURE__ */
|
|
19946
|
+
)), /* @__PURE__ */ import_react230.default.createElement(
|
|
19747
19947
|
import_react_select5.default,
|
|
19748
19948
|
{
|
|
19749
19949
|
className: "Layer__category-menu Layer__select",
|
|
@@ -19761,7 +19961,7 @@ var ProjectProfitabilityView = ({
|
|
|
19761
19961
|
}
|
|
19762
19962
|
}
|
|
19763
19963
|
)),
|
|
19764
|
-
/* @__PURE__ */
|
|
19964
|
+
/* @__PURE__ */ import_react230.default.createElement(Container, { name: "project" }, /* @__PURE__ */ import_react230.default.createElement(import_react230.default.Fragment, null, activeTab === "overview" && /* @__PURE__ */ import_react230.default.createElement(
|
|
19765
19965
|
AccountingOverview,
|
|
19766
19966
|
{
|
|
19767
19967
|
stringOverrides: { header: "Project Overview" },
|
|
@@ -19771,7 +19971,7 @@ var ProjectProfitabilityView = ({
|
|
|
19771
19971
|
showTransactionsToReview: false,
|
|
19772
19972
|
showTitle: false
|
|
19773
19973
|
}
|
|
19774
|
-
), activeTab === "transactions" && /* @__PURE__ */
|
|
19974
|
+
), activeTab === "transactions" && /* @__PURE__ */ import_react230.default.createElement(
|
|
19775
19975
|
BankTransactions,
|
|
19776
19976
|
{
|
|
19777
19977
|
hideHeader: true,
|
|
@@ -19780,7 +19980,7 @@ var ProjectProfitabilityView = ({
|
|
|
19780
19980
|
tagFilter: tagFilter != null ? tagFilter : void 0
|
|
19781
19981
|
}
|
|
19782
19982
|
}
|
|
19783
|
-
), activeTab === "report" && /* @__PURE__ */
|
|
19983
|
+
), activeTab === "report" && /* @__PURE__ */ import_react230.default.createElement(ProfitAndLoss, { asContainer: false, tagFilter: pnlTagFilter }, /* @__PURE__ */ import_react230.default.createElement(
|
|
19784
19984
|
ProfitAndLoss.Report,
|
|
19785
19985
|
{
|
|
19786
19986
|
stringOverrides,
|
|
@@ -19792,7 +19992,7 @@ var ProjectProfitabilityView = ({
|
|
|
19792
19992
|
};
|
|
19793
19993
|
|
|
19794
19994
|
// src/views/Reports/Reports.tsx
|
|
19795
|
-
var
|
|
19995
|
+
var import_react231 = __toESM(require("react"));
|
|
19796
19996
|
var getOptions = (enabledReports) => {
|
|
19797
19997
|
return [
|
|
19798
19998
|
enabledReports.includes("profitAndLoss") ? {
|
|
@@ -19819,17 +20019,17 @@ var Reports = ({
|
|
|
19819
20019
|
statementOfCashFlowConfig
|
|
19820
20020
|
}) => {
|
|
19821
20021
|
var _a;
|
|
19822
|
-
const [activeTab, setActiveTab] = (0,
|
|
20022
|
+
const [activeTab, setActiveTab] = (0, import_react231.useState)(enabledReports[0]);
|
|
19823
20023
|
const { view, containerRef } = useElementViewSize();
|
|
19824
20024
|
const options = getOptions(enabledReports);
|
|
19825
20025
|
const defaultTitle = enabledReports.length > 1 ? "Reports" : (_a = options.find((option) => option.value = enabledReports[0])) == null ? void 0 : _a.label;
|
|
19826
|
-
return /* @__PURE__ */
|
|
20026
|
+
return /* @__PURE__ */ import_react231.default.createElement(
|
|
19827
20027
|
View,
|
|
19828
20028
|
{
|
|
19829
20029
|
title: (stringOverrides == null ? void 0 : stringOverrides.title) || title || defaultTitle,
|
|
19830
20030
|
showHeader: showTitle
|
|
19831
20031
|
},
|
|
19832
|
-
enabledReports.length > 1 && /* @__PURE__ */
|
|
20032
|
+
enabledReports.length > 1 && /* @__PURE__ */ import_react231.default.createElement("div", { className: "Layer__component Layer__header__actions" }, /* @__PURE__ */ import_react231.default.createElement(
|
|
19833
20033
|
Toggle,
|
|
19834
20034
|
{
|
|
19835
20035
|
name: "reports-tabs",
|
|
@@ -19838,7 +20038,7 @@ var Reports = ({
|
|
|
19838
20038
|
onChange: (opt) => setActiveTab(opt.target.value)
|
|
19839
20039
|
}
|
|
19840
20040
|
)),
|
|
19841
|
-
/* @__PURE__ */
|
|
20041
|
+
/* @__PURE__ */ import_react231.default.createElement(Container, { name: "reports", ref: containerRef }, /* @__PURE__ */ import_react231.default.createElement(ProfitAndLoss, { asContainer: false }, /* @__PURE__ */ import_react231.default.createElement(
|
|
19842
20042
|
ReportsPanel,
|
|
19843
20043
|
{
|
|
19844
20044
|
containerRef,
|
|
@@ -19861,7 +20061,7 @@ var ReportsPanel = ({
|
|
|
19861
20061
|
statementOfCashFlowConfig,
|
|
19862
20062
|
view
|
|
19863
20063
|
}) => {
|
|
19864
|
-
return /* @__PURE__ */
|
|
20064
|
+
return /* @__PURE__ */ import_react231.default.createElement(import_react231.default.Fragment, null, openReport === "profitAndLoss" && /* @__PURE__ */ import_react231.default.createElement(
|
|
19865
20065
|
ProfitAndLoss.Report,
|
|
19866
20066
|
__spreadValues({
|
|
19867
20067
|
stringOverrides,
|
|
@@ -19869,7 +20069,7 @@ var ReportsPanel = ({
|
|
|
19869
20069
|
parentRef: containerRef,
|
|
19870
20070
|
view
|
|
19871
20071
|
}, profitAndLossConfig)
|
|
19872
|
-
), openReport === "balanceSheet" && /* @__PURE__ */
|
|
20072
|
+
), openReport === "balanceSheet" && /* @__PURE__ */ import_react231.default.createElement(BalanceSheet, { stringOverrides: stringOverrides == null ? void 0 : stringOverrides.balanceSheet }), openReport === "statementOfCashFlow" && /* @__PURE__ */ import_react231.default.createElement(
|
|
19873
20073
|
StatementOfCashFlow,
|
|
19874
20074
|
__spreadValues({
|
|
19875
20075
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.statementOfCashflow
|
|
@@ -19878,11 +20078,11 @@ var ReportsPanel = ({
|
|
|
19878
20078
|
};
|
|
19879
20079
|
|
|
19880
20080
|
// src/components/ProfitAndLossView/ProfitAndLossView.tsx
|
|
19881
|
-
var
|
|
20081
|
+
var import_react232 = __toESM(require("react"));
|
|
19882
20082
|
var COMPONENT_NAME7 = "profit-and-loss";
|
|
19883
20083
|
var ProfitAndLossView = (props) => {
|
|
19884
|
-
const containerRef = (0,
|
|
19885
|
-
return /* @__PURE__ */
|
|
20084
|
+
const containerRef = (0, import_react232.useRef)(null);
|
|
20085
|
+
return /* @__PURE__ */ import_react232.default.createElement(Container, { name: COMPONENT_NAME7, ref: containerRef }, /* @__PURE__ */ import_react232.default.createElement(ProfitAndLoss, null, /* @__PURE__ */ import_react232.default.createElement(ProfitAndLossPanel, __spreadValues({ containerRef }, props))));
|
|
19886
20086
|
};
|
|
19887
20087
|
var ProfitAndLossPanel = (_a) => {
|
|
19888
20088
|
var _b = _a, {
|
|
@@ -19892,11 +20092,11 @@ var ProfitAndLossPanel = (_a) => {
|
|
|
19892
20092
|
"containerRef",
|
|
19893
20093
|
"stringOverrides"
|
|
19894
20094
|
]);
|
|
19895
|
-
const { sidebarScope } = (0,
|
|
19896
|
-
return /* @__PURE__ */
|
|
20095
|
+
const { sidebarScope } = (0, import_react232.useContext)(ProfitAndLoss.Context);
|
|
20096
|
+
return /* @__PURE__ */ import_react232.default.createElement(
|
|
19897
20097
|
Panel,
|
|
19898
20098
|
{
|
|
19899
|
-
sidebar: /* @__PURE__ */
|
|
20099
|
+
sidebar: /* @__PURE__ */ import_react232.default.createElement(
|
|
19900
20100
|
ProfitAndLossDetailedCharts,
|
|
19901
20101
|
{
|
|
19902
20102
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossDetailedCharts
|
|
@@ -19905,7 +20105,7 @@ var ProfitAndLossPanel = (_a) => {
|
|
|
19905
20105
|
sidebarIsOpen: Boolean(sidebarScope),
|
|
19906
20106
|
parentRef: containerRef
|
|
19907
20107
|
},
|
|
19908
|
-
/* @__PURE__ */
|
|
20108
|
+
/* @__PURE__ */ import_react232.default.createElement(
|
|
19909
20109
|
ProfitAndLoss.Header,
|
|
19910
20110
|
{
|
|
19911
20111
|
text: (stringOverrides == null ? void 0 : stringOverrides.header) || "Profit & Loss",
|
|
@@ -19913,7 +20113,7 @@ var ProfitAndLossPanel = (_a) => {
|
|
|
19913
20113
|
headingClassName: "Layer__profit-and-loss__title"
|
|
19914
20114
|
}
|
|
19915
20115
|
),
|
|
19916
|
-
/* @__PURE__ */
|
|
20116
|
+
/* @__PURE__ */ import_react232.default.createElement(Components, __spreadValues({ stringOverrides }, props))
|
|
19917
20117
|
);
|
|
19918
20118
|
};
|
|
19919
20119
|
var Components = ({
|
|
@@ -19921,11 +20121,11 @@ var Components = ({
|
|
|
19921
20121
|
hideTable = false,
|
|
19922
20122
|
stringOverrides
|
|
19923
20123
|
}) => {
|
|
19924
|
-
const { error, isLoading, isValidating, refetch } = (0,
|
|
20124
|
+
const { error, isLoading, isValidating, refetch } = (0, import_react232.useContext)(
|
|
19925
20125
|
ProfitAndLoss.Context
|
|
19926
20126
|
);
|
|
19927
20127
|
if (!isLoading && error) {
|
|
19928
|
-
return /* @__PURE__ */
|
|
20128
|
+
return /* @__PURE__ */ import_react232.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react232.default.createElement(
|
|
19929
20129
|
DataState,
|
|
19930
20130
|
{
|
|
19931
20131
|
status: "failed" /* failed */,
|
|
@@ -19936,26 +20136,26 @@ var Components = ({
|
|
|
19936
20136
|
}
|
|
19937
20137
|
));
|
|
19938
20138
|
}
|
|
19939
|
-
return /* @__PURE__ */
|
|
20139
|
+
return /* @__PURE__ */ import_react232.default.createElement(import_react232.default.Fragment, null, !hideChart && /* @__PURE__ */ import_react232.default.createElement("div", { className: `Layer__${COMPONENT_NAME7}__chart_with_summaries` }, /* @__PURE__ */ import_react232.default.createElement(
|
|
19940
20140
|
"div",
|
|
19941
20141
|
{
|
|
19942
20142
|
className: `Layer__${COMPONENT_NAME7}__chart_with_summaries__summary-col`
|
|
19943
20143
|
},
|
|
19944
|
-
/* @__PURE__ */
|
|
19945
|
-
/* @__PURE__ */
|
|
20144
|
+
/* @__PURE__ */ import_react232.default.createElement(ProfitAndLoss.DatePicker, null),
|
|
20145
|
+
/* @__PURE__ */ import_react232.default.createElement(
|
|
19946
20146
|
ProfitAndLoss.Summaries,
|
|
19947
20147
|
{
|
|
19948
20148
|
actionable: true,
|
|
19949
20149
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossSummaries
|
|
19950
20150
|
}
|
|
19951
20151
|
)
|
|
19952
|
-
), /* @__PURE__ */
|
|
20152
|
+
), /* @__PURE__ */ import_react232.default.createElement(
|
|
19953
20153
|
"div",
|
|
19954
20154
|
{
|
|
19955
20155
|
className: `Layer__${COMPONENT_NAME7}__chart_with_summaries__chart-col`
|
|
19956
20156
|
},
|
|
19957
|
-
/* @__PURE__ */
|
|
19958
|
-
)), !hideTable && /* @__PURE__ */
|
|
20157
|
+
/* @__PURE__ */ import_react232.default.createElement(ProfitAndLoss.Chart, null)
|
|
20158
|
+
)), !hideTable && /* @__PURE__ */ import_react232.default.createElement(
|
|
19959
20159
|
ProfitAndLoss.Table,
|
|
19960
20160
|
{
|
|
19961
20161
|
stringOverrides: stringOverrides == null ? void 0 : stringOverrides.profitAndLossTable
|