@scaleway/sdk-product-catalog 1.6.0 → 1.7.0

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.
@@ -1,4 +1,4 @@
1
1
  export { PublicCatalogAPI } from './api.gen';
2
2
  export * from './marshalling.gen';
3
- export type { ListPublicCatalogProductsRequestProductType, ListPublicCatalogProductsResponse, PublicCatalogApiListPublicCatalogProductsRequest, PublicCatalogProduct, PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProperties, PublicCatalogProductPropertiesAppleSilicon, PublicCatalogProductPropertiesDedibox, PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesHardwareCPU, PublicCatalogProductPropertiesHardwareCPUArch, PublicCatalogProductPropertiesHardwareCPUPhysical, PublicCatalogProductPropertiesHardwareCPUVirtual, PublicCatalogProductPropertiesHardwareGPU, PublicCatalogProductPropertiesHardwareNetwork, PublicCatalogProductPropertiesHardwareRAM, PublicCatalogProductPropertiesHardwareStorage, PublicCatalogProductPropertiesInstance, PublicCatalogProductStatus, PublicCatalogProductUnitOfMeasure, PublicCatalogProductUnitOfMeasureCountableUnit, } from './types.gen';
3
+ export type { ListPublicCatalogProductsRequestProductType, ListPublicCatalogProductsResponse, PublicCatalogApiListPublicCatalogProductsRequest, PublicCatalogProduct, PublicCatalogProductEnvironmentalImpactEstimation, PublicCatalogProductLocality, PublicCatalogProductPrice, PublicCatalogProductProperties, PublicCatalogProductPropertiesAppleSilicon, PublicCatalogProductPropertiesBlockStorage, PublicCatalogProductPropertiesDedibox, PublicCatalogProductPropertiesElasticMetal, PublicCatalogProductPropertiesHardware, PublicCatalogProductPropertiesHardwareCPU, PublicCatalogProductPropertiesHardwareCPUArch, PublicCatalogProductPropertiesHardwareCPUPhysical, PublicCatalogProductPropertiesHardwareCPUVirtual, PublicCatalogProductPropertiesHardwareGPU, PublicCatalogProductPropertiesHardwareNetwork, PublicCatalogProductPropertiesHardwareRAM, PublicCatalogProductPropertiesHardwareStorage, PublicCatalogProductPropertiesInstance, PublicCatalogProductPropertiesObjectStorage, PublicCatalogProductStatus, PublicCatalogProductUnitOfMeasure, PublicCatalogProductUnitOfMeasureCountableUnit, } from './types.gen';
4
4
  export * as ValidationRules from './validation-rules.gen';
@@ -97,7 +97,19 @@ const unmarshalPublicCatalogProductPropertiesAppleSilicon = (data) => {
97
97
  );
98
98
  }
99
99
  return {
100
- range: data.range
100
+ range: data.range,
101
+ serverType: data.server_type
102
+ };
103
+ };
104
+ const unmarshalPublicCatalogProductPropertiesBlockStorage = (data) => {
105
+ if (!sdkClient.isJSONObject(data)) {
106
+ throw new TypeError(
107
+ `Unmarshalling the type 'PublicCatalogProductPropertiesBlockStorage' failed as data isn't a dictionary.`
108
+ );
109
+ }
110
+ return {
111
+ maxVolumeSize: data.max_volume_size,
112
+ minVolumeSize: data.min_volume_size
101
113
  };
102
114
  };
103
115
  const unmarshalPublicCatalogProductPropertiesDedibox = (data) => {
@@ -107,6 +119,7 @@ const unmarshalPublicCatalogProductPropertiesDedibox = (data) => {
107
119
  );
108
120
  }
109
121
  return {
122
+ offerId: data.offer_id,
110
123
  range: data.range
111
124
  };
112
125
  };
@@ -117,6 +130,7 @@ const unmarshalPublicCatalogProductPropertiesElasticMetal = (data) => {
117
130
  );
118
131
  }
119
132
  return {
133
+ offerId: data.offer_id,
120
134
  range: data.range
121
135
  };
122
136
  };
@@ -146,6 +160,14 @@ const unmarshalPublicCatalogProductPropertiesInstance = (data) => {
146
160
  recommendedReplacementOfferIds: data.recommended_replacement_offer_ids
147
161
  };
148
162
  };
163
+ const unmarshalPublicCatalogProductPropertiesObjectStorage = (data) => {
164
+ if (!sdkClient.isJSONObject(data)) {
165
+ throw new TypeError(
166
+ `Unmarshalling the type 'PublicCatalogProductPropertiesObjectStorage' failed as data isn't a dictionary.`
167
+ );
168
+ }
169
+ return {};
170
+ };
149
171
  const unmarshalPublicCatalogProductEnvironmentalImpactEstimation = (data) => {
150
172
  if (!sdkClient.isJSONObject(data)) {
151
173
  throw new TypeError(
@@ -188,10 +210,14 @@ const unmarshalPublicCatalogProductProperties = (data) => {
188
210
  }
189
211
  return {
190
212
  appleSilicon: data.apple_silicon ? unmarshalPublicCatalogProductPropertiesAppleSilicon(data.apple_silicon) : void 0,
213
+ blockStorage: data.block_storage ? unmarshalPublicCatalogProductPropertiesBlockStorage(data.block_storage) : void 0,
191
214
  dedibox: data.dedibox ? unmarshalPublicCatalogProductPropertiesDedibox(data.dedibox) : void 0,
192
215
  elasticMetal: data.elastic_metal ? unmarshalPublicCatalogProductPropertiesElasticMetal(data.elastic_metal) : void 0,
193
216
  hardware: data.hardware ? unmarshalPublicCatalogProductPropertiesHardware(data.hardware) : void 0,
194
- instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0
217
+ instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0,
218
+ objectStorage: data.object_storage ? unmarshalPublicCatalogProductPropertiesObjectStorage(
219
+ data.object_storage
220
+ ) : void 0
195
221
  };
196
222
  };
197
223
  const unmarshalPublicCatalogProductUnitOfMeasure = (data) => {
@@ -220,6 +246,7 @@ const unmarshalPublicCatalogProduct = (data) => {
220
246
  locality: data.locality ? unmarshalPublicCatalogProductLocality(data.locality) : void 0,
221
247
  price: data.price ? unmarshalPublicCatalogProductPrice(data.price) : void 0,
222
248
  product: data.product,
249
+ productCategory: data.product_category,
223
250
  properties: data.properties ? unmarshalPublicCatalogProductProperties(data.properties) : void 0,
224
251
  serviceCategory: data.service_category,
225
252
  sku: data.sku,
@@ -95,7 +95,19 @@ const unmarshalPublicCatalogProductPropertiesAppleSilicon = (data) => {
95
95
  );
96
96
  }
97
97
  return {
98
- range: data.range
98
+ range: data.range,
99
+ serverType: data.server_type
100
+ };
101
+ };
102
+ const unmarshalPublicCatalogProductPropertiesBlockStorage = (data) => {
103
+ if (!isJSONObject(data)) {
104
+ throw new TypeError(
105
+ `Unmarshalling the type 'PublicCatalogProductPropertiesBlockStorage' failed as data isn't a dictionary.`
106
+ );
107
+ }
108
+ return {
109
+ maxVolumeSize: data.max_volume_size,
110
+ minVolumeSize: data.min_volume_size
99
111
  };
100
112
  };
101
113
  const unmarshalPublicCatalogProductPropertiesDedibox = (data) => {
@@ -105,6 +117,7 @@ const unmarshalPublicCatalogProductPropertiesDedibox = (data) => {
105
117
  );
106
118
  }
107
119
  return {
120
+ offerId: data.offer_id,
108
121
  range: data.range
109
122
  };
110
123
  };
@@ -115,6 +128,7 @@ const unmarshalPublicCatalogProductPropertiesElasticMetal = (data) => {
115
128
  );
116
129
  }
117
130
  return {
131
+ offerId: data.offer_id,
118
132
  range: data.range
119
133
  };
120
134
  };
@@ -144,6 +158,14 @@ const unmarshalPublicCatalogProductPropertiesInstance = (data) => {
144
158
  recommendedReplacementOfferIds: data.recommended_replacement_offer_ids
145
159
  };
146
160
  };
161
+ const unmarshalPublicCatalogProductPropertiesObjectStorage = (data) => {
162
+ if (!isJSONObject(data)) {
163
+ throw new TypeError(
164
+ `Unmarshalling the type 'PublicCatalogProductPropertiesObjectStorage' failed as data isn't a dictionary.`
165
+ );
166
+ }
167
+ return {};
168
+ };
147
169
  const unmarshalPublicCatalogProductEnvironmentalImpactEstimation = (data) => {
148
170
  if (!isJSONObject(data)) {
149
171
  throw new TypeError(
@@ -186,10 +208,14 @@ const unmarshalPublicCatalogProductProperties = (data) => {
186
208
  }
187
209
  return {
188
210
  appleSilicon: data.apple_silicon ? unmarshalPublicCatalogProductPropertiesAppleSilicon(data.apple_silicon) : void 0,
211
+ blockStorage: data.block_storage ? unmarshalPublicCatalogProductPropertiesBlockStorage(data.block_storage) : void 0,
189
212
  dedibox: data.dedibox ? unmarshalPublicCatalogProductPropertiesDedibox(data.dedibox) : void 0,
190
213
  elasticMetal: data.elastic_metal ? unmarshalPublicCatalogProductPropertiesElasticMetal(data.elastic_metal) : void 0,
191
214
  hardware: data.hardware ? unmarshalPublicCatalogProductPropertiesHardware(data.hardware) : void 0,
192
- instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0
215
+ instance: data.instance ? unmarshalPublicCatalogProductPropertiesInstance(data.instance) : void 0,
216
+ objectStorage: data.object_storage ? unmarshalPublicCatalogProductPropertiesObjectStorage(
217
+ data.object_storage
218
+ ) : void 0
193
219
  };
194
220
  };
195
221
  const unmarshalPublicCatalogProductUnitOfMeasure = (data) => {
@@ -218,6 +244,7 @@ const unmarshalPublicCatalogProduct = (data) => {
218
244
  locality: data.locality ? unmarshalPublicCatalogProductLocality(data.locality) : void 0,
219
245
  price: data.price ? unmarshalPublicCatalogProductPrice(data.price) : void 0,
220
246
  product: data.product,
247
+ productCategory: data.product_category,
221
248
  properties: data.properties ? unmarshalPublicCatalogProductProperties(data.properties) : void 0,
222
249
  serviceCategory: data.service_category,
223
250
  sku: data.sku,
@@ -1,7 +1,7 @@
1
1
  import type { Money, Region as ScwRegion, Zone as ScwZone } from '@scaleway/sdk-client';
2
- export type ListPublicCatalogProductsRequestProductType = 'unknown_product_type' | 'instance' | 'apple_silicon' | 'elastic_metal' | 'dedibox' | 'block_storage';
2
+ export type ListPublicCatalogProductsRequestProductType = 'unknown_product_type' | 'instance' | 'apple_silicon' | 'elastic_metal' | 'dedibox' | 'block_storage' | 'object_storage';
3
3
  export type PublicCatalogProductPropertiesHardwareCPUArch = 'unknown_arch' | 'x64' | 'arm64' | 'riscv' | 'apple_silicon';
4
- export type PublicCatalogProductStatus = 'unknown_status' | 'public_beta' | 'preview' | 'general_availability' | 'end_of_deployment' | 'end_of_support';
4
+ export type PublicCatalogProductStatus = 'unknown_status' | 'public_beta' | 'preview' | 'general_availability' | 'end_of_deployment' | 'end_of_support' | 'end_of_sale';
5
5
  export type PublicCatalogProductUnitOfMeasureCountableUnit = 'unknown_countable_unit' | 'chunk' | 'core' | 'currency' | 'device' | 'domain' | 'email' | 'gb_s' | 'gigabyte' | 'hour' | 'iops_gigabyte' | 'ip' | 'month' | 'node' | 'plan' | 'query' | 'request' | 'session' | 'vcpu_s' | 'version' | 'year' | 'key' | 'token' | 'minute' | 'setup' | 'day';
6
6
  export interface PublicCatalogProductPropertiesHardwareCPUPhysical {
7
7
  /**
@@ -122,18 +122,40 @@ export interface PublicCatalogProductPropertiesAppleSilicon {
122
122
  * The range of the Apple Silicon server.
123
123
  */
124
124
  range: string;
125
+ /**
126
+ * The server type of the Apple Silicon server.
127
+ */
128
+ serverType: string;
129
+ }
130
+ export interface PublicCatalogProductPropertiesBlockStorage {
131
+ /**
132
+ * @deprecated The minimum size of storage volume for this product in bytes. Deprecated.
133
+ */
134
+ minVolumeSize?: number;
135
+ /**
136
+ * @deprecated The maximum size of storage volume for this product in bytes. Deprecated.
137
+ */
138
+ maxVolumeSize?: number;
125
139
  }
126
140
  export interface PublicCatalogProductPropertiesDedibox {
127
141
  /**
128
142
  * The range of the Dedibox server.
129
143
  */
130
144
  range: string;
145
+ /**
146
+ * The offer ID of the Dedibox server.
147
+ */
148
+ offerId: number;
131
149
  }
132
150
  export interface PublicCatalogProductPropertiesElasticMetal {
133
151
  /**
134
152
  * The range of the Elastic Metal server.
135
153
  */
136
154
  range: string;
155
+ /**
156
+ * The offer ID of the Elastic Metal server.
157
+ */
158
+ offerId: string;
137
159
  }
138
160
  export interface PublicCatalogProductPropertiesHardware {
139
161
  /**
@@ -171,6 +193,8 @@ export interface PublicCatalogProductPropertiesInstance {
171
193
  */
172
194
  recommendedReplacementOfferIds: string[];
173
195
  }
196
+ export interface PublicCatalogProductPropertiesObjectStorage {
197
+ }
174
198
  export interface PublicCatalogProductEnvironmentalImpactEstimation {
175
199
  kgCo2Equivalent?: number;
176
200
  m3WaterUsage?: number;
@@ -215,27 +239,39 @@ export interface PublicCatalogProductProperties {
215
239
  /**
216
240
  * The properties of Dedibox products.
217
241
  *
218
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance' could be set.
242
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
219
243
  */
220
244
  dedibox?: PublicCatalogProductPropertiesDedibox;
221
245
  /**
222
246
  * The properties of Elastic Metal products.
223
247
  *
224
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance' could be set.
248
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
225
249
  */
226
250
  elasticMetal?: PublicCatalogProductPropertiesElasticMetal;
227
251
  /**
228
252
  * The properties of Apple Silicon products.
229
253
  *
230
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance' could be set.
254
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
231
255
  */
232
256
  appleSilicon?: PublicCatalogProductPropertiesAppleSilicon;
233
257
  /**
234
258
  * The properties of Instance products.
235
259
  *
236
- * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance' could be set.
260
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
237
261
  */
238
262
  instance?: PublicCatalogProductPropertiesInstance;
263
+ /**
264
+ * The properties of Block Storage products.
265
+ *
266
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
267
+ */
268
+ blockStorage?: PublicCatalogProductPropertiesBlockStorage;
269
+ /**
270
+ * The properties of Object Storage products.
271
+ *
272
+ * One-of ('properties'): at most one of 'dedibox', 'elasticMetal', 'appleSilicon', 'instance', 'blockStorage', 'objectStorage' could be set.
273
+ */
274
+ objectStorage?: PublicCatalogProductPropertiesObjectStorage;
239
275
  }
240
276
  export interface PublicCatalogProductUnitOfMeasure {
241
277
  unit: PublicCatalogProductUnitOfMeasureCountableUnit;
@@ -250,6 +286,10 @@ export interface PublicCatalogProduct {
250
286
  * The category of the product.
251
287
  */
252
288
  serviceCategory: string;
289
+ /**
290
+ * The product category of the product.
291
+ */
292
+ productCategory: string;
253
293
  /**
254
294
  * The product name.
255
295
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-product-catalog",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "description": "Scaleway SDK product-catalog",
5
5
  "license": "Apache-2.0",
6
6
  "files": [
@@ -26,17 +26,17 @@
26
26
  "directory": "packages_generated/product-catalog"
27
27
  },
28
28
  "engines": {
29
- "node": ">=20.19.1"
29
+ "node": ">=20.19.4"
30
30
  },
31
31
  "dependencies": {
32
- "@scaleway/random-name": "5.1.1",
33
- "@scaleway/sdk-std": "1.0.5"
32
+ "@scaleway/random-name": "5.1.2",
33
+ "@scaleway/sdk-std": "1.0.6"
34
34
  },
35
35
  "peerDependencies": {
36
- "@scaleway/sdk-client": "^1.3.0"
36
+ "@scaleway/sdk-client": "^1.3.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@scaleway/sdk-client": "^1.3.0"
39
+ "@scaleway/sdk-client": "^1.3.1"
40
40
  },
41
41
  "scripts": {
42
42
  "package:check": "pnpm publint",