rerobe-js-orm 3.0.21 → 3.0.22

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.
@@ -37,6 +37,7 @@ class ProductFromFormState extends ProductFactory_1.default {
37
37
  const productFilterAttributes = {
38
38
  documentId: (_o = props.props) === null || _o === void 0 ? void 0 : _o.documentId,
39
39
  brand: props.fields.brand.selectedValue,
40
+ sizeCategory: props.fields.sizeCategory.selectedValue,
40
41
  size: props.fields.size.selectedValue,
41
42
  clothingSize: props.fields.clothingSize.selectedValues,
42
43
  jeanSize: props.fields.jeanSize.selectedValue,
@@ -29,6 +29,7 @@ class ProductFormState extends FormState_1.default {
29
29
  this.fields.measurements = this.fieldFactory('singleSelect', 'measurements');
30
30
  // ProductFilterAttributesFormFields
31
31
  this.fields.brand = this.fieldFactory('singleSelect', 'brand', options_1.brands);
32
+ this.fields.sizeCategory = this.fieldFactory('singleSelect', 'sizeCategory', options_1.sizeCategoryOptions);
32
33
  this.fields.size = this.fieldFactory('singleSelect', 'size', options_1.clothingSizeOptions);
33
34
  this.fields.color = this.fieldFactory('singleSelect', 'color', options_1.colors);
34
35
  this.fields.condition = this.fieldFactory('singleSelect', 'condition', options_1.conditions);
@@ -605,6 +606,15 @@ class ProductFormState extends FormState_1.default {
605
606
  }
606
607
  }
607
608
  }
609
+ if (fieldKey === 'sizeCategory') {
610
+ let selectedOptions = [];
611
+ if (this.props.sizeCategory) {
612
+ selectedOptions = [{ label: this.props.sizeCategory, value: this.props.sizeCategory }];
613
+ if (!options.map((o) => o.value).includes(this.props.sizeCategory)) {
614
+ options.splice(0, 0, ...selectedOptions);
615
+ }
616
+ }
617
+ }
608
618
  if (fieldKey === 'primaryAgeCategory') {
609
619
  let selectedPrimaryAgeCategoryOptions = [];
610
620
  if (this.props.primaryAgeCategory) {
@@ -188,3 +188,8 @@ export const minorDefectOptions: {
188
188
  label: string;
189
189
  value: string;
190
190
  }[];
191
+ export const sizeCategoryOptions: {
192
+ label: string;
193
+ value: string;
194
+ category: string;
195
+ }[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.minorDefectOptions = exports.majorDefectOptions = exports.productOptions = exports.productIsOnSaleOptions = exports.discountTypeOptions = exports.salesChannelOptions = exports.unisexJewelry = exports.mensJewelry = exports.jewelry = exports.unisexAccessories = exports.mensAccessories = exports.accessories = exports.unisexBags = exports.mensBags = exports.bags = exports.weightUnits = exports.productWeightRanges = exports.unisexShoes = exports.mensShoes = exports.shoes = exports.unisexClothing = exports.mensClothing = exports.clothing = exports.productCategories = exports.clothingMaterials = exports.shoeSizes = exports.jeanSizes = exports.gender = exports.conditions = exports.colors = exports.brands = exports.sizeCommentOptions = exports.manClothingSizeOptions = exports.womanClothingSizeOptions = exports.clothingSizeOptions = exports.sizeOptions = exports.statusOptions = exports.publishTypeOptions = exports.availableForSaleOptions = void 0;
3
+ exports.sizeCategoryOptions = exports.minorDefectOptions = exports.majorDefectOptions = exports.productOptions = exports.productIsOnSaleOptions = exports.discountTypeOptions = exports.salesChannelOptions = exports.unisexJewelry = exports.mensJewelry = exports.jewelry = exports.unisexAccessories = exports.mensAccessories = exports.accessories = exports.unisexBags = exports.mensBags = exports.bags = exports.weightUnits = exports.productWeightRanges = exports.unisexShoes = exports.mensShoes = exports.shoes = exports.unisexClothing = exports.mensClothing = exports.clothing = exports.productCategories = exports.clothingMaterials = exports.shoeSizes = exports.jeanSizes = exports.gender = exports.conditions = exports.colors = exports.brands = exports.sizeCommentOptions = exports.manClothingSizeOptions = exports.womanClothingSizeOptions = exports.clothingSizeOptions = exports.sizeOptions = exports.statusOptions = exports.publishTypeOptions = exports.availableForSaleOptions = void 0;
4
4
  const product_constants_1 = require("../../constants/product-constants");
5
5
  const lodash_1 = require("lodash");
6
6
  const availableForSaleOptions = [
@@ -34,6 +34,34 @@ const statusOptions = Object.values(product_constants_1.PRODUCT_STATES).map((val
34
34
  value: val,
35
35
  }));
36
36
  exports.statusOptions = statusOptions;
37
+ const sizeCategoryOptions = [
38
+ {
39
+ label: 'Suits & Blazers',
40
+ value: 'Suits & Blazers',
41
+ category: 'clothing',
42
+ },
43
+ {
44
+ label: 'Bottoms',
45
+ value: 'Bottoms',
46
+ category: 'clothing',
47
+ },
48
+ {
49
+ label: 'Shirts',
50
+ value: 'Shirts',
51
+ category: 'clothing',
52
+ },
53
+ {
54
+ label: 'Coats',
55
+ value: 'Coats',
56
+ category: 'clothing',
57
+ },
58
+ {
59
+ label: 'Shoes',
60
+ value: 'Shoes',
61
+ category: 'clothing',
62
+ },
63
+ ];
64
+ exports.sizeCategoryOptions = sizeCategoryOptions;
37
65
  const sizeOptions = [
38
66
  {
39
67
  label: 'No Size',
@@ -44,6 +44,7 @@ class Product extends Base_1.default {
44
44
  jeanSize: (props === null || props === void 0 ? void 0 : props.jeanSize) || '',
45
45
  shoeSize: (props === null || props === void 0 ? void 0 : props.shoeSize) || '',
46
46
  size: (props === null || props === void 0 ? void 0 : props.size) || '',
47
+ sizeCategory: (props === null || props === void 0 ? void 0 : props.sizeCategory) || '',
47
48
  productCategory: (props === null || props === void 0 ? void 0 : props.productCategory) || '',
48
49
  productType: (props === null || props === void 0 ? void 0 : props.productType) || '',
49
50
  productStyle: (props === null || props === void 0 ? void 0 : props.productStyle) || [],
@@ -284,6 +285,7 @@ class Product extends Base_1.default {
284
285
  compareAtPrice: this.utilities.sanitizeNumber(this.attributes.compareAtPrice),
285
286
  costPerItem: this.utilities.sanitizeNumber(this.attributes.costPerItem),
286
287
  priceRange: this.utilities.sanitizeString(this.filterAttributes.priceRange),
288
+ sizeCategory: this.utilities.sanitizeString(this.filterAttributes.sizeCategory),
287
289
  productCategory: this.utilities.sanitizeString(this.filterAttributes.productCategory),
288
290
  productType: this.utilities.sanitizeString(this.filterAttributes.productType),
289
291
  productStyle: this.utilities.sanitzeStringArr(this.filterAttributes.productStyle),
@@ -561,6 +563,12 @@ class Product extends Base_1.default {
561
563
  name: 'priceRange',
562
564
  type: 'string',
563
565
  },
566
+ {
567
+ facet: true,
568
+ optional: true,
569
+ name: 'sizeCategory',
570
+ type: 'string',
571
+ },
564
572
  {
565
573
  facet: true,
566
574
  name: 'productCategory',
@@ -39,6 +39,7 @@ declare type ProductFilterAttributes = {
39
39
  gender: string;
40
40
  materialComposition: MaterialComposition;
41
41
  priceRange: string;
42
+ sizeCategory: string;
42
43
  productCategory: string;
43
44
  productType: string;
44
45
  productStyle: string[];
@@ -169,6 +170,7 @@ declare type ProductFilterAttributesFormFields = {
169
170
  gender: SingleSelectFormField<string>;
170
171
  materialComposition: SingleSelectFormField<MaterialComposition>;
171
172
  priceRange: TextInputFormField<string>;
173
+ sizeCategory: SingleSelectFormField<string>;
172
174
  productCategory: SingleSelectFormField<string>;
173
175
  productType: SingleSelectFormField<string>;
174
176
  productStyle: MultiSelectFormField<string>;
@@ -257,6 +259,7 @@ declare type TypesenseProductObj = {
257
259
  compareAtPrice: number;
258
260
  costPerItem: number;
259
261
  priceRange: string;
262
+ sizeCategory: string;
260
263
  productCategory: string;
261
264
  productType: string;
262
265
  productStyle: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rerobe-js-orm",
3
- "version": "3.0.21",
3
+ "version": "3.0.22",
4
4
  "description": "ReRobe's Javascript ORM Framework",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",