@design-edito/tools 0.1.54 → 0.1.56

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 (213) hide show
  1. package/agnostic/arrays/index.js +7 -7
  2. package/agnostic/arrays/random-pick/index.js +4 -4
  3. package/agnostic/css/index.js +11 -11
  4. package/agnostic/css/styles-set/index.js +4 -4
  5. package/agnostic/html/hyper-json/cast/index.js +6 -6
  6. package/agnostic/html/hyper-json/index.js +7 -7
  7. package/agnostic/html/hyper-json/smart-tags/coalesced/add/index.js +6 -6
  8. package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.js +6 -6
  9. package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.js +6 -6
  10. package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.js +6 -6
  11. package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.js +6 -6
  12. package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.js +6 -6
  13. package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.js +6 -6
  14. package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.js +6 -6
  15. package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.js +6 -6
  16. package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.js +6 -6
  17. package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.js +6 -6
  18. package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.js +6 -6
  19. package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.js +6 -6
  20. package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.js +6 -6
  21. package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.js +6 -6
  22. package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.js +6 -6
  23. package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.js +6 -6
  24. package/agnostic/html/hyper-json/smart-tags/coalesced/negate/index.js +6 -6
  25. package/agnostic/html/hyper-json/smart-tags/coalesced/notrailing/index.js +6 -6
  26. package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.js +6 -6
  27. package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.js +6 -6
  28. package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.js +6 -6
  29. package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.js +6 -6
  30. package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.js +6 -6
  31. package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.js +6 -6
  32. package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.js +6 -6
  33. package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.js +6 -6
  34. package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.js +6 -6
  35. package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.js +6 -6
  36. package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.js +6 -6
  37. package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.js +6 -6
  38. package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.js +6 -6
  39. package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.js +6 -6
  40. package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.js +6 -6
  41. package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.js +6 -6
  42. package/agnostic/html/hyper-json/smart-tags/coalesced/split/index.js +6 -6
  43. package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.js +6 -6
  44. package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.js +6 -6
  45. package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.js +6 -6
  46. package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.js +6 -6
  47. package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.js +6 -6
  48. package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.js +6 -6
  49. package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.js +6 -6
  50. package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.js +6 -6
  51. package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.js +6 -6
  52. package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.js +6 -6
  53. package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.js +6 -6
  54. package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.js +6 -6
  55. package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.js +6 -6
  56. package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.js +6 -6
  57. package/agnostic/html/hyper-json/smart-tags/isolated/boolean/index.js +6 -6
  58. package/agnostic/html/hyper-json/smart-tags/isolated/element/index.js +6 -6
  59. package/agnostic/html/hyper-json/smart-tags/isolated/get/index.js +6 -6
  60. package/agnostic/html/hyper-json/smart-tags/isolated/global/index.js +6 -6
  61. package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.js +6 -6
  62. package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.js +6 -6
  63. package/agnostic/html/hyper-json/smart-tags/isolated/number/index.js +6 -6
  64. package/agnostic/html/hyper-json/smart-tags/isolated/record/index.js +6 -6
  65. package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.js +6 -6
  66. package/agnostic/html/hyper-json/smart-tags/isolated/string/index.js +6 -6
  67. package/agnostic/html/hyper-json/smart-tags/isolated/text/index.js +6 -6
  68. package/agnostic/html/hyper-json/tree/index.js +6 -6
  69. package/agnostic/html/hyper-json/utils/index.js +6 -6
  70. package/agnostic/html/index.js +20 -20
  71. package/agnostic/html/sanitize/index.js +4 -4
  72. package/agnostic/html/selector-to-element/index.js +4 -4
  73. package/agnostic/html/string-to-nodes/index.js +5 -5
  74. package/agnostic/misc/crossenv/index.js +2 -2
  75. package/agnostic/misc/index.js +21 -21
  76. package/agnostic/misc/logs/index.js +2 -2
  77. package/agnostic/misc/lorem-ipsum/index.js +8 -8
  78. package/agnostic/objects/index.js +14 -14
  79. package/agnostic/strings/index.js +7 -7
  80. package/agnostic/time/index.js +3 -3
  81. package/chunks/chunk-2PNFMIXN.js +20 -0
  82. package/chunks/chunk-3DJI3JTM.js +56 -0
  83. package/chunks/chunk-3SSUHWUD.js +56 -0
  84. package/chunks/chunk-454MZ5UE.js +239 -0
  85. package/chunks/chunk-4CAHGPFA.js +32 -0
  86. package/chunks/chunk-55MT7BMY.js +16 -0
  87. package/chunks/chunk-5IPSIDXB.js +31 -0
  88. package/chunks/chunk-5P7LHIDR.js +37 -0
  89. package/chunks/chunk-6PNTQUTX.js +20 -0
  90. package/chunks/chunk-6WVNJVBE.js +34 -0
  91. package/chunks/chunk-7N7BJA6C.js +36 -0
  92. package/chunks/chunk-AE6L2HYA.js +56 -0
  93. package/chunks/chunk-AIESW26U.js +47 -0
  94. package/chunks/chunk-AM26FWT6.js +31 -0
  95. package/chunks/chunk-AZLVQV5A.js +39 -0
  96. package/chunks/chunk-BW3XNPCJ.js +191 -0
  97. package/chunks/chunk-C2VF2MJV.js +60 -0
  98. package/chunks/chunk-CMWR77VW.js +54 -0
  99. package/chunks/chunk-D2NTUAFE.js +4284 -0
  100. package/chunks/chunk-D5E2CIDK.js +20 -0
  101. package/chunks/chunk-EHVYR4OU.js +56 -0
  102. package/chunks/chunk-GDFWDU4Q.js +2369 -0
  103. package/chunks/chunk-GKG3UQH3.js +191 -0
  104. package/chunks/chunk-HKTNK262.js +23 -0
  105. package/chunks/chunk-HQGZVWBB.js +56 -0
  106. package/chunks/chunk-I4EBRCSJ.js +20 -0
  107. package/chunks/chunk-IJ7SOXLA.js +107 -0
  108. package/chunks/chunk-ILG6VQTL.js +100 -0
  109. package/chunks/chunk-ISAIFQAY.js +100 -0
  110. package/chunks/chunk-JSYVAPV6.js +6 -0
  111. package/chunks/chunk-KFW3ORPQ.js +20 -0
  112. package/chunks/chunk-KH5JTC2N.js +49 -0
  113. package/chunks/chunk-KTB7NX4Q.js +56 -0
  114. package/chunks/chunk-KUIQRVIC.js +100 -0
  115. package/chunks/chunk-L2L27BLX.js +56 -0
  116. package/chunks/chunk-LXZULGNN.js +37 -0
  117. package/chunks/chunk-MC5RLVK5.js +4284 -0
  118. package/chunks/chunk-MUZGZ3ZF.js +50 -0
  119. package/chunks/chunk-MV7CCO4Y.js +4430 -0
  120. package/chunks/chunk-N5QAGJXV.js +49 -0
  121. package/chunks/chunk-NRRDPNOH.js +100 -0
  122. package/chunks/chunk-OD33BN4K.js +32 -0
  123. package/chunks/chunk-OJI6SN6F.js +31 -0
  124. package/chunks/chunk-OPO25SDO.js +28 -0
  125. package/chunks/chunk-P3QFJTAE.js +129 -0
  126. package/chunks/chunk-PEOXR2Q6.js +191 -0
  127. package/chunks/chunk-QSSQOTGV.js +20 -0
  128. package/chunks/chunk-QUWGF5WZ.js +191 -0
  129. package/chunks/chunk-QZPBUDX2.js +20 -0
  130. package/chunks/chunk-RORBHBEN.js +20 -0
  131. package/chunks/chunk-RWWYR54P.js +31 -0
  132. package/chunks/chunk-SEB7TFUB.js +20 -0
  133. package/chunks/chunk-UHH75BZP.js +56 -0
  134. package/chunks/chunk-UJN2WZGO.js +32 -0
  135. package/chunks/chunk-UT75PSLP.js +20 -0
  136. package/chunks/chunk-VHCD3Z4T.js +20 -0
  137. package/chunks/chunk-VLHSIIPO.js +20 -0
  138. package/chunks/chunk-W5LE6YQ5.js +16 -0
  139. package/chunks/chunk-WDXNM5YB.js +20 -0
  140. package/chunks/chunk-WO2R3QFK.js +20 -0
  141. package/chunks/chunk-X4XXZ44B.js +37 -0
  142. package/chunks/chunk-XC2YGMNJ.js +203 -0
  143. package/chunks/chunk-ZBQEB3X7.js +4430 -0
  144. package/chunks/chunk-ZLQUBC5B.js +31 -0
  145. package/node/@aws-s3/index.d.ts +2 -0
  146. package/node/@aws-s3/index.js +12 -0
  147. package/node/@aws-s3/storage/file/download/index.d.ts +22 -0
  148. package/node/@aws-s3/storage/file/download/index.js +9 -0
  149. package/node/@aws-s3/storage/file/index.d.ts +3 -0
  150. package/node/@aws-s3/storage/file/index.js +14 -0
  151. package/node/@aws-s3/storage/file/upload/index.d.ts +28 -0
  152. package/node/@aws-s3/storage/file/upload/index.js +9 -0
  153. package/node/@aws-s3/storage/index.d.ts +2 -0
  154. package/node/@aws-s3/storage/index.js +12 -0
  155. package/node/@design-edito/index.js +3 -3
  156. package/node/@design-edito/thumbnails/index.js +5 -5
  157. package/node/@design-edito/thumbnails/layout/index.js +2 -2
  158. package/node/@google-cloud/index.js +13 -13
  159. package/node/@google-cloud/storage/file/copy/index.d.ts +3 -3
  160. package/node/@google-cloud/storage/file/copy/index.js +1 -1
  161. package/node/@google-cloud/storage/file/download/index.d.ts +5 -4
  162. package/node/@google-cloud/storage/file/download/index.js +1 -1
  163. package/node/@google-cloud/storage/file/index.js +20 -20
  164. package/node/@google-cloud/storage/file/move/index.d.ts +3 -3
  165. package/node/@google-cloud/storage/file/move/index.js +1 -1
  166. package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +3 -3
  167. package/node/@google-cloud/storage/file/upload/index.d.ts +13 -9
  168. package/node/@google-cloud/storage/file/upload/index.js +1 -1
  169. package/node/@google-cloud/storage/index.js +15 -15
  170. package/node/cloud-storage/client/index.d.ts +14 -0
  171. package/node/cloud-storage/client/index.js +20 -0
  172. package/node/cloud-storage/credentials/index.d.ts +38 -0
  173. package/node/cloud-storage/credentials/index.js +16 -0
  174. package/node/cloud-storage/endpoint/index.d.ts +24 -0
  175. package/node/cloud-storage/endpoint/index.js +13 -0
  176. package/node/cloud-storage/index.d.ts +5 -0
  177. package/node/cloud-storage/index.js +32 -0
  178. package/node/cloud-storage/operations/download/index.d.ts +5 -0
  179. package/node/cloud-storage/operations/download/index.js +15 -0
  180. package/node/cloud-storage/operations/index.d.ts +3 -0
  181. package/node/cloud-storage/operations/index.js +24 -0
  182. package/node/cloud-storage/operations/upload/index.d.ts +6 -0
  183. package/node/cloud-storage/operations/upload/index.js +15 -0
  184. package/node/encryption/buffer/index.d.ts +5 -4
  185. package/node/encryption/buffer/index.js +10 -10
  186. package/node/encryption/index.d.ts +4 -5
  187. package/node/encryption/index.js +9 -21
  188. package/node/encryption/key/index.d.ts +16 -0
  189. package/node/encryption/key/index.js +7 -0
  190. package/node/encryption/uint8-array/index.js +1 -1
  191. package/node/ftps/file/download/index.d.ts +22 -0
  192. package/node/ftps/file/download/index.js +9 -0
  193. package/node/ftps/file/index.d.ts +3 -0
  194. package/node/ftps/file/index.js +14 -0
  195. package/node/ftps/file/upload/index.d.ts +24 -0
  196. package/node/ftps/file/upload/index.js +9 -0
  197. package/node/ftps/index.d.ts +2 -0
  198. package/node/ftps/index.js +11 -0
  199. package/node/images/index.js +9 -9
  200. package/node/images/prepare/index.js +7 -7
  201. package/node/images/transform/area-composition/index.js +4 -4
  202. package/node/images/transform/index.d.ts +182 -5
  203. package/node/images/transform/index.js +5 -5
  204. package/node/index.d.ts +5 -1
  205. package/node/sftp/file/download/index.d.ts +20 -0
  206. package/node/sftp/file/download/index.js +9 -0
  207. package/node/sftp/file/index.d.ts +3 -0
  208. package/node/sftp/file/index.js +14 -0
  209. package/node/sftp/file/upload/index.d.ts +24 -0
  210. package/node/sftp/file/upload/index.js +9 -0
  211. package/node/sftp/index.d.ts +2 -0
  212. package/node/sftp/index.js +11 -0
  213. package/package.json +15 -10
@@ -1,9 +1,29 @@
1
1
  import sharp from "sharp";
2
+ declare const OperationNames: {
3
+ readonly Rotate: "rotate";
4
+ readonly Resize: "resize";
5
+ readonly InnerResize: "inner-resize";
6
+ readonly Extract: "extract";
7
+ readonly Extend: "extend";
8
+ readonly AreaComposition: "area-composition";
9
+ readonly Composite: "composite";
10
+ readonly Flop: "flop";
11
+ readonly Flip: "flip";
12
+ readonly Blur: "blur";
13
+ readonly Flatten: "flatten";
14
+ readonly Normalise: "normalise";
15
+ readonly Brightness: "brightness";
16
+ readonly Saturation: "saturation";
17
+ readonly Hue: "hue";
18
+ readonly Lightness: "lightness";
19
+ readonly Modulate: "modulate";
20
+ readonly Linear: "linear";
21
+ };
2
22
  export type RotateOperationParams = {
3
23
  angle: number;
4
24
  };
5
25
  export type RotateOperation = {
6
- name: 'rotate';
26
+ name: typeof OperationNames.Rotate;
7
27
  params: RotateOperationParams;
8
28
  };
9
29
  export type ResizeOperationParams = {
@@ -12,19 +32,176 @@ export type ResizeOperationParams = {
12
32
  fit?: keyof sharp.FitEnum;
13
33
  };
14
34
  export type ResizeOperation = {
15
- name: 'resize';
35
+ name: typeof OperationNames.Resize;
16
36
  params: ResizeOperationParams;
17
37
  };
38
+ export type InnerResizeOperationParams = {
39
+ ratio: number;
40
+ background?: {
41
+ r: number;
42
+ g: number;
43
+ b: number;
44
+ } | string;
45
+ };
46
+ export type InnerResizeOperation = {
47
+ name: typeof OperationNames.InnerResize;
48
+ params: InnerResizeOperationParams;
49
+ };
50
+ export type ExtractOperationParams = {
51
+ left: number;
52
+ top: number;
53
+ width: number;
54
+ height: number;
55
+ };
56
+ export type ExtractOperation = {
57
+ name: typeof OperationNames.Extract;
58
+ params: ExtractOperationParams;
59
+ };
60
+ export type ExtendOperationParams = {
61
+ left: number;
62
+ right: number;
63
+ top: number;
64
+ bottom: number;
65
+ extendWith?: sharp.ExtendWith;
66
+ background?: {
67
+ r: number;
68
+ g: number;
69
+ b: number;
70
+ } | string;
71
+ };
72
+ export type ExtendOperation = {
73
+ name: typeof OperationNames.Extend;
74
+ params: ExtendOperationParams;
75
+ };
18
76
  export type AreaCompositionOperationParams = Partial<{}>;
19
77
  export type AreaCompositionOperation = {
20
- name: 'area-composition';
78
+ name: typeof OperationNames.AreaComposition;
21
79
  params: AreaCompositionOperationParams;
22
80
  };
23
- export type Operation = RotateOperation | ResizeOperation | AreaCompositionOperation;
81
+ export type FlipOperationParams = {
82
+ flip?: boolean;
83
+ };
84
+ export type FlipOperation = {
85
+ name: typeof OperationNames.Flip;
86
+ params: FlipOperationParams;
87
+ };
88
+ export type FlopOperationParams = {
89
+ flop?: boolean;
90
+ };
91
+ export type FlopOperation = {
92
+ name: typeof OperationNames.Flop;
93
+ params: FlopOperationParams;
94
+ };
95
+ export type BlurOperationParams = {
96
+ sigma: number;
97
+ };
98
+ export type BlurOperation = {
99
+ name: typeof OperationNames.Blur;
100
+ params: BlurOperationParams;
101
+ };
102
+ export type FlattenOperationParams = {
103
+ background: {
104
+ r: number;
105
+ g: number;
106
+ b: number;
107
+ } | string;
108
+ };
109
+ export type FlattenOperation = {
110
+ name: typeof OperationNames.Flatten;
111
+ params: FlattenOperationParams;
112
+ };
113
+ export type NormaliseOperationParams = {
114
+ lower: number;
115
+ upper: number;
116
+ };
117
+ export type NormaliseOperation = {
118
+ name: typeof OperationNames.Normalise;
119
+ params: NormaliseOperationParams;
120
+ };
121
+ export type BrightnessOperationParams = {
122
+ brightness: number;
123
+ };
124
+ export type BrightnessOperation = {
125
+ name: typeof OperationNames.Brightness;
126
+ params: BrightnessOperationParams;
127
+ };
128
+ export type SaturationOperationParams = {
129
+ saturation: number;
130
+ };
131
+ export type SaturationOperation = {
132
+ name: typeof OperationNames.Saturation;
133
+ params: SaturationOperationParams;
134
+ };
135
+ export type HueOperationParams = {
136
+ hue: number;
137
+ };
138
+ export type HueOperation = {
139
+ name: typeof OperationNames.Hue;
140
+ params: HueOperationParams;
141
+ };
142
+ export type LightnessOperationParams = {
143
+ lightness: number;
144
+ };
145
+ export type LightnessOperation = {
146
+ name: typeof OperationNames.Lightness;
147
+ params: LightnessOperationParams;
148
+ };
149
+ export type ModulateOperationParams = {
150
+ brightness?: number;
151
+ lightness?: number;
152
+ hue?: number;
153
+ saturation?: number;
154
+ };
155
+ export type ModulateOperation = {
156
+ name: typeof OperationNames.Modulate;
157
+ params: ModulateOperationParams;
158
+ };
159
+ export type LinearOperationParams = {
160
+ multiplier: number | [number, number, number];
161
+ offset?: number | [number, number, number];
162
+ };
163
+ export type LinearOperation = {
164
+ name: typeof OperationNames.Linear;
165
+ params: LinearOperationParams;
166
+ };
167
+ export type CompositeOperationParamsOverlayFill = {
168
+ mode: 'fill';
169
+ channels?: sharp.Create['channels'];
170
+ background: sharp.Create['background'];
171
+ };
172
+ export type CompositeOperationParamsOverlayGradient = {
173
+ mode: 'gradient';
174
+ angle: number;
175
+ stops: {
176
+ color: string;
177
+ offset: number;
178
+ }[];
179
+ };
180
+ export type CompositeOperationParams = {
181
+ images: {
182
+ input: Buffer | {
183
+ overlay: {
184
+ width?: sharp.Create['width'];
185
+ height?: sharp.Create['height'];
186
+ } & (CompositeOperationParamsOverlayFill | CompositeOperationParamsOverlayGradient);
187
+ };
188
+ blend: sharp.Blend;
189
+ gravity: sharp.Gravity;
190
+ top?: number;
191
+ left?: number;
192
+ tile?: boolean;
193
+ }[];
194
+ };
195
+ export type CompositeOperation = {
196
+ name: typeof OperationNames.Composite;
197
+ params: CompositeOperationParams;
198
+ };
199
+ export type Operation = RotateOperation | InnerResizeOperation | ResizeOperation | ExtractOperation | AreaCompositionOperation | CompositeOperation | FlipOperation | FlopOperation | BlurOperation | BrightnessOperation | SaturationOperation | HueOperation | FlattenOperation | NormaliseOperation | ExtendOperation | LightnessOperation | ModulateOperation | LinearOperation;
24
200
  export type Operations = Operation[];
25
201
  export type Dimensions = {
26
202
  width: number;
27
203
  height: number;
28
204
  };
29
205
  export declare function transformImage(imageBuffer: Buffer, operations: Operations, maxDimensions: Dimensions): Promise<Buffer<ArrayBufferLike>>;
30
- export declare function isOperation(operation: any): boolean;
206
+ export declare function isOperation(operation: unknown): operation is Operation;
207
+ export {};
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  isOperation,
3
3
  transformImage
4
- } from "../../../chunks/chunk-VV72XGJJ.js";
5
- import "../../../chunks/chunk-422KBDRV.js";
4
+ } from "../../../chunks/chunk-MV7CCO4Y.js";
5
+ import "../../../chunks/chunk-XC2YGMNJ.js";
6
6
  import "../../../chunks/chunk-L7EUEQZP.js";
7
- import "../../../chunks/chunk-UVSTFYSD.js";
7
+ import "../../../chunks/chunk-OPO25SDO.js";
8
8
  import "../../../chunks/chunk-X5FAZBWL.js";
9
- import "../../../chunks/chunk-BONBND7I.js";
10
- import "../../../chunks/chunk-7DDXALPH.js";
9
+ import "../../../chunks/chunk-454MZ5UE.js";
11
10
  import "../../../chunks/chunk-JJWKHBXD.js";
11
+ import "../../../chunks/chunk-7DDXALPH.js";
12
12
  import "../../../chunks/chunk-WSFCRVEQ.js";
13
13
  export {
14
14
  isOperation,
package/node/index.d.ts CHANGED
@@ -1,8 +1,12 @@
1
+ import * as AwsS3 from './@aws-s3';
1
2
  import * as DesignEdito from './@design-edito';
2
3
  import * as Express from './@express';
3
4
  import * as GoogleCloud from './@google-cloud';
5
+ import * as CloudStorage from './cloud-storage';
4
6
  import * as Encryption from './encryption';
5
7
  import * as Files from './files';
8
+ import * as Ftps from './ftps';
6
9
  import * as Images from './images';
7
10
  import * as Process from './process';
8
- export { DesignEdito, Express, GoogleCloud, Encryption, Files, Images, Process };
11
+ import * as Sftp from './sftp';
12
+ export { AwsS3, DesignEdito, Express, GoogleCloud, CloudStorage, Encryption, Files, Ftps, Images, Process, Sftp };
@@ -0,0 +1,20 @@
1
+ import { Readable } from 'node:stream';
2
+ import { ReadStreamOptions } from 'ssh2';
3
+ import Client from 'ssh2-sftp-client';
4
+ import { Outcome } from '~/agnostic/misc/outcome';
5
+ export type DownloadOptions = ReadStreamOptions;
6
+ /**
7
+ * Downloads a file from a specified SFTP server.
8
+ *
9
+ * This function downloads a file from the given SFTP server at the specified source path,
10
+ * returning the file content as a Readable stream. The download process can be customized
11
+ * using optional download options.
12
+ *
13
+ * @param {string} sourcePath - The path of the file to be downloaded from the SFTP server.
14
+ * @param {Client} sftp - The ssh2-sftp-client instance used to interact with the SFTP server.
15
+ * @param {DownloadOptions} [options] - Optional settings for configuring the download process.
16
+ * @returns {Promise<Outcome.Either<Readable, string>>} A promise that resolves to an Outcome.Either.
17
+ * - On success: Outcome.makeSuccess(stream) containing the downloaded file's content as a Readable stream.
18
+ * - On failure: Outcome.makeFailure(errStr) with an error message if the download fails.
19
+ */
20
+ export declare function download(sourcePath: string, sftp: Client, options?: DownloadOptions): Promise<Outcome.Either<Readable, string>>;
@@ -0,0 +1,9 @@
1
+ import {
2
+ download
3
+ } from "../../../../chunks/chunk-OD33BN4K.js";
4
+ import "../../../../chunks/chunk-JMU5PDBD.js";
5
+ import "../../../../chunks/chunk-FENXVJYO.js";
6
+ import "../../../../chunks/chunk-WSFCRVEQ.js";
7
+ export {
8
+ download
9
+ };
@@ -0,0 +1,3 @@
1
+ import * as Download from './download';
2
+ import * as Upload from './upload';
3
+ export { Download, Upload };
@@ -0,0 +1,14 @@
1
+ import "../../../chunks/chunk-WDXNM5YB.js";
2
+ import {
3
+ download_exports
4
+ } from "../../../chunks/chunk-OD33BN4K.js";
5
+ import {
6
+ upload_exports
7
+ } from "../../../chunks/chunk-AZLVQV5A.js";
8
+ import "../../../chunks/chunk-JMU5PDBD.js";
9
+ import "../../../chunks/chunk-FENXVJYO.js";
10
+ import "../../../chunks/chunk-WSFCRVEQ.js";
11
+ export {
12
+ download_exports as Download,
13
+ upload_exports as Upload
14
+ };
@@ -0,0 +1,24 @@
1
+ import { Readable } from 'node:stream';
2
+ import Client, { TransferOptions } from 'ssh2-sftp-client';
3
+ import { Outcome } from '~/agnostic/misc/outcome';
4
+ export type UploadOptions = TransferOptions & {
5
+ ensureDir?: boolean;
6
+ overwrite?: boolean;
7
+ };
8
+ /**
9
+ * Uploads a file stream to a specified SFTP server.
10
+ *
11
+ * This function uploads the provided file stream to the given SFTP server at the specified target path.
12
+ * The upload process can be customized using optional upload options.
13
+ * If the `ensureDir` option is true, it ensures that the target directory exists before uploading.
14
+ * If the `overwrite` option is false and a file already exists at the target path, the upload is aborted.
15
+ *
16
+ * @param {Readable} fileStream - The file content to be uploaded.
17
+ * @param {string} targetPath - The target path where the file will be stored on the SFTP server.
18
+ * @param {Client} sftp - The ssh2-sftp-client instance used to interact with the SFTP server.
19
+ * @param {UploadOptions} [options] - Optional settings for configuring the upload process.
20
+ * @returns {Promise<Outcome.Either<true, string>>} A promise that resolves to an Outcome.Either.
21
+ * - On success: Outcome.makeSuccess(true) indicating the upload was successful.
22
+ * - On failure: Outcome.makeFailure(errStr) with an error message if the upload fails.
23
+ */
24
+ export declare function upload(fileStream: Readable, targetPath: string, sftp: Client, options?: UploadOptions): Promise<Outcome.Either<true, string>>;
@@ -0,0 +1,9 @@
1
+ import {
2
+ upload
3
+ } from "../../../../chunks/chunk-AZLVQV5A.js";
4
+ import "../../../../chunks/chunk-JMU5PDBD.js";
5
+ import "../../../../chunks/chunk-FENXVJYO.js";
6
+ import "../../../../chunks/chunk-WSFCRVEQ.js";
7
+ export {
8
+ upload
9
+ };
@@ -0,0 +1,2 @@
1
+ import * as File from './file';
2
+ export { File };
@@ -0,0 +1,11 @@
1
+ import {
2
+ file_exports
3
+ } from "../../chunks/chunk-WDXNM5YB.js";
4
+ import "../../chunks/chunk-OD33BN4K.js";
5
+ import "../../chunks/chunk-AZLVQV5A.js";
6
+ import "../../chunks/chunk-JMU5PDBD.js";
7
+ import "../../chunks/chunk-FENXVJYO.js";
8
+ import "../../chunks/chunk-WSFCRVEQ.js";
9
+ export {
10
+ file_exports as File
11
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@design-edito/tools",
3
- "version": "0.1.54",
3
+ "version": "0.1.56",
4
4
  "description": "",
5
5
  "author": "Maxime Fabas",
6
6
  "license": "ISC",
@@ -14,30 +14,35 @@
14
14
  "peerDependencies": {
15
15
  "@google-cloud/storage": "^7.15.2",
16
16
  "archiver": "^7.0.1",
17
+ "aws-sdk": "^2.1692.0",
18
+ "basic-ftp": "^5.0.5",
17
19
  "chalk": "^5.4.1",
18
- "express": "^4.21.2",
20
+ "express": "^5.1.0",
19
21
  "multer": "^1.4.5-lts.2",
22
+ "puppeteer": "^24.5.0",
20
23
  "quantize": "^1.0.2",
21
- "react": "^19.0.0",
22
- "react-dom": "^19.0.0",
23
- "sharp": "^0.33.5"
24
+ "react": "^19.1.0",
25
+ "react-dom": "^19.1.0",
26
+ "sharp": "^0.33.5",
27
+ "ssh2-sftp-client": "^12.0.0"
24
28
  },
25
29
  "devDependencies": {
26
30
  "@types/archiver": "^6.0.3",
27
31
  "@types/express": "^5.0.1",
28
32
  "@types/multer": "^1.4.12",
29
- "@types/node": "^22.13.10",
33
+ "@types/node": "^22.13.16",
30
34
  "@types/prompts": "^2.4.9",
31
35
  "@types/quantize": "^1.0.2",
32
- "@types/react": "^19.0.11",
36
+ "@types/react": "^19.0.12",
33
37
  "@types/react-dom": "^19.0.4",
34
- "@types/semver": "^7.5.8",
38
+ "@types/semver": "^7.7.0",
35
39
  "@types/sharp": "^0.31.1",
40
+ "@types/ssh2-sftp-client": "^9.0.4",
36
41
  "chokidar-cli": "^3.0.0",
37
42
  "concurrently": "^9.1.2",
38
- "esbuild": "^0.25.1",
43
+ "esbuild": "^0.25.2",
39
44
  "prompts": "^2.4.2",
40
- "puppeteer": "^23.6.0",
45
+ "puppeteer": "24.5.0",
41
46
  "semver": "^7.7.1",
42
47
  "simple-git": "^3.27.0",
43
48
  "typescript": "^5.8.2"