israeli-banks-actual-budget-importer 1.4.0 → 1.5.0

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/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ # [1.5.0](https://github.com/tomerh2001/israeli-banks-actual-budget-importer/compare/v1.4.0...v1.5.0) (2025-05-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * update scraper configuration for executable path and user data directory ([7227ac4](https://github.com/tomerh2001/israeli-banks-actual-budget-importer/commit/7227ac40be5c50c2e8bf95e201af1f260478846c))
7
+
8
+
9
+ ### Features
10
+
11
+ * improved the logs ([3a5f1ac](https://github.com/tomerh2001/israeli-banks-actual-budget-importer/commit/3a5f1aca53be85413225c9e0e75df29cbd70cf91))
12
+
1
13
  # [1.4.0](https://github.com/tomerh2001/israeli-banks-actual-budget-importer/compare/v1.3.1...v1.4.0) (2025-05-24)
2
14
 
3
15
 
package/README.md CHANGED
@@ -40,27 +40,6 @@ services:
40
40
  - ./chrome-data:/app/chrome-data # Optional (Used to solve 2FA issues like with hapoalim)
41
41
  ```
42
42
 
43
- ### Prerequisites
44
-
45
- - **Node.js:** Make sure you have Node.js installed (a version that supports ES modules is recommended).
46
- - **Yarn:** This project uses Yarn as its package manager. Ensure Yarn is installed.
47
- - **TypeScript:** Installed via dependencies.
48
-
49
- ### Steps
50
-
51
- 1. **Clone the Repository:**
52
-
53
- ```bash
54
- git clone https://github.com/tomerh2001/israeli-banks-actual-budget-importer.git
55
- cd israeli-banks-actual-budget-importer
56
- ```
57
-
58
- 2. **Install Dependencies:**
59
-
60
- ```bash
61
- yarn install
62
- ```
63
-
64
43
  ## Configuration
65
44
 
66
45
  The application configuration is defined using JSON and validated against a schema. The key configuration file is `config.json` and its schema is described in `config.schema.json`.
@@ -113,78 +92,6 @@ Example snippet:
113
92
  }
114
93
  ```
115
94
 
116
- ## Usage
117
-
118
- The project comes with scripts configured in the `package.json`. To start the importer:
119
-
120
- ```bash
121
- yarn start
122
- ```
123
-
124
- This command runs the script defined as:
125
-
126
- ```json
127
- "start": "tsx src/index.ts"
128
- ```
129
-
130
- It initializes the connection to the Actual API, downloads the budget, scrapes bank transactions, imports them, and if enabled, performs reconciliation. After processing all tasks in the queue, the application shuts down cleanly.
131
-
132
- ## Development
133
-
134
- ### Overview
135
-
136
- The **Israeli Banks Actual Budget Importer** is a Node.js project written in TypeScript designed to:
137
-
138
- - **Scrape transactions** using specialized bank scrapers.
139
- - **Import transactions** into the Actual budgeting system.
140
- - **Perform account reconciliation** by computing and importing balance differences.
141
- - **Facilitate scheduled imports** by managing concurrent scraping tasks with a queue.
142
-
143
- The main logic is found in `src/index.ts`, which initializes the Actual API, triggers the scraping process, imports transactions, and then gracefully shuts down.
144
-
145
-
146
- ### Project Structure
147
-
148
- - **src/**
149
- Contains the TypeScript source code.
150
- - `index.ts`: Entry point.
151
- - `utils.ts`: Utility functions for scraping and importing transactions.
152
- - `config.d.ts`, `utils.d.ts`: Type definitions.
153
-
154
- - **config.schema.json:**
155
- JSON schema to validate your configuration file.
156
-
157
- - **package.json:**
158
- Lists the dependencies, scripts, and project metadata.
159
-
160
- - **.github, .vscode:**
161
- Contain CI/CD and editor-specific settings.
162
-
163
- ### TypeScript & Linting
164
-
165
- The project uses [XO](https://github.com/xojs/xo) for linting. Ensure you follow coding styles as enforced by XO.
166
-
167
- ## Testing & Linting
168
-
169
- Run tests and linting with the following command:
170
-
171
- ```bash
172
- yarn test
173
- ```
174
-
175
- Ensure that your changes pass linting rules and tests before submitting any pull requests.
176
-
177
- ## Contributing
178
-
179
- Contributions are welcome! To contribute:
180
-
181
- 1. **Fork the Repository:** Create your own fork and clone it locally.
182
- 2. **Create a New Branch:** Use descriptive branch names (e.g., `feature/new-scraper-support`).
183
- 3. **Commit Your Changes:** Follow the commit message guidelines, especially if you are using semantic release.
184
- 4. **Submit a Pull Request:** Ensure your code passes all tests and linting checks.
185
-
186
- Please also review our [CHANGELOG.md](./CHANGELOG.md) and [SECURITY.md](./SECURITY.md) for more context on versioning and security practices.
187
-
188
95
  ## License
189
96
 
190
97
  This project is open-source. Please see the [LICENSE](./LICENSE) file for licensing details.
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.4.0",
2
+ "version": "1.5.0",
3
3
  "name": "israeli-banks-actual-budget-importer",
4
4
  "module": "index.ts",
5
5
  "type": "module",
package/src/utils.ts CHANGED
@@ -29,7 +29,7 @@ export async function scrapeAndImportTransactions({companyId, bank}: ScrapeTrans
29
29
  verbose: process.env?.VERBOSE === 'true',
30
30
  showBrowser: process.env?.SHOW_BROWSER === 'true',
31
31
  });
32
- scraper.onProgress((companyId, payload) => {
32
+ scraper.onProgress((_companyId, payload) => {
33
33
  log(payload.type);
34
34
  });
35
35