@layerfi/components 0.1.56 → 0.1.58

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
@@ -344,8 +344,9 @@ var getProfitAndLossCsv = get(
344
344
  year,
345
345
  tagKey,
346
346
  tagValues,
347
- reportingBasis
348
- }) => `/v1/businesses/${businessId}/reports/profit-and-loss/exports/csv?${startDate ? `start_date=${encodeURIComponent(startDate)}` : ""}${endDate ? `&end_date=${encodeURIComponent(endDate)}` : ""}${month ? `&month=${month}` : ""}${year ? `&year=${year}` : ""}${reportingBasis ? `&reporting_basis=${reportingBasis}` : ""}${tagKey ? `&tag_key=${tagKey}` : ""}${tagValues ? `&tag_values=${tagValues}` : ""}`
347
+ reportingBasis,
348
+ moneyFormat
349
+ }) => `/v1/businesses/${businessId}/reports/profit-and-loss/exports/csv?${startDate ? `start_date=${encodeURIComponent(startDate)}` : ""}${endDate ? `&end_date=${encodeURIComponent(endDate)}` : ""}${month ? `&month=${month}` : ""}${year ? `&year=${year}` : ""}${reportingBasis ? `&reporting_basis=${reportingBasis}` : ""}${tagKey ? `&tag_key=${tagKey}` : ""}${tagValues ? `&tag_values=${tagValues}` : ""}${moneyFormat ? `&money_format=${moneyFormat}` : ""}`
349
350
  );
350
351
 
351
352
  // src/api/layer/quickbooks.ts
@@ -583,7 +584,7 @@ var Toast = (props) => {
583
584
  /* @__PURE__ */ import_react5.default.createElement("p", null, content)
584
585
  );
585
586
  };
586
- var ToastsContainer = (0, import_react5.forwardRef)((_props, ref) => {
587
+ var ToastsContainer = (0, import_react5.forwardRef)((_props) => {
587
588
  const { toasts } = useLayerContext();
588
589
  return /* @__PURE__ */ import_react5.default.createElement("div", { className: "Layer__toasts-container" }, toasts.map((toast, idx) => /* @__PURE__ */ import_react5.default.createElement(Toast, { key: `layer-toast-${idx}`, ...toast })));
589
590
  });
@@ -717,10 +718,10 @@ var useDrawer = () => {
717
718
  };
718
719
 
719
720
  // src/types/bank_transactions.ts
720
- var Direction = /* @__PURE__ */ ((Direction3) => {
721
- Direction3["CREDIT"] = "CREDIT";
722
- Direction3["DEBIT"] = "DEBIT";
723
- return Direction3;
721
+ var Direction = /* @__PURE__ */ ((Direction2) => {
722
+ Direction2["CREDIT"] = "CREDIT";
723
+ Direction2["DEBIT"] = "DEBIT";
724
+ return Direction2;
724
725
  })(Direction || {});
725
726
  var DisplayState = /* @__PURE__ */ ((DisplayState2) => {
726
727
  DisplayState2["all"] = "all";
@@ -944,8 +945,8 @@ var hueToRgb = (p, q, t) => {
944
945
  };
945
946
  var hslToRgb = (hsl) => {
946
947
  let r, g, b;
947
- let l = hsl.l / 100;
948
- let s = hsl.s / 100;
948
+ const l = hsl.l / 100;
949
+ const s = hsl.s / 100;
949
950
  if (hsl.s === 0) {
950
951
  r = g = b = l;
951
952
  } else {
@@ -1239,7 +1240,6 @@ var useLinkedAccounts = () => {
1239
1240
  }
1240
1241
  };
1241
1242
  const unlinkAccount2 = async (source, accountId) => {
1242
- DEBUG && console.log("unlinking account");
1243
1243
  if (source === "PLAID") {
1244
1244
  await Layer.unlinkAccount(apiUrl, auth?.access_token, {
1245
1245
  params: { businessId, accountId }
@@ -1672,11 +1672,11 @@ var useBankTransactions = (params) => {
1672
1672
  });
1673
1673
  mutate(updatedData, { revalidate: false });
1674
1674
  };
1675
- const shouldHideAfterCategorize = (bankTransaction) => {
1675
+ const shouldHideAfterCategorize = () => {
1676
1676
  return filters?.categorizationStatus === "review" /* review */;
1677
1677
  };
1678
1678
  const removeAfterCategorize = (bankTransaction) => {
1679
- if (shouldHideAfterCategorize(bankTransaction)) {
1679
+ if (shouldHideAfterCategorize()) {
1680
1680
  const updatedData = rawResponseData?.map((page) => {
1681
1681
  return {
1682
1682
  ...page,
@@ -1741,7 +1741,7 @@ var useBankTransactions = (params) => {
1741
1741
  }
1742
1742
  };
1743
1743
  }, [anyAccountSyncing, transactionsNotSynced, pollIntervalMs]);
1744
- useTriggerOnChange(data, anyAccountSyncing, (newTransactionList) => {
1744
+ useTriggerOnChange(data, anyAccountSyncing, (_) => {
1745
1745
  clearInterval(intervalId);
1746
1746
  setPollIntervalMs(POLL_INTERVAL_AFTER_TXNS_RECEIVED_MS);
1747
1747
  eventCallbacks?.onTransactionsFetched?.();
@@ -2178,8 +2178,8 @@ var Header = (0, import_react18.forwardRef)(
2178
2178
  var import_react40 = __toESM(require("react"));
2179
2179
 
2180
2180
  // src/icons/Bell.tsx
2181
- var React12 = __toESM(require("react"));
2182
- var Bell = ({ size = 18, ...props }) => /* @__PURE__ */ React12.createElement(
2181
+ var React10 = __toESM(require("react"));
2182
+ var Bell = ({ size = 18, ...props }) => /* @__PURE__ */ React10.createElement(
2183
2183
  "svg",
2184
2184
  {
2185
2185
  xmlns: "http://www.w3.org/2000/svg",
@@ -2189,7 +2189,7 @@ var Bell = ({ size = 18, ...props }) => /* @__PURE__ */ React12.createElement(
2189
2189
  width: size,
2190
2190
  height: size
2191
2191
  },
2192
- /* @__PURE__ */ React12.createElement(
2192
+ /* @__PURE__ */ React10.createElement(
2193
2193
  "path",
2194
2194
  {
2195
2195
  d: "M13.5 6C13.5 4.80653 13.0259 3.66193 12.182 2.81802C11.3381 1.97411 10.1935 1.5 9 1.5C7.80653 1.5 6.66193 1.97411 5.81802 2.81802C4.97411 3.66193 4.5 4.80653 4.5 6C4.5 11.25 2.25 12.75 2.25 12.75H15.75C15.75 12.75 13.5 11.25 13.5 6Z",
@@ -2198,7 +2198,7 @@ var Bell = ({ size = 18, ...props }) => /* @__PURE__ */ React12.createElement(
2198
2198
  strokeLinejoin: "round"
2199
2199
  }
2200
2200
  ),
2201
- /* @__PURE__ */ React12.createElement(
2201
+ /* @__PURE__ */ React10.createElement(
2202
2202
  "path",
2203
2203
  {
2204
2204
  d: "M10.2975 15.75C10.1656 15.9773 9.97638 16.166 9.74867 16.2971C9.52096 16.4283 9.26278 16.4973 9 16.4973C8.73721 16.4973 8.47904 16.4283 8.25133 16.2971C8.02362 16.166 7.83436 15.9773 7.7025 15.75",
@@ -2211,8 +2211,8 @@ var Bell = ({ size = 18, ...props }) => /* @__PURE__ */ React12.createElement(
2211
2211
  var Bell_default = Bell;
2212
2212
 
2213
2213
  // src/icons/CreditCard.tsx
2214
- var React13 = __toESM(require("react"));
2215
- var CreditCard = ({ size = 12, ...props }) => /* @__PURE__ */ React13.createElement(
2214
+ var React11 = __toESM(require("react"));
2215
+ var CreditCard = ({ size = 12, ...props }) => /* @__PURE__ */ React11.createElement(
2216
2216
  "svg",
2217
2217
  {
2218
2218
  xmlns: "http://www.w3.org/2000/svg",
@@ -2222,7 +2222,7 @@ var CreditCard = ({ size = 12, ...props }) => /* @__PURE__ */ React13.createElem
2222
2222
  width: size,
2223
2223
  height: size
2224
2224
  },
2225
- /* @__PURE__ */ React13.createElement(
2225
+ /* @__PURE__ */ React11.createElement(
2226
2226
  "path",
2227
2227
  {
2228
2228
  d: "M10.5 2H1.5C0.947715 2 0.5 2.44772 0.5 3V9C0.5 9.55228 0.947715 10 1.5 10H10.5C11.0523 10 11.5 9.55228 11.5 9V3C11.5 2.44772 11.0523 2 10.5 2Z",
@@ -2231,7 +2231,7 @@ var CreditCard = ({ size = 12, ...props }) => /* @__PURE__ */ React13.createElem
2231
2231
  strokeLinejoin: "round"
2232
2232
  }
2233
2233
  ),
2234
- /* @__PURE__ */ React13.createElement(
2234
+ /* @__PURE__ */ React11.createElement(
2235
2235
  "path",
2236
2236
  {
2237
2237
  d: "M0.5 5H11.5",
@@ -2244,8 +2244,8 @@ var CreditCard = ({ size = 12, ...props }) => /* @__PURE__ */ React13.createElem
2244
2244
  var CreditCard_default = CreditCard;
2245
2245
 
2246
2246
  // src/icons/Folder.tsx
2247
- var React14 = __toESM(require("react"));
2248
- var Folder = ({ size = 12, ...props }) => /* @__PURE__ */ React14.createElement(
2247
+ var React12 = __toESM(require("react"));
2248
+ var Folder = ({ size = 12, ...props }) => /* @__PURE__ */ React12.createElement(
2249
2249
  "svg",
2250
2250
  {
2251
2251
  xmlns: "http://www.w3.org/2000/svg",
@@ -2255,7 +2255,7 @@ var Folder = ({ size = 12, ...props }) => /* @__PURE__ */ React14.createElement(
2255
2255
  width: size,
2256
2256
  height: size
2257
2257
  },
2258
- /* @__PURE__ */ React14.createElement(
2258
+ /* @__PURE__ */ React12.createElement(
2259
2259
  "path",
2260
2260
  {
2261
2261
  d: "M11 9.5C11 9.76522 10.8946 10.0196 10.7071 10.2071C10.5196 10.3946 10.2652 10.5 10 10.5H2C1.73478 10.5 1.48043 10.3946 1.29289 10.2071C1.10536 10.0196 1 9.76522 1 9.5V2.5C1 2.23478 1.10536 1.98043 1.29289 1.79289C1.48043 1.60536 1.73478 1.5 2 1.5H4.5L5.5 3H10C10.2652 3 10.5196 3.10536 10.7071 3.29289C10.8946 3.48043 11 3.73478 11 4V9.5Z",
@@ -2268,8 +2268,8 @@ var Folder = ({ size = 12, ...props }) => /* @__PURE__ */ React14.createElement(
2268
2268
  var Folder_default = Folder;
2269
2269
 
2270
2270
  // src/icons/Link.tsx
2271
- var React15 = __toESM(require("react"));
2272
- var Link = ({ size = 18, ...props }) => /* @__PURE__ */ React15.createElement(
2271
+ var React13 = __toESM(require("react"));
2272
+ var Link = ({ size = 18, ...props }) => /* @__PURE__ */ React13.createElement(
2273
2273
  "svg",
2274
2274
  {
2275
2275
  xmlns: "http://www.w3.org/2000/svg",
@@ -2279,7 +2279,7 @@ var Link = ({ size = 18, ...props }) => /* @__PURE__ */ React15.createElement(
2279
2279
  width: size,
2280
2280
  height: size
2281
2281
  },
2282
- /* @__PURE__ */ React15.createElement(
2282
+ /* @__PURE__ */ React13.createElement(
2283
2283
  "path",
2284
2284
  {
2285
2285
  d: "M7.5 9.75C7.82209 10.1806 8.23302 10.5369 8.70491 10.7947C9.17681 11.0525 9.69863 11.2058 10.235 11.2442C10.7713 11.2827 11.3097 11.2053 11.8135 11.0173C12.3173 10.8294 12.7748 10.5353 13.155 10.155L15.405 7.905C16.0881 7.19774 16.4661 6.25048 16.4575 5.26724C16.449 4.284 16.0546 3.34346 15.3593 2.64818C14.664 1.9529 13.7235 1.55851 12.7403 1.54997C11.757 1.54143 10.8098 1.9194 10.1025 2.6025L8.8125 3.885",
@@ -2288,7 +2288,7 @@ var Link = ({ size = 18, ...props }) => /* @__PURE__ */ React15.createElement(
2288
2288
  strokeLinejoin: "round"
2289
2289
  }
2290
2290
  ),
2291
- /* @__PURE__ */ React15.createElement(
2291
+ /* @__PURE__ */ React13.createElement(
2292
2292
  "path",
2293
2293
  {
2294
2294
  d: "M10.5 8.25C10.1779 7.8194 9.76698 7.46311 9.29508 7.2053C8.82319 6.94748 8.30137 6.79416 7.76501 6.75575C7.22865 6.71734 6.69031 6.79473 6.18649 6.98266C5.68267 7.1706 5.22516 7.4647 4.845 7.845L2.595 10.095C1.9119 10.8023 1.53393 11.7495 1.54247 12.7328C1.55101 13.716 1.9454 14.6565 2.64068 15.3518C3.33596 16.0471 4.2765 16.4415 5.25974 16.45C6.24298 16.4586 7.19024 16.0806 7.8975 15.3975L9.18 14.115",
@@ -2314,8 +2314,8 @@ var PlaidIcon = () => {
2314
2314
  var PlaidIcon_default = PlaidIcon;
2315
2315
 
2316
2316
  // src/icons/Sunrise.tsx
2317
- var React17 = __toESM(require("react"));
2318
- var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement(
2317
+ var React15 = __toESM(require("react"));
2318
+ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React15.createElement(
2319
2319
  "svg",
2320
2320
  {
2321
2321
  xmlns: "http://www.w3.org/2000/svg",
@@ -2325,7 +2325,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2325
2325
  width: size,
2326
2326
  height: size
2327
2327
  },
2328
- /* @__PURE__ */ React17.createElement(
2328
+ /* @__PURE__ */ React15.createElement(
2329
2329
  "path",
2330
2330
  {
2331
2331
  d: "M8.5 9C8.5 8.33696 8.23661 7.70107 7.76777 7.23223C7.29893 6.76339 6.66304 6.5 6 6.5C5.33696 6.5 4.70107 6.76339 4.23223 7.23223C3.76339 7.70107 3.5 8.33696 3.5 9",
@@ -2334,7 +2334,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2334
2334
  strokeLinejoin: "round"
2335
2335
  }
2336
2336
  ),
2337
- /* @__PURE__ */ React17.createElement(
2337
+ /* @__PURE__ */ React15.createElement(
2338
2338
  "path",
2339
2339
  {
2340
2340
  d: "M6 3.3335V4.66683",
@@ -2343,7 +2343,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2343
2343
  strokeLinejoin: "round"
2344
2344
  }
2345
2345
  ),
2346
- /* @__PURE__ */ React17.createElement(
2346
+ /* @__PURE__ */ React15.createElement(
2347
2347
  "path",
2348
2348
  {
2349
2349
  d: "M2.11 5.10986L2.82 5.81986",
@@ -2352,7 +2352,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2352
2352
  strokeLinejoin: "round"
2353
2353
  }
2354
2354
  ),
2355
- /* @__PURE__ */ React17.createElement(
2355
+ /* @__PURE__ */ React15.createElement(
2356
2356
  "path",
2357
2357
  {
2358
2358
  d: "M0.5 9H1.5",
@@ -2361,7 +2361,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2361
2361
  strokeLinejoin: "round"
2362
2362
  }
2363
2363
  ),
2364
- /* @__PURE__ */ React17.createElement(
2364
+ /* @__PURE__ */ React15.createElement(
2365
2365
  "path",
2366
2366
  {
2367
2367
  d: "M10.5 9H11.5",
@@ -2370,7 +2370,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2370
2370
  strokeLinejoin: "round"
2371
2371
  }
2372
2372
  ),
2373
- /* @__PURE__ */ React17.createElement(
2373
+ /* @__PURE__ */ React15.createElement(
2374
2374
  "path",
2375
2375
  {
2376
2376
  d: "M9.17999 5.81986L9.88999 5.10986",
@@ -2379,7 +2379,7 @@ var Sunrise = ({ size = 12, ...props }) => /* @__PURE__ */ React17.createElement
2379
2379
  strokeLinejoin: "round"
2380
2380
  }
2381
2381
  ),
2382
- /* @__PURE__ */ React17.createElement(
2382
+ /* @__PURE__ */ React15.createElement(
2383
2383
  "path",
2384
2384
  {
2385
2385
  d: "M11.5 11H0.5",
@@ -2453,8 +2453,8 @@ var getCategorizePayload = (category) => {
2453
2453
  var import_react37 = __toESM(require("react"));
2454
2454
 
2455
2455
  // src/icons/ChevronRight.tsx
2456
- var React18 = __toESM(require("react"));
2457
- var ChevronRight = ({ size = 18, ...props }) => /* @__PURE__ */ React18.createElement(
2456
+ var React16 = __toESM(require("react"));
2457
+ var ChevronRight = ({ ...props }) => /* @__PURE__ */ React16.createElement(
2458
2458
  "svg",
2459
2459
  {
2460
2460
  xmlns: "http://www.w3.org/2000/svg",
@@ -2464,7 +2464,7 @@ var ChevronRight = ({ size = 18, ...props }) => /* @__PURE__ */ React18.createEl
2464
2464
  fill: "none",
2465
2465
  ...props
2466
2466
  },
2467
- /* @__PURE__ */ React18.createElement(
2467
+ /* @__PURE__ */ React16.createElement(
2468
2468
  "path",
2469
2469
  {
2470
2470
  d: "M6.75 13.5L11.25 9L6.75 4.5",
@@ -2571,8 +2571,8 @@ var IconButton = ({
2571
2571
  var import_react22 = __toESM(require("react"));
2572
2572
 
2573
2573
  // src/icons/RefreshCcw.tsx
2574
- var React21 = __toESM(require("react"));
2575
- var RefreshCcw = ({ size = 18, ...props }) => /* @__PURE__ */ React21.createElement(
2574
+ var React19 = __toESM(require("react"));
2575
+ var RefreshCcw = ({ size = 18, ...props }) => /* @__PURE__ */ React19.createElement(
2576
2576
  "svg",
2577
2577
  {
2578
2578
  viewBox: "0 0 18 18",
@@ -2582,7 +2582,7 @@ var RefreshCcw = ({ size = 18, ...props }) => /* @__PURE__ */ React21.createElem
2582
2582
  width: size,
2583
2583
  height: size
2584
2584
  },
2585
- /* @__PURE__ */ React21.createElement(
2585
+ /* @__PURE__ */ React19.createElement(
2586
2586
  "path",
2587
2587
  {
2588
2588
  d: "M0.75 3V7.5H5.25",
@@ -2591,7 +2591,7 @@ var RefreshCcw = ({ size = 18, ...props }) => /* @__PURE__ */ React21.createElem
2591
2591
  strokeLinejoin: "round"
2592
2592
  }
2593
2593
  ),
2594
- /* @__PURE__ */ React21.createElement(
2594
+ /* @__PURE__ */ React19.createElement(
2595
2595
  "path",
2596
2596
  {
2597
2597
  d: "M17.25 15V10.5H12.75",
@@ -2600,7 +2600,7 @@ var RefreshCcw = ({ size = 18, ...props }) => /* @__PURE__ */ React21.createElem
2600
2600
  strokeLinejoin: "round"
2601
2601
  }
2602
2602
  ),
2603
- /* @__PURE__ */ React21.createElement(
2603
+ /* @__PURE__ */ React19.createElement(
2604
2604
  "path",
2605
2605
  {
2606
2606
  d: "M15.3675 6.75C14.9871 5.67508 14.3407 4.71405 13.4884 3.95656C12.6361 3.19907 11.6059 2.66982 10.4938 2.41819C9.38167 2.16656 8.22393 2.20075 7.12861 2.51758C6.03328 2.8344 5.03606 3.42353 4.23 4.23L0.75 7.5M17.25 10.5L13.77 13.77C12.9639 14.5765 11.9667 15.1656 10.8714 15.4824C9.77607 15.7992 8.61833 15.8334 7.50621 15.5818C6.3941 15.3302 5.36385 14.8009 4.5116 14.0434C3.65935 13.2859 3.01288 12.3249 2.6325 11.25",
@@ -2645,8 +2645,8 @@ var RetryButton = ({
2645
2645
  var import_react27 = __toESM(require("react"));
2646
2646
 
2647
2647
  // src/icons/AlertCircle.tsx
2648
- var React23 = __toESM(require("react"));
2649
- var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createElement(
2648
+ var React21 = __toESM(require("react"));
2649
+ var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React21.createElement(
2650
2650
  "svg",
2651
2651
  {
2652
2652
  viewBox: "0 0 18 18",
@@ -2656,7 +2656,7 @@ var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createEle
2656
2656
  width: size,
2657
2657
  height: size
2658
2658
  },
2659
- /* @__PURE__ */ React23.createElement(
2659
+ /* @__PURE__ */ React21.createElement(
2660
2660
  "path",
2661
2661
  {
2662
2662
  d: "M9 16.5C13.1421 16.5 16.5 13.1421 16.5 9C16.5 4.85786 13.1421 1.5 9 1.5C4.85786 1.5 1.5 4.85786 1.5 9C1.5 13.1421 4.85786 16.5 9 16.5Z",
@@ -2665,7 +2665,7 @@ var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createEle
2665
2665
  strokeLinejoin: "round"
2666
2666
  }
2667
2667
  ),
2668
- /* @__PURE__ */ React23.createElement(
2668
+ /* @__PURE__ */ React21.createElement(
2669
2669
  "path",
2670
2670
  {
2671
2671
  d: "M9 6V9",
@@ -2674,7 +2674,7 @@ var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createEle
2674
2674
  strokeLinejoin: "round"
2675
2675
  }
2676
2676
  ),
2677
- /* @__PURE__ */ React23.createElement(
2677
+ /* @__PURE__ */ React21.createElement(
2678
2678
  "path",
2679
2679
  {
2680
2680
  d: "M9 12H9.0075",
@@ -2687,8 +2687,8 @@ var AlertCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createEle
2687
2687
  var AlertCircle_default = AlertCircle;
2688
2688
 
2689
2689
  // src/icons/CheckCircle.tsx
2690
- var React24 = __toESM(require("react"));
2691
- var CheckCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React24.createElement(
2690
+ var React22 = __toESM(require("react"));
2691
+ var CheckCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React22.createElement(
2692
2692
  "svg",
2693
2693
  {
2694
2694
  viewBox: "0 0 18 18",
@@ -2698,7 +2698,7 @@ var CheckCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React24.createEle
2698
2698
  width: size,
2699
2699
  height: size
2700
2700
  },
2701
- /* @__PURE__ */ React24.createElement(
2701
+ /* @__PURE__ */ React22.createElement(
2702
2702
  "path",
2703
2703
  {
2704
2704
  d: "M16.5 8.30999V8.99999C16.4991 10.6173 15.9754 12.191 15.007 13.4864C14.0386 14.7817 12.6775 15.7293 11.1265 16.1879C9.57557 16.6465 7.91794 16.5914 6.40085 16.0309C4.88375 15.4704 3.58848 14.4346 2.70821 13.0778C1.82794 11.721 1.40984 10.116 1.51625 8.50223C1.62266 6.88841 2.2479 5.35223 3.2987 4.12279C4.34951 2.89335 5.76958 2.03653 7.34713 1.6801C8.92469 1.32367 10.5752 1.48674 12.0525 2.14499",
@@ -2707,7 +2707,7 @@ var CheckCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React24.createEle
2707
2707
  strokeLinejoin: "round"
2708
2708
  }
2709
2709
  ),
2710
- /* @__PURE__ */ React24.createElement(
2710
+ /* @__PURE__ */ React22.createElement(
2711
2711
  "path",
2712
2712
  {
2713
2713
  d: "M16.5 3L9 10.5075L6.75 8.2575",
@@ -2720,8 +2720,8 @@ var CheckCircle = ({ size = 18, ...props }) => /* @__PURE__ */ React24.createEle
2720
2720
  var CheckCircle_default = CheckCircle;
2721
2721
 
2722
2722
  // src/icons/Loader.tsx
2723
- var React25 = __toESM(require("react"));
2724
- var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2723
+ var React23 = __toESM(require("react"));
2724
+ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React23.createElement(
2725
2725
  "svg",
2726
2726
  {
2727
2727
  xmlns: "http://www.w3.org/2000/svg",
@@ -2731,7 +2731,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2731
2731
  width: size,
2732
2732
  height: size
2733
2733
  },
2734
- /* @__PURE__ */ React25.createElement(
2734
+ /* @__PURE__ */ React23.createElement(
2735
2735
  "path",
2736
2736
  {
2737
2737
  d: "M9 1.5V4.5",
@@ -2740,7 +2740,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2740
2740
  strokeLinejoin: "round"
2741
2741
  }
2742
2742
  ),
2743
- /* @__PURE__ */ React25.createElement(
2743
+ /* @__PURE__ */ React23.createElement(
2744
2744
  "path",
2745
2745
  {
2746
2746
  d: "M9 13.5V16.5",
@@ -2749,7 +2749,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2749
2749
  strokeLinejoin: "round"
2750
2750
  }
2751
2751
  ),
2752
- /* @__PURE__ */ React25.createElement(
2752
+ /* @__PURE__ */ React23.createElement(
2753
2753
  "path",
2754
2754
  {
2755
2755
  d: "M3.69751 3.69751L5.82001 5.82001",
@@ -2758,7 +2758,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2758
2758
  strokeLinejoin: "round"
2759
2759
  }
2760
2760
  ),
2761
- /* @__PURE__ */ React25.createElement(
2761
+ /* @__PURE__ */ React23.createElement(
2762
2762
  "path",
2763
2763
  {
2764
2764
  d: "M12.1799 12.18L14.3024 14.3025",
@@ -2767,7 +2767,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2767
2767
  strokeLinejoin: "round"
2768
2768
  }
2769
2769
  ),
2770
- /* @__PURE__ */ React25.createElement(
2770
+ /* @__PURE__ */ React23.createElement(
2771
2771
  "path",
2772
2772
  {
2773
2773
  d: "M1.5 9H4.5",
@@ -2776,7 +2776,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2776
2776
  strokeLinejoin: "round"
2777
2777
  }
2778
2778
  ),
2779
- /* @__PURE__ */ React25.createElement(
2779
+ /* @__PURE__ */ React23.createElement(
2780
2780
  "path",
2781
2781
  {
2782
2782
  d: "M13.5 9H16.5",
@@ -2785,7 +2785,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2785
2785
  strokeLinejoin: "round"
2786
2786
  }
2787
2787
  ),
2788
- /* @__PURE__ */ React25.createElement(
2788
+ /* @__PURE__ */ React23.createElement(
2789
2789
  "path",
2790
2790
  {
2791
2791
  d: "M3.69751 14.3025L5.82001 12.18",
@@ -2794,7 +2794,7 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2794
2794
  strokeLinejoin: "round"
2795
2795
  }
2796
2796
  ),
2797
- /* @__PURE__ */ React25.createElement(
2797
+ /* @__PURE__ */ React23.createElement(
2798
2798
  "path",
2799
2799
  {
2800
2800
  d: "M12.1799 5.82001L14.3024 3.69751",
@@ -2807,8 +2807,8 @@ var Loader = ({ size = 18, ...props }) => /* @__PURE__ */ React25.createElement(
2807
2807
  var Loader_default = Loader;
2808
2808
 
2809
2809
  // src/icons/Save.tsx
2810
- var React26 = __toESM(require("react"));
2811
- var Save = ({ size = 18, ...props }) => /* @__PURE__ */ React26.createElement(
2810
+ var React24 = __toESM(require("react"));
2811
+ var Save = ({ size = 18, ...props }) => /* @__PURE__ */ React24.createElement(
2812
2812
  "svg",
2813
2813
  {
2814
2814
  xmlns: "http://www.w3.org/2000/svg",
@@ -2818,7 +2818,7 @@ var Save = ({ size = 18, ...props }) => /* @__PURE__ */ React26.createElement(
2818
2818
  width: size,
2819
2819
  height: size
2820
2820
  },
2821
- /* @__PURE__ */ React26.createElement(
2821
+ /* @__PURE__ */ React24.createElement(
2822
2822
  "path",
2823
2823
  {
2824
2824
  d: "M14.25 15.75H3.75C3.35218 15.75 2.97064 15.592 2.68934 15.3107C2.40804 15.0294 2.25 14.6478 2.25 14.25V3.75C2.25 3.35218 2.40804 2.97064 2.68934 2.68934C2.97064 2.40804 3.35218 2.25 3.75 2.25H12L15.75 6V14.25C15.75 14.6478 15.592 15.0294 15.3107 15.3107C15.0294 15.592 14.6478 15.75 14.25 15.75Z",
@@ -2827,7 +2827,7 @@ var Save = ({ size = 18, ...props }) => /* @__PURE__ */ React26.createElement(
2827
2827
  strokeLinejoin: "round"
2828
2828
  }
2829
2829
  ),
2830
- /* @__PURE__ */ React26.createElement(
2830
+ /* @__PURE__ */ React24.createElement(
2831
2831
  "path",
2832
2832
  {
2833
2833
  d: "M12.75 15.75V9.75H5.25V15.75",
@@ -2836,7 +2836,7 @@ var Save = ({ size = 18, ...props }) => /* @__PURE__ */ React26.createElement(
2836
2836
  strokeLinejoin: "round"
2837
2837
  }
2838
2838
  ),
2839
- /* @__PURE__ */ React26.createElement(
2839
+ /* @__PURE__ */ React24.createElement(
2840
2840
  "path",
2841
2841
  {
2842
2842
  d: "M5.25 2.25V6H11.25",
@@ -3043,8 +3043,8 @@ var TextButton = ({
3043
3043
  var import_react29 = __toESM(require("react"));
3044
3044
 
3045
3045
  // src/icons/BackArrow.tsx
3046
- var React31 = __toESM(require("react"));
3047
- var BackArrow = ({ size = 18, ...props }) => /* @__PURE__ */ React31.createElement(
3046
+ var React29 = __toESM(require("react"));
3047
+ var BackArrow = ({ size = 18, ...props }) => /* @__PURE__ */ React29.createElement(
3048
3048
  "svg",
3049
3049
  {
3050
3050
  viewBox: "0 0 12 12",
@@ -3054,7 +3054,7 @@ var BackArrow = ({ size = 18, ...props }) => /* @__PURE__ */ React31.createEleme
3054
3054
  width: size,
3055
3055
  height: size
3056
3056
  },
3057
- /* @__PURE__ */ React31.createElement(
3057
+ /* @__PURE__ */ React29.createElement(
3058
3058
  "path",
3059
3059
  {
3060
3060
  d: "M7.375 8.75L4.625 6L7.375 3.25",
@@ -3082,8 +3082,8 @@ var BackButton = ({
3082
3082
  var import_react30 = __toESM(require("react"));
3083
3083
 
3084
3084
  // src/icons/CloseIcon.tsx
3085
- var React33 = __toESM(require("react"));
3086
- var CloseIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React33.createElement(
3085
+ var React31 = __toESM(require("react"));
3086
+ var CloseIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React31.createElement(
3087
3087
  "svg",
3088
3088
  {
3089
3089
  viewBox: "0 0 12 12",
@@ -3093,7 +3093,7 @@ var CloseIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React33.createEleme
3093
3093
  width: size,
3094
3094
  height: size
3095
3095
  },
3096
- /* @__PURE__ */ React33.createElement(
3096
+ /* @__PURE__ */ React31.createElement(
3097
3097
  "path",
3098
3098
  {
3099
3099
  d: "M8.75 3.25L3.25 8.75",
@@ -3102,7 +3102,7 @@ var CloseIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React33.createEleme
3102
3102
  strokeLinejoin: "round"
3103
3103
  }
3104
3104
  ),
3105
- /* @__PURE__ */ React33.createElement(
3105
+ /* @__PURE__ */ React31.createElement(
3106
3106
  "path",
3107
3107
  {
3108
3108
  d: "M3.25 3.25L8.75 8.75",
@@ -3401,8 +3401,8 @@ var Badge = ({
3401
3401
  var import_react39 = __toESM(require("react"));
3402
3402
 
3403
3403
  // src/icons/AlertOctagon.tsx
3404
- var React43 = __toESM(require("react"));
3405
- var AlertOctagon = ({ size = 18, ...props }) => /* @__PURE__ */ React43.createElement(
3404
+ var React41 = __toESM(require("react"));
3405
+ var AlertOctagon = ({ size = 18, ...props }) => /* @__PURE__ */ React41.createElement(
3406
3406
  "svg",
3407
3407
  {
3408
3408
  viewBox: "0 0 18 18",
@@ -3412,7 +3412,7 @@ var AlertOctagon = ({ size = 18, ...props }) => /* @__PURE__ */ React43.createEl
3412
3412
  width: size,
3413
3413
  height: size
3414
3414
  },
3415
- /* @__PURE__ */ React43.createElement(
3415
+ /* @__PURE__ */ React41.createElement(
3416
3416
  "path",
3417
3417
  {
3418
3418
  d: "M5.895 1.5H12.105L16.5 5.895V12.105L12.105 16.5H5.895L1.5 12.105V5.895L5.895 1.5Z",
@@ -3421,7 +3421,7 @@ var AlertOctagon = ({ size = 18, ...props }) => /* @__PURE__ */ React43.createEl
3421
3421
  strokeLinejoin: "round"
3422
3422
  }
3423
3423
  ),
3424
- /* @__PURE__ */ React43.createElement(
3424
+ /* @__PURE__ */ React41.createElement(
3425
3425
  "path",
3426
3426
  {
3427
3427
  d: "M9 6V9",
@@ -3430,7 +3430,7 @@ var AlertOctagon = ({ size = 18, ...props }) => /* @__PURE__ */ React43.createEl
3430
3430
  strokeLinejoin: "round"
3431
3431
  }
3432
3432
  ),
3433
- /* @__PURE__ */ React43.createElement(
3433
+ /* @__PURE__ */ React41.createElement(
3434
3434
  "path",
3435
3435
  {
3436
3436
  d: "M9 12H9.0075",
@@ -3627,8 +3627,8 @@ var SmallLoader = ({ size = 28 }) => {
3627
3627
  var import_react50 = __toESM(require("react"));
3628
3628
 
3629
3629
  // src/icons/PlusIcon.tsx
3630
- var React49 = __toESM(require("react"));
3631
- var PlusIcon = ({ size = 14, ...props }) => /* @__PURE__ */ React49.createElement(
3630
+ var React47 = __toESM(require("react"));
3631
+ var PlusIcon = ({ size = 14, ...props }) => /* @__PURE__ */ React47.createElement(
3632
3632
  "svg",
3633
3633
  {
3634
3634
  xmlns: "http://www.w3.org/2000/svg",
@@ -3638,7 +3638,7 @@ var PlusIcon = ({ size = 14, ...props }) => /* @__PURE__ */ React49.createElemen
3638
3638
  width: size,
3639
3639
  height: size
3640
3640
  },
3641
- /* @__PURE__ */ React49.createElement(
3641
+ /* @__PURE__ */ React47.createElement(
3642
3642
  "path",
3643
3643
  {
3644
3644
  d: "M14.6667 8.49996C14.6667 4.81806 11.6819 1.83329 8.00004 1.83329C4.31814 1.83329 1.33337 4.81806 1.33337 8.49996C1.33337 12.1819 4.31814 15.1666 8.00004 15.1666C11.6819 15.1666 14.6667 12.1819 14.6667 8.49996Z",
@@ -3647,7 +3647,7 @@ var PlusIcon = ({ size = 14, ...props }) => /* @__PURE__ */ React49.createElemen
3647
3647
  strokeLinejoin: "round"
3648
3648
  }
3649
3649
  ),
3650
- /* @__PURE__ */ React49.createElement(
3650
+ /* @__PURE__ */ React47.createElement(
3651
3651
  "path",
3652
3652
  {
3653
3653
  d: "M5.33337 8.5L10.6667 8.5",
@@ -3656,7 +3656,7 @@ var PlusIcon = ({ size = 14, ...props }) => /* @__PURE__ */ React49.createElemen
3656
3656
  strokeLinejoin: "round"
3657
3657
  }
3658
3658
  ),
3659
- /* @__PURE__ */ React49.createElement(
3659
+ /* @__PURE__ */ React47.createElement(
3660
3660
  "path",
3661
3661
  {
3662
3662
  d: "M8 11.1666L8 5.83329",
@@ -3792,8 +3792,8 @@ var LinkedAccountOptions = ({
3792
3792
  var import_react49 = __toESM(require("react"));
3793
3793
 
3794
3794
  // src/icons/InstitutionIcon.tsx
3795
- var React53 = __toESM(require("react"));
3796
- var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.createElement(
3795
+ var React51 = __toESM(require("react"));
3796
+ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React51.createElement(
3797
3797
  "svg",
3798
3798
  {
3799
3799
  viewBox: "0 0 27 28",
@@ -3803,42 +3803,42 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3803
3803
  width: size,
3804
3804
  height: size
3805
3805
  },
3806
- /* @__PURE__ */ React53.createElement("g", { filter: "url(#filter0_i_2320_122784)" }, /* @__PURE__ */ React53.createElement(
3806
+ /* @__PURE__ */ React51.createElement("g", { filter: "url(#filter0_i_2320_122784)" }, /* @__PURE__ */ React51.createElement(
3807
3807
  "path",
3808
3808
  {
3809
3809
  d: "M0 8.50225C0 8.13268 0.20383 7.79324 0.530047 7.61956L13.03 0.964441C13.3238 0.80803 13.6762 0.808029 13.97 0.964441L26.47 7.61956C26.7962 7.79324 27 8.13268 27 8.50225V9.71423C27 10.2665 26.5523 10.7142 26 10.7142H0.999999C0.447715 10.7142 0 10.2665 0 9.71423V8.50225Z",
3810
3810
  fill: "currentColor"
3811
3811
  }
3812
3812
  )),
3813
- /* @__PURE__ */ React53.createElement("g", { filter: "url(#filter1_i_2320_122784)" }, /* @__PURE__ */ React53.createElement(
3813
+ /* @__PURE__ */ React51.createElement("g", { filter: "url(#filter1_i_2320_122784)" }, /* @__PURE__ */ React51.createElement(
3814
3814
  "path",
3815
3815
  {
3816
3816
  d: "M3 13C3 12.4477 3.44772 12 4 12H7C7.55228 12 8 12.4477 8 13V20C8 20.5523 7.55228 21 7 21H4C3.44772 21 3 20.5523 3 20L3 13Z",
3817
3817
  fill: "currentColor"
3818
3818
  }
3819
3819
  )),
3820
- /* @__PURE__ */ React53.createElement("g", { filter: "url(#filter2_i_2320_122784)" }, /* @__PURE__ */ React53.createElement(
3820
+ /* @__PURE__ */ React51.createElement("g", { filter: "url(#filter2_i_2320_122784)" }, /* @__PURE__ */ React51.createElement(
3821
3821
  "path",
3822
3822
  {
3823
3823
  d: "M11 13C11 12.4477 11.4477 12 12 12H15C15.5523 12 16 12.4477 16 13V20C16 20.5523 15.5523 21 15 21H12C11.4477 21 11 20.5523 11 20L11 13Z",
3824
3824
  fill: "currentColor"
3825
3825
  }
3826
3826
  )),
3827
- /* @__PURE__ */ React53.createElement("g", { filter: "url(#filter3_i_2320_122784)" }, /* @__PURE__ */ React53.createElement(
3827
+ /* @__PURE__ */ React51.createElement("g", { filter: "url(#filter3_i_2320_122784)" }, /* @__PURE__ */ React51.createElement(
3828
3828
  "path",
3829
3829
  {
3830
3830
  d: "M19 13C19 12.4477 19.4477 12 20 12H23C23.5523 12 24 12.4477 24 13V20C24 20.5523 23.5523 21 23 21H20C19.4477 21 19 20.5523 19 20L19 13Z",
3831
3831
  fill: "currentColor"
3832
3832
  }
3833
3833
  )),
3834
- /* @__PURE__ */ React53.createElement("g", { filter: "url(#filter4_i_2320_122784)" }, /* @__PURE__ */ React53.createElement(
3834
+ /* @__PURE__ */ React51.createElement("g", { filter: "url(#filter4_i_2320_122784)" }, /* @__PURE__ */ React51.createElement(
3835
3835
  "path",
3836
3836
  {
3837
3837
  d: "M1 23.2856C1 22.7334 1.44772 22.2856 2 22.2856H25C25.5523 22.2856 26 22.7334 26 23.2856V26.2856C26 26.8379 25.5523 27.2856 25 27.2856H2C1.44772 27.2856 1 26.8379 1 26.2856L1 23.2856Z",
3838
3838
  fill: "currentColor"
3839
3839
  }
3840
3840
  )),
3841
- /* @__PURE__ */ React53.createElement("defs", null, /* @__PURE__ */ React53.createElement(
3841
+ /* @__PURE__ */ React51.createElement("defs", null, /* @__PURE__ */ React51.createElement(
3842
3842
  "filter",
3843
3843
  {
3844
3844
  id: "filter0_i_2320_122784",
@@ -3849,8 +3849,8 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3849
3849
  filterUnits: "userSpaceOnUse",
3850
3850
  colorInterpolationFilters: "sRGB"
3851
3851
  },
3852
- /* @__PURE__ */ React53.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3853
- /* @__PURE__ */ React53.createElement(
3852
+ /* @__PURE__ */ React51.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3853
+ /* @__PURE__ */ React51.createElement(
3854
3854
  "feBlend",
3855
3855
  {
3856
3856
  mode: "normal",
@@ -3859,7 +3859,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3859
3859
  result: "shape"
3860
3860
  }
3861
3861
  ),
3862
- /* @__PURE__ */ React53.createElement(
3862
+ /* @__PURE__ */ React51.createElement(
3863
3863
  "feColorMatrix",
3864
3864
  {
3865
3865
  in: "SourceAlpha",
@@ -3868,17 +3868,17 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3868
3868
  result: "hardAlpha"
3869
3869
  }
3870
3870
  ),
3871
- /* @__PURE__ */ React53.createElement("feOffset", null),
3872
- /* @__PURE__ */ React53.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3873
- /* @__PURE__ */ React53.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3874
- /* @__PURE__ */ React53.createElement(
3871
+ /* @__PURE__ */ React51.createElement("feOffset", null),
3872
+ /* @__PURE__ */ React51.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3873
+ /* @__PURE__ */ React51.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3874
+ /* @__PURE__ */ React51.createElement(
3875
3875
  "feColorMatrix",
3876
3876
  {
3877
3877
  type: "matrix",
3878
3878
  values: "0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.04 0"
3879
3879
  }
3880
3880
  ),
3881
- /* @__PURE__ */ React53.createElement(
3881
+ /* @__PURE__ */ React51.createElement(
3882
3882
  "feBlend",
3883
3883
  {
3884
3884
  mode: "normal",
@@ -3886,7 +3886,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3886
3886
  result: "effect1_innerShadow_2320_122784"
3887
3887
  }
3888
3888
  )
3889
- ), /* @__PURE__ */ React53.createElement(
3889
+ ), /* @__PURE__ */ React51.createElement(
3890
3890
  "filter",
3891
3891
  {
3892
3892
  id: "filter1_i_2320_122784",
@@ -3897,8 +3897,8 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3897
3897
  filterUnits: "userSpaceOnUse",
3898
3898
  colorInterpolationFilters: "sRGB"
3899
3899
  },
3900
- /* @__PURE__ */ React53.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3901
- /* @__PURE__ */ React53.createElement(
3900
+ /* @__PURE__ */ React51.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3901
+ /* @__PURE__ */ React51.createElement(
3902
3902
  "feBlend",
3903
3903
  {
3904
3904
  mode: "normal",
@@ -3907,7 +3907,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3907
3907
  result: "shape"
3908
3908
  }
3909
3909
  ),
3910
- /* @__PURE__ */ React53.createElement(
3910
+ /* @__PURE__ */ React51.createElement(
3911
3911
  "feColorMatrix",
3912
3912
  {
3913
3913
  in: "SourceAlpha",
@@ -3916,17 +3916,17 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3916
3916
  result: "hardAlpha"
3917
3917
  }
3918
3918
  ),
3919
- /* @__PURE__ */ React53.createElement("feOffset", null),
3920
- /* @__PURE__ */ React53.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3921
- /* @__PURE__ */ React53.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3922
- /* @__PURE__ */ React53.createElement(
3919
+ /* @__PURE__ */ React51.createElement("feOffset", null),
3920
+ /* @__PURE__ */ React51.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3921
+ /* @__PURE__ */ React51.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3922
+ /* @__PURE__ */ React51.createElement(
3923
3923
  "feColorMatrix",
3924
3924
  {
3925
3925
  type: "matrix",
3926
3926
  values: "0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.04 0"
3927
3927
  }
3928
3928
  ),
3929
- /* @__PURE__ */ React53.createElement(
3929
+ /* @__PURE__ */ React51.createElement(
3930
3930
  "feBlend",
3931
3931
  {
3932
3932
  mode: "normal",
@@ -3934,7 +3934,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3934
3934
  result: "effect1_innerShadow_2320_122784"
3935
3935
  }
3936
3936
  )
3937
- ), /* @__PURE__ */ React53.createElement(
3937
+ ), /* @__PURE__ */ React51.createElement(
3938
3938
  "filter",
3939
3939
  {
3940
3940
  id: "filter2_i_2320_122784",
@@ -3945,8 +3945,8 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3945
3945
  filterUnits: "userSpaceOnUse",
3946
3946
  colorInterpolationFilters: "sRGB"
3947
3947
  },
3948
- /* @__PURE__ */ React53.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3949
- /* @__PURE__ */ React53.createElement(
3948
+ /* @__PURE__ */ React51.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3949
+ /* @__PURE__ */ React51.createElement(
3950
3950
  "feBlend",
3951
3951
  {
3952
3952
  mode: "normal",
@@ -3955,7 +3955,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3955
3955
  result: "shape"
3956
3956
  }
3957
3957
  ),
3958
- /* @__PURE__ */ React53.createElement(
3958
+ /* @__PURE__ */ React51.createElement(
3959
3959
  "feColorMatrix",
3960
3960
  {
3961
3961
  in: "SourceAlpha",
@@ -3964,17 +3964,17 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3964
3964
  result: "hardAlpha"
3965
3965
  }
3966
3966
  ),
3967
- /* @__PURE__ */ React53.createElement("feOffset", null),
3968
- /* @__PURE__ */ React53.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3969
- /* @__PURE__ */ React53.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3970
- /* @__PURE__ */ React53.createElement(
3967
+ /* @__PURE__ */ React51.createElement("feOffset", null),
3968
+ /* @__PURE__ */ React51.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
3969
+ /* @__PURE__ */ React51.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
3970
+ /* @__PURE__ */ React51.createElement(
3971
3971
  "feColorMatrix",
3972
3972
  {
3973
3973
  type: "matrix",
3974
3974
  values: "0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.04 0"
3975
3975
  }
3976
3976
  ),
3977
- /* @__PURE__ */ React53.createElement(
3977
+ /* @__PURE__ */ React51.createElement(
3978
3978
  "feBlend",
3979
3979
  {
3980
3980
  mode: "normal",
@@ -3982,7 +3982,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3982
3982
  result: "effect1_innerShadow_2320_122784"
3983
3983
  }
3984
3984
  )
3985
- ), /* @__PURE__ */ React53.createElement(
3985
+ ), /* @__PURE__ */ React51.createElement(
3986
3986
  "filter",
3987
3987
  {
3988
3988
  id: "filter3_i_2320_122784",
@@ -3993,8 +3993,8 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
3993
3993
  filterUnits: "userSpaceOnUse",
3994
3994
  colorInterpolationFilters: "sRGB"
3995
3995
  },
3996
- /* @__PURE__ */ React53.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3997
- /* @__PURE__ */ React53.createElement(
3996
+ /* @__PURE__ */ React51.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
3997
+ /* @__PURE__ */ React51.createElement(
3998
3998
  "feBlend",
3999
3999
  {
4000
4000
  mode: "normal",
@@ -4003,7 +4003,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4003
4003
  result: "shape"
4004
4004
  }
4005
4005
  ),
4006
- /* @__PURE__ */ React53.createElement(
4006
+ /* @__PURE__ */ React51.createElement(
4007
4007
  "feColorMatrix",
4008
4008
  {
4009
4009
  in: "SourceAlpha",
@@ -4012,17 +4012,17 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4012
4012
  result: "hardAlpha"
4013
4013
  }
4014
4014
  ),
4015
- /* @__PURE__ */ React53.createElement("feOffset", null),
4016
- /* @__PURE__ */ React53.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
4017
- /* @__PURE__ */ React53.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
4018
- /* @__PURE__ */ React53.createElement(
4015
+ /* @__PURE__ */ React51.createElement("feOffset", null),
4016
+ /* @__PURE__ */ React51.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
4017
+ /* @__PURE__ */ React51.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
4018
+ /* @__PURE__ */ React51.createElement(
4019
4019
  "feColorMatrix",
4020
4020
  {
4021
4021
  type: "matrix",
4022
4022
  values: "0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.04 0"
4023
4023
  }
4024
4024
  ),
4025
- /* @__PURE__ */ React53.createElement(
4025
+ /* @__PURE__ */ React51.createElement(
4026
4026
  "feBlend",
4027
4027
  {
4028
4028
  mode: "normal",
@@ -4030,7 +4030,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4030
4030
  result: "effect1_innerShadow_2320_122784"
4031
4031
  }
4032
4032
  )
4033
- ), /* @__PURE__ */ React53.createElement(
4033
+ ), /* @__PURE__ */ React51.createElement(
4034
4034
  "filter",
4035
4035
  {
4036
4036
  id: "filter4_i_2320_122784",
@@ -4041,8 +4041,8 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4041
4041
  filterUnits: "userSpaceOnUse",
4042
4042
  colorInterpolationFilters: "sRGB"
4043
4043
  },
4044
- /* @__PURE__ */ React53.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
4045
- /* @__PURE__ */ React53.createElement(
4044
+ /* @__PURE__ */ React51.createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
4045
+ /* @__PURE__ */ React51.createElement(
4046
4046
  "feBlend",
4047
4047
  {
4048
4048
  mode: "normal",
@@ -4051,7 +4051,7 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4051
4051
  result: "shape"
4052
4052
  }
4053
4053
  ),
4054
- /* @__PURE__ */ React53.createElement(
4054
+ /* @__PURE__ */ React51.createElement(
4055
4055
  "feColorMatrix",
4056
4056
  {
4057
4057
  in: "SourceAlpha",
@@ -4060,17 +4060,17 @@ var InstitutionIcon = ({ size = 18, ...props }) => /* @__PURE__ */ React53.creat
4060
4060
  result: "hardAlpha"
4061
4061
  }
4062
4062
  ),
4063
- /* @__PURE__ */ React53.createElement("feOffset", null),
4064
- /* @__PURE__ */ React53.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
4065
- /* @__PURE__ */ React53.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
4066
- /* @__PURE__ */ React53.createElement(
4063
+ /* @__PURE__ */ React51.createElement("feOffset", null),
4064
+ /* @__PURE__ */ React51.createElement("feGaussianBlur", { stdDeviation: "0.5" }),
4065
+ /* @__PURE__ */ React51.createElement("feComposite", { in2: "hardAlpha", operator: "arithmetic", k2: "-1", k3: "1" }),
4066
+ /* @__PURE__ */ React51.createElement(
4067
4067
  "feColorMatrix",
4068
4068
  {
4069
4069
  type: "matrix",
4070
4070
  values: "0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.04 0"
4071
4071
  }
4072
4072
  ),
4073
- /* @__PURE__ */ React53.createElement(
4073
+ /* @__PURE__ */ React51.createElement(
4074
4074
  "feBlend",
4075
4075
  {
4076
4076
  mode: "normal",
@@ -4392,7 +4392,7 @@ var useElementSize = (callback) => {
4392
4392
 
4393
4393
  // src/utils/helpers.ts
4394
4394
  var range = (start, end) => {
4395
- let length = end - start + 1;
4395
+ const length = end - start + 1;
4396
4396
  return Array.from({ length }, (_, idx) => idx + start);
4397
4397
  };
4398
4398
  var debounce = (fnc, timeout = 300) => {
@@ -4412,8 +4412,8 @@ var import_react74 = __toESM(require("react"));
4412
4412
  var import_react73 = __toESM(require("react"));
4413
4413
 
4414
4414
  // src/icons/ChevronDownFill.tsx
4415
- var React59 = __toESM(require("react"));
4416
- var ChevronDownFill = ({ size = 18, ...props }) => /* @__PURE__ */ React59.createElement(
4415
+ var React57 = __toESM(require("react"));
4416
+ var ChevronDownFill = ({ size = 18, ...props }) => /* @__PURE__ */ React57.createElement(
4417
4417
  "svg",
4418
4418
  {
4419
4419
  xmlns: "http://www.w3.org/2000/svg",
@@ -4423,8 +4423,8 @@ var ChevronDownFill = ({ size = 18, ...props }) => /* @__PURE__ */ React59.creat
4423
4423
  width: size,
4424
4424
  height: size
4425
4425
  },
4426
- /* @__PURE__ */ React59.createElement("path", { d: "M4.5 6.75L9 11.25L13.5 6.75", fill: "currentColor" }),
4427
- /* @__PURE__ */ React59.createElement(
4426
+ /* @__PURE__ */ React57.createElement("path", { d: "M4.5 6.75L9 11.25L13.5 6.75", fill: "currentColor" }),
4427
+ /* @__PURE__ */ React57.createElement(
4428
4428
  "path",
4429
4429
  {
4430
4430
  d: "M4.5 6.75L9 11.25L13.5 6.75H4.5Z",
@@ -4440,8 +4440,8 @@ var ChevronDownFill_default = ChevronDownFill;
4440
4440
  var import_react71 = __toESM(require("react"));
4441
4441
 
4442
4442
  // src/icons/Scissors.tsx
4443
- var React60 = __toESM(require("react"));
4444
- var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElement(
4443
+ var React58 = __toESM(require("react"));
4444
+ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React58.createElement(
4445
4445
  "svg",
4446
4446
  {
4447
4447
  viewBox: "0 0 11 11",
@@ -4451,7 +4451,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4451
4451
  width: size,
4452
4452
  height: size
4453
4453
  },
4454
- /* @__PURE__ */ React60.createElement(
4454
+ /* @__PURE__ */ React58.createElement(
4455
4455
  "path",
4456
4456
  {
4457
4457
  d: "M2.75 4.125C3.50939 4.125 4.125 3.50939 4.125 2.75C4.125 1.99061 3.50939 1.375 2.75 1.375C1.99061 1.375 1.375 1.99061 1.375 2.75C1.375 3.50939 1.99061 4.125 2.75 4.125Z",
@@ -4459,7 +4459,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4459
4459
  strokeLinecap: "round",
4460
4460
  strokeLinejoin: "round"
4461
4461
  },
4462
- /* @__PURE__ */ React60.createElement(
4462
+ /* @__PURE__ */ React58.createElement(
4463
4463
  "animate",
4464
4464
  {
4465
4465
  attributeName: "d",
@@ -4474,7 +4474,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4474
4474
  }
4475
4475
  )
4476
4476
  ),
4477
- /* @__PURE__ */ React60.createElement(
4477
+ /* @__PURE__ */ React58.createElement(
4478
4478
  "path",
4479
4479
  {
4480
4480
  d: "M2.75 9.625C3.50939 9.625 4.125 9.00939 4.125 8.25C4.125 7.49061 3.50939 6.875 2.75 6.875C1.99061 6.875 1.375 7.49061 1.375 8.25C1.375 9.00939 1.99061 9.625 2.75 9.625Z",
@@ -4482,7 +4482,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4482
4482
  strokeLinecap: "round",
4483
4483
  strokeLinejoin: "round"
4484
4484
  },
4485
- /* @__PURE__ */ React60.createElement(
4485
+ /* @__PURE__ */ React58.createElement(
4486
4486
  "animate",
4487
4487
  {
4488
4488
  attributeName: "d",
@@ -4497,7 +4497,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4497
4497
  }
4498
4498
  )
4499
4499
  ),
4500
- /* @__PURE__ */ React60.createElement(
4500
+ /* @__PURE__ */ React58.createElement(
4501
4501
  "path",
4502
4502
  {
4503
4503
  d: "M9.16668 1.83325L3.72168 7.27825",
@@ -4505,7 +4505,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4505
4505
  strokeLinecap: "round",
4506
4506
  strokeLinejoin: "round"
4507
4507
  },
4508
- /* @__PURE__ */ React60.createElement(
4508
+ /* @__PURE__ */ React58.createElement(
4509
4509
  "animate",
4510
4510
  {
4511
4511
  attributeName: "d",
@@ -4520,7 +4520,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4520
4520
  }
4521
4521
  )
4522
4522
  ),
4523
- /* @__PURE__ */ React60.createElement(
4523
+ /* @__PURE__ */ React58.createElement(
4524
4524
  "path",
4525
4525
  {
4526
4526
  d: "M6.63232 6.63672L9.16691 9.16672",
@@ -4528,7 +4528,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4528
4528
  strokeLinecap: "round",
4529
4529
  strokeLinejoin: "round"
4530
4530
  },
4531
- /* @__PURE__ */ React60.createElement(
4531
+ /* @__PURE__ */ React58.createElement(
4532
4532
  "animate",
4533
4533
  {
4534
4534
  attributeName: "d",
@@ -4543,7 +4543,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4543
4543
  }
4544
4544
  )
4545
4545
  ),
4546
- /* @__PURE__ */ React60.createElement(
4546
+ /* @__PURE__ */ React58.createElement(
4547
4547
  "path",
4548
4548
  {
4549
4549
  d: "M3.72168 3.72168L5.50001 5.50001",
@@ -4551,7 +4551,7 @@ var Scissors = ({ size = 11, ...props }) => /* @__PURE__ */ React60.createElemen
4551
4551
  strokeLinecap: "round",
4552
4552
  strokeLinejoin: "round"
4553
4553
  },
4554
- /* @__PURE__ */ React60.createElement(
4554
+ /* @__PURE__ */ React58.createElement(
4555
4555
  "animate",
4556
4556
  {
4557
4557
  attributeName: "d",
@@ -4574,8 +4574,8 @@ var import_react56 = __toESM(require("react"));
4574
4574
  var import_react_select = __toESM(require("react-select"));
4575
4575
 
4576
4576
  // src/icons/Check.tsx
4577
- var React61 = __toESM(require("react"));
4578
- var Check = ({ size = 18, ...props }) => /* @__PURE__ */ React61.createElement(
4577
+ var React59 = __toESM(require("react"));
4578
+ var Check = ({ size = 18, ...props }) => /* @__PURE__ */ React59.createElement(
4579
4579
  "svg",
4580
4580
  {
4581
4581
  viewBox: "0 0 18 18",
@@ -4585,7 +4585,7 @@ var Check = ({ size = 18, ...props }) => /* @__PURE__ */ React61.createElement(
4585
4585
  width: size,
4586
4586
  height: size
4587
4587
  },
4588
- /* @__PURE__ */ React61.createElement(
4588
+ /* @__PURE__ */ React59.createElement(
4589
4589
  "path",
4590
4590
  {
4591
4591
  d: "M15 4.5L6.75 12.75L3 9",
@@ -4598,8 +4598,8 @@ var Check = ({ size = 18, ...props }) => /* @__PURE__ */ React61.createElement(
4598
4598
  var Check_default = Check;
4599
4599
 
4600
4600
  // src/icons/ChevronDown.tsx
4601
- var React62 = __toESM(require("react"));
4602
- var ChevronDown = ({ size = 18, ...props }) => /* @__PURE__ */ React62.createElement(
4601
+ var React60 = __toESM(require("react"));
4602
+ var ChevronDown = ({ size = 18, ...props }) => /* @__PURE__ */ React60.createElement(
4603
4603
  "svg",
4604
4604
  {
4605
4605
  viewBox: "0 0 18 18",
@@ -4609,7 +4609,7 @@ var ChevronDown = ({ size = 18, ...props }) => /* @__PURE__ */ React62.createEle
4609
4609
  width: size,
4610
4610
  height: size
4611
4611
  },
4612
- /* @__PURE__ */ React62.createElement(
4612
+ /* @__PURE__ */ React60.createElement(
4613
4613
  "path",
4614
4614
  {
4615
4615
  d: "M4.5 6.75L9 11.25L13.5 6.75",
@@ -4622,8 +4622,8 @@ var ChevronDown = ({ size = 18, ...props }) => /* @__PURE__ */ React62.createEle
4622
4622
  var ChevronDown_default = ChevronDown;
4623
4623
 
4624
4624
  // src/icons/MinimizeTwo.tsx
4625
- var React63 = __toESM(require("react"));
4626
- var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React63.createElement(
4625
+ var React61 = __toESM(require("react"));
4626
+ var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React61.createElement(
4627
4627
  "svg",
4628
4628
  {
4629
4629
  xmlns: "http://www.w3.org/2000/svg",
@@ -4633,7 +4633,7 @@ var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React63.createEle
4633
4633
  width: size,
4634
4634
  height: size
4635
4635
  },
4636
- /* @__PURE__ */ React63.createElement(
4636
+ /* @__PURE__ */ React61.createElement(
4637
4637
  "path",
4638
4638
  {
4639
4639
  d: "M3 10.5H7.5V15",
@@ -4642,7 +4642,7 @@ var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React63.createEle
4642
4642
  strokeLinejoin: "round"
4643
4643
  }
4644
4644
  ),
4645
- /* @__PURE__ */ React63.createElement(
4645
+ /* @__PURE__ */ React61.createElement(
4646
4646
  "path",
4647
4647
  {
4648
4648
  d: "M15 7.5H10.5V3",
@@ -4651,7 +4651,7 @@ var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React63.createEle
4651
4651
  strokeLinejoin: "round"
4652
4652
  }
4653
4653
  ),
4654
- /* @__PURE__ */ React63.createElement(
4654
+ /* @__PURE__ */ React61.createElement(
4655
4655
  "path",
4656
4656
  {
4657
4657
  d: "M10.5 7.5L15.75 2.25",
@@ -4660,7 +4660,7 @@ var MinimizeTwo = ({ size = 18, ...props }) => /* @__PURE__ */ React63.createEle
4660
4660
  strokeLinejoin: "round"
4661
4661
  }
4662
4662
  ),
4663
- /* @__PURE__ */ React63.createElement(
4663
+ /* @__PURE__ */ React61.createElement(
4664
4664
  "path",
4665
4665
  {
4666
4666
  d: "M2.25 15.75L7.5 10.5",
@@ -4954,16 +4954,16 @@ function flattenCategories2(categories) {
4954
4954
  if (!category.subCategories || category.subCategories.length === 0) {
4955
4955
  return [category];
4956
4956
  }
4957
- return category.subCategories.flatMap((subCategory) => getLeafCategories(subCategory));
4957
+ return category.subCategories.flatMap(
4958
+ (subCategory) => getLeafCategories(subCategory)
4959
+ );
4958
4960
  }
4959
- return categories.map(
4960
- (category) => {
4961
- return {
4962
- label: category.display_name,
4963
- options: getLeafCategories(category).map((x) => mapCategoryToOption2(x))
4964
- };
4965
- }
4966
- );
4961
+ return categories.map((category) => {
4962
+ return {
4963
+ label: category.display_name,
4964
+ options: getLeafCategories(category).map((x) => mapCategoryToOption2(x))
4965
+ };
4966
+ });
4967
4967
  }
4968
4968
  var CategorySelect = ({
4969
4969
  bankTransaction,
@@ -5046,8 +5046,8 @@ var CategorySelect = ({
5046
5046
  var import_react69 = __toESM(require("react"));
5047
5047
 
5048
5048
  // src/icons/ScissorsFullOpen.tsx
5049
- var React68 = __toESM(require("react"));
5050
- var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.createElement(
5049
+ var React66 = __toESM(require("react"));
5050
+ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React66.createElement(
5051
5051
  "svg",
5052
5052
  {
5053
5053
  viewBox: "0 0 12 12",
@@ -5057,7 +5057,7 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5057
5057
  width: size,
5058
5058
  height: size
5059
5059
  },
5060
- /* @__PURE__ */ React68.createElement("g", { id: "scissors" }, /* @__PURE__ */ React68.createElement(
5060
+ /* @__PURE__ */ React66.createElement("g", { id: "scissors" }, /* @__PURE__ */ React66.createElement(
5061
5061
  "path",
5062
5062
  {
5063
5063
  id: "Vector",
@@ -5066,7 +5066,7 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5066
5066
  strokeLinecap: "round",
5067
5067
  strokeLinejoin: "round"
5068
5068
  }
5069
- ), /* @__PURE__ */ React68.createElement(
5069
+ ), /* @__PURE__ */ React66.createElement(
5070
5070
  "path",
5071
5071
  {
5072
5072
  id: "Vector_2",
@@ -5075,7 +5075,7 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5075
5075
  strokeLinecap: "round",
5076
5076
  strokeLinejoin: "round"
5077
5077
  }
5078
- ), /* @__PURE__ */ React68.createElement(
5078
+ ), /* @__PURE__ */ React66.createElement(
5079
5079
  "path",
5080
5080
  {
5081
5081
  id: "Vector_3",
@@ -5084,7 +5084,7 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5084
5084
  strokeLinecap: "round",
5085
5085
  strokeLinejoin: "round"
5086
5086
  }
5087
- ), /* @__PURE__ */ React68.createElement(
5087
+ ), /* @__PURE__ */ React66.createElement(
5088
5088
  "path",
5089
5089
  {
5090
5090
  id: "Vector_4",
@@ -5093,7 +5093,7 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5093
5093
  strokeLinecap: "round",
5094
5094
  strokeLinejoin: "round"
5095
5095
  }
5096
- ), /* @__PURE__ */ React68.createElement(
5096
+ ), /* @__PURE__ */ React66.createElement(
5097
5097
  "path",
5098
5098
  {
5099
5099
  id: "Vector_5",
@@ -5107,8 +5107,8 @@ var ScissorsFullOpen = ({ size = 12, ...props }) => /* @__PURE__ */ React68.crea
5107
5107
  var ScissorsFullOpen_default = ScissorsFullOpen;
5108
5108
 
5109
5109
  // src/icons/Trash.tsx
5110
- var React69 = __toESM(require("react"));
5111
- var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React69.createElement(
5110
+ var React67 = __toESM(require("react"));
5111
+ var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React67.createElement(
5112
5112
  "svg",
5113
5113
  {
5114
5114
  xmlns: "http://www.w3.org/2000/svg",
@@ -5118,7 +5118,7 @@ var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React69.createElement(
5118
5118
  width: size,
5119
5119
  height: size
5120
5120
  },
5121
- /* @__PURE__ */ React69.createElement(
5121
+ /* @__PURE__ */ React67.createElement(
5122
5122
  "path",
5123
5123
  {
5124
5124
  d: "M2.25 4.5H3.75H15.75",
@@ -5127,7 +5127,7 @@ var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React69.createElement(
5127
5127
  strokeLinejoin: "round"
5128
5128
  }
5129
5129
  ),
5130
- /* @__PURE__ */ React69.createElement(
5130
+ /* @__PURE__ */ React67.createElement(
5131
5131
  "path",
5132
5132
  {
5133
5133
  d: "M14.25 4.5V15C14.25 15.3978 14.092 15.7794 13.8107 16.0607C13.5294 16.342 13.1478 16.5 12.75 16.5H5.25C4.85218 16.5 4.47064 16.342 4.18934 16.0607C3.90804 15.7794 3.75 15.3978 3.75 15V4.5M6 4.5V3C6 2.60218 6.15804 2.22064 6.43934 1.93934C6.72064 1.65804 7.10218 1.5 7.5 1.5H10.5C10.8978 1.5 11.2794 1.65804 11.5607 1.93934C11.842 2.22064 12 2.60218 12 3V4.5",
@@ -5136,7 +5136,7 @@ var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React69.createElement(
5136
5136
  strokeLinejoin: "round"
5137
5137
  }
5138
5138
  ),
5139
- /* @__PURE__ */ React69.createElement(
5139
+ /* @__PURE__ */ React67.createElement(
5140
5140
  "path",
5141
5141
  {
5142
5142
  d: "M7.5 8.25V12.75",
@@ -5145,7 +5145,7 @@ var Trash = ({ size = 18, ...props }) => /* @__PURE__ */ React69.createElement(
5145
5145
  strokeLinejoin: "round"
5146
5146
  }
5147
5147
  ),
5148
- /* @__PURE__ */ React69.createElement(
5148
+ /* @__PURE__ */ React67.createElement(
5149
5149
  "path",
5150
5150
  {
5151
5151
  d: "M10.5 8.25V12.75",
@@ -5207,8 +5207,8 @@ var InputGroup = ({
5207
5207
  var import_react59 = __toESM(require("react"));
5208
5208
 
5209
5209
  // src/icons/UploadCloud.tsx
5210
- var React72 = __toESM(require("react"));
5211
- var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React72.createElement(
5210
+ var React70 = __toESM(require("react"));
5211
+ var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React70.createElement(
5212
5212
  "svg",
5213
5213
  {
5214
5214
  viewBox: "0 0 18 18",
@@ -5218,7 +5218,7 @@ var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React72.createEle
5218
5218
  width: size,
5219
5219
  height: size
5220
5220
  },
5221
- /* @__PURE__ */ React72.createElement(
5221
+ /* @__PURE__ */ React70.createElement(
5222
5222
  "path",
5223
5223
  {
5224
5224
  d: "M12 12L9 9L6 12",
@@ -5227,7 +5227,7 @@ var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React72.createEle
5227
5227
  strokeLinejoin: "round"
5228
5228
  }
5229
5229
  ),
5230
- /* @__PURE__ */ React72.createElement(
5230
+ /* @__PURE__ */ React70.createElement(
5231
5231
  "path",
5232
5232
  {
5233
5233
  d: "M9 9V15.75",
@@ -5236,7 +5236,7 @@ var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React72.createEle
5236
5236
  strokeLinejoin: "round"
5237
5237
  }
5238
5238
  ),
5239
- /* @__PURE__ */ React72.createElement(
5239
+ /* @__PURE__ */ React70.createElement(
5240
5240
  "path",
5241
5241
  {
5242
5242
  d: "M15.2925 13.7925C16.024 13.3937 16.6019 12.7626 16.9349 11.999C17.2679 11.2353 17.3372 10.3824 17.1317 9.57501C16.9262 8.7676 16.4576 8.05162 15.8 7.54007C15.1424 7.02852 14.3332 6.75054 13.5 6.74999H12.555C12.328 5.87192 11.9049 5.05674 11.3175 4.36573C10.7301 3.67473 9.99364 3.12588 9.16358 2.76044C8.33352 2.39501 7.43141 2.22251 6.52509 2.2559C5.61876 2.28929 4.7318 2.52771 3.93088 2.95324C3.12997 3.37876 2.43593 3.98032 1.90097 4.71267C1.366 5.44503 1.00402 6.28914 0.842236 7.18153C0.680453 8.07393 0.72308 8.99139 0.966911 9.86493C1.21074 10.7385 1.64943 11.5454 2.25 12.225",
@@ -5245,7 +5245,7 @@ var UploadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React72.createEle
5245
5245
  strokeLinejoin: "round"
5246
5246
  }
5247
5247
  ),
5248
- /* @__PURE__ */ React72.createElement(
5248
+ /* @__PURE__ */ React70.createElement(
5249
5249
  "path",
5250
5250
  {
5251
5251
  d: "M12 12L9 9L6 12",
@@ -5647,7 +5647,7 @@ var Toggle = ({
5647
5647
  updateThumbPosition(selectedIndex);
5648
5648
  }, [currentWidth]);
5649
5649
  const getSelectedIndex = () => {
5650
- let selectedIndex = options.findIndex(
5650
+ const selectedIndex = options.findIndex(
5651
5651
  (option) => option.value === selectedValue
5652
5652
  );
5653
5653
  if (selectedIndex === -1) {
@@ -5687,7 +5687,7 @@ var ToggleOption = ({
5687
5687
  return /* @__PURE__ */ import_react67.default.createElement(Tooltip, null, /* @__PURE__ */ import_react67.default.createElement(TooltipTrigger, null, /* @__PURE__ */ import_react67.default.createElement(
5688
5688
  "label",
5689
5689
  {
5690
- className: `Layer__toggle-option`,
5690
+ className: "Layer__toggle-option",
5691
5691
  "data-checked": checked,
5692
5692
  style
5693
5693
  },
@@ -5709,7 +5709,7 @@ var ToggleOption = ({
5709
5709
  return /* @__PURE__ */ import_react67.default.createElement(
5710
5710
  "label",
5711
5711
  {
5712
- className: `Layer__toggle-option`,
5712
+ className: "Layer__toggle-option",
5713
5713
  "data-checked": checked,
5714
5714
  style
5715
5715
  },
@@ -7789,20 +7789,20 @@ var usePagination = ({
7789
7789
  const firstPageIndex = 1;
7790
7790
  const lastPageIndex = totalPageCount;
7791
7791
  if (!shouldShowLeftDots && shouldShowRightDots) {
7792
- let leftItemCount = 3 + 2 * siblingCount;
7793
- let leftRange = range(1, leftItemCount);
7792
+ const leftItemCount = 3 + 2 * siblingCount;
7793
+ const leftRange = range(1, leftItemCount);
7794
7794
  return [...leftRange, DOTS, totalPageCount];
7795
7795
  }
7796
7796
  if (shouldShowLeftDots && !shouldShowRightDots) {
7797
- let rightItemCount = 3 + 2 * siblingCount;
7798
- let rightRange = range(
7797
+ const rightItemCount = 3 + 2 * siblingCount;
7798
+ const rightRange = range(
7799
7799
  totalPageCount - rightItemCount + 1,
7800
7800
  totalPageCount
7801
7801
  );
7802
7802
  return [firstPageIndex, DOTS, ...rightRange];
7803
7803
  }
7804
7804
  if (shouldShowLeftDots && shouldShowRightDots) {
7805
- let middleRange = range(leftSiblingIndex, rightSiblingIndex);
7805
+ const middleRange = range(leftSiblingIndex, rightSiblingIndex);
7806
7806
  return [firstPageIndex, DOTS, ...middleRange, DOTS, lastPageIndex];
7807
7807
  }
7808
7808
  }, [totalCount, pageSize, siblingCount, currentPage]);
@@ -7810,8 +7810,8 @@ var usePagination = ({
7810
7810
  };
7811
7811
 
7812
7812
  // src/icons/ChevronLeft.tsx
7813
- var React104 = __toESM(require("react"));
7814
- var ChevronLeft = ({ size = 18, ...props }) => /* @__PURE__ */ React104.createElement(
7813
+ var React102 = __toESM(require("react"));
7814
+ var ChevronLeft = ({ ...props }) => /* @__PURE__ */ React102.createElement(
7815
7815
  "svg",
7816
7816
  {
7817
7817
  xmlns: "http://www.w3.org/2000/svg",
@@ -7821,7 +7821,7 @@ var ChevronLeft = ({ size = 18, ...props }) => /* @__PURE__ */ React104.createEl
7821
7821
  fill: "none",
7822
7822
  ...props
7823
7823
  },
7824
- /* @__PURE__ */ React104.createElement(
7824
+ /* @__PURE__ */ React102.createElement(
7825
7825
  "path",
7826
7826
  {
7827
7827
  d: "M11.25 13.5L6.75 9L11.25 4.5",
@@ -7856,11 +7856,11 @@ var Pagination = ({
7856
7856
  if (currentPage === 0 || paginationRange.length < 2) {
7857
7857
  return;
7858
7858
  }
7859
- let lastPage = paginationRange[paginationRange.length - 1];
7859
+ const lastPage = paginationRange[paginationRange.length - 1];
7860
7860
  return /* @__PURE__ */ import_react92.default.createElement("ul", { className: "Layer__pagination" }, /* @__PURE__ */ import_react92.default.createElement(
7861
7861
  "li",
7862
7862
  {
7863
- key: `page-prev`,
7863
+ key: "page-prev",
7864
7864
  className: (0, import_classnames41.default)(
7865
7865
  "Layer__pagination-item Layer__pagination-arrow Layer__pagination-arrow--previous",
7866
7866
  {
@@ -7902,7 +7902,7 @@ var Pagination = ({
7902
7902
  }), hasMore && fetchMore ? /* @__PURE__ */ import_react92.default.createElement(
7903
7903
  "li",
7904
7904
  {
7905
- key: `page-has-more`,
7905
+ key: "page-has-more",
7906
7906
  className: "Layer__pagination-item Layer__pagination-arrow Layer__pagination-arrow--next",
7907
7907
  onClick: fetchMore
7908
7908
  },
@@ -7910,7 +7910,7 @@ var Pagination = ({
7910
7910
  ) : null, /* @__PURE__ */ import_react92.default.createElement(
7911
7911
  "li",
7912
7912
  {
7913
- key: `page-last`,
7913
+ key: "page-last",
7914
7914
  className: (0, import_classnames41.default)(
7915
7915
  "Layer__pagination-item Layer__pagination-arrow Layer__pagination-arrow--next",
7916
7916
  {
@@ -7927,8 +7927,8 @@ var Pagination = ({
7927
7927
  var import_react95 = __toESM(require("react"));
7928
7928
 
7929
7929
  // src/icons/DownloadCloud.tsx
7930
- var React106 = __toESM(require("react"));
7931
- var DownloadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React106.createElement(
7930
+ var React104 = __toESM(require("react"));
7931
+ var DownloadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React104.createElement(
7932
7932
  "svg",
7933
7933
  {
7934
7934
  xmlns: "http://www.w3.org/2000/svg",
@@ -7938,7 +7938,7 @@ var DownloadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React106.create
7938
7938
  width: size,
7939
7939
  height: size
7940
7940
  },
7941
- /* @__PURE__ */ React106.createElement(
7941
+ /* @__PURE__ */ React104.createElement(
7942
7942
  "path",
7943
7943
  {
7944
7944
  d: "M6 12.75L9 15.75L12 12.75",
@@ -7947,7 +7947,7 @@ var DownloadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React106.create
7947
7947
  strokeLinejoin: "round"
7948
7948
  }
7949
7949
  ),
7950
- /* @__PURE__ */ React106.createElement(
7950
+ /* @__PURE__ */ React104.createElement(
7951
7951
  "path",
7952
7952
  {
7953
7953
  d: "M9 9V15.75",
@@ -7956,7 +7956,7 @@ var DownloadCloud = ({ size = 18, ...props }) => /* @__PURE__ */ React106.create
7956
7956
  strokeLinejoin: "round"
7957
7957
  }
7958
7958
  ),
7959
- /* @__PURE__ */ React106.createElement(
7959
+ /* @__PURE__ */ React104.createElement(
7960
7960
  "path",
7961
7961
  {
7962
7962
  d: "M15.66 13.5675C16.3121 13.109 16.801 12.4546 17.056 11.6994C17.3109 10.9441 17.3186 10.1273 17.0778 9.36737C16.837 8.60748 16.3604 7.94407 15.7171 7.47342C15.0737 7.00278 14.2971 6.74938 13.5 6.75H12.555C12.3294 5.87091 11.9074 5.05444 11.3206 4.36206C10.7338 3.66969 9.99762 3.11945 9.16742 2.75277C8.33721 2.38609 7.43464 2.21252 6.52766 2.24514C5.62067 2.27776 4.7329 2.51571 3.93118 2.94107C3.12946 3.36644 2.43468 3.96814 1.89915 4.70087C1.36362 5.43361 1.0013 6.27829 0.839456 7.17132C0.677613 8.06434 0.720468 8.98245 0.964796 9.85652C1.20912 10.7306 1.64856 11.5378 2.25001 12.2175",
@@ -8009,7 +8009,7 @@ var DatePickerOptions = ({
8009
8009
  options,
8010
8010
  setSelectedDate
8011
8011
  }) => {
8012
- let optionsComponents = [];
8012
+ const optionsComponents = [];
8013
8013
  const getOptionComponent = (option) => {
8014
8014
  switch (option) {
8015
8015
  case "this-month":
@@ -8506,8 +8506,8 @@ var BankTransactionsHeader = ({
8506
8506
  var import_react96 = __toESM(require("react"));
8507
8507
 
8508
8508
  // src/icons/Inbox.tsx
8509
- var React110 = __toESM(require("react"));
8510
- var Inbox = ({ size = 18, ...props }) => /* @__PURE__ */ React110.createElement(
8509
+ var React108 = __toESM(require("react"));
8510
+ var Inbox = ({ size = 18, ...props }) => /* @__PURE__ */ React108.createElement(
8511
8511
  "svg",
8512
8512
  {
8513
8513
  xmlns: "http://www.w3.org/2000/svg",
@@ -8517,7 +8517,7 @@ var Inbox = ({ size = 18, ...props }) => /* @__PURE__ */ React110.createElement(
8517
8517
  width: size,
8518
8518
  height: size
8519
8519
  },
8520
- /* @__PURE__ */ React110.createElement(
8520
+ /* @__PURE__ */ React108.createElement(
8521
8521
  "path",
8522
8522
  {
8523
8523
  d: "M16.5 9H12L10.5 11.25H7.5L6 9H1.5",
@@ -8526,7 +8526,7 @@ var Inbox = ({ size = 18, ...props }) => /* @__PURE__ */ React110.createElement(
8526
8526
  strokeLinejoin: "round"
8527
8527
  }
8528
8528
  ),
8529
- /* @__PURE__ */ React110.createElement(
8529
+ /* @__PURE__ */ React108.createElement(
8530
8530
  "path",
8531
8531
  {
8532
8532
  d: "M4.0875 3.8325L1.5 9V13.5C1.5 13.8978 1.65804 14.2794 1.93934 14.5607C2.22064 14.842 2.60218 15 3 15H15C15.3978 15 15.7794 14.842 16.0607 14.5607C16.342 14.2794 16.5 13.8978 16.5 13.5V9L13.9125 3.8325C13.7883 3.58259 13.5969 3.37228 13.3597 3.22521C13.1226 3.07814 12.8491 3.00015 12.57 3H5.43C5.15094 3.00015 4.87745 3.07814 4.64028 3.22521C4.40312 3.37228 4.21168 3.58259 4.0875 3.8325Z",
@@ -8547,8 +8547,8 @@ var DataStates = ({
8547
8547
  refetch,
8548
8548
  editable
8549
8549
  }) => {
8550
- let title = editable ? "You are up to date with transactions!" : "You have no categorized transactions";
8551
- let description = editable ? "All uncategorized transactions will be displayed here" : "All transactions will be displayed here once reviewed";
8550
+ const title = editable ? "You are up to date with transactions!" : "You have no categorized transactions";
8551
+ const description = editable ? "All uncategorized transactions will be displayed here" : "All transactions will be displayed here once reviewed";
8552
8552
  const showRefreshButton = bankTransactions?.length;
8553
8553
  return /* @__PURE__ */ import_react96.default.createElement(import_react96.default.Fragment, null, !isLoading && !error && (bankTransactions === void 0 || bankTransactions !== void 0 && bankTransactions.length === 0) ? /* @__PURE__ */ import_react96.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react96.default.createElement(
8554
8554
  DataState,
@@ -8913,10 +8913,10 @@ var PNLComparisonContext = (0, import_react100.createContext)({
8913
8913
  setCompareMonths: () => {
8914
8914
  },
8915
8915
  compareOptions: [],
8916
- setCompareOptions: function(options) {
8916
+ setCompareOptions: function() {
8917
8917
  throw new Error("Function not implemented.");
8918
8918
  },
8919
- refetch: function(dateRange) {
8919
+ refetch: function() {
8920
8920
  throw new Error("Function not implemented.");
8921
8921
  }
8922
8922
  });
@@ -8993,8 +8993,8 @@ var buildMonthsArray = (startDate, endDate) => {
8993
8993
  if (startDate >= endDate) {
8994
8994
  return [];
8995
8995
  }
8996
- var dates = [];
8997
- for (var d = startDate; d <= endDate; d.setMonth(d.getMonth() + 1)) {
8996
+ const dates = [];
8997
+ for (let d = startDate; d <= endDate; d.setMonth(d.getMonth() + 1)) {
8998
8998
  dates.push(new Date(d));
8999
8999
  }
9000
9000
  return dates;
@@ -9002,15 +9002,7 @@ var buildMonthsArray = (startDate, endDate) => {
9002
9002
  var useProfitAndLossLTM = ({ currentDate, tagFilter, reportingBasis } = {
9003
9003
  currentDate: (0, import_date_fns15.startOfMonth)(Date.now())
9004
9004
  }) => {
9005
- const {
9006
- businessId,
9007
- auth,
9008
- apiUrl,
9009
- syncTimestamps,
9010
- read,
9011
- readTimestamps,
9012
- hasBeenTouched
9013
- } = useLayerContext();
9005
+ const { businessId, auth, apiUrl, syncTimestamps, read, hasBeenTouched } = useLayerContext();
9014
9006
  const [date, setDate] = (0, import_react101.useState)(currentDate);
9015
9007
  const [loaded, setLoaded] = (0, import_react101.useState)("initial");
9016
9008
  const [data, setData] = (0, import_react101.useState)([]);
@@ -9520,8 +9512,8 @@ var import_react108 = __toESM(require("react"));
9520
9512
  var import_react106 = __toESM(require("react"));
9521
9513
 
9522
9514
  // src/icons/BarChart2.tsx
9523
- var React114 = __toESM(require("react"));
9524
- var BarChart2 = ({ size = 12, ...props }) => /* @__PURE__ */ React114.createElement(
9515
+ var React112 = __toESM(require("react"));
9516
+ var BarChart2 = ({ size = 12, ...props }) => /* @__PURE__ */ React112.createElement(
9525
9517
  "svg",
9526
9518
  {
9527
9519
  xmlns: "http://www.w3.org/2000/svg",
@@ -9531,31 +9523,31 @@ var BarChart2 = ({ size = 12, ...props }) => /* @__PURE__ */ React114.createElem
9531
9523
  width: size,
9532
9524
  height: size
9533
9525
  },
9534
- /* @__PURE__ */ React114.createElement(
9526
+ /* @__PURE__ */ React112.createElement(
9535
9527
  "path",
9536
9528
  {
9537
9529
  d: "M9.5 10V5",
9538
9530
  stroke: "currentColor",
9539
- "stroke-linecap": "round",
9540
- "stroke-linejoin": "round"
9531
+ strokeLinecap: "round",
9532
+ strokeLinejoin: "round"
9541
9533
  }
9542
9534
  ),
9543
- /* @__PURE__ */ React114.createElement(
9535
+ /* @__PURE__ */ React112.createElement(
9544
9536
  "path",
9545
9537
  {
9546
9538
  d: "M6.5 10V2",
9547
9539
  stroke: "currentColor",
9548
- "stroke-linecap": "round",
9549
- "stroke-linejoin": "round"
9540
+ strokeLinecap: "round",
9541
+ strokeLinejoin: "round"
9550
9542
  }
9551
9543
  ),
9552
- /* @__PURE__ */ React114.createElement(
9544
+ /* @__PURE__ */ React112.createElement(
9553
9545
  "path",
9554
9546
  {
9555
9547
  d: "M3.5 10V7",
9556
9548
  stroke: "currentColor",
9557
- "stroke-linecap": "round",
9558
- "stroke-linejoin": "round"
9549
+ strokeLinecap: "round",
9550
+ strokeLinejoin: "round"
9559
9551
  }
9560
9552
  )
9561
9553
  );
@@ -10383,7 +10375,9 @@ var ProfitAndLossCompareOptions = ({
10383
10375
  // src/components/ProfitAndLossDatePicker/ProfitAndLossDatePicker.tsx
10384
10376
  var import_react110 = __toESM(require("react"));
10385
10377
  var import_date_fns20 = require("date-fns");
10386
- var ProfitAndLossDatePicker = () => {
10378
+ var ProfitAndLossDatePicker = ({
10379
+ datePickerMode = "monthPicker"
10380
+ }) => {
10387
10381
  const { business } = useLayerContext();
10388
10382
  const { changeDateRange, dateRange } = (0, import_react110.useContext)(ProfitAndLoss.Context);
10389
10383
  const { refetch, compareMode, compareMonths } = (0, import_react110.useContext)(
@@ -10398,10 +10392,30 @@ var ProfitAndLossDatePicker = () => {
10398
10392
  }
10399
10393
  };
10400
10394
  const minDate = getEarliestDateToBrowse(business);
10395
+ if (datePickerMode === "dayRangePicker") {
10396
+ return /* @__PURE__ */ import_react110.default.createElement(
10397
+ DatePicker,
10398
+ {
10399
+ mode: datePickerMode,
10400
+ selected: [dateRange.startDate, dateRange.endDate],
10401
+ onChange: (dateSet) => {
10402
+ const dates = dateSet;
10403
+ if (dates.length === 2 && !!dates[0] && !!dates[1]) {
10404
+ changeDateRange({
10405
+ startDate: dates[0],
10406
+ endDate: dates[1]
10407
+ });
10408
+ }
10409
+ },
10410
+ minDate,
10411
+ dateFormat: "MMM d"
10412
+ }
10413
+ );
10414
+ }
10401
10415
  return /* @__PURE__ */ import_react110.default.createElement(
10402
10416
  DatePicker,
10403
10417
  {
10404
- mode: "monthPicker",
10418
+ mode: datePickerMode,
10405
10419
  selected: dateRange.startDate,
10406
10420
  onChange: (date) => {
10407
10421
  if (!Array.isArray(date)) {
@@ -10421,8 +10435,8 @@ var ProfitAndLossDatePicker = () => {
10421
10435
  var import_react114 = __toESM(require("react"));
10422
10436
 
10423
10437
  // src/icons/X.tsx
10424
- var React121 = __toESM(require("react"));
10425
- var X = ({ size = 18, ...props }) => /* @__PURE__ */ React121.createElement(
10438
+ var React119 = __toESM(require("react"));
10439
+ var X = ({ size = 18, ...props }) => /* @__PURE__ */ React119.createElement(
10426
10440
  "svg",
10427
10441
  {
10428
10442
  xmlns: "http://www.w3.org/2000/svg",
@@ -10432,7 +10446,7 @@ var X = ({ size = 18, ...props }) => /* @__PURE__ */ React121.createElement(
10432
10446
  width: size,
10433
10447
  height: size
10434
10448
  },
10435
- /* @__PURE__ */ React121.createElement(
10449
+ /* @__PURE__ */ React119.createElement(
10436
10450
  "path",
10437
10451
  {
10438
10452
  d: "M13.5 4.5L4.5 13.5",
@@ -10441,7 +10455,7 @@ var X = ({ size = 18, ...props }) => /* @__PURE__ */ React121.createElement(
10441
10455
  strokeLinejoin: "round"
10442
10456
  }
10443
10457
  ),
10444
- /* @__PURE__ */ React121.createElement(
10458
+ /* @__PURE__ */ React119.createElement(
10445
10459
  "path",
10446
10460
  {
10447
10461
  d: "M4.5 4.5L13.5 13.5",
@@ -10496,7 +10510,7 @@ var humanizeEnum = (text) => {
10496
10510
  var convertNumberToCurrency = (amount) => {
10497
10511
  if (!amount)
10498
10512
  return "";
10499
- let formattedValue = amount.toLocaleString("en-US");
10513
+ const formattedValue = amount.toLocaleString("en-US");
10500
10514
  return formattedValue.length > 0 ? `$${formattedValue}` : "";
10501
10515
  };
10502
10516
  var convertCurrencyToNumber = (amount) => amount.replace("$", "").replace(",", "").replace(/[^\d.]/g, "").replace(/(?!^)-/g, "").replace(/(\..*)\./g, "$1").replace(/(\.\d{2})\d+/, "$1").replace(/^0(?!\.)/, "");
@@ -10599,8 +10613,8 @@ var TASKS_CHARTS_COLORS = {
10599
10613
  };
10600
10614
 
10601
10615
  // src/icons/SortArrows.tsx
10602
- var React122 = __toESM(require("react"));
10603
- var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createElement(
10616
+ var React120 = __toESM(require("react"));
10617
+ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React120.createElement(
10604
10618
  "svg",
10605
10619
  {
10606
10620
  xmlns: "http://www.w3.org/2000/svg",
@@ -10610,7 +10624,7 @@ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createEle
10610
10624
  width: size,
10611
10625
  height: size
10612
10626
  },
10613
- /* @__PURE__ */ React122.createElement("g", { clipPath: "url(#clip0_1758_75388)" }, /* @__PURE__ */ React122.createElement(
10627
+ /* @__PURE__ */ React120.createElement("g", { clipPath: "url(#clip0_1758_75388)" }, /* @__PURE__ */ React120.createElement(
10614
10628
  "path",
10615
10629
  {
10616
10630
  d: "M1.33325 8.5L3.99992 11.1667L6.66659 8.5",
@@ -10619,7 +10633,7 @@ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createEle
10619
10633
  strokeLinejoin: "round",
10620
10634
  className: "desc-arrow"
10621
10635
  }
10622
- ), /* @__PURE__ */ React122.createElement(
10636
+ ), /* @__PURE__ */ React120.createElement(
10623
10637
  "path",
10624
10638
  {
10625
10639
  d: "M4 2.5L4 11.1667",
@@ -10628,7 +10642,7 @@ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createEle
10628
10642
  strokeLinejoin: "round",
10629
10643
  className: "desc-arrow"
10630
10644
  }
10631
- ), /* @__PURE__ */ React122.createElement(
10645
+ ), /* @__PURE__ */ React120.createElement(
10632
10646
  "path",
10633
10647
  {
10634
10648
  d: "M5.99988 5.16602L8.66654 2.49935L11.3332 5.16602",
@@ -10637,7 +10651,7 @@ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createEle
10637
10651
  strokeLinejoin: "round",
10638
10652
  className: "asc-arrow"
10639
10653
  }
10640
- ), /* @__PURE__ */ React122.createElement(
10654
+ ), /* @__PURE__ */ React120.createElement(
10641
10655
  "path",
10642
10656
  {
10643
10657
  d: "M8.66663 11.166L8.66663 2.49935",
@@ -10647,7 +10661,7 @@ var SortArrows = ({ size = 13, ...props }) => /* @__PURE__ */ React122.createEle
10647
10661
  className: "asc-arrow"
10648
10662
  }
10649
10663
  )),
10650
- /* @__PURE__ */ React122.createElement("defs", null, /* @__PURE__ */ React122.createElement("clipPath", { id: "clip0_1758_75388" }, /* @__PURE__ */ React122.createElement(
10664
+ /* @__PURE__ */ React120.createElement("defs", null, /* @__PURE__ */ React120.createElement("clipPath", { id: "clip0_1758_75388" }, /* @__PURE__ */ React120.createElement(
10651
10665
  "rect",
10652
10666
  {
10653
10667
  width: "12",
@@ -10755,7 +10769,6 @@ var DetailedTable = ({
10755
10769
  );
10756
10770
  };
10757
10771
  const typeColorMapping = mapTypesToColors(filteredData, chartColorsList);
10758
- const colorIndex = 0;
10759
10772
  return /* @__PURE__ */ import_react111.default.createElement("div", { className: "details-container" }, /* @__PURE__ */ import_react111.default.createElement("div", { className: "table" }, /* @__PURE__ */ import_react111.default.createElement("table", null, /* @__PURE__ */ import_react111.default.createElement("thead", null, /* @__PURE__ */ import_react111.default.createElement("tr", null, /* @__PURE__ */ import_react111.default.createElement(
10760
10773
  "th",
10761
10774
  {
@@ -10818,8 +10831,6 @@ var DetailedChart = ({
10818
10831
  filteredTotal,
10819
10832
  hoveredItem,
10820
10833
  setHoveredItem,
10821
- sidebarScope,
10822
- date,
10823
10834
  chartColorsList,
10824
10835
  isLoading,
10825
10836
  showDatePicker = true
@@ -11281,7 +11292,7 @@ var MiniChart = ({ data }) => {
11281
11292
  import_recharts3.Cell,
11282
11293
  {
11283
11294
  key: `cell-${index}`,
11284
- className: `Layer__profit-and-loss-detailed-charts__pie`,
11295
+ className: "Layer__profit-and-loss-detailed-charts__pie",
11285
11296
  fill: entry.name === "placeholder" ? "#e6e6e6" : colorConfig.color,
11286
11297
  opacity: colorConfig.opacity
11287
11298
  }
@@ -11536,7 +11547,7 @@ var getComparisonLineItemValue = (lineItem, name, depth) => {
11536
11547
  };
11537
11548
  var mergeComparisonLineItemsAtDepth = (lineItems) => {
11538
11549
  const map = /* @__PURE__ */ new Map();
11539
- const mergeItems = (items, depth) => {
11550
+ const mergeItems = (items) => {
11540
11551
  items.forEach((item) => {
11541
11552
  if (!map.has(item.display_name)) {
11542
11553
  map.set(item.display_name, { ...item, line_items: [] });
@@ -11553,7 +11564,7 @@ var mergeComparisonLineItemsAtDepth = (lineItems) => {
11553
11564
  }
11554
11565
  });
11555
11566
  };
11556
- mergeItems(lineItems, 0);
11567
+ mergeItems(lineItems);
11557
11568
  return Array.from(map.values());
11558
11569
  };
11559
11570
 
@@ -11572,7 +11583,9 @@ var TableCell = ({
11572
11583
  isCurrency,
11573
11584
  primary,
11574
11585
  withExpandIcon = false,
11575
- fullWidth
11586
+ fullWidth,
11587
+ colSpan = 1,
11588
+ onClick
11576
11589
  }) => {
11577
11590
  const amount = typeof children === "number" ? children : 0;
11578
11591
  const isPositive = amount >= 0;
@@ -11585,13 +11598,15 @@ var TableCell = ({
11585
11598
  isCurrency && !isPositive && "Layer__table-cell-amount--negative"
11586
11599
  );
11587
11600
  if (isHeaderCell) {
11588
- return /* @__PURE__ */ import_react122.default.createElement("th", { className: cellClassNames }, /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, children));
11601
+ return /* @__PURE__ */ import_react122.default.createElement("th", { className: cellClassNames, colSpan }, /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, children));
11589
11602
  }
11590
11603
  return /* @__PURE__ */ import_react122.default.createElement(
11591
11604
  "td",
11592
11605
  {
11593
11606
  className: cellClassNames,
11594
- style: fullWidth ? { width: "100%" } : void 0
11607
+ style: fullWidth ? { width: "100%" } : void 0,
11608
+ colSpan,
11609
+ onClick: (e) => onClick && onClick(e)
11595
11610
  },
11596
11611
  /* @__PURE__ */ import_react122.default.createElement("span", { className: "Layer__table-cell-content" }, withExpandIcon && /* @__PURE__ */ import_react122.default.createElement(
11597
11612
  ChevronDownFill_default,
@@ -11622,20 +11637,35 @@ var TableRow = ({
11622
11637
  variant = expandable ? "expandable" : "default",
11623
11638
  withDivider,
11624
11639
  withDividerPosition = "top",
11625
- isHeadRow = false
11640
+ isHeadRow = false,
11641
+ selected,
11642
+ onClick
11626
11643
  }) => {
11627
- const toggleExpanded = () => {
11628
- if (variant === "summation" || !expandable)
11629
- return;
11630
- handleExpand && handleExpand();
11644
+ const toggleExpanded = (e) => {
11645
+ if (onClick) {
11646
+ onClick(e);
11647
+ } else {
11648
+ if (variant === "summation" || !expandable)
11649
+ return;
11650
+ handleExpand && handleExpand();
11651
+ }
11631
11652
  };
11632
11653
  const rowClassNames = (0, import_classnames49.default)([
11633
11654
  "Layer__table-row",
11634
11655
  !isHeadRow && `Layer__table-row--depth-${depth}`,
11635
11656
  !isHeadRow && `Layer__table-row--variant-${variant}`,
11657
+ selected && "Layer__table-row--selected",
11636
11658
  !isHeadRow && expandable && (isExpanded ? "Layer__table-row--expanded" : "Layer__table-row--collapsed")
11637
11659
  ]);
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 })));
11660
+ 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(
11661
+ "tr",
11662
+ {
11663
+ "data-key": rowKey,
11664
+ className: rowClassNames,
11665
+ onClick: (e) => toggleExpanded(e)
11666
+ },
11667
+ children
11668
+ ), 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
11669
  };
11640
11670
 
11641
11671
  // src/components/Table/Table.tsx
@@ -11798,8 +11828,8 @@ var ProfitAndLossCompareTable = ({
11798
11828
  var import_react127 = __toESM(require("react"));
11799
11829
 
11800
11830
  // src/icons/PieChart.tsx
11801
- var React138 = __toESM(require("react"));
11802
- var PieChart3 = ({ size = 12, ...props }) => /* @__PURE__ */ React138.createElement(
11831
+ var React136 = __toESM(require("react"));
11832
+ var PieChart3 = ({ size = 12, ...props }) => /* @__PURE__ */ React136.createElement(
11803
11833
  "svg",
11804
11834
  {
11805
11835
  xmlns: "http://www.w3.org/2000/svg",
@@ -11809,7 +11839,7 @@ var PieChart3 = ({ size = 12, ...props }) => /* @__PURE__ */ React138.createElem
11809
11839
  width: size,
11810
11840
  height: size
11811
11841
  },
11812
- /* @__PURE__ */ React138.createElement("g", null, /* @__PURE__ */ React138.createElement(
11842
+ /* @__PURE__ */ React136.createElement("g", null, /* @__PURE__ */ React136.createElement(
11813
11843
  "path",
11814
11844
  {
11815
11845
  d: "M10.2213 7.78271C9.92969 8.47226 9.47363 9.07989 8.89297 9.55247C8.3123 10.0251 7.62471 10.3482 6.89031 10.4936C6.1559 10.6391 5.39705 10.6024 4.68009 10.3869C3.96313 10.1713 3.30989 9.78337 2.77749 9.25701C2.24509 8.73065 1.84973 8.08189 1.62598 7.36744C1.40223 6.65298 1.3569 5.8946 1.49396 5.15858C1.63102 4.42257 1.94629 3.73133 2.41221 3.14531C2.87813 2.55928 3.48051 2.09631 4.16669 1.79688",
@@ -11817,7 +11847,7 @@ var PieChart3 = ({ size = 12, ...props }) => /* @__PURE__ */ React138.createElem
11817
11847
  strokeLinecap: "round",
11818
11848
  strokeLinejoin: "round"
11819
11849
  }
11820
- ), /* @__PURE__ */ React138.createElement(
11850
+ ), /* @__PURE__ */ React136.createElement(
11821
11851
  "path",
11822
11852
  {
11823
11853
  d: "M10.5833 6.00033C10.5833 5.39843 10.4648 4.80244 10.2344 4.24636C10.0041 3.69028 9.66651 3.18502 9.24091 2.75942C8.8153 2.33382 8.31004 1.99621 7.75397 1.76588C7.19789 1.53554 6.60189 1.41699 6 1.41699V6.00033H10.5833Z",
@@ -11940,7 +11970,7 @@ var ProfitAndLossTableComponent = ({
11940
11970
  /* @__PURE__ */ import_react127.default.createElement(PieChart_default, null)
11941
11971
  )
11942
11972
  ),
11943
- /* @__PURE__ */ import_react127.default.createElement(TableCell, { isCurrency: true, primary: true }, lineItem.value)
11973
+ /* @__PURE__ */ import_react127.default.createElement(TableCell, { isCurrency: true, primary: true }, Number.isNaN(lineItem.value) ? 0 : lineItem.value)
11944
11974
  ), expanded && lineItem.line_items ? lineItem.line_items.map(
11945
11975
  (child, i) => renderLineItem(
11946
11976
  child,
@@ -12477,7 +12507,16 @@ var StatementOfCashFlowTable = ({
12477
12507
  idx
12478
12508
  ));
12479
12509
  } else {
12480
- return /* @__PURE__ */ import_react141.default.createElement(TableRow, { rowKey: row.name + "-" + idx, variant: "default" }, /* @__PURE__ */ import_react141.default.createElement(TableCell, { primary: true }, row.displayName), /* @__PURE__ */ import_react141.default.createElement(TableCell, { primary: true, isCurrency: true }, row.lineItem));
12510
+ return /* @__PURE__ */ import_react141.default.createElement(
12511
+ TableRow,
12512
+ {
12513
+ key: row.name + "-" + idx,
12514
+ rowKey: row.name + "-" + idx,
12515
+ variant: "default"
12516
+ },
12517
+ /* @__PURE__ */ import_react141.default.createElement(TableCell, { primary: true }, row.displayName),
12518
+ /* @__PURE__ */ import_react141.default.createElement(TableCell, { primary: true, isCurrency: true }, row.lineItem)
12519
+ );
12481
12520
  }
12482
12521
  })));
12483
12522
  };
@@ -12524,11 +12563,23 @@ var STATEMENT_OF_CASH_FLOW_ROWS = [
12524
12563
  // src/components/StatementOfCashFlow/StatementOfCashFlow.tsx
12525
12564
  var import_date_fns27 = require("date-fns");
12526
12565
  var COMPONENT_NAME4 = "statement-of-cash-flow";
12527
- var StatementOfCashFlow = ({ stringOverrides }) => {
12566
+ var StatementOfCashFlow = ({
12567
+ stringOverrides,
12568
+ datePickerMode
12569
+ }) => {
12528
12570
  const cashContextData = useStatementOfCashFlow();
12529
- return /* @__PURE__ */ import_react142.default.createElement(StatementOfCashFlowContext.Provider, { value: cashContextData }, /* @__PURE__ */ import_react142.default.createElement(StatementOfCashFlowView, { stringOverrides }));
12571
+ return /* @__PURE__ */ import_react142.default.createElement(StatementOfCashFlowContext.Provider, { value: cashContextData }, /* @__PURE__ */ import_react142.default.createElement(
12572
+ StatementOfCashFlowView,
12573
+ {
12574
+ stringOverrides,
12575
+ datePickerMode
12576
+ }
12577
+ ));
12530
12578
  };
12531
- var StatementOfCashFlowView = ({ stringOverrides }) => {
12579
+ var StatementOfCashFlowView = ({
12580
+ stringOverrides,
12581
+ datePickerMode = "dayRangePicker"
12582
+ }) => {
12532
12583
  const [startDate, setStartDate] = (0, import_react142.useState)(
12533
12584
  (0, import_date_fns27.startOfDay)((0, import_date_fns27.subWeeks)(/* @__PURE__ */ new Date(), 4))
12534
12585
  );
@@ -12548,29 +12599,36 @@ var StatementOfCashFlowView = ({ stringOverrides }) => {
12548
12599
  refetch();
12549
12600
  }
12550
12601
  };
12551
- return /* @__PURE__ */ import_react142.default.createElement(TableProvider, null, /* @__PURE__ */ import_react142.default.createElement(
12552
- View,
12602
+ const datePicker = datePickerMode === "monthPicker" ? /* @__PURE__ */ import_react142.default.createElement(
12603
+ DatePicker,
12553
12604
  {
12554
- type: "panel",
12555
- headerControls: /* @__PURE__ */ import_react142.default.createElement(import_react142.default.Fragment, null, /* @__PURE__ */ import_react142.default.createElement(
12556
- DatePicker,
12557
- {
12558
- selected: [startDate, endDate],
12559
- onChange: (dates) => handleDateChange(dates),
12560
- dateFormat: "MMM d",
12561
- mode: "dayRangePicker"
12605
+ selected: startDate,
12606
+ onChange: (dates) => {
12607
+ if (!Array.isArray(dates)) {
12608
+ const date = dates;
12609
+ handleDateChange([(0, import_date_fns27.startOfMonth)(date), (0, import_date_fns27.endOfMonth)(date)]);
12562
12610
  }
12563
- ))
12564
- },
12565
- !data || isLoading ? /* @__PURE__ */ import_react142.default.createElement("div", { className: `Layer__${COMPONENT_NAME4}__loader-container` }, /* @__PURE__ */ import_react142.default.createElement(Loader2, null)) : /* @__PURE__ */ import_react142.default.createElement(
12566
- StatementOfCashFlowTable,
12567
- {
12568
- data,
12569
- config: STATEMENT_OF_CASH_FLOW_ROWS,
12570
- stringOverrides: stringOverrides?.statementOfCashFlowTable
12571
- }
12572
- )
12573
- ));
12611
+ },
12612
+ dateFormat: "MMM",
12613
+ mode: datePickerMode
12614
+ }
12615
+ ) : /* @__PURE__ */ import_react142.default.createElement(
12616
+ DatePicker,
12617
+ {
12618
+ selected: [startDate, endDate],
12619
+ onChange: (dates) => handleDateChange(dates),
12620
+ dateFormat: "MMM d",
12621
+ mode: datePickerMode
12622
+ }
12623
+ );
12624
+ return /* @__PURE__ */ import_react142.default.createElement(TableProvider, null, /* @__PURE__ */ import_react142.default.createElement(View, { type: "panel", headerControls: /* @__PURE__ */ import_react142.default.createElement(import_react142.default.Fragment, null, datePicker) }, !data || isLoading ? /* @__PURE__ */ import_react142.default.createElement("div", { className: `Layer__${COMPONENT_NAME4}__loader-container` }, /* @__PURE__ */ import_react142.default.createElement(Loader2, null)) : /* @__PURE__ */ import_react142.default.createElement(
12625
+ StatementOfCashFlowTable,
12626
+ {
12627
+ data,
12628
+ config: STATEMENT_OF_CASH_FLOW_ROWS,
12629
+ stringOverrides: stringOverrides?.statementOfCashFlowTable
12630
+ }
12631
+ )));
12574
12632
  };
12575
12633
 
12576
12634
  // src/components/ChartOfAccounts/ChartOfAccounts.tsx
@@ -13209,7 +13267,7 @@ var useLedgerAccounts = () => {
13209
13267
  };
13210
13268
  };
13211
13269
 
13212
- // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13270
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
13213
13271
  var import_react152 = __toESM(require("react"));
13214
13272
 
13215
13273
  // src/components/ChartOfAccountsDatePicker/ChartOfAccountsDatePicker.tsx
@@ -13234,317 +13292,69 @@ var ChartOfAccountsDatePicker = () => {
13234
13292
  );
13235
13293
  };
13236
13294
 
13237
- // src/components/ChartOfAccountsRow/ChartOfAccountsRow.tsx
13238
- var import_react148 = __toESM(require("react"));
13295
+ // src/components/ChartOfAccountsSidebar/ChartOfAccountsSidebar.tsx
13296
+ var import_react150 = __toESM(require("react"));
13239
13297
 
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
- )
13298
+ // src/components/ChartOfAccountsForm/ChartOfAccountsForm.tsx
13299
+ var import_react149 = __toESM(require("react"));
13300
+
13301
+ // src/components/ChartOfAccountsForm/useParentOptions.ts
13302
+ var import_react148 = require("react");
13303
+ var useParentOptions = (data) => (0, import_react148.useMemo)(
13304
+ () => flattenAccounts(data?.accounts || []).sort((a, b) => a?.name && b?.name ? a.name.localeCompare(b.name) : 0).map((x) => {
13305
+ return {
13306
+ label: x.name,
13307
+ value: x.id
13308
+ };
13309
+ }),
13310
+ [data?.accounts?.length]
13261
13311
  );
13262
- var Edit2_default = Edit2;
13263
13312
 
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
13313
+ // src/components/ChartOfAccountsForm/ChartOfAccountsForm.tsx
13314
+ var ChartOfAccountsForm = ({
13315
+ stringOverrides
13295
13316
  }) => {
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);
13317
+ const {
13318
+ form,
13319
+ data,
13320
+ changeFormData,
13321
+ cancelForm,
13322
+ submitForm,
13323
+ sendingForm,
13324
+ apiError
13325
+ } = (0, import_react149.useContext)(ChartOfAccountsContext);
13326
+ const parentOptions = useParentOptions(data);
13327
+ const entry = (0, import_react149.useMemo)(() => {
13328
+ if (form?.action === "edit" && form.accountId) {
13329
+ return flattenAccounts(data?.accounts || []).find(
13330
+ (x) => x.id === form.accountId
13331
+ );
13318
13332
  }
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",
13333
+ return;
13334
+ }, [data, form?.accountId]);
13335
+ if (!form) {
13336
+ return;
13337
+ }
13338
+ return /* @__PURE__ */ import_react149.default.createElement(
13339
+ "form",
13338
13340
  {
13339
- className: desktopRowClass,
13340
- onClick: (e) => {
13341
+ className: "Layer__form",
13342
+ onSubmit: (e) => {
13341
13343
  e.preventDefault();
13342
- e.stopPropagation();
13343
- setAccountId(account.id);
13344
+ submitForm();
13344
13345
  }
13345
13346
  },
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",
13347
+ /* @__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(
13348
+ Button,
13348
13349
  {
13349
- className: "Layer__table-cell-content-indentation",
13350
- style: {
13351
- paddingLeft: INDENTATION * depth + 16
13352
- }
13350
+ type: "button",
13351
+ onClick: cancelForm,
13352
+ variant: "secondary" /* secondary */,
13353
+ disabled: sendingForm
13353
13354
  },
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
- // src/components/ChartOfAccountsSidebar/ChartOfAccountsSidebar.tsx
13488
- var import_react151 = __toESM(require("react"));
13489
-
13490
- // src/components/ChartOfAccountsForm/ChartOfAccountsForm.tsx
13491
- var import_react150 = __toESM(require("react"));
13492
-
13493
- // src/components/ChartOfAccountsForm/useParentOptions.ts
13494
- var import_react149 = require("react");
13495
- var useParentOptions = (data) => (0, import_react149.useMemo)(
13496
- () => flattenAccounts(data?.accounts || []).sort((a, b) => a?.name && b?.name ? a.name.localeCompare(b.name) : 0).map((x) => {
13497
- return {
13498
- label: x.name,
13499
- value: x.id
13500
- };
13501
- }),
13502
- [data?.accounts?.length]
13503
- );
13504
-
13505
- // src/components/ChartOfAccountsForm/ChartOfAccountsForm.tsx
13506
- var ChartOfAccountsForm = ({ stringOverrides }) => {
13507
- const {
13508
- form,
13509
- data,
13510
- changeFormData,
13511
- cancelForm,
13512
- submitForm,
13513
- sendingForm,
13514
- apiError
13515
- } = (0, import_react150.useContext)(ChartOfAccountsContext);
13516
- const parentOptions = useParentOptions(data);
13517
- const entry = (0, import_react150.useMemo)(() => {
13518
- if (form?.action === "edit" && form.accountId) {
13519
- return flattenAccounts(data?.accounts || []).find(
13520
- (x) => x.id === form.accountId
13521
- );
13522
- }
13523
- return;
13524
- }, [data, form?.accountId]);
13525
- if (!form) {
13526
- return;
13527
- }
13528
- return /* @__PURE__ */ import_react150.default.createElement(
13529
- "form",
13530
- {
13531
- className: "Layer__form",
13532
- onSubmit: (e) => {
13533
- e.preventDefault();
13534
- submitForm();
13535
- }
13536
- },
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(
13538
- Button,
13539
- {
13540
- type: "button",
13541
- onClick: cancelForm,
13542
- variant: "secondary" /* secondary */,
13543
- disabled: sendingForm
13544
- },
13545
- stringOverrides?.cancelButton || "Cancel"
13546
- ), apiError && /* @__PURE__ */ import_react150.default.createElement(
13547
- RetryButton,
13355
+ stringOverrides?.cancelButton || "Cancel"
13356
+ ), apiError && /* @__PURE__ */ import_react149.default.createElement(
13357
+ RetryButton,
13548
13358
  {
13549
13359
  type: "submit",
13550
13360
  processing: sendingForm,
@@ -13552,7 +13362,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13552
13362
  disabled: sendingForm
13553
13363
  },
13554
13364
  stringOverrides?.retryButton || "Retry"
13555
- ), !apiError && /* @__PURE__ */ import_react150.default.createElement(
13365
+ ), !apiError && /* @__PURE__ */ import_react149.default.createElement(
13556
13366
  SubmitButton,
13557
13367
  {
13558
13368
  type: "submit",
@@ -13562,7 +13372,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13562
13372
  },
13563
13373
  stringOverrides?.saveButton || "Save"
13564
13374
  ))),
13565
- apiError && /* @__PURE__ */ import_react150.default.createElement(
13375
+ apiError && /* @__PURE__ */ import_react149.default.createElement(
13566
13376
  Text,
13567
13377
  {
13568
13378
  size: "sm" /* sm */,
@@ -13570,57 +13380,97 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13570
13380
  },
13571
13381
  apiError
13572
13382
  ),
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(
13575
- Select2,
13383
+ 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))),
13384
+ /* @__PURE__ */ import_react149.default.createElement("div", { className: "Layer__chart-of-accounts__form" }, /* @__PURE__ */ import_react149.default.createElement(
13385
+ InputGroup,
13576
13386
  {
13577
- options: parentOptions,
13578
- value: form?.data.parent,
13579
- onChange: (sel) => changeFormData("parent", sel),
13580
- disabled: sendingForm
13581
- }
13582
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "name", label: stringOverrides?.nameLabel || "Name", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13583
- Input,
13387
+ name: "parent",
13388
+ label: stringOverrides?.parentLabel || "Parent",
13389
+ inline: true
13390
+ },
13391
+ /* @__PURE__ */ import_react149.default.createElement(
13392
+ Select2,
13393
+ {
13394
+ options: parentOptions,
13395
+ value: form?.data.parent,
13396
+ onChange: (sel) => changeFormData("parent", sel),
13397
+ disabled: sendingForm
13398
+ }
13399
+ )
13400
+ ), /* @__PURE__ */ import_react149.default.createElement(
13401
+ InputGroup,
13584
13402
  {
13585
13403
  name: "name",
13586
- placeholder: "Enter name...",
13587
- value: form?.data.name,
13588
- isInvalid: Boolean(form?.errors?.find((x) => x.field === "name")),
13589
- errorMessage: form?.errors?.find((x) => x.field === "name")?.message,
13590
- disabled: sendingForm,
13591
- onChange: (e) => changeFormData("name", e.target.value)
13592
- }
13593
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "type", label: stringOverrides?.typeLabel || "Type", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13594
- Select2,
13404
+ label: stringOverrides?.nameLabel || "Name",
13405
+ inline: true
13406
+ },
13407
+ /* @__PURE__ */ import_react149.default.createElement(
13408
+ Input,
13409
+ {
13410
+ name: "name",
13411
+ placeholder: "Enter name...",
13412
+ value: form?.data.name,
13413
+ isInvalid: Boolean(form?.errors?.find((x) => x.field === "name")),
13414
+ errorMessage: form?.errors?.find((x) => x.field === "name")?.message,
13415
+ disabled: sendingForm,
13416
+ onChange: (e) => changeFormData("name", e.target.value)
13417
+ }
13418
+ )
13419
+ ), /* @__PURE__ */ import_react149.default.createElement(
13420
+ InputGroup,
13595
13421
  {
13596
- options: LEDGER_ACCOUNT_TYPES,
13597
- value: form?.data.type,
13598
- onChange: (sel) => changeFormData("type", sel),
13599
- isInvalid: Boolean(form?.errors?.find((x) => x.field === "type")),
13600
- errorMessage: form?.errors?.find((x) => x.field === "type")?.message,
13601
- disabled: sendingForm || form.action === "edit" || form.data.parent !== void 0
13602
- }
13603
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "subType", label: stringOverrides?.subTypeLabel || "Sub-Type", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13604
- Select2,
13422
+ name: "type",
13423
+ label: stringOverrides?.typeLabel || "Type",
13424
+ inline: true
13425
+ },
13426
+ /* @__PURE__ */ import_react149.default.createElement(
13427
+ Select2,
13428
+ {
13429
+ options: LEDGER_ACCOUNT_TYPES,
13430
+ value: form?.data.type,
13431
+ onChange: (sel) => changeFormData("type", sel),
13432
+ isInvalid: Boolean(form?.errors?.find((x) => x.field === "type")),
13433
+ errorMessage: form?.errors?.find((x) => x.field === "type")?.message,
13434
+ disabled: sendingForm || form.action === "edit" || form.data.parent !== void 0
13435
+ }
13436
+ )
13437
+ ), /* @__PURE__ */ import_react149.default.createElement(
13438
+ InputGroup,
13605
13439
  {
13606
- options: form?.data.type?.value !== void 0 ? LEDGER_ACCOUNT_SUBTYPES_FOR_TYPE[form?.data.type?.value] : LEDGER_ACCOUNT_SUBTYPES,
13607
- value: form?.data.subType,
13608
- onChange: (sel) => changeFormData("subType", sel),
13609
- disabled: sendingForm
13610
- }
13611
- )), /* @__PURE__ */ import_react150.default.createElement(InputGroup, { name: "normality", label: stringOverrides?.normalityLabel || "Normality", inline: true }, /* @__PURE__ */ import_react150.default.createElement(
13612
- Select2,
13440
+ name: "subType",
13441
+ label: stringOverrides?.subTypeLabel || "Sub-Type",
13442
+ inline: true
13443
+ },
13444
+ /* @__PURE__ */ import_react149.default.createElement(
13445
+ Select2,
13446
+ {
13447
+ options: form?.data.type?.value !== void 0 ? LEDGER_ACCOUNT_SUBTYPES_FOR_TYPE[form?.data.type?.value] : LEDGER_ACCOUNT_SUBTYPES,
13448
+ value: form?.data.subType,
13449
+ onChange: (sel) => changeFormData("subType", sel),
13450
+ disabled: sendingForm
13451
+ }
13452
+ )
13453
+ ), /* @__PURE__ */ import_react149.default.createElement(
13454
+ InputGroup,
13613
13455
  {
13614
- options: NORMALITY_OPTIONS,
13615
- value: form?.data.normality,
13616
- isInvalid: Boolean(
13617
- form?.errors?.find((x) => x.field === "normality")
13618
- ),
13619
- errorMessage: form?.errors?.find((x) => x.field === "normality")?.message,
13620
- onChange: (sel) => changeFormData("normality", sel),
13621
- disabled: sendingForm
13622
- }
13623
- )), /* @__PURE__ */ import_react150.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react150.default.createElement(
13456
+ name: "normality",
13457
+ label: stringOverrides?.normalityLabel || "Normality",
13458
+ inline: true
13459
+ },
13460
+ /* @__PURE__ */ import_react149.default.createElement(
13461
+ Select2,
13462
+ {
13463
+ options: NORMALITY_OPTIONS,
13464
+ value: form?.data.normality,
13465
+ isInvalid: Boolean(
13466
+ form?.errors?.find((x) => x.field === "normality")
13467
+ ),
13468
+ errorMessage: form?.errors?.find((x) => x.field === "normality")?.message,
13469
+ onChange: (sel) => changeFormData("normality", sel),
13470
+ disabled: sendingForm
13471
+ }
13472
+ )
13473
+ ), /* @__PURE__ */ import_react149.default.createElement("div", { className: "actions" }, /* @__PURE__ */ import_react149.default.createElement(
13624
13474
  Button,
13625
13475
  {
13626
13476
  type: "button",
@@ -13629,7 +13479,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13629
13479
  disabled: sendingForm
13630
13480
  },
13631
13481
  stringOverrides?.cancelButton || "Cancel"
13632
- ), apiError && /* @__PURE__ */ import_react150.default.createElement(
13482
+ ), apiError && /* @__PURE__ */ import_react149.default.createElement(
13633
13483
  RetryButton,
13634
13484
  {
13635
13485
  type: "submit",
@@ -13638,7 +13488,7 @@ var ChartOfAccountsForm = ({ stringOverrides }) => {
13638
13488
  disabled: sendingForm
13639
13489
  },
13640
13490
  stringOverrides?.retryButton || "Retry"
13641
- ), !apiError && /* @__PURE__ */ import_react150.default.createElement(
13491
+ ), !apiError && /* @__PURE__ */ import_react149.default.createElement(
13642
13492
  SubmitButton,
13643
13493
  {
13644
13494
  type: "submit",
@@ -13656,12 +13506,155 @@ var ChartOfAccountsSidebar = ({
13656
13506
  parentRef: _parentRef,
13657
13507
  stringOverrides
13658
13508
  }) => {
13659
- return /* @__PURE__ */ import_react151.default.createElement(ChartOfAccountsForm, { stringOverrides });
13509
+ return /* @__PURE__ */ import_react150.default.createElement(ChartOfAccountsForm, { stringOverrides });
13660
13510
  };
13661
13511
 
13662
13512
  // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13663
- var COMPONENT_NAME5 = "chart-of-accounts";
13513
+ var import_react151 = __toESM(require("react"));
13514
+
13515
+ // src/icons/Edit2.tsx
13516
+ var React152 = __toESM(require("react"));
13517
+ var Edit2 = ({ size = 18, ...props }) => /* @__PURE__ */ React152.createElement(
13518
+ "svg",
13519
+ {
13520
+ xmlns: "http://www.w3.org/2000/svg",
13521
+ viewBox: "0 0 18 18",
13522
+ fill: "none",
13523
+ ...props,
13524
+ width: size,
13525
+ height: size
13526
+ },
13527
+ /* @__PURE__ */ React152.createElement(
13528
+ "path",
13529
+ {
13530
+ 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",
13531
+ stroke: "currentColor",
13532
+ strokeLinecap: "round",
13533
+ strokeLinejoin: "round"
13534
+ }
13535
+ )
13536
+ );
13537
+ var Edit2_default = Edit2;
13538
+
13539
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTable.tsx
13664
13540
  var ChartOfAccountsTable = ({
13541
+ view,
13542
+ stringOverrides,
13543
+ data,
13544
+ error,
13545
+ expandAll,
13546
+ cumulativeIndex,
13547
+ accountsLength
13548
+ }) => /* @__PURE__ */ import_react151.default.createElement(TableProvider, null, /* @__PURE__ */ import_react151.default.createElement(
13549
+ ChartOfAccountsTableContent,
13550
+ {
13551
+ view,
13552
+ data,
13553
+ stringOverrides,
13554
+ error,
13555
+ expandAll,
13556
+ cumulativeIndex,
13557
+ accountsLength
13558
+ }
13559
+ ));
13560
+ var ChartOfAccountsTableContent = ({
13561
+ stringOverrides,
13562
+ data,
13563
+ error,
13564
+ expandAll
13565
+ }) => {
13566
+ const { setAccountId } = (0, import_react151.useContext)(LedgerAccountsContext);
13567
+ const { editAccount } = (0, import_react151.useContext)(ChartOfAccountsContext);
13568
+ const { isOpen, setIsOpen } = useTableExpandRow();
13569
+ const [accountsRowKeys, setAccountsRowKeys] = (0, import_react151.useState)([]);
13570
+ (0, import_react151.useEffect)(() => {
13571
+ if (expandAll === "expanded") {
13572
+ setIsOpen(accountsRowKeys);
13573
+ } else if (expandAll === "collapsed") {
13574
+ setIsOpen([]);
13575
+ }
13576
+ }, [expandAll]);
13577
+ (0, import_react151.useEffect)(() => {
13578
+ const defaultExpanded = data.accounts.map(
13579
+ (account) => "coa-row-" + account.id
13580
+ );
13581
+ setIsOpen(defaultExpanded);
13582
+ const searchRowsToExpand = (accounts, rowKey) => {
13583
+ accounts.map((account) => {
13584
+ if (account.sub_accounts.length > 0) {
13585
+ setAccountsRowKeys((prev) => [...prev, `${rowKey}-${account.id}`]);
13586
+ searchRowsToExpand(account.sub_accounts, `${rowKey}-${account.id}`);
13587
+ }
13588
+ });
13589
+ };
13590
+ searchRowsToExpand(data.accounts, "coa-row");
13591
+ }, []);
13592
+ const renderChartOfAccountsDesktopRow = (account, index, rowKey, depth) => {
13593
+ const expandable = !!account.sub_accounts && account.sub_accounts.length > 0;
13594
+ const expanded = expandable ? isOpen(rowKey) : true;
13595
+ return /* @__PURE__ */ import_react151.default.createElement(import_react151.default.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ import_react151.default.createElement(
13596
+ TableRow,
13597
+ {
13598
+ rowKey: rowKey + "-" + index,
13599
+ expandable,
13600
+ isExpanded: expanded,
13601
+ onClick: (e) => {
13602
+ e.stopPropagation();
13603
+ setAccountId(account.id);
13604
+ },
13605
+ depth
13606
+ },
13607
+ /* @__PURE__ */ import_react151.default.createElement(
13608
+ TableCell,
13609
+ {
13610
+ withExpandIcon: expandable,
13611
+ onClick: (e) => {
13612
+ e.stopPropagation();
13613
+ expandable && setIsOpen(rowKey);
13614
+ }
13615
+ },
13616
+ account.name
13617
+ ),
13618
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, account.account_type?.display_name),
13619
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, account.account_subtype?.display_name),
13620
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, { isCurrency: true }, account.balance),
13621
+ /* @__PURE__ */ import_react151.default.createElement(TableCell, null, /* @__PURE__ */ import_react151.default.createElement("span", { className: "Layer__coa__actions" }, /* @__PURE__ */ import_react151.default.createElement(
13622
+ Button,
13623
+ {
13624
+ variant: "secondary" /* secondary */,
13625
+ rightIcon: /* @__PURE__ */ import_react151.default.createElement(Edit2_default, { size: 12 }),
13626
+ iconOnly: true,
13627
+ onClick: (e) => {
13628
+ e.preventDefault();
13629
+ e.stopPropagation();
13630
+ editAccount(account.id);
13631
+ }
13632
+ },
13633
+ "Edit"
13634
+ )))
13635
+ ), expandable && expanded && account.sub_accounts.map((subItem, subIdx) => {
13636
+ const subRowKey = `${rowKey}-${subItem.id}`;
13637
+ return renderChartOfAccountsDesktopRow(
13638
+ subItem,
13639
+ subIdx,
13640
+ subRowKey,
13641
+ depth + 1
13642
+ );
13643
+ }));
13644
+ };
13645
+ 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(
13646
+ (account, idx) => renderChartOfAccountsDesktopRow(
13647
+ account,
13648
+ idx,
13649
+ `coa-row-${account.id}`,
13650
+ 0
13651
+ )
13652
+ )));
13653
+ };
13654
+
13655
+ // src/components/ChartOfAccountsTable/ChartOfAccountsTableWithPanel.tsx
13656
+ var COMPONENT_NAME5 = "chart-of-accounts";
13657
+ var ChartOfAccountsTableWithPanel = ({
13665
13658
  view,
13666
13659
  containerRef,
13667
13660
  asWidget = false,
@@ -13671,7 +13664,7 @@ var ChartOfAccountsTable = ({
13671
13664
  }) => {
13672
13665
  const { data, isLoading, addAccount, error, isValidating, refetch, form } = (0, import_react152.useContext)(ChartOfAccountsContext);
13673
13666
  const [expandAll, setExpandAll] = (0, import_react152.useState)();
13674
- let cumulativeIndex = 0;
13667
+ const cumulativeIndex = 0;
13675
13668
  const accountsLength = data?.accounts.length ?? 0;
13676
13669
  return /* @__PURE__ */ import_react152.default.createElement(
13677
13670
  Panel,
@@ -13718,25 +13711,18 @@ var ChartOfAccountsTable = ({
13718
13711
  /* @__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
13712
  )
13720
13713
  ),
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
- }))),
13714
+ data && /* @__PURE__ */ import_react152.default.createElement(
13715
+ ChartOfAccountsTable,
13716
+ {
13717
+ view,
13718
+ data,
13719
+ error,
13720
+ stringOverrides,
13721
+ expandAll,
13722
+ accountsLength,
13723
+ cumulativeIndex
13724
+ }
13725
+ ),
13740
13726
  error ? /* @__PURE__ */ import_react152.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react152.default.createElement(
13741
13727
  DataState,
13742
13728
  {
@@ -13769,9 +13755,9 @@ var import_react157 = __toESM(require("react"));
13769
13755
 
13770
13756
  // src/components/Card/Card.tsx
13771
13757
  var import_react153 = __toESM(require("react"));
13772
- var import_classnames56 = __toESM(require("classnames"));
13758
+ var import_classnames55 = __toESM(require("classnames"));
13773
13759
  var Card = ({ children, className }) => {
13774
- return /* @__PURE__ */ import_react153.default.createElement("div", { className: (0, import_classnames56.default)("Layer__card", className) }, children);
13760
+ return /* @__PURE__ */ import_react153.default.createElement("div", { className: (0, import_classnames55.default)("Layer__card", className) }, children);
13775
13761
  };
13776
13762
 
13777
13763
  // src/components/DateTime/DateTime.tsx
@@ -13813,14 +13799,14 @@ var DateTime = ({
13813
13799
 
13814
13800
  // src/components/DetailsList/DetailsList.tsx
13815
13801
  var import_react155 = __toESM(require("react"));
13816
- var import_classnames57 = __toESM(require("classnames"));
13802
+ var import_classnames56 = __toESM(require("classnames"));
13817
13803
  var DetailsList = ({
13818
13804
  title,
13819
13805
  children,
13820
13806
  className,
13821
13807
  actions
13822
13808
  }) => {
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));
13809
+ 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
13810
  };
13825
13811
 
13826
13812
  // src/components/DetailsList/DetailsListItem.tsx
@@ -14048,7 +14034,7 @@ var LedgerAccountEntryDetails = ({
14048
14034
 
14049
14035
  // src/components/LedgerAccount/LedgerAccountRow.tsx
14050
14036
  var import_react158 = __toESM(require("react"));
14051
- var import_classnames58 = __toESM(require("classnames"));
14037
+ var import_classnames57 = __toESM(require("classnames"));
14052
14038
  var import_date_fns32 = require("date-fns");
14053
14039
  var LedgerAccountRow = ({
14054
14040
  row,
@@ -14072,7 +14058,7 @@ var LedgerAccountRow = ({
14072
14058
  return /* @__PURE__ */ import_react158.default.createElement(
14073
14059
  "tr",
14074
14060
  {
14075
- className: (0, import_classnames58.default)(
14061
+ className: (0, import_classnames57.default)(
14076
14062
  "Layer__table-row",
14077
14063
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14078
14064
  initialLoad && "initial-load",
@@ -14105,7 +14091,7 @@ var LedgerAccountRow = ({
14105
14091
  return /* @__PURE__ */ import_react158.default.createElement(
14106
14092
  "tr",
14107
14093
  {
14108
- className: (0, import_classnames58.default)(
14094
+ className: (0, import_classnames57.default)(
14109
14095
  "Layer__table-row",
14110
14096
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14111
14097
  initialLoad && "initial-load",
@@ -14134,7 +14120,7 @@ var LedgerAccountRow = ({
14134
14120
  return /* @__PURE__ */ import_react158.default.createElement(
14135
14121
  "tr",
14136
14122
  {
14137
- className: (0, import_classnames58.default)(
14123
+ className: (0, import_classnames57.default)(
14138
14124
  "Layer__table-row",
14139
14125
  row.entry_id === selectedEntryId && "Layer__table-row--active",
14140
14126
  initialLoad && "initial-load",
@@ -14160,7 +14146,7 @@ var LedgerAccountRow = ({
14160
14146
  };
14161
14147
 
14162
14148
  // src/components/LedgerAccount/LedgerAccountIndex.tsx
14163
- var import_classnames59 = __toESM(require("classnames"));
14149
+ var import_classnames58 = __toESM(require("classnames"));
14164
14150
  var LedgerAccount = ({
14165
14151
  containerRef,
14166
14152
  pageSize = 15,
@@ -14189,7 +14175,7 @@ var LedgerAccount = ({
14189
14175
  return () => clearTimeout(timeoutLoad);
14190
14176
  }
14191
14177
  }, [isLoading]);
14192
- const baseClassName = (0, import_classnames59.default)(
14178
+ const baseClassName = (0, import_classnames58.default)(
14193
14179
  "Layer__ledger-account__index",
14194
14180
  accountId && "open"
14195
14181
  );
@@ -14268,7 +14254,7 @@ var LedgerAccount = ({
14268
14254
  onRefresh: () => refetch(),
14269
14255
  isLoading: isValidating || isLoading
14270
14256
  }
14271
- )) : null, (!data || isLoading) && !error ? /* @__PURE__ */ import_react159.default.createElement("div", { className: `Layer__ledger-account__loader-container` }, /* @__PURE__ */ import_react159.default.createElement(Loader2, null)) : null, !isLoading && !error && data?.length === 0 ? /* @__PURE__ */ import_react159.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react159.default.createElement(
14257
+ )) : null, (!data || isLoading) && !error ? /* @__PURE__ */ import_react159.default.createElement("div", { className: "Layer__ledger-account__loader-container" }, /* @__PURE__ */ import_react159.default.createElement(Loader2, null)) : null, !isLoading && !error && data?.length === 0 ? /* @__PURE__ */ import_react159.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react159.default.createElement(
14272
14258
  DataState,
14273
14259
  {
14274
14260
  status: "info" /* info */,
@@ -14307,8 +14293,15 @@ var ChartOfAccountsContent = ({
14307
14293
  }
14308
14294
  }
14309
14295
  });
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,
14296
+ return /* @__PURE__ */ import_react160.default.createElement(Container, { name: "chart-of-accounts", ref: containerRef, asWidget }, accountId ? /* @__PURE__ */ import_react160.default.createElement(
14297
+ LedgerAccount,
14298
+ {
14299
+ view,
14300
+ containerRef,
14301
+ stringOverrides: stringOverrides?.ledgerAccount
14302
+ }
14303
+ ) : /* @__PURE__ */ import_react160.default.createElement(
14304
+ ChartOfAccountsTableWithPanel,
14312
14305
  {
14313
14306
  asWidget,
14314
14307
  withDateControl,
@@ -14654,190 +14647,14 @@ var useJournal = () => {
14654
14647
  };
14655
14648
  };
14656
14649
 
14657
- // src/components/JournalTable/JournalTable.tsx
14650
+ // src/components/JournalTable/JournalTableWithPanel.tsx
14658
14651
  var import_react168 = __toESM(require("react"));
14659
14652
 
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
14653
  // src/components/JournalSidebar/JournalSidebar.tsx
14837
- var import_react167 = __toESM(require("react"));
14654
+ var import_react166 = __toESM(require("react"));
14838
14655
 
14839
14656
  // src/components/JournalEntryDetails/JournalEntryDetails.tsx
14840
- var import_react164 = __toESM(require("react"));
14657
+ var import_react163 = __toESM(require("react"));
14841
14658
  var JournalEntryDetails = () => {
14842
14659
  const {
14843
14660
  data,
@@ -14845,21 +14662,21 @@ var JournalEntryDetails = () => {
14845
14662
  errorEntry,
14846
14663
  closeSelectedEntry,
14847
14664
  selectedEntryId
14848
- } = (0, import_react164.useContext)(JournalContext);
14849
- const entry = (0, import_react164.useMemo)(() => {
14665
+ } = (0, import_react163.useContext)(JournalContext);
14666
+ const entry = (0, import_react163.useMemo)(() => {
14850
14667
  if (selectedEntryId && data) {
14851
14668
  return data.find((x) => x.id === selectedEntryId);
14852
14669
  }
14853
14670
  return;
14854
14671
  }, [data, selectedEntryId]);
14855
- return /* @__PURE__ */ import_react164.default.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ import_react164.default.createElement(
14672
+ return /* @__PURE__ */ import_react163.default.createElement("div", { className: "Layer__journal__entry-details" }, /* @__PURE__ */ import_react163.default.createElement(
14856
14673
  DetailsList,
14857
14674
  {
14858
14675
  title: "Transaction source",
14859
- actions: /* @__PURE__ */ import_react164.default.createElement(
14676
+ actions: /* @__PURE__ */ import_react163.default.createElement(
14860
14677
  Button,
14861
14678
  {
14862
- rightIcon: /* @__PURE__ */ import_react164.default.createElement(X_default, null),
14679
+ rightIcon: /* @__PURE__ */ import_react163.default.createElement(X_default, null),
14863
14680
  iconOnly: true,
14864
14681
  onClick: closeSelectedEntry,
14865
14682
  className: "Layer__details-list__close-btn",
@@ -14867,54 +14684,54 @@ var JournalEntryDetails = () => {
14867
14684
  }
14868
14685
  )
14869
14686
  },
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(
14687
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Source", isLoading: isLoadingEntry }, /* @__PURE__ */ import_react163.default.createElement(Badge, null, entry?.source?.entity_name)),
14688
+ entry?.source?.display_description && /* @__PURE__ */ import_react163.default.createElement(SourceDetailView, { source: entry?.source })
14689
+ ), /* @__PURE__ */ import_react163.default.createElement(
14873
14690
  DetailsList,
14874
14691
  {
14875
14692
  title: `Journal Entry ${entry?.id.substring(0, 5)}`,
14876
14693
  className: "Layer__border-top"
14877
14694
  },
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(
14695
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Entry type", isLoading: isLoadingEntry }, humanizeEnum(entry?.entry_type ?? "")),
14696
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Date", isLoading: isLoadingEntry }, entry?.entry_at && /* @__PURE__ */ import_react163.default.createElement(DateTime, { value: entry?.entry_at })),
14697
+ /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Creation date", isLoading: isLoadingEntry }, entry?.date && /* @__PURE__ */ import_react163.default.createElement(DateTime, { value: entry?.date })),
14698
+ entry?.reversal_id && /* @__PURE__ */ import_react163.default.createElement(DetailsListItem, { label: "Reversal", isLoading: isLoadingEntry }, "Journal Entry #", entry?.reversal_id)
14699
+ ), !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
14700
  Table,
14884
14701
  {
14885
14702
  componentName: "ledger-account__entry-details",
14886
14703
  borderCollapse: "collapse"
14887
14704
  },
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(
14705
+ /* @__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"))),
14706
+ /* @__PURE__ */ import_react163.default.createElement(TableBody, null, entry?.line_items?.map((item, index) => /* @__PURE__ */ import_react163.default.createElement(
14890
14707
  TableRow,
14891
14708
  {
14892
14709
  key: `ledger-line-item-${index}`,
14893
14710
  rowKey: `ledger-line-item-${index}`
14894
14711
  },
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(
14712
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.account_identifier?.name || ""),
14713
+ [...Array(3)].map((_, index2) => /* @__PURE__ */ import_react163.default.createElement(TableCell, { key: `ledger-empty-cell-${index2}` })),
14714
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.direction === "DEBIT" /* DEBIT */ && /* @__PURE__ */ import_react163.default.createElement(Badge, { variant: "warning" /* WARNING */ }, "$", centsToDollars(item.amount || 0))),
14715
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, null, item.direction === "CREDIT" /* CREDIT */ && /* @__PURE__ */ import_react163.default.createElement(Badge, { variant: "success" /* SUCCESS */ }, "$", centsToDollars(item.amount || 0)))
14716
+ )), /* @__PURE__ */ import_react163.default.createElement(
14900
14717
  TableRow,
14901
14718
  {
14902
14719
  rowKey: "ledger-line-item-summation",
14903
14720
  variant: "summation"
14904
14721
  },
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)
14722
+ /* @__PURE__ */ import_react163.default.createElement(TableCell, { primary: true }, "Total"),
14723
+ [...Array(3)].map((_, index) => /* @__PURE__ */ import_react163.default.createElement(TableCell, { key: `ledger-empty-cell-${index}` })),
14724
+ /* @__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),
14725
+ /* @__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
14726
  ))
14910
14727
  ))) : null);
14911
14728
  };
14912
14729
 
14913
14730
  // src/components/JournalForm/JournalForm.tsx
14914
- var import_react166 = __toESM(require("react"));
14731
+ var import_react165 = __toESM(require("react"));
14915
14732
 
14916
14733
  // src/components/JournalForm/JournalFormEntryLines.tsx
14917
- var import_react165 = __toESM(require("react"));
14734
+ var import_react164 = __toESM(require("react"));
14918
14735
  var JournalFormEntryLines = ({
14919
14736
  entrylineItems,
14920
14737
  addEntryLine,
@@ -14923,17 +14740,17 @@ var JournalFormEntryLines = ({
14923
14740
  sendingForm,
14924
14741
  config
14925
14742
  }) => {
14926
- const { data: accountsData } = (0, import_react165.useContext)(ChartOfAccountsContext);
14927
- const { form } = (0, import_react165.useContext)(JournalContext);
14743
+ const { data: accountsData } = (0, import_react164.useContext)(ChartOfAccountsContext);
14744
+ const { form } = (0, import_react164.useContext)(JournalContext);
14928
14745
  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(
14746
+ return /* @__PURE__ */ import_react164.default.createElement(import_react164.default.Fragment, null, Object.keys(Direction).map((direction, idx) => {
14747
+ return /* @__PURE__ */ import_react164.default.createElement(
14931
14748
  "div",
14932
14749
  {
14933
14750
  key: "Layer__journal__form__input-group-" + idx,
14934
14751
  className: "Layer__journal__form__input-group Layer__journal__form__input-group__border"
14935
14752
  },
14936
- /* @__PURE__ */ import_react165.default.createElement(
14753
+ /* @__PURE__ */ import_react164.default.createElement(
14937
14754
  Text,
14938
14755
  {
14939
14756
  className: "Layer__journal__form__input-group__title",
@@ -14947,13 +14764,13 @@ var JournalFormEntryLines = ({
14947
14764
  if (item.direction !== direction) {
14948
14765
  return null;
14949
14766
  }
14950
- return /* @__PURE__ */ import_react165.default.createElement(
14767
+ return /* @__PURE__ */ import_react164.default.createElement(
14951
14768
  "div",
14952
14769
  {
14953
14770
  className: "Layer__journal__form__input-group__line-item",
14954
14771
  key: direction + "-" + idx2
14955
14772
  },
14956
- /* @__PURE__ */ import_react165.default.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ import_react165.default.createElement(
14773
+ /* @__PURE__ */ import_react164.default.createElement(InputGroup, { name: direction, label: "Amount", inline: true }, /* @__PURE__ */ import_react164.default.createElement(
14957
14774
  InputWithBadge,
14958
14775
  {
14959
14776
  name: direction,
@@ -14979,14 +14796,14 @@ var JournalFormEntryLines = ({
14979
14796
  )?.message
14980
14797
  }
14981
14798
  )),
14982
- /* @__PURE__ */ import_react165.default.createElement(
14799
+ /* @__PURE__ */ import_react164.default.createElement(
14983
14800
  InputGroup,
14984
14801
  {
14985
14802
  name: "account-name",
14986
14803
  label: "Account name",
14987
14804
  inline: true
14988
14805
  },
14989
- /* @__PURE__ */ import_react165.default.createElement(
14806
+ /* @__PURE__ */ import_react164.default.createElement(
14990
14807
  Select2,
14991
14808
  {
14992
14809
  options: parentOptions,
@@ -15010,18 +14827,18 @@ var JournalFormEntryLines = ({
15010
14827
  )?.message
15011
14828
  }
15012
14829
  ),
15013
- idx2 >= 2 && /* @__PURE__ */ import_react165.default.createElement(
14830
+ idx2 >= 2 && /* @__PURE__ */ import_react164.default.createElement(
15014
14831
  IconButton,
15015
14832
  {
15016
14833
  className: "Layer__remove__button",
15017
14834
  onClick: () => removeEntryLine(idx2),
15018
- icon: /* @__PURE__ */ import_react165.default.createElement(Trash_default, null)
14835
+ icon: /* @__PURE__ */ import_react164.default.createElement(Trash_default, null)
15019
14836
  }
15020
14837
  )
15021
14838
  )
15022
14839
  );
15023
14840
  }),
15024
- (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > entrylineItems?.length) && /* @__PURE__ */ import_react165.default.createElement(
14841
+ (config.form.addEntryLinesLimit === void 0 || config.form.addEntryLinesLimit > entrylineItems?.length) && /* @__PURE__ */ import_react164.default.createElement(
15025
14842
  TextButton,
15026
14843
  {
15027
14844
  className: "Layer__journal__add-entry-line",
@@ -15034,7 +14851,10 @@ var JournalFormEntryLines = ({
15034
14851
  };
15035
14852
 
15036
14853
  // src/components/JournalForm/JournalForm.tsx
15037
- var JournalForm = ({ config, stringOverrides }) => {
14854
+ var JournalForm = ({
14855
+ config,
14856
+ stringOverrides
14857
+ }) => {
15038
14858
  const {
15039
14859
  form,
15040
14860
  cancelForm,
@@ -15044,8 +14864,8 @@ var JournalForm = ({ config, stringOverrides }) => {
15044
14864
  changeFormData,
15045
14865
  addEntryLine,
15046
14866
  removeEntryLine
15047
- } = (0, import_react166.useContext)(JournalContext);
15048
- return /* @__PURE__ */ import_react166.default.createElement(
14867
+ } = (0, import_react165.useContext)(JournalContext);
14868
+ return /* @__PURE__ */ import_react165.default.createElement(
15049
14869
  "form",
15050
14870
  {
15051
14871
  className: "Layer__form",
@@ -15054,7 +14874,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15054
14874
  submitForm();
15055
14875
  }
15056
14876
  },
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(
14877
+ /* @__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
14878
  Button,
15059
14879
  {
15060
14880
  type: "button",
@@ -15063,7 +14883,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15063
14883
  disabled: sendingForm
15064
14884
  },
15065
14885
  stringOverrides?.cancelButton || "Cancel"
15066
- ), apiError && /* @__PURE__ */ import_react166.default.createElement(
14886
+ ), apiError && /* @__PURE__ */ import_react165.default.createElement(
15067
14887
  RetryButton,
15068
14888
  {
15069
14889
  type: "submit",
@@ -15072,7 +14892,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15072
14892
  disabled: sendingForm
15073
14893
  },
15074
14894
  stringOverrides?.retryButton || "Retry"
15075
- ), !apiError && /* @__PURE__ */ import_react166.default.createElement(
14895
+ ), !apiError && /* @__PURE__ */ import_react165.default.createElement(
15076
14896
  SubmitButton,
15077
14897
  {
15078
14898
  type: "submit",
@@ -15082,7 +14902,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15082
14902
  },
15083
14903
  stringOverrides?.saveButton || "Save"
15084
14904
  ))),
15085
- apiError && /* @__PURE__ */ import_react166.default.createElement(
14905
+ apiError && /* @__PURE__ */ import_react165.default.createElement(
15086
14906
  Text,
15087
14907
  {
15088
14908
  size: "sm" /* sm */,
@@ -15090,7 +14910,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15090
14910
  },
15091
14911
  apiError
15092
14912
  ),
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(
14913
+ /* @__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
14914
  DatePicker,
15095
14915
  {
15096
14916
  selected: form?.data.entry_at ? new Date(form?.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -15103,7 +14923,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15103
14923
  placeholderText: "Select date",
15104
14924
  currentDateOption: false
15105
14925
  }
15106
- ), /* @__PURE__ */ import_react166.default.createElement(
14926
+ ), /* @__PURE__ */ import_react165.default.createElement(
15107
14927
  DatePicker,
15108
14928
  {
15109
14929
  selected: form?.data.entry_at ? new Date(form?.data.entry_at) : /* @__PURE__ */ new Date(),
@@ -15117,7 +14937,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15117
14937
  currentDateOption: false
15118
14938
  }
15119
14939
  )))),
15120
- /* @__PURE__ */ import_react166.default.createElement(
14940
+ /* @__PURE__ */ import_react165.default.createElement(
15121
14941
  JournalFormEntryLines,
15122
14942
  {
15123
14943
  entrylineItems: form?.data.line_items || [],
@@ -15128,7 +14948,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15128
14948
  config
15129
14949
  }
15130
14950
  ),
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(
14951
+ /* @__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
14952
  Textarea,
15133
14953
  {
15134
14954
  name: "memo",
@@ -15138,7 +14958,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15138
14958
  disabled: sendingForm
15139
14959
  }
15140
14960
  ))),
15141
- /* @__PURE__ */ import_react166.default.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ import_react166.default.createElement(
14961
+ /* @__PURE__ */ import_react165.default.createElement("div", { className: "Layer__journal__bottom-actions" }, /* @__PURE__ */ import_react165.default.createElement(
15142
14962
  Button,
15143
14963
  {
15144
14964
  type: "button",
@@ -15147,7 +14967,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15147
14967
  disabled: sendingForm
15148
14968
  },
15149
14969
  stringOverrides?.cancelButton || "Cancel"
15150
- ), apiError && /* @__PURE__ */ import_react166.default.createElement(
14970
+ ), apiError && /* @__PURE__ */ import_react165.default.createElement(
15151
14971
  RetryButton,
15152
14972
  {
15153
14973
  type: "submit",
@@ -15156,7 +14976,7 @@ var JournalForm = ({ config, stringOverrides }) => {
15156
14976
  disabled: sendingForm
15157
14977
  },
15158
14978
  stringOverrides?.retryButton || "Retry"
15159
- ), !apiError && /* @__PURE__ */ import_react166.default.createElement(
14979
+ ), !apiError && /* @__PURE__ */ import_react165.default.createElement(
15160
14980
  SubmitButton,
15161
14981
  {
15162
14982
  type: "submit",
@@ -15175,17 +14995,122 @@ var JournalSidebar = ({
15175
14995
  config,
15176
14996
  stringOverrides
15177
14997
  }) => {
15178
- const { selectedEntryId } = (0, import_react167.useContext)(JournalContext);
14998
+ const { selectedEntryId } = (0, import_react166.useContext)(JournalContext);
15179
14999
  if (selectedEntryId !== "new") {
15180
- return /* @__PURE__ */ import_react167.default.createElement(JournalEntryDetails, null);
15000
+ return /* @__PURE__ */ import_react166.default.createElement(JournalEntryDetails, null);
15181
15001
  }
15182
- return /* @__PURE__ */ import_react167.default.createElement(JournalForm, { config, stringOverrides });
15002
+ return /* @__PURE__ */ import_react166.default.createElement(JournalForm, { config, stringOverrides });
15183
15003
  };
15184
15004
 
15185
15005
  // src/components/JournalTable/JournalTable.tsx
15186
- var COMPONENT_NAME6 = "journal";
15006
+ var import_react167 = __toESM(require("react"));
15007
+ var import_date_fns33 = require("date-fns");
15008
+ var rowId = (row) => {
15009
+ if ("id" in row) {
15010
+ return row.id;
15011
+ }
15012
+ if ("account_identifier" in row) {
15013
+ return `${row.account_identifier.id}-${Math.random()}`;
15014
+ }
15015
+ return `${Math.random()}`;
15016
+ };
15017
+ var accountName = (row) => {
15018
+ if ("account" in row) {
15019
+ return row.account.name;
15020
+ }
15021
+ if ("account_identifier" in row) {
15022
+ return row.account_identifier.name;
15023
+ }
15024
+ return "";
15025
+ };
15187
15026
  var JournalTable = ({
15188
15027
  view,
15028
+ data,
15029
+ stringOverrides
15030
+ }) => /* @__PURE__ */ import_react167.default.createElement(TableProvider, null, /* @__PURE__ */ import_react167.default.createElement(
15031
+ JournalTableContent,
15032
+ {
15033
+ view,
15034
+ data,
15035
+ stringOverrides
15036
+ }
15037
+ ));
15038
+ var JournalTableContent = ({
15039
+ data,
15040
+ stringOverrides
15041
+ }) => {
15042
+ const { selectedEntryId, setSelectedEntryId, closeSelectedEntry } = (0, import_react167.useContext)(JournalContext);
15043
+ const { isOpen, setIsOpen } = useTableExpandRow();
15044
+ (0, import_react167.useEffect)(() => {
15045
+ if (data.length > 0) {
15046
+ setIsOpen([`journal-row- + ${data[0].id}`]);
15047
+ }
15048
+ }, []);
15049
+ const renderJournalRow = (row, index, rowKey, depth) => {
15050
+ const expandable = !!row.line_items && row.line_items.length > 0;
15051
+ const expanded = expandable ? isOpen(rowKey) : true;
15052
+ return /* @__PURE__ */ import_react167.default.createElement(import_react167.default.Fragment, { key: rowKey + "-" + index }, /* @__PURE__ */ import_react167.default.createElement(
15053
+ TableRow,
15054
+ {
15055
+ rowKey: rowKey + "-" + index,
15056
+ expandable,
15057
+ isExpanded: expanded,
15058
+ handleExpand: () => setIsOpen(rowKey),
15059
+ selected: selectedEntryId === row.id,
15060
+ onClick: (e) => {
15061
+ e.stopPropagation();
15062
+ if (selectedEntryId === row.id) {
15063
+ closeSelectedEntry();
15064
+ } else {
15065
+ setSelectedEntryId(row.id);
15066
+ }
15067
+ },
15068
+ depth
15069
+ },
15070
+ /* @__PURE__ */ import_react167.default.createElement(
15071
+ TableCell,
15072
+ {
15073
+ withExpandIcon: expandable,
15074
+ onClick: (e) => {
15075
+ e.stopPropagation();
15076
+ expandable && setIsOpen(rowKey);
15077
+ }
15078
+ },
15079
+ rowId(row).substring(0, 5)
15080
+ ),
15081
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, row.date && (0, import_date_fns33.format)((0, import_date_fns33.parseISO)(row.date), DATE_FORMAT)),
15082
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, humanizeEnum(row.entry_type)),
15083
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, "(", row.line_items.length, ")"),
15084
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, "line_items" in row && Math.abs(
15085
+ row.line_items.filter((item) => item.direction === "DEBIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
15086
+ )),
15087
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, { isCurrency: true, primary: true }, "line_items" in row && Math.abs(
15088
+ row.line_items.filter((item) => item.direction === "CREDIT").map((item) => item.amount).reduce((a, b) => a + b, 0)
15089
+ ))
15090
+ ), expandable && expanded && row.line_items.map((subItem, subIdx) => /* @__PURE__ */ import_react167.default.createElement(
15091
+ TableRow,
15092
+ {
15093
+ key: rowKey + "-" + index + "-" + subIdx,
15094
+ rowKey: rowKey + "-" + index + "-" + subIdx,
15095
+ depth: depth + 1,
15096
+ selected: selectedEntryId === row.id
15097
+ },
15098
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15099
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15100
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null),
15101
+ /* @__PURE__ */ import_react167.default.createElement(TableCell, null, accountName(subItem)),
15102
+ 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),
15103
+ 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)
15104
+ )));
15105
+ };
15106
+ 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(
15107
+ (entry, idx) => renderJournalRow(entry, idx, `journal-row-${entry.id}`, 0)
15108
+ )));
15109
+ };
15110
+
15111
+ // src/components/JournalTable/JournalTableWithPanel.tsx
15112
+ var COMPONENT_NAME6 = "journal";
15113
+ var JournalTableWithPanel = ({
15189
15114
  containerRef,
15190
15115
  pageSize = 15,
15191
15116
  config,
@@ -15209,22 +15134,19 @@ var JournalTable = ({
15209
15134
  return /* @__PURE__ */ import_react168.default.createElement(
15210
15135
  Panel,
15211
15136
  {
15212
- sidebar: /* @__PURE__ */ import_react168.default.createElement(JournalSidebar, { parentRef: containerRef, config, stringOverrides: stringOverrides?.journalForm }),
15137
+ sidebar: /* @__PURE__ */ import_react168.default.createElement(
15138
+ JournalSidebar,
15139
+ {
15140
+ parentRef: containerRef,
15141
+ config,
15142
+ stringOverrides: stringOverrides?.journalForm
15143
+ }
15144
+ ),
15213
15145
  sidebarIsOpen: Boolean(selectedEntryId),
15214
15146
  parentRef: containerRef
15215
15147
  },
15216
15148
  /* @__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
- }))),
15149
+ data && /* @__PURE__ */ import_react168.default.createElement(JournalTable, { view: "desktop", data }),
15228
15150
  data && /* @__PURE__ */ import_react168.default.createElement("div", { className: "Layer__journal__pagination" }, /* @__PURE__ */ import_react168.default.createElement(
15229
15151
  Pagination,
15230
15152
  {
@@ -15234,6 +15156,14 @@ var JournalTable = ({
15234
15156
  onPageChange: (page) => setCurrentPage(page)
15235
15157
  }
15236
15158
  )),
15159
+ data?.length === 0 && !isLoading && !error && /* @__PURE__ */ import_react168.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react168.default.createElement(
15160
+ DataState,
15161
+ {
15162
+ status: "allDone" /* allDone */,
15163
+ title: "No entries found",
15164
+ description: "There are no entries in the journal."
15165
+ }
15166
+ )),
15237
15167
  error ? /* @__PURE__ */ import_react168.default.createElement("div", { className: "Layer__table-state-container" }, /* @__PURE__ */ import_react168.default.createElement(
15238
15168
  DataState,
15239
15169
  {
@@ -15257,7 +15187,7 @@ var JOURNAL_CONFIG = {
15257
15187
  var Journal = (props) => {
15258
15188
  const JournalContextData = useJournal();
15259
15189
  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 }))));
15190
+ 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
15191
  };
15262
15192
  var JournalContent = ({
15263
15193
  asWidget,
@@ -15277,7 +15207,7 @@ var JournalContent = ({
15277
15207
  }
15278
15208
  });
15279
15209
  return /* @__PURE__ */ import_react169.default.createElement(Container, { name: "journal", ref: containerRef, asWidget }, /* @__PURE__ */ import_react169.default.createElement(
15280
- JournalTable,
15210
+ JournalTableWithPanel,
15281
15211
  {
15282
15212
  view,
15283
15213
  containerRef,
@@ -15367,8 +15297,8 @@ function isComplete(taskType) {
15367
15297
  var import_react172 = __toESM(require("react"));
15368
15298
 
15369
15299
  // src/icons/ProgressIcon.tsx
15370
- var React173 = __toESM(require("react"));
15371
- var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createElement(
15300
+ var React170 = __toESM(require("react"));
15301
+ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React170.createElement(
15372
15302
  "svg",
15373
15303
  {
15374
15304
  xmlns: "http://www.w3.org/2000/svg",
@@ -15378,7 +15308,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15378
15308
  width: size,
15379
15309
  height: size
15380
15310
  },
15381
- /* @__PURE__ */ React173.createElement(
15311
+ /* @__PURE__ */ React170.createElement(
15382
15312
  "path",
15383
15313
  {
15384
15314
  d: "M9 1.5V4.5",
@@ -15387,7 +15317,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15387
15317
  strokeLinejoin: "round"
15388
15318
  }
15389
15319
  ),
15390
- /* @__PURE__ */ React173.createElement(
15320
+ /* @__PURE__ */ React170.createElement(
15391
15321
  "path",
15392
15322
  {
15393
15323
  d: "M9 13.5V16.5",
@@ -15396,7 +15326,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15396
15326
  strokeLinejoin: "round"
15397
15327
  }
15398
15328
  ),
15399
- /* @__PURE__ */ React173.createElement(
15329
+ /* @__PURE__ */ React170.createElement(
15400
15330
  "path",
15401
15331
  {
15402
15332
  d: "M3.6975 3.6975L5.82 5.82",
@@ -15405,7 +15335,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15405
15335
  strokeLinejoin: "round"
15406
15336
  }
15407
15337
  ),
15408
- /* @__PURE__ */ React173.createElement(
15338
+ /* @__PURE__ */ React170.createElement(
15409
15339
  "path",
15410
15340
  {
15411
15341
  d: "M12.18 12.18L14.3025 14.3025",
@@ -15414,7 +15344,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15414
15344
  strokeLinejoin: "round"
15415
15345
  }
15416
15346
  ),
15417
- /* @__PURE__ */ React173.createElement(
15347
+ /* @__PURE__ */ React170.createElement(
15418
15348
  "path",
15419
15349
  {
15420
15350
  d: "M1.5 9H4.5",
@@ -15423,7 +15353,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15423
15353
  strokeLinejoin: "round"
15424
15354
  }
15425
15355
  ),
15426
- /* @__PURE__ */ React173.createElement(
15356
+ /* @__PURE__ */ React170.createElement(
15427
15357
  "path",
15428
15358
  {
15429
15359
  d: "M13.5 9H16.5",
@@ -15432,7 +15362,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15432
15362
  strokeLinejoin: "round"
15433
15363
  }
15434
15364
  ),
15435
- /* @__PURE__ */ React173.createElement(
15365
+ /* @__PURE__ */ React170.createElement(
15436
15366
  "path",
15437
15367
  {
15438
15368
  d: "M3.6975 14.3025L5.82 12.18",
@@ -15441,7 +15371,7 @@ var ProgressIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React173.createE
15441
15371
  strokeLinejoin: "round"
15442
15372
  }
15443
15373
  ),
15444
- /* @__PURE__ */ React173.createElement(
15374
+ /* @__PURE__ */ React170.createElement(
15445
15375
  "path",
15446
15376
  {
15447
15377
  d: "M12.18 5.82L14.3025 3.6975",
@@ -15500,8 +15430,8 @@ var TasksHeader = ({
15500
15430
  var import_react174 = __toESM(require("react"));
15501
15431
 
15502
15432
  // src/icons/SmileIcon.tsx
15503
- var React175 = __toESM(require("react"));
15504
- var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React175.createElement(
15433
+ var React172 = __toESM(require("react"));
15434
+ var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React172.createElement(
15505
15435
  "svg",
15506
15436
  {
15507
15437
  viewBox: "0 0 12 12",
@@ -15511,7 +15441,7 @@ var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React175.createElem
15511
15441
  width: size,
15512
15442
  height: size
15513
15443
  },
15514
- /* @__PURE__ */ React175.createElement(
15444
+ /* @__PURE__ */ React172.createElement(
15515
15445
  "path",
15516
15446
  {
15517
15447
  d: "M6.5 11.5C9.26142 11.5 11.5 9.26142 11.5 6.5C11.5 3.73858 9.26142 1.5 6.5 1.5C3.73858 1.5 1.5 3.73858 1.5 6.5C1.5 9.26142 3.73858 11.5 6.5 11.5Z",
@@ -15520,7 +15450,7 @@ var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React175.createElem
15520
15450
  strokeLinejoin: "round"
15521
15451
  }
15522
15452
  ),
15523
- /* @__PURE__ */ React175.createElement(
15453
+ /* @__PURE__ */ React172.createElement(
15524
15454
  "path",
15525
15455
  {
15526
15456
  d: "M4.5 7.5C4.5 7.5 5.25 8.5 6.5 8.5C7.75 8.5 8.5 7.5 8.5 7.5",
@@ -15529,7 +15459,7 @@ var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React175.createElem
15529
15459
  strokeLinejoin: "round"
15530
15460
  }
15531
15461
  ),
15532
- /* @__PURE__ */ React175.createElement(
15462
+ /* @__PURE__ */ React172.createElement(
15533
15463
  "path",
15534
15464
  {
15535
15465
  d: "M5 5H5.005",
@@ -15538,7 +15468,7 @@ var SmileIcon = ({ size = 12, ...props }) => /* @__PURE__ */ React175.createElem
15538
15468
  strokeLinejoin: "round"
15539
15469
  }
15540
15470
  ),
15541
- /* @__PURE__ */ React175.createElement(
15471
+ /* @__PURE__ */ React172.createElement(
15542
15472
  "path",
15543
15473
  {
15544
15474
  d: "M8 5H8.005",
@@ -15552,7 +15482,7 @@ var SmileIcon_default = SmileIcon;
15552
15482
 
15553
15483
  // src/components/TasksListItem/TasksListItem.tsx
15554
15484
  var import_react173 = __toESM(require("react"));
15555
- var import_classnames61 = __toESM(require("classnames"));
15485
+ var import_classnames59 = __toESM(require("classnames"));
15556
15486
  var TasksListItem = ({
15557
15487
  task,
15558
15488
  goToNextPageIfAllComplete,
@@ -15561,16 +15491,16 @@ var TasksListItem = ({
15561
15491
  const [isOpen, setIsOpen] = (0, import_react173.useState)(defaultOpen);
15562
15492
  const [userResponse, setUserResponse] = (0, import_react173.useState)(task.user_response || "");
15563
15493
  const { submitResponseToTask: submitResponseToTask2 } = (0, import_react173.useContext)(TasksContext);
15564
- const taskBodyClassName = (0, import_classnames61.default)(
15494
+ const taskBodyClassName = (0, import_classnames59.default)(
15565
15495
  "Layer__tasks-list-item__body",
15566
15496
  isOpen && "Layer__tasks-list-item__body--expanded",
15567
15497
  isComplete(task.status) && "Layer__tasks-list-item--completed"
15568
15498
  );
15569
- const taskHeadClassName = (0, import_classnames61.default)(
15499
+ const taskHeadClassName = (0, import_classnames59.default)(
15570
15500
  "Layer__tasks-list-item__head-info",
15571
15501
  isComplete(task.status) ? "Layer__tasks-list-item--completed" : "Layer__tasks-list-item--pending"
15572
15502
  );
15573
- const taskItemClassName = (0, import_classnames61.default)(
15503
+ const taskItemClassName = (0, import_classnames59.default)(
15574
15504
  "Layer__tasks-list-item",
15575
15505
  isOpen && "Layer__tasks-list-item__expanded"
15576
15506
  );
@@ -15669,7 +15599,7 @@ var TasksList = ({ pageSize = 10 }) => {
15669
15599
 
15670
15600
  // src/components/TasksPending/TasksPending.tsx
15671
15601
  var import_react175 = __toESM(require("react"));
15672
- var import_classnames62 = __toESM(require("classnames"));
15602
+ var import_classnames60 = __toESM(require("classnames"));
15673
15603
  var import_date_fns34 = require("date-fns");
15674
15604
  var import_recharts4 = require("recharts");
15675
15605
  var TasksPending = () => {
@@ -15685,7 +15615,7 @@ var TasksPending = () => {
15685
15615
  value: data?.filter((task) => !isComplete(task.status)).length
15686
15616
  }
15687
15617
  ];
15688
- const taskStatusClassName = (0, import_classnames62.default)(
15618
+ const taskStatusClassName = (0, import_classnames60.default)(
15689
15619
  completedTasks && completedTasks > 0 ? "Layer__tasks-pending-bar__status--done" : "Layer__tasks-pending-bar__status--pending"
15690
15620
  );
15691
15621
  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 +15649,7 @@ var TasksPending = () => {
15719
15649
  };
15720
15650
 
15721
15651
  // src/components/Tasks/Tasks.tsx
15722
- var import_classnames63 = __toESM(require("classnames"));
15652
+ var import_classnames61 = __toESM(require("classnames"));
15723
15653
  var UseTasksContext = (0, import_react176.createContext)({
15724
15654
  data: void 0,
15725
15655
  isLoading: void 0,
@@ -15791,7 +15721,7 @@ var TasksComponent = ({
15791
15721
  ), /* @__PURE__ */ import_react176.default.createElement(
15792
15722
  "div",
15793
15723
  {
15794
- className: (0, import_classnames63.default)(
15724
+ className: (0, import_classnames61.default)(
15795
15725
  "Layer__tasks__content",
15796
15726
  !open && "Layer__tasks__content--collapsed"
15797
15727
  )
@@ -15804,8 +15734,8 @@ var TasksComponent = ({
15804
15734
  var import_react177 = __toESM(require("react"));
15805
15735
 
15806
15736
  // src/icons/Coffee.tsx
15807
- var React180 = __toESM(require("react"));
15808
- var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createElement(
15737
+ var React177 = __toESM(require("react"));
15738
+ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React177.createElement(
15809
15739
  "svg",
15810
15740
  {
15811
15741
  xmlns: "http://www.w3.org/2000/svg",
@@ -15815,7 +15745,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15815
15745
  width: size,
15816
15746
  height: size
15817
15747
  },
15818
- /* @__PURE__ */ React180.createElement("g", { "clip-path": "url(#clip0_5018_10141)" }, /* @__PURE__ */ React180.createElement(
15748
+ /* @__PURE__ */ React177.createElement("g", { clipPath: "url(#clip0_5018_10141)" }, /* @__PURE__ */ React177.createElement(
15819
15749
  "path",
15820
15750
  {
15821
15751
  d: "M3.25 4.16666H2.79167C2.30544 4.16666 1.83912 4.35981 1.4953 4.70363C1.15149 5.04744 0.958333 5.51376 0.958333 5.99999C0.958333 6.48622 1.15149 6.95254 1.4953 7.29635C1.83912 7.64017 2.30544 7.83332 2.79167 7.83332H3.25",
@@ -15823,7 +15753,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15823
15753
  strokeLinecap: "round",
15824
15754
  strokeLinejoin: "round"
15825
15755
  }
15826
- ), /* @__PURE__ */ React180.createElement(
15756
+ ), /* @__PURE__ */ React177.createElement(
15827
15757
  "path",
15828
15758
  {
15829
15759
  d: "M10.5834 4.16666H3.25004V8.29166C3.25004 8.77789 3.4432 9.2442 3.78701 9.58802C4.13083 9.93184 4.59714 10.125 5.08337 10.125H8.75004C9.23627 10.125 9.70259 9.93184 10.0464 9.58802C10.3902 9.2442 10.5834 8.77789 10.5834 8.29166V4.16666Z",
@@ -15831,7 +15761,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15831
15761
  strokeLinecap: "round",
15832
15762
  strokeLinejoin: "round"
15833
15763
  }
15834
- ), /* @__PURE__ */ React180.createElement(
15764
+ ), /* @__PURE__ */ React177.createElement(
15835
15765
  "path",
15836
15766
  {
15837
15767
  d: "M8.75 0.958344V2.33334",
@@ -15839,7 +15769,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15839
15769
  strokeLinecap: "round",
15840
15770
  strokeLinejoin: "round"
15841
15771
  }
15842
- ), /* @__PURE__ */ React180.createElement(
15772
+ ), /* @__PURE__ */ React177.createElement(
15843
15773
  "path",
15844
15774
  {
15845
15775
  d: "M6.91663 0.958344V2.33334",
@@ -15847,7 +15777,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15847
15777
  strokeLinecap: "round",
15848
15778
  strokeLinejoin: "round"
15849
15779
  }
15850
- ), /* @__PURE__ */ React180.createElement(
15780
+ ), /* @__PURE__ */ React177.createElement(
15851
15781
  "path",
15852
15782
  {
15853
15783
  d: "M5.08337 0.958344V2.33334",
@@ -15856,7 +15786,7 @@ var CoffeeIcon = ({ size = 11, ...props }) => /* @__PURE__ */ React180.createEle
15856
15786
  strokeLinejoin: "round"
15857
15787
  }
15858
15788
  )),
15859
- /* @__PURE__ */ React180.createElement("defs", null, /* @__PURE__ */ React180.createElement("clipPath", { id: "clip0_5018_10141" }, /* @__PURE__ */ React180.createElement(
15789
+ /* @__PURE__ */ React177.createElement("defs", null, /* @__PURE__ */ React177.createElement("clipPath", { id: "clip0_5018_10141" }, /* @__PURE__ */ React177.createElement(
15860
15790
  "rect",
15861
15791
  {
15862
15792
  width: "11",
@@ -15885,7 +15815,7 @@ var BookkeepingUpsellBar = ({
15885
15815
 
15886
15816
  // src/views/BookkeepingOverview/BookkeepingOverview.tsx
15887
15817
  var import_react178 = __toESM(require("react"));
15888
- var import_classnames64 = __toESM(require("classnames"));
15818
+ var import_classnames62 = __toESM(require("classnames"));
15889
15819
  var BookkeepingOverview = ({
15890
15820
  title,
15891
15821
  // deprecated
@@ -15951,7 +15881,7 @@ var BookkeepingOverview = ({
15951
15881
  ), /* @__PURE__ */ import_react178.default.createElement(
15952
15882
  Container,
15953
15883
  {
15954
- name: (0, import_classnames64.default)(
15884
+ name: (0, import_classnames62.default)(
15955
15885
  "bookkeeping-overview-profit-and-loss-chart",
15956
15886
  pnlToggle !== "revenue" && "bookkeeping-overview-profit-and-loss-chart--hidden"
15957
15887
  )
@@ -15967,7 +15897,7 @@ var BookkeepingOverview = ({
15967
15897
  ), /* @__PURE__ */ import_react178.default.createElement(
15968
15898
  Container,
15969
15899
  {
15970
- name: (0, import_classnames64.default)(
15900
+ name: (0, import_classnames62.default)(
15971
15901
  "bookkeeping-overview-profit-and-loss-chart",
15972
15902
  pnlToggle !== "expenses" && "bookkeeping-overview-profit-and-loss-chart--hidden"
15973
15903
  )
@@ -15998,13 +15928,13 @@ var BadgeLoader = ({ children }) => {
15998
15928
 
15999
15929
  // src/components/NotificationCard/NotificationCard.tsx
16000
15930
  var import_react180 = __toESM(require("react"));
16001
- var import_classnames65 = __toESM(require("classnames"));
15931
+ var import_classnames63 = __toESM(require("classnames"));
16002
15932
  var NotificationCard = ({
16003
15933
  onClick,
16004
15934
  children,
16005
15935
  className
16006
15936
  }) => {
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(
15937
+ 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
15938
  IconButton,
16009
15939
  {
16010
15940
  icon: /* @__PURE__ */ import_react180.default.createElement(ChevronRight_default, null),
@@ -16083,7 +16013,7 @@ var TransactionToReviewCard = ({
16083
16013
  };
16084
16014
 
16085
16015
  // src/views/AccountingOverview/AccountingOverview.tsx
16086
- var import_classnames66 = __toESM(require("classnames"));
16016
+ var import_classnames64 = __toESM(require("classnames"));
16087
16017
  var AccountingOverview = ({
16088
16018
  title = "Accounting overview",
16089
16019
  enableOnboarding = false,
@@ -16143,7 +16073,7 @@ var AccountingOverview = ({
16143
16073
  ), /* @__PURE__ */ import_react182.default.createElement(
16144
16074
  Container,
16145
16075
  {
16146
- name: (0, import_classnames66.default)(
16076
+ name: (0, import_classnames64.default)(
16147
16077
  "accounting-overview-profit-and-loss-chart",
16148
16078
  pnlToggle !== "revenue" && "accounting-overview-profit-and-loss-chart--hidden"
16149
16079
  )
@@ -16160,7 +16090,7 @@ var AccountingOverview = ({
16160
16090
  ), /* @__PURE__ */ import_react182.default.createElement(
16161
16091
  Container,
16162
16092
  {
16163
- name: (0, import_classnames66.default)(
16093
+ name: (0, import_classnames64.default)(
16164
16094
  "accounting-overview-profit-and-loss-chart",
16165
16095
  pnlToggle !== "expenses" && "accounting-overview-profit-and-loss-chart--hidden"
16166
16096
  )
@@ -16252,7 +16182,8 @@ var GeneralLedgerView = ({
16252
16182
  // src/views/Reports/Reports.tsx
16253
16183
  var import_react185 = __toESM(require("react"));
16254
16184
  var DownloadButton2 = ({
16255
- stringOverrides
16185
+ stringOverrides,
16186
+ moneyFormat
16256
16187
  }) => {
16257
16188
  const { dateRange } = (0, import_react185.useContext)(ProfitAndLoss.Context);
16258
16189
  const { auth, businessId, apiUrl } = useLayerContext();
@@ -16267,7 +16198,8 @@ var DownloadButton2 = ({
16267
16198
  params: {
16268
16199
  businessId,
16269
16200
  year,
16270
- month
16201
+ month,
16202
+ moneyFormat
16271
16203
  }
16272
16204
  }
16273
16205
  );
@@ -16321,7 +16253,9 @@ var Reports = ({
16321
16253
  title,
16322
16254
  stringOverrides,
16323
16255
  enabledReports = ["profitAndLoss", "balanceSheet", "statementOfCashFlow"],
16324
- comparisonConfig
16256
+ comparisonConfig,
16257
+ profitAndLossConfig,
16258
+ statementOfCashFlowConfig
16325
16259
  }) => {
16326
16260
  const containerRef = (0, import_react185.useRef)(null);
16327
16261
  const [activeTab, setActiveTab] = (0, import_react185.useState)(enabledReports[0]);
@@ -16341,7 +16275,9 @@ var Reports = ({
16341
16275
  containerRef,
16342
16276
  openReport: activeTab,
16343
16277
  stringOverrides,
16344
- comparisonConfig
16278
+ comparisonConfig,
16279
+ profitAndLossConfig,
16280
+ statementOfCashFlowConfig
16345
16281
  }
16346
16282
  ))));
16347
16283
  };
@@ -16349,14 +16285,21 @@ var ReportsPanel = ({
16349
16285
  containerRef,
16350
16286
  openReport,
16351
16287
  stringOverrides,
16352
- comparisonConfig
16288
+ comparisonConfig,
16289
+ profitAndLossConfig,
16290
+ statementOfCashFlowConfig
16353
16291
  }) => {
16354
16292
  const { sidebarScope } = (0, import_react185.useContext)(ProfitAndLoss.Context);
16355
16293
  return /* @__PURE__ */ import_react185.default.createElement(import_react185.default.Fragment, null, openReport === "profitAndLoss" && /* @__PURE__ */ import_react185.default.createElement(
16356
16294
  View,
16357
16295
  {
16358
16296
  type: "panel",
16359
- headerControls: /* @__PURE__ */ import_react185.default.createElement(import_react185.default.Fragment, null, /* @__PURE__ */ import_react185.default.createElement(ProfitAndLoss.DatePicker, null), /* @__PURE__ */ import_react185.default.createElement("div", { className: "Layer__compare__controls__wrapper" }, comparisonConfig && /* @__PURE__ */ import_react185.default.createElement(
16297
+ headerControls: /* @__PURE__ */ import_react185.default.createElement(import_react185.default.Fragment, null, /* @__PURE__ */ import_react185.default.createElement(
16298
+ ProfitAndLoss.DatePicker,
16299
+ {
16300
+ datePickerMode: profitAndLossConfig?.datePickerMode
16301
+ }
16302
+ ), /* @__PURE__ */ import_react185.default.createElement("div", { className: "Layer__compare__controls__wrapper" }, comparisonConfig && /* @__PURE__ */ import_react185.default.createElement(
16360
16303
  ProfitAndLoss.CompareOptions,
16361
16304
  {
16362
16305
  tagComparisonOptions: comparisonConfig.tagComparisonOptions,
@@ -16365,7 +16308,8 @@ var ReportsPanel = ({
16365
16308
  ), /* @__PURE__ */ import_react185.default.createElement(
16366
16309
  DownloadButton2,
16367
16310
  {
16368
- stringOverrides: stringOverrides?.downloadButton
16311
+ stringOverrides: stringOverrides?.downloadButton,
16312
+ moneyFormat: profitAndLossConfig?.csvMoneyFormat
16369
16313
  }
16370
16314
  )))
16371
16315
  },
@@ -16393,7 +16337,8 @@ var ReportsPanel = ({
16393
16337
  ), openReport === "balanceSheet" && /* @__PURE__ */ import_react185.default.createElement(BalanceSheet, { stringOverrides: stringOverrides?.balanceSheet }), openReport === "statementOfCashFlow" && /* @__PURE__ */ import_react185.default.createElement(
16394
16338
  StatementOfCashFlow,
16395
16339
  {
16396
- stringOverrides: stringOverrides?.statementOfCashflow
16340
+ stringOverrides: stringOverrides?.statementOfCashflow,
16341
+ datePickerMode: statementOfCashFlowConfig?.datePickerMode
16397
16342
  }
16398
16343
  ));
16399
16344
  };