@leaddreamer/inventorylogic 0.0.3-beta.83 → 0.0.3-beta.85
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.
- package/README.md +445 -445
- package/business/LineItem/index.js +2 -2
- package/business/Product/{GoogleMerchantAPI.js → googleMerchantAPI.js} +3 -3
- package/business/Product/index.js +7 -7
- package/business/Product/{Squarespace.js → squarespace.js} +10 -10
- package/business/Product/{SquarespaceSample.js → squarespaceSample.js} +1 -1
- package/business/boilerplate/index.js +1 -0
- package/package.json +1 -1
- /package/business/Product/{GoogleMarchantMarkup.js → googleMarchantMarkup.js} +0 -0
- /package/business/Product/{SampleJSON.json → sampleJSON.json} +0 -0
package/README.md
CHANGED
|
@@ -60,10 +60,10 @@ Unified structure as a sub-record of fan, organization, or CityManager accounts<
|
|
|
60
60
|
<dt><a href="#module_GoogleProduct">GoogleProduct</a></dt>
|
|
61
61
|
<dd><p>Typedefs, constants, support functions and database operations related to Products</p>
|
|
62
62
|
</dd>
|
|
63
|
-
<dt><a href="#
|
|
63
|
+
<dt><a href="#module_Product">Product</a></dt>
|
|
64
64
|
<dd><p>Typedefs, constants, support functions and database operations related to Products</p>
|
|
65
65
|
</dd>
|
|
66
|
-
<dt><a href="#
|
|
66
|
+
<dt><a href="#module_SquarespaceProduct">SquarespaceProduct</a></dt>
|
|
67
67
|
<dd><p>Typedefs, constants, support functions and database operations related to Products</p>
|
|
68
68
|
</dd>
|
|
69
69
|
<dt><a href="#module_User">User</a></dt>
|
|
@@ -918,36 +918,26 @@ users
|
|
|
918
918
|
|
|
919
919
|
* [LineItem](#module_LineItem)
|
|
920
920
|
* _static_
|
|
921
|
-
* [.createLineItem](#module_LineItem.createLineItem) ⇒ <code>Promise.LineItem</code>
|
|
922
921
|
* [.deleteLineItem(lineItem, product)](#module_LineItem.deleteLineItem) ⇒ <code>Promise.<void></code>
|
|
923
922
|
* [.deleteLineItemById(lineItem, product)](#module_LineItem.deleteLineItemById) ⇒ <code>Promise.<void></code>
|
|
923
|
+
* [.createLineItem(lineItem, product)](#module_LineItem.createLineItem) ⇒ <code>Promise.LineItem</code>
|
|
924
924
|
* [.knownLineItem(Id, product)](#module_LineItem.knownLineItem) ⇒ <code>Promise.boolean</code>
|
|
925
925
|
* [.fetchLineItems()](#module_LineItem.fetchLineItems) ⇒ <code>Array.LineItem</code>
|
|
926
926
|
* [.fetchProductLineItems(product, stage)](#module_LineItem.fetchProductLineItems) ⇒ <code>Array.LineItem</code>
|
|
927
927
|
* [.paginateProductLineItems(product, stage, limit)](#module_LineItem.paginateProductLineItems) ⇒ <code>PaginatedFetch</code>
|
|
928
928
|
* [.fetchLineItem(lineItemId, product)](#module_LineItem.fetchLineItem) ⇒ <code>Promise.LineItem</code>
|
|
929
929
|
* [.fetchLineItemName(lineItemId, product)](#module_LineItem.fetchLineItemName) ⇒ <code>Promise.string</code>
|
|
930
|
+
* [.lineItem_lineSum(lineItem)](#module_LineItem.lineItem_lineSum) ⇒ <code>number</code>
|
|
930
931
|
* _inner_
|
|
931
932
|
* [~LineItemDefault](#module_LineItem..LineItemDefault) : <code>LineItem</code>
|
|
932
933
|
* [~LineItemData](#module_LineItem..LineItemData) : <code>LineItem</code>
|
|
933
934
|
* [~LineItemDefaultForm](#module_LineItem..LineItemDefaultForm) : <code>LineItem</code>
|
|
934
935
|
* [~updateLineItem(lineItem, product)](#module_LineItem..updateLineItem) ⇒ <code>promise.LineItem</code>
|
|
935
936
|
* [~summarizeLineItem(lineItem)](#module_LineItem..summarizeLineItem) ⇒ <code>string</code>
|
|
936
|
-
* [~lineItem_lineSum(lineItem)](#module_LineItem..lineItem_lineSum) ⇒ <code>number</code>
|
|
937
937
|
* [~UpdateChange(prev, value, itemFor, fullChoiceObject)](#module_LineItem..UpdateChange) ⇒ <code>object</code>
|
|
938
938
|
* [~LineItem](#module_LineItem..LineItem) : <code>object</code>
|
|
939
939
|
* [~PaginatedFetch](#module_LineItem..PaginatedFetch) : <code>object</code>
|
|
940
940
|
|
|
941
|
-
<a name="module_LineItem.createLineItem"></a>
|
|
942
|
-
|
|
943
|
-
### LineItem.createLineItem ⇒ <code>Promise.LineItem</code>
|
|
944
|
-
**Kind**: static constant of [<code>LineItem</code>](#module_LineItem)
|
|
945
|
-
|
|
946
|
-
| Param | Type | Description |
|
|
947
|
-
| --- | --- | --- |
|
|
948
|
-
| lineItem | <code>LineItem</code> | minimal record of user account |
|
|
949
|
-
| product | <code>Product</code> | minimal record of product this lineItem belongs to |
|
|
950
|
-
|
|
951
941
|
<a name="module_LineItem.deleteLineItem"></a>
|
|
952
942
|
|
|
953
943
|
### LineItem.deleteLineItem(lineItem, product) ⇒ <code>Promise.<void></code>
|
|
@@ -975,6 +965,16 @@ from database
|
|
|
975
965
|
| product | <code>Product</code> | minimal record of product this lineItem belongs to |
|
|
976
966
|
| product.refPath | <code>string</code> | required as a minimum |
|
|
977
967
|
|
|
968
|
+
<a name="module_LineItem.createLineItem"></a>
|
|
969
|
+
|
|
970
|
+
### LineItem.createLineItem(lineItem, product) ⇒ <code>Promise.LineItem</code>
|
|
971
|
+
**Kind**: static method of [<code>LineItem</code>](#module_LineItem)
|
|
972
|
+
|
|
973
|
+
| Param | Type | Description |
|
|
974
|
+
| --- | --- | --- |
|
|
975
|
+
| lineItem | <code>LineItem</code> | minimal record of user account |
|
|
976
|
+
| product | <code>Product</code> | minimal record of product this lineItem belongs to |
|
|
977
|
+
|
|
978
978
|
<a name="module_LineItem.knownLineItem"></a>
|
|
979
979
|
|
|
980
980
|
### LineItem.knownLineItem(Id, product) ⇒ <code>Promise.boolean</code>
|
|
@@ -1046,6 +1046,19 @@ Fetches and returns the summarized name from a LineItem record
|
|
|
1046
1046
|
| lineItemId | <code>string</code> | |
|
|
1047
1047
|
| product | <code>Product</code> | minimal record of product this lineItem belongs to |
|
|
1048
1048
|
|
|
1049
|
+
<a name="module_LineItem.lineItem_lineSum"></a>
|
|
1050
|
+
|
|
1051
|
+
### LineItem.lineItem\_lineSum(lineItem) ⇒ <code>number</code>
|
|
1052
|
+
Calculates the lineSum (total) for a lineItem
|
|
1053
|
+
|
|
1054
|
+
**Kind**: static method of [<code>LineItem</code>](#module_LineItem)
|
|
1055
|
+
|
|
1056
|
+
| Param | Type |
|
|
1057
|
+
| --- | --- |
|
|
1058
|
+
| lineItem | <code>object</code> |
|
|
1059
|
+
| lineItem.rate | <code>number</code> |
|
|
1060
|
+
| lineItem.count | <code>number</code> |
|
|
1061
|
+
|
|
1049
1062
|
<a name="module_LineItem..LineItemDefault"></a>
|
|
1050
1063
|
|
|
1051
1064
|
### LineItem~LineItemDefault : <code>LineItem</code>
|
|
@@ -1095,19 +1108,6 @@ Returns a standardized formatted name string
|
|
|
1095
1108
|
| --- | --- |
|
|
1096
1109
|
| lineItem | <code>LineItem</code> |
|
|
1097
1110
|
|
|
1098
|
-
<a name="module_LineItem..lineItem_lineSum"></a>
|
|
1099
|
-
|
|
1100
|
-
### LineItem~lineItem\_lineSum(lineItem) ⇒ <code>number</code>
|
|
1101
|
-
Calculates the lineSum (total) for a lineItem
|
|
1102
|
-
|
|
1103
|
-
**Kind**: inner method of [<code>LineItem</code>](#module_LineItem)
|
|
1104
|
-
|
|
1105
|
-
| Param | Type |
|
|
1106
|
-
| --- | --- |
|
|
1107
|
-
| lineItem | <code>object</code> |
|
|
1108
|
-
| lineItem.rate | <code>number</code> |
|
|
1109
|
-
| lineItem.count | <code>number</code> |
|
|
1110
|
-
|
|
1111
1111
|
<a name="module_LineItem..UpdateChange"></a>
|
|
1112
1112
|
|
|
1113
1113
|
### LineItem~UpdateChange(prev, value, itemFor, fullChoiceObject) ⇒ <code>object</code>
|
|
@@ -1839,9 +1839,9 @@ Typedefs, constants, support functions and database operations related to Produc
|
|
|
1839
1839
|
|
|
1840
1840
|
* [GoogleProduct](#module_GoogleProduct)
|
|
1841
1841
|
* _static_
|
|
1842
|
-
* [.
|
|
1842
|
+
* [.googleAPIProductMap](#module_GoogleProduct.googleAPIProductMap) : <code>GoogleProductAPI</code>
|
|
1843
1843
|
* _inner_
|
|
1844
|
-
* [~
|
|
1844
|
+
* [~googleProductAPIField(field, InventoryProduct)](#module_GoogleProduct..googleProductAPIField)
|
|
1845
1845
|
* [~SKU](#module_GoogleProduct..SKU) : <code>string</code>
|
|
1846
1846
|
* [~Name](#module_GoogleProduct..Name) : <code>string</code>
|
|
1847
1847
|
* [~ImageObject](#module_GoogleProduct..ImageObject) : <code>object</code>
|
|
@@ -1866,13 +1866,13 @@ Typedefs, constants, support functions and database operations related to Produc
|
|
|
1866
1866
|
* [~QAObject](#module_GoogleProduct..QAObject) : <code>object</code>
|
|
1867
1867
|
* [~GoogleProductAPI](#module_GoogleProduct..GoogleProductAPI) : <code>object</code>
|
|
1868
1868
|
|
|
1869
|
-
<a name="module_GoogleProduct.
|
|
1869
|
+
<a name="module_GoogleProduct.googleAPIProductMap"></a>
|
|
1870
1870
|
|
|
1871
|
-
### GoogleProduct.
|
|
1871
|
+
### GoogleProduct.googleAPIProductMap : <code>GoogleProductAPI</code>
|
|
1872
1872
|
**Kind**: static constant of [<code>GoogleProduct</code>](#module_GoogleProduct)
|
|
1873
|
-
<a name="module_GoogleProduct..
|
|
1873
|
+
<a name="module_GoogleProduct..googleProductAPIField"></a>
|
|
1874
1874
|
|
|
1875
|
-
### GoogleProduct~
|
|
1875
|
+
### GoogleProduct~googleProductAPIField(field, InventoryProduct)
|
|
1876
1876
|
**Kind**: inner method of [<code>GoogleProduct</code>](#module_GoogleProduct)
|
|
1877
1877
|
|
|
1878
1878
|
| Param | Type |
|
|
@@ -2235,9 +2235,9 @@ Typedefs, constants, support functions and database operations related to Produc
|
|
|
2235
2235
|
|
|
2236
2236
|
* [GoogleProduct](#module_GoogleProduct)
|
|
2237
2237
|
* _static_
|
|
2238
|
-
* [.
|
|
2238
|
+
* [.googleAPIProductMap](#module_GoogleProduct.googleAPIProductMap) : <code>GoogleProductAPI</code>
|
|
2239
2239
|
* _inner_
|
|
2240
|
-
* [~
|
|
2240
|
+
* [~googleProductAPIField(field, InventoryProduct)](#module_GoogleProduct..googleProductAPIField)
|
|
2241
2241
|
* [~SKU](#module_GoogleProduct..SKU) : <code>string</code>
|
|
2242
2242
|
* [~Name](#module_GoogleProduct..Name) : <code>string</code>
|
|
2243
2243
|
* [~ImageObject](#module_GoogleProduct..ImageObject) : <code>object</code>
|
|
@@ -2262,13 +2262,13 @@ Typedefs, constants, support functions and database operations related to Produc
|
|
|
2262
2262
|
* [~QAObject](#module_GoogleProduct..QAObject) : <code>object</code>
|
|
2263
2263
|
* [~GoogleProductAPI](#module_GoogleProduct..GoogleProductAPI) : <code>object</code>
|
|
2264
2264
|
|
|
2265
|
-
<a name="module_GoogleProduct.
|
|
2265
|
+
<a name="module_GoogleProduct.googleAPIProductMap"></a>
|
|
2266
2266
|
|
|
2267
|
-
### GoogleProduct.
|
|
2267
|
+
### GoogleProduct.googleAPIProductMap : <code>GoogleProductAPI</code>
|
|
2268
2268
|
**Kind**: static constant of [<code>GoogleProduct</code>](#module_GoogleProduct)
|
|
2269
|
-
<a name="module_GoogleProduct..
|
|
2269
|
+
<a name="module_GoogleProduct..googleProductAPIField"></a>
|
|
2270
2270
|
|
|
2271
|
-
### GoogleProduct~
|
|
2271
|
+
### GoogleProduct~googleProductAPIField(field, InventoryProduct)
|
|
2272
2272
|
**Kind**: inner method of [<code>GoogleProduct</code>](#module_GoogleProduct)
|
|
2273
2273
|
|
|
2274
2274
|
| Param | Type |
|
|
@@ -2623,68 +2623,157 @@ a Google Product record
|
|
|
2623
2623
|
| shipping_width | <code>Text</code> | The width of the product used to calculate the shipping cost by dimensional weight |
|
|
2624
2624
|
| shipping_height | <code>Text</code> | The height of the product used to calculate the shipping cost by dimensional weight |
|
|
2625
2625
|
|
|
2626
|
-
<a name="
|
|
2626
|
+
<a name="module_Product"></a>
|
|
2627
2627
|
|
|
2628
|
-
##
|
|
2628
|
+
## Product
|
|
2629
2629
|
Typedefs, constants, support functions and database operations related to Products
|
|
2630
2630
|
|
|
2631
2631
|
|
|
2632
|
-
* [
|
|
2633
|
-
*
|
|
2634
|
-
|
|
2635
|
-
|
|
2636
|
-
*
|
|
2637
|
-
|
|
2638
|
-
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
|
|
2643
|
-
|
|
2644
|
-
|
|
2645
|
-
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2632
|
+
* [Product](#module_Product)
|
|
2633
|
+
* _static_
|
|
2634
|
+
* [.createProduct(user)](#module_Product.createProduct) ⇒ <code>Promise.<void></code>
|
|
2635
|
+
* [.makeProductFromChild(child)](#module_Product.makeProductFromChild) ⇒ <code>Record</code>
|
|
2636
|
+
* _inner_
|
|
2637
|
+
* [~productDefault](#module_Product..productDefault) : <code>Product</code>
|
|
2638
|
+
* [~productDataForm](#module_Product..productDataForm) : <code>Product</code>
|
|
2639
|
+
* [~productDefaultForm](#module_Product..productDefaultForm) : <code>Product</code>
|
|
2640
|
+
* [~updateProduct(product, user)](#module_Product..updateProduct) ⇒ <code>promise.LineItem</code>
|
|
2641
|
+
* [~summarizeProduct(product)](#module_Product..summarizeProduct) ⇒ <code>string</code>
|
|
2642
|
+
* [~Recipe_Data](#module_Product..Recipe_Data) : <code>object</code>
|
|
2643
|
+
* [~AttributeList](#module_Product..AttributeList) : <code>Array.String</code>
|
|
2644
|
+
* [~AttributeValue](#module_Product..AttributeValue) : <code>object</code>
|
|
2645
|
+
* [~ProductImage](#module_Product..ProductImage) : <code>object</code>
|
|
2646
|
+
* [~BrandObject](#module_Product..BrandObject) : <code>object</code>
|
|
2647
|
+
* [~CurrencyDescription](#module_Product..CurrencyDescription) : <code>object</code>
|
|
2648
|
+
* [~MonetaryValue](#module_Product..MonetaryValue) : <code>object</code>
|
|
2649
|
+
* [~FullProductPricing](#module_Product..FullProductPricing) : <code>object</code>
|
|
2650
|
+
* [~ProductDimensions](#module_Product..ProductDimensions) : <code>object</code>
|
|
2651
|
+
* [~PriceObject](#module_Product..PriceObject) : <code>object</code>
|
|
2652
|
+
* [~ProductWeight](#module_Product..ProductWeight) : <code>object</code>
|
|
2653
|
+
* [~ProductMeasurements](#module_Product..ProductMeasurements) : <code>object</code>
|
|
2654
|
+
* [~QuantitativeValue](#module_Product..QuantitativeValue) : <code>object</code>
|
|
2655
|
+
* [~SizeSpecification](#module_Product..SizeSpecification) : <code>object</code>
|
|
2656
|
+
* [~ProductStock](#module_Product..ProductStock) : <code>object</code>
|
|
2657
|
+
* [~MetaData](#module_Product..MetaData) : <code>object</code>
|
|
2658
|
+
* [~GenderEnum](#module_Product..GenderEnum) : <code>"newborn"</code> \| <code>"infant"</code> \| <code>"toddler"</code> \| <code>"kids"</code> \| <code>"adult"</code>
|
|
2659
|
+
* [~Demographics](#module_Product..Demographics) : <code>object</code>
|
|
2660
|
+
* [~PlatformIDs](#module_Product..PlatformIDs) : <code>object</code>
|
|
2661
|
+
* [~SquarespaceDataObject](#module_Product..SquarespaceDataObject) : <code>object</code>
|
|
2662
|
+
* [~PlatformData](#module_Product..PlatformData) : <code>object</code>
|
|
2663
|
+
* [~AttributeValueObject](#module_Product..AttributeValueObject) : <code>object</code>
|
|
2664
|
+
* [~VideoImage](#module_Product..VideoImage) : <code>object</code>
|
|
2665
|
+
* [~VirtualModel](#module_Product..VirtualModel) : <code>object</code>
|
|
2666
|
+
* [~MediaObject](#module_Product..MediaObject) : <code>object</code>
|
|
2667
|
+
* [~PhysicalProductVariant](#module_Product..PhysicalProductVariant) : <code>object</code>
|
|
2668
|
+
* [~Product](#module_Product..Product) : <code>object</code>
|
|
2650
2669
|
|
|
2651
|
-
<a name="
|
|
2670
|
+
<a name="module_Product.createProduct"></a>
|
|
2652
2671
|
|
|
2653
|
-
###
|
|
2654
|
-
|
|
2672
|
+
### Product.createProduct(user) ⇒ <code>Promise.<void></code>
|
|
2673
|
+
Creates a new Blank Product
|
|
2655
2674
|
|
|
2656
|
-
**Kind**:
|
|
2675
|
+
**Kind**: static method of [<code>Product</code>](#module_Product)
|
|
2676
|
+
|
|
2677
|
+
| Param | Type | Description |
|
|
2678
|
+
| --- | --- | --- |
|
|
2679
|
+
| user | <code>UserObject</code> | minimal record of user this commodity belongs to (if any) |
|
|
2680
|
+
|
|
2681
|
+
<a name="module_Product.makeProductFromChild"></a>
|
|
2682
|
+
|
|
2683
|
+
### Product.makeProductFromChild(child) ⇒ <code>Record</code>
|
|
2684
|
+
**Kind**: static method of [<code>Product</code>](#module_Product)
|
|
2685
|
+
|
|
2686
|
+
| Param | Type | Description |
|
|
2687
|
+
| --- | --- | --- |
|
|
2688
|
+
| child | <code>Record</code> | a record assumed to be a leaf/child |
|
|
2689
|
+
|
|
2690
|
+
<a name="module_Product..productDefault"></a>
|
|
2691
|
+
|
|
2692
|
+
### Product~productDefault : <code>Product</code>
|
|
2693
|
+
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2694
|
+
**Default**: <code>{"platformIds":"","platformData":"","name":null,"short_name":null,"description":null,"short_description":null,"google_product_category":null,"product_type":null,"brand":"","demographics":"","attributes":"","recipe":"","mediaObject":"","mobileInfo":null,"isVisible":true,"type":"PHYSICAL","seoOptions":"","tags":"","materials":"","patterns":"","URL":null,"urlSlug":null,"variantAttributes":"","variants":""}</code>
|
|
2695
|
+
**Read only**: true
|
|
2696
|
+
<a name="module_Product..productDataForm"></a>
|
|
2697
|
+
|
|
2698
|
+
### Product~productDataForm : <code>Product</code>
|
|
2699
|
+
Form to create test data
|
|
2700
|
+
|
|
2701
|
+
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2702
|
+
**Default**: <code>{"Id":"","refPath":null,"name":"","description":"","sku":"","markups":"","projectQ":""}</code>
|
|
2703
|
+
**Read only**: true
|
|
2704
|
+
<a name="module_Product..productDefaultForm"></a>
|
|
2705
|
+
|
|
2706
|
+
### Product~productDefaultForm : <code>Product</code>
|
|
2707
|
+
Form to enter MINIMAL product data to start creation
|
|
2708
|
+
|
|
2709
|
+
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2710
|
+
**Default**: <code>{"Id":"","refPath":"","name":"text","description":"textarea","sku":"text"}</code>
|
|
2711
|
+
**Read only**: true
|
|
2712
|
+
<a name="module_Product..updateProduct"></a>
|
|
2713
|
+
|
|
2714
|
+
### Product~updateProduct(product, user) ⇒ <code>promise.LineItem</code>
|
|
2715
|
+
writes record back to database. Assumes only Id is valid
|
|
2716
|
+
|
|
2717
|
+
**Kind**: inner method of [<code>Product</code>](#module_Product)
|
|
2718
|
+
**Returns**: <code>promise.LineItem</code> - a copy of the data written
|
|
2719
|
+
|
|
2720
|
+
| Param | Type | Default | Description |
|
|
2721
|
+
| --- | --- | --- | --- |
|
|
2722
|
+
| product | <code>Product</code> | | a partially-populated product record for updates |
|
|
2723
|
+
| user | <code>User</code> | <code></code> | minimal record of user this product belongs to |
|
|
2724
|
+
|
|
2725
|
+
<a name="module_Product..summarizeProduct"></a>
|
|
2726
|
+
|
|
2727
|
+
### Product~summarizeProduct(product) ⇒ <code>string</code>
|
|
2728
|
+
Returns a standardized formatted name string
|
|
2729
|
+
|
|
2730
|
+
**Kind**: inner method of [<code>Product</code>](#module_Product)
|
|
2731
|
+
**Returns**: <code>string</code> - formatted name string
|
|
2657
2732
|
|
|
2658
2733
|
| Param | Type |
|
|
2659
2734
|
| --- | --- |
|
|
2660
|
-
|
|
|
2661
|
-
| labels | <code>Array.string</code> |
|
|
2735
|
+
| product | <code>Unit</code> |
|
|
2662
2736
|
|
|
2663
|
-
<a name="
|
|
2737
|
+
<a name="module_Product..Recipe_Data"></a>
|
|
2664
2738
|
|
|
2665
|
-
###
|
|
2739
|
+
### Product~Recipe\_Data : <code>object</code>
|
|
2740
|
+
"recipe" related values - build-stage markups, product/project Flag, created/modified dates
|
|
2741
|
+
|
|
2742
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2743
|
+
**Properties**
|
|
2744
|
+
|
|
2745
|
+
| Name | Type | Description |
|
|
2746
|
+
| --- | --- | --- |
|
|
2747
|
+
| markups | <code>module:Markups~Stage</code> | |
|
|
2748
|
+
| projectQ | <code>boolean</code> | flag for product/project |
|
|
2749
|
+
| created | <code>dateTime</code> | |
|
|
2750
|
+
| modified | <code>dateTime</code> | |
|
|
2751
|
+
|
|
2752
|
+
<a name="module_Product..AttributeList"></a>
|
|
2753
|
+
|
|
2754
|
+
### Product~AttributeList : <code>Array.String</code>
|
|
2666
2755
|
A list of attributes for a product
|
|
2667
2756
|
|
|
2668
|
-
**Kind**: inner typedef of [<code>
|
|
2669
|
-
<a name="
|
|
2757
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2758
|
+
<a name="module_Product..AttributeValue"></a>
|
|
2670
2759
|
|
|
2671
|
-
###
|
|
2760
|
+
### Product~AttributeValue : <code>object</code>
|
|
2672
2761
|
Array of attribute name/value pairs
|
|
2673
2762
|
|
|
2674
|
-
**Kind**: inner typedef of [<code>
|
|
2763
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2675
2764
|
**Properties**
|
|
2676
2765
|
|
|
2677
2766
|
| Name | Type | Description |
|
|
2678
2767
|
| --- | --- | --- |
|
|
2679
|
-
|
|
|
2768
|
+
| attibuteName | <code>string</code> | attribute name from attribute list |
|
|
2680
2769
|
| value | <code>string</code> | value for the particular attribute |
|
|
2681
2770
|
|
|
2682
|
-
<a name="
|
|
2771
|
+
<a name="module_Product..ProductImage"></a>
|
|
2683
2772
|
|
|
2684
|
-
###
|
|
2773
|
+
### Product~ProductImage : <code>object</code>
|
|
2685
2774
|
Image Descriptor
|
|
2686
2775
|
|
|
2687
|
-
**Kind**: inner typedef of [<code>
|
|
2776
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2688
2777
|
**Properties**
|
|
2689
2778
|
|
|
2690
2779
|
| Name | Type | Description |
|
|
@@ -2694,14 +2783,33 @@ Image Descriptor
|
|
|
2694
2783
|
| id | <code>string</code> | unique id for this productImage |
|
|
2695
2784
|
| orderIndex | <code>integer</code> | Position of the image in the product's image list. |
|
|
2696
2785
|
| originalSize | <code>object</code> | Image size when first uploaded. |
|
|
2697
|
-
|
|
|
2786
|
+
| seoOptions | <code>MetaData</code> | |
|
|
2787
|
+
| URL | <code>string</code> | Absolute URL of the hosted image. |
|
|
2698
2788
|
|
|
2699
|
-
<a name="
|
|
2789
|
+
<a name="module_Product..BrandObject"></a>
|
|
2700
2790
|
|
|
2701
|
-
###
|
|
2791
|
+
### Product~BrandObject : <code>object</code>
|
|
2792
|
+
a Brand Object
|
|
2793
|
+
|
|
2794
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2795
|
+
**Properties**
|
|
2796
|
+
|
|
2797
|
+
| Name | Type | Description |
|
|
2798
|
+
| --- | --- | --- |
|
|
2799
|
+
| Id | <code>string</code> | Database Id of document (redundant for convenience) |
|
|
2800
|
+
| refPath | <code>string</code> | if from database, full path to document |
|
|
2801
|
+
| aggregateRating | <code>AggregateRatingsValue</code> | |
|
|
2802
|
+
| logo | <code>URL</code> \| <code>ImageObject</code> | |
|
|
2803
|
+
| review | <code>ReviewObject</code> | A review of the item. Supersedes reviews |
|
|
2804
|
+
| slogan | <code>text</code> | A slogan or motto associated with the item. |
|
|
2805
|
+
| name | <code>Name</code> | The name of the brand. |
|
|
2806
|
+
|
|
2807
|
+
<a name="module_Product..CurrencyDescription"></a>
|
|
2808
|
+
|
|
2809
|
+
### Product~CurrencyDescription : <code>object</code>
|
|
2702
2810
|
Currency Description ISO 4217 currency code
|
|
2703
2811
|
|
|
2704
|
-
**Kind**: inner typedef of [<code>
|
|
2812
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2705
2813
|
**Properties**
|
|
2706
2814
|
|
|
2707
2815
|
| Name | Type |
|
|
@@ -2712,25 +2820,26 @@ Currency Description ISO 4217 currency code
|
|
|
2712
2820
|
| numericCodeAsString | <code>string</code> |
|
|
2713
2821
|
| symbol | <code>string</code> |
|
|
2714
2822
|
|
|
2715
|
-
<a name="
|
|
2823
|
+
<a name="module_Product..MonetaryValue"></a>
|
|
2716
2824
|
|
|
2717
|
-
###
|
|
2825
|
+
### Product~MonetaryValue : <code>object</code>
|
|
2718
2826
|
Monetary Value Specification
|
|
2719
2827
|
|
|
2720
|
-
**Kind**: inner typedef of [<code>
|
|
2828
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2721
2829
|
**Properties**
|
|
2722
2830
|
|
|
2723
2831
|
| Name | Type | Description |
|
|
2724
2832
|
| --- | --- | --- |
|
|
2725
|
-
|
|
|
2833
|
+
| currencyDescription | <code>CurrencyDescription</code> | |
|
|
2726
2834
|
| value | <code>decimal</code> | Decimal monetary value |
|
|
2835
|
+
| effectiveDate | <code>Date</code> | |
|
|
2727
2836
|
|
|
2728
|
-
<a name="
|
|
2837
|
+
<a name="module_Product..FullProductPricing"></a>
|
|
2729
2838
|
|
|
2730
|
-
###
|
|
2839
|
+
### Product~FullProductPricing : <code>object</code>
|
|
2731
2840
|
Pricing Object
|
|
2732
2841
|
|
|
2733
|
-
**Kind**: inner typedef of [<code>
|
|
2842
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2734
2843
|
**Properties**
|
|
2735
2844
|
|
|
2736
2845
|
| Name | Type |
|
|
@@ -2739,368 +2848,12 @@ Pricing Object
|
|
|
2739
2848
|
| onSale | <code>boolean</code> |
|
|
2740
2849
|
| salePrice | <code>MonetaryValue</code> |
|
|
2741
2850
|
|
|
2742
|
-
<a name="
|
|
2743
|
-
|
|
2744
|
-
### SquarespaceProduct~ProductDimensionsUnit : <code>object</code>
|
|
2745
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2746
|
-
**Properties**
|
|
2747
|
-
|
|
2748
|
-
| Name | Type |
|
|
2749
|
-
| --- | --- |
|
|
2750
|
-
| name | <code>Text</code> |
|
|
2751
|
-
| value | <code>Text</code> |
|
|
2752
|
-
|
|
2753
|
-
<a name="module_SquarespaceProduct..ProductDimensions"></a>
|
|
2851
|
+
<a name="module_Product..ProductDimensions"></a>
|
|
2754
2852
|
|
|
2755
|
-
###
|
|
2853
|
+
### Product~ProductDimensions : <code>object</code>
|
|
2756
2854
|
Dimensions Object
|
|
2757
2855
|
|
|
2758
|
-
**Kind**: inner typedef of [<code>
|
|
2759
|
-
**Properties**
|
|
2760
|
-
|
|
2761
|
-
| Name | Type |
|
|
2762
|
-
| --- | --- |
|
|
2763
|
-
| height | <code>float</code> |
|
|
2764
|
-
| width | <code>float</code> |
|
|
2765
|
-
| length | <code>float</code> |
|
|
2766
|
-
| unit | <code>ProductDimensionsUnit</code> |
|
|
2767
|
-
|
|
2768
|
-
<a name="module_SquarespaceProduct..ProductWeightUnitEnum"></a>
|
|
2769
|
-
|
|
2770
|
-
### SquarespaceProduct~ProductWeightUnitEnum : <code>"KILOGRAM"</code> \| <code>"POUND"</code>
|
|
2771
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2772
|
-
<a name="module_SquarespaceProduct..ProductWeight"></a>
|
|
2773
|
-
|
|
2774
|
-
### SquarespaceProduct~ProductWeight : <code>object</code>
|
|
2775
|
-
Weight Object
|
|
2776
|
-
|
|
2777
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2778
|
-
**Properties**
|
|
2779
|
-
|
|
2780
|
-
| Name | Type |
|
|
2781
|
-
| --- | --- |
|
|
2782
|
-
| unit | <code>"KILOGRAM"</code> \| <code>"POUND"</code> |
|
|
2783
|
-
| value | <code>float</code> |
|
|
2784
|
-
|
|
2785
|
-
<a name="module_SquarespaceProduct..ProductMeasurements"></a>
|
|
2786
|
-
|
|
2787
|
-
### SquarespaceProduct~ProductMeasurements : <code>object</code>
|
|
2788
|
-
Measurements of the variant when it's shipped. Present for PHYSICAL products only.
|
|
2789
|
-
|
|
2790
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2791
|
-
**Properties**
|
|
2792
|
-
|
|
2793
|
-
| Name | Type |
|
|
2794
|
-
| --- | --- |
|
|
2795
|
-
| dimensions | <code>ProductDimensions</code> |
|
|
2796
|
-
| weight | <code>ProductWeight</code> |
|
|
2797
|
-
|
|
2798
|
-
<a name="module_SquarespaceProduct..ProductStock"></a>
|
|
2799
|
-
|
|
2800
|
-
### SquarespaceProduct~ProductStock : <code>object</code>
|
|
2801
|
-
Available stock for the variant. Present for PHYSICAL products only.
|
|
2802
|
-
|
|
2803
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2804
|
-
**Properties**
|
|
2805
|
-
|
|
2806
|
-
| Name | Type |
|
|
2807
|
-
| --- | --- |
|
|
2808
|
-
| quantity | <code>integer</code> |
|
|
2809
|
-
| unlimited | <code>boolean</code> |
|
|
2810
|
-
|
|
2811
|
-
<a name="module_SquarespaceProduct..MetaData"></a>
|
|
2812
|
-
|
|
2813
|
-
### SquarespaceProduct~MetaData : <code>object</code>
|
|
2814
|
-
Meta Information for SEO
|
|
2815
|
-
|
|
2816
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2817
|
-
**Properties**
|
|
2818
|
-
|
|
2819
|
-
| Name | Type |
|
|
2820
|
-
| --- | --- |
|
|
2821
|
-
| title | <code>string</code> |
|
|
2822
|
-
| description | <code>string</code> |
|
|
2823
|
-
|
|
2824
|
-
<a name="module_SquarespaceProduct..ProductTypeV2Enum"></a>
|
|
2825
|
-
|
|
2826
|
-
### SquarespaceProduct~ProductTypeV2Enum : <code>"PHYSICAL"</code> \| <code>"SERVICE"</code> \| <code>"GIFT\_CARD"</code> \| <code>"DIGITAL"</code>
|
|
2827
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2828
|
-
<a name="module_SquarespaceProduct..PhysicalProductVariant"></a>
|
|
2829
|
-
|
|
2830
|
-
### SquarespaceProduct~PhysicalProductVariant : <code>object</code>
|
|
2831
|
-
variant record (including inventory and pricing)
|
|
2832
|
-
|
|
2833
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2834
|
-
**Properties**
|
|
2835
|
-
|
|
2836
|
-
| Name | Type | Description |
|
|
2837
|
-
| --- | --- | --- |
|
|
2838
|
-
| attributes | <code>Array.AttributeValue</code> | array of attribute/value pairs for a variant |
|
|
2839
|
-
| gtin | <code>string</code> | Global Trade Item Number |
|
|
2840
|
-
| id | <code>string</code> | unique ID for product variant |
|
|
2841
|
-
| image | <code>ProductImage</code> | Image associated with this variant |
|
|
2842
|
-
| mpn | <code>string</code> | manufacturer part number |
|
|
2843
|
-
| shippingMeasurements | <code>ProductMeasurements</code> | |
|
|
2844
|
-
| sku | <code>string</code> | |
|
|
2845
|
-
| stock | <code>ProductStock</code> | |
|
|
2846
|
-
|
|
2847
|
-
<a name="module_SquarespaceProduct..PhysicalProduct"></a>
|
|
2848
|
-
|
|
2849
|
-
### SquarespaceProduct~PhysicalProduct : <code>object</code>
|
|
2850
|
-
a Square product record
|
|
2851
|
-
|
|
2852
|
-
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
2853
|
-
**Properties**
|
|
2854
|
-
|
|
2855
|
-
| Name | Type | Description |
|
|
2856
|
-
| --- | --- | --- |
|
|
2857
|
-
| createdOn | <code>dateTime</code> | |
|
|
2858
|
-
| id | <code>string</code> | Id of document (redundant for convenience) |
|
|
2859
|
-
| modifiedOn | <code>dateTime</code> | |
|
|
2860
|
-
| storePageId | <code>string</code> | |
|
|
2861
|
-
| type | <code>"PHYSICAL"</code> \| <code>"SERVICE"</code> \| <code>"GIFT\_CARD"</code> \| <code>"DIGITAL"</code> | |
|
|
2862
|
-
| description | <code>string</code> | Basic description of the product |
|
|
2863
|
-
| images | <code>Array.ProductImage</code> | Image associated with this variant |
|
|
2864
|
-
| isVisible | <code>boolean</code> | |
|
|
2865
|
-
| name | <code>string</code> | name for the Product |
|
|
2866
|
-
| seoOptions | <code>MetaData</code> | |
|
|
2867
|
-
| tags | <code>Array.string</code> | |
|
|
2868
|
-
| URL | <code>string</code> | |
|
|
2869
|
-
| urlSlug | <code>string</code> | |
|
|
2870
|
-
| variantAttributes | <code>Array.string</code> | |
|
|
2871
|
-
| variants | <code>Array.PhysicalProductVariant</code> | |
|
|
2872
|
-
|
|
2873
|
-
<a name="module_Product"></a>
|
|
2874
|
-
|
|
2875
|
-
## Product
|
|
2876
|
-
Typedefs, constants, support functions and database operations related to Products
|
|
2877
|
-
|
|
2878
|
-
|
|
2879
|
-
* [Product](#module_Product)
|
|
2880
|
-
* _static_
|
|
2881
|
-
* [.createProduct(user)](#module_Product.createProduct) ⇒ <code>Promise.<void></code>
|
|
2882
|
-
* [.makeProductFromChild(child)](#module_Product.makeProductFromChild) ⇒ <code>Record</code>
|
|
2883
|
-
* _inner_
|
|
2884
|
-
* [~ProductDefault](#module_Product..ProductDefault) : <code>Product</code>
|
|
2885
|
-
* [~ProductDataForm](#module_Product..ProductDataForm) : <code>Product</code>
|
|
2886
|
-
* [~ProductDefaultForm](#module_Product..ProductDefaultForm) : <code>Product</code>
|
|
2887
|
-
* [~updateProduct(product, user)](#module_Product..updateProduct) ⇒ <code>promise.LineItem</code>
|
|
2888
|
-
* [~summarizeProduct(product)](#module_Product..summarizeProduct) ⇒ <code>string</code>
|
|
2889
|
-
* [~Recipe_Data](#module_Product..Recipe_Data) : <code>object</code>
|
|
2890
|
-
* [~AttributeList](#module_Product..AttributeList) : <code>Array.String</code>
|
|
2891
|
-
* [~AttributeValue](#module_Product..AttributeValue) : <code>object</code>
|
|
2892
|
-
* [~ProductImage](#module_Product..ProductImage) : <code>object</code>
|
|
2893
|
-
* [~BrandObject](#module_Product..BrandObject) : <code>object</code>
|
|
2894
|
-
* [~CurrencyDescription](#module_Product..CurrencyDescription) : <code>object</code>
|
|
2895
|
-
* [~MonetaryValue](#module_Product..MonetaryValue) : <code>object</code>
|
|
2896
|
-
* [~FullProductPricing](#module_Product..FullProductPricing) : <code>object</code>
|
|
2897
|
-
* [~ProductDimensions](#module_Product..ProductDimensions) : <code>object</code>
|
|
2898
|
-
* [~PriceObject](#module_Product..PriceObject) : <code>object</code>
|
|
2899
|
-
* [~ProductWeight](#module_Product..ProductWeight) : <code>object</code>
|
|
2900
|
-
* [~ProductMeasurements](#module_Product..ProductMeasurements) : <code>object</code>
|
|
2901
|
-
* [~QuantitativeValue](#module_Product..QuantitativeValue) : <code>object</code>
|
|
2902
|
-
* [~SizeSpecification](#module_Product..SizeSpecification) : <code>object</code>
|
|
2903
|
-
* [~ProductStock](#module_Product..ProductStock) : <code>object</code>
|
|
2904
|
-
* [~MetaData](#module_Product..MetaData) : <code>object</code>
|
|
2905
|
-
* [~GenderEnum](#module_Product..GenderEnum) : <code>"newborn"</code> \| <code>"infant"</code> \| <code>"toddler"</code> \| <code>"kids"</code> \| <code>"adult"</code>
|
|
2906
|
-
* [~Demographics](#module_Product..Demographics) : <code>object</code>
|
|
2907
|
-
* [~PlatformIDs](#module_Product..PlatformIDs) : <code>object</code>
|
|
2908
|
-
* [~SquarespaceDataObject](#module_Product..SquarespaceDataObject) : <code>object</code>
|
|
2909
|
-
* [~PlatformData](#module_Product..PlatformData) : <code>object</code>
|
|
2910
|
-
* [~AttributeValueObject](#module_Product..AttributeValueObject) : <code>object</code>
|
|
2911
|
-
* [~VideoImage](#module_Product..VideoImage) : <code>object</code>
|
|
2912
|
-
* [~VirtualModel](#module_Product..VirtualModel) : <code>object</code>
|
|
2913
|
-
* [~MediaObject](#module_Product..MediaObject) : <code>object</code>
|
|
2914
|
-
* [~PhysicalProductVariant](#module_Product..PhysicalProductVariant) : <code>object</code>
|
|
2915
|
-
* [~Product](#module_Product..Product) : <code>object</code>
|
|
2916
|
-
|
|
2917
|
-
<a name="module_Product.createProduct"></a>
|
|
2918
|
-
|
|
2919
|
-
### Product.createProduct(user) ⇒ <code>Promise.<void></code>
|
|
2920
|
-
Creates a new Blank Product
|
|
2921
|
-
|
|
2922
|
-
**Kind**: static method of [<code>Product</code>](#module_Product)
|
|
2923
|
-
|
|
2924
|
-
| Param | Type | Description |
|
|
2925
|
-
| --- | --- | --- |
|
|
2926
|
-
| user | <code>UserObject</code> | minimal record of user this commodity belongs to (if any) |
|
|
2927
|
-
|
|
2928
|
-
<a name="module_Product.makeProductFromChild"></a>
|
|
2929
|
-
|
|
2930
|
-
### Product.makeProductFromChild(child) ⇒ <code>Record</code>
|
|
2931
|
-
**Kind**: static method of [<code>Product</code>](#module_Product)
|
|
2932
|
-
|
|
2933
|
-
| Param | Type | Description |
|
|
2934
|
-
| --- | --- | --- |
|
|
2935
|
-
| child | <code>Record</code> | a record assumed to be a leaf/child |
|
|
2936
|
-
|
|
2937
|
-
<a name="module_Product..ProductDefault"></a>
|
|
2938
|
-
|
|
2939
|
-
### Product~ProductDefault : <code>Product</code>
|
|
2940
|
-
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2941
|
-
**Default**: <code>{"platformIds":"","platformData":"","name":null,"short_name":null,"description":null,"short_description":null,"google_product_category":null,"product_type":null,"brand":"","demographics":"","attributes":"","recipe":"","mediaObject":"","mobileInfo":null,"isVisible":true,"type":"PHYSICAL","seoOptions":"","tags":"","materials":"","patterns":"","URL":null,"urlSlug":null,"variantAttributes":"","variants":""}</code>
|
|
2942
|
-
**Read only**: true
|
|
2943
|
-
<a name="module_Product..ProductDataForm"></a>
|
|
2944
|
-
|
|
2945
|
-
### Product~ProductDataForm : <code>Product</code>
|
|
2946
|
-
Form to create test data
|
|
2947
|
-
|
|
2948
|
-
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2949
|
-
**Default**: <code>{"Id":"","refPath":null,"name":"","description":"","sku":"","markups":"","projectQ":""}</code>
|
|
2950
|
-
**Read only**: true
|
|
2951
|
-
<a name="module_Product..ProductDefaultForm"></a>
|
|
2952
|
-
|
|
2953
|
-
### Product~ProductDefaultForm : <code>Product</code>
|
|
2954
|
-
Form to enter MINIMAL product data to start creation
|
|
2955
|
-
|
|
2956
|
-
**Kind**: inner constant of [<code>Product</code>](#module_Product)
|
|
2957
|
-
**Default**: <code>{"Id":"","refPath":"","name":"text","description":"textarea","sku":"text"}</code>
|
|
2958
|
-
**Read only**: true
|
|
2959
|
-
<a name="module_Product..updateProduct"></a>
|
|
2960
|
-
|
|
2961
|
-
### Product~updateProduct(product, user) ⇒ <code>promise.LineItem</code>
|
|
2962
|
-
writes record back to database. Assumes only Id is valid
|
|
2963
|
-
|
|
2964
|
-
**Kind**: inner method of [<code>Product</code>](#module_Product)
|
|
2965
|
-
**Returns**: <code>promise.LineItem</code> - a copy of the data written
|
|
2966
|
-
|
|
2967
|
-
| Param | Type | Default | Description |
|
|
2968
|
-
| --- | --- | --- | --- |
|
|
2969
|
-
| product | <code>Product</code> | | a partially-populated product record for updates |
|
|
2970
|
-
| user | <code>User</code> | <code></code> | minimal record of user this product belongs to |
|
|
2971
|
-
|
|
2972
|
-
<a name="module_Product..summarizeProduct"></a>
|
|
2973
|
-
|
|
2974
|
-
### Product~summarizeProduct(product) ⇒ <code>string</code>
|
|
2975
|
-
Returns a standardized formatted name string
|
|
2976
|
-
|
|
2977
|
-
**Kind**: inner method of [<code>Product</code>](#module_Product)
|
|
2978
|
-
**Returns**: <code>string</code> - formatted name string
|
|
2979
|
-
|
|
2980
|
-
| Param | Type |
|
|
2981
|
-
| --- | --- |
|
|
2982
|
-
| product | <code>Unit</code> |
|
|
2983
|
-
|
|
2984
|
-
<a name="module_Product..Recipe_Data"></a>
|
|
2985
|
-
|
|
2986
|
-
### Product~Recipe\_Data : <code>object</code>
|
|
2987
|
-
"recipe" related values - build-stage markups, product/project Flag, created/modified dates
|
|
2988
|
-
|
|
2989
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2990
|
-
**Properties**
|
|
2991
|
-
|
|
2992
|
-
| Name | Type | Description |
|
|
2993
|
-
| --- | --- | --- |
|
|
2994
|
-
| markups | <code>module:Markups~Stage</code> | |
|
|
2995
|
-
| projectQ | <code>boolean</code> | flag for product/project |
|
|
2996
|
-
| created | <code>dateTime</code> | |
|
|
2997
|
-
| modified | <code>dateTime</code> | |
|
|
2998
|
-
|
|
2999
|
-
<a name="module_Product..AttributeList"></a>
|
|
3000
|
-
|
|
3001
|
-
### Product~AttributeList : <code>Array.String</code>
|
|
3002
|
-
A list of attributes for a product
|
|
3003
|
-
|
|
3004
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3005
|
-
<a name="module_Product..AttributeValue"></a>
|
|
3006
|
-
|
|
3007
|
-
### Product~AttributeValue : <code>object</code>
|
|
3008
|
-
Array of attribute name/value pairs
|
|
3009
|
-
|
|
3010
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3011
|
-
**Properties**
|
|
3012
|
-
|
|
3013
|
-
| Name | Type | Description |
|
|
3014
|
-
| --- | --- | --- |
|
|
3015
|
-
| attibuteName | <code>string</code> | attribute name from attribute list |
|
|
3016
|
-
| value | <code>string</code> | value for the particular attribute |
|
|
3017
|
-
|
|
3018
|
-
<a name="module_Product..ProductImage"></a>
|
|
3019
|
-
|
|
3020
|
-
### Product~ProductImage : <code>object</code>
|
|
3021
|
-
Image Descriptor
|
|
3022
|
-
|
|
3023
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3024
|
-
**Properties**
|
|
3025
|
-
|
|
3026
|
-
| Name | Type | Description |
|
|
3027
|
-
| --- | --- | --- |
|
|
3028
|
-
| altText | <code>string</code> | alt text for the image - SEO etc |
|
|
3029
|
-
| availableFormats | <code>Array.string</code> | Available image sizes. |
|
|
3030
|
-
| id | <code>string</code> | unique id for this productImage |
|
|
3031
|
-
| orderIndex | <code>integer</code> | Position of the image in the product's image list. |
|
|
3032
|
-
| originalSize | <code>object</code> | Image size when first uploaded. |
|
|
3033
|
-
| seoOptions | <code>MetaData</code> | |
|
|
3034
|
-
| URL | <code>string</code> | Absolute URL of the hosted image. |
|
|
3035
|
-
|
|
3036
|
-
<a name="module_Product..BrandObject"></a>
|
|
3037
|
-
|
|
3038
|
-
### Product~BrandObject : <code>object</code>
|
|
3039
|
-
a Brand Object
|
|
3040
|
-
|
|
3041
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3042
|
-
**Properties**
|
|
3043
|
-
|
|
3044
|
-
| Name | Type | Description |
|
|
3045
|
-
| --- | --- | --- |
|
|
3046
|
-
| Id | <code>string</code> | Database Id of document (redundant for convenience) |
|
|
3047
|
-
| refPath | <code>string</code> | if from database, full path to document |
|
|
3048
|
-
| aggregateRating | <code>AggregateRatingsValue</code> | |
|
|
3049
|
-
| logo | <code>URL</code> \| <code>ImageObject</code> | |
|
|
3050
|
-
| review | <code>ReviewObject</code> | A review of the item. Supersedes reviews |
|
|
3051
|
-
| slogan | <code>text</code> | A slogan or motto associated with the item. |
|
|
3052
|
-
| name | <code>Name</code> | The name of the brand. |
|
|
3053
|
-
|
|
3054
|
-
<a name="module_Product..CurrencyDescription"></a>
|
|
3055
|
-
|
|
3056
|
-
### Product~CurrencyDescription : <code>object</code>
|
|
3057
|
-
Currency Description ISO 4217 currency code
|
|
3058
|
-
|
|
3059
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3060
|
-
**Properties**
|
|
3061
|
-
|
|
3062
|
-
| Name | Type |
|
|
3063
|
-
| --- | --- |
|
|
3064
|
-
| currencyCode | <code>string</code> |
|
|
3065
|
-
| defaultFractionDigits | <code>integer</code> |
|
|
3066
|
-
| displayName | <code>string</code> |
|
|
3067
|
-
| numericCodeAsString | <code>string</code> |
|
|
3068
|
-
| symbol | <code>string</code> |
|
|
3069
|
-
|
|
3070
|
-
<a name="module_Product..MonetaryValue"></a>
|
|
3071
|
-
|
|
3072
|
-
### Product~MonetaryValue : <code>object</code>
|
|
3073
|
-
Monetary Value Specification
|
|
3074
|
-
|
|
3075
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3076
|
-
**Properties**
|
|
3077
|
-
|
|
3078
|
-
| Name | Type | Description |
|
|
3079
|
-
| --- | --- | --- |
|
|
3080
|
-
| currencyDescription | <code>CurrencyDescription</code> | |
|
|
3081
|
-
| value | <code>decimal</code> | Decimal monetary value |
|
|
3082
|
-
| effectiveDate | <code>Date</code> | |
|
|
3083
|
-
|
|
3084
|
-
<a name="module_Product..FullProductPricing"></a>
|
|
3085
|
-
|
|
3086
|
-
### Product~FullProductPricing : <code>object</code>
|
|
3087
|
-
Pricing Object
|
|
3088
|
-
|
|
3089
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3090
|
-
**Properties**
|
|
3091
|
-
|
|
3092
|
-
| Name | Type |
|
|
3093
|
-
| --- | --- |
|
|
3094
|
-
| basePrice | <code>MonetaryValue</code> |
|
|
3095
|
-
| onSale | <code>boolean</code> |
|
|
3096
|
-
| salePrice | <code>MonetaryValue</code> |
|
|
3097
|
-
|
|
3098
|
-
<a name="module_Product..ProductDimensions"></a>
|
|
3099
|
-
|
|
3100
|
-
### Product~ProductDimensions : <code>object</code>
|
|
3101
|
-
Dimensions Object
|
|
3102
|
-
|
|
3103
|
-
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
2856
|
+
**Kind**: inner typedef of [<code>Product</code>](#module_Product)
|
|
3104
2857
|
**Properties**
|
|
3105
2858
|
|
|
3106
2859
|
| Name | Type | Description |
|
|
@@ -3364,6 +3117,253 @@ a product record
|
|
|
3364
3117
|
| variantAttributes | <code>Array.string</code> | |
|
|
3365
3118
|
| variants | <code>Array.PhysicalProductVariant</code> | |
|
|
3366
3119
|
|
|
3120
|
+
<a name="module_SquarespaceProduct"></a>
|
|
3121
|
+
|
|
3122
|
+
## SquarespaceProduct
|
|
3123
|
+
Typedefs, constants, support functions and database operations related to Products
|
|
3124
|
+
|
|
3125
|
+
|
|
3126
|
+
* [SquarespaceProduct](#module_SquarespaceProduct)
|
|
3127
|
+
* [~recursiveMapWalk(thisObject, labels)](#module_SquarespaceProduct..recursiveMapWalk)
|
|
3128
|
+
* [~AttributeList](#module_SquarespaceProduct..AttributeList) : <code>Array.String</code>
|
|
3129
|
+
* [~AttributeValue](#module_SquarespaceProduct..AttributeValue) : <code>object</code>
|
|
3130
|
+
* [~ProductImage](#module_SquarespaceProduct..ProductImage) : <code>object</code>
|
|
3131
|
+
* [~CurrencyDescription](#module_SquarespaceProduct..CurrencyDescription) : <code>object</code>
|
|
3132
|
+
* [~MonetaryValue](#module_SquarespaceProduct..MonetaryValue) : <code>object</code>
|
|
3133
|
+
* [~FullProductPricing](#module_SquarespaceProduct..FullProductPricing) : <code>object</code>
|
|
3134
|
+
* [~ProductDimensionsUnit](#module_SquarespaceProduct..ProductDimensionsUnit) : <code>object</code>
|
|
3135
|
+
* [~ProductDimensions](#module_SquarespaceProduct..ProductDimensions) : <code>object</code>
|
|
3136
|
+
* [~ProductWeightUnitEnum](#module_SquarespaceProduct..ProductWeightUnitEnum) : <code>"KILOGRAM"</code> \| <code>"POUND"</code>
|
|
3137
|
+
* [~ProductWeight](#module_SquarespaceProduct..ProductWeight) : <code>object</code>
|
|
3138
|
+
* [~ProductMeasurements](#module_SquarespaceProduct..ProductMeasurements) : <code>object</code>
|
|
3139
|
+
* [~ProductStock](#module_SquarespaceProduct..ProductStock) : <code>object</code>
|
|
3140
|
+
* [~MetaData](#module_SquarespaceProduct..MetaData) : <code>object</code>
|
|
3141
|
+
* [~ProductTypeV2Enum](#module_SquarespaceProduct..ProductTypeV2Enum) : <code>"PHYSICAL"</code> \| <code>"SERVICE"</code> \| <code>"GIFT\_CARD"</code> \| <code>"DIGITAL"</code>
|
|
3142
|
+
* [~PhysicalProductVariant](#module_SquarespaceProduct..PhysicalProductVariant) : <code>object</code>
|
|
3143
|
+
* [~PhysicalProduct](#module_SquarespaceProduct..PhysicalProduct) : <code>object</code>
|
|
3144
|
+
|
|
3145
|
+
<a name="module_SquarespaceProduct..recursiveMapWalk"></a>
|
|
3146
|
+
|
|
3147
|
+
### SquarespaceProduct~recursiveMapWalk(thisObject, labels)
|
|
3148
|
+
Uses an array of object member labels to insert a value into an object
|
|
3149
|
+
|
|
3150
|
+
**Kind**: inner method of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3151
|
+
|
|
3152
|
+
| Param | Type |
|
|
3153
|
+
| --- | --- |
|
|
3154
|
+
| thisObject | <code>object</code> |
|
|
3155
|
+
| labels | <code>Array.string</code> |
|
|
3156
|
+
|
|
3157
|
+
<a name="module_SquarespaceProduct..AttributeList"></a>
|
|
3158
|
+
|
|
3159
|
+
### SquarespaceProduct~AttributeList : <code>Array.String</code>
|
|
3160
|
+
A list of attributes for a product
|
|
3161
|
+
|
|
3162
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3163
|
+
<a name="module_SquarespaceProduct..AttributeValue"></a>
|
|
3164
|
+
|
|
3165
|
+
### SquarespaceProduct~AttributeValue : <code>object</code>
|
|
3166
|
+
Array of attribute name/value pairs
|
|
3167
|
+
|
|
3168
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3169
|
+
**Properties**
|
|
3170
|
+
|
|
3171
|
+
| Name | Type | Description |
|
|
3172
|
+
| --- | --- | --- |
|
|
3173
|
+
| AttibuteName | <code>string</code> | attribute name from attribute list |
|
|
3174
|
+
| value | <code>string</code> | value for the particular attribute |
|
|
3175
|
+
|
|
3176
|
+
<a name="module_SquarespaceProduct..ProductImage"></a>
|
|
3177
|
+
|
|
3178
|
+
### SquarespaceProduct~ProductImage : <code>object</code>
|
|
3179
|
+
Image Descriptor
|
|
3180
|
+
|
|
3181
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3182
|
+
**Properties**
|
|
3183
|
+
|
|
3184
|
+
| Name | Type | Description |
|
|
3185
|
+
| --- | --- | --- |
|
|
3186
|
+
| altText | <code>string</code> | alt text for the image - SEO etc |
|
|
3187
|
+
| availableFormats | <code>Array.string</code> | Available image sizes. |
|
|
3188
|
+
| id | <code>string</code> | unique id for this productImage |
|
|
3189
|
+
| orderIndex | <code>integer</code> | Position of the image in the product's image list. |
|
|
3190
|
+
| originalSize | <code>object</code> | Image size when first uploaded. |
|
|
3191
|
+
| URL | <code>string</code> | Absolute URL of the image hosted on Squarespace. |
|
|
3192
|
+
|
|
3193
|
+
<a name="module_SquarespaceProduct..CurrencyDescription"></a>
|
|
3194
|
+
|
|
3195
|
+
### SquarespaceProduct~CurrencyDescription : <code>object</code>
|
|
3196
|
+
Currency Description ISO 4217 currency code
|
|
3197
|
+
|
|
3198
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3199
|
+
**Properties**
|
|
3200
|
+
|
|
3201
|
+
| Name | Type |
|
|
3202
|
+
| --- | --- |
|
|
3203
|
+
| currencyCode | <code>string</code> |
|
|
3204
|
+
| defaultFractionDigits | <code>integer</code> |
|
|
3205
|
+
| displayName | <code>string</code> |
|
|
3206
|
+
| numericCodeAsString | <code>string</code> |
|
|
3207
|
+
| symbol | <code>string</code> |
|
|
3208
|
+
|
|
3209
|
+
<a name="module_SquarespaceProduct..MonetaryValue"></a>
|
|
3210
|
+
|
|
3211
|
+
### SquarespaceProduct~MonetaryValue : <code>object</code>
|
|
3212
|
+
Monetary Value Specification
|
|
3213
|
+
|
|
3214
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3215
|
+
**Properties**
|
|
3216
|
+
|
|
3217
|
+
| Name | Type | Description |
|
|
3218
|
+
| --- | --- | --- |
|
|
3219
|
+
| | <code>CurrencyDescription</code> | |
|
|
3220
|
+
| value | <code>decimal</code> | Decimal monetary value |
|
|
3221
|
+
|
|
3222
|
+
<a name="module_SquarespaceProduct..FullProductPricing"></a>
|
|
3223
|
+
|
|
3224
|
+
### SquarespaceProduct~FullProductPricing : <code>object</code>
|
|
3225
|
+
Pricing Object
|
|
3226
|
+
|
|
3227
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3228
|
+
**Properties**
|
|
3229
|
+
|
|
3230
|
+
| Name | Type |
|
|
3231
|
+
| --- | --- |
|
|
3232
|
+
| basePrice | <code>MonetaryValue</code> |
|
|
3233
|
+
| onSale | <code>boolean</code> |
|
|
3234
|
+
| salePrice | <code>MonetaryValue</code> |
|
|
3235
|
+
|
|
3236
|
+
<a name="module_SquarespaceProduct..ProductDimensionsUnit"></a>
|
|
3237
|
+
|
|
3238
|
+
### SquarespaceProduct~ProductDimensionsUnit : <code>object</code>
|
|
3239
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3240
|
+
**Properties**
|
|
3241
|
+
|
|
3242
|
+
| Name | Type |
|
|
3243
|
+
| --- | --- |
|
|
3244
|
+
| name | <code>Text</code> |
|
|
3245
|
+
| value | <code>Text</code> |
|
|
3246
|
+
|
|
3247
|
+
<a name="module_SquarespaceProduct..ProductDimensions"></a>
|
|
3248
|
+
|
|
3249
|
+
### SquarespaceProduct~ProductDimensions : <code>object</code>
|
|
3250
|
+
Dimensions Object
|
|
3251
|
+
|
|
3252
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3253
|
+
**Properties**
|
|
3254
|
+
|
|
3255
|
+
| Name | Type |
|
|
3256
|
+
| --- | --- |
|
|
3257
|
+
| height | <code>float</code> |
|
|
3258
|
+
| width | <code>float</code> |
|
|
3259
|
+
| length | <code>float</code> |
|
|
3260
|
+
| unit | <code>ProductDimensionsUnit</code> |
|
|
3261
|
+
|
|
3262
|
+
<a name="module_SquarespaceProduct..ProductWeightUnitEnum"></a>
|
|
3263
|
+
|
|
3264
|
+
### SquarespaceProduct~ProductWeightUnitEnum : <code>"KILOGRAM"</code> \| <code>"POUND"</code>
|
|
3265
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3266
|
+
<a name="module_SquarespaceProduct..ProductWeight"></a>
|
|
3267
|
+
|
|
3268
|
+
### SquarespaceProduct~ProductWeight : <code>object</code>
|
|
3269
|
+
Weight Object
|
|
3270
|
+
|
|
3271
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3272
|
+
**Properties**
|
|
3273
|
+
|
|
3274
|
+
| Name | Type |
|
|
3275
|
+
| --- | --- |
|
|
3276
|
+
| unit | <code>"KILOGRAM"</code> \| <code>"POUND"</code> |
|
|
3277
|
+
| value | <code>float</code> |
|
|
3278
|
+
|
|
3279
|
+
<a name="module_SquarespaceProduct..ProductMeasurements"></a>
|
|
3280
|
+
|
|
3281
|
+
### SquarespaceProduct~ProductMeasurements : <code>object</code>
|
|
3282
|
+
Measurements of the variant when it's shipped. Present for PHYSICAL products only.
|
|
3283
|
+
|
|
3284
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3285
|
+
**Properties**
|
|
3286
|
+
|
|
3287
|
+
| Name | Type |
|
|
3288
|
+
| --- | --- |
|
|
3289
|
+
| dimensions | <code>ProductDimensions</code> |
|
|
3290
|
+
| weight | <code>ProductWeight</code> |
|
|
3291
|
+
|
|
3292
|
+
<a name="module_SquarespaceProduct..ProductStock"></a>
|
|
3293
|
+
|
|
3294
|
+
### SquarespaceProduct~ProductStock : <code>object</code>
|
|
3295
|
+
Available stock for the variant. Present for PHYSICAL products only.
|
|
3296
|
+
|
|
3297
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3298
|
+
**Properties**
|
|
3299
|
+
|
|
3300
|
+
| Name | Type |
|
|
3301
|
+
| --- | --- |
|
|
3302
|
+
| quantity | <code>integer</code> |
|
|
3303
|
+
| unlimited | <code>boolean</code> |
|
|
3304
|
+
|
|
3305
|
+
<a name="module_SquarespaceProduct..MetaData"></a>
|
|
3306
|
+
|
|
3307
|
+
### SquarespaceProduct~MetaData : <code>object</code>
|
|
3308
|
+
Meta Information for SEO
|
|
3309
|
+
|
|
3310
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3311
|
+
**Properties**
|
|
3312
|
+
|
|
3313
|
+
| Name | Type |
|
|
3314
|
+
| --- | --- |
|
|
3315
|
+
| title | <code>string</code> |
|
|
3316
|
+
| description | <code>string</code> |
|
|
3317
|
+
|
|
3318
|
+
<a name="module_SquarespaceProduct..ProductTypeV2Enum"></a>
|
|
3319
|
+
|
|
3320
|
+
### SquarespaceProduct~ProductTypeV2Enum : <code>"PHYSICAL"</code> \| <code>"SERVICE"</code> \| <code>"GIFT\_CARD"</code> \| <code>"DIGITAL"</code>
|
|
3321
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3322
|
+
<a name="module_SquarespaceProduct..PhysicalProductVariant"></a>
|
|
3323
|
+
|
|
3324
|
+
### SquarespaceProduct~PhysicalProductVariant : <code>object</code>
|
|
3325
|
+
variant record (including inventory and pricing)
|
|
3326
|
+
|
|
3327
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3328
|
+
**Properties**
|
|
3329
|
+
|
|
3330
|
+
| Name | Type | Description |
|
|
3331
|
+
| --- | --- | --- |
|
|
3332
|
+
| attributes | <code>Array.AttributeValue</code> | array of attribute/value pairs for a variant |
|
|
3333
|
+
| gtin | <code>string</code> | Global Trade Item Number |
|
|
3334
|
+
| id | <code>string</code> | unique ID for product variant |
|
|
3335
|
+
| image | <code>ProductImage</code> | Image associated with this variant |
|
|
3336
|
+
| mpn | <code>string</code> | manufacturer part number |
|
|
3337
|
+
| shippingMeasurements | <code>ProductMeasurements</code> | |
|
|
3338
|
+
| sku | <code>string</code> | |
|
|
3339
|
+
| stock | <code>ProductStock</code> | |
|
|
3340
|
+
|
|
3341
|
+
<a name="module_SquarespaceProduct..PhysicalProduct"></a>
|
|
3342
|
+
|
|
3343
|
+
### SquarespaceProduct~PhysicalProduct : <code>object</code>
|
|
3344
|
+
a Square product record
|
|
3345
|
+
|
|
3346
|
+
**Kind**: inner typedef of [<code>SquarespaceProduct</code>](#module_SquarespaceProduct)
|
|
3347
|
+
**Properties**
|
|
3348
|
+
|
|
3349
|
+
| Name | Type | Description |
|
|
3350
|
+
| --- | --- | --- |
|
|
3351
|
+
| createdOn | <code>dateTime</code> | |
|
|
3352
|
+
| id | <code>string</code> | Id of document (redundant for convenience) |
|
|
3353
|
+
| modifiedOn | <code>dateTime</code> | |
|
|
3354
|
+
| storePageId | <code>string</code> | |
|
|
3355
|
+
| type | <code>"PHYSICAL"</code> \| <code>"SERVICE"</code> \| <code>"GIFT\_CARD"</code> \| <code>"DIGITAL"</code> | |
|
|
3356
|
+
| description | <code>string</code> | Basic description of the product |
|
|
3357
|
+
| images | <code>Array.ProductImage</code> | Image associated with this variant |
|
|
3358
|
+
| isVisible | <code>boolean</code> | |
|
|
3359
|
+
| name | <code>string</code> | name for the Product |
|
|
3360
|
+
| seoOptions | <code>MetaData</code> | |
|
|
3361
|
+
| tags | <code>Array.string</code> | |
|
|
3362
|
+
| URL | <code>string</code> | |
|
|
3363
|
+
| urlSlug | <code>string</code> | |
|
|
3364
|
+
| variantAttributes | <code>Array.string</code> | |
|
|
3365
|
+
| variants | <code>Array.PhysicalProductVariant</code> | |
|
|
3366
|
+
|
|
3367
3367
|
<a name="module_User"></a>
|
|
3368
3368
|
|
|
3369
3369
|
## User
|
|
@@ -149,7 +149,7 @@ export async function deleteLineItemById(lineItem, product) {
|
|
|
149
149
|
* @param {Product} product minimal record of product this lineItem belongs to
|
|
150
150
|
* @returns {Promise.LineItem}
|
|
151
151
|
*/
|
|
152
|
-
export
|
|
152
|
+
export async function createLineItem(lineItem) {
|
|
153
153
|
//need a "no duplicate" function - whatever that means in this context
|
|
154
154
|
return writeRecord(LINEITEM, lineItem, product.refPath);
|
|
155
155
|
};
|
|
@@ -307,7 +307,7 @@ function summarizeLineItem(lineItem) {
|
|
|
307
307
|
* @param {?number} lineItem.count
|
|
308
308
|
* @returns {number}
|
|
309
309
|
*/
|
|
310
|
-
function lineItem_lineSum(lineItem) {
|
|
310
|
+
export function lineItem_lineSum(lineItem) {
|
|
311
311
|
return lineItem?.rate * lineItem?.count;
|
|
312
312
|
}
|
|
313
313
|
|
|
@@ -148,7 +148,7 @@
|
|
|
148
148
|
/**
|
|
149
149
|
* @type {GoogleProductAPI}
|
|
150
150
|
*/
|
|
151
|
-
export const
|
|
151
|
+
export const googleAPIProductMap = {
|
|
152
152
|
//id needs programmatic processing
|
|
153
153
|
id: "variants[index].sku", //id of Product also used as sku
|
|
154
154
|
title: "name", //title (name) of Product
|
|
@@ -217,11 +217,11 @@ export const GoogleAPIProductMap = {
|
|
|
217
217
|
* @param {string} field
|
|
218
218
|
* @param {Product} InventoryProduct
|
|
219
219
|
*/
|
|
220
|
-
function
|
|
220
|
+
function googleProductAPIField(field, InventoryProduct) {
|
|
221
221
|
|
|
222
222
|
}
|
|
223
223
|
|
|
224
|
-
const
|
|
224
|
+
const googleProductCategory = {
|
|
225
225
|
"Animals & Pet Supplies": {
|
|
226
226
|
index: 1,
|
|
227
227
|
"Live Animals": {
|
|
@@ -291,7 +291,7 @@ import { typedRecordFromChild } from "../Utilities/index.js"
|
|
|
291
291
|
* @type {Product}
|
|
292
292
|
* @default
|
|
293
293
|
*/
|
|
294
|
-
const
|
|
294
|
+
const productDefault = {
|
|
295
295
|
platformIds: {
|
|
296
296
|
squarespaceId: null,
|
|
297
297
|
googleMerchantId: null,
|
|
@@ -355,7 +355,7 @@ const ProductDefault = {
|
|
|
355
355
|
* @type {Product}
|
|
356
356
|
* @default
|
|
357
357
|
*/
|
|
358
|
-
const
|
|
358
|
+
const productDataForm = {
|
|
359
359
|
Id: `string.uuid`,
|
|
360
360
|
refPath: null,
|
|
361
361
|
name: `commerce.product`,
|
|
@@ -372,7 +372,7 @@ const ProductDataForm = {
|
|
|
372
372
|
* @type {Product}
|
|
373
373
|
* @default
|
|
374
374
|
*/
|
|
375
|
-
const
|
|
375
|
+
const productDefaultForm = {
|
|
376
376
|
Id: `hidden`,
|
|
377
377
|
refPath: `hidden`,
|
|
378
378
|
name: "text",
|
|
@@ -380,10 +380,10 @@ const ProductDefaultForm = {
|
|
|
380
380
|
sku: "text",
|
|
381
381
|
};
|
|
382
382
|
|
|
383
|
-
Forms.Base[PRODUCT] =
|
|
384
|
-
Forms.BaseForm[PRODUCT] =
|
|
385
|
-
Forms.CreateForm[PRODUCT] =
|
|
386
|
-
Forms.Data[PRODUCT] =
|
|
383
|
+
Forms.Base[PRODUCT] = productDefault;
|
|
384
|
+
Forms.BaseForm[PRODUCT] = productDefaultForm;
|
|
385
|
+
Forms.CreateForm[PRODUCT] = productDefaultForm;
|
|
386
|
+
Forms.Data[PRODUCT] = productDataForm;
|
|
387
387
|
Forms.Summarize[PRODUCT] = summarizeProduct;
|
|
388
388
|
Forms.Save[PRODUCT] = updateProduct;
|
|
389
389
|
Forms.SearchBy[PRODUCT] = "name";
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
//import { PRODUCT, MARKUPS, ISBN_LENGTH } from "../boilerplate/index.js";
|
|
8
8
|
|
|
9
9
|
//import {SampleJSON, feedSample} from "./SquarespaceSample.js"
|
|
10
|
-
import
|
|
10
|
+
import sampleJSON from './sampleJSON.json' with { type: 'json' };
|
|
11
11
|
import feedSample from './feedSample.json' with { type: 'json' };
|
|
12
12
|
//////////////////////////////////////////////////////////////////////
|
|
13
13
|
// Constants
|
|
@@ -153,7 +153,7 @@ import feedSample from './feedSample.json' with { type: 'json' };
|
|
|
153
153
|
//////////////////////////////////////////////////////////////////////
|
|
154
154
|
// utilities
|
|
155
155
|
|
|
156
|
-
const
|
|
156
|
+
const squarespaceVariantMap = {
|
|
157
157
|
"id": {target: "platformIds.SquarespaceId"},
|
|
158
158
|
"sku": {target: "sku"},
|
|
159
159
|
"image": {target: "image"},
|
|
@@ -166,7 +166,7 @@ const SquarespaceVariantMap = {
|
|
|
166
166
|
//other fields not used
|
|
167
167
|
};
|
|
168
168
|
|
|
169
|
-
const
|
|
169
|
+
const squarespaceProductMap = {
|
|
170
170
|
"id": {target: "platformIds.SquarespaceId"},
|
|
171
171
|
"type": {target:"product_type"},
|
|
172
172
|
"name": {target: "name"},
|
|
@@ -187,19 +187,19 @@ const SquarespaceProductMap = {
|
|
|
187
187
|
"isVisible": {target: "isVisible"},
|
|
188
188
|
};
|
|
189
189
|
|
|
190
|
-
function
|
|
190
|
+
function jsonToItemMapping(itemJSON, itemMap) {
|
|
191
191
|
const incomingItem = JSON.parse(itemJSON);
|
|
192
|
-
return
|
|
192
|
+
return itemToItemMapping(incomingItem, itemMap);
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
-
export function
|
|
195
|
+
export function jsonProductFeedToItemMapping(feedJSON) {
|
|
196
196
|
const incomingFeed = JSON.parse(feedJSON);
|
|
197
197
|
return incomingFeed.products.map(product => {
|
|
198
|
-
return
|
|
198
|
+
return itemToItemMapping(product, SquarespaceProductMap);
|
|
199
199
|
});
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
-
function
|
|
202
|
+
function itemToItemMapping(incomingItem, itemMap) {
|
|
203
203
|
|
|
204
204
|
let properties = Object.getOwnPropertyNames(incomingItem);
|
|
205
205
|
let outputItem = properties.reduce((outbound, property) => {
|
|
@@ -208,7 +208,7 @@ function ItemToItemMapping(incomingItem, itemMap) {
|
|
|
208
208
|
let saveValue = Array.isArray(incomingItem[property])
|
|
209
209
|
? incomingItem[property].map((entry) => {
|
|
210
210
|
return formatter
|
|
211
|
-
?
|
|
211
|
+
? itemToItemMapping(entry, formatter)
|
|
212
212
|
: entry;
|
|
213
213
|
})
|
|
214
214
|
: incomingItem[property];
|
|
@@ -240,5 +240,5 @@ function recursiveMapWalk(thisObject, labels, value) {
|
|
|
240
240
|
};
|
|
241
241
|
|
|
242
242
|
export function squarespaceFeedTest () {
|
|
243
|
-
return
|
|
243
|
+
return jsonProductFeedToItemMapping(feedSample);
|
|
244
244
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const
|
|
1
|
+
export const sampleJSON = '{"id":"69fa54e8f691fe20c13bc732","type":"PHYSICAL","name":"Stack : : short gemstone earrings","description":"Bob","storePageId":"694b2289b16b8d02d4bdaaba","url":"https://sirlinhalljewelry.com/shop/p/stack-earrings-26050500","urlSlug":"p/stack-earrings-26050500","images":[{"id":"69fa5769cfa3e81e12d7c224","altText":"PXL_20260505_201834132.jpg","orderIndex":0,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/2bf39ac2-a49b-4820-a211-961d6a0722ef/PXL_20260505_201834132.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]},{"id":"69fa5769f691fe20c13bc9f8","altText":"PXL_20260505_201739701.jpg","orderIndex":1,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/8d5186e3-e5a1-43bb-9714-77a939b8bc40/PXL_20260505_201739701.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]},{"id":"69fa5769cfa3e81e12d7c225","altText":"PXL_20260505_201915047.jpg","orderIndex":2,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/ff61c7e8-a03b-442e-81b2-db67241d85ec/PXL_20260505_201915047.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]},{"id":"69fa5769f691fe20c13bc9f9","altText":"PXL_20260505_202122912.jpg","orderIndex":3,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/357dfd2f-1bce-4687-b57b-1ff53209d970/PXL_20260505_202122912.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]},{"id":"69fa5769a3780355a2edfbb0","altText":"PXL_20260505_202100350.jpg","orderIndex":4,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/4fcf4192-dbe3-477a-90e7-be0c553f4c5b/PXL_20260505_202100350.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]},{"id":"69fa5769cfa3e81e12d7c226","altText":"PXL_20260505_201947380.jpg","orderIndex":5,"url":"https://images.squarespace-cdn.com/content/v1/694b2288b16b8d02d4bdaa0c/fba1dcf8-8526-47ab-ab7f-be2ab37a1dbd/PXL_20260505_201947380.jpg","originalSize":{"width":480,"height":480},"availableFormats":[]}],"tags":[],"seoOptions":{"title":"Stack short gemstone and pearl earrings","description":"Tucson designer Lisa Sirlin-Halls Stack earrings are quick grabs of a bit of neutral with a pop of color when you want earrings for a casual day look."},"createdOn":"2026-05-05T20:36:56.235Z","modifiedOn":"2026-05-05T20:48:35.104Z","variants":[{"id":"fdb09e8d-467c-412e-a355-f6a40a24af24","sku":"26050101","image":null,"pricing":{"basePrice":{"currency":"USD","value":"68.00"},"salePrice":{"currency":"USD","value":"0.00"},"onSale":false},"stock":{"quantity":1,"unlimited":false},"attributes":{"Color":"Blue with Labradorite"},"shippingMeasurements":{"weight":{"unit":"POUND","value":0.0625},"dimensions":{"unit":"INCH","length":9,"width":6,"height":0.5}},"gtin":null,"mpn":null},{"id":"61c47a68-5acb-4d74-b18b-83ac27e49aeb","sku":"26050102","image":null,"pricing":{"basePrice":{"currency":"USD","value":"68.00"},"salePrice":{"currency":"USD","value":"0.00"},"onSale":false},"stock":{"quantity":1,"unlimited":false},"attributes":{"Color":"Silver with Black Onyx"},"shippingMeasurements":{"weight":{"unit":"POUND","value":0.0625},"dimensions":{"unit":"INCH","length":9,"width":6,"height":0.5}},"gtin":null,"mpn":null},{"id":"4b1ca060-8d0e-4e20-9863-cb37324da85d","sku":"26050103","image":null,"pricing":{"basePrice":{"currency":"USD","value":"68.00"},"salePrice":{"currency":"USD","value":"0.00"},"onSale":false},"stock":{"quantity":1,"unlimited":false},"attributes":{"Color":"Champagne yellow and Pearl"},"shippingMeasurements":{"weight":{"unit":"POUND","value":0.0625},"dimensions":{"unit":"INCH","length":9,"width":6,"height":0.5}},"gtin":null,"mpn":null}],"variantAttributes":["Color"],"isVisible":true}';
|
|
2
2
|
|
|
3
3
|
export const feedSample = {
|
|
4
4
|
"products": [
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|