@gem-sdk/components 8.0.0-dev.25 → 8.0.0-staging.10
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/dist/cjs/carousel-v3/components/swiper/Swiper.js +1 -1
- package/dist/cjs/countdown-timer/common/helpers.js +1 -1
- package/dist/cjs/countdown-timer/hooks/useCountDownTimer.js +1 -1
- package/dist/cjs/countdown-timer/hooks/useTimeLeft.js +1 -1
- package/dist/cjs/countdown-timer/settings/Countdown.js +1 -1
- package/dist/cjs/countdown-timer/settings/configs/setting.js +1 -1
- package/dist/cjs/countdown-timer/settings/configs/ui-v2.js +1 -1
- package/dist/cjs/post-purchase/product/components/ProductPrice.js +1 -1
- package/dist/cjs/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
- package/dist/cjs/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
- package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +10 -10
- package/dist/cjs/product/components/product-badge/common/styles.js +1 -1
- package/dist/cjs/product/components/product-badge/utils/common.js +1 -1
- package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +4 -3
- package/dist/cjs/product/components/product-button/ProductButton.liquid.js +4 -6
- package/dist/cjs/product/components/product-button/hooks/useAddToCart.js +1 -1
- package/dist/cjs/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
- package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -1
- package/dist/cjs/product/components/product-price/hooks/useGpPrice.js +1 -1
- package/dist/cjs/product/components/product-variants/ProductVariants.liquid.js +77 -27
- package/dist/cjs/product/components/product-variants/common/base/styles.js +1 -1
- package/dist/cjs/product/components/product-variants/components/color/color.liquid.js +3 -3
- package/dist/cjs/product/components/product-wrap/Product.liquid.js +12 -10
- package/dist/cjs/product/helpers/product-bundle.js +1 -1
- package/dist/esm/carousel-v3/components/swiper/Swiper.js +1 -1
- package/dist/esm/countdown-timer/common/helpers.js +1 -1
- package/dist/esm/countdown-timer/hooks/useCountDownTimer.js +1 -1
- package/dist/esm/countdown-timer/hooks/useTimeLeft.js +1 -1
- package/dist/esm/countdown-timer/settings/Countdown.js +1 -1
- package/dist/esm/countdown-timer/settings/configs/setting.js +1 -1
- package/dist/esm/countdown-timer/settings/configs/ui-v2.js +1 -1
- package/dist/esm/post-purchase/product/components/ProductPrice.js +1 -1
- package/dist/esm/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
- package/dist/esm/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
- package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +21 -21
- package/dist/esm/product/components/product-badge/common/styles.js +1 -1
- package/dist/esm/product/components/product-badge/utils/common.js +1 -1
- package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +4 -3
- package/dist/esm/product/components/product-button/ProductButton.liquid.js +9 -11
- package/dist/esm/product/components/product-button/hooks/useAddToCart.js +1 -1
- package/dist/esm/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
- package/dist/esm/product/components/product-list-v3/ProductList.js +1 -1
- package/dist/esm/product/components/product-price/hooks/useGpPrice.js +1 -1
- package/dist/esm/product/components/product-variants/ProductVariants.liquid.js +82 -32
- package/dist/esm/product/components/product-variants/common/base/styles.js +1 -1
- package/dist/esm/product/components/product-variants/components/color/color.liquid.js +3 -3
- package/dist/esm/product/components/product-wrap/Product.liquid.js +33 -31
- package/dist/esm/product/helpers/product-bundle.js +1 -1
- package/dist/types/index.d.ts +0 -1
- package/package.json +4 -4
- package/dist/cjs/product/components/product-variants/OptionVariantsNewFormat.liquid.js +0 -41
- package/dist/cjs/product/components/product-variants/OptionVariantsOldFormat.liquid.js +0 -66
- package/dist/cjs/product/components/product-variants/common/const.js +0 -1
- package/dist/esm/product/components/product-variants/OptionVariantsNewFormat.liquid.js +0 -41
- package/dist/esm/product/components/product-variants/OptionVariantsOldFormat.liquid.js +0 -66
- package/dist/esm/product/components/product-variants/common/const.js +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gem-sdk/components",
|
|
3
|
-
"version": "8.0.0-
|
|
3
|
+
"version": "8.0.0-staging.10",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"scan-all-text": "rollup -c ./scripts/rollup.config.settings.mjs && node ./scripts/scan-all-text && node ./scripts/scan-all-text"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@gem-sdk/core": "8.0.0-
|
|
30
|
-
"@gem-sdk/styles": "7.0.1-
|
|
31
|
-
"@gem-sdk/system": "7.0.1-
|
|
29
|
+
"@gem-sdk/core": "8.0.0-staging.8",
|
|
30
|
+
"@gem-sdk/styles": "7.0.1-staging.0",
|
|
31
|
+
"@gem-sdk/system": "7.0.1-staging.0",
|
|
32
32
|
"@types/react-transition-group": "^4.4.12",
|
|
33
33
|
"tsup": "^8.5.0",
|
|
34
34
|
"postcss-import": "^16.1.1",
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";var core=require("@gem-sdk/core"),system=require("@gem-sdk/system"),_const=require("./common/const.js");const renderOptionValuesNewFormatSwatches=e=>{let{renderVariantItem:s,variantPresetsLiquid:i}=e;return core.template`
|
|
2
|
-
${system.Liquid("{%- assign optionRendered = false -%}")}
|
|
3
|
-
${system.Liquid("{%- assign swatches = shop.metafields.GEMPAGES.swatchesJSONFormat.value -%}")}
|
|
4
|
-
|
|
5
|
-
${system.Liquid(`{% for swatch in swatches %}
|
|
6
|
-
{%- assign optionTitle = swatch.optionTitle -%}
|
|
7
|
-
{%- assign optionType = swatch.optionType -%}
|
|
8
|
-
{%- assign labelsString = "" -%}
|
|
9
|
-
{%- assign colorArraysString = "" -%}
|
|
10
|
-
{%- assign imageUrlsString = "" -%}
|
|
11
|
-
|
|
12
|
-
{% for optionValue in swatch.optionValues %}
|
|
13
|
-
{%- assign labelsString = labelsString | append: optionValue.label | append: '${_const.OPTION_VALUES_DELIMITER}' -%}
|
|
14
|
-
{%- assign colorsJoined = optionValue.colors | join: '${_const.OPTION_VALUES_DELIMITER}' -%}
|
|
15
|
-
{%- assign colorArraysString = colorArraysString | append: colorsJoined | append: '${_const.OPTION_VALUES_DELIMITER}' -%}
|
|
16
|
-
{%- assign imageUrlsString = imageUrlsString | append: optionValue.imageUrl | append: '${_const.OPTION_VALUES_DELIMITER}' -%}
|
|
17
|
-
{% endfor %}
|
|
18
|
-
|
|
19
|
-
{%- assign labels = labelsString | split: '${_const.OPTION_VALUES_DELIMITER}' | slice: 0, labelsString.size -%}
|
|
20
|
-
{%- assign colorStrings = colorArraysString | split: '${_const.OPTION_VALUES_DELIMITER}' | slice: 0, colorArraysString.size -%}
|
|
21
|
-
{%- assign imageUrls = imageUrlsString | split: '${_const.OPTION_VALUES_DELIMITER}' | slice: 0, imageUrlsString.size -%}
|
|
22
|
-
|
|
23
|
-
{% if optionTitle == option.name %}
|
|
24
|
-
{%- assign variantPresetString = "${i}" -%}
|
|
25
|
-
{%- assign optionName = option.name | replace: "'", "'" | replace: '"', '"' -%}
|
|
26
|
-
{%- assign items = variantPresetString | split: '($2)' -%}
|
|
27
|
-
{%- assign type = 'dropdown' -%}
|
|
28
|
-
|
|
29
|
-
{% for item in items %}
|
|
30
|
-
{%- assign itemPreset = item | split: '($1)' -%}
|
|
31
|
-
{% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
|
|
32
|
-
{% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
|
|
33
|
-
{% endfor %}
|
|
34
|
-
{%- assign optionRendered = true -%}
|
|
35
|
-
|
|
36
|
-
${s({showDropdown:!0})}
|
|
37
|
-
{% endif %}
|
|
38
|
-
{% endfor %}`)}
|
|
39
|
-
|
|
40
|
-
${system.LiquidIf("optionRendered == false",s({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
|
|
41
|
-
`};exports.renderOptionValuesNewFormatSwatches=renderOptionValuesNewFormatSwatches;
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";var system=require("@gem-sdk/system"),core=require("@gem-sdk/core");const renderOptionValuesOld=s=>{let{renderVariantItem:e,variantPresetsLiquid:i}=s;return core.template`
|
|
2
|
-
${system.Liquid("{%- assign optionRendered = false -%}")}
|
|
3
|
-
${system.Liquid("{%- assign swatches = shop.metafields.GEMPAGES.swatches -%}")}
|
|
4
|
-
${system.Liquid("{%- assign swatchesItems = swatches | split: '($1)' -%}")}
|
|
5
|
-
|
|
6
|
-
${system.LiquidFor("swatchesItem in swatchesItems",`
|
|
7
|
-
${system.Liquid('{%- assign colorArraysString = "" -%}')}
|
|
8
|
-
${system.Liquid('{%- assign labelsString = "" -%}')}
|
|
9
|
-
${system.Liquid('{%- assign imageUrlsString = "" -%}')}
|
|
10
|
-
${system.Liquid("{%- assign attrItems = swatchesItem | split: '($3)' -%}")}
|
|
11
|
-
|
|
12
|
-
${system.LiquidFor("attrItem in attrItems",`
|
|
13
|
-
${system.Liquid("{%- assign attrs = attrItem | split: '($2)' -%}")}
|
|
14
|
-
${system.Liquid("{%- assign optionKey = attrs[0] -%}")}
|
|
15
|
-
${system.Liquid("{%- assign optionValue = attrs[1] -%}")}
|
|
16
|
-
${system.Liquid(`
|
|
17
|
-
{% if optionKey == 'optionTitle' %}
|
|
18
|
-
{% assign optionTitle = optionValue %}
|
|
19
|
-
{% elsif optionKey == 'optionType' %}
|
|
20
|
-
{% assign optionType = optionValue %}
|
|
21
|
-
{% endif %}
|
|
22
|
-
`)}
|
|
23
|
-
|
|
24
|
-
${system.LiquidIf('optionKey == "optionValues"',`
|
|
25
|
-
${system.Liquid("{%- assign opValueItems = optionValue | split: '($4)' -%}")}
|
|
26
|
-
${system.LiquidFor("opValueItem in opValueItems",`
|
|
27
|
-
${system.Liquid("{%- assign opValueItemAttrs = opValueItem | split: '($6)' -%}")}
|
|
28
|
-
${system.LiquidFor("opValueItemAttr in opValueItemAttrs",`
|
|
29
|
-
${system.Liquid("{%- assign attrs = opValueItemAttr | split: '($5)' -%}")}
|
|
30
|
-
${system.Liquid("{%- assign opValueItemKey = attrs[0] -%}")}
|
|
31
|
-
${system.Liquid("{%- assign opValueItemValue = attrs[1] -%}")}
|
|
32
|
-
|
|
33
|
-
${system.LiquidIf('opValueItemKey == "label"',`${system.Liquid("{%- assign labelsString = labelsString | append: opValueItemValue -%}")}
|
|
34
|
-
${system.Liquid('{%- assign labelsString = labelsString | append: "($8)" -%}')}`)}
|
|
35
|
-
|
|
36
|
-
${system.LiquidIf('opValueItemKey == "colors"',`${system.Liquid("{%- assign colorArraysString = colorArraysString | append: opValueItemValue -%}")}
|
|
37
|
-
${system.Liquid('{%- assign colorArraysString = colorArraysString | append: "($8)" -%}')}`)}
|
|
38
|
-
|
|
39
|
-
${system.LiquidIf('opValueItemKey == "imageUrl"',`${system.Liquid("{%- assign imageUrlsString = imageUrlsString | append: opValueItemValue -%}")}
|
|
40
|
-
${system.Liquid('{%- assign imageUrlsString = imageUrlsString | append: "($8)" -%}')}`)}
|
|
41
|
-
`)}
|
|
42
|
-
`)}
|
|
43
|
-
`)}
|
|
44
|
-
`)}
|
|
45
|
-
|
|
46
|
-
${system.Liquid("{%- assign labels = labelsString | split: '($8)' -%}")}
|
|
47
|
-
${system.Liquid("{%- assign colorStrings = colorArraysString | split: '($8)' -%}")}
|
|
48
|
-
${system.Liquid("{%- assign imageUrls = imageUrlsString | split: '($8)' -%}")}
|
|
49
|
-
|
|
50
|
-
${system.LiquidIf("optionTitle == option.name",`
|
|
51
|
-
${system.Liquid(`{%- assign variantPresetString = "${i}" -%}`)}
|
|
52
|
-
${system.Liquid('{%- assign optionName = option.name | replace: "\'", "'" | replace: \'"\', """ -%}')}
|
|
53
|
-
${system.Liquid("{%- assign items = variantPresetString | split:'($2)' -%}")}
|
|
54
|
-
${system.Liquid("{%- assign type = 'dropdown' -%}")}
|
|
55
|
-
${system.LiquidFor("item in items",`
|
|
56
|
-
${system.Liquid("{%- assign itemPreset = item | split:'($1)' -%}")}
|
|
57
|
-
${system.LiquidIf("itemPreset[0] == optionName",system.Liquid("{%- assign type = itemPreset[1] -%}"))}
|
|
58
|
-
${system.LiquidIf('itemPreset[0] == "base"',system.Liquid("{%- assign type = itemPreset[1] -%}"))}
|
|
59
|
-
`)}
|
|
60
|
-
${system.Liquid("{%- assign optionRendered = true -%}")}
|
|
61
|
-
${e({showDropdown:!0})}
|
|
62
|
-
`)}
|
|
63
|
-
`)}
|
|
64
|
-
|
|
65
|
-
${system.LiquidIf("optionRendered == false",e({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
|
|
66
|
-
`};exports.renderOptionValuesOld=renderOptionValuesOld;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const OPTION_VALUES_DELIMITER="|||";exports.OPTION_VALUES_DELIMITER="|||";
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import{template as e}from"@gem-sdk/core";import{Liquid as s,LiquidIf as i}from"@gem-sdk/system";import{OPTION_VALUES_DELIMITER as n}from"./common/const.js";let renderOptionValuesNewFormatSwatches=t=>{let{renderVariantItem:o,variantPresetsLiquid:r}=t;return e`
|
|
2
|
-
${s("{%- assign optionRendered = false -%}")}
|
|
3
|
-
${s("{%- assign swatches = shop.metafields.GEMPAGES.swatchesJSONFormat.value -%}")}
|
|
4
|
-
|
|
5
|
-
${s(`{% for swatch in swatches %}
|
|
6
|
-
{%- assign optionTitle = swatch.optionTitle -%}
|
|
7
|
-
{%- assign optionType = swatch.optionType -%}
|
|
8
|
-
{%- assign labelsString = "" -%}
|
|
9
|
-
{%- assign colorArraysString = "" -%}
|
|
10
|
-
{%- assign imageUrlsString = "" -%}
|
|
11
|
-
|
|
12
|
-
{% for optionValue in swatch.optionValues %}
|
|
13
|
-
{%- assign labelsString = labelsString | append: optionValue.label | append: '${n}' -%}
|
|
14
|
-
{%- assign colorsJoined = optionValue.colors | join: '${n}' -%}
|
|
15
|
-
{%- assign colorArraysString = colorArraysString | append: colorsJoined | append: '${n}' -%}
|
|
16
|
-
{%- assign imageUrlsString = imageUrlsString | append: optionValue.imageUrl | append: '${n}' -%}
|
|
17
|
-
{% endfor %}
|
|
18
|
-
|
|
19
|
-
{%- assign labels = labelsString | split: '${n}' | slice: 0, labelsString.size -%}
|
|
20
|
-
{%- assign colorStrings = colorArraysString | split: '${n}' | slice: 0, colorArraysString.size -%}
|
|
21
|
-
{%- assign imageUrls = imageUrlsString | split: '${n}' | slice: 0, imageUrlsString.size -%}
|
|
22
|
-
|
|
23
|
-
{% if optionTitle == option.name %}
|
|
24
|
-
{%- assign variantPresetString = "${r}" -%}
|
|
25
|
-
{%- assign optionName = option.name | replace: "'", "'" | replace: '"', '"' -%}
|
|
26
|
-
{%- assign items = variantPresetString | split: '($2)' -%}
|
|
27
|
-
{%- assign type = 'dropdown' -%}
|
|
28
|
-
|
|
29
|
-
{% for item in items %}
|
|
30
|
-
{%- assign itemPreset = item | split: '($1)' -%}
|
|
31
|
-
{% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
|
|
32
|
-
{% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
|
|
33
|
-
{% endfor %}
|
|
34
|
-
{%- assign optionRendered = true -%}
|
|
35
|
-
|
|
36
|
-
${o({showDropdown:!0})}
|
|
37
|
-
{% endif %}
|
|
38
|
-
{% endfor %}`)}
|
|
39
|
-
|
|
40
|
-
${i("optionRendered == false",o({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
|
|
41
|
-
`};export{renderOptionValuesNewFormatSwatches};
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import{Liquid as e,LiquidFor as s,LiquidIf as t}from"@gem-sdk/system";import{template as i}from"@gem-sdk/core";let renderOptionValuesOld=a=>{let{renderVariantItem:n,variantPresetsLiquid:o}=a;return i`
|
|
2
|
-
${e("{%- assign optionRendered = false -%}")}
|
|
3
|
-
${e("{%- assign swatches = shop.metafields.GEMPAGES.swatches -%}")}
|
|
4
|
-
${e("{%- assign swatchesItems = swatches | split: '($1)' -%}")}
|
|
5
|
-
|
|
6
|
-
${s("swatchesItem in swatchesItems",`
|
|
7
|
-
${e('{%- assign colorArraysString = "" -%}')}
|
|
8
|
-
${e('{%- assign labelsString = "" -%}')}
|
|
9
|
-
${e('{%- assign imageUrlsString = "" -%}')}
|
|
10
|
-
${e("{%- assign attrItems = swatchesItem | split: '($3)' -%}")}
|
|
11
|
-
|
|
12
|
-
${s("attrItem in attrItems",`
|
|
13
|
-
${e("{%- assign attrs = attrItem | split: '($2)' -%}")}
|
|
14
|
-
${e("{%- assign optionKey = attrs[0] -%}")}
|
|
15
|
-
${e("{%- assign optionValue = attrs[1] -%}")}
|
|
16
|
-
${e(`
|
|
17
|
-
{% if optionKey == 'optionTitle' %}
|
|
18
|
-
{% assign optionTitle = optionValue %}
|
|
19
|
-
{% elsif optionKey == 'optionType' %}
|
|
20
|
-
{% assign optionType = optionValue %}
|
|
21
|
-
{% endif %}
|
|
22
|
-
`)}
|
|
23
|
-
|
|
24
|
-
${t('optionKey == "optionValues"',`
|
|
25
|
-
${e("{%- assign opValueItems = optionValue | split: '($4)' -%}")}
|
|
26
|
-
${s("opValueItem in opValueItems",`
|
|
27
|
-
${e("{%- assign opValueItemAttrs = opValueItem | split: '($6)' -%}")}
|
|
28
|
-
${s("opValueItemAttr in opValueItemAttrs",`
|
|
29
|
-
${e("{%- assign attrs = opValueItemAttr | split: '($5)' -%}")}
|
|
30
|
-
${e("{%- assign opValueItemKey = attrs[0] -%}")}
|
|
31
|
-
${e("{%- assign opValueItemValue = attrs[1] -%}")}
|
|
32
|
-
|
|
33
|
-
${t('opValueItemKey == "label"',`${e("{%- assign labelsString = labelsString | append: opValueItemValue -%}")}
|
|
34
|
-
${e('{%- assign labelsString = labelsString | append: "($8)" -%}')}`)}
|
|
35
|
-
|
|
36
|
-
${t('opValueItemKey == "colors"',`${e("{%- assign colorArraysString = colorArraysString | append: opValueItemValue -%}")}
|
|
37
|
-
${e('{%- assign colorArraysString = colorArraysString | append: "($8)" -%}')}`)}
|
|
38
|
-
|
|
39
|
-
${t('opValueItemKey == "imageUrl"',`${e("{%- assign imageUrlsString = imageUrlsString | append: opValueItemValue -%}")}
|
|
40
|
-
${e('{%- assign imageUrlsString = imageUrlsString | append: "($8)" -%}')}`)}
|
|
41
|
-
`)}
|
|
42
|
-
`)}
|
|
43
|
-
`)}
|
|
44
|
-
`)}
|
|
45
|
-
|
|
46
|
-
${e("{%- assign labels = labelsString | split: '($8)' -%}")}
|
|
47
|
-
${e("{%- assign colorStrings = colorArraysString | split: '($8)' -%}")}
|
|
48
|
-
${e("{%- assign imageUrls = imageUrlsString | split: '($8)' -%}")}
|
|
49
|
-
|
|
50
|
-
${t("optionTitle == option.name",`
|
|
51
|
-
${e(`{%- assign variantPresetString = "${o}" -%}`)}
|
|
52
|
-
${e('{%- assign optionName = option.name | replace: "\'", "'" | replace: \'"\', """ -%}')}
|
|
53
|
-
${e("{%- assign items = variantPresetString | split:'($2)' -%}")}
|
|
54
|
-
${e("{%- assign type = 'dropdown' -%}")}
|
|
55
|
-
${s("item in items",`
|
|
56
|
-
${e("{%- assign itemPreset = item | split:'($1)' -%}")}
|
|
57
|
-
${t("itemPreset[0] == optionName",e("{%- assign type = itemPreset[1] -%}"))}
|
|
58
|
-
${t('itemPreset[0] == "base"',e("{%- assign type = itemPreset[1] -%}"))}
|
|
59
|
-
`)}
|
|
60
|
-
${e("{%- assign optionRendered = true -%}")}
|
|
61
|
-
${n({showDropdown:!0})}
|
|
62
|
-
`)}
|
|
63
|
-
`)}
|
|
64
|
-
|
|
65
|
-
${t("optionRendered == false",n({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
|
|
66
|
-
`};export{renderOptionValuesOld};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
let OPTION_VALUES_DELIMITER="|||";export{OPTION_VALUES_DELIMITER};
|