1
0
Commit Graph

4461 Commits

Author SHA1 Message Date
Ahmed Bouhuolia eff5f6b9f7 feat(sdk-ts): add exchange-rates SDK functions
- Add fetchLatestExchangeRate function to retrieve exchange rates
- Add ExchangeRateLatestQuery and ExchangeRateLatestResponse types
- Export exchange-rates module from SDK index
2026-03-14 05:20:12 +02:00
Ahmed Bouhuolia 3706e048b6 refactor(server): migrate ExchangeRates module to NestJS
- Convert TypeDI services to NestJS @Injectable() pattern
- Replace Express router with NestJS @Controller() decorators
- Migrate express-validator to class-validator DTOs
- Add Swagger/OpenAPI documentation decorators
- Fix import paths for TenantMetadata and ServiceError
- Add ExchangeRatesModule to AppModule imports
2026-03-14 05:16:06 +02:00
Ahmed Bouhuolia 6515bd2a60 Merge pull request #1035 from bigcapitalhq/feat/abouolia/credit-note-resource-sdk-dtos
feat: add response DTOs for CreditNoteRefunds and Resource modules
2026-03-10 23:35:44 +02:00
Ahmed Bouhuolia 06d1cf3119 feat: add response DTOs for CreditNoteRefunds and Resource modules
- Add ResourceMetaResponse DTO for resource metadata
- Update CreditNoteRefunds service with proper types
- Regenerate SDK types from updated OpenAPI schema
- Update SDK bank-rules, credit-notes, and organization modules

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 23:19:22 +02:00
Ahmed Bouhuolia 94f85702ca Merge pull request #1034 from bigcapitalhq/feat/creditnote-refund-fix-sdk-updates
fix(server): use TransformerInjectable in GetRefundCreditNoteTransaction and SDK updates
2026-03-09 22:01:36 +02:00
Ahmed Bouhuolia 95ca4c21be fix(server): use TransformerInjectable in GetRefundCreditNoteTransaction
Refactor the GetRefundCreditNoteTransaction service to use TransformerInjectable
instead of directly injecting RefundCreditNoteTransformer, following the standard
NestJS DI pattern used throughout the codebase.

Also includes SDK TypeScript updates:
- Add new type exports for bank-rules operations
- Update organization SDK utilities with proper types
- Add accounts list filtering params to schema (customViewId, filterRoles, etc.)
- Remove export module from SDK index
- Sync openapi.json with latest API changes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-09 21:42:06 +02:00
Ahmed Bouhuolia 48e41da345 Merge pull request #1033 from bigcapitalhq/feat/credit-note-sdk-ts-utils
feat: add response DTOs for credit note modules and SDK types
2026-03-09 07:18:36 +02:00
Ahmed Bouhuolia b59f40d295 feat: add response DTOs for credit note modules and SDK types 2026-03-09 07:12:10 +02:00
Ahmed Bouhuolia 34ac820818 Merge pull request #1031 from bigcapitalhq/feat-payment-links-sdk
feat(sdk-ts): add Payment Links, Stripe Integration, Plaid, and additional modules
2026-03-09 06:37:13 +02:00
Ahmed Bouhuolia dddeb25923 feat(sdk-ts): add Payment Links, Stripe Integration, Plaid, Import and additional modules 2026-03-09 06:35:03 +02:00
Ahmed Bouhuolia ee2726c0c7 feat(server): add response DTOs for Payment Links, Stripe, Credit Notes and Inventory Cost 2026-03-09 06:35:02 +02:00
Ahmed Bouhuolia 640f823af4 Merge pull request #1030 from bigcapitalhq/feat/sdk-reports-multiformat
feat(sdk-ts): add JSON, CSV, XLSX, and PDF support to report functions
2026-03-08 05:58:45 +02:00
Ahmed Bouhuolia d5ba54fe5e feat(sdk-ts): add JSON, CSV, XLSX, and PDF support to report functions
Add multi-format support to SDK-TS report functions:

- Add utility types: OpResponseBodyCsv, OpResponseBodyXlsx, OpResponseBodyPdf
- Create modular report structure in src/reports/ directory
- Implement 5 format functions for each of 18 reports:
  - Table format (existing): fetch*Table()
  - JSON format: fetch*Json()
  - CSV format: fetch*Csv() (returns Blob)
  - XLSX format: fetch*Xlsx() (returns Blob)
  - PDF format: fetch*Pdf() (returns Blob)

Reports with multi-format support:
1. Balance Sheet
2. Trial Balance Sheet
3. Profit/Loss Sheet
4. Cashflow Statement
5. General Ledger
6. Journal
7. Receivable Aging Summary
8. Payable Aging Summary
9. Customer Balance Summary
10. Vendor Balance Summary
11. Transactions By Customers
12. Transactions By Vendors
13. Transactions By Reference
14. Sales By Items
15. Purchases By Items
16. Inventory Valuation
17. Inventory Item Details
18. Sales Tax Liability Summary

Backward compatibility maintained via reports.ts re-export.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-08 05:56:16 +02:00
Ahmed Bouhuolia 54d38e3f33 Merge pull request #1029 from bigcapitalhq/tag-test
fix(docker): upgrade pnpm version in Dockerfiles for server and webapp
v0.25.18
2026-03-08 05:02:19 +02:00
Ahmed Bouhuolia 96338cc215 chore(docker): upgrade pnpm version in Dockerfiles for server and webapp
- Updated pnpm from version 8.10.2 to 9.0.5 in both server and webapp Dockerfiles to ensure compatibility with the latest features and improvements.
2026-03-08 04:55:16 +02:00
Ahmed Bouhuolia 400fec3e98 refactor(docker): simplify Dockerfile by consolidating shared package copies
- Updated Dockerfiles for server and webapp to copy all shared packages in a single command, improving maintainability.
- Removed individual package copy commands for bigcapital-utils, pdf-templates, and email-components.
- Ensured that all shared packages are included automatically during the build process.
2026-03-08 04:49:10 +02:00
Ahmed Bouhuolia 9e3a649c69 Merge pull request #1028 from bigcapitalhq/fix/currency-select-list-value-accessor
feat: add credit note status translations and manual journal default views
v0.25.17
2026-03-07 21:11:27 +02:00
Ahmed Bouhuolia 8dd895b34f feat: add credit note status translations and manual journal default views
- Add credit note view status translations (draft, published, open, closed)
- Add Manual Journal default views for draft and published statuses
- Add DEFAULT_VIEW_COLUMNS constant for reusability

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-07 21:08:48 +02:00
Ahmed Bouhuolia c6ef197b52 Merge pull request #1027 from bigcapitalhq/fix/currency-select-list-value-accessor
fix(currency): use currency_code instead of id in CurrencySelectList
2026-03-07 20:44:28 +02:00
Ahmed Bouhuolia 806b1c374f fix(currency): use currency_code instead of id in CurrencySelectList
The CurrencySelectList component was using 'id' as the valueAccessor,
which caused the component to return the numeric currency ID (e.g., 1007)
instead of the currency code string (e.g., 'THB').

This fix changes the valueAccessor from 'id' to 'currency_code' so that
the currency code string is correctly sent to the backend, which expects
@IsString() for the currencyCode field.

Fixes #1025
2026-03-07 20:35:00 +02:00
Ahmed Bouhuolia d4819d39f2 Merge pull request #1026 from bigcapitalhq/fix/accounts-chart-view-filtering
fix(accounts): add missing dynamic list filter properties to GetAccountsQueryDto
2026-03-07 20:25:43 +02:00
Ahmed Bouhuolia 6d1e93e84b fix(accounts): add missing dynamic list filter properties to GetAccountsQueryDto
Add missing viewSlug, filterRoles, stringifiedFilterRoles, searchKeyword,
columnSortBy, sortOrder, customViewId, page, and pageSize properties to
GetAccountsQueryDto to enable proper filtering when selecting table views
(Assets, Liabilities, Equity, Income, Expenses) on the Accounts Chart page.

Previously, the API received view_slug but didn't process it because the
DTO lacked these properties, causing all accounts to be returned instead
of filtering by the view's root_type.

Fixes #1023

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-07 20:23:49 +02:00
Ahmed Bouhuolia b333ce80a6 Merge pull request #1021 from bigcapitalhq/fix/payment-amount-decimal-validation
fix(payment-received): allow decimal amounts in paymentAmount validation
2026-03-06 06:34:01 +02:00
Ahmed Bouhuolia e02e143157 fix(payment-received): allow decimal amounts in paymentAmount validation
Change @IsInt() to @IsNumber() for paymentAmount field in PaymentReceivedEntryDto
to allow recording payments with cents (e.g., $1,679.80).

Fixes #1016

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 06:31:55 +02:00
Ahmed Bouhuolia 83148a56f2 Merge pull request #1020 from bigcapitalhq/feat/sdk-ts-reports-dashboard
feat(sdk-ts): add dashboard and reports API clients
2026-03-06 05:47:29 +02:00
Ahmed Bouhuolia 92363dd204 feat(sdk-ts): add dashboard and reports API clients with OpenAPI schema updates
Made-with: Cursor
2026-03-06 05:45:24 +02:00
Ahmed Bouhuolia 3d8f75a481 Merge pull request #1019 from bigcapitalhq/feat/reports-openapi-response-dtos
feat(server): add OpenAPI response DTOs for financial reports
2026-03-06 05:27:31 +02:00
Ahmed Bouhuolia 7dd08d6141 feat(financial-statements): add new financial report DTOs and update controllers
- Introduced new DTOs for various financial reports including Balance Sheet, Cash Flow Statement, and Aging Summaries.
- Updated existing controllers to utilize the new DTOs and enhance OpenAPI documentation with proper schema references.
- Removed unnecessary query parameters from the Bank Accounts controller.
- Enhanced response structures for better data representation in reports.
2026-03-06 05:25:44 +02:00
Ahmed Bouhuolia 5b4d863695 Merge pull request #1015 from bigcapitalhq/feat/banking-vendor-credits-sdk-utils-pr
feat(sdk): add banking and vendor credits SDK utilities
2026-03-05 23:39:46 +02:00
Ahmed Bouhuolia a0978b79b3 fix: update pnpm-lock.json file 2026-03-05 23:37:54 +02:00
Ahmed Bouhuolia 8659e41e92 feat(webapp): add react-query and react-query-devtools dependencies 2026-03-05 23:36:27 +02:00
Ahmed Bouhuolia 4d1aa0aa5b fix: update pnpm-lock.yaml 2026-03-05 23:29:03 +02:00
Ahmed Bouhuolia 631df56cee feat(sdk): add banking and vendor credits SDK utilities
- Add SDK types for bank rules, cashflow accounts, and vendor credits
- Update banking controllers with proper OpenAPI annotations
- Update vendor credits controllers with new endpoints and DTOs
- Enhance banking transaction handling for categorize, recognize, pending, and exclude operations
- Add vendor credit apply bills and refund functionality

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-05 23:06:44 +02:00
Ahmed Bouhuolia 306ea6fc7d Merge pull request #1013 from bigcapitalhq/auth-sdk-ts-utils
feat(sdk-ts): add authentication fetch utils
2026-03-05 20:19:33 +02:00
Ahmed Bouhuolia 4c059d610e feat(sdk-ts): add authentication fetch utils 2026-03-05 19:50:38 +02:00
Ahmed Bouhuolia 4d984daed9 Merge pull request #1011 from bigcapitalhq/more-sdk-ts-fetch-utils
feat(sdk): more sdk ts fetch utils
2026-03-05 01:11:25 +02:00
Ahmed Bouhuolia 99ae7d7099 chore: remove unnecessary devDependency for @nx/nx-darwin-arm64 2026-03-05 01:09:28 +02:00
Ahmed Bouhuolia ac8dcfed67 feat(sdk): enhance authentication and account management API endpoints
- Added new authentication routes for user sign-in, sign-up, and password reset functionalities.
- Updated account management routes to include bulk delete and validation for accounts.
- Refactored type definitions to utilize utility functions for better type safety and clarity.
- Introduced new methods for handling user authentication and account operations in the SDK.
2026-03-05 01:07:14 +02:00
Ahmed Bouhuolia 8960ea1ca2 feat(sdk): more sdk ts fetch utils 2026-03-04 06:26:04 +02:00
Ahmed Bouhuolia f45840d60e Merge pull request #1010 from bigcapitalhq/feat/generate-sdk-ts-command
feat(sdk): move the generate sdk ts types to nestjs command
2026-03-04 00:23:33 +02:00
Ahmed Bouhuolia e3d3da7cd9 feat(sdk): move the generate sdk ts types to nestjs command 2026-03-04 00:20:46 +02:00
Ahmed Bouhuolia 8dcb0acbe8 Merge pull request #1009 from bigcapitalhq/feat/openapi-typescript-sdk
feat(sdk): add OpenAPI export script and TypeScript SDK package
2026-03-03 23:49:30 +02:00
Ahmed Bouhuolia 92843c7240 fix: update the pnpm-lock.yaml 2026-03-03 23:44:47 +02:00
Ahmed Bouhuolia e3c55c5d6f feat(sdk): add OpenAPI export script and TypeScript SDK package
- Add export-openapi.ts script for server OpenAPI spec export
- Add shared/sdk-ts package with generated API clients (accounts, bills, customers, vendors, etc.)
- Update Customers and Vendors controllers
- Update ReportsEventsTracker
- Update .gitignore, package.json, and pnpm-lock

Made-with: Cursor
2026-03-03 23:26:24 +02:00
Ahmed Bouhuolia b81fcdfbd8 Merge remote-tracking branch 'refs/remotes/origin/develop' into develop v0.25.16 2026-03-01 23:56:35 +02:00
Ahmed Bouhuolia 557f5006a5 feat: Update Node.js version to 18.16.1 in .nvmrc and add CLAUDE.md for project settings 2026-03-01 23:55:35 +02:00
Ahmed Bouhuolia 342fd46848 Merge pull request #1006 from bigcapitalhq/fix/unlink-attachment-model-ref
fix(server): Fix UnlinkAttachment model reference bug
2026-03-01 22:36:38 +02:00
Ahmed Bouhuolia 28786712ea fix(server): Fix UnlinkAttachment model reference bug
Add missing function invocation on LinkModel to properly call query method.
The model reference was missing parentheses to invoke the factory function.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 22:35:21 +02:00
Ahmed Bouhuolia c29381bf69 Merge pull request #1005 from bigcapitalhq/fix/money-in-dialog-fields-visibility
fix(webapp): Money In dialog fields not showing after account selection
2026-03-01 22:04:21 +02:00
Ahmed Bouhuolia 29288c74ad fix(webapp): Money In dialog fields not showing after account selection
Fixed the Money In dialog where form fields were not appearing after
selecting the transaction type and current account.

The issue was that AccountsSuggestField (non-Formik version) was being
used instead of FAccountsSuggestField. The non-Formik version doesn't
update Formik's form values, so the condition in MoneyInContentFields
that checks values.cashflow_account_id was never satisfied.

Also updated MoneyOutDialog to use onItemChange prop for consistency.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 22:01:52 +02:00