@deliverart/sdk-js-image 2.1.49 → 2.1.51
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/README.md +141 -0
- package/package.json +4 -4
package/README.md
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# @deliverart/sdk-js-image
|
|
2
|
+
|
|
3
|
+
Image management package for the DeliverArt JavaScript SDK.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @deliverart/sdk-js-image @deliverart/sdk-js-core
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Exported Types
|
|
12
|
+
|
|
13
|
+
### Core Types
|
|
14
|
+
- `Image` - Image metadata
|
|
15
|
+
- `ImageDetails` - Extended image with URLs
|
|
16
|
+
|
|
17
|
+
### IRI Types
|
|
18
|
+
- `ImageIri` - Image IRI (`/images/:id`)
|
|
19
|
+
|
|
20
|
+
## Available Requests
|
|
21
|
+
|
|
22
|
+
### GetImages
|
|
23
|
+
Get list of images with filters.
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
import { GetImages } from '@deliverart/sdk-js-image';
|
|
27
|
+
|
|
28
|
+
const images = await sdk.call(new GetImages({
|
|
29
|
+
query: {
|
|
30
|
+
company: '/companies/123',
|
|
31
|
+
page: 1
|
|
32
|
+
}
|
|
33
|
+
}));
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**Query Parameters:**
|
|
37
|
+
- `company?: string` - Filter by company
|
|
38
|
+
- `page?: number` - Page number
|
|
39
|
+
|
|
40
|
+
**Response:** `Paginated<Image>`
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
### GetImageDetails
|
|
45
|
+
Get detailed information about a specific image.
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
import { GetImageDetails } from '@deliverart/sdk-js-image';
|
|
49
|
+
|
|
50
|
+
const image = await sdk.call(new GetImageDetails('image-123'));
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Parameters:**
|
|
54
|
+
- `imageId: string` (required)
|
|
55
|
+
|
|
56
|
+
**Response:** `ImageDetails`
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
### DeleteImage
|
|
61
|
+
Delete an image.
|
|
62
|
+
|
|
63
|
+
```typescript
|
|
64
|
+
import { DeleteImage } from '@deliverart/sdk-js-image';
|
|
65
|
+
|
|
66
|
+
await sdk.call(new DeleteImage('image-123'));
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**Parameters:**
|
|
70
|
+
- `imageId: string` (required)
|
|
71
|
+
|
|
72
|
+
**Response:** `void`
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Upload Images
|
|
77
|
+
|
|
78
|
+
Image uploads typically use multipart/form-data. Example:
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
import { AbstractApiRequest } from '@deliverart/sdk-js-core';
|
|
82
|
+
import { z } from 'zod';
|
|
83
|
+
|
|
84
|
+
// Custom upload request (if not provided by the package)
|
|
85
|
+
class UploadImage extends AbstractApiRequest<
|
|
86
|
+
typeof z.instanceof(FormData),
|
|
87
|
+
typeof imageResponseSchema
|
|
88
|
+
> {
|
|
89
|
+
readonly method = 'POST';
|
|
90
|
+
readonly contentType = 'multipart/form-data';
|
|
91
|
+
readonly accept = 'application/json';
|
|
92
|
+
|
|
93
|
+
readonly inputSchema = z.instanceof(FormData);
|
|
94
|
+
readonly outputSchema = imageResponseSchema;
|
|
95
|
+
|
|
96
|
+
constructor(formData: FormData) {
|
|
97
|
+
super(formData);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
getPath(): string {
|
|
101
|
+
return '/images';
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// Usage
|
|
106
|
+
const formData = new FormData();
|
|
107
|
+
formData.append('file', fileBlob, 'image.jpg');
|
|
108
|
+
formData.append('company', '/companies/123');
|
|
109
|
+
|
|
110
|
+
const image = await sdk.call(new UploadImage(formData));
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Complete Usage Example
|
|
114
|
+
|
|
115
|
+
```typescript
|
|
116
|
+
import { sdk } from './lib/sdk';
|
|
117
|
+
import { GetImages, DeleteImage } from '@deliverart/sdk-js-image';
|
|
118
|
+
|
|
119
|
+
async function imageManagement() {
|
|
120
|
+
// Get all company images
|
|
121
|
+
const images = await sdk.call(new GetImages({
|
|
122
|
+
query: {
|
|
123
|
+
company: '/companies/123'
|
|
124
|
+
}
|
|
125
|
+
}));
|
|
126
|
+
|
|
127
|
+
console.log(`Found ${images.pagination.totalItems} images`);
|
|
128
|
+
|
|
129
|
+
// Delete old images
|
|
130
|
+
for (const image of images.data) {
|
|
131
|
+
if (shouldDelete(image)) {
|
|
132
|
+
await sdk.call(new DeleteImage(image.id));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## License
|
|
139
|
+
|
|
140
|
+
MIT
|
|
141
|
+
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deliverart/sdk-js-image",
|
|
3
3
|
"description": "Deliverart JavaScript SDK for Image Management",
|
|
4
|
-
"version": "2.1.
|
|
4
|
+
"version": "2.1.51",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@deliverart/sdk-js-core": "2.1.
|
|
22
|
-
"@deliverart/sdk-js-global-types": "2.1.
|
|
23
|
-
"@deliverart/sdk-js-point-of-sale": "2.1.
|
|
21
|
+
"@deliverart/sdk-js-core": "2.1.51",
|
|
22
|
+
"@deliverart/sdk-js-global-types": "2.1.51",
|
|
23
|
+
"@deliverart/sdk-js-point-of-sale": "2.1.51"
|
|
24
24
|
},
|
|
25
25
|
"publishConfig": {
|
|
26
26
|
"access": "public"
|