UNPKG

@commercetools-test-data/product

Version:

Data models for commercetools API Product

1,159 lines (1,066 loc) 1.05 MB
import { Generator, fake, Transformer, Builder, createSpecializedBuilder, createCompatibilityBuilder, oneOf, buildGraphqlList } from '@commercetools-test-data/core'; import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys'; import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols'; import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter'; import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor'; import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each'; import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors'; import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties'; import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property'; import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty'; import _JSON$stringify from '@babel/runtime-corejs3/core-js-stable/json/stringify'; import { AttributeDefinition, AttributeBooleanType, ProductType, ProductTypeDraft } from '@commercetools-test-data/product-type'; import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray'; import _Object$values from '@babel/runtime-corejs3/core-js-stable/object/values'; import { Price, LocalizedString, ReferenceRest, ClientLogging, ReferenceGraphql, PriceDraft, MoneyDraft, KeyReferenceDraft, LocalizedStringDraft } from '@commercetools-test-data/commons'; import { TaxCategory, TaxCategoryDraft } from '@commercetools-test-data/tax-category'; import { createRelatedDates } from '@commercetools-test-data/utils'; import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map'; import { Category, CategoryDraft } from '@commercetools-test-data/category'; import { ChannelDraft } from '@commercetools-test-data/channel'; import { ProductSelection } from '@commercetools-test-data/product-selection'; /** * This model does not have a corresponding REST entity, * as `AttributeDraft` doesn't exist. * * It's been created specifically for GraphQL transformations * when needing `ProductAttributeInput`. */ const generator$3 = Generator({ fields: { name: fake(f => f.lorem.slug(3)), value: null } }); function ownKeys$a(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$a(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$a(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const transformers$3 = { default: Transformer('default', {}), rest: Transformer('rest', {}), graphql: Transformer('graphql', { replaceFields: _ref => { let fields = _ref.fields; return _objectSpread$a(_objectSpread$a({}, fields), {}, { // Unlike the HTTP API, the GraphQL API only accepts strings for `value`. value: _JSON$stringify(fields.value) }); } }) }; const Model$3 = () => Builder({ generator: generator$3, transformers: transformers$3 }); const presets$9 = {}; var index$6 = /*#__PURE__*/Object.freeze({ __proto__: null, random: Model$3, presets: presets$9 }); // https://docs.commercetools.com/api/projects/products#attribute const generator$2 = Generator({ fields: { name: fake(f => f.lorem.slug(3)), // `value` is an overloaded field. It might be best to create your own. value: null, attributeDefinition: fake(() => AttributeDefinition.random()), referencedResource: null, referencedResourceSet: [] } }); const transformers$2 = { default: Transformer('default', { buildFields: ['attributeDefinition'] }), rest: Transformer('rest', { buildFields: [], replaceFields: _ref => { let fields = _ref.fields; return { name: fields.name, value: fields.value }; } }), graphql: Transformer('graphql', { buildFields: ['attributeDefinition'], addFields: () => ({ __typename: 'RawProductAttribute' }) }) }; const Model$2 = () => Builder({ generator: generator$2, transformers: transformers$2 }); const presets$8 = {}; var index$5 = /*#__PURE__*/Object.freeze({ __proto__: null, AttributeDraft: index$6, random: Model$2, presets: presets$8 }); /** * This model does not have a corresponding REST entity, * as `ImageDraft` doesn't exist. * * It's been created specifically for GraphQL transformations * when needing `ImageInput`. */ const generator$1 = Generator({ fields: { url: fake(f => f.image.url()), label: fake(f => f.lorem.slug(2)), dimensions: { w: fake(f => f.number.int({ min: 150, max: 300 })), h: fake(f => f.number.int({ min: 150, max: 300 })) } } }); function ownKeys$9(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$9(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$9(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const transformers$1 = { graphql: Transformer('graphql', { buildFields: [], replaceFields: _ref => { let fields = _ref.fields; return _objectSpread$9(_objectSpread$9({}, fields), {}, { dimensions: { width: fields.dimensions.w, height: fields.dimensions.h } }); } }) }; const Model$1 = () => Builder({ generator: generator$1, transformers: transformers$1 }); const empty$1 = () => Model$1().label(undefined); const presets$7 = { empty: empty$1 }; var index$4 = /*#__PURE__*/Object.freeze({ __proto__: null, random: Model$1, presets: presets$7 }); // https://docs.commercetools.com/api/projects/products#image const generator = Generator({ fields: { label: fake(f => f.lorem.slug(2)), url: fake(f => f.image.url()), dimensions: { w: fake(f => f.number.int({ min: 150, max: 300 })), h: fake(f => f.number.int({ min: 150, max: 300 })) } } }); function ownKeys$8(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$8(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$8(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const transformers = { default: Transformer('default', { buildFields: [] }), rest: Transformer('rest', { buildFields: [] }), graphql: Transformer('graphql', { buildFields: [], replaceFields: _ref => { let fields = _ref.fields; return _objectSpread$8(_objectSpread$8({}, fields), {}, { dimensions: { width: fields.dimensions.w, height: fields.dimensions.h }, __typename: 'Image' }); } }) }; const Model = () => Builder({ generator, transformers }); const commercetoolsApiPlatform = () => Model().url('https://bit.ly/36XHFNP').label('commercetools API platform').dimensions({ w: 1094, h: 740 }); const commercetoolsPosAem = () => Model().url('https://bit.ly/3lCCAiE').label('commercetools sits between POS and AEM').dimensions({ w: 800, h: 450 }); const empty = () => Model().label(undefined); const presets$6 = { commercetoolsPosAem: commercetoolsApiPlatform, commercetoolsApiPlatform: commercetoolsPosAem, empty }; var index$3 = /*#__PURE__*/Object.freeze({ __proto__: null, ImageDraft: index$4, random: Model, presets: presets$6 }); function ownKeys$7(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys$7(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys$7(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const commonFieldsConfig$4 = { availability: null, assets: [], id: fake(f => f.number.int()), images: fake(() => [Model()]), key: fake(f => f.lorem.slug(2)), price: null, prices: fake(() => [Price.random()]), sku: fake(f => `${f.lorem.word()}-${f.string.alphanumeric(3)}`) }; const restFieldsConfig$8 = { fields: _objectSpread$7(_objectSpread$7({}, commonFieldsConfig$4), {}, { attributes: fake(() => [Model$2()]), isMatchingVariant: fake(() => false), scopedPrice: null, scopedPriceDiscounted: null }) }; const graphqlFieldsConfig$9 = { fields: _objectSpread$7(_objectSpread$7({}, commonFieldsConfig$4), {}, { attributesRaw: fake(() => [Model$2()]), allRecurrencePrices: null, __typename: 'ProductVariant' }), postBuild: (model, context) => { // @ts-expect-error The GraphQL mode does not have a `attributes` field but we need this logic for the compatibility builder if (context.isCompatMode && model.attributes) { var _context; // @ts-expect-error The GraphQL mode does not have a `attributes` field but we need this logic for the compatibility builder model.attributesRaw = _mapInstanceProperty(_context = model.attributes).call(_context, attribute => _objectSpread$7(_objectSpread$7({}, attribute), {}, { __typename: 'RawProductAttribute' })); // @ts-expect-error The GraphQL mode does not have a `attributes` field but we need this logic for the compatibility builder model.attributes = undefined; } return model; } }; const RestModelBuilder$8 = () => createSpecializedBuilder({ name: 'ProductVariantRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$8 }); const GraphqlModelBuilder$9 = () => createSpecializedBuilder({ name: 'ProductVariantGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$9 }); const CompatProductVariantModelBuilder$1 = () => createCompatibilityBuilder({ name: 'ProductVariantCompatBuilder', modelFieldsConfig: { rest: restFieldsConfig$8, graphql: graphqlFieldsConfig$9 } }); const populatePreset$6 = builder => { return builder.id(1).key('boring-generic-milk-master-variant-key').sku('boring-generic-milk-master-variant-sku'); }; const restPreset$d = () => { return populatePreset$6(ProductVariantRest.random()).attributes([Model$2().name('cow-name').value('unknown')]); }; const graphqlPreset$e = () => { return populatePreset$6(ProductVariantGraphql.random()).attributesRaw([Model$2().name('cow-name').value('unknown')]); }; const compatPreset$d = () => { return populatePreset$6(ProductVariant.random()).attributes([Model$2().name('cow-name').value('unknown')]); }; const populatePreset$5 = builder => { return builder.id(1).key('happy-cow-master-variant-key').sku('happy-cow-master-variant-sku'); }; const restPreset$c = () => { return populatePreset$5(ProductVariantRest.random()).attributes([Model$2().name('cow-name').value('Buryonka'), Model$2().name('lactose-free').value(false)]); }; const graphqlPreset$d = () => { return populatePreset$5(ProductVariantGraphql.random()).attributesRaw([Model$2().name('cow-name').value('Buryonka'), Model$2().name('lactose-free').value(false)]); }; const compatPreset$c = () => { return populatePreset$5(ProductVariant.random()).attributes([Model$2().name('cow-name').value('Buryonka'), Model$2().name('lactose-free').value(false)]); }; const buildGraphqlAttribute = () => Model$2().name('test-boolean-attribute').value(true).attributeDefinition(AttributeDefinition.random().attributeConstraint('None').inputHint('SingleLine').inputTip(LocalizedString.random().en('Test set attribute')).isRequired(false).isSearchable(false).label(LocalizedString.random().en('Test set attribute')).name('test-boolean-attribute').type(AttributeBooleanType.random())); const restPreset$b = () => { return ProductVariantRest.random().attributes([Model$2().name('test-boolean-attribute').value(true)]); }; const graphqlPreset$c = () => { return ProductVariantGraphql.random().attributesRaw([buildGraphqlAttribute()]); }; const compatPreset$b = () => { return ProductVariant.random().attributes([buildGraphqlAttribute()]); }; const restPresets$e = { boringGenericMilkMasterVariant: restPreset$d, happyCowMilkMasterVariant: restPreset$c, withBooleanAttributeVariant: restPreset$b }; const graphqlPresets$f = { boringGenericMilkMasterVariant: graphqlPreset$e, happyCowMilkMasterVariant: graphqlPreset$d, withBooleanAttributeVariant: graphqlPreset$c }; const compatPresets$b = { boringGenericMilkMasterVariant: compatPreset$d, happyCowMilkMasterVariant: compatPreset$c, withBooleanAttributeVariant: compatPreset$b }; const ProductVariantRest = { random: RestModelBuilder$8, presets: restPresets$e }; const ProductVariantGraphql = { random: GraphqlModelBuilder$9, presets: graphqlPresets$f }; /** * @deprecated Use `ProductVariantRest` or `ProductVariantGraphql` exported models instead of `ProductVariant`. */ const ProductVariant = { random: CompatProductVariantModelBuilder$1, presets: compatPresets$b }; function ownKeys$6(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$6(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$6(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const commonFieldsConfig$3 = { categoryId: fake(f => f.string.uuid()), orderHint: fake(() => String(Math.random())) }; const restFieldsConfig$7 = { // NOTE: technically, the rest representation is a key-value pair of categoryId and orderHint. // However, representing it in the model is not really possible (the key is a random uuid). // So we need to convert the key-value pair to a list of CategoryOrderHint objects. // This way we can still define a rest model but with a special way of representing the data. fields: _objectSpread$6({}, commonFieldsConfig$3), postBuild: model => { return { [model.categoryId]: model.orderHint }; } }; const graphqlFieldsConfig$8 = { fields: _objectSpread$6(_objectSpread$6({}, commonFieldsConfig$3), {}, { __typename: 'CategoryOrderHint' }) }; const RestModelBuilder$7 = () => createSpecializedBuilder({ name: 'CategoryOrderHintRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$7 }); const GraphqlModelBuilder$8 = () => createSpecializedBuilder({ name: 'CategoryOrderHintGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$8 }); const restPresets$d = {}; const graphqlPresets$e = {}; const CategoryOrderHintRest = { random: RestModelBuilder$7, presets: restPresets$d }; const CategoryOrderHintGraphql = { random: GraphqlModelBuilder$8, presets: graphqlPresets$e }; var index$2 = /*#__PURE__*/Object.freeze({ __proto__: null, CategoryOrderHintRest: CategoryOrderHintRest, CategoryOrderHintGraphql: CategoryOrderHintGraphql }); const restFieldsConfig$6 = { fields: { suggestTokenizer: fake(() => ({ type: 'whitespace' })), text: fake(f => f.lorem.word()) } }; const graphqlFieldsConfig$7 = { fields: { __typename: 'SearchKeyword', suggestTokenizer: fake(() => ({ __typename: 'WhitespaceSuggestTokenizer', type: 'whitespace' })), text: fake(f => f.lorem.word()) } }; const RestModelBuilder$6 = () => createSpecializedBuilder({ name: 'SearchKeywordRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$6 }); const GraphqlModelBuilder$7 = () => createSpecializedBuilder({ name: 'SearchKeywordGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$7 }); const restPresets$c = {}; const graphqlPresets$d = {}; const SearchKeywordRest = { random: RestModelBuilder$6, presets: restPresets$c }; const SearchKeywordGraphql = { random: GraphqlModelBuilder$7, presets: graphqlPresets$d }; var index$1 = /*#__PURE__*/Object.freeze({ __proto__: null, SearchKeywordRest: SearchKeywordRest, SearchKeywordGraphql: SearchKeywordGraphql }); const restFieldsConfig$5 = { fields: { en: fake(() => [SearchKeywordRest.random()]), de: fake(() => [SearchKeywordRest.random()]), es: fake(() => [SearchKeywordRest.random()]) } }; const graphqlFieldsConfig$6 = { fields: { __typename: 'SearchKeywords', locale: fake(f => f.helpers.arrayElement(['en', 'de', 'es'])), searchKeywords: fake(() => [SearchKeywordGraphql.random()]) } }; const RestModelBuilder$5 = () => createSpecializedBuilder({ name: 'SearchKeywordsRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$5 }); const GraphqlModelBuilder$6 = () => createSpecializedBuilder({ name: 'SearchKeywordsGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$6 }); const restPresets$b = {}; const graphqlPresets$c = {}; const SearchKeywordsRest = { random: RestModelBuilder$5, presets: restPresets$b }; const SearchKeywordsGraphql = { random: GraphqlModelBuilder$6, presets: graphqlPresets$c }; var index = /*#__PURE__*/Object.freeze({ __proto__: null, SearchKeywordsRest: SearchKeywordsRest, SearchKeywordsGraphql: SearchKeywordsGraphql }); const restFieldsConfig$4 = { fields: { name: fake(() => LocalizedString.random()), categories: fake(() => [ReferenceRest.random().typeId('category').obj(Category.random())]), categoryOrderHints: fake(() => CategoryOrderHintRest.random()), description: fake(() => LocalizedString.random()), slug: fake(() => LocalizedString.random()), metaTitle: fake(() => LocalizedString.random()), metaDescription: fake(() => LocalizedString.random()), metaKeywords: fake(() => LocalizedString.random()), masterVariant: fake(() => ProductVariantRest.random()), variants: fake(() => [ProductVariantRest.random()]), searchKeywords: fake(() => SearchKeywordsRest.random()) } }; const graphqlFieldsConfig$5 = { fields: { __typename: 'ProductData', allVariants: fake(() => [ProductVariantGraphql.random()]), attributesRaw: fake(() => []), categories: fake(() => [Category.random()]), categoriesRef: null, // computed categoryOrderHint: null, // computed categoryOrderHints: fake(() => [CategoryOrderHintGraphql.random()]), description: null, // computed descriptionAllLocales: fake(() => LocalizedString.random()), masterVariant: fake(() => ProductVariantGraphql.random()), metaDescription: null, // computed metaDescriptionAllLocales: fake(() => LocalizedString.random()), metaKeywords: null, // computed metaKeywordsAllLocales: fake(() => LocalizedString.random()), metaTitle: null, // computed metaTitleAllLocales: fake(() => LocalizedString.random()), name: null, // computed nameAllLocales: fake(() => LocalizedString.random()), searchKeyword: null, // computed searchKeywords: fake(() => [SearchKeywordsGraphql.random()]), skus: fake(f => [`${f.lorem.word()}-${f.string.alphanumeric(3)}`]), slug: null, // computed slugAllLocales: fake(() => LocalizedString.random()), variant: fake(() => ProductVariantGraphql.random()), variants: fake(() => [ProductVariantGraphql.random()]) }, postBuild: (model, context) => { var _context, _context2, _context3; // The compatibility model is defined out of the REST one so it might happen that we // have a slug (and others) populated with the actual GraphQL value which should go in the *AllLocales fields. // (we can remove this once the compatibility mode is removed) const slugAllLocales = context?.isCompatMode && model.slug ? model.slug : model.slugAllLocales; const nameAllLocales = context?.isCompatMode && model.name ? model.name : model.nameAllLocales; const descriptionAllLocales = context?.isCompatMode && model.description ? model.description : model.descriptionAllLocales; const metaDescriptionAllLocales = context?.isCompatMode && model.metaDescription ? model.metaDescription : model.metaDescriptionAllLocales; const metaKeywordsAllLocales = context?.isCompatMode && model.metaKeywords ? model.metaKeywords : model.metaKeywordsAllLocales; const metaTitleAllLocales = context?.isCompatMode && model.metaTitle ? model.metaTitle : model.metaTitleAllLocales; const slug = slugAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(slugAllLocales) : undefined; const name = nameAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(nameAllLocales) : undefined; const description = descriptionAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(descriptionAllLocales) : undefined; const metaDescription = metaDescriptionAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(metaDescriptionAllLocales) : undefined; const metaKeywords = metaKeywordsAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(metaKeywordsAllLocales) : undefined; const metaTitle = metaTitleAllLocales ? LocalizedString.resolveGraphqlDefaultLocaleValue(metaTitleAllLocales) : undefined; const categoriesRef = _mapInstanceProperty(_context = model.categories).call(_context, category => ({ id: category.id, typeId: 'category', __typename: 'Reference' })); const _model$categoryOrderH = _mapInstanceProperty(_context2 = model.categoryOrderHints).call(_context2, hint => hint.orderHint), _model$categoryOrderH2 = _slicedToArray(_model$categoryOrderH, 1), categoryOrderHint = _model$categoryOrderH2[0]; const _model$searchKeywords = _mapInstanceProperty(_context3 = model.searchKeywords).call(_context3, keyword => keyword.searchKeywords), _model$searchKeywords2 = _slicedToArray(_model$searchKeywords, 1), searchKeyword = _model$searchKeywords2[0]; return { slugAllLocales, nameAllLocales, descriptionAllLocales, metaDescriptionAllLocales, metaKeywordsAllLocales, metaTitleAllLocales, slug, name, description, metaDescription, metaKeywords, metaTitle, categoriesRef, categoryOrderHint, searchKeyword }; } }; const RestModelBuilder$4 = () => createSpecializedBuilder({ name: 'ProductDataRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$4 }); const GraphqlModelBuilder$5 = () => createSpecializedBuilder({ name: 'ProductDataGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$5 }); const CompatProductModelBuilder$3 = () => createCompatibilityBuilder({ name: 'ProductDataCompatBuilder', modelFieldsConfig: { rest: restFieldsConfig$4, graphql: graphqlFieldsConfig$5 } }); const restPreset$a = () => { const productName = LocalizedString.presets.empty().en('Boring Generic Milk').de('Langweilige generische Milch'); const productDescription = LocalizedString.presets.empty().en('Very average milk produced by a very average cow!').de('Sehr durchschnittliche Milch von einer sehr durchschnittlichen Kuh!'); const slug = LocalizedString.presets.empty().en('boring-generic-milk-slug'); return RestModelBuilder$4().name(productName).description(productDescription).metaTitle(productName).metaDescription(productDescription).slug(slug).masterVariant(ProductVariantRest.presets.boringGenericMilkMasterVariant()); }; const graphqlPreset$b = () => { const productName = LocalizedString.presets.empty().en('Boring Generic Milk').de('Langweilige generische Milch'); const productDescription = LocalizedString.presets.empty().en('Very average milk produced by a very average cow!').de('Sehr durchschnittliche Milch von einer sehr durchschnittlichen Kuh!'); const slug = LocalizedString.presets.empty().en('boring-generic-milk-slug'); return GraphqlModelBuilder$5().nameAllLocales(productName).descriptionAllLocales(productDescription).metaTitleAllLocales(productName).metaDescriptionAllLocales(productDescription).slugAllLocales(slug).masterVariant(ProductVariantGraphql.presets.boringGenericMilkMasterVariant()); }; const compatPreset$a = () => { const productName = LocalizedString.presets.empty().en('Boring Generic Milk').de('Langweilige generische Milch'); const productDescription = LocalizedString.presets.empty().en('Very average milk produced by a very average cow!').de('Sehr durchschnittliche Milch von einer sehr durchschnittlichen Kuh!'); const slug = LocalizedString.presets.empty().en('boring-generic-milk-slug'); return CompatProductModelBuilder$3().name(productName).description(productDescription).metaTitle(productName).metaDescription(productDescription).slug(slug).masterVariant(ProductVariant.presets.boringGenericMilkMasterVariant()); }; const restPreset$9 = () => { const productName = LocalizedString.presets.empty().en('Happy Cow Milk').de('Fröhliche Kuhmilch'); const productDescription = LocalizedString.presets.empty().en('Very happy milk produced by very happy cow!').de('Sehr glückliche Milch von sehr glücklicher Kuh!'); const slug = LocalizedString.presets.empty().en('happy-cow-milk-slug'); return RestModelBuilder$4().name(productName).description(productDescription).metaTitle(productName).metaDescription(productDescription).slug(slug).masterVariant(ProductVariantRest.presets.happyCowMilkMasterVariant()); }; const graphqlPreset$a = () => { const productName = LocalizedString.presets.empty().en('Happy Cow Milk').de('Fröhliche Kuhmilch'); const productDescription = LocalizedString.presets.empty().en('Very happy milk produced by very happy cow!').de('Sehr glückliche Milch von sehr glücklicher Kuh!'); const slug = LocalizedString.presets.empty().en('happy-cow-milk-slug'); return GraphqlModelBuilder$5().nameAllLocales(productName).descriptionAllLocales(productDescription).metaTitleAllLocales(productName).metaDescriptionAllLocales(productDescription).slugAllLocales(slug).masterVariant(ProductVariantGraphql.presets.happyCowMilkMasterVariant()); }; const compatPreset$9 = () => { const productName = LocalizedString.presets.empty().en('Happy Cow Milk').de('Fröhliche Kuhmilch'); const productDescription = LocalizedString.presets.empty().en('Very happy milk produced by very happy cow!').de('Sehr glückliche Milch von sehr glücklicher Kuh!'); const slug = LocalizedString.presets.empty().en('happy-cow-milk-slug'); return CompatProductModelBuilder$3().name(productName).description(productDescription).metaTitle(productName).metaDescription(productDescription).slug(slug).masterVariant(ProductVariant.presets.happyCowMilkMasterVariant()); }; const restPresets$a = { boringGenericMilkProductData: restPreset$a, happyCowMilkProductData: restPreset$9 }; const graphqlPresets$b = { boringGenericMilkProductData: graphqlPreset$b, happyCowMilkProductData: graphqlPreset$a }; const compatPresets$a = { boringGenericMilkProductData: compatPreset$a, happyCowMilkProductData: compatPreset$9 }; const ProductDataRest = { random: RestModelBuilder$4, presets: restPresets$a }; const ProductDataGraphql = { random: GraphqlModelBuilder$5, presets: graphqlPresets$b }; /** * @deprecated Use `ProductDataRest` or `ProductDataGraphql` exported models instead of `ProductData`. */ const ProductData = { random: CompatProductModelBuilder$3, presets: compatPresets$a }; const restFieldsConfig$3 = { fields: { published: fake(f => f.datatype.boolean()), current: fake(() => ProductDataRest.random()), staged: fake(() => ProductDataRest.random()), hasStagedChanges: fake(f => f.datatype.boolean()) } }; const graphqlFieldsConfig$4 = { fields: { __typename: 'ProductCatalogData', published: fake(f => f.datatype.boolean()), current: fake(() => ProductDataGraphql.random()), staged: fake(() => ProductDataGraphql.random()), hasStagedChanges: fake(f => f.datatype.boolean()) } }; const RestModelBuilder$3 = () => createSpecializedBuilder({ name: 'ProductCatalogDataRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$3 }); const GraphqlModelBuilder$4 = () => createSpecializedBuilder({ name: 'ProductCatalogDataGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$4 }); const CompatProductModelBuilder$2 = () => createCompatibilityBuilder({ name: 'ProductCatalogDataCompatBuilder', modelFieldsConfig: { rest: restFieldsConfig$3, graphql: graphqlFieldsConfig$4 } }); const restPreset$8 = () => { const productData = ProductDataRest.presets.boringGenericMilkProductData(); return RestModelBuilder$3().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const graphqlPreset$9 = () => { const productData = ProductDataGraphql.presets.boringGenericMilkProductData(); return GraphqlModelBuilder$4().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const compatPreset$8 = () => { const productData = ProductData.presets.boringGenericMilkProductData(); return CompatProductModelBuilder$2().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const restPreset$7 = () => { const productData = ProductDataRest.presets.happyCowMilkProductData(); return RestModelBuilder$3().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const graphqlPreset$8 = () => { const productData = ProductDataGraphql.presets.happyCowMilkProductData(); return GraphqlModelBuilder$4().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const compatPreset$7 = () => { const productData = ProductData.presets.happyCowMilkProductData(); return CompatProductModelBuilder$2().staged(productData).current(productData).published(true).hasStagedChanges(false); }; const restPresets$9 = { boringGenericMilkProductCatalogData: restPreset$8, happyCowMilkProductCatalogData: restPreset$7 }; const graphqlPresets$a = { boringGenericMilkProductCatalogData: graphqlPreset$9, happyCowMilkProductCatalogData: graphqlPreset$8 }; const compatPresets$9 = { boringGenericMilkProductCatalogData: compatPreset$8, happyCowMilkProductCatalogData: compatPreset$7 }; const ProductCatalogDataRest = { random: RestModelBuilder$3, presets: restPresets$9 }; const ProductCatalogDataGraphql = { random: GraphqlModelBuilder$4, presets: graphqlPresets$a }; /** * @deprecated Use `ProductCatalogDataRest` or `ProductCatalogDataGraphql` exported models instead of `ProductCatalogData`. */ const ProductCatalogData = { random: CompatProductModelBuilder$2, presets: compatPresets$9 }; const productPriceMode = { Embedded: 'Embedded', Standalone: 'Standalone' }; var constants = /*#__PURE__*/Object.freeze({ __proto__: null, productPriceMode: productPriceMode }); function ownKeys$5(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$5(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$5(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const _createRelatedDates$1 = createRelatedDates(), _createRelatedDates2$1 = _slicedToArray(_createRelatedDates$1, 2), getOlderDate$1 = _createRelatedDates2$1[0], getNewerDate$1 = _createRelatedDates2$1[1]; const commonFieldsConfig$2 = { id: fake(f => f.string.uuid()), createdAt: fake(getOlderDate$1), createdBy: fake(() => ClientLogging.random()), key: fake(f => f.lorem.slug(2)), lastModifiedAt: fake(getNewerDate$1), lastModifiedBy: fake(() => ClientLogging.random()), priceMode: oneOf(..._Object$values(productPriceMode)), reviewRatingStatistics: null, state: null, version: fake(f => f.number.int()), warnings: fake(() => []) }; const restFieldsConfig$2 = { fields: _objectSpread$5(_objectSpread$5({}, commonFieldsConfig$2), {}, { masterData: fake(() => ProductCatalogDataRest.random()), productType: fake(f => { const productTypeId = f.string.uuid(); return ReferenceRest.presets.productTypeReference().id(productTypeId).obj(ProductType.random().id(productTypeId)); }), taxCategory: fake(f => { const taxCategoryId = f.string.uuid(); return ReferenceRest.presets.taxCategoryReference().id(taxCategoryId).obj(TaxCategory.random().id(taxCategoryId)); }) }), postBuild: model => { const result = _objectSpread$5({}, model); // This is required because the 'productType' prop has a different type for REST and GraphQL // and compatibility presets can use just one value for it. We decided to use the GraphQL // one so here we check whether the productType has the GraphQL shape and convert it to // REST (it should be a reference) if needed. if (model.productType && !model.productType.typeId) { result.productType = ReferenceRest.presets.productTypeReference().id(model.productType.id).obj(model.productType).build(); } return result; } }; const graphqlFieldsConfig$3 = { fields: _objectSpread$5(_objectSpread$5({}, commonFieldsConfig$2), {}, { masterData: fake(() => ProductCatalogDataGraphql.random()), productSelectionRefs: fake(() => buildGraphqlList([], { __typename: 'SelectionOfProductQueryResult' })), productType: fake(() => ProductType.random()), productTypeRef: null, skus: fake(() => []), stateRef: null, taxCategory: fake(() => TaxCategory.random()), taxCategoryRef: null, __typename: 'Product' }), postBuild: model => { if (model.productType) { model.productTypeRef = ReferenceGraphql.presets.productTypeReference().id(model.productType.id).build(); } if (model.state) { model.stateRef = ReferenceGraphql.presets.stateReference().id(model.state.id).build(); } if (model.taxCategory) { model.taxCategoryRef = ReferenceGraphql.presets.taxCategoryReference().id(model.taxCategory.id).build(); } return model; } }; const RestModelBuilder$2 = () => createSpecializedBuilder({ name: 'ProductRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$2 }); const GraphqlModelBuilder$3 = () => createSpecializedBuilder({ name: 'ProductGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$3 }); const CompatProductModelBuilder$1 = () => createCompatibilityBuilder({ name: 'ProductCompatBuilder', modelFieldsConfig: { rest: restFieldsConfig$2, graphql: graphqlFieldsConfig$3 } }); const restPreset$6 = () => { return ProductRest.random().key('boring-generic-milk-key').masterData(ProductCatalogDataRest.presets.boringGenericMilkProductCatalogData()).productType(ReferenceRest.presets.productTypeReference().obj(ProductType.presets.milk())); }; const graphqlPreset$7 = () => { return ProductGraphql.random().key('boring-generic-milk-key').masterData(ProductCatalogDataGraphql.presets.boringGenericMilkProductCatalogData()).productType(ProductType.presets.milk()); }; const compatPreset$6 = () => { return Product.random().key('boring-generic-milk-key').masterData(ProductCatalogData.presets.boringGenericMilkProductCatalogData()).productType(ProductType.presets.milk()); }; const restPreset$5 = () => { return ProductRest.random().key('happy-cow-milk-key').masterData(ProductCatalogDataRest.presets.happyCowMilkProductCatalogData()).productType(ReferenceRest.presets.productTypeReference().obj(ProductType.presets.milk())); }; const graphqlPreset$6 = () => { return ProductGraphql.random().key('happy-cow-milk-key').masterData(ProductCatalogDataGraphql.presets.happyCowMilkProductCatalogData()).productType(ProductType.presets.milk()); }; const compatPreset$5 = () => { return Product.random().key('happy-cow-milk-key').masterData(ProductCatalogData.presets.happyCowMilkProductCatalogData()).productType(ProductType.presets.milk()); }; const restPresets$8 = { happyCowMilk: restPreset$5, boringGenericMilk: restPreset$6 }; const graphqlPresets$9 = { happyCowMilk: graphqlPreset$6, boringGenericMilk: graphqlPreset$7 }; const compatPresets$8 = { happyCowMilk: compatPreset$5, boringGenericMilk: compatPreset$6 }; // export * as ProductDraft from './product-draft'; const ProductRest = { random: RestModelBuilder$2, presets: restPresets$8 }; const ProductGraphql = { random: GraphqlModelBuilder$3, presets: graphqlPresets$9 }; /** * @deprecated Use `ProductRest` or `ProductGraphql` exported models instead of `Product`. */ const Product = { random: CompatProductModelBuilder$1, presets: compatPresets$8, constants }; function ownKeys$4(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys$4(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys$4(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } const commonFieldsConfig$1 = { assets: [], attributes: fake(() => [Model$3()]), images: fake(() => [Model$1()]), key: fake(f => f.lorem.slug(2)), prices: fake(() => [PriceDraft.random()]), sku: fake(f => `${f.lorem.word()}-${f.string.alphanumeric(3)}`) }; const restFieldsConfig$1 = { fields: commonFieldsConfig$1 }; const graphqlFieldsConfig$2 = { fields: _objectSpread$4({}, commonFieldsConfig$1) }; const RestModelBuilder$1 = () => createSpecializedBuilder({ name: 'ProductVariantDraftRestBuilder', type: 'rest', modelFieldsConfig: restFieldsConfig$1 }); const GraphqlModelBuilder$2 = () => createSpecializedBuilder({ name: 'ProductVariantDraftGraphqlBuilder', type: 'graphql', modelFieldsConfig: graphqlFieldsConfig$2 }); const CompatProductVariantModelBuilder = () => createCompatibilityBuilder({ name: 'ProductVariantDraftCompatBuilder', modelFieldsConfig: { rest: restFieldsConfig$1, graphql: graphqlFieldsConfig$2 } }); const populatePreset$4 = builder => { return builder.key(undefined).sku(undefined).prices(undefined).attributes(undefined).images(undefined).assets(undefined); }; const restPreset$4 = () => populatePreset$4(ProductVariantDraftRest.random()); const graphqlPreset$5 = () => populatePreset$4(ProductVariantDraftGraphql.random()); const compatPreset$4 = () => populatePreset$4(ProductVariantDraft.random()); const a789Bc01 = () => ProductVariantDraft.presets.empty().sku('a789-bc-2015').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/a789-bc-2015.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(750), Model$3().name('model').value(2015), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const a789Bc02 = () => ProductVariantDraft.presets.empty().sku('a789-bc-2019').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/a789-bc-2019.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(750), Model$3().name('model').value(2019), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const a789Bc03 = () => ProductVariantDraft.presets.empty().sku('a789-bc-2023').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/a789-bc-2023.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(750), Model$3().name('model').value(2023), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const aa123Qr01 = () => ProductVariantDraft.presets.empty().sku('aa123-qr-2015').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aa123-qr-2015.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(500), Model$3().name('model').value(2015), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const aa123Qr02 = () => ProductVariantDraft.presets.empty().sku('aa123-qr-2019').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aa123-qr-2019.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(500), Model$3().name('model').value(2019), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const aa123Qr03 = () => ProductVariantDraft.presets.empty().sku('aa123-qr-2023').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aa123-qr-2023.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(500), Model$3().name('model').value(2023), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const aaa789Uv01 = () => ProductVariantDraft.presets.empty().sku('aaa789-uv-red').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aaa789-uv-red.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(10000), Model$3().name('color').value({ key: 'RED', label: { 'de-DE': 'Rot', 'it-IT': 'Rosso', 'nl-NL': 'Rood', 'fr-FR': 'Rouge', 'en-AU': 'Red', 'es-ES': 'Rojo', 'en-GB': 'Red', 'en-NZ': 'Red', 'pt-PT': 'Vermelho', 'en-US': 'Red' } }), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const aaa789Uv02 = () => ProductVariantDraft.presets.empty().sku('aaa789-uv-blue').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aaa789-uv-blue.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(10000), Model$3().name('color').value({ key: 'BLUE', label: { 'de-DE': 'Blau', 'it-IT': 'Blu', 'nl-NL': 'Blauw', 'fr-FR': 'Bleu', 'en-AU': 'Blue', 'es-ES': 'Azul', 'en-GB': 'Blue', 'en-NZ': 'Blue', 'pt-PT': 'Azul', 'en-US': 'Blue' } }), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const aaa789Uv03 = () => ProductVariantDraft.presets.empty().sku('aaa789-uv-green').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/aaa789-uv-green.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(10000), Model$3().name('color').value({ key: 'GREEN', label: { 'de-DE': 'Grün', 'it-IT': 'Verde', 'nl-NL': 'Groen', 'fr-FR': 'Vert', 'en-AU': 'Green', 'es-ES': 'Verde', 'en-GB': 'Green', 'en-NZ': 'Green', 'pt-PT': 'Verde', 'en-US': 'Green' } }), Model$3().name('iso45001').value(false), Model$3().name('mobility').value({ key: 'tracked', label: 'Tracked' })]); const airFilter01 = () => ProductVariantDraft.presets.empty().sku('air-filter').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/air-filter.webp').dimensions({ w: 1024, h: 1024 })]).attributes([]); const alternator01 = () => ProductVariantDraft.presets.empty().sku('alternator').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/alternator.webp').dimensions({ w: 1024, h: 1024 })]).attributes([]); const b456St01 = () => ProductVariantDraft.presets.empty().sku('b456-st-2015').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/b456-st-2015.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2015), Model$3().name('iso45001').value(true), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const b456St02 = () => ProductVariantDraft.presets.empty().sku('b456-st-2019').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/b456-st-2019.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2019), Model$3().name('iso45001').value(true), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const b456St03 = () => ProductVariantDraft.presets.empty().sku('b456-st-2023').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/b456-st-2023.webp').dimensions({ w: 1024, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2023), Model$3().name('iso45001').value(true), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const bb456St01 = () => ProductVariantDraft.presets.empty().sku('bb456-st-2015').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/bb456-st-2015.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2015), Model$3().name('iso45001').value(true), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const bb456St02 = () => ProductVariantDraft.presets.empty().sku('bb456-st-2019').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/bb456-st-2019.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2019), Model$3().name('iso45001').value(true), Model$3().name('mobility').value({ key: 'wheeled', label: 'Wheeled' })]); const bb456St03 = () => ProductVariantDraft.presets.empty().sku('bb456-st-2023').images([presets$7.empty().url('https://storage.googleapis.com/merchant-center-europe/sample-data/b2bstore/bb456-st-2023.webp').dimensions({ w: 1792, h: 1024 })]).attributes([Model$3().name('capacity').value(600), Model$3().name('model').value(2023), M