rerobe-js-orm 4.5.9 → 4.6.1

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.
@@ -327,3 +327,10 @@ export namespace PAYOUT_SYSTEM {
327
327
  export { RIBBN_CREDITS_1 as RIBBN_CREDITS };
328
328
  }
329
329
  export const ADMIN_STATES: {};
330
+ export namespace PRODUCT_CLASS_VALUES {
331
+ let UNIQUE: string;
332
+ let MULTIVARIANT: string;
333
+ let TEMPLATE: string;
334
+ let SUPPLY: string;
335
+ let DIGITAL: string;
336
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ADMIN_STATES = exports.PAYOUT_SYSTEM = exports.PAYOUT_METHOD = exports.PUBLISH_TYPE = exports.MEASUREMENT_FIELDS_DICT = exports.MEASUREMENT_CATEGORY = exports.PRODUCT_STATE_LABELS_ADMIN_VIEW = exports.PRODUCT_STATE_LABELS = exports.ADMIN_SIMPLIFIED_STATES = exports.PRODUCT_STATES = exports.SYSTEM_DRIVEN_STATES = exports.ADMIN_ACTION_DRIVEN_STATES = exports.ADMIN_DRIVEN_STATES = exports.SELLER_DRIVEN_STATES = void 0;
3
+ exports.PRODUCT_CLASS_VALUES = exports.ADMIN_STATES = exports.PAYOUT_SYSTEM = exports.PAYOUT_METHOD = exports.PUBLISH_TYPE = exports.MEASUREMENT_FIELDS_DICT = exports.MEASUREMENT_CATEGORY = exports.PRODUCT_STATE_LABELS_ADMIN_VIEW = exports.PRODUCT_STATE_LABELS = exports.ADMIN_SIMPLIFIED_STATES = exports.PRODUCT_STATES = exports.SYSTEM_DRIVEN_STATES = exports.ADMIN_ACTION_DRIVEN_STATES = exports.ADMIN_DRIVEN_STATES = exports.SELLER_DRIVEN_STATES = void 0;
4
4
  exports.SELLER_DRIVEN_STATES = {
5
5
  sellerDonated: 'SELLER_DONATED',
6
6
  sellRequestReview: 'SELL_REQUEST_REVIEW',
@@ -234,3 +234,10 @@ exports.ADMIN_STATES = Object.entries(exports.PRODUCT_STATES)
234
234
  acc[key] = value;
235
235
  return acc;
236
236
  }, {});
237
+ exports.PRODUCT_CLASS_VALUES = {
238
+ UNIQUE: 'UNIQUE',
239
+ MULTIVARIANT: 'MULTIVARIANT',
240
+ TEMPLATE: 'TEMPLATE',
241
+ SUPPLY: 'SUPPLY',
242
+ DIGITAL: 'DIGITAL',
243
+ };
@@ -19,6 +19,7 @@ export default class Product extends Base {
19
19
  }[];
20
20
  }[];
21
21
  descriptionHtml: string;
22
+ vendor: string;
22
23
  tags: (string | null)[];
23
24
  files: {
24
25
  originalSource: string;
@@ -335,7 +335,13 @@ class Product extends Base_1.default {
335
335
  : [];
336
336
  const hasShopifyId = !!this.attributes.shopifyId;
337
337
  const currentStatus = String(this.consignmentAttributes.status || '').toUpperCase();
338
- const statusToInclude = !hasShopifyId || currentStatus.includes('SOLD') ? 'DRAFT' : undefined;
338
+ const isUnique = ![
339
+ product_constants_1.PRODUCT_CLASS_VALUES.MULTIVARIANT,
340
+ product_constants_1.PRODUCT_CLASS_VALUES.TEMPLATE,
341
+ product_constants_1.PRODUCT_CLASS_VALUES.SUPPLY,
342
+ product_constants_1.PRODUCT_CLASS_VALUES.DIGITAL,
343
+ ].includes(String(this.attributes.productClass));
344
+ const statusToInclude = !hasShopifyId || (currentStatus.includes('SOLD') && isUnique) ? 'DRAFT' : undefined;
339
345
  if (variantsFromInventory.length === 0) {
340
346
  // Fallback: single-variant product (legacy behavior)
341
347
  const variant = Object.assign(Object.assign({ id: '' }, baseVariantFields()), { inventoryQuantities: [
@@ -354,7 +360,7 @@ class Product extends Base_1.default {
354
360
  variant.price = this.consignmentAttributes.salePrice;
355
361
  variant.compareAtPrice = this.attributes.price || variant.compareAtPrice;
356
362
  }
357
- return Object.assign(Object.assign({ title }, (statusToInclude ? { status: statusToInclude } : {})), { productOptions: [{ name: 'Variant', values: [{ name: title }] }], descriptionHtml: this.attributes.description, tags,
363
+ return Object.assign(Object.assign({ title }, (statusToInclude ? { status: statusToInclude } : {})), { productOptions: [{ name: 'Variant', values: [{ name: title }] }], descriptionHtml: this.attributes.description, vendor: this.filterAttributes.brand, tags,
358
364
  files, variants: [variant] });
359
365
  }
360
366
  // Multi-variant: derive axes and values from variantInventory
@@ -431,7 +437,7 @@ class Product extends Base_1.default {
431
437
  }
432
438
  return variant;
433
439
  });
434
- return Object.assign(Object.assign({ title }, (statusToInclude ? { status: statusToInclude } : {})), { productOptions, descriptionHtml: this.attributes.description, tags,
440
+ return Object.assign(Object.assign({ title }, (statusToInclude ? { status: statusToInclude } : {})), { productOptions, descriptionHtml: this.attributes.description, vendor: this.filterAttributes.brand, tags,
435
441
  files,
436
442
  variants });
437
443
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rerobe-js-orm",
3
- "version": "4.5.9",
3
+ "version": "4.6.1",
4
4
  "description": "ReRobe's Javascript ORM Framework",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",