@goodsamsoftware/freshbooks-mcp 1.0.23 → 1.0.24

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.
Files changed (45) hide show
  1. package/dist/tools/bill/bill-create.d.ts.map +1 -1
  2. package/dist/tools/bill/bill-create.js +9 -0
  3. package/dist/tools/bill/bill-create.js.map +1 -1
  4. package/dist/tools/bill-payment/billpayment-create.d.ts.map +1 -1
  5. package/dist/tools/bill-payment/billpayment-create.js +5 -0
  6. package/dist/tools/bill-payment/billpayment-create.js.map +1 -1
  7. package/dist/tools/bill-payment/billpayment-update.d.ts.map +1 -1
  8. package/dist/tools/bill-payment/billpayment-update.js +5 -0
  9. package/dist/tools/bill-payment/billpayment-update.js.map +1 -1
  10. package/dist/tools/credit-note/creditnote-update.d.ts.map +1 -1
  11. package/dist/tools/credit-note/creditnote-update.js +2 -1
  12. package/dist/tools/credit-note/creditnote-update.js.map +1 -1
  13. package/dist/tools/expense/expense-create.d.ts.map +1 -1
  14. package/dist/tools/expense/expense-create.js +3 -1
  15. package/dist/tools/expense/expense-create.js.map +1 -1
  16. package/dist/tools/expense/expense-update.d.ts.map +1 -1
  17. package/dist/tools/expense/expense-update.js +2 -1
  18. package/dist/tools/expense/expense-update.js.map +1 -1
  19. package/dist/tools/invoice/invoice-create.d.ts.map +1 -1
  20. package/dist/tools/invoice/invoice-create.js +4 -1
  21. package/dist/tools/invoice/invoice-create.js.map +1 -1
  22. package/dist/tools/invoice/invoice-update.d.ts.map +1 -1
  23. package/dist/tools/invoice/invoice-update.js +3 -1
  24. package/dist/tools/invoice/invoice-update.js.map +1 -1
  25. package/dist/tools/other-income/otherincome-create.d.ts.map +1 -1
  26. package/dist/tools/other-income/otherincome-create.js +3 -1
  27. package/dist/tools/other-income/otherincome-create.js.map +1 -1
  28. package/dist/tools/other-income/otherincome-update.d.ts.map +1 -1
  29. package/dist/tools/other-income/otherincome-update.js +2 -1
  30. package/dist/tools/other-income/otherincome-update.js.map +1 -1
  31. package/dist/tools/payment/payment-create.d.ts.map +1 -1
  32. package/dist/tools/payment/payment-create.js +3 -1
  33. package/dist/tools/payment/payment-create.js.map +1 -1
  34. package/dist/tools/payment/payment-update.d.ts.map +1 -1
  35. package/dist/tools/payment/payment-update.js +2 -1
  36. package/dist/tools/payment/payment-update.js.map +1 -1
  37. package/dist/utils/dates.d.ts +24 -0
  38. package/dist/utils/dates.d.ts.map +1 -0
  39. package/dist/utils/dates.js +33 -0
  40. package/dist/utils/dates.js.map +1 -0
  41. package/dist/utils/index.d.ts +1 -0
  42. package/dist/utils/index.d.ts.map +1 -1
  43. package/dist/utils/index.js +1 -0
  44. package/dist/utils/index.js.map +1 -1
  45. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"bill-create.d.ts","sourceRoot":"","sources":["../../../src/tools/bill/bill-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiCzB;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,UACpC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;CAyCnD,CAAC"}
1
+ {"version":3,"file":"bill-create.d.ts","sourceRoot":"","sources":["../../../src/tools/bill/bill-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAG7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIhE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiCzB;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,UACpC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;CAkDnD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { BillCreateInputSchema, BillSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
8
  import { logger } from "../../utils/logger.js";
9
+ import { toLocalMidnightDate } from "../../utils/dates.js";
9
10
  /**
10
11
  * Tool definition for bill_create
11
12
  */
@@ -46,6 +47,14 @@ Created bill with ID, status, and all details for tracking and payment.`,
46
47
  async execute(input, client) {
47
48
  const handler = ErrorHandler.wrapHandler('bill_create', BillCreateInputSchema, async (input, _context) => {
48
49
  const { accountId, ...billData } = input;
50
+ // Normalize user dates to local midnight so the SDK's transformDateRequest
51
+ // doesn't shift them back a day in negative-UTC timezones (#76).
52
+ if (billData.issueDate !== undefined) {
53
+ billData.issueDate = toLocalMidnightDate(billData.issueDate);
54
+ }
55
+ if (billData.dueDate !== undefined) {
56
+ billData.dueDate = toLocalMidnightDate(billData.dueDate);
57
+ }
49
58
  logger.debug('Creating bill', {
50
59
  accountId,
51
60
  vendorId: billData.vendorId,
@@ -1 +1 @@
1
- {"version":3,"file":"bill-create.js","sourceRoot":"","sources":["../../../src/tools/bill/bill-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;wEA0ByD;IAEtE,WAAW,EAAE,qBAAqB;IAClC,YAAY,EAAE,sBAAsB;IAEpC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA4C,EAC5C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,aAAa,EACb,qBAAqB,EACrB,KAAK,EACH,KAA4C,EAC5C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC;YAEzC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC5B,SAAS;gBACT,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,aAAa,EACb,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,QAAe,EAAE,SAAS,CAAC,CAAC;gBAEzE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,wCAAwC;YACxC,MAAM,WAAW,GAAI,MAA6B,CAAC,IAAI,IAAI,MAAM,CAAC;YAElE,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBACvC,MAAM,EAAG,WAA+B,CAAC,EAAE;aAC5C,CAAC,CAAC;YAEH,OAAO,WAAqD,CAAC;QAC/D,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"bill-create.js","sourceRoot":"","sources":["../../../src/tools/bill/bill-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;wEA0ByD;IAEtE,WAAW,EAAE,qBAAqB;IAClC,YAAY,EAAE,sBAAsB;IAEpC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA4C,EAC5C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,aAAa,EACb,qBAAqB,EACrB,KAAK,EACH,KAA4C,EAC5C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC;YAEzC,2EAA2E;YAC3E,iEAAiE;YACjE,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACpC,QAAoC,CAAC,SAAS,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC5F,CAAC;YACD,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAClC,QAAoC,CAAC,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC5B,SAAS;gBACT,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,aAAa,EACb,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,QAAe,EAAE,SAAS,CAAC,CAAC;gBAEzE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,wCAAwC;YACxC,MAAM,WAAW,GAAI,MAA6B,CAAC,IAAI,IAAI,MAAM,CAAC;YAElE,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;gBACvC,MAAM,EAAG,WAA+B,CAAC,EAAE;aAC5C,CAAC,CAAC;YAEH,OAAO,WAAqD,CAAC;QAC/D,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"billpayment-create.d.ts","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhC;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CAyC1D,CAAC"}
1
+ {"version":3,"file":"billpayment-create.d.ts","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhC;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CA8C1D,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { BillPaymentCreateInputSchema, BillPaymentSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
8
  import { logger } from "../../utils/logger.js";
9
+ import { toLocalMidnightDate } from "../../utils/dates.js";
9
10
  /**
10
11
  * Tool definition for billpayment_create
11
12
  */
@@ -43,6 +44,10 @@ Created payment record with ID and all details for tracking.`,
43
44
  async execute(input, client) {
44
45
  const handler = ErrorHandler.wrapHandler('billpayment_create', BillPaymentCreateInputSchema, async (input, _context) => {
45
46
  const { accountId, ...paymentData } = input;
47
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
48
+ if (paymentData.paidDate !== undefined) {
49
+ paymentData.paidDate = toLocalMidnightDate(paymentData.paidDate);
50
+ }
46
51
  logger.debug('Creating bill payment', {
47
52
  accountId,
48
53
  billId: paymentData.billId,
@@ -1 +1 @@
1
- {"version":3,"file":"billpayment-create.js","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;6DAuB8C;IAE3D,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EACH,KAAmD,EACnD,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;YAE5C,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACpC,SAAS;gBACT,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,oBAAoB,EACpB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,WAAkB,EAAE,SAAS,CAAC,CAAC;gBAEnF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,gDAAgD;YAChD,MAAM,cAAc,GAAI,MAAqC,CAAC,YAAY,IAAI,MAAM,CAAC;YAErF,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,aAAa,EAAG,cAAkC,CAAC,EAAE;aACtD,CAAC,CAAC;YAEH,OAAO,cAA+D,CAAC;QACzE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"billpayment-create.js","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;6DAuB8C;IAE3D,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EACH,KAAmD,EACnD,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;YAE5C,yEAAyE;YACzE,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACtC,WAAuC,CAAC,QAAQ,GAAG,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAChG,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACpC,SAAS;gBACT,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,oBAAoB,EACpB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,WAAkB,EAAE,SAAS,CAAC,CAAC;gBAEnF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,gDAAgD;YAChD,MAAM,cAAc,GAAI,MAAqC,CAAC,YAAY,IAAI,MAAM,CAAC;YAErF,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,aAAa,EAAG,cAAkC,CAAC,EAAE;aACtD,CAAC,CAAC;YAEH,OAAO,cAA+D,CAAC;QACzE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"billpayment-update.d.ts","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhC;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CAyC1D,CAAC"}
1
+ {"version":3,"file":"billpayment-update.d.ts","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhC;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CA8C1D,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { BillPaymentUpdateInputSchema, BillPaymentSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
8
  import { logger } from "../../utils/logger.js";
9
+ import { toLocalMidnightDate } from "../../utils/dates.js";
9
10
  /**
10
11
  * Tool definition for billpayment_update
11
12
  */
@@ -43,6 +44,10 @@ Updated payment with all current details.`,
43
44
  async execute(input, client) {
44
45
  const handler = ErrorHandler.wrapHandler('billpayment_update', BillPaymentUpdateInputSchema, async (input, _context) => {
45
46
  const { accountId, billPaymentId, ...updateData } = input;
47
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
48
+ if (updateData.paidDate !== undefined) {
49
+ updateData.paidDate = toLocalMidnightDate(updateData.paidDate);
50
+ }
46
51
  logger.debug('Updating bill payment', {
47
52
  accountId,
48
53
  billPaymentId,
@@ -1 +1 @@
1
- {"version":3,"file":"billpayment-update.js","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;0CAuB2B;IAExC,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EACH,KAAmD,EACnD,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;YAE1D,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACpC,SAAS;gBACT,aAAa;aACd,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,oBAAoB,EACpB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,UAAiB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBAEjG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,gDAAgD;YAChD,MAAM,cAAc,GAAI,MAAqC,CAAC,YAAY,IAAI,MAAM,CAAC;YAErF,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,aAAa;aACd,CAAC,CAAC;YAEH,OAAO,cAA+D,CAAC;QACzE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"billpayment-update.js","sourceRoot":"","sources":["../../../src/tools/bill-payment/billpayment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;0CAuB2B;IAExC,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EACH,KAAmD,EACnD,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;YAE1D,yEAAyE;YACzE,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACrC,UAAsC,CAAC,QAAQ,GAAG,mBAAmB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC9F,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACpC,SAAS;gBACT,aAAa;aACd,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,oBAAoB,EACpB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,UAAiB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBAEjG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,gDAAgD;YAChD,MAAM,cAAc,GAAI,MAAqC,CAAC,YAAY,IAAI,MAAM,CAAC;YAErF,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,aAAa;aACd,CAAC,CAAC;YAEH,OAAO,cAA+D,CAAC;QACzE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"creditnote-update.d.ts","sourceRoot":"","sources":["../../../src/tools/credit-note/creditnote-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAGzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAqCtB,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,UAC1C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;CA6CzD,CAAC"}
1
+ {"version":3,"file":"creditnote-update.d.ts","sourceRoot":"","sources":["../../../src/tools/credit-note/creditnote-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAGzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAqCtB,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,UAC1C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;CA6CzD,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { CreditNoteUpdateInputSchema, CreditNoteSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
+ import { toLocalMidnightDate } from "../../utils/dates.js";
8
9
  /**
9
10
  * Tool definition for creditnote_update
10
11
  */
@@ -49,7 +50,7 @@ Updated credit note record with modified fields.`,
49
50
  // The FreshBooks SDK's transformCreditNoteRequest() will convert to API format
50
51
  const creditNote = {};
51
52
  if (updates.createDate !== undefined)
52
- creditNote.createDate = updates.createDate;
53
+ creditNote.createDate = toLocalMidnightDate(updates.createDate);
53
54
  if (updates.lines !== undefined) {
54
55
  creditNote.lines = updates.lines.map(line => ({
55
56
  name: line.name,
@@ -1 +1 @@
1
- {"version":3,"file":"creditnote-update.js","sourceRoot":"","sources":["../../../src/tools/credit-note/creditnote-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDA6BkC;IAE/C,WAAW,EAAE,2BAA2B;IACxC,YAAY,EAAE,4BAA4B;IAE1C,KAAK,CAAC,OAAO,CACX,KAAkD,EAClD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,EAAE,KAAkD,EAAE,QAAqB,EAAE,EAAE;YAClF,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAEtD,iDAAiD;YACjD,+EAA+E;YAC/E,MAAM,UAAU,GAA4B,EAAE,CAAC;YAE/C,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACjF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC5C,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;oBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC,CAAC;YACN,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAClE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAElE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACnF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,UAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEvG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,+CAA+C;YAC/C,MAAM,iBAAiB,GAAI,MAA0D,CAAC,WAAW;mBAC3F,MAA0D,CAAC,UAAU;mBACtE,MAAM,CAAC;YAEZ,OAAO,iBAAiE,CAAC;QAC3E,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"creditnote-update.js","sourceRoot":"","sources":["../../../src/tools/credit-note/creditnote-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDA6BkC;IAE/C,WAAW,EAAE,2BAA2B;IACxC,YAAY,EAAE,4BAA4B;IAE1C,KAAK,CAAC,OAAO,CACX,KAAkD,EAClD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,EAAE,KAAkD,EAAE,QAAqB,EAAE,EAAE;YAClF,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAEtD,iDAAiD;YACjD,+EAA+E;YAC/E,MAAM,UAAU,GAA4B,EAAE,CAAC;YAE/C,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACtG,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC5C,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;oBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC,CAAC;YACN,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAClE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAElE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACnF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,UAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEvG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,+CAA+C;YAC/C,MAAM,iBAAiB,GAAI,MAA0D,CAAC,WAAW;mBAC3F,MAA0D,CAAC,UAAU;mBACtE,MAAM,CAAC;YAEZ,OAAO,iBAAiE,CAAC;QAC3E,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"expense-create.d.ts","sourceRoot":"","sources":["../../../src/tools/expense/expense-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CA8DtD,CAAC"}
1
+ {"version":3,"file":"expense-create.d.ts","sourceRoot":"","sources":["../../../src/tools/expense/expense-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CA+DtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { ExpenseCreateInputSchema, ExpenseSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for expense_create
11
12
  */
@@ -61,7 +62,8 @@ Created expense with ID and all details.`,
61
62
  const expense = {
62
63
  categoryId: expenseData.categoryId,
63
64
  staffId: expenseData.staffId,
64
- date: expenseData.date,
65
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
66
+ date: toLocalMidnightDate(expenseData.date),
65
67
  amount: expenseData.amount,
66
68
  };
67
69
  // Add optional fields if provided
@@ -1 +1 @@
1
- {"version":3,"file":"expense-create.js","sourceRoot":"","sources":["../../../src/tools/expense/expense-create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expense-create.js","sourceRoot":"","sources":["../../../src/tools/expense/expense-create.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"expense-update.d.ts","sourceRoot":"","sources":["../../../src/tools/expense/expense-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAuHtD,CAAC"}
1
+ {"version":3,"file":"expense-update.d.ts","sourceRoot":"","sources":["../../../src/tools/expense/expense-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAuHtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { ExpenseUpdateInputSchema, ExpenseSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for expense_update
11
12
  */
@@ -99,7 +100,7 @@ Updated expense with all current details.`,
99
100
  if (updateData.categoryId !== undefined)
100
101
  expense.categoryId = updateData.categoryId;
101
102
  if (updateData.date !== undefined)
102
- expense.date = updateData.date;
103
+ expense.date = toLocalMidnightDate(updateData.date);
103
104
  if (updateData.amount !== undefined)
104
105
  expense.amount = updateData.amount;
105
106
  if (updateData.vendor !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"expense-update.js","sourceRoot":"","sources":["../../../src/tools/expense/expense-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expense-update.js","sourceRoot":"","sources":["../../../src/tools/expense/expense-update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-create.d.ts","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6C5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CA4EtD,CAAC"}
1
+ {"version":3,"file":"invoice-create.d.ts","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6C5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CA8EtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { InvoiceCreateInputSchema, InvoiceSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for invoice_create
11
12
  */
@@ -67,7 +68,9 @@ EXAMPLES:
67
68
  // The FreshBooks SDK's transformInvoiceRequest() will convert to API format
68
69
  const invoicePayload = {
69
70
  customerId: invoiceData.customerId,
70
- createDate: invoiceData.createDate || new Date().toISOString().split('T')[0],
71
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
72
+ // Default to a local `new Date()` (not a UTC date string) for the same reason.
73
+ createDate: toLocalMidnightDate(invoiceData.createDate) || new Date(),
71
74
  currencyCode: invoiceData.currencyCode || 'USD',
72
75
  lines: invoiceData.lines.map((line) => ({
73
76
  name: line.name,
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-create.js","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice-create.js","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-create.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-update.d.ts","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0C5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAsFtD,CAAC"}
1
+ {"version":3,"file":"invoice-update.d.ts","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0C5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAuFtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { InvoiceUpdateInputSchema, InvoiceSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for invoice_update
11
12
  */
@@ -67,7 +68,8 @@ EXAMPLES:
67
68
  updates.customerId = invoiceData.customerId;
68
69
  }
69
70
  if (invoiceData.createDate !== undefined) {
70
- updates.createDate = invoiceData.createDate;
71
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
72
+ updates.createDate = toLocalMidnightDate(invoiceData.createDate);
71
73
  }
72
74
  if (invoiceData.dueDate !== undefined) {
73
75
  updates.dueDate = invoiceData.dueDate;
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-update.js","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice-update.js","sourceRoot":"","sources":["../../../src/tools/invoice/invoice-update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"otherincome-create.d.ts","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA0CvB,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CAgD1D,CAAC"}
1
+ {"version":3,"file":"otherincome-create.d.ts","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA0CvB,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CAiD1D,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { OtherIncomeCreateInputSchema, OtherIncomeSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
+ import { toLocalMidnightDate } from "../../utils/dates.js";
8
9
  /**
9
10
  * Tool definition for otherincome_create
10
11
  */
@@ -55,7 +56,8 @@ Use this to track non-invoice revenue for financial reporting.`,
55
56
  const otherIncome = {
56
57
  amount: incomeData.amount,
57
58
  categoryName: incomeData.categoryName,
58
- date: incomeData.date,
59
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
60
+ date: toLocalMidnightDate(incomeData.date),
59
61
  paymentType: incomeData.paymentType || 'Cash',
60
62
  };
61
63
  // Add optional fields if provided
@@ -1 +1 @@
1
- {"version":3,"file":"otherincome-create.js","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+DAkCgD;IAE7D,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EAAE,KAAmD,EAAE,QAAqB,EAAE,EAAE;YACnF,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;YAE3C,uDAAuD;YACvD,gFAAgF;YAChF,MAAM,WAAW,GAA4B;gBAC3C,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,MAAM;aAC9C,CAAC;YAEF,kCAAkC;YAClC,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;YACtE,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAC5E,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACnC,WAAW,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC/C,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACpF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,WAAkB,EAAE,SAAS,CAAC,CAAC;gBAEnF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,gDAAgD;YAChD,MAAM,aAAa,GAAI,MAA4D,CAAC,YAAY;mBAC1F,MAA4D,CAAC,WAAW;mBACzE,MAAM,CAAC;YAEZ,OAAO,aAA8D,CAAC;QACxE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"otherincome-create.js","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+DAkCgD;IAE7D,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EAAE,KAAmD,EAAE,QAAqB,EAAE,EAAE;YACnF,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;YAE3C,uDAAuD;YACvD,gFAAgF;YAChF,MAAM,WAAW,GAA4B;gBAC3C,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,yEAAyE;gBACzE,IAAI,EAAE,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC1C,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,MAAM;aAC9C,CAAC;YAEF,kCAAkC;YAClC,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;YACtE,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAC5E,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACnC,WAAW,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC/C,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACpF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,WAAkB,EAAE,SAAS,CAAC,CAAC;gBAEnF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,gDAAgD;YAChD,MAAM,aAAa,GAAI,MAA4D,CAAC,YAAY;mBAC1F,MAA4D,CAAC,WAAW;mBACzE,MAAM,CAAC;YAEZ,OAAO,aAA8D,CAAC;QACxE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"otherincome-update.d.ts","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAmCvB,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CA8C1D,CAAC"}
1
+ {"version":3,"file":"otherincome-update.d.ts","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAmCvB,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,UAC3C,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;CA8C1D,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { OtherIncomeUpdateInputSchema, OtherIncomeSingleOutputSchema } from "./schemas.js";
7
7
  import { ErrorHandler } from "../../errors/error-handler.js";
8
+ import { toLocalMidnightDate } from "../../utils/dates.js";
8
9
  /**
9
10
  * Tool definition for otherincome_update
10
11
  */
@@ -51,7 +52,7 @@ Updated other income entry with modified fields.`,
51
52
  if (updates.categoryName !== undefined)
52
53
  otherIncome.categoryName = updates.categoryName;
53
54
  if (updates.date !== undefined)
54
- otherIncome.date = updates.date;
55
+ otherIncome.date = toLocalMidnightDate(updates.date);
55
56
  if (updates.paymentType !== undefined)
56
57
  otherIncome.paymentType = updates.paymentType;
57
58
  if (updates.note !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"otherincome-update.js","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;iDA2BkC;IAE/C,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EAAE,KAAmD,EAAE,QAAqB,EAAE,EAAE;YACnF,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAElD,iDAAiD;YACjD,gFAAgF;YAChF,MAAM,WAAW,GAA4B,EAAE,CAAC;YAEhD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACtE,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;gBAAE,WAAW,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YACxF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAChE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;gBAAE,WAAW,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACrF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAChE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACtE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,WAAW,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC5C,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACpF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAkB,CAAC,CAAC;gBAErG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,gDAAgD;YAChD,MAAM,aAAa,GAAI,MAA4D,CAAC,YAAY;mBAC1F,MAA4D,CAAC,WAAW;mBACzE,MAAM,CAAC;YAEZ,OAAO,aAA8D,CAAC;QACxE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"otherincome-update.js","sourceRoot":"","sources":["../../../src/tools/other-income/otherincome-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;iDA2BkC;IAE/C,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,6BAA6B;IAE3C,KAAK,CAAC,OAAO,CACX,KAAmD,EACnD,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,EAAE,KAAmD,EAAE,QAAqB,EAAE,EAAE;YACnF,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAElD,iDAAiD;YACjD,gFAAgF;YAChF,MAAM,WAAW,GAA4B,EAAE,CAAC;YAEhD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACtE,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;gBAAE,WAAW,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;YACxF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrF,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;gBAAE,WAAW,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACrF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAChE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACtE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,WAAW,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC5C,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACpF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAkB,CAAC,CAAC;gBAErG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,gDAAgD;YAChD,MAAM,aAAa,GAAI,MAA4D,CAAC,YAAY;mBAC1F,MAA4D,CAAC,WAAW;mBACzE,MAAM,CAAC;YAEZ,OAAO,aAA8D,CAAC;QACxE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"payment-create.d.ts","sourceRoot":"","sources":["../../../src/tools/payment/payment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAwDtD,CAAC"}
1
+ {"version":3,"file":"payment-create.d.ts","sourceRoot":"","sources":["../../../src/tools/payment/payment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkC5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAyDtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { PaymentCreateInputSchema, PaymentSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for payment_create
11
12
  */
@@ -57,7 +58,8 @@ Created payment record with ID, applied amount, and updated invoice balance.`,
57
58
  const payment = {
58
59
  invoiceId: paymentData.invoiceId,
59
60
  amount: paymentData.amount,
60
- date: paymentData.date,
61
+ // Local-midnight so the SDK date transform doesn't shift it a day (#76).
62
+ date: toLocalMidnightDate(paymentData.date),
61
63
  type: paymentData.type || 'Cash',
62
64
  };
63
65
  // Add optional fields if provided
@@ -1 +1 @@
1
- {"version":3,"file":"payment-create.js","sourceRoot":"","sources":["../../../src/tools/payment/payment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;6EA2B8D;IAE3E,WAAW,EAAE,wBAAwB;IACrC,YAAY,EAAE,yBAAyB;IAEvC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA+C,EAC/C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,gBAAgB,EAChB,wBAAwB,EACxB,KAAK,EACH,KAA+C,EAC/C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;YAE5C,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAC/B,SAAS;gBACT,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,kDAAkD;YAClD,4EAA4E;YAC5E,MAAM,OAAO,GAA4B;gBACvC,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,MAAM;aACjC,CAAC;YAEF,kCAAkC;YAClC,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YACpE,wEAAwE;YAExE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,gBAAgB,EAChB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,uEAAuE;gBACvE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,OAAc,CAAC,CAAC;gBAE3E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,2CAA2C;YAC3C,MAAM,cAAc,GAAI,MAAgC,CAAC,OAAO,IAAI,MAAM,CAAC;YAE3E,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,SAAS,EAAG,cAAkC,CAAC,EAAE;aAClD,CAAC,CAAC;YAEH,OAAO,cAA2D,CAAC;QACrE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"payment-create.js","sourceRoot":"","sources":["../../../src/tools/payment/payment-create.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;6EA2B8D;IAE3E,WAAW,EAAE,wBAAwB;IACrC,YAAY,EAAE,yBAAyB;IAEvC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA+C,EAC/C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,gBAAgB,EAChB,wBAAwB,EACxB,KAAK,EACH,KAA+C,EAC/C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;YAE5C,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAC/B,SAAS;gBACT,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,kDAAkD;YAClD,4EAA4E;YAC5E,MAAM,OAAO,GAA4B;gBACvC,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,yEAAyE;gBACzE,IAAI,EAAE,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC3C,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,MAAM;aACjC,CAAC;YAEF,kCAAkC;YAClC,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YACpE,wEAAwE;YAExE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,gBAAgB,EAChB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,uEAAuE;gBACvE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,OAAc,CAAC,CAAC;gBAE3E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,2CAA2C;YAC3C,MAAM,cAAc,GAAI,MAAgC,CAAC,OAAO,IAAI,MAAM,CAAC;YAE3E,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,SAAS,EAAG,cAAkC,CAAC,EAAE;aAClD,CAAC,CAAC;YAEH,OAAO,cAA2D,CAAC;QACrE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"payment-update.d.ts","sourceRoot":"","sources":["../../../src/tools/payment/payment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+B5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAkDtD,CAAC"}
1
+ {"version":3,"file":"payment-update.d.ts","sourceRoot":"","sources":["../../../src/tools/payment/payment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+B5B;;OAEG;mBAEM,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UACvC,uBAAuB,GAC9B,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAkDtD,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import { PaymentUpdateInputSchema, PaymentSingleOutputSchema } from './schemas.js';
7
7
  import { ErrorHandler } from '../../errors/error-handler.js';
8
8
  import { logger } from '../../utils/logger.js';
9
+ import { toLocalMidnightDate } from '../../utils/dates.js';
9
10
  /**
10
11
  * Tool definition for payment_update
11
12
  */
@@ -54,7 +55,7 @@ Updated payment record with modified fields.`,
54
55
  if (updates.amount !== undefined)
55
56
  payment.amount = updates.amount;
56
57
  if (updates.date !== undefined)
57
- payment.date = updates.date;
58
+ payment.date = toLocalMidnightDate(updates.date);
58
59
  if (updates.type !== undefined)
59
60
  payment.type = updates.type;
60
61
  if (updates.note !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"payment-update.js","sourceRoot":"","sources":["../../../src/tools/payment/payment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;6CAwB8B;IAE3C,WAAW,EAAE,wBAAwB;IACrC,YAAY,EAAE,yBAAyB;IAEvC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA+C,EAC/C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,gBAAgB,EAChB,wBAAwB,EACxB,KAAK,EACH,KAA+C,EAC/C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAEnD,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAC/B,SAAS;gBACT,SAAS;gBACT,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;aAC7B,CAAC,CAAC;YAEH,8BAA8B;YAC9B,MAAM,OAAO,GAA4B,EAAE,CAAC;YAE5C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAClE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAE5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,gBAAgB,EAChB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,OAAc,CAAC,CAAC;gBAE9F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,2CAA2C;YAC3C,MAAM,cAAc,GAAI,MAAgC,CAAC,OAAO,IAAI,MAAM,CAAC;YAE3E,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,SAAS;aACV,CAAC,CAAC;YAEH,OAAO,cAA2D,CAAC;QACrE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"payment-update.js","sourceRoot":"","sources":["../../../src/tools/payment/payment-update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;6CAwB8B;IAE3C,WAAW,EAAE,wBAAwB;IACrC,YAAY,EAAE,yBAAyB;IAEvC;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,KAA+C,EAC/C,MAA+B;QAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CACtC,gBAAgB,EAChB,wBAAwB,EACxB,KAAK,EACH,KAA+C,EAC/C,QAAqB,EACrB,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;YAEnD,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAC/B,SAAS;gBACT,SAAS;gBACT,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;aAC7B,CAAC,CAAC;YAEH,8BAA8B;YAC9B,MAAM,OAAO,GAA4B,EAAE,CAAC;YAE5C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAClE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAE5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAC1C,gBAAgB,EAChB,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,OAAc,CAAC,CAAC;gBAE9F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,QAAQ,CAAC,KAAK,CAAC;gBACvB,CAAC;gBAED,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC,CACF,CAAC;YAEF,2CAA2C;YAC3C,MAAM,cAAc,GAAI,MAAgC,CAAC,OAAO,IAAI,MAAM,CAAC;YAE3E,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;gBAC1C,SAAS;aACV,CAAC,CAAC;YAEH,OAAO,cAA2D,CAAC;QACrE,CAAC,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Date utilities for working around SDK date-transform quirks.
3
+ */
4
+ /**
5
+ * Convert a date-only value to a Date at LOCAL midnight.
6
+ *
7
+ * The FreshBooks SDK's `transformDateRequest` parses a `"YYYY-MM-DD"` string as
8
+ * UTC midnight and then reads its LOCAL year/month/day. In timezones behind UTC
9
+ * (e.g. the Americas) that lands on the previous day, so a user-entered date is
10
+ * silently stored one day early (#76).
11
+ *
12
+ * Passing a Date that is already at LOCAL midnight makes that transform read the
13
+ * intended calendar date in any timezone (it skips its `new Date(string)` branch
14
+ * and the local getters return the right Y/M/D).
15
+ *
16
+ * - `"YYYY-MM-DD"` (optionally with a trailing time/zone) → Date at local midnight
17
+ * of that calendar day.
18
+ * - an existing `Date` → returned unchanged (single() responses already come back
19
+ * as local-midnight Dates).
20
+ * - `null` / `undefined` / a string that isn't a leading `YYYY-MM-DD` → returned
21
+ * unchanged (let the SDK handle it).
22
+ */
23
+ export declare function toLocalMidnightDate(value: string | Date | null | undefined): string | Date | null | undefined;
24
+ //# sourceMappingURL=dates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GACtC,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAWlC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Date utilities for working around SDK date-transform quirks.
3
+ */
4
+ /**
5
+ * Convert a date-only value to a Date at LOCAL midnight.
6
+ *
7
+ * The FreshBooks SDK's `transformDateRequest` parses a `"YYYY-MM-DD"` string as
8
+ * UTC midnight and then reads its LOCAL year/month/day. In timezones behind UTC
9
+ * (e.g. the Americas) that lands on the previous day, so a user-entered date is
10
+ * silently stored one day early (#76).
11
+ *
12
+ * Passing a Date that is already at LOCAL midnight makes that transform read the
13
+ * intended calendar date in any timezone (it skips its `new Date(string)` branch
14
+ * and the local getters return the right Y/M/D).
15
+ *
16
+ * - `"YYYY-MM-DD"` (optionally with a trailing time/zone) → Date at local midnight
17
+ * of that calendar day.
18
+ * - an existing `Date` → returned unchanged (single() responses already come back
19
+ * as local-midnight Dates).
20
+ * - `null` / `undefined` / a string that isn't a leading `YYYY-MM-DD` → returned
21
+ * unchanged (let the SDK handle it).
22
+ */
23
+ export function toLocalMidnightDate(value) {
24
+ if (value == null || value instanceof Date) {
25
+ return value;
26
+ }
27
+ const match = /^(\d{4})-(\d{2})-(\d{2})/.exec(value.trim());
28
+ if (!match) {
29
+ return value;
30
+ }
31
+ return new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3]));
32
+ }
33
+ //# sourceMappingURL=dates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAuC;IAEvC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC"}
@@ -2,5 +2,6 @@
2
2
  * Utility exports
3
3
  */
4
4
  export { logger } from './logger.js';
5
+ export { toLocalMidnightDate } from './dates.js';
5
6
  export { PaginationSchema, getPaginationParams, createPaginationMetadata, hasMorePages, getNextPage, getPreviousPage, } from './pagination.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
@@ -2,5 +2,6 @@
2
2
  * Utility exports
3
3
  */
4
4
  export { logger } from './logger.js';
5
+ export { toLocalMidnightDate } from './dates.js';
5
6
  export { PaginationSchema, getPaginationParams, createPaginationMetadata, hasMorePages, getNextPage, getPreviousPage, } from './pagination.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goodsamsoftware/freshbooks-mcp",
3
- "version": "1.0.23",
3
+ "version": "1.0.24",
4
4
  "description": "FreshBooks MCP server providing 1:1 parity with the FreshBooks Node.js SDK",
5
5
  "type": "module",
6
6
  "main": "dist/server.js",