diff --git a/package.json b/package.json index e5ad26d..c0dfb3c 100644 --- a/package.json +++ b/package.json @@ -16,12 +16,12 @@ "ex": "tsx --tsconfig tsconfig.tsx.json --require dotenv/config --require tsconfig-paths/register" }, "dependencies": { + "@assembly-js/node-sdk": "^3.19.1", "@sentry/nextjs": "^10.29.0", "@types/deep-equal": "^1.0.4", "@types/html-to-text": "^9.0.4", "bottleneck": "^2.19.5", "copilot-design-system": "^2.2.3", - "copilot-node-sdk": "^3.16.0", "dayjs": "^1.11.19", "deep-equal": "^2.2.3", "dotenv": "^17.2.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3c11ed6..cd5baf9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,6 +12,9 @@ importers: .: dependencies: + '@assembly-js/node-sdk': + specifier: ^3.19.1 + version: 3.19.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1) '@sentry/nextjs': specifier: ^10.29.0 version: 10.29.0(@opentelemetry/context-async-hooks@2.2.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.2.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.2.0(@opentelemetry/api@1.9.0))(next@16.0.10(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(react@19.2.1)(webpack@5.103.0(esbuild@0.25.9)) @@ -27,9 +30,6 @@ importers: copilot-design-system: specifier: ^2.2.3 version: 2.2.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.1(react@19.2.1))(react@19.2.1)(typescript@5.9.2) - copilot-node-sdk: - specifier: ^3.16.0 - version: 3.16.0(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1) dayjs: specifier: ^1.11.19 version: 1.11.19 @@ -158,6 +158,9 @@ packages: '@apm-js-collab/tracing-hooks@0.3.1': resolution: {integrity: sha512-Vu1CbmPURlN5fTboVuKMoJjbO5qcq9fA5YXpskx3dXe/zTBvjODFoerw+69rVBlRLrJpwPqSDqEuJDEKIrTldw==} + '@assembly-js/node-sdk@3.19.1': + resolution: {integrity: sha512-8td1ks3Oj3aPmFGUXdoTC28fEH3t5keyDt4vTewfOBSZW3sW0Rxw7LP9oP4clw29KIeLQtM5BTpsP3I5VM0edw==} + '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} @@ -2019,9 +2022,6 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - caniuse-lite@1.0.30001737: - resolution: {integrity: sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==} - caniuse-lite@1.0.30001759: resolution: {integrity: sha512-Pzfx9fOKoKvevQf8oCXoyNRQ5QyxJj+3O0Rqx2V5oxT61KGx8+n6hV/IUyJeifUci2clnmmKVpvtiqRzgiWjSw==} @@ -2119,9 +2119,6 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 - copilot-node-sdk@3.16.0: - resolution: {integrity: sha512-wqqeJuW+uge39nC1/+cqMWSSgCCNThtCR+JykPYFB2PTj0d0tfROCXofwtqZZccUUzk/xXXkJF53QfweVxmMLg==} - cosmiconfig-typescript-loader@6.1.0: resolution: {integrity: sha512-tJ1w35ZRUiM5FeTzT7DtYWAFFv37ZLqSRkGi2oeCK1gPhvaWjkAtfXvLmvE1pRfxxp9aQo6ba/Pvg1dKj05D4g==} engines: {node: '>=v18'} @@ -3805,6 +3802,20 @@ snapshots: transitivePeerDependencies: - supports-color + '@assembly-js/node-sdk@3.19.1(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1)': + dependencies: + isomorphic-fetch: 3.0.0 + next: 14.2.32(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1) + transitivePeerDependencies: + - '@babel/core' + - '@opentelemetry/api' + - '@playwright/test' + - babel-plugin-macros + - encoding + - react + - react-dom + - sass + '@babel/code-frame@7.27.1': dependencies: '@babel/helper-validator-identifier': 7.27.1 @@ -5621,8 +5632,6 @@ snapshots: callsites@3.1.0: {} - caniuse-lite@1.0.30001737: {} - caniuse-lite@1.0.30001759: {} chalk@5.6.0: {} @@ -5725,20 +5734,6 @@ snapshots: - supports-color - typescript - copilot-node-sdk@3.16.0(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1): - dependencies: - isomorphic-fetch: 3.0.0 - next: 14.2.32(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1) - transitivePeerDependencies: - - '@babel/core' - - '@opentelemetry/api' - - '@playwright/test' - - babel-plugin-macros - - encoding - - react - - react-dom - - sass - cosmiconfig-typescript-loader@6.1.0(@types/node@20.19.11)(cosmiconfig@9.0.0(typescript@5.9.2))(typescript@5.9.2): dependencies: '@types/node': 20.19.11 @@ -6568,7 +6563,7 @@ snapshots: '@next/env': 14.2.32 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001737 + caniuse-lite: 1.0.30001759 graceful-fs: 4.2.11 postcss: 8.4.31 react: 19.2.1 diff --git a/src/app/api/sync-logs/route.ts b/src/app/api/sync-logs/route.ts index 283c473..5b19016 100644 --- a/src/app/api/sync-logs/route.ts +++ b/src/app/api/sync-logs/route.ts @@ -1,6 +1,6 @@ import { getSyncLogsCsv } from '@sync-logs/api/syncLogs.controller' import { withErrorHandler } from '@/utils/withErrorHandler' -export const maxDuration = 800 +export const maxDuration = 300 export const GET = withErrorHandler(getSyncLogsCsv) diff --git a/src/lib/copilot/CopilotAPI.ts b/src/lib/copilot/CopilotAPI.ts index 2011d5c..f28c379 100644 --- a/src/lib/copilot/CopilotAPI.ts +++ b/src/lib/copilot/CopilotAPI.ts @@ -1,8 +1,8 @@ import 'server-only' +import type { AssemblyAPI as SDK } from '@assembly-js/node-sdk' +import { assemblyApi } from '@assembly-js/node-sdk' import { type InvoiceCreatedEvent, InvoiceCreatedEventSchema } from '@invoice-sync/types' -import type { CopilotAPI as SDK } from 'copilot-node-sdk' -import { copilotApi } from 'copilot-node-sdk' import z from 'zod' import env from '@/config/server.env' import { MAX_FETCH_COPILOT_RESOURCES } from '@/constants/limits' @@ -43,7 +43,7 @@ export class CopilotAPI { private readonly token: string, readonly customApiKey?: string, ) { - this.copilot = copilotApi({ + this.copilot = assemblyApi({ apiKey: customApiKey ?? env.COPILOT_API_KEY, token, })