This commit is contained in:
seb
2026-10-10 18:17:14 +02:00
parent 004e0de869
commit a20668cd61
31 changed files with 572 additions and 76 deletions

View File

@@ -11,14 +11,18 @@ import { http, clientIdHeaders } from './http.js';
*/
export const delivery = {
/** GET /api/delivery → { deliveries: DeliverySummary[] } */
// #region GET /api/delivery — list
list() {
return http('/api/delivery');
},
// #endregion
/** GET /api/delivery/:id → { delivery: Delivery } */
// #region GET /api/delivery/:id — get
get(id) {
return http(`/api/delivery/${id}`);
},
// #endregion
/**
* POST /api/delivery
@@ -28,9 +32,11 @@ export const delivery = {
* Line requires sku, amount, net, tax. rebate→0, transactedAmount→amount.
* → 201 { delivery: Delivery }
*/
// #region POST /api/delivery — create
create(body) {
return http('/api/delivery', { method: 'POST', body });
},
// #endregion
/**
* PATCH /api/delivery/:id
@@ -40,19 +46,24 @@ export const delivery = {
* If lines present, replaces all lines; if omitted, lines unchanged.
* → 200 { delivery: Delivery }
*/
// #region PATCH /api/delivery/:id — update
update(id, body) {
return http(`/api/delivery/${id}`, { method: 'PATCH', body });
},
// #endregion
/** DELETE /api/delivery/:id → 204 */
// #region DELETE /api/delivery/:id — delete
delete(id) {
return http(`/api/delivery/${id}`, { method: 'DELETE' });
},
// #endregion
/**
* GET /api/delivery/:id/file/:fileId → Blob
* Full binary content of attached file (PDF, text, etc.)
*/
// #region GET /api/delivery/:id/file/:fileId — getFile
async getFile(id, fileId, { download = false } = {}) {
const query = download ? '?download=true' : '';
const res = await fetch(`/api/delivery/${encodeURIComponent(id)}/file/${encodeURIComponent(fileId)}${query}`, {
@@ -71,12 +82,14 @@ export const delivery = {
}
return res.blob();
},
// #endregion
/**
* POST /api/delivery/parse — multipart/form-data, field "file"
* Accepts PDF, TXT or CSV document (max 50 MB)
* Streams SSE events: status, llm_call, tool_call, usage, progress, result, error
*/
// #region POST /api/delivery/parse — parseSse
async *parseSse(file, { signal } = {}) {
const formData = new FormData();
formData.append('file', file, file.name);
@@ -148,4 +161,5 @@ export const delivery = {
} catch { /* ignore */ }
}
},
// #endregion
};