@layerfi/components 0.1.50 → 0.1.52

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.
@@ -0,0 +1,61 @@
1
+ <component name="ProjectCodeStyleConfiguration">
2
+ <code_scheme name="Project" version="173">
3
+ <HTMLCodeStyleSettings>
4
+ <option name="HTML_SPACE_INSIDE_EMPTY_TAG" value="true" />
5
+ </HTMLCodeStyleSettings>
6
+ <JSCodeStyleSettings version="0">
7
+ <option name="USE_SEMICOLON_AFTER_STATEMENT" value="false" />
8
+ <option name="FORCE_SEMICOLON_STYLE" value="true" />
9
+ <option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
10
+ <option name="USE_DOUBLE_QUOTES" value="false" />
11
+ <option name="FORCE_QUOTE_STYlE" value="true" />
12
+ <option name="ENFORCE_TRAILING_COMMA" value="WhenMultiline" />
13
+ <option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
14
+ <option name="SPACES_WITHIN_IMPORTS" value="true" />
15
+ </JSCodeStyleSettings>
16
+ <TypeScriptCodeStyleSettings version="0">
17
+ <option name="USE_SEMICOLON_AFTER_STATEMENT" value="false" />
18
+ <option name="FORCE_SEMICOLON_STYLE" value="true" />
19
+ <option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
20
+ <option name="USE_DOUBLE_QUOTES" value="false" />
21
+ <option name="FORCE_QUOTE_STYlE" value="true" />
22
+ <option name="ENFORCE_TRAILING_COMMA" value="WhenMultiline" />
23
+ <option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
24
+ <option name="SPACES_WITHIN_IMPORTS" value="true" />
25
+ </TypeScriptCodeStyleSettings>
26
+ <VueCodeStyleSettings>
27
+ <option name="INTERPOLATION_NEW_LINE_AFTER_START_DELIMITER" value="false" />
28
+ <option name="INTERPOLATION_NEW_LINE_BEFORE_END_DELIMITER" value="false" />
29
+ </VueCodeStyleSettings>
30
+ <codeStyleSettings language="HTML">
31
+ <option name="SOFT_MARGINS" value="80" />
32
+ <indentOptions>
33
+ <option name="INDENT_SIZE" value="2" />
34
+ <option name="CONTINUATION_INDENT_SIZE" value="2" />
35
+ <option name="TAB_SIZE" value="2" />
36
+ </indentOptions>
37
+ </codeStyleSettings>
38
+ <codeStyleSettings language="JavaScript">
39
+ <option name="SOFT_MARGINS" value="80" />
40
+ <indentOptions>
41
+ <option name="INDENT_SIZE" value="2" />
42
+ <option name="CONTINUATION_INDENT_SIZE" value="2" />
43
+ <option name="TAB_SIZE" value="2" />
44
+ </indentOptions>
45
+ </codeStyleSettings>
46
+ <codeStyleSettings language="TypeScript">
47
+ <option name="SOFT_MARGINS" value="80" />
48
+ <indentOptions>
49
+ <option name="INDENT_SIZE" value="2" />
50
+ <option name="CONTINUATION_INDENT_SIZE" value="2" />
51
+ <option name="TAB_SIZE" value="2" />
52
+ </indentOptions>
53
+ </codeStyleSettings>
54
+ <codeStyleSettings language="Vue">
55
+ <option name="SOFT_MARGINS" value="80" />
56
+ <indentOptions>
57
+ <option name="CONTINUATION_INDENT_SIZE" value="2" />
58
+ </indentOptions>
59
+ </codeStyleSettings>
60
+ </code_scheme>
61
+ </component>
@@ -0,0 +1,5 @@
1
+ <component name="ProjectCodeStyleConfiguration">
2
+ <state>
3
+ <option name="USE_PER_PROJECT_SETTINGS" value="true" />
4
+ </state>
5
+ </component>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="JAVA_MODULE" version="4">
3
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
4
+ <exclude-output />
5
+ <content url="file://$MODULE_DIR$" />
6
+ <orderEntry type="inheritedJdk" />
7
+ <orderEntry type="sourceFolder" forTests="false" />
8
+ </component>
9
+ </module>
package/.idea/misc.xml ADDED
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_19" default="true" project-jdk-name="corretto-19" project-jdk-type="JavaSDK">
4
+ <output url="file://$PROJECT_DIR$/out" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/layer-react.iml" filepath="$PROJECT_DIR$/.idea/layer-react.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
package/.idea/vcs.xml ADDED
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="VcsDirectoryMappings">
4
+ <mapping directory="" vcs="Git" />
5
+ </component>
6
+ </project>
package/dist/esm/index.js CHANGED
@@ -634,6 +634,7 @@ var Direction = /* @__PURE__ */ ((Direction3) => {
634
634
  return Direction3;
635
635
  })(Direction || {});
636
636
  var DisplayState = /* @__PURE__ */ ((DisplayState2) => {
637
+ DisplayState2["all"] = "all";
637
638
  DisplayState2["review"] = "review";
638
639
  DisplayState2["categorized"] = "categorized";
639
640
  return DisplayState2;
@@ -694,7 +695,7 @@ var filterVisibility = (scope, bankTransaction) => {
694
695
  const inReview = ReviewCategories.includes(
695
696
  bankTransaction.categorization_status
696
697
  );
697
- return scope === "review" /* review */ && inReview || scope === "categorized" /* categorized */ && categorized;
698
+ return scope === "all" /* all */ || scope === "review" /* review */ && inReview || scope === "categorized" /* categorized */ && categorized;
698
699
  };
699
700
  var isCategorized = (bankTransaction) => CategorizedCategories.includes(bankTransaction.categorization_status);
700
701
 
@@ -743,7 +744,7 @@ var applyCategorizationStatusFilter = (data, filter) => {
743
744
  return data;
744
745
  }
745
746
  return data?.filter(
746
- (tx) => filterVisibility(filter, tx) || filter === "review" /* review */ && tx.recently_categorized || filter === "categorized" /* categorized */ && tx.recently_categorized
747
+ (tx) => filterVisibility(filter, tx) || filter === "all" /* all */ || filter === "review" /* review */ && tx.recently_categorized || filter === "categorized" /* categorized */ && tx.recently_categorized
747
748
  );
748
749
  };
749
750
  var appplyDateRangeFilter = (data, filter) => {
@@ -782,6 +783,8 @@ var useBankTransactions = (params) => {
782
783
  const display = useMemo2(() => {
783
784
  if (filters?.categorizationStatus === "review" /* review */) {
784
785
  return "review" /* review */;
786
+ } else if (filters?.categorizationStatus === "all" /* all */) {
787
+ return "all" /* all */;
785
788
  }
786
789
  return "categorized" /* categorized */;
787
790
  }, [filters?.categorizationStatus]);
@@ -4201,7 +4204,7 @@ var LinkedAccountsComponent = ({
4201
4204
  };
4202
4205
 
4203
4206
  // src/components/BankTransactions/BankTransactions.tsx
4204
- import React109, { useState as useState25, useMemo as useMemo6, useEffect as useEffect19 } from "react";
4207
+ import React109, { useEffect as useEffect19, useMemo as useMemo6, useState as useState25 } from "react";
4205
4208
 
4206
4209
  // src/hooks/useElementSize/useElementSize.ts
4207
4210
  import { useLayoutEffect as useLayoutEffect2, useRef as useRef7 } from "react";
@@ -4776,25 +4779,20 @@ var allCategoriesDivider = [
4776
4779
  }
4777
4780
  ];
4778
4781
  function flattenCategories2(categories) {
4779
- const categoryOptions = (categories || []).flatMap((category) => {
4780
- if (category?.subCategories && category?.subCategories?.length > 0) {
4781
- if (category?.subCategories?.every((c) => c.subCategories === void 0)) {
4782
- return [
4783
- {
4784
- label: category.display_name,
4785
- options: category.subCategories.map((x) => mapCategoryToOption2(x))
4786
- }
4787
- ];
4788
- }
4789
- return flattenCategories2(category.subCategories);
4782
+ function getLeafCategories(category) {
4783
+ if (!category.subCategories || category.subCategories.length === 0) {
4784
+ return [category];
4790
4785
  }
4791
- const resultOption = {
4792
- label: category.display_name,
4793
- options: [mapCategoryToOption2(category)]
4794
- };
4795
- return [resultOption];
4796
- });
4797
- return categoryOptions;
4786
+ return category.subCategories.flatMap((subCategory) => getLeafCategories(subCategory));
4787
+ }
4788
+ return categories.map(
4789
+ (category) => {
4790
+ return {
4791
+ label: category.display_name,
4792
+ options: getLeafCategories(category).map((x) => mapCategoryToOption2(x))
4793
+ };
4794
+ }
4795
+ );
4798
4796
  }
4799
4797
  var CategorySelect = ({
4800
4798
  bankTransaction,
@@ -8389,6 +8387,7 @@ var BankTransactionsContent = ({
8389
8387
  showDescriptions = false,
8390
8388
  showReceiptUploads = false,
8391
8389
  monthlyView = false,
8390
+ categorizeView: categorizeViewProp,
8392
8391
  mobileComponent,
8393
8392
  filters: inputFilters,
8394
8393
  hideHeader = false,
@@ -8400,7 +8399,7 @@ var BankTransactionsContent = ({
8400
8399
  startDate: startOfMonth4(/* @__PURE__ */ new Date()),
8401
8400
  endDate: endOfMonth3(/* @__PURE__ */ new Date())
8402
8401
  });
8403
- const categorizeView = categorizationEnabled(mode);
8402
+ const categorizeView = categorizeViewProp ?? categorizationEnabled(mode);
8404
8403
  const {
8405
8404
  activate,
8406
8405
  data,
@@ -8454,13 +8453,13 @@ var BankTransactionsContent = ({
8454
8453
  }, []);
8455
8454
  useEffect19(() => {
8456
8455
  if (JSON.stringify(inputFilters) !== JSON.stringify(filters)) {
8457
- if (!filters?.categorizationStatus && categorizeView) {
8456
+ if (!inputFilters?.categorizationStatus && categorizeView) {
8458
8457
  setFilters({
8459
8458
  ...filters,
8460
8459
  ...inputFilters,
8461
8460
  categorizationStatus: "review" /* review */
8462
8461
  });
8463
- } else if (!filters?.categorizationStatus && !categorizationEnabled(mode)) {
8462
+ } else if (!inputFilters?.categorizationStatus && !categorizationEnabled(mode)) {
8464
8463
  setFilters({
8465
8464
  ...filters,
8466
8465
  ...inputFilters,
@@ -8469,11 +8468,11 @@ var BankTransactionsContent = ({
8469
8468
  } else {
8470
8469
  setFilters({ ...filters, ...inputFilters });
8471
8470
  }
8472
- } else if (!filters?.categorizationStatus && categorizeView) {
8471
+ } else if (!inputFilters?.categorizationStatus && categorizeView) {
8473
8472
  setFilters({
8474
8473
  categorizationStatus: "review" /* review */
8475
8474
  });
8476
- } else if (!filters?.categorizationStatus && !categorizationEnabled(mode)) {
8475
+ } else if (!inputFilters?.categorizationStatus && !categorizationEnabled(mode)) {
8477
8476
  setFilters({
8478
8477
  categorizationStatus: "categorized" /* categorized */
8479
8478
  });
@@ -8499,7 +8498,7 @@ var BankTransactionsContent = ({
8499
8498
  }, [currentPage, data, dateRange]);
8500
8499
  const onCategorizationDisplayChange = (event) => {
8501
8500
  setFilters({
8502
- categorizationStatus: event.target.value === "categorized" /* categorized */ ? "categorized" /* categorized */ : "review" /* review */
8501
+ categorizationStatus: event.target.value === "categorized" /* categorized */ ? "categorized" /* categorized */ : event.target.value === "all" /* all */ ? "all" /* all */ : "review" /* review */
8503
8502
  });
8504
8503
  setCurrentPage(1);
8505
8504
  };
@@ -8525,7 +8524,7 @@ var BankTransactionsContent = ({
8525
8524
  }
8526
8525
  debounceContainerWidth(size?.width);
8527
8526
  });
8528
- const editable = display === "review" /* review */;
8527
+ const editable = display === "review" /* review */ || display === "all" /* all */;
8529
8528
  const isLastPage = data && !hasMore && Math.ceil((data?.length || 0) / pageSize) === currentPage;
8530
8529
  return /* @__PURE__ */ React109.createElement(
8531
8530
  Container,
@@ -11313,7 +11312,7 @@ var ProfitAndLossTableComponent = ({
11313
11312
  void 0,
11314
11313
  void 0,
11315
11314
  "summation"
11316
- ), data.other_outflows || data.personal_expenses ? /* @__PURE__ */ React129.createElement(React129.Fragment, null, renderLineItem(data.other_outflows, 0, "other_outflows", 6), renderLineItem(data.personal_expenses, 0, "personal_expenses", 7)) : null));
11315
+ ), data.personal_expenses ? /* @__PURE__ */ React129.createElement(React129.Fragment, null, renderLineItem(data.personal_expenses, 0, "personal_expenses", 7)) : null, data.other_outflows ? /* @__PURE__ */ React129.createElement(React129.Fragment, null, renderLineItem(data.other_outflows, 0, "other_outflows", 6)) : null));
11317
11316
  };
11318
11317
 
11319
11318
  // src/components/ProfitAndLossTable/ProfitAndLossTableWithProvider.tsx
@@ -15686,6 +15685,7 @@ export {
15686
15685
  BookkeepingOverview,
15687
15686
  BookkeepingUpsellBar,
15688
15687
  ChartOfAccounts,
15688
+ Direction,
15689
15689
  DisplayState,
15690
15690
  GeneralLedgerView,
15691
15691
  Journal,