@layerfi/components 0.1.56 → 0.1.57

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/index.js CHANGED
@@ -11572,7 +11572,9 @@ var TableCell = ({
11572
11572
  isCurrency,
11573
11573
  primary,
11574
11574
  withExpandIcon = false,
11575
- fullWidth
11575
+ fullWidth,
11576
+ colSpan = 1,
11577
+ onClick
11576
11578
  }) => {
11577
11579
  const amount = typeof children === "number" ? children : 0;
11578
11580
  const isPositive = amount >= 0;
@@ -11585,13 +11587,15 @@ var TableCell = ({
11585
11587
  isCurrency && !isPositive && "Layer__table-cell-amount--negative"
11586
11588
  );
11587
11589
  if (isHeaderCell) {
11588
- return /* @__PURE__ */ import_react122.default.createElement("th", { className: cellClassNames }, /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, children));
11590
+ return /* @__PURE__ */ import_react122.default.createElement("th", { className: cellClassNames, colSpan }, /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, children));
11589
11591
  }
11590
11592
  return /* @__PURE__ */ import_react122.default.createElement(
11591
11593
  "td",
11592
11594
  {
11593
11595
  className: cellClassNames,
11594
- style: fullWidth ? { width: "100%" } : void 0
11596
+ style: fullWidth ? { width: "100%" } : void 0,
11597
+ colSpan,
11598
+ onClick: (e) => onClick && onClick(e)
11595
11599
  },
11596
11600
  /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, withExpandIcon && /* @__PURE__ */ import_react122.default.createElement(
11597
11601
  ChevronDownFill_default,
@@ -11622,20 +11626,35 @@ var TableRow = ({
11622
11626
  variant = expandable ? "expandable" : "default",
11623
11627
  withDivider,
11624
11628
  withDividerPosition = "top",
11625
- isHeadRow = false
11629
+ isHeadRow = false,
11630
+ selected,
11631
+ onClick
11626
11632
  }) => {
11627
- const toggleExpanded = () => {
11628
- if (variant === "summation" || !expandable)
11629
- return;
11630
- handleExpand && handleExpand();
11633
+ const toggleExpanded = (e) => {
11634
+ if (onClick) {
11635
+ onClick(e);
11636
+ } else {
11637
+ if (variant === "summation" || !expandable)
11638
+ return;
11639
+ handleExpand && handleExpand();
11640
+ }
11631
11641
  };
11632
11642
  const rowClassNames = (0, import_classnames49.default)([
11633
11643
  "Layer__table-row",
11634
11644
  !isHeadRow && `Layer__table-row--depth-${depth}`,
11635
11645
  !isHeadRow && `Layer__table-row--variant-${variant}`,
11646
+ selected && "Layer__table-row--selected",
11636
11647
  !isHeadRow && expandable && (isExpanded ? "Layer__table-row--expanded" : "Layer__table-row--collapsed")
11637
11648
  ]);
11638
- return /* @__PURE__ */ import_react124.default.createElement(import_react124.default.Fragment, null, withDivider && withDividerPosition === "top" && /* @__PURE__ */ import_react124.default.createElement("tr", { className: "Layer__table-empty-row" }, /* @__PURE__ */ import_react124.default.createElement("td", { colSpan: Array.isArray(children) ? children.length : 1 })), /* @__PURE__ */ import_react124.default.createElement("tr", { "data-key": rowKey, className: rowClassNames, onClick: toggleExpanded }, children), withDivider && withDividerPosition === "bottom" && /* @__PURE__ */ import_react124.default.createElement("tr", { className: "Layer__table-empty-row" }, /* @__PURE__ */ import_react124.default.createElement("td", { colSpan: Array.isArray(children) ? children.length : 1 })));
11649
+ return /* @__PURE__ */ import_react124.default.createElement(import_react124.default.Fragment, null, withDivider && withDividerPosition === "top" && /* @__PURE__ */ import_react124.default.createElement("tr", { className: "Layer__table-empty-row" }, /* @__PURE__ */ import_react124.default.createElement("td", { colSpan: Array.isArray(children) ? children.length : 1 })), /* @__PURE__ */ import_react124.default.createElement(
11650
+ "tr",
11651
+ {
11652
+ "data-key": rowKey,
11653
+ className: rowClassNames,
11654
+ onClick: (e) => toggleExpanded(e)
11655
+ },
11656
+ children
11657
+ ), withDivider && withDividerPosition === "bottom" && /* @__PURE__ */ import_react124.default.createElement("tr", { className: "Layer__table-empty-row" }, /* @__PURE__ */ import_react124.default.createElement("td", { colSpan: Array.isArray(children) ? children.length : 1 })));
11639
11658
  };
11640
11659
 
11641
11660
  // src/components/Table/Table.tsx
@@ -13209,7 +13228,7 @@ var useLedgerAccounts = () => {
13209
13228
  };
13210
13229
  };
13211
13230
 
13212
- // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13231
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
13213
13232
  var import_react152 = __toESM(require("react"));
13214
13233
 
13215
13234
  // src/components/ChartOfAccountsDatePicker/ChartOfAccountsDatePicker.tsx
@@ -13234,265 +13253,15 @@ var ChartOfAccountsDatePicker = () => {
13234
13253
  );
13235
13254
  };
13236
13255
 
13237
- // src/components/ChartOfAccountsRow/ChartOfAccountsRow.tsx
13238
- var import_react148 = __toESM(require("react"));
13239
-
13240
- // src/icons/Edit2.tsx
13241
- var React152 = __toESM(require("react"));
13242
- var Edit2 = ({ size = 18, ...props }) => /* @__PURE__ */ React152.createElement(
13243
- "svg",
13244
- {
13245
- xmlns: "http://www.w3.org/2000/svg",
13246
- viewBox: "0 0 18 18",
13247
- fill: "none",
13248
- ...props,
13249
- width: size,
13250
- height: size
13251
- },
13252
- /* @__PURE__ */ React152.createElement(
13253
- "path",
13254
- {
13255
- d: "M12.75 2.25C12.947 2.05301 13.1808 1.89676 13.4382 1.79015C13.6956 1.68355 13.9714 1.62868 14.25 1.62868C14.5286 1.62868 14.8044 1.68355 15.0618 1.79015C15.3192 1.89676 15.553 2.05301 15.75 2.25C15.947 2.44698 16.1032 2.68083 16.2098 2.9382C16.3165 3.19557 16.3713 3.47142 16.3713 3.75C16.3713 4.02857 16.3165 4.30442 16.2098 4.56179C16.1032 4.81916 15.947 5.05302 15.75 5.25L5.625 15.375L1.5 16.5L2.625 12.375L12.75 2.25Z",
13256
- stroke: "currentColor",
13257
- strokeLinecap: "round",
13258
- strokeLinejoin: "round"
13259
- }
13260
- )
13261
- );
13262
- var Edit2_default = Edit2;
13263
-
13264
- // src/components/ChartOfAccountsRow/ChartOfAccountsRow.tsx
13265
- var import_classnames55 = __toESM(require("classnames"));
13266
- var INDENTATION = 24;
13267
- var EXPANDED_STYLE2 = {
13268
- height: 52,
13269
- paddingTop: 12,
13270
- paddingBottom: 12,
13271
- opacity: 1
13272
- };
13273
- var EXPANDED_MOBILE_STYLE = {
13274
- height: 76,
13275
- paddingTop: 12,
13276
- paddingBottom: 12,
13277
- opacity: 1
13278
- };
13279
- var COLLAPSED_STYLE2 = {
13280
- height: 0,
13281
- paddingTop: 0,
13282
- paddingBottom: 0,
13283
- opacity: 0.5
13284
- };
13285
- var ChartOfAccountsRow = ({
13286
- account,
13287
- depth = 0,
13288
- index,
13289
- cumulativeIndex = 0,
13290
- expanded = false,
13291
- defaultOpen = false,
13292
- acountsLength,
13293
- view,
13294
- expandAll
13295
- }) => {
13296
- const { form, editAccount } = (0, import_react148.useContext)(ChartOfAccountsContext);
13297
- const { setAccountId } = (0, import_react148.useContext)(LedgerAccountsContext);
13298
- const baseStyle = view === "desktop" ? EXPANDED_STYLE2 : EXPANDED_MOBILE_STYLE;
13299
- const [isOpen, setIsOpen] = (0, import_react148.useState)(defaultOpen);
13300
- const style = expanded ? {
13301
- ...baseStyle,
13302
- transitionDelay: `${15 * index}ms`
13303
- } : {
13304
- ...COLLAPSED_STYLE2,
13305
- transitionDelay: `${acountsLength - 15 * index}ms`
13306
- };
13307
- const [showComponent, setShowComponent] = (0, import_react148.useState)(false);
13308
- const [prevExpandedAll, setPrevExpandedAll] = (0, import_react148.useState)(expandAll);
13309
- (0, import_react148.useEffect)(() => {
13310
- const timeoutId = setTimeout(() => {
13311
- setShowComponent(true);
13312
- }, cumulativeIndex * 50);
13313
- return () => clearTimeout(timeoutId);
13314
- }, []);
13315
- (0, import_react148.useEffect)(() => {
13316
- if (prevExpandedAll !== expandAll && expandAll) {
13317
- setIsOpen(expandAll === "collapsed" ? false : true);
13318
- }
13319
- }, [expandAll]);
13320
- const baseClass = (0, import_classnames55.default)(
13321
- "Layer__table-row",
13322
- isOpen ? "Layer__table-row--expanded" : "Layer__table-row--collapsed",
13323
- !expanded && "Layer__table-row--hidden",
13324
- `Layer__table-row--depth-${depth}`,
13325
- form?.accountId === account.id && "Layer__table-row--active",
13326
- !showComponent && "Layer__table-row--anim-starting-state"
13327
- );
13328
- const desktopRowClass = (0, import_classnames55.default)(
13329
- baseClass,
13330
- "Layer__chart-of-accounts__row---desktop"
13331
- );
13332
- const mobileRowClass = (0, import_classnames55.default)(
13333
- baseClass,
13334
- "Layer__chart-of-accounts__row---mobile"
13335
- );
13336
- return /* @__PURE__ */ import_react148.default.createElement(import_react148.default.Fragment, null, view === "desktop" && /* @__PURE__ */ import_react148.default.createElement(
13337
- "tr",
13338
- {
13339
- className: desktopRowClass,
13340
- onClick: (e) => {
13341
- e.preventDefault();
13342
- e.stopPropagation();
13343
- setAccountId(account.id);
13344
- }
13345
- },
13346
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell Layer__coa__name" }, /* @__PURE__ */ import_react148.default.createElement("span", { className: "Layer__table-cell-content", style }, /* @__PURE__ */ import_react148.default.createElement(
13347
- "span",
13348
- {
13349
- className: "Layer__table-cell-content-indentation",
13350
- style: {
13351
- paddingLeft: INDENTATION * depth + 16
13352
- }
13353
- },
13354
- account.sub_accounts && account.sub_accounts.length > 0 && /* @__PURE__ */ import_react148.default.createElement(
13355
- ChevronDownFill_default,
13356
- {
13357
- size: 16,
13358
- className: "Layer__table__expand-icon",
13359
- onClick: (e) => {
13360
- e.stopPropagation();
13361
- setIsOpen(!isOpen);
13362
- }
13363
- }
13364
- ),
13365
- /* @__PURE__ */ import_react148.default.createElement("span", { className: "Layer__coa__name__text" }, account.name)
13366
- ))),
13367
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell Layer__coa__type" }, /* @__PURE__ */ import_react148.default.createElement(
13368
- "span",
13369
- {
13370
- className: "Layer__table-cell-content Layer__mobile--hidden",
13371
- style
13372
- },
13373
- account.account_type?.display_name
13374
- ), /* @__PURE__ */ import_react148.default.createElement(
13375
- "span",
13376
- {
13377
- className: "Layer__table-cell-content Layer__desktop--hidden",
13378
- style
13379
- },
13380
- /* @__PURE__ */ import_react148.default.createElement(
13381
- Text,
13382
- {
13383
- weight: "bold" /* bold */,
13384
- className: "Layer__coa__type--mobile"
13385
- },
13386
- account.normality
13387
- ),
13388
- /* @__PURE__ */ import_react148.default.createElement(Text, { className: "Layer__coa__subtype--mobile" }, account.account_subtype?.display_name)
13389
- )),
13390
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell Layer__coa__subtype Layer__mobile--hidden" }, /* @__PURE__ */ import_react148.default.createElement("span", { className: "Layer__table-cell-content", style }, account.account_subtype?.display_name)),
13391
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell Layer__coa__balance" }, /* @__PURE__ */ import_react148.default.createElement(
13392
- "span",
13393
- {
13394
- className: "Layer__table-cell-content Layer__table-cell--amount",
13395
- style
13396
- },
13397
- "$",
13398
- centsToDollars(Math.abs(account.balance || 0))
13399
- )),
13400
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell Layer__coa__actions" }, /* @__PURE__ */ import_react148.default.createElement("span", { className: "Layer__table-cell-content", style }, /* @__PURE__ */ import_react148.default.createElement(
13401
- Button,
13402
- {
13403
- variant: "secondary" /* secondary */,
13404
- rightIcon: /* @__PURE__ */ import_react148.default.createElement(Edit2_default, { size: 12 }),
13405
- iconOnly: true,
13406
- onClick: (e) => {
13407
- e.preventDefault();
13408
- e.stopPropagation();
13409
- editAccount(account.id);
13410
- }
13411
- },
13412
- "Edit"
13413
- )))
13414
- ), view === "mobile" || view === "tablet" ? /* @__PURE__ */ import_react148.default.createElement(
13415
- "tr",
13416
- {
13417
- className: mobileRowClass,
13418
- onClick: (e) => {
13419
- e.preventDefault();
13420
- e.stopPropagation();
13421
- setAccountId(account.id);
13422
- }
13423
- },
13424
- /* @__PURE__ */ import_react148.default.createElement("td", { className: "Layer__table-cell", colSpan: 5 }, /* @__PURE__ */ import_react148.default.createElement(
13425
- "span",
13426
- {
13427
- className: "Layer__table-cell-content Layer__table-cell-content-indentation",
13428
- style: {
13429
- paddingLeft: INDENTATION * depth + 16,
13430
- ...style
13431
- }
13432
- },
13433
- account.sub_accounts && account.sub_accounts.length > 0 && /* @__PURE__ */ import_react148.default.createElement(
13434
- ChevronDownFill_default,
13435
- {
13436
- size: 16,
13437
- className: "Layer__table__expand-icon",
13438
- onClick: (e) => {
13439
- e.stopPropagation();
13440
- setIsOpen(!isOpen);
13441
- }
13442
- }
13443
- ),
13444
- /* @__PURE__ */ import_react148.default.createElement("div", { className: "Layer__chart-of-accounts__mobile-row-content" }, /* @__PURE__ */ import_react148.default.createElement("div", { className: "Layer__chart-of-accounts__mobile-row-content__top-row" }, /* @__PURE__ */ import_react148.default.createElement(
13445
- Text,
13446
- {
13447
- as: "span",
13448
- className: "Layer__chart-of-accounts__mobile-row-content__name"
13449
- },
13450
- account.name
13451
- ), /* @__PURE__ */ import_react148.default.createElement(
13452
- TextButton,
13453
- {
13454
- onClick: (e) => {
13455
- e.preventDefault();
13456
- e.stopPropagation();
13457
- editAccount(account.id);
13458
- }
13459
- },
13460
- "Edit"
13461
- )), /* @__PURE__ */ import_react148.default.createElement("div", { className: "Layer__chart-of-accounts__mobile-row-content__bottom-row" }, /* @__PURE__ */ import_react148.default.createElement("div", { className: "Layer__chart-of-accounts__mobile-row-content__types" }, /* @__PURE__ */ import_react148.default.createElement(Text, { as: "span" }, account.normality), /* @__PURE__ */ import_react148.default.createElement("span", { className: "Layer__chart-of-accounts__mobile-row-content__separator" }), /* @__PURE__ */ import_react148.default.createElement(Text, { as: "span" }, "Sub-Type")), /* @__PURE__ */ import_react148.default.createElement(
13462
- Text,
13463
- {
13464
- as: "span",
13465
- className: "Layer__chart-of-accounts__mobile-row-content__balance"
13466
- },
13467
- "$",
13468
- centsToDollars(Math.abs(account.balance || 0))
13469
- )))
13470
- ))
13471
- ) : null, (account.sub_accounts || []).map((subAccount, idx) => /* @__PURE__ */ import_react148.default.createElement(
13472
- ChartOfAccountsRow,
13473
- {
13474
- key: subAccount.id,
13475
- account: subAccount,
13476
- depth: depth + 1,
13477
- index: idx,
13478
- expanded: isOpen && expanded,
13479
- cumulativeIndex: cumulativeIndex + idx + 1,
13480
- acountsLength: (account.sub_accounts ?? []).length,
13481
- view,
13482
- expandAll
13483
- }
13484
- )));
13485
- };
13486
-
13487
13256
  // src/components/ChartOfAccountsSidebar/ChartOfAccountsSidebar.tsx
13488
- var import_react151 = __toESM(require("react"));
13257
+ var import_react150 = __toESM(require("react"));
13489
13258
 
13490
13259
  // src/components/ChartOfAccountsForm/ChartOfAccountsForm.tsx
13491
- var import_react150 = __toESM(require("react"));
13260
+ var import_react149 = __toESM(require("react"));
13492
13261
 
13493
13262
  // src/components/ChartOfAccountsForm/useParentOptions.ts
13494
- var import_react149 = require("react");
13495
- var useParentOptions = (data) => (0, import_react149.useMemo)(
13263
+ var import_react148 = require("react");
13264
+ var useParentOptions = (data) => (0, import_react148.useMemo)(
13496
13265
  () => flattenAccounts(data?.accounts || []).sort((a, b) => a?.name && b?.name ? a.name.localeCompare(b.name) : 0).map((x) => {
13497
13266
  return {
13498
13267
  label: x.name,
@@ -13512,9 +13281,9 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13512
13281
  submitForm,
13513
13282
  sendingForm,
13514
13283
  apiError
13515
- } = (0, import_react150.useContext)(ChartOfAccountsContext);
13284
+ } = (0, import_react149.useContext)(ChartOfAccountsContext);
13516
13285
  const parentOptions = useParentOptions(data);
13517
- const entry = (0, import_react150.useMemo)(() => {
13286
+ const entry = (0, import_react149.useMemo)(() => {
13518
13287
  if (form?.action === "edit" && form.accountId) {
13519
13288
  return flattenAccounts(data?.accounts || []).find(
13520
13289
  (x) => x.id === form.accountId
@@ -13525,7 +13294,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13525
13294
  if (!form) {
13526
13295
  return;
13527
13296
  }
13528
- return /* @__PURE__ */ import_react150.default.createElement(
13297
+ return /* @__PURE__ */ import_react149.default.createElement(
13529
13298
  "form",
13530
13299
  {
13531
13300
  className: "Layer__form",
@@ -13534,7 +13303,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13534
13303
  submitForm();
13535
13304
  }
13536
13305
  },
13537
- /* @__PURE__ */ import_react150.default.createElement("div", { className: "Layer__chart-of-accounts__sidebar__header" }, /* @__PURE__ */ import_react150.default.createElement(Text, { size: "lg" /* lg */, weight: "bold" /* bold */, className: "title" }, form?.action === "edit" ? stringOverrides?.editModeHeader || "Edit Account" : stringOverrides?.createModeHeader || "Add New Account"), /* @__PURE__ */ import_react150.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react150.default.createElement(
13306
+ /* @__PURE__ */ import_react149.default.createElement("div", { className: "Layer__chart-of-accounts__sidebar__header" }, /* @__PURE__ */ import_react149.default.createElement(Text, { size: "lg" /* lg */, weight: "bold" /* bold */, className: "title" }, form?.action === "edit" ? stringOverrides?.editModeHeader || "Edit Account" : stringOverrides?.createModeHeader || "Add New Account"), /* @__PURE__ */ import_react149.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react149.default.createElement(
13538
13307
  Button,
13539
13308
  {
13540
13309
  type: "button",
@@ -13543,7 +13312,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13543
13312
  disabled: sendingForm
13544
13313
  },
13545
13314
  stringOverrides?.cancelButton || "Cancel"
13546
- ), apiError && /* @__PURE__ */ import_react150.default.createElement(
13315
+ ), apiError && /* @__PURE__ */ import_react149.default.createElement(
13547
13316
  RetryButton,
13548
13317
  {
13549
13318
  type: "submit",
@@ -13552,7 +13321,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13552
13321
  disabled: sendingForm
13553
13322
  },
13554
13323
  stringOverrides?.retryButton || "Retry"
13555
- ), !apiError && /* @__PURE__ */ import_react150.default.createElement(
13324
+ ), !apiError && /* @__PURE__ */ import_react149.default.createElement(
13556
13325
  SubmitButton,
13557
13326
  {
13558
13327
  type: "submit",
@@ -13562,7 +13331,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13562
13331
  },
13563
13332
  stringOverrides?.saveButton || "Save"
13564
13333
  ))),
13565
- apiError && /* @__PURE__ */ import_react150.default.createElement(
13334
+ apiError && /* @__PURE__ */ import_react149.default.createElement(
13566
13335
  Text,
13567
13336
  {
13568
13337
  size: "sm" /* sm */,
@@ -13570,8 +13339,8 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13570
13339
  },
13571
13340
  apiError
13572
13341
  ),
13573
- entry && /* @__PURE__ */ import_react150.default.createElement("div", { className: "Layer__chart-of-accounts__form-edit-entry" }, /* @__PURE__ */ import_react150.default.createElement(Text, { weight: "bold" /* bold */ }, entry.name), /* @__PURE__ */ import_react150.default.createElement(Text, { weight: "bold" /* bold */ }, "$", centsToDollars(entry.balance || 0))),
13574
- /* @__PURE__ */ import_react150.default.createElement("div", { className: "Layer__chart-of-accounts__form" }, /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "parent", label: stringOverrides?.parentLabel || "Parent", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13342
+ entry && /* @__PURE__ */ import_react149.default.createElement("div", { className: "Layer__chart-of-accounts__form-edit-entry" }, /* @__PURE__ */ import_react149.default.createElement(Text, { weight: "bold" /* bold */ }, entry.name), /* @__PURE__ */ import_react149.default.createElement(Text, { weight: "bold" /* bold */ }, "$", centsToDollars(entry.balance || 0))),
13343
+ /* @__PURE__ */ import_react149.default.createElement("div", { className: "Layer__chart-of-accounts__form" }, /* @__PURE__ */ import_react149.default.createElement(InputGroup, { name: "parent", label: stringOverrides?.parentLabel || "Parent", inline: true }, /* @__PURE__ */ import_react149.default.createElement(
13575
13344
  Select2,
13576
13345
  {
13577
13346
  options: parentOptions,
@@ -13579,7 +13348,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13579
13348
  onChange: (sel) => changeFormData("parent", sel),
13580
13349
  disabled: sendingForm
13581
13350
  }
13582
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "name", label: stringOverrides?.nameLabel || "Name", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13351
+ )), /* @__PURE__ */ import_react149.default.createElement(InputGroup, { name: "name", label: stringOverrides?.nameLabel || "Name", inline: true }, /* @__PURE__ */ import_react149.default.createElement(
13583
13352
  Input,
13584
13353
  {
13585
13354
  name: "name",
@@ -13590,7 +13359,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13590
13359
  disabled: sendingForm,
13591
13360
  onChange: (e) => changeFormData("name", e.target.value)
13592
13361
  }
13593
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "type", label: stringOverrides?.typeLabel || "Type", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13362
+ )), /* @__PURE__ */ import_react149.default.createElement(InputGroup, { name: "type", label: stringOverrides?.typeLabel || "Type", inline: true }, /* @__PURE__ */ import_react149.default.createElement(
13594
13363
  Select2,
13595
13364
  {
13596
13365
  options: LEDGER_ACCOUNT_TYPES,
@@ -13600,7 +13369,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13600
13369
  errorMessage: form?.errors?.find((x) => x.field === "type")?.message,
13601
13370
  disabled: sendingForm || form.action === "edit" || form.data.parent !== void 0
13602
13371
  }
13603
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "subType", label: stringOverrides?.subTypeLabel || "Sub-Type", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13372
+ )), /* @__PURE__ */ import_react149.default.createElement(InputGroup, { name: "subType", label: stringOverrides?.subTypeLabel || "Sub-Type", inline: true }, /* @__PURE__ */ import_react149.default.createElement(
13604
13373
  Select2,
13605
13374
  {
13606
13375
  options: form?.data.type?.value !== void 0 ? LEDGER_ACCOUNT_SUBTYPES_FOR_TYPE[form?.data.type?.value] : LEDGER_ACCOUNT_SUBTYPES,
@@ -13608,7 +13377,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13608
13377
  onChange: (sel) => changeFormData("subType", sel),
13609
13378
  disabled: sendingForm
13610
13379
  }
13611
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "normality", label: stringOverrides?.normalityLabel || "Normality", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13380
+ )), /* @__PURE__ */ import_react149.default.createElement(InputGroup, { name: "normality", label: stringOverrides?.normalityLabel || "Normality", inline: true }, /* @__PURE__ */ import_react149.default.createElement(
13612
13381
  Select2,
13613
13382
  {
13614
13383
  options: NORMALITY_OPTIONS,
@@ -13620,7 +13389,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13620
13389
  onChange: (sel) => changeFormData("normality", sel),
13621
13390
  disabled: sendingForm
13622
13391
  }
13623
- )), /* @__PURE__ */ import_react150.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react150.default.createElement(
13392
+ )), /* @__PURE__ */ import_react149.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react149.default.createElement(
13624
13393
  Button,
13625
13394
  {
13626
13395
  type: "button",
@@ -13629,7 +13398,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13629
13398
  disabled: sendingForm
13630
13399
  },
13631
13400
  stringOverrides?.cancelButton || "Cancel"
13632
- ), apiError && /* @__PURE__ */ import_react150.default.createElement(
13401
+ ), apiError && /* @__PURE__ */ import_react149.default.createElement(
13633
13402
  RetryButton,
13634
13403
  {
13635
13404
  type: "submit",
@@ -13638,7 +13407,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13638
13407
  disabled: sendingForm
13639
13408
  },
13640
13409
  stringOverrides?.retryButton || "Retry"
13641
- ), !apiError && /* @__PURE__ */ import_react150.default.createElement(
13410
+ ), !apiError && /* @__PURE__ */ import_react149.default.createElement(
13642
13411
  SubmitButton,
13643
13412
  {
13644
13413
  type: "submit",
@@ -13656,12 +13425,158 @@ var ChartOfAccountsSidebar = ({
13656
13425
  parentRef: _parentRef,
13657
13426
  stringOverrides
13658
13427
  }) => {
13659
- return /* @__PURE__ */ import_react151.default.createElement(ChartOfAccountsForm, { stringOverrides });
13428
+ return /* @__PURE__ */ import_react150.default.createElement(ChartOfAccountsForm, { stringOverrides });
13660
13429
  };
13661
13430
 
13662
13431
  // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13663
- var COMPONENT_NAME5 = "chart-of-accounts";
13432
+ var import_react151 = __toESM(require("react"));
13433
+
13434
+ // src/icons/Edit2.tsx
13435
+ var React155 = __toESM(require("react"));
13436
+ var Edit2 = ({ size = 18, ...props }) => /* @__PURE__ */ React155.createElement(
13437
+ "svg",
13438
+ {
13439
+ xmlns: "http://www.w3.org/2000/svg",
13440
+ viewBox: "0 0 18 18",
13441
+ fill: "none",
13442
+ ...props,
13443
+ width: size,
13444
+ height: size
13445
+ },
13446
+ /* @__PURE__ */ React155.createElement(
13447
+ "path",
13448
+ {
13449
+ d: "M12.75 2.25C12.947 2.05301 13.1808 1.89676 13.4382 1.79015C13.6956 1.68355 13.9714 1.62868 14.25 1.62868C14.5286 1.62868 14.8044 1.68355 15.0618 1.79015C15.3192 1.89676 15.553 2.05301 15.75 2.25C15.947 2.44698 16.1032 2.68083 16.2098 2.9382C16.3165 3.19557 16.3713 3.47142 16.3713 3.75C16.3713 4.02857 16.3165 4.30442 16.2098 4.56179C16.1032 4.81916 15.947 5.05302 15.75 5.25L5.625 15.375L1.5 16.5L2.625 12.375L12.75 2.25Z",
13450
+ stroke: "currentColor",
13451
+ strokeLinecap: "round",
13452
+ strokeLinejoin: "round"
13453
+ }
13454
+ )
13455
+ );
13456
+ var Edit2_default = Edit2;
13457
+
13458
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13664
13459
  var ChartOfAccountsTable = ({
13460
+ view,
13461
+ stringOverrides,
13462
+ data,
13463
+ error,
13464
+ expandAll,
13465
+ cumulativeIndex,
13466
+ accountsLength
13467
+ }) => /* @__PURE__ */ import_react151.default.createElement(TableProvider, null, /* @__PURE__ */ import_react151.default.createElement(
13468
+ ChartOfAccountsTableContent,
13469
+ {
13470
+ view,
13471
+ data,
13472
+ stringOverrides,
13473
+ error,
13474
+ expandAll,
13475
+ cumulativeIndex,
13476
+ accountsLength
13477
+ }
13478
+ ));
13479
+ var ChartOfAccountsTableContent = ({
13480
+ view,
13481
+ stringOverrides,
13482
+ data,
13483
+ error,
13484
+ expandAll,
13485
+ cumulativeIndex,
13486
+ accountsLength
13487
+ }) => {
13488
+ const { setAccountId } = (0, import_react151.useContext)(LedgerAccountsContext);
13489
+ const { editAccount } = (0, import_react151.useContext)(ChartOfAccountsContext);
13490
+ const { isOpen, setIsOpen } = useTableExpandRow();
13491
+ const [accountsRowKeys, setAccountsRowKeys] = (0, import_react151.useState)([]);
13492
+ (0, import_react151.useEffect)(() => {
13493
+ if (expandAll === "expanded") {
13494
+ setIsOpen(accountsRowKeys);
13495
+ } else if (expandAll === "collapsed") {
13496
+ setIsOpen([]);
13497
+ }
13498
+ }, [expandAll]);
13499
+ (0, import_react151.useEffect)(() => {
13500
+ const defaultExpanded = data.accounts.map(
13501
+ (account) => "coa-row-" + account.id
13502
+ );
13503
+ setIsOpen(defaultExpanded);
13504
+ const searchRowsToExpand = (accounts, rowKey) => {
13505
+ accounts.map((account) => {
13506
+ if (account.sub_accounts.length > 0) {
13507
+ setAccountsRowKeys((prev) => [...prev, `${rowKey}-${account.id}`]);
13508
+ searchRowsToExpand(account.sub_accounts, `${rowKey}-${account.id}`);
13509
+ }
13510
+ });
13511
+ };
13512
+ searchRowsToExpand(data.accounts, "coa-row");
13513
+ }, []);
13514
+ const renderChartOfAccountsDesktopRow = (account, index, rowKey, depth) => {
13515
+ const expandable = !!account.sub_accounts && account.sub_accounts.length > 0;
13516
+ const expanded = expandable ? isOpen(rowKey) : true;
13517
+ return /* @__PURE__ */ import_react151.default.createElement(import_react151.default.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ import_react151.default.createElement(
13518
+ TableRow,
13519
+ {
13520
+ rowKey: rowKey + "-" + index,
13521
+ expandable,
13522
+ isExpanded: expanded,
13523
+ onClick: (e) => {
13524
+ e.stopPropagation();
13525
+ setAccountId(account.id);
13526
+ },
13527
+ depth
13528
+ },
13529
+ /* @__PURE__ */ import_react151.default.createElement(
13530
+ TableCell,
13531
+ {
13532
+ withExpandIcon: expandable,
13533
+ onClick: (e) => {
13534
+ e.stopPropagation();
13535
+ expandable && setIsOpen(rowKey);
13536
+ }
13537
+ },
13538
+ account.name
13539
+ ),
13540
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, account.account_type?.display_name),
13541
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, account.account_subtype?.display_name),
13542
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, { isCurrency: true }, account.balance),
13543
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, /* @__PURE__ */ import_react151.default.createElement("span", { className: "Layer__coa__actions" }, /* @__PURE__ */ import_react151.default.createElement(
13544
+ Button,
13545
+ {
13546
+ variant: "secondary" /* secondary */,
13547
+ rightIcon: /* @__PURE__ */ import_react151.default.createElement(Edit2_default, { size: 12 }),
13548
+ iconOnly: true,
13549
+ onClick: (e) => {
13550
+ e.preventDefault();
13551
+ e.stopPropagation();
13552
+ editAccount(account.id);
13553
+ }
13554
+ },
13555
+ "Edit"
13556
+ )))
13557
+ ), expandable && expanded && account.sub_accounts.map((subItem, subIdx) => {
13558
+ const subRowKey = `${rowKey}-${subItem.id}`;
13559
+ return renderChartOfAccountsDesktopRow(
13560
+ subItem,
13561
+ subIdx,
13562
+ subRowKey,
13563
+ depth + 1
13564
+ );
13565
+ }));
13566
+ };
13567
+ return /* @__PURE__ */ import_react151.default.createElement(Table, null, /* @__PURE__ */ import_react151.default.createElement(TableHead, null, /* @__PURE__ */ import_react151.default.createElement(TableRow, { isHeadRow: true, rowKey: "charts-of-accounts-head-row" }, /* @__PURE__ */ import_react151.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.nameColumnHeader || "Name"), /* @__PURE__ */ import_react151.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.typeColumnHeader || "Type"), /* @__PURE__ */ import_react151.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.subtypeColumnHeader || "Sub-Type"), /* @__PURE__ */ import_react151.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.balanceColumnHeader || "Balance"), /* @__PURE__ */ import_react151.default.createElement(TableCell, { isHeaderCell: true }))), /* @__PURE__ */ import_react151.default.createElement(TableBody, null, !error && data.accounts.map(
13568
+ (account, idx) => renderChartOfAccountsDesktopRow(
13569
+ account,
13570
+ idx,
13571
+ `coa-row-${account.id}`,
13572
+ 0
13573
+ )
13574
+ )));
13575
+ };
13576
+
13577
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
13578
+ var COMPONENT_NAME5 = "chart-of-accounts";
13579
+ var ChartOfAccountsTableWithPanel = ({
13665
13580
  view,
13666
13581
  containerRef,
13667
13582
  asWidget = false,
@@ -13718,25 +13633,18 @@ var ChartOfAccountsTable = ({
13718
13633
  /* @__PURE__ */ import_react152.default.createElement("div", { className: "Layer__header__actions-col" }, /* @__PURE__ */ import_react152.default.createElement(Button, { onClick: () => addAccount(), disabled: isLoading }, stringOverrides?.addAccountButtonText || "Add Account"))
13719
13634
  )
13720
13635
  ),
13721
- /* @__PURE__ */ import_react152.default.createElement("table", { className: "Layer__chart-of-accounts__table" }, /* @__PURE__ */ import_react152.default.createElement("thead", null, /* @__PURE__ */ import_react152.default.createElement("tr", { className: "Layer__table-row--header" }, /* @__PURE__ */ import_react152.default.createElement("th", { className: "Layer__table-header Layer__coa__name" }, stringOverrides?.nameColumnHeader || "Name"), /* @__PURE__ */ import_react152.default.createElement("th", { className: "Layer__table-header Layer__coa__type" }, stringOverrides?.typeColumnHeader || "Type"), /* @__PURE__ */ import_react152.default.createElement("th", { className: "Layer__table-header Layer__coa__subtype Layer__mobile--hidden" }, stringOverrides?.subtypeColumnHeader || "Sub-Type"), /* @__PURE__ */ import_react152.default.createElement("th", { className: "Layer__table-header Layer__coa__balance" }, stringOverrides?.balanceColumnHeader || "Balance"), /* @__PURE__ */ import_react152.default.createElement("th", { className: "Layer__table-header Layer__coa__actions" }))), /* @__PURE__ */ import_react152.default.createElement("tbody", null, !error && data?.accounts.map((account, idx) => {
13722
- const currentCumulativeIndex = cumulativeIndex;
13723
- cumulativeIndex = (account.sub_accounts?.length || 0) + cumulativeIndex + 1;
13724
- return /* @__PURE__ */ import_react152.default.createElement(
13725
- ChartOfAccountsRow,
13726
- {
13727
- key: account.id,
13728
- account,
13729
- depth: 0,
13730
- index: idx,
13731
- cumulativeIndex: currentCumulativeIndex,
13732
- expanded: true,
13733
- defaultOpen: true,
13734
- acountsLength: accountsLength,
13735
- view,
13736
- expandAll
13737
- }
13738
- );
13739
- }))),
13636
+ data && /* @__PURE__ */ import_react152.default.createElement(
13637
+ ChartOfAccountsTable,
13638
+ {
13639
+ view,
13640
+ data,
13641
+ error,
13642
+ stringOverrides,
13643
+ expandAll,
13644
+ accountsLength,
13645
+ cumulativeIndex
13646
+ }
13647
+ ),
13740
13648
  error ? /* @__PURE__ */ import_react152.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react152.default.createElement(
13741
13649
  DataState,
13742
13650
  {
@@ -13769,9 +13677,9 @@ var import_react157 = __toESM(require("react"));
13769
13677
 
13770
13678
  // src/components/Card/Card.tsx
13771
13679
  var import_react153 = __toESM(require("react"));
13772
- var import_classnames56 = __toESM(require("classnames"));
13680
+ var import_classnames55 = __toESM(require("classnames"));
13773
13681
  var Card = ({ children, className }) => {
13774
- return /* @__PURE__ */ import_react153.default.createElement("div", { className: (0, import_classnames56.default)("Layer__card", className) }, children);
13682
+ return /* @__PURE__ */ import_react153.default.createElement("div", { className: (0, import_classnames55.default)("Layer__card", className) }, children);
13775
13683
  };
13776
13684
 
13777
13685
  // src/components/DateTime/DateTime.tsx
@@ -13813,14 +13721,14 @@ var DateTime = ({
13813
13721
 
13814
13722
  // src/components/DetailsList/DetailsList.tsx
13815
13723
  var import_react155 = __toESM(require("react"));
13816
- var import_classnames57 = __toESM(require("classnames"));
13724
+ var import_classnames56 = __toESM(require("classnames"));
13817
13725
  var DetailsList = ({
13818
13726
  title,
13819
13727
  children,
13820
13728
  className,
13821
13729
  actions
13822
13730
  }) => {
13823
- return /* @__PURE__ */ import_react155.default.createElement("div", { className: (0, import_classnames57.default)("Layer__details-list", className) }, title && /* @__PURE__ */ import_react155.default.createElement(Header, null, /* @__PURE__ */ import_react155.default.createElement(Heading, { size: "secondary" /* secondary */ }, title), actions && /* @__PURE__ */ import_react155.default.createElement("div", { className: "Layer__details-list__actions" }, actions)), /* @__PURE__ */ import_react155.default.createElement("ul", { className: "Layer__details-list__list" }, children));
13731
+ return /* @__PURE__ */ import_react155.default.createElement("div", { className: (0, import_classnames56.default)("Layer__details-list", className) }, title && /* @__PURE__ */ import_react155.default.createElement(Header, null, /* @__PURE__ */ import_react155.default.createElement(Heading, { size: "secondary" /* secondary */ }, title), actions && /* @__PURE__ */ import_react155.default.createElement("div", { className: "Layer__details-list__actions" }, actions)), /* @__PURE__ */ import_react155.default.createElement("ul", { className: "Layer__details-list__list" }, children));
13824
13732
  };
13825
13733
 
13826
13734
  // src/components/DetailsList/DetailsListItem.tsx
@@ -14048,7 +13956,7 @@ var LedgerAccountEntryDetails = ({
14048
13956
 
14049
13957
  // src/components/LedgerAccount/LedgerAccountRow.tsx
14050
13958
  var import_react158 = __toESM(require("react"));
14051
- var import_classnames58 = __toESM(require("classnames"));
13959
+ var import_classnames57 = __toESM(require("classnames"));
14052
13960
  var import_date_fns32 = require("date-fns");
14053
13961
  var LedgerAccountRow = ({
14054
13962
  row,
@@ -14072,7 +13980,7 @@ var LedgerAccountRow = ({
14072
13980
  return /* @__PURE__ */ import_react158.default.createElement(
14073
13981
  "tr",
14074
13982
  {
14075
- className: (0, import_classnames58.default)(
13983
+ className: (0, import_classnames57.default)(
14076
13984
  "Layer__table-row",
14077
13985
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14078
13986
  initialLoad && "initial-load",
@@ -14105,7 +14013,7 @@ var LedgerAccountRow = ({
14105
14013
  return /* @__PURE__ */ import_react158.default.createElement(
14106
14014
  "tr",
14107
14015
  {
14108
- className: (0, import_classnames58.default)(
14016
+ className: (0, import_classnames57.default)(
14109
14017
  "Layer__table-row",
14110
14018
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14111
14019
  initialLoad && "initial-load",
@@ -14134,7 +14042,7 @@ var LedgerAccountRow = ({
14134
14042
  return /* @__PURE__ */ import_react158.default.createElement(
14135
14043
  "tr",
14136
14044
  {
14137
- className: (0, import_classnames58.default)(
14045
+ className: (0, import_classnames57.default)(
14138
14046
  "Layer__table-row",
14139
14047
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14140
14048
  initialLoad && "initial-load",
@@ -14160,7 +14068,7 @@ var LedgerAccountRow = ({
14160
14068
  };
14161
14069
 
14162
14070
  // src/components/LedgerAccount/LedgerAccountIndex.tsx
14163
- var import_classnames59 = __toESM(require("classnames"));
14071
+ var import_classnames58 = __toESM(require("classnames"));
14164
14072
  var LedgerAccount = ({
14165
14073
  containerRef,
14166
14074
  pageSize = 15,
@@ -14189,7 +14097,7 @@ var LedgerAccount = ({
14189
14097
  return () => clearTimeout(timeoutLoad);
14190
14098
  }
14191
14099
  }, [isLoading]);
14192
- const baseClassName = (0, import_classnames59.default)(
14100
+ const baseClassName = (0, import_classnames58.default)(
14193
14101
  "Layer__ledger-account__index",
14194
14102
  accountId && "open"
14195
14103
  );
@@ -14307,8 +14215,15 @@ var ChartOfAccountsContent = ({
14307
14215
  }
14308
14216
  }
14309
14217
  });
14310
- return /* @__PURE__ */ import_react160.default.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ import_react160.default.createElement(LedgerAccount, { view, containerRef, stringOverrides: stringOverrides?.ledgerAccount }) : /* @__PURE__ */ import_react160.default.createElement(
14311
- ChartOfAccountsTable,
14218
+ return /* @__PURE__ */ import_react160.default.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ import_react160.default.createElement(
14219
+ LedgerAccount,
14220
+ {
14221
+ view,
14222
+ containerRef,
14223
+ stringOverrides: stringOverrides?.ledgerAccount
14224
+ }
14225
+ ) : /* @__PURE__ */ import_react160.default.createElement(
14226
+ ChartOfAccountsTableWithPanel,
14312
14227
  {
14313
14228
  asWidget,
14314
14229
  withDateControl,
@@ -14654,190 +14569,14 @@ var useJournal = () => {
14654
14569
  };
14655
14570
  };
14656
14571
 
14657
- // src/components/JournalTable/JournalTable.tsx
14572
+ // src/components/JournalTable/JournalTableWithPanel.tsx
14658
14573
  var import_react168 = __toESM(require("react"));
14659
14574
 
14660
- // src/components/JournalRow/JournalRow.tsx
14661
- var import_react163 = __toESM(require("react"));
14662
- var import_classnames60 = __toESM(require("classnames"));
14663
- var import_date_fns33 = require("date-fns");
14664
- var INDENTATION2 = 24;
14665
- var EXPANDED_STYLE3 = {
14666
- height: "100%",
14667
- opacity: 1
14668
- };
14669
- var COLLAPSED_STYLE3 = {
14670
- height: 0,
14671
- opacity: 0.5,
14672
- paddingTop: 0,
14673
- paddingBottom: 0
14674
- };
14675
- var rowId = (row) => {
14676
- if ("id" in row) {
14677
- return row.id;
14678
- }
14679
- return `${row.account_identifier.id}-${Math.random()}`;
14680
- };
14681
- var accountName = (row) => {
14682
- if ("account" in row) {
14683
- return row.account.name;
14684
- }
14685
- return row.account_identifier.name;
14686
- };
14687
- var JournalRow = ({
14688
- row,
14689
- index,
14690
- initialLoad,
14691
- view,
14692
- lineItemsLength = 8,
14693
- defaultOpen = false,
14694
- expanded = false,
14695
- depth = 0,
14696
- cumulativeIndex = 0,
14697
- selectedEntries = false
14698
- }) => {
14699
- const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0, import_react163.useContext)(JournalContext);
14700
- const [isOpen, setIsOpen] = (0, import_react163.useState)(index === 0 ? true : defaultOpen);
14701
- const style = expanded ? {
14702
- ...EXPANDED_STYLE3,
14703
- transitionDelay: `${15 * index}ms`
14704
- } : {
14705
- ...COLLAPSED_STYLE3,
14706
- transitionDelay: `${lineItemsLength - 15 * index}ms`
14707
- };
14708
- const [showComponent, setShowComponent] = (0, import_react163.useState)(false);
14709
- const baseClass = (0, import_classnames60.default)(
14710
- "Layer__journal-table-row",
14711
- rowId(row) === selectedEntryId && "Layer__table-row--active",
14712
- initialLoad && "initial-load",
14713
- "Layer__table-row--with-show",
14714
- showComponent ? "show" : "Layer__table-row--anim-starting-state",
14715
- isOpen && "Layer__journal__table-row--expanded"
14716
- );
14717
- const journalEntryLineClass = (0, import_classnames60.default)(
14718
- "Layer__journal-entry-table-row",
14719
- selectedEntries && "Layer__table-row--active",
14720
- initialLoad && "initial-load",
14721
- "Layer__table-row--with-show",
14722
- showComponent ? "show" : "Layer__table-row--anim-starting-state",
14723
- "Layer__journal-line__table-row",
14724
- !expanded && "Layer__table-row--hidden"
14725
- );
14726
- (0, import_react163.useEffect)(() => {
14727
- if (initialLoad) {
14728
- const timeoutId = setTimeout(() => {
14729
- setShowComponent(true);
14730
- }, index * 10);
14731
- return () => clearTimeout(timeoutId);
14732
- } else {
14733
- setShowComponent(true);
14734
- }
14735
- }, []);
14736
- if ("line_items" in row) {
14737
- return /* @__PURE__ */ import_react163.default.createElement(import_react163.default.Fragment, null, /* @__PURE__ */ import_react163.default.createElement(
14738
- "tr",
14739
- {
14740
- className: baseClass,
14741
- style: { transitionDelay: `${15 * index}ms` },
14742
- onClick: (e) => {
14743
- e.stopPropagation();
14744
- if (selectedEntryId === row.id) {
14745
- closeSelectedEntry();
14746
- } else {
14747
- setSelectedEntryId(row.id);
14748
- }
14749
- }
14750
- },
14751
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell Layer__journal__arrow" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content" }, /* @__PURE__ */ import_react163.default.createElement(
14752
- "span",
14753
- {
14754
- className: "Layer__table-cell-content-indentation",
14755
- style: {
14756
- paddingLeft: INDENTATION2 * depth + 16
14757
- },
14758
- onClick: (e) => {
14759
- e.stopPropagation();
14760
- e.preventDefault();
14761
- setIsOpen(!isOpen);
14762
- }
14763
- },
14764
- row.line_items && row.line_items.length > 0 && /* @__PURE__ */ import_react163.default.createElement(
14765
- ChevronDownFill_default,
14766
- {
14767
- size: 16,
14768
- className: "Layer__table__expand-icon",
14769
- style: {
14770
- transform: isOpen ? "rotate(0deg)" : "rotate(-90deg)"
14771
- }
14772
- }
14773
- )
14774
- ))),
14775
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content" }, row.id.substring(0, 5))),
14776
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content" }, row.date && (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(row.date), DATE_FORMAT))),
14777
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content" }, humanizeEnum(row.entry_type))),
14778
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content" }, `(${row.line_items.length})`)),
14779
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, "$", centsToDollars(
14780
- Math.abs(
14781
- row.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
14782
- )
14783
- ))),
14784
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content Layer__table-cell--amount" }, "$", centsToDollars(
14785
- Math.abs(
14786
- row.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
14787
- )
14788
- )))
14789
- ), (row.line_items || []).map((lineItem, idx) => /* @__PURE__ */ import_react163.default.createElement(
14790
- JournalRow,
14791
- {
14792
- key: `${row.id}-${idx}`,
14793
- row: lineItem,
14794
- depth: depth + 1,
14795
- index: idx,
14796
- expanded: isOpen,
14797
- cumulativeIndex: cumulativeIndex + idx + 1,
14798
- lineItemsLength: (row.line_items ?? []).length,
14799
- view,
14800
- selectedEntries: row.id === selectedEntryId
14801
- }
14802
- )));
14803
- }
14804
- return /* @__PURE__ */ import_react163.default.createElement(
14805
- "tr",
14806
- {
14807
- className: journalEntryLineClass,
14808
- style: { transitionDelay: `${15 * index}ms` }
14809
- },
14810
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content", style })),
14811
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content", style }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-hidden" }, rowId(row).substring(0, 5)))),
14812
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }),
14813
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }),
14814
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell" }, /* @__PURE__ */ import_react163.default.createElement("span", { className: "Layer__table-cell-content", style }, accountName(row))),
14815
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, row.direction === "DEBIT" && /* @__PURE__ */ import_react163.default.createElement(
14816
- "span",
14817
- {
14818
- className: "Layer__table-cell-content Layer__table-cell--amount",
14819
- style
14820
- },
14821
- "$",
14822
- centsToDollars(Math.abs(row.amount))
14823
- )),
14824
- /* @__PURE__ */ import_react163.default.createElement("td", { className: "Layer__table-cell Layer__table-cell--primary" }, row.direction === "CREDIT" && /* @__PURE__ */ import_react163.default.createElement(
14825
- "span",
14826
- {
14827
- className: "Layer__table-cell-content Layer__table-cell--amount",
14828
- style
14829
- },
14830
- "$",
14831
- centsToDollars(Math.abs(row.amount))
14832
- ))
14833
- );
14834
- };
14835
-
14836
14575
  // src/components/JournalSidebar/JournalSidebar.tsx
14837
- var import_react167 = __toESM(require("react"));
14576
+ var import_react166 = __toESM(require("react"));
14838
14577
 
14839
14578
  // src/components/JournalEntryDetails/JournalEntryDetails.tsx
14840
- var import_react164 = __toESM(require("react"));
14579
+ var import_react163 = __toESM(require("react"));
14841
14580
  var JournalEntryDetails = () => {
14842
14581
  const {
14843
14582
  data,
@@ -14845,21 +14584,21 @@ var JournalEntryDetails = () => {
14845
14584
  errorEntry,
14846
14585
  closeSelectedEntry,
14847
14586
  selectedEntryId
14848
- } = (0, import_react164.useContext)(JournalContext);
14849
- const entry = (0, import_react164.useMemo)(() => {
14587
+ } = (0, import_react163.useContext)(JournalContext);
14588
+ const entry = (0, import_react163.useMemo)(() => {
14850
14589
  if (selectedEntryId && data) {
14851
14590
  return data.find((x) => x.id === selectedEntryId);
14852
14591
  }
14853
14592
  return;
14854
14593
  }, [data, selectedEntryId]);
14855
- return /* @__PURE__ */ import_react164.default.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ import_react164.default.createElement(
14594
+ return /* @__PURE__ */ import_react163.default.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ import_react163.default.createElement(
14856
14595
  DetailsList,
14857
14596
  {
14858
14597
  title: "Transaction source",
14859
- actions: /* @__PURE__ */ import_react164.default.createElement(
14598
+ actions: /* @__PURE__ */ import_react163.default.createElement(
14860
14599
  Button,
14861
14600
  {
14862
- rightIcon: /* @__PURE__ */ import_react164.default.createElement(X_default, null),
14601
+ rightIcon: /* @__PURE__ */ import_react163.default.createElement(X_default, null),
14863
14602
  iconOnly: true,
14864
14603
  onClick: closeSelectedEntry,
14865
14604
  className: "Layer__details-list__close-btn",
@@ -14867,54 +14606,54 @@ var JournalEntryDetails = () => {
14867
14606
  }
14868
14607
  )
14869
14608
  },
14870
- /* @__PURE__ */ import_react164.default.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ import_react164.default.createElement(Badge, null, entry?.source?.entity_name)),
14871
- entry?.source?.display_description && /* @__PURE__ */ import_react164.default.createElement(SourceDetailView, { source: entry?.source })
14872
- ), /* @__PURE__ */ import_react164.default.createElement(
14609
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ import_react163.default.createElement(Badge, null, entry?.source?.entity_name)),
14610
+ entry?.source?.display_description && /* @__PURE__ */ import_react163.default.createElement(SourceDetailView, { source: entry?.source })
14611
+ ), /* @__PURE__ */ import_react163.default.createElement(
14873
14612
  DetailsList,
14874
14613
  {
14875
14614
  title: `Journal Entry ${entry?.id.substring(0, 5)}`,
14876
14615
  className: "Layer__border-top"
14877
14616
  },
14878
- /* @__PURE__ */ import_react164.default.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum(entry?.entry_type ?? "")),
14879
- /* @__PURE__ */ import_react164.default.createElement(DetailsListItem, { label: "Date", isLoading: isLoadingEntry }, entry?.entry_at && /* @__PURE__ */ import_react164.default.createElement(DateTime, { value: entry?.entry_at })),
14880
- /* @__PURE__ */ import_react164.default.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, entry?.date && /* @__PURE__ */ import_react164.default.createElement(DateTime, { value: entry?.date })),
14881
- entry?.reversal_id && /* @__PURE__ */ import_react164.default.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, "Journal Entry #", entry?.reversal_id)
14882
- ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ import_react164.default.createElement("div", { className: "Layer__ledger-account__entry-details__line-items" }, /* @__PURE__ */ import_react164.default.createElement(Card, null, /* @__PURE__ */ import_react164.default.createElement(
14617
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum(entry?.entry_type ?? "")),
14618
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Date", isLoading: isLoadingEntry }, entry?.entry_at && /* @__PURE__ */ import_react163.default.createElement(DateTime, { value: entry?.entry_at })),
14619
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, entry?.date && /* @__PURE__ */ import_react163.default.createElement(DateTime, { value: entry?.date })),
14620
+ entry?.reversal_id && /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, "Journal Entry #", entry?.reversal_id)
14621
+ ), !isLoadingEntry && !errorEntry ? /* @__PURE__ */ import_react163.default.createElement("div", { className: "Layer__ledger-account__entry-details__line-items" }, /* @__PURE__ */ import_react163.default.createElement(Card, null, /* @__PURE__ */ import_react163.default.createElement(
14883
14622
  Table,
14884
14623
  {
14885
14624
  componentName: "ledger-account__entry-details",
14886
14625
  borderCollapse: "collapse"
14887
14626
  },
14888
- /* @__PURE__ */ import_react164.default.createElement(TableHead, null, /* @__PURE__ */ import_react164.default.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ import_react164.default.createElement(TableCell, null, "Line items"), [...Array(3)].map((_, index) => /* @__PURE__ */ import_react164.default.createElement(TableCell, { key: `ledger-empty-cell-${index}` })), /* @__PURE__ */ import_react164.default.createElement(TableCell, null, "Debit"), /* @__PURE__ */ import_react164.default.createElement(TableCell, null, "Credit"))),
14889
- /* @__PURE__ */ import_react164.default.createElement(TableBody, null, entry?.line_items?.map((item, index) => /* @__PURE__ */ import_react164.default.createElement(
14627
+ /* @__PURE__ */ import_react163.default.createElement(TableHead, null, /* @__PURE__ */ import_react163.default.createElement(TableRow, { rowKey: "soc-flow-head-row", isHeadRow: true }, /* @__PURE__ */ import_react163.default.createElement(TableCell, null, "Line items"), [...Array(3)].map((_, index) => /* @__PURE__ */ import_react163.default.createElement(TableCell, { key: `ledger-empty-cell-${index}` })), /* @__PURE__ */ import_react163.default.createElement(TableCell, null, "Debit"), /* @__PURE__ */ import_react163.default.createElement(TableCell, null, "Credit"))),
14628
+ /* @__PURE__ */ import_react163.default.createElement(TableBody, null, entry?.line_items?.map((item, index) => /* @__PURE__ */ import_react163.default.createElement(
14890
14629
  TableRow,
14891
14630
  {
14892
14631
  key: `ledger-line-item-${index}`,
14893
14632
  rowKey: `ledger-line-item-${index}`
14894
14633
  },
14895
- /* @__PURE__ */ import_react164.default.createElement(TableCell, null, item.account_identifier?.name || ""),
14896
- [...Array(3)].map((_, index2) => /* @__PURE__ */ import_react164.default.createElement(TableCell, { key: `ledger-empty-cell-${index2}` })),
14897
- /* @__PURE__ */ import_react164.default.createElement(TableCell, null, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ import_react164.default.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
14898
- /* @__PURE__ */ import_react164.default.createElement(TableCell, null, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ import_react164.default.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
14899
- )), /* @__PURE__ */ import_react164.default.createElement(
14634
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.account_identifier?.name || ""),
14635
+ [...Array(3)].map((_, index2) => /* @__PURE__ */ import_react163.default.createElement(TableCell, { key: `ledger-empty-cell-${index2}` })),
14636
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ import_react163.default.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
14637
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ import_react163.default.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
14638
+ )), /* @__PURE__ */ import_react163.default.createElement(
14900
14639
  TableRow,
14901
14640
  {
14902
14641
  rowKey: "ledger-line-item-summation",
14903
14642
  variant: "summation"
14904
14643
  },
14905
- /* @__PURE__ */ import_react164.default.createElement(TableCell, { primary: true }, "Total"),
14906
- [...Array(3)].map((_, index) => /* @__PURE__ */ import_react164.default.createElement(TableCell, { key: `ledger-empty-cell-${index}` })),
14907
- /* @__PURE__ */ import_react164.default.createElement(TableCell, { isCurrency: true, primary: true }, entry?.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0) || 0),
14908
- /* @__PURE__ */ import_react164.default.createElement(TableCell, { isCurrency: true, primary: true }, entry?.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0) || 0)
14644
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, { primary: true }, "Total"),
14645
+ [...Array(3)].map((_, index) => /* @__PURE__ */ import_react163.default.createElement(TableCell, { key: `ledger-empty-cell-${index}` })),
14646
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, { isCurrency: true, primary: true }, entry?.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0) || 0),
14647
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, { isCurrency: true, primary: true }, entry?.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0) || 0)
14909
14648
  ))
14910
14649
  ))) : null);
14911
14650
  };
14912
14651
 
14913
14652
  // src/components/JournalForm/JournalForm.tsx
14914
- var import_react166 = __toESM(require("react"));
14653
+ var import_react165 = __toESM(require("react"));
14915
14654
 
14916
14655
  // src/components/JournalForm/JournalFormEntryLines.tsx
14917
- var import_react165 = __toESM(require("react"));
14656
+ var import_react164 = __toESM(require("react"));
14918
14657
  var JournalFormEntryLines = ({
14919
14658
  entrylineItems,
14920
14659
  addEntryLine,
@@ -14923,17 +14662,17 @@ var JournalFormEntryLines = ({
14923
14662
  sendingForm,
14924
14663
  config
14925
14664
  }) => {
14926
- const { data: accountsData } = (0, import_react165.useContext)(ChartOfAccountsContext);
14927
- const { form } = (0, import_react165.useContext)(JournalContext);
14665
+ const { data: accountsData } = (0, import_react164.useContext)(ChartOfAccountsContext);
14666
+ const { form } = (0, import_react164.useContext)(JournalContext);
14928
14667
  const parentOptions = useParentOptions(accountsData);
14929
- return /* @__PURE__ */ import_react165.default.createElement(import_react165.default.Fragment, null, Object.keys(Direction).map((direction, idx) => {
14930
- return /* @__PURE__ */ import_react165.default.createElement(
14668
+ return /* @__PURE__ */ import_react164.default.createElement(import_react164.default.Fragment, null, Object.keys(Direction).map((direction, idx) => {
14669
+ return /* @__PURE__ */ import_react164.default.createElement(
14931
14670
  "div",
14932
14671
  {
14933
14672
  key: "Layer__journal__form__input-group-" + idx,
14934
14673
  className: "Layer__journal__form__input-group Layer__journal__form__input-group__border"
14935
14674
  },
14936
- /* @__PURE__ */ import_react165.default.createElement(
14675
+ /* @__PURE__ */ import_react164.default.createElement(
14937
14676
  Text,
14938
14677
  {
14939
14678
  className: "Layer__journal__form__input-group__title",
@@ -14947,13 +14686,13 @@ var JournalFormEntryLines = ({
14947
14686
  if (item.direction !== direction) {
14948
14687
  return null;
14949
14688
  }
14950
- return /* @__PURE__ */ import_react165.default.createElement(
14689
+ return /* @__PURE__ */ import_react164.default.createElement(
14951
14690
  "div",
14952
14691
  {
14953
14692
  className: "Layer__journal__form__input-group__line-item",
14954
14693
  key: direction + "-" + idx2
14955
14694
  },
14956
- /* @__PURE__ */ import_react165.default.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ import_react165.default.createElement(
14695
+ /* @__PURE__ */ import_react164.default.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ import_react164.default.createElement(
14957
14696
  InputWithBadge,
14958
14697
  {
14959
14698
  name: direction,
@@ -14979,14 +14718,14 @@ var JournalFormEntryLines = ({
14979
14718
  )?.message
14980
14719
  }
14981
14720
  )),
14982
- /* @__PURE__ */ import_react165.default.createElement(
14721
+ /* @__PURE__ */ import_react164.default.createElement(
14983
14722
  InputGroup,
14984
14723
  {
14985
14724
  name: "account-name",
14986
14725
  label: "Account name",
14987
14726
  inline: true
14988
14727
  },
14989
- /* @__PURE__ */ import_react165.default.createElement(
14728
+ /* @__PURE__ */ import_react164.default.createElement(
14990
14729
  Select2,
14991
14730
  {
14992
14731
  options: parentOptions,
@@ -15010,18 +14749,18 @@ var JournalFormEntryLines = ({
15010
14749
  )?.message
15011
14750
  }
15012
14751
  ),
15013
- idx2 >= 2 && /* @__PURE__ */ import_react165.default.createElement(
14752
+ idx2 >= 2 && /* @__PURE__ */ import_react164.default.createElement(
15014
14753
  IconButton,
15015
14754
  {
15016
14755
  className: "Layer__remove__button",
15017
14756
  onClick: () => removeEntryLine(idx2),
15018
- icon: /* @__PURE__ */ import_react165.default.createElement(Trash_default, null)
14757
+ icon: /* @__PURE__ */ import_react164.default.createElement(Trash_default, null)
15019
14758
  }
15020
14759
  )
15021
14760
  )
15022
14761
  );
15023
14762
  }),
15024
- (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > entrylineItems?.length) && /* @__PURE__ */ import_react165.default.createElement(
14763
+ (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > entrylineItems?.length) && /* @__PURE__ */ import_react164.default.createElement(
15025
14764
  TextButton,
15026
14765
  {
15027
14766
  className: "Layer__journal__add-entry-line",
@@ -15044,8 +14783,8 @@ var JournalForm = ({ config, stringOverrides }) => {
15044
14783
  changeFormData,
15045
14784
  addEntryLine,
15046
14785
  removeEntryLine
15047
- } = (0, import_react166.useContext)(JournalContext);
15048
- return /* @__PURE__ */ import_react166.default.createElement(
14786
+ } = (0, import_react165.useContext)(JournalContext);
14787
+ return /* @__PURE__ */ import_react165.default.createElement(
15049
14788
  "form",
15050
14789
  {
15051
14790
  className: "Layer__form",
@@ -15054,7 +14793,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15054
14793
  submitForm();
15055
14794
  }
15056
14795
  },
15057
- /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__sidebar__header" }, /* @__PURE__ */ import_react166.default.createElement(Text, { size: "lg" /* lg */, weight: "bold" /* bold */, className: "title" }, stringOverrides?.header && "Add New Entry"), /* @__PURE__ */ import_react166.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react166.default.createElement(
14796
+ /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__sidebar__header" }, /* @__PURE__ */ import_react165.default.createElement(Text, { size: "lg" /* lg */, weight: "bold" /* bold */, className: "title" }, stringOverrides?.header && "Add New Entry"), /* @__PURE__ */ import_react165.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react165.default.createElement(
15058
14797
  Button,
15059
14798
  {
15060
14799
  type: "button",
@@ -15063,7 +14802,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15063
14802
  disabled: sendingForm
15064
14803
  },
15065
14804
  stringOverrides?.cancelButton || "Cancel"
15066
- ), apiError && /* @__PURE__ */ import_react166.default.createElement(
14805
+ ), apiError && /* @__PURE__ */ import_react165.default.createElement(
15067
14806
  RetryButton,
15068
14807
  {
15069
14808
  type: "submit",
@@ -15072,7 +14811,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15072
14811
  disabled: sendingForm
15073
14812
  },
15074
14813
  stringOverrides?.retryButton || "Retry"
15075
- ), !apiError && /* @__PURE__ */ import_react166.default.createElement(
14814
+ ), !apiError && /* @__PURE__ */ import_react165.default.createElement(
15076
14815
  SubmitButton,
15077
14816
  {
15078
14817
  type: "submit",
@@ -15082,7 +14821,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15082
14821
  },
15083
14822
  stringOverrides?.saveButton || "Save"
15084
14823
  ))),
15085
- apiError && /* @__PURE__ */ import_react166.default.createElement(
14824
+ apiError && /* @__PURE__ */ import_react165.default.createElement(
15086
14825
  Text,
15087
14826
  {
15088
14827
  size: "sm" /* sm */,
@@ -15090,7 +14829,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15090
14829
  },
15091
14830
  apiError
15092
14831
  ),
15093
- /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__form__input-group" }, /* @__PURE__ */ import_react166.default.createElement(InputGroup, { name: "date", label: "Date", inline: true }, /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__datepicker__wrapper" }, /* @__PURE__ */ import_react166.default.createElement(
14832
+ /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__form__input-group" }, /* @__PURE__ */ import_react165.default.createElement(InputGroup, { name: "date", label: "Date", inline: true }, /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__datepicker__wrapper" }, /* @__PURE__ */ import_react165.default.createElement(
15094
14833
  DatePicker,
15095
14834
  {
15096
14835
  selected: form?.data.entry_at ? new Date(form?.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -15103,7 +14842,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15103
14842
  placeholderText: "Select date",
15104
14843
  currentDateOption: false
15105
14844
  }
15106
- ), /* @__PURE__ */ import_react166.default.createElement(
14845
+ ), /* @__PURE__ */ import_react165.default.createElement(
15107
14846
  DatePicker,
15108
14847
  {
15109
14848
  selected: form?.data.entry_at ? new Date(form?.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -15117,7 +14856,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15117
14856
  currentDateOption: false
15118
14857
  }
15119
14858
  )))),
15120
- /* @__PURE__ */ import_react166.default.createElement(
14859
+ /* @__PURE__ */ import_react165.default.createElement(
15121
14860
  JournalFormEntryLines,
15122
14861
  {
15123
14862
  entrylineItems: form?.data.line_items || [],
@@ -15128,7 +14867,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15128
14867
  config
15129
14868
  }
15130
14869
  ),
15131
- /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__form__input-group Layer__journal__form__input-group__textarea" }, /* @__PURE__ */ import_react166.default.createElement(InputGroup, { name: "memo", label: "Notes" }, /* @__PURE__ */ import_react166.default.createElement(
14870
+ /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__form__input-group Layer__journal__form__input-group__textarea" }, /* @__PURE__ */ import_react165.default.createElement(InputGroup, { name: "memo", label: "Notes" }, /* @__PURE__ */ import_react165.default.createElement(
15132
14871
  Textarea,
15133
14872
  {
15134
14873
  name: "memo",
@@ -15138,7 +14877,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15138
14877
  disabled: sendingForm
15139
14878
  }
15140
14879
  ))),
15141
- /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ import_react166.default.createElement(
14880
+ /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ import_react165.default.createElement(
15142
14881
  Button,
15143
14882
  {
15144
14883
  type: "button",
@@ -15147,7 +14886,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15147
14886
  disabled: sendingForm
15148
14887
  },
15149
14888
  stringOverrides?.cancelButton || "Cancel"
15150
- ), apiError && /* @__PURE__ */ import_react166.default.createElement(
14889
+ ), apiError && /* @__PURE__ */ import_react165.default.createElement(
15151
14890
  RetryButton,
15152
14891
  {
15153
14892
  type: "submit",
@@ -15156,7 +14895,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15156
14895
  disabled: sendingForm
15157
14896
  },
15158
14897
  stringOverrides?.retryButton || "Retry"
15159
- ), !apiError && /* @__PURE__ */ import_react166.default.createElement(
14898
+ ), !apiError && /* @__PURE__ */ import_react165.default.createElement(
15160
14899
  SubmitButton,
15161
14900
  {
15162
14901
  type: "submit",
@@ -15175,17 +14914,121 @@ var JournalSidebar = ({
15175
14914
  config,
15176
14915
  stringOverrides
15177
14916
  }) => {
15178
- const { selectedEntryId } = (0, import_react167.useContext)(JournalContext);
14917
+ const { selectedEntryId } = (0, import_react166.useContext)(JournalContext);
15179
14918
  if (selectedEntryId !== "new") {
15180
- return /* @__PURE__ */ import_react167.default.createElement(JournalEntryDetails, null);
14919
+ return /* @__PURE__ */ import_react166.default.createElement(JournalEntryDetails, null);
15181
14920
  }
15182
- return /* @__PURE__ */ import_react167.default.createElement(JournalForm, { config, stringOverrides });
14921
+ return /* @__PURE__ */ import_react166.default.createElement(JournalForm, { config, stringOverrides });
15183
14922
  };
15184
14923
 
15185
14924
  // src/components/JournalTable/JournalTable.tsx
15186
- var COMPONENT_NAME6 = "journal";
14925
+ var import_react167 = __toESM(require("react"));
14926
+ var import_date_fns33 = require("date-fns");
14927
+ var rowId = (row) => {
14928
+ if ("id" in row) {
14929
+ return row.id;
14930
+ }
14931
+ if ("account_identifier" in row) {
14932
+ return `${row.account_identifier.id}-${Math.random()}`;
14933
+ }
14934
+ return `${Math.random()}`;
14935
+ };
14936
+ var accountName = (row) => {
14937
+ if ("account" in row) {
14938
+ return row.account.name;
14939
+ }
14940
+ if ("account_identifier" in row) {
14941
+ return row.account_identifier.name;
14942
+ }
14943
+ return "";
14944
+ };
15187
14945
  var JournalTable = ({
15188
14946
  view,
14947
+ data,
14948
+ stringOverrides
14949
+ }) => /* @__PURE__ */ import_react167.default.createElement(TableProvider, null, /* @__PURE__ */ import_react167.default.createElement(
14950
+ JournalTableContent,
14951
+ {
14952
+ view,
14953
+ data,
14954
+ stringOverrides
14955
+ }
14956
+ ));
14957
+ var JournalTableContent = ({
14958
+ view,
14959
+ data,
14960
+ stringOverrides
14961
+ }) => {
14962
+ const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0, import_react167.useContext)(JournalContext);
14963
+ const { isOpen, setIsOpen } = useTableExpandRow();
14964
+ (0, import_react167.useEffect)(() => {
14965
+ setIsOpen([`journal-row- + ${data[0].id}`]);
14966
+ }, []);
14967
+ const renderJournalRow = (row, index, rowKey, depth) => {
14968
+ const expandable = !!row.line_items && row.line_items.length > 0;
14969
+ const expanded = expandable ? isOpen(rowKey) : true;
14970
+ return /* @__PURE__ */ import_react167.default.createElement(import_react167.default.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ import_react167.default.createElement(
14971
+ TableRow,
14972
+ {
14973
+ rowKey: rowKey + "-" + index,
14974
+ expandable,
14975
+ isExpanded: expanded,
14976
+ handleExpand: () => setIsOpen(rowKey),
14977
+ selected: selectedEntryId === row.id,
14978
+ onClick: (e) => {
14979
+ e.stopPropagation();
14980
+ if (selectedEntryId === row.id) {
14981
+ closeSelectedEntry();
14982
+ } else {
14983
+ setSelectedEntryId(row.id);
14984
+ }
14985
+ },
14986
+ depth
14987
+ },
14988
+ /* @__PURE__ */ import_react167.default.createElement(
14989
+ TableCell,
14990
+ {
14991
+ withExpandIcon: expandable,
14992
+ onClick: (e) => {
14993
+ e.stopPropagation();
14994
+ expandable && setIsOpen(rowKey);
14995
+ }
14996
+ },
14997
+ rowId(row).substring(0, 5)
14998
+ ),
14999
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, row.date && (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(row.date), DATE_FORMAT)),
15000
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, humanizeEnum(row.entry_type)),
15001
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, "(", row.line_items.length, ")"),
15002
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, "line_items" in row && Math.abs(
15003
+ row.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
15004
+ )),
15005
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, "line_items" in row && Math.abs(
15006
+ row.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
15007
+ ))
15008
+ ), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */ import_react167.default.createElement(
15009
+ TableRow,
15010
+ {
15011
+ key: rowKey + "-" + index + "-" + subIdx,
15012
+ rowKey: rowKey + "-" + index + "-" + subIdx,
15013
+ depth: depth + 1,
15014
+ selected: selectedEntryId === row.id
15015
+ },
15016
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15017
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15018
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15019
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, accountName(subItem)),
15020
+ subItem.direction === "DEBIT" && subItem.amount > 0 ? /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, subItem.amount) : /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15021
+ subItem.direction === "CREDIT" && subItem.amount > 0 ? /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, subItem.amount) : /* @__PURE__ */ import_react167.default.createElement(TableCell, null)
15022
+ )));
15023
+ };
15024
+ return /* @__PURE__ */ import_react167.default.createElement(Table, { borderCollapse: "collapse" }, /* @__PURE__ */ import_react167.default.createElement(TableHead, null, /* @__PURE__ */ import_react167.default.createElement(TableRow, { isHeadRow: true, rowKey: "journal-head-row" }, /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.idColumnHeader || "Id"), /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.dateColumnHeader || "Date"), /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.transactionColumnHeader || "Transaction"), /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.accountColumnHeader || "Account"), /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.debitColumnHeader || "Debit"), /* @__PURE__ */ import_react167.default.createElement(TableCell, { isHeaderCell: true }, stringOverrides?.creditColumnHeader || "Credit"))), /* @__PURE__ */ import_react167.default.createElement(TableBody, null, data.map(
15025
+ (entry, idx) => renderJournalRow(entry, idx, `journal-row-${entry.id}`, 0)
15026
+ )));
15027
+ };
15028
+
15029
+ // src/components/JournalTable/JournalTableWithPanel.tsx
15030
+ var COMPONENT_NAME6 = "journal";
15031
+ var JournalTableWithPanel = ({
15189
15032
  containerRef,
15190
15033
  pageSize = 15,
15191
15034
  config,
@@ -15209,22 +15052,19 @@ var JournalTable = ({
15209
15052
  return /* @__PURE__ */ import_react168.default.createElement(
15210
15053
  Panel,
15211
15054
  {
15212
- sidebar: /* @__PURE__ */ import_react168.default.createElement(JournalSidebar, { parentRef: containerRef, config, stringOverrides: stringOverrides?.journalForm }),
15055
+ sidebar: /* @__PURE__ */ import_react168.default.createElement(
15056
+ JournalSidebar,
15057
+ {
15058
+ parentRef: containerRef,
15059
+ config,
15060
+ stringOverrides: stringOverrides?.journalForm
15061
+ }
15062
+ ),
15213
15063
  sidebarIsOpen: Boolean(selectedEntryId),
15214
15064
  parentRef: containerRef
15215
15065
  },
15216
15066
  /* @__PURE__ */ import_react168.default.createElement(Header, { className: `Layer__${COMPONENT_NAME6}__header` }, /* @__PURE__ */ import_react168.default.createElement(Heading, { className: `Layer__${COMPONENT_NAME6}__title` }, stringOverrides?.componentTitle || "Journal"), /* @__PURE__ */ import_react168.default.createElement("div", { className: `Layer__${COMPONENT_NAME6}__actions` }, /* @__PURE__ */ import_react168.default.createElement(Button, { onClick: () => addEntry(), disabled: isLoading }, stringOverrides?.addEntryButton || "Add Entry"))),
15217
- /* @__PURE__ */ import_react168.default.createElement("table", { className: "Layer__table Layer__table--hover-effect Layer__journal__table" }, /* @__PURE__ */ import_react168.default.createElement("thead", null, /* @__PURE__ */ import_react168.default.createElement("tr", null, /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header" }), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header" }, stringOverrides?.idColumnHeader || "Id"), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header" }, stringOverrides?.dateColumnHeader || "Date"), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header" }, stringOverrides?.transactionColumnHeader || "Transaction"), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header" }, stringOverrides?.accountColumnHeader || "Account"), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, stringOverrides?.debitColumnHeader || "Debit"), /* @__PURE__ */ import_react168.default.createElement("th", { className: "Layer__table-header Layer__table-cell--amount" }, stringOverrides?.creditColumnHeader || "Credit"))), /* @__PURE__ */ import_react168.default.createElement("tbody", null, !error && data?.map((entry, idx) => {
15218
- return /* @__PURE__ */ import_react168.default.createElement(
15219
- JournalRow,
15220
- {
15221
- key: "journal-row-" + idx + entry.id,
15222
- index: idx,
15223
- view,
15224
- row: entry
15225
- }
15226
- );
15227
- }))),
15067
+ data && /* @__PURE__ */ import_react168.default.createElement(JournalTable, { view: "desktop", data }),
15228
15068
  data && /* @__PURE__ */ import_react168.default.createElement("div", { className: "Layer__journal__pagination" }, /* @__PURE__ */ import_react168.default.createElement(
15229
15069
  Pagination,
15230
15070
  {
@@ -15257,7 +15097,7 @@ var JOURNAL_CONFIG = {
15257
15097
  var Journal = (props) => {
15258
15098
  const JournalContextData = useJournal();
15259
15099
  const AccountsContextData = useChartOfAccounts();
15260
- return /* @__PURE__ */ import_react169.default.createElement(ChartOfAccountsContext.Provider, { value: AccountsContextData }, /* @__PURE__ */ import_react169.default.createElement(JournalContext.Provider, { value: JournalContextData }, /* @__PURE__ */ import_react169.default.createElement(TableProvider, null, /* @__PURE__ */ import_react169.default.createElement(JournalContent, { ...props }))));
15100
+ return /* @__PURE__ */ import_react169.default.createElement(ChartOfAccountsContext.Provider, { value: AccountsContextData }, /* @__PURE__ */ import_react169.default.createElement(JournalContext.Provider, { value: JournalContextData }, /* @__PURE__ */ import_react169.default.createElement(JournalContent, { ...props })));
15261
15101
  };
15262
15102
  var JournalContent = ({
15263
15103
  asWidget,
@@ -15277,7 +15117,7 @@ var JournalContent = ({
15277
15117
  }
15278
15118
  });
15279
15119
  return /* @__PURE__ */ import_react169.default.createElement(Container, { name: "journal", ref: containerRef, asWidget }, /* @__PURE__ */ import_react169.default.createElement(
15280
- JournalTable,
15120
+ JournalTableWithPanel,
15281
15121
  {
15282
15122
  view,
15283
15123
  containerRef,
@@ -15552,7 +15392,7 @@ var SmileIcon_default = SmileIcon;
15552
15392
 
15553
15393
  // src/components/TasksListItem/TasksListItem.tsx
15554
15394
  var import_react173 = __toESM(require("react"));
15555
- var import_classnames61 = __toESM(require("classnames"));
15395
+ var import_classnames59 = __toESM(require("classnames"));
15556
15396
  var TasksListItem = ({
15557
15397
  task,
15558
15398
  goToNextPageIfAllComplete,
@@ -15561,16 +15401,16 @@ var TasksListItem = ({
15561
15401
  const [isOpen, setIsOpen] = (0, import_react173.useState)(defaultOpen);
15562
15402
  const [userResponse, setUserResponse] = (0, import_react173.useState)(task.user_response || "");
15563
15403
  const { submitResponseToTask: submitResponseToTask2 } = (0, import_react173.useContext)(TasksContext);
15564
- const taskBodyClassName = (0, import_classnames61.default)(
15404
+ const taskBodyClassName = (0, import_classnames59.default)(
15565
15405
  "Layer__tasks-list-item__body",
15566
15406
  isOpen && "Layer__tasks-list-item__body--expanded",
15567
15407
  isComplete(task.status) && "Layer__tasks-list-item--completed"
15568
15408
  );
15569
- const taskHeadClassName = (0, import_classnames61.default)(
15409
+ const taskHeadClassName = (0, import_classnames59.default)(
15570
15410
  "Layer__tasks-list-item__head-info",
15571
15411
  isComplete(task.status) ? "Layer__tasks-list-item--completed" : "Layer__tasks-list-item--pending"
15572
15412
  );
15573
- const taskItemClassName = (0, import_classnames61.default)(
15413
+ const taskItemClassName = (0, import_classnames59.default)(
15574
15414
  "Layer__tasks-list-item",
15575
15415
  isOpen && "Layer__tasks-list-item__expanded"
15576
15416
  );
@@ -15669,7 +15509,7 @@ var TasksList = ({ pageSize = 10 }) => {
15669
15509
 
15670
15510
  // src/components/TasksPending/TasksPending.tsx
15671
15511
  var import_react175 = __toESM(require("react"));
15672
- var import_classnames62 = __toESM(require("classnames"));
15512
+ var import_classnames60 = __toESM(require("classnames"));
15673
15513
  var import_date_fns34 = require("date-fns");
15674
15514
  var import_recharts4 = require("recharts");
15675
15515
  var TasksPending = () => {
@@ -15685,7 +15525,7 @@ var TasksPending = () => {
15685
15525
  value: data?.filter((task) => !isComplete(task.status)).length
15686
15526
  }
15687
15527
  ];
15688
- const taskStatusClassName = (0, import_classnames62.default)(
15528
+ const taskStatusClassName = (0, import_classnames60.default)(
15689
15529
  completedTasks && completedTasks > 0 ? "Layer__tasks-pending-bar__status--done" : "Layer__tasks-pending-bar__status--pending"
15690
15530
  );
15691
15531
  return /* @__PURE__ */ import_react175.default.createElement("div", { className: "Layer__tasks-pending" }, /* @__PURE__ */ import_react175.default.createElement(Text, { size: "lg" /* lg */ }, (0, import_date_fns34.format)(Date.now(), "MMMM")), /* @__PURE__ */ import_react175.default.createElement("div", { className: "Layer__tasks-pending-bar" }, /* @__PURE__ */ import_react175.default.createElement(Text, { size: "sm" /* sm */ }, /* @__PURE__ */ import_react175.default.createElement("span", { className: taskStatusClassName }, completedTasks), "/", data?.length, " done"), /* @__PURE__ */ import_react175.default.createElement(import_recharts4.PieChart, { width: 24, height: 24, className: "mini-chart" }, /* @__PURE__ */ import_react175.default.createElement(
@@ -15719,7 +15559,7 @@ var TasksPending = () => {
15719
15559
  };
15720
15560
 
15721
15561
  // src/components/Tasks/Tasks.tsx
15722
- var import_classnames63 = __toESM(require("classnames"));
15562
+ var import_classnames61 = __toESM(require("classnames"));
15723
15563
  var UseTasksContext = (0, import_react176.createContext)({
15724
15564
  data: void 0,
15725
15565
  isLoading: void 0,
@@ -15791,7 +15631,7 @@ var TasksComponent = ({
15791
15631
  ), /* @__PURE__ */ import_react176.default.createElement(
15792
15632
  "div",
15793
15633
  {
15794
- className: (0, import_classnames63.default)(
15634
+ className: (0, import_classnames61.default)(
15795
15635
  "Layer__tasks__content",
15796
15636
  !open && "Layer__tasks__content--collapsed"
15797
15637
  )
@@ -15885,7 +15725,7 @@ var BookkeepingUpsellBar = ({
15885
15725
 
15886
15726
  // src/views/BookkeepingOverview/BookkeepingOverview.tsx
15887
15727
  var import_react178 = __toESM(require("react"));
15888
- var import_classnames64 = __toESM(require("classnames"));
15728
+ var import_classnames62 = __toESM(require("classnames"));
15889
15729
  var BookkeepingOverview = ({
15890
15730
  title,
15891
15731
  // deprecated
@@ -15951,7 +15791,7 @@ var BookkeepingOverview = ({
15951
15791
  ), /* @__PURE__ */ import_react178.default.createElement(
15952
15792
  Container,
15953
15793
  {
15954
- name: (0, import_classnames64.default)(
15794
+ name: (0, import_classnames62.default)(
15955
15795
  "bookkeeping-overview-profit-and-loss-chart",
15956
15796
  pnlToggle !== "revenue" && "bookkeeping-overview-profit-and-loss-chart--hidden"
15957
15797
  )
@@ -15967,7 +15807,7 @@ var BookkeepingOverview = ({
15967
15807
  ), /* @__PURE__ */ import_react178.default.createElement(
15968
15808
  Container,
15969
15809
  {
15970
- name: (0, import_classnames64.default)(
15810
+ name: (0, import_classnames62.default)(
15971
15811
  "bookkeeping-overview-profit-and-loss-chart",
15972
15812
  pnlToggle !== "expenses" && "bookkeeping-overview-profit-and-loss-chart--hidden"
15973
15813
  )
@@ -15998,13 +15838,13 @@ var BadgeLoader = ({ children }) => {
15998
15838
 
15999
15839
  // src/components/NotificationCard/NotificationCard.tsx
16000
15840
  var import_react180 = __toESM(require("react"));
16001
- var import_classnames65 = __toESM(require("classnames"));
15841
+ var import_classnames63 = __toESM(require("classnames"));
16002
15842
  var NotificationCard = ({
16003
15843
  onClick,
16004
15844
  children,
16005
15845
  className
16006
15846
  }) => {
16007
- return /* @__PURE__ */ import_react180.default.createElement("div", { className: (0, import_classnames65.default)("Layer__notification-card", className) }, /* @__PURE__ */ import_react180.default.createElement("div", { className: "Layer__notification-card__main" }, children), /* @__PURE__ */ import_react180.default.createElement(
15847
+ return /* @__PURE__ */ import_react180.default.createElement("div", { className: (0, import_classnames63.default)("Layer__notification-card", className) }, /* @__PURE__ */ import_react180.default.createElement("div", { className: "Layer__notification-card__main" }, children), /* @__PURE__ */ import_react180.default.createElement(
16008
15848
  IconButton,
16009
15849
  {
16010
15850
  icon: /* @__PURE__ */ import_react180.default.createElement(ChevronRight_default, null),
@@ -16083,7 +15923,7 @@ var TransactionToReviewCard = ({
16083
15923
  };
16084
15924
 
16085
15925
  // src/views/AccountingOverview/AccountingOverview.tsx
16086
- var import_classnames66 = __toESM(require("classnames"));
15926
+ var import_classnames64 = __toESM(require("classnames"));
16087
15927
  var AccountingOverview = ({
16088
15928
  title = "Accounting overview",
16089
15929
  enableOnboarding = false,
@@ -16143,7 +15983,7 @@ var AccountingOverview = ({
16143
15983
  ), /* @__PURE__ */ import_react182.default.createElement(
16144
15984
  Container,
16145
15985
  {
16146
- name: (0, import_classnames66.default)(
15986
+ name: (0, import_classnames64.default)(
16147
15987
  "accounting-overview-profit-and-loss-chart",
16148
15988
  pnlToggle !== "revenue" && "accounting-overview-profit-and-loss-chart--hidden"
16149
15989
  )
@@ -16160,7 +16000,7 @@ var AccountingOverview = ({
16160
16000
  ), /* @__PURE__ */ import_react182.default.createElement(
16161
16001
  Container,
16162
16002
  {
16163
- name: (0, import_classnames66.default)(
16003
+ name: (0, import_classnames64.default)(
16164
16004
  "accounting-overview-profit-and-loss-chart",
16165
16005
  pnlToggle !== "expenses" && "accounting-overview-profit-and-loss-chart--hidden"
16166
16006
  )