@deepintel-ltd/farmpro-contracts 1.5.23 → 1.5.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/routes/documents.routes.d.ts +12 -12
- package/dist/routes/files.routes.d.ts +794 -0
- package/dist/routes/files.routes.d.ts.map +1 -0
- package/dist/routes/files.routes.js +38 -0
- package/dist/routes/index.d.ts +3 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +2 -0
- package/dist/routes/invoices.routes.d.ts +44 -100
- package/dist/routes/invoices.routes.d.ts.map +1 -1
- package/dist/routes/organizations.routes.d.ts +377 -1
- package/dist/routes/organizations.routes.d.ts.map +1 -1
- package/dist/routes/organizations.routes.js +17 -2
- package/dist/routes/suppliers.routes.d.ts +76 -76
- package/dist/routes/suppliers.routes.js +18 -18
- package/dist/routes/waybills.routes.d.ts +44 -86
- package/dist/routes/waybills.routes.d.ts.map +1 -1
- package/dist/schemas/documents.schemas.d.ts +13 -221
- package/dist/schemas/documents.schemas.d.ts.map +1 -1
- package/dist/schemas/documents.schemas.js +2 -12
- package/dist/schemas/files.schemas.d.ts +229 -0
- package/dist/schemas/files.schemas.d.ts.map +1 -0
- package/dist/schemas/files.schemas.js +23 -0
- package/dist/schemas/invoices.schemas.d.ts +34 -98
- package/dist/schemas/invoices.schemas.d.ts.map +1 -1
- package/dist/schemas/invoices.schemas.js +1 -5
- package/dist/schemas/suppliers.schemas.d.ts +44 -44
- package/dist/schemas/suppliers.schemas.js +2 -2
- package/dist/schemas/waybills.schemas.d.ts +34 -82
- package/dist/schemas/waybills.schemas.d.ts.map +1 -1
- package/dist/schemas/waybills.schemas.js +1 -4
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.routes.d.ts","sourceRoot":"","sources":["../../src/routes/files.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCtB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { initContract } from '@ts-rest/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { uploadedFileResponseSchema, uploadFileBodySchema, } from '../schemas/files.schemas';
|
|
4
|
+
import { jsonApiErrorResponseSchema } from '../schemas/common.schemas';
|
|
5
|
+
const c = initContract();
|
|
6
|
+
export const filesRouter = c.router({
|
|
7
|
+
// Generic file upload endpoint - accepts any file type
|
|
8
|
+
uploadFile: {
|
|
9
|
+
method: 'POST',
|
|
10
|
+
path: '/files/upload',
|
|
11
|
+
contentType: 'multipart/form-data',
|
|
12
|
+
body: z.union([uploadFileBodySchema, z.undefined()]),
|
|
13
|
+
responses: {
|
|
14
|
+
200: uploadedFileResponseSchema,
|
|
15
|
+
400: jsonApiErrorResponseSchema,
|
|
16
|
+
401: jsonApiErrorResponseSchema,
|
|
17
|
+
413: jsonApiErrorResponseSchema, // Payload too large
|
|
18
|
+
},
|
|
19
|
+
summary: 'Upload any file',
|
|
20
|
+
description: 'Upload any type of file and get back the file URL in JSON:API format. Files are stored in a generic uploads directory. The returned fileUrl is a proxy URL that requires authentication.',
|
|
21
|
+
},
|
|
22
|
+
viewFile: {
|
|
23
|
+
method: 'GET',
|
|
24
|
+
path: '/files/view/:fileId',
|
|
25
|
+
pathParams: z.object({
|
|
26
|
+
fileId: z.string(),
|
|
27
|
+
}),
|
|
28
|
+
responses: {
|
|
29
|
+
200: z.any(), // File stream response
|
|
30
|
+
400: jsonApiErrorResponseSchema,
|
|
31
|
+
401: jsonApiErrorResponseSchema,
|
|
32
|
+
403: jsonApiErrorResponseSchema,
|
|
33
|
+
404: jsonApiErrorResponseSchema,
|
|
34
|
+
},
|
|
35
|
+
summary: 'View file',
|
|
36
|
+
description: 'Stream or download a file by its UUID. Extension is optional - both /files/view/{fileId} and /files/view/{fileId}.{ext} work for the same file. Requires authentication and validates that the requesting user has permission to access the file.',
|
|
37
|
+
},
|
|
38
|
+
});
|
package/dist/routes/index.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ import { subscriptionsRouter } from './subscriptions.routes';
|
|
|
27
27
|
import { organizationsRouter } from './organizations.routes';
|
|
28
28
|
import { waybillsRouter } from './waybills.routes';
|
|
29
29
|
import { invoicesRouter } from './invoices.routes';
|
|
30
|
+
import { filesRouter } from './files.routes';
|
|
30
31
|
/**
|
|
31
32
|
* Explicit interface definition for the API contract.
|
|
32
33
|
* This avoids TypeScript's type serialization limit when combining many routers
|
|
@@ -62,6 +63,7 @@ export interface ApiContractDefinition {
|
|
|
62
63
|
organizations: typeof organizationsRouter;
|
|
63
64
|
waybills: typeof waybillsRouter;
|
|
64
65
|
invoices: typeof invoicesRouter;
|
|
66
|
+
files: typeof filesRouter;
|
|
65
67
|
}
|
|
66
68
|
/**
|
|
67
69
|
* Main API contract combining all routers
|
|
@@ -107,4 +109,5 @@ export type SubscriptionsEndpoints = ApiContractType['subscriptions'];
|
|
|
107
109
|
export type OrganizationsEndpoints = ApiContractType['organizations'];
|
|
108
110
|
export type WaybillsEndpoints = ApiContractType['waybills'];
|
|
109
111
|
export type InvoicesEndpoints = ApiContractType['invoices'];
|
|
112
|
+
export type FilesEndpoints = ApiContractType['files'];
|
|
110
113
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/index.js
CHANGED
|
@@ -28,6 +28,7 @@ import { subscriptionsRouter } from './subscriptions.routes';
|
|
|
28
28
|
import { organizationsRouter } from './organizations.routes';
|
|
29
29
|
import { waybillsRouter } from './waybills.routes';
|
|
30
30
|
import { invoicesRouter } from './invoices.routes';
|
|
31
|
+
import { filesRouter } from './files.routes';
|
|
31
32
|
const c = initContract();
|
|
32
33
|
/**
|
|
33
34
|
* Main API contract combining all routers
|
|
@@ -65,4 +66,5 @@ export const apiContract = c.router({
|
|
|
65
66
|
organizations: organizationsRouter,
|
|
66
67
|
waybills: waybillsRouter,
|
|
67
68
|
invoices: invoicesRouter,
|
|
69
|
+
files: filesRouter,
|
|
68
70
|
});
|