From cf71f0a61bc954dc255522b69d8df2b73de81ef1 Mon Sep 17 00:00:00 2001
From: Matiss Janis Aboltins <matiss@mja.lv>
Date: Fri, 6 Jan 2023 03:31:40 +0000
Subject: [PATCH] prune: remove unused variables (#431)

---
 .../loot-design/src/components/DateSelect.js  |  3 ---
 .../src/components/FixedSizeList.js           |  8 +++----
 .../src/components/RecurringSchedulePicker.js |  3 ---
 .../budget/BudgetMonthCountContext.js         |  3 ---
 packages/loot-design/src/components/common.js | 19 ++-------------
 .../src/components/manager/DeleteFile.js      |  1 -
 .../src/components/manager/Import.js          |  6 ++---
 .../src/components/manager/ImportActual.js    | 11 +--------
 .../src/components/mobile/dragdrop.js         |  2 +-
 .../src/components/mobile/transaction.js      | 19 +--------------
 .../components/modals/CreateLocalAccount.js   |  1 -
 .../src/components/modals/EditField.js        |  4 +---
 .../src/components/modals/LoadBackup.js       |  1 -
 packages/loot-design/src/components/payees.js |  1 -
 .../loot-design/src/components/sidebar.js     |  3 +--
 .../loot-design/src/components/tooltips.js    | 23 -------------------
 packages/loot-design/src/setupTests.js        |  2 --
 17 files changed, 12 insertions(+), 98 deletions(-)

diff --git a/packages/loot-design/src/components/DateSelect.js b/packages/loot-design/src/components/DateSelect.js
index dbb766b45..1a8f6e11e 100644
--- a/packages/loot-design/src/components/DateSelect.js
+++ b/packages/loot-design/src/components/DateSelect.js
@@ -223,9 +223,6 @@ export default function DateSelect({
   }, [value]);
 
   function onKeyDown(e) {
-    let ENTER = 13;
-    let UP = 38;
-    let DOWN = 40;
     let ESC = 27;
 
     if (
diff --git a/packages/loot-design/src/components/FixedSizeList.js b/packages/loot-design/src/components/FixedSizeList.js
index 61406bfd6..44732a41d 100644
--- a/packages/loot-design/src/components/FixedSizeList.js
+++ b/packages/loot-design/src/components/FixedSizeList.js
@@ -78,7 +78,7 @@ export class FixedSizeList extends React.PureComponent {
   }
 
   componentDidMount() {
-    const { direction, initialScrollOffset, layout } = this.props;
+    const { initialScrollOffset } = this.props;
 
     if (typeof initialScrollOffset === 'number' && this._outerRef != null) {
       let outerRef = this._outerRef;
@@ -93,7 +93,6 @@ export class FixedSizeList extends React.PureComponent {
     if (this.anchored && this.props.indexForKey && this._outerRef != null) {
       let index = this.props.indexForKey(this.anchored.key);
       let baseOffset = this.getOffsetForIndexAndAlignment(index, 'start');
-      let outerRef = this._outerRef;
       return baseOffset + this.anchored.offset;
     }
     return null;
@@ -147,8 +146,7 @@ export class FixedSizeList extends React.PureComponent {
       outerTagName,
       style,
       useIsScrolling,
-      width,
-      version
+      width
     } = this.props;
     const { isScrolling } = this.state;
 
@@ -473,7 +471,7 @@ export class FixedSizeList extends React.PureComponent {
   }
 
   _onScrollVertical = event => {
-    let { clientHeight, scrollHeight, scrollTop } = event.currentTarget;
+    let { scrollTop } = event.currentTarget;
 
     this.setState(prevState => {
       if (prevState.scrollOffset === scrollTop) {
diff --git a/packages/loot-design/src/components/RecurringSchedulePicker.js b/packages/loot-design/src/components/RecurringSchedulePicker.js
index 7e4b29d40..c83696f0d 100644
--- a/packages/loot-design/src/components/RecurringSchedulePicker.js
+++ b/packages/loot-design/src/components/RecurringSchedulePicker.js
@@ -12,8 +12,6 @@ import SubtractIcon from 'loot-design/src/svg/Subtract';
 import { Button, Select, Input, Tooltip, View, Text, Stack } from './common';
 import DateSelect from './DateSelect';
 
-const DATE_FORMAT = 'yyyy-MM-dd';
-
 // ex: There is no 6th Friday of the Month
 const MAX_DAY_OF_WEEK_INTERVAL = 5;
 
@@ -96,7 +94,6 @@ function reducer(state, action) {
         }
       };
     case 'update-recurrence':
-      const index = state.config.patterns.indexOf(action.recurrence);
       return {
         ...state,
         config: {
diff --git a/packages/loot-design/src/components/budget/BudgetMonthCountContext.js b/packages/loot-design/src/components/budget/BudgetMonthCountContext.js
index e61536958..7e7d2c513 100644
--- a/packages/loot-design/src/components/budget/BudgetMonthCountContext.js
+++ b/packages/loot-design/src/components/budget/BudgetMonthCountContext.js
@@ -1,12 +1,9 @@
 import React, { useContext, useState } from 'react';
 
-import mitt from 'mitt';
-
 export let BudgetMonthCountContext = React.createContext();
 
 export function BudgetMonthCountProvider({ children }) {
   let [displayMax, setDisplayMax] = useState(1);
-  let emitter = mitt();
 
   return (
     <BudgetMonthCountContext.Provider value={{ displayMax, setDisplayMax }}>
diff --git a/packages/loot-design/src/components/common.js b/packages/loot-design/src/components/common.js
index 3c69be92d..6c935b887 100644
--- a/packages/loot-design/src/components/common.js
+++ b/packages/loot-design/src/components/common.js
@@ -7,13 +7,7 @@ import React, {
 } from 'react';
 import mergeRefs from 'react-merge-refs';
 import ReactModal from 'react-modal';
-import {
-  Route,
-  NavLink,
-  withRouter,
-  useHistory,
-  useRouteMatch
-} from 'react-router-dom';
+import { Route, NavLink, withRouter, useRouteMatch } from 'react-router-dom';
 
 import {
   ListboxInput,
@@ -88,16 +82,7 @@ export function Link({ style, children, ...nativeProps }) {
   );
 }
 
-export function AnchorLink({
-  staticContext,
-  to,
-  exact,
-  style,
-  activeStyle,
-  children
-}) {
-  let history = useHistory();
-  let href = history.createHref(typeof to === 'string' ? { pathname: to } : to);
+export function AnchorLink({ to, exact, style, activeStyle, children }) {
   let match = useRouteMatch({ path: to, exact: true });
 
   return (
diff --git a/packages/loot-design/src/components/manager/DeleteFile.js b/packages/loot-design/src/components/manager/DeleteFile.js
index 9eaa6861d..42a4038e9 100644
--- a/packages/loot-design/src/components/manager/DeleteFile.js
+++ b/packages/loot-design/src/components/manager/DeleteFile.js
@@ -5,7 +5,6 @@ import { View, Text, Modal, ButtonWithLoading } from '../common';
 
 export default function DeleteMenu({ modalProps, actions, file }) {
   let [loadingState, setLoadingState] = useState(null);
-  let { state } = file;
 
   async function onDeleteCloud() {
     setLoadingState('cloud');
diff --git a/packages/loot-design/src/components/manager/Import.js b/packages/loot-design/src/components/manager/Import.js
index 105cdbdde..64933def3 100644
--- a/packages/loot-design/src/components/manager/Import.js
+++ b/packages/loot-design/src/components/manager/Import.js
@@ -25,10 +25,8 @@ function getErrorMessage(error) {
 //   this.setState({ error: err.message, importing: false });
 // });
 
-function Import({ modalProps, actions, availableImports }) {
-  const [error, setError] = useState(false);
-  const [importing, setImporting] = useState(false);
-  const [type, setType] = useState(null);
+function Import({ modalProps, actions }) {
+  const [error] = useState(false);
 
   function onSelectType(type) {
     switch (type) {
diff --git a/packages/loot-design/src/components/manager/ImportActual.js b/packages/loot-design/src/components/manager/ImportActual.js
index eedf0ab8c..43a834972 100644
--- a/packages/loot-design/src/components/manager/ImportActual.js
+++ b/packages/loot-design/src/components/manager/ImportActual.js
@@ -4,16 +4,7 @@ import { useDispatch } from 'react-redux';
 import { importBudget } from 'loot-core/src/client/actions/budgets';
 
 import { styles, colors } from '../../style';
-import {
-  View,
-  Block,
-  Modal,
-  ButtonWithLoading,
-  Button,
-  Link,
-  P,
-  ExternalLink
-} from '../common';
+import { View, Block, Modal, ButtonWithLoading, Button, P } from '../common';
 
 function getErrorMessage(error) {
   switch (error) {
diff --git a/packages/loot-design/src/components/mobile/dragdrop.js b/packages/loot-design/src/components/mobile/dragdrop.js
index d8372c050..12b787b19 100644
--- a/packages/loot-design/src/components/mobile/dragdrop.js
+++ b/packages/loot-design/src/components/mobile/dragdrop.js
@@ -265,7 +265,7 @@ export function DragDrop({ makeHighlight, children, style }) {
     });
 
     if (droppable) {
-      let { layout, getActiveStatus } = droppable;
+      let { getActiveStatus } = droppable;
 
       if (getActiveStatus) {
         let status = getActiveStatus(x, y, droppable, draggable.current || {});
diff --git a/packages/loot-design/src/components/mobile/transaction.js b/packages/loot-design/src/components/mobile/transaction.js
index 3e04d6d0e..812166ded 100644
--- a/packages/loot-design/src/components/mobile/transaction.js
+++ b/packages/loot-design/src/components/mobile/transaction.js
@@ -30,9 +30,7 @@ import ArrowsSynchronize from 'loot-design/src/svg/v2/ArrowsSynchronize';
 import { colors, mobileStyles as styles } from '../../style';
 import Add from '../../svg/v1/Add';
 import Trash from '../../svg/v1/Trash';
-import AlertTriangle from '../../svg/v2/AlertTriangle';
 import CheckCircle1 from '../../svg/v2/CheckCircle1';
-import EditSkull1 from '../../svg/v2/EditSkull1';
 import PencilWriteAlternate from '../../svg/v2/PencilWriteAlternate';
 import { FocusableAmountInput } from './AmountInput';
 import { Button, TextOneLine } from './common';
@@ -175,7 +173,6 @@ export class TransactionEdit extends React.Component {
 
   onEdit = async (transaction, name, value) => {
     let { transactions } = this.state;
-    let { payees } = this.props;
 
     let newTransaction = { ...transaction, [name]: value };
     if (this.props.onEdit) {
@@ -699,20 +696,17 @@ export function DateHeader({ date }) {
 }
 
 function Status({ status }) {
-  let color, backgroundColor, Icon;
+  let color;
 
   switch (status) {
     case 'missed':
       color = colors.r3;
-      Icon = EditSkull1;
       break;
     case 'due':
       color = colors.y3;
-      Icon = AlertTriangle;
       break;
     case 'upcoming':
       color = colors.n4;
-      Icon = ArrowsSynchronize;
       break;
     default:
   }
@@ -776,17 +770,6 @@ export class Transaction extends React.PureComponent {
       fontStyle: 'italic',
       color: colors.n5
     };
-    let textStyleWithColor = [
-      textStyle,
-      isPreview && {
-        color:
-          notes === 'missed'
-            ? colors.r6
-            : notes === 'due'
-            ? colors.y4
-            : colors.n5
-      }
-    ];
 
     return (
       <RectButton
diff --git a/packages/loot-design/src/components/modals/CreateLocalAccount.js b/packages/loot-design/src/components/modals/CreateLocalAccount.js
index c59e06f53..734420a14 100644
--- a/packages/loot-design/src/components/modals/CreateLocalAccount.js
+++ b/packages/loot-design/src/components/modals/CreateLocalAccount.js
@@ -12,7 +12,6 @@ import {
   Button,
   Input,
   Select,
-  P,
   InlineField,
   FormError,
   InitialFocus
diff --git a/packages/loot-design/src/components/modals/EditField.js b/packages/loot-design/src/components/modals/EditField.js
index 9b0277d68..992aa4aca 100644
--- a/packages/loot-design/src/components/modals/EditField.js
+++ b/packages/loot-design/src/components/modals/EditField.js
@@ -1,4 +1,4 @@
-import React, { useRef } from 'react';
+import React from 'react';
 import { connect } from 'react-redux';
 
 import { parseISO, format as formatDate, parse as parseDate } from 'date-fns';
@@ -27,8 +27,6 @@ function EditField({
   dateFormat,
   createPayee
 }) {
-  let submitRef = useRef();
-
   function onSelect(value) {
     // Process the value if needed
     if (name === 'amount') {
diff --git a/packages/loot-design/src/components/modals/LoadBackup.js b/packages/loot-design/src/components/modals/LoadBackup.js
index d9c9fd09d..a325001ef 100644
--- a/packages/loot-design/src/components/modals/LoadBackup.js
+++ b/packages/loot-design/src/components/modals/LoadBackup.js
@@ -15,7 +15,6 @@ class BackupTable extends React.Component {
     const { backups, onSelect } = this.props;
     const { hoveredBackup } = this.state;
 
-    const borderColor = '#f0f0f0';
     return (
       <View
         style={{ flex: 1, maxHeight: 200, overflow: 'auto' }}
diff --git a/packages/loot-design/src/components/payees.js b/packages/loot-design/src/components/payees.js
index 35d5a75ea..d7f938bfe 100644
--- a/packages/loot-design/src/components/payees.js
+++ b/packages/loot-design/src/components/payees.js
@@ -22,7 +22,6 @@ import {
   useStableCallback,
   View,
   Text,
-  Modal,
   Input,
   Button,
   Tooltip,
diff --git a/packages/loot-design/src/components/sidebar.js b/packages/loot-design/src/components/sidebar.js
index a5f0218c0..5d4154ff5 100644
--- a/packages/loot-design/src/components/sidebar.js
+++ b/packages/loot-design/src/components/sidebar.js
@@ -1,4 +1,4 @@
-import React, { useState, useMemo, useCallback, useEffect } from 'react';
+import React, { useState, useMemo, useCallback } from 'react';
 import { RectButton } from 'react-native-gesture-handler';
 import { useDispatch } from 'react-redux';
 import { useLocation, useHistory } from 'react-router';
@@ -7,7 +7,6 @@ import { withRouter } from 'react-router-dom';
 import { css } from 'glamor';
 
 import { closeBudget } from 'loot-core/src/client/actions/budgets';
-import { pushModal } from 'loot-core/src/client/actions/modals';
 import Platform from 'loot-core/src/client/platform';
 import PiggyBank from 'loot-design/src/svg/v1/PiggyBank';
 
diff --git a/packages/loot-design/src/components/tooltips.js b/packages/loot-design/src/components/tooltips.js
index b82f12c73..c2eb2c656 100644
--- a/packages/loot-design/src/components/tooltips.js
+++ b/packages/loot-design/src/components/tooltips.js
@@ -7,29 +7,6 @@ import { styles } from '../style';
 
 export const IntersectionBoundary = React.createContext();
 
-function visibleBoundingRect(el) {
-  let rect = el.getBoundingClientRect();
-  let parentRect = el.parentNode.getBoundingClientRect();
-
-  let top = Math.max(rect.top, parentRect.top);
-  let left = Math.max(rect.left, parentRect.left);
-  let right = Math.min(
-    rect.left + rect.width,
-    parentRect.left + parentRect.width
-  );
-  let bottom = Math.min(
-    rect.top + rect.height,
-    parentRect.top + parentRect.height
-  );
-
-  return {
-    top,
-    left,
-    width: right - left,
-    height: bottom - top
-  };
-}
-
 export function useTooltip() {
   let [isOpen, setIsOpen] = useState(false);
 
diff --git a/packages/loot-design/src/setupTests.js b/packages/loot-design/src/setupTests.js
index c92384587..1348a9c23 100644
--- a/packages/loot-design/src/setupTests.js
+++ b/packages/loot-design/src/setupTests.js
@@ -22,7 +22,6 @@ Math.random = function random() {
 
 global.Date.now = () => 123456789;
 
-let seqId = 1;
 uuid.v4 = function() {
   return Promise.resolve('testing-uuid-' + Math.floor(Math.random() * 1000000));
 };
@@ -33,7 +32,6 @@ uuid.v4Sync = function() {
 
 global.__resetWorld = () => {
   seed = 2;
-  seqId = 1;
   resetStore();
 };
 
-- 
GitLab