{"version":3,"sources":["../src/models/price.ts","../src/models/b2bMarketPrice.ts","../src/models/country.ts","../src/models/gender.ts","../src/models/image.ts","../src/models/vatTax.ts","../src/models/permission.ts","../src/models/role.ts","../src/models/person.ts","../src/models/userAccount.ts","../src/models/userOrganisation.ts","../src/models/organisation.ts","../src/models/supplier.ts","../src/models/seller.ts","../src/models/region.ts","../src/models/wineType.ts","../src/models/winery.ts","../src/models/wine.ts","../src/models/vintage.ts","../src/models/vintageProduct.ts","../src/models/upload.ts","../src/models/offer.ts"],"sourcesContent":["import { CurrencyCodeEnum } from \"@vini-wine/core-enums\";\nimport { PriceDto } from \"@vini-wine/core-dtos\";\n\nexport interface PriceModel {\n  // transform\n  priceMicros: number;\n  currency: CurrencyCodeEnum;\n}\n\nexport const createPriceDtoFromAdminPriceModel = (\n  price: PriceModel,\n): PriceDto => {\n  return {\n    priceMicros: price.priceMicros,\n    currency: price.currency,\n  };\n};\n","import { createPriceDtoFromAdminPriceModel, PriceModel } from \"./price\";\nimport { B2bMarketPriceDto } from \"@vini-wine/core-dtos\";\n\nexport interface B2bMarketPriceModel {\n  // default includes\n  price: PriceModel | null;\n\n  // transform\n  updatedAt: Date;\n}\n\nexport const createB2BMarketPriceDtoFromAdminB2BMarketPriceModel = (\n  b2bMarketPrice: B2bMarketPriceModel,\n): B2bMarketPriceDto => {\n  return {\n    price: b2bMarketPrice.price\n      ? createPriceDtoFromAdminPriceModel(b2bMarketPrice.price)\n      : null,\n    updatedAt: b2bMarketPrice.updatedAt,\n  };\n};\n","import { CountryEnum } from \"@vini-wine/core-enums\";\nimport { CountryDto } from \"@vini-wine/core-dtos\";\n\nexport interface CountryModel {\n  // transform\n  codeAlpha2: CountryEnum;\n  codeAlpha3: string;\n  codeUn: string;\n}\n\nexport const createCountryDtoFromAdminCountryModel = (\n  country: CountryModel,\n): CountryDto => {\n  return {\n    codeAlpha2: country.codeAlpha2,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { GenderEnum } from \"@vini-wine/core-enums\";\nimport { GenderDto } from \"@vini-wine/core-dtos\";\n\nexport interface GenderModel extends UUID {\n  // transform\n  id: GenderEnum;\n  name: string;\n}\n\nexport const createGenderDtoFromAdminGenderModel = (\n  gender: GenderModel,\n): GenderDto => {\n  return {\n    id: gender.id,\n    name: gender.name,\n  };\n};\n","import { ImageVariationModel } from \"./imageVariation\";\nimport { ImageTypeModel } from \"./imageType\";\nimport { UUID } from \"../generic/uuid\";\nimport { ImageImageTypeCropPropertyModel } from \"./imageImageTypeCropProperty\";\nimport { ImageDto } from \"@vini-wine/core-dtos\";\n\nexport interface ImageModel extends UUID {\n  // transform\n  name: string;\n  mime: string;\n  height: number;\n  width: number;\n  url: string;\n  variation: ImageVariationModel;\n  type: ImageTypeModel;\n  size: number;\n\n  // available includes\n  originalImage?: ImageModel;\n  imageImageTypeCropProperties?: ImageImageTypeCropPropertyModel[];\n}\n\nexport const createImageDtoFromAdminImageModel = (\n  image: ImageModel,\n): ImageDto => {\n  return {\n    name: image.name,\n    mime: image.mime,\n    height: image.height,\n    width: image.width,\n    url: image.url,\n    variation: {\n      id: image.variation.id,\n    },\n    type: {\n      id: image.type.id,\n    },\n    size: image.size,\n  };\n};\n","import { CountryEnum } from \"@vini-wine/core-enums\";\nimport { VatTaxDto } from \"@vini-wine/core-dtos\";\n\nexport interface VatTaxModel {\n  countryCode: CountryEnum;\n  value: string;\n}\n\nexport const createVatTaxDtoFromAdminVatTaxModel = (\n  vatTax: VatTaxModel,\n): VatTaxDto => {\n  return {\n    countryCode: vatTax.countryCode,\n    value: vatTax.value,\n  };\n};\n","import { RoleModel } from \"./role\";\nimport { PermissionEnum } from \"@vini-wine/core-enums\";\nimport { PermissionDto } from \"@vini-wine/core-dtos\";\n\nexport interface PermissionModel {\n  // available includes\n  roles?: RoleModel[];\n\n  // transform\n  id: PermissionEnum;\n}\n\nexport const createPermissionDtoFromAdminPermissionModel = (\n  permission: PermissionModel,\n): PermissionDto => {\n  return {\n    id: permission.id,\n    roles: permission.roles,\n  };\n};\n","import { PermissionModel } from \"./permission\";\nimport { RoleEnum } from \"@vini-wine/core-enums\";\nimport { RoleDto } from \"@vini-wine/core-dtos\";\n\nexport interface RoleModel {\n  // transform\n  id: RoleEnum;\n\n  // available includes\n  permissions?: PermissionModel[];\n}\n\nexport const createRoleDtoFromAdminRoleModel = (role: RoleModel): RoleDto => {\n  return {\n    id: role.id,\n    permissions: role.permissions,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { GenderModel } from \"./gender\";\nimport { CurrencyCodeEnum, LocaleEnum } from \"@vini-wine/core-enums\";\nimport { PersonDto } from \"@vini-wine/core-dtos\";\n\nexport interface PersonModel extends UUID {\n  // default includes\n  gender: GenderModel;\n\n  // transform\n  firstName: string;\n  lastName: string;\n  preferredLanguage: LocaleEnum;\n  preferredCurrency: CurrencyCodeEnum;\n}\n\nexport const createPersonDtoFromAdminPersonModel = (\n  person: PersonModel,\n): PersonDto => {\n  return {\n    uuid: person.uuid,\n    gender: person.gender,\n    lastName: person.lastName,\n    firstName: person.firstName,\n    preferredLanguage: person.preferredLanguage,\n    preferredCurrency: person.preferredCurrency,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport {\n  createUserOrganisationDtoFromAdminUserOrganisationModel,\n  UserOrganisationModel,\n} from \"./userOrganisation\";\nimport { createPersonDtoFromAdminPersonModel, PersonModel } from \"./person\";\nimport { UserStatusModel } from \"./userStatus\";\nimport { createRoleDtoFromAdminRoleModel, RoleModel } from \"./role\";\nimport {\n  createPermissionDtoFromAdminPermissionModel,\n  PermissionModel,\n} from \"./permission\";\nimport { createImageDtoFromAdminImageModel, ImageModel } from \"./image\";\nimport { DateTimeFormatEnum, TimezoneEnum } from \"@vini-wine/core-enums\";\nimport {\n  PermissionDto,\n  RoleDto,\n  UserAccountDto,\n  UserOrganisationDto,\n} from \"@vini-wine/core-dtos\";\n\nexport interface UserAccountModel extends UUID {\n  // default includes\n  person: PersonModel;\n\n  // available includes\n  selectedUserOrganisation?: UserOrganisationModel | null;\n  permissions?: PermissionModel[];\n  roles?: RoleModel[];\n  userOrganisations?: UserOrganisationModel[];\n  numNotificationsUnPreRead?: number;\n  avatar?: ImageModel;\n\n  // transform\n  status: UserStatusModel;\n  email: string;\n  emailVerified: boolean;\n  lastLoginAt: Date;\n  defaultTimezone: TimezoneEnum;\n  defaultDateTimeFormat: DateTimeFormatEnum;\n  createdAt: Date;\n  updatedAt: Date;\n  tourSkippedAt: Date | null;\n}\n\nexport const createUserAccountDtoFromAdminUserAccountModel = (\n  userAccount: UserAccountModel,\n): UserAccountDto => {\n  let permissions: PermissionDto[] | undefined = undefined;\n  if (userAccount.permissions) {\n    permissions = [];\n    for (let i = 0; i < userAccount.permissions.length; i += 1) {\n      permissions.push(\n        createPermissionDtoFromAdminPermissionModel(userAccount.permissions[i]),\n      );\n    }\n  }\n\n  let roles: RoleDto[] | undefined = undefined;\n  if (userAccount.roles) {\n    roles = [];\n    for (let i = 0; i < userAccount.roles.length; i += 1) {\n      roles.push(createRoleDtoFromAdminRoleModel(userAccount.roles[i]));\n    }\n  }\n\n  let userOrganisations: UserOrganisationDto[] | undefined = undefined;\n  if (userAccount.userOrganisations) {\n    userOrganisations = [];\n    for (let i = 0; i < userAccount.userOrganisations.length; i += 1) {\n      userOrganisations.push(\n        createUserOrganisationDtoFromAdminUserOrganisationModel(\n          userAccount.userOrganisations[i],\n        ),\n      );\n    }\n  }\n\n  return {\n    uuid: userAccount.uuid,\n    status: userAccount.status,\n    email: userAccount.email,\n    emailVerified: userAccount.emailVerified,\n    lastLoginAt: userAccount.lastLoginAt,\n    defaultTimezone: userAccount.defaultTimezone,\n    defaultDateTimeFormat: userAccount.defaultDateTimeFormat,\n    createdAt: userAccount.createdAt,\n    updatedAt: userAccount.updatedAt,\n    tourSkippedAt: userAccount.tourSkippedAt,\n\n    person: createPersonDtoFromAdminPersonModel(userAccount.person),\n    selectedUserOrganisation: userAccount.selectedUserOrganisation\n      ? createUserOrganisationDtoFromAdminUserOrganisationModel(\n          userAccount.selectedUserOrganisation,\n        )\n      : undefined,\n    permissions,\n    roles,\n    userOrganisations: undefined,\n    numNotificationsUnPreRead: userAccount.numNotificationsUnPreRead,\n    avatar: userAccount.avatar\n      ? createImageDtoFromAdminImageModel(userAccount.avatar)\n      : undefined,\n  };\n};\n","import {\n  createOrganisationDtoFromAdminOrganisationModel,\n  OrganisationModel,\n} from \"./organisation\";\nimport {\n  createPermissionDtoFromAdminPermissionModel,\n  PermissionModel,\n} from \"./permission\";\nimport { createRoleDtoFromAdminRoleModel, RoleModel } from \"./role\";\nimport { UserOrganisationStatusModel } from \"./userOrganisationStatus\";\nimport {\n  createUserAccountDtoFromAdminUserAccountModel,\n  UserAccountModel,\n} from \"./userAccount\";\nimport {\n  PermissionDto,\n  RoleDto,\n  UserOrganisationDto,\n} from \"@vini-wine/core-dtos\";\n\nexport interface UserOrganisationModel {\n  // default includes\n  organisation: OrganisationModel;\n\n  // transform\n  createdAt: Date;\n  isOrganisationOwner: boolean;\n  isUserDefaultOrganisation: boolean;\n  status: UserOrganisationStatusModel;\n\n  // available includes\n  user?: UserAccountModel;\n  permissions?: PermissionModel[];\n  roles?: RoleModel[];\n}\n\nexport const createUserOrganisationDtoFromAdminUserOrganisationModel = (\n  userOrganisation: UserOrganisationModel,\n): UserOrganisationDto => {\n  let permissions: PermissionDto[] | undefined = undefined;\n  if (userOrganisation.permissions) {\n    permissions = [];\n    for (let i = 0; i < userOrganisation.permissions.length; i += 1) {\n      permissions.push(\n        createPermissionDtoFromAdminPermissionModel(\n          userOrganisation.permissions[i],\n        ),\n      );\n    }\n  }\n\n  let roles: RoleDto[] | undefined = undefined;\n  if (userOrganisation.roles) {\n    roles = [];\n    for (let i = 0; i < userOrganisation.roles.length; i += 1) {\n      roles.push(createRoleDtoFromAdminRoleModel(userOrganisation.roles[i]));\n    }\n  }\n\n  return {\n    organisation: createOrganisationDtoFromAdminOrganisationModel(\n      userOrganisation.organisation,\n    ),\n    createdAt: userOrganisation.createdAt,\n    isOrganisationOwner: userOrganisation.isOrganisationOwner,\n    isUserDefaultOrganisation: userOrganisation.isUserDefaultOrganisation,\n    status: userOrganisation.status,\n\n    user: userOrganisation.user\n      ? createUserAccountDtoFromAdminUserAccountModel(userOrganisation.user)\n      : undefined,\n    roles,\n    permissions,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { PostalAddressModel } from \"./postalAddress\";\nimport { createVatTaxDtoFromAdminVatTaxModel, VatTaxModel } from \"./vatTax\";\nimport { SupplierModel } from \"./supplier\";\nimport { OrganisationStatusModel } from \"./organisationStatus\";\nimport { UserAccountModel } from \"./userAccount\";\nimport { ImageModel } from \"./image\";\nimport {\n  createUserOrganisationDtoFromAdminUserOrganisationModel,\n  UserOrganisationModel,\n} from \"./userOrganisation\";\nimport { TimezoneEnum } from \"@vini-wine/core-enums\";\nimport { OrganisationDto } from \"@vini-wine/core-dtos\";\nimport { IntegrationExactModel } from \"./integrationExact\";\nimport { PermissionModel } from \"./permission\";\nimport { PlanModel } from \"./plan\";\n\nexport interface OrganisationModel extends UUID {\n  // available includes\n  suppliers?: Partial<SupplierModel>[];\n  billingPostalAddress?: PostalAddressModel;\n  defaultShippingPostalAddress?: PostalAddressModel | null;\n  organisationOwner?: Partial<UserAccountModel>;\n  registeredBy?: Partial<UserAccountModel>;\n  userOrganisations?: UserOrganisationModel[];\n  avatar?: ImageModel | null;\n  integrationExact?: IntegrationExactModel | null;\n  permissions?: PermissionModel[];\n  defaultSalesContactUserOrganisation?: UserOrganisationModel;\n  plan?: PlanModel;\n\n  // transform\n  name: string;\n  legalName: string;\n  vatTax: VatTaxModel;\n  createdAt: Date;\n  defaultTimezone: TimezoneEnum;\n  status: OrganisationStatusModel;\n  isVerified: boolean;\n}\n\nexport const createOrganisationDtoFromAdminOrganisationModel = (\n  organisation: OrganisationModel,\n): OrganisationDto => {\n  return {\n    defaultTimezone: organisation.defaultTimezone,\n    legalName: organisation.legalName,\n    name: organisation.name,\n    uuid: organisation.uuid,\n    vatTax: createVatTaxDtoFromAdminVatTaxModel(organisation.vatTax),\n    defaultSalesContactUserOrganisation:\n      organisation.defaultSalesContactUserOrganisation\n        ? createUserOrganisationDtoFromAdminUserOrganisationModel(\n            organisation.defaultSalesContactUserOrganisation,\n          )\n        : undefined,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport {\n  createOrganisationDtoFromAdminOrganisationModel,\n  OrganisationModel,\n} from \"./organisation\";\nimport { ContactPointModel } from \"./contactPoint\";\nimport { SupplierDto } from \"@vini-wine/core-dtos\";\nimport { SupplierStatusEnum } from \"@vini-wine/core-enums\";\n\nexport interface SupplierModel extends UUID {\n  // transform\n  isCustomer: boolean;\n  name: string;\n  createdAt: Date;\n  status: {\n    id: SupplierStatusEnum;\n  };\n\n  // available includes\n  supplierOrganisation?: OrganisationModel;\n  organisation?: OrganisationModel;\n  primaryLogisticsContactPoint?: ContactPointModel | null;\n  primarySalesContactPoint?: ContactPointModel | null;\n  primaryBillingsContactPoint?: ContactPointModel | null;\n}\n\nexport const createSupplierDtoFromAdminSupplierModel = (\n  supplier: SupplierModel,\n): SupplierDto => {\n  return {\n    name: supplier.name,\n    uuid: supplier.uuid,\n    supplierOrganisation: supplier.supplierOrganisation\n      ? createOrganisationDtoFromAdminOrganisationModel(\n          supplier.supplierOrganisation,\n        )\n      : undefined,\n  };\n};\n","import {\n  createOrganisationDtoFromAdminOrganisationModel,\n  OrganisationModel,\n} from \"./organisation\";\nimport { SellerDto } from \"@vini-wine/core-dtos\";\n\nexport interface SellerModel {\n  // available includes\n  organisation?: OrganisationModel;\n}\n\nexport const createSellerDtoFromAdminSellerModel = (\n  seller: SellerModel,\n): SellerDto => {\n  return {\n    uuid: seller.organisation ? seller.organisation.uuid : \"Not found\",\n    name: seller.organisation?.name,\n    organisation: seller.organisation\n      ? createOrganisationDtoFromAdminOrganisationModel(seller.organisation)\n      : undefined,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { CountryModel, createCountryDtoFromAdminCountryModel } from \"./country\";\nimport { ImageModel } from \"./image\";\nimport { RegionDto } from \"@vini-wine/core-dtos\";\n\nexport interface RegionModel extends UUID {\n  // default includes\n  country: CountryModel;\n\n  // available includes\n  mappedItems?: any;\n  parentRegion?: RegionModel | null;\n  subRegions?: RegionModel[];\n  images?: ImageModel[];\n\n  // transform\n  name: string;\n}\n\nexport const createRegionDtoFromAdminRegionModel = (\n  region: RegionModel,\n): RegionDto => {\n  return {\n    uuid: region.uuid,\n    name: region.name,\n    country: createCountryDtoFromAdminCountryModel(region.country),\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { WineTypeDto } from \"@vini-wine/core-dtos\";\n\nexport interface WineTypeModel extends UUID {\n  // available includes\n  mappedItems?: any;\n\n  // transform\n  name: string;\n}\n\nexport const createWineTypeDtoFromAdminWineTypeModel = (\n  wineType: WineTypeModel,\n): WineTypeDto => {\n  return {\n    uuid: wineType.uuid,\n    name: wineType.name,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { WineryDto } from \"@vini-wine/core-dtos\";\n\nexport interface WineryModel extends UUID {\n  // available includes\n  mappedItems?: any;\n\n  // transform\n  name: string;\n}\n\nexport const createWineryDtoFromAdminWineryModel = (\n  winery: WineryModel,\n): WineryDto => {\n  return {\n    uuid: winery.uuid,\n    name: winery.name,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\n\nimport { createRegionDtoFromAdminRegionModel, RegionModel } from \"./region\";\nimport {\n  createWineTypeDtoFromAdminWineTypeModel,\n  WineTypeModel,\n} from \"./wineType\";\nimport { createWineryDtoFromAdminWineryModel, WineryModel } from \"./winery\";\nimport { WineDto } from \"@vini-wine/core-dtos\";\n\nexport interface WineModel extends UUID {\n  // available includes\n  region?: RegionModel;\n  wineType?: WineTypeModel;\n  winery?: WineryModel;\n  mappedItems?: any;\n\n  // transform\n  name: string;\n}\n\nexport const createWineDtoFromAdminWineModel = (wine: WineModel): WineDto => {\n  return {\n    uuid: wine.uuid,\n    name: wine.name,\n    wineType: wine.wineType\n      ? createWineTypeDtoFromAdminWineTypeModel(wine.wineType)\n      : undefined,\n    region: wine.region\n      ? createRegionDtoFromAdminRegionModel(wine.region)\n      : undefined,\n    winery: wine.winery\n      ? createWineryDtoFromAdminWineryModel(wine.winery)\n      : undefined,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { createWineDtoFromAdminWineModel, WineModel } from \"./wine\";\nimport { VintageRatingModel } from \"./vintageRating\";\nimport { VintageScoreModel } from \"./vintageScore\";\nimport { createImageDtoFromAdminImageModel, ImageModel } from \"./image\";\nimport { VintageDto } from \"@vini-wine/core-dtos\";\n\nexport interface VintageModel extends UUID {\n  // transform\n  year: number;\n\n  // default includes\n  bottleImage: ImageModel | null;\n\n  // available includes\n  wine?: WineModel;\n  mappedExternal1Rating?: VintageRatingModel | null;\n  scores?: VintageScoreModel[];\n  labelImage?: ImageModel | null;\n}\n\nexport const createVintageDtoFromAdminVintageModel = (\n  vintage: VintageModel,\n): VintageDto => {\n  return {\n    uuid: vintage.uuid,\n    year: vintage.year,\n    wine: vintage.wine\n      ? createWineDtoFromAdminWineModel(vintage.wine)\n      : undefined,\n    bottleImage: vintage.bottleImage\n      ? createImageDtoFromAdminImageModel(vintage.bottleImage)\n      : null,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { createVintageDtoFromAdminVintageModel, VintageModel } from \"./vintage\";\nimport {\n  B2bMarketPriceModel,\n  createB2BMarketPriceDtoFromAdminB2BMarketPriceModel,\n} from \"./b2bMarketPrice\";\nimport { VintageProductDto } from \"@vini-wine/core-dtos\";\n\nexport interface VintageProductModel extends UUID {\n  // transform\n  milliliters: number;\n\n  // available includes\n  vintage?: VintageModel;\n  b2bMarketPrice?: B2bMarketPriceModel | null;\n}\n\nexport const createVintageProductDtoFromAdminVintageProductModel = (\n  vintageProduct: VintageProductModel,\n): VintageProductDto => {\n  return {\n    uuid: vintageProduct.uuid,\n    milliliters: vintageProduct.milliliters,\n    vintage: vintageProduct.vintage\n      ? createVintageDtoFromAdminVintageModel(vintageProduct.vintage)\n      : undefined,\n    b2bMarketPrice: vintageProduct.b2bMarketPrice\n      ? createB2BMarketPriceDtoFromAdminB2BMarketPriceModel(\n          vintageProduct.b2bMarketPrice,\n        )\n      : undefined,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport { UploadStatusEnum, UploadTypeEnum } from \"@vini-wine/core-enums\";\nimport { OrganisationModel } from \"./organisation\";\nimport { SupplierModel } from \"./supplier\";\nimport { UserAccountModel } from \"./userAccount\";\nimport { UploadVisibilityTypeModel } from \"./uploadVisibilityType\";\nimport { ImportFileHeaderModel } from \"./importFileHeader\";\nimport { UploadDto } from \"@vini-wine/core-dtos\";\n\nexport interface UploadModel extends UUID {\n  // transform\n  status: {\n    id: UploadStatusEnum;\n    statusUpdatedAt: Date;\n  };\n  type: {\n    id: UploadTypeEnum;\n  };\n  name: string;\n  validFrom: Date;\n  validUntil: Date;\n  numItems: number;\n  createdAt: Date;\n\n  // default includes\n  organisation: OrganisationModel;\n  organisationSupplier: SupplierModel;\n\n  // available includes\n  createdUser?: UserAccountModel;\n  visibilityTypes?: UploadVisibilityTypeModel[];\n  importFileHeaders?: ImportFileHeaderModel[];\n  statusUpdatedBy?: UserAccountModel | null;\n}\n\nexport const createUploadDtoFromAdminUploadModel = (\n  upload: UploadModel,\n): UploadDto => {\n  return {\n    uuid: upload.uuid,\n    name: upload.name,\n  };\n};\n","import { UUID } from \"../generic/uuid\";\nimport {\n  createSupplierDtoFromAdminSupplierModel,\n  SupplierModel,\n} from \"./supplier\";\nimport { createSellerDtoFromAdminSellerModel, SellerModel } from \"./seller\";\nimport {\n  createVintageProductDtoFromAdminVintageProductModel,\n  VintageProductModel,\n} from \"./vintageProduct\";\nimport { createPriceDtoFromAdminPriceModel, PriceModel } from \"./price\";\nimport { createUploadDtoFromAdminUploadModel, UploadModel } from \"./upload\";\nimport { PackageEnum } from \"@vini-wine/core-enums\";\nimport { CountryModel, createCountryDtoFromAdminCountryModel } from \"./country\";\nimport { OfferDto, VintageProductDto } from \"@vini-wine/core-dtos\";\n\nexport interface OfferModel extends UUID {\n  // default includes\n  price: PriceModel | null;\n\n  // available includes\n  supplier?: SupplierModel | null;\n  seller?: SellerModel;\n  vintageProducts?: VintageProductModel[];\n  upload?: UploadModel;\n  shippedFromCountry?: CountryModel | null;\n\n  // transform\n  quantity: number;\n  package: PackageEnum | null;\n  createdAt: Date;\n}\n\nexport const createOfferDtoFromAdminOfferModel = (\n  offer: OfferModel,\n): OfferDto => {\n  const vintageProducts: VintageProductDto[] = [];\n  if (offer.vintageProducts && offer.vintageProducts.length) {\n    for (let i = 0; i < offer.vintageProducts.length; i += 1) {\n      vintageProducts.push(\n        createVintageProductDtoFromAdminVintageProductModel(\n          offer.vintageProducts[i],\n        ),\n      );\n    }\n  }\n\n  return {\n    uuid: offer.uuid,\n    createdAt: offer.createdAt,\n    package: offer.package,\n    price: offer.price ? createPriceDtoFromAdminPriceModel(offer.price) : null,\n    quantity: offer.quantity,\n    seller: offer.seller\n      ? createSellerDtoFromAdminSellerModel(offer.seller)\n      : undefined,\n    supplier: offer.supplier\n      ? createSupplierDtoFromAdminSupplierModel(offer.supplier)\n      : undefined,\n    shippedFromCountry: offer.shippedFromCountry\n      ? createCountryDtoFromAdminCountryModel(offer.shippedFromCountry)\n      : undefined,\n    vintageProducts,\n    upload: offer.upload\n      ? createUploadDtoFromAdminUploadModel(offer.upload)\n      : undefined,\n  };\n};\n"],"mappings":"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","names":[]}