@fiado/type-kit 3.281.0 → 3.283.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,13 +1,28 @@
1
+ import { DeviceVariantStatusEnum } from './enums/DeviceVariantStatusEnum';
2
+ import { CurrencyId } from '../currency';
1
3
  export declare class DeviceVariantResponseDto {
2
4
  id: string;
3
5
  model: string;
4
6
  color: string;
5
7
  storage: string;
6
8
  price: number;
9
+ /**
10
+ * Multi-moneda (DEC-011): moneda en la que viene expresado `price` — resuelta server-side del
11
+ * scope del comprador, NUNCA la elige el front. Optional: el catálogo de backoffice (que
12
+ * muestra TODAS las variantes sin resolver una sola moneda) no lo setea; el catálogo público sí,
13
+ * siempre. El front de la app DEBE mostrarlo junto al precio y usarlo para validar saldo antes
14
+ * de dejar avanzar al checkout (evita que el usuario llegue al pago y falle recién ahí).
15
+ */
16
+ currencyId?: CurrencyId;
7
17
  stock: number;
8
18
  /**
9
19
  * Presigned GET URL (S3, expira en 1h) — nunca la URL directa del bucket.
10
20
  * Ver PhotoStorageService.signPhotoUrl (fiado-network-business) para el patrón de firma.
11
21
  */
12
22
  imageUrl?: string;
23
+ /**
24
+ * Multi-moneda (DEC-011): permite ocultar la variante del catálogo independiente del stock.
25
+ * Nullable/optional: filas creadas antes de esta feature no lo tienen todavía.
26
+ */
27
+ status?: DeviceVariantStatusEnum;
13
28
  }
@@ -1,6 +1,8 @@
1
+ import { DeviceVariantStatusEnum } from './enums/DeviceVariantStatusEnum';
1
2
  export declare class UpdateDeviceVariantRequestDto {
2
3
  model?: string;
3
4
  color?: string;
4
5
  storage?: string;
5
6
  price?: number;
7
+ status?: DeviceVariantStatusEnum;
6
8
  }
@@ -11,6 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.UpdateDeviceVariantRequestDto = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
+ const DeviceVariantStatusEnum_1 = require("./enums/DeviceVariantStatusEnum");
14
15
  class UpdateDeviceVariantRequestDto {
15
16
  }
16
17
  exports.UpdateDeviceVariantRequestDto = UpdateDeviceVariantRequestDto;
@@ -35,3 +36,8 @@ __decorate([
35
36
  (0, class_validator_1.Min)(0),
36
37
  __metadata("design:type", Number)
37
38
  ], UpdateDeviceVariantRequestDto.prototype, "price", void 0);
39
+ __decorate([
40
+ (0, class_validator_1.IsOptional)(),
41
+ (0, class_validator_1.IsEnum)(DeviceVariantStatusEnum_1.DeviceVariantStatusEnum),
42
+ __metadata("design:type", String)
43
+ ], UpdateDeviceVariantRequestDto.prototype, "status", void 0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/type-kit",
3
- "version": "3.281.0",
3
+ "version": "3.283.0",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "types": "bin/index.d.ts",
@@ -1,13 +1,29 @@
1
+ import { DeviceVariantStatusEnum } from './enums/DeviceVariantStatusEnum';
2
+ import { CurrencyId } from '../currency';
3
+
1
4
  export class DeviceVariantResponseDto {
2
5
  id!: string;
3
6
  model!: string;
4
7
  color!: string;
5
8
  storage!: string;
6
9
  price!: number;
10
+ /**
11
+ * Multi-moneda (DEC-011): moneda en la que viene expresado `price` — resuelta server-side del
12
+ * scope del comprador, NUNCA la elige el front. Optional: el catálogo de backoffice (que
13
+ * muestra TODAS las variantes sin resolver una sola moneda) no lo setea; el catálogo público sí,
14
+ * siempre. El front de la app DEBE mostrarlo junto al precio y usarlo para validar saldo antes
15
+ * de dejar avanzar al checkout (evita que el usuario llegue al pago y falle recién ahí).
16
+ */
17
+ currencyId?: CurrencyId;
7
18
  stock!: number;
8
19
  /**
9
20
  * Presigned GET URL (S3, expira en 1h) — nunca la URL directa del bucket.
10
21
  * Ver PhotoStorageService.signPhotoUrl (fiado-network-business) para el patrón de firma.
11
22
  */
12
23
  imageUrl?: string;
24
+ /**
25
+ * Multi-moneda (DEC-011): permite ocultar la variante del catálogo independiente del stock.
26
+ * Nullable/optional: filas creadas antes de esta feature no lo tienen todavía.
27
+ */
28
+ status?: DeviceVariantStatusEnum;
13
29
  }
@@ -1,4 +1,5 @@
1
- import { IsString, IsNumber, IsOptional, Min } from 'class-validator';
1
+ import { IsString, IsNumber, IsOptional, IsEnum, Min } from 'class-validator';
2
+ import { DeviceVariantStatusEnum } from './enums/DeviceVariantStatusEnum';
2
3
 
3
4
  export class UpdateDeviceVariantRequestDto {
4
5
  @IsOptional()
@@ -17,4 +18,8 @@ export class UpdateDeviceVariantRequestDto {
17
18
  @IsNumber()
18
19
  @Min(0)
19
20
  price?: number;
21
+
22
+ @IsOptional()
23
+ @IsEnum(DeviceVariantStatusEnum)
24
+ status?: DeviceVariantStatusEnum;
20
25
  }