1
0
Commit Graph

4440 Commits

Author SHA1 Message Date
Ahmed Bouhuolia b0db59a495 feat(webapp): customer/vendor form ux improvement (#1053)
* feat(webapp): customer/vendor form ux improvement
2026-03-27 16:34:52 +02:00
rmb 580392a408 fix: bulk uncategorize transactions API endpoint (#1054)
* fix: bulk uncategorize transactions - fix API endpoint and error handling

* refactor: use params object instead of URLSearchParams for delete request

Simplifies the API call by passing params object directly to the delete
method instead of manually building URLSearchParams.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Ahmed Bouhuolia <a.bouhuolia@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-27 16:30:19 +02:00
Ahmed Bouhuolia a1d1f53773 fix: typescript errors 2026-03-27 16:29:44 +02:00
Ahmed Bouhuolia f5d1800c8c wip 2026-03-27 16:11:33 +02:00
Ahmed Bouhuolia 4dc5c5abe0 wip 2026-03-27 13:14:54 +02:00
Ahmed Bouhuolia d5cc3d1a71 wip 2026-03-27 11:29:57 +02:00
Ahmed Bouhuolia 50ba91ecf1 fix 2026-03-27 09:57:03 +02:00
Ahmed Bouhuolia 5ba753e808 wip 2026-03-27 01:08:57 +02:00
Ahmed Bouhuolia 2e90e3cc5b wip 2026-03-26 18:04:33 +02:00
Ahmed Bouhuolia 8b59f28125 wip 2026-03-26 17:40:24 +02:00
Ahmed Bouhuolia aa89484b64 wip 2026-03-26 14:59:45 +02:00
Ahmed Bouhuolia 75699ba810 wip 2026-03-26 14:18:54 +02:00
rmb ad0451f32d fix: resolve double slash issue in report print functionality (#1051)
* fix print button for report tab modules

* fix: resolve double slash in report print URLs - Revert ChromiumlyTenancy changes
2026-03-26 09:52:26 +02:00
Ahmed Bouhuolia 8f1af97fc0 feat(webapp): customer/vendor form ux improvement 2026-03-24 21:21:50 +02:00
Ahmed Bouhuolia cfbfc0b746 fix(accounts): correct typos in account type constants (#1046)
- Fix 'none-current-asset' -> 'non-current-asset' in ACCOUNT_TYPE
- Fix 'non-ACCOUNT_PARENT_TYPE.CURRENT_ASSET' -> 'non-current-asset' copy-paste error
- Fix 'expene' -> 'expense' typo in ACCOUNT_ROOT_TYPE
- Add database migration to update existing records

Fixes #1041

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
v0.25.19
2026-03-16 02:34:41 +02:00
Ahmed Bouhuolia 5caa4bce61 Merge pull request #1045 from bigcapitalhq/self-contained-e2e-github-action
feat(ci): self contained e2e GitHub action
2026-03-15 23:49:49 +02:00
Ahmed Bouhuolia ec17514d49 Merge pull request #1043 from bigcapitalhq/chore/update-openapi-sdk-types
chore(sdk): update OpenAPI spec and generated types
2026-03-15 21:32:13 +02:00
Ahmed Bouhuolia 68e4dd67af Merge pull request #1044 from bigcapitalhq/ci/generate-openapi-workflow
feat(ci): Ci/generate openapi workflow
2026-03-15 21:31:35 +02:00
abouolia 95aa03ac25 chore(sdk): update OpenAPI spec and generated types 2026-03-15 19:30:03 +00:00
Ahmed Bouhuolia be61488952 fix(ci): add MySQL and Redis services for OpenAPI generation
The NestJS app requires database and Redis connections to bootstrap.
Added GitHub Actions services for MySQL and Redis with necessary
environment variables for the openapi:export command to work.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 21:27:24 +02:00
Ahmed Bouhuolia 2358ef9097 fix(ci): build shared packages before OpenAPI generation
The server depends on @bigcapital/email-components and other shared
packages. Build them before running openapi:export to fix module
resolution errors.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 21:19:03 +02:00
Ahmed Bouhuolia b1a5f3c2e4 Merge pull request #1040 from bigcapitalhq/querydto2
feat(server): add Query DTOs for consistent filtering across modules
2026-03-15 21:16:03 +02:00
Ahmed Bouhuolia 9b31210f6d wip 2026-03-15 21:14:27 +02:00
Ahmed Bouhuolia 7034be0fe7 Merge pull request #1042 from bigcapitalhq/ci/generate-openapi-workflow
ci: add GitHub Action to auto-generate OpenAPI SDK types
2026-03-15 16:24:05 +02:00
Ahmed Bouhuolia 5c32f41f22 ci: add GitHub Action to auto-generate OpenAPI SDK types
Adds workflow that triggers on server code changes to:
- Export OpenAPI spec from NestJS Swagger module
- Generate TypeScript types with openapi-typescript
- Build the SDK package
- Create PR with changes if any exist

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 16:22:50 +02:00
Ahmed Bouhuolia 2f45263263 feat(server): add Query DTOs for consistent filtering across modules
- Add GetBillsQuery.dto.ts, GetCreditNotesQuery.dto.ts, GetExpensesQuery.dto.ts
- Add GetItemCategoriesQuery.dto.ts, GetManualJournalsQuery.dto.ts
- Add GetPaymentsReceivedQuery.dto.ts, GetSaleEstimatesQuery.dto.ts
- Add GetSaleInvoicesQuery.dto.ts, GetSaleReceiptsQuery.dto.ts, GetVendorCreditsQuery.dto.ts
- Update DynamicFilterQuery.dto.ts with enhanced filter options
- Refactor controllers and services to use new Query DTOs
- Update SDK schema and sale-estimates types

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 08:50:15 +02:00
Ahmed Bouhuolia 6a2edd9417 Merge pull request #1039 from bigcapitalhq/settings-hooks
feat(sdk-ts): settings fetch utils
2026-03-14 23:31:14 +02:00
Ahmed Bouhuolia 8685d7ef18 feat(sdk-ts): settings fetch utils 2026-03-14 23:24:31 +02:00
Ahmed Bouhuolia 5cf528cebc Merge pull request #1037 from bigcapitalhq/refactor/exchange-rates-nestjs
refactor(server): migrate ExchangeRates module to NestJS
2026-03-14 05:22:04 +02:00
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