@useinsider/guido 3.23.0-beta.31d0f5f → 3.23.0-beta.9f6bfbf
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 +1 -0
- package/dist/@types/config/schemas.js +17 -15
- package/dist/components/Guido.vue.js +1 -1
- package/dist/components/Guido.vue2.js +58 -56
- package/dist/composables/useModuleRepair.js +14 -12
- package/dist/config/migrator/index.js +16 -15
- package/dist/config/migrator/itemsPriceFormatMigrator.js +20 -0
- package/dist/extensions/Blocks/Items/block.js +115 -77
- package/dist/extensions/Blocks/Items/constants/currency.js +59 -14
- package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +33 -22
- package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +62 -51
- package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +18 -17
- package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +42 -31
- package/dist/extensions/Blocks/Items/controls/priceFormat.js +145 -0
- package/dist/extensions/Blocks/Items/controls/settingsControl.js +141 -120
- package/dist/extensions/Blocks/Items/enums/controlEnums.js +1 -1
- package/dist/extensions/Blocks/Items/extension.js +9 -8
- package/dist/extensions/Blocks/Items/items.css.js +19 -0
- package/dist/extensions/Blocks/Items/settingsPanel.js +34 -25
- package/dist/extensions/Blocks/Items/template.js +250 -212
- package/dist/extensions/Blocks/Items/utils/priceFormatOps.js +185 -0
- package/dist/extensions/Blocks/Recommendation/utils/priceFormatter.js +1 -0
- package/dist/guido.css +1 -1
- package/dist/package.json.js +1 -1
- package/dist/src/@types/config/schemas.d.ts +4 -0
- package/dist/src/composables/useConfig.d.ts +2 -0
- package/dist/src/config/migrator/index.d.ts +4 -1
- package/dist/src/config/migrator/itemsPriceFormatMigrator.d.ts +1 -0
- package/dist/src/extensions/Blocks/Items/block.d.ts +6 -9
- package/dist/src/extensions/Blocks/Items/constants/currency.d.ts +32 -0
- package/dist/src/extensions/Blocks/Items/controls/priceFormat.d.ts +23 -0
- package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +1 -0
- package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +1 -0
- package/dist/src/extensions/Blocks/Items/template.d.ts +4 -1
- package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +3 -0
- package/dist/src/extensions/Blocks/Items/utils/priceFormatOps.d.ts +61 -0
- package/dist/src/extensions/Blocks/Recommendation/utils/priceFormatter.d.ts +12 -0
- package/dist/src/stores/config.d.ts +20 -0
- package/dist/src/utils/itemsCurrencyRepair.d.ts +5 -1
- package/dist/utils/itemsCurrencyRepair.js +29 -24
- package/dist/utils/pairProductVariables.js +119 -99
- package/package.json +1 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { ModificationDescription as C, UIElementType as T, UEAttr as L } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
|
|
2
2
|
import { CommonControl as g } from "../../../common-control.js";
|
|
3
|
-
import { ItemsBlockControlId as
|
|
3
|
+
import { ItemsBlockControlId as p, ItemsBlockId as _ } from "../../enums/controlEnums.js";
|
|
4
4
|
import { productPairs as I } from "../../enums/productEnums.js";
|
|
5
|
-
import { getItemsBlockConfig as
|
|
6
|
-
|
|
5
|
+
import { getItemsBlockConfig as m, setItemsBlockConfig as D, escapeReplacement as h } from "../../utils/nodeConfigUtils.js";
|
|
6
|
+
import { isNewPriceFormatBlock as O } from "../priceFormat.js";
|
|
7
|
+
const N = p.PRICE_FORMATTED_PRICE, d = {
|
|
7
8
|
FORMATTED_PRICE: "formattedPrice"
|
|
8
9
|
};
|
|
9
|
-
class
|
|
10
|
+
class G extends g {
|
|
10
11
|
getId() {
|
|
11
|
-
return
|
|
12
|
+
return N;
|
|
12
13
|
}
|
|
13
14
|
getTemplate() {
|
|
14
15
|
return `
|
|
15
|
-
<div class="container ${
|
|
16
|
+
<div class="container ${p.PRICE_FORMATTED_PRICE}">
|
|
16
17
|
${this._getFormattedPrice()}
|
|
17
18
|
</div>
|
|
18
19
|
`;
|
|
@@ -24,14 +25,14 @@ class k extends g {
|
|
|
24
25
|
}
|
|
25
26
|
onTemplateNodeUpdated(e) {
|
|
26
27
|
super.onTemplateNodeUpdated(e), this.handleBlockInstanceChange(() => {
|
|
27
|
-
const t =
|
|
28
|
+
const t = m(this.currentNode);
|
|
28
29
|
this.api.updateValues({ [d.FORMATTED_PRICE]: (t == null ? void 0 : t.priceFormatted) ?? !0 });
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
_onFormattedPriceChange(e) {
|
|
32
|
-
if (console.debug("Formatted price changed to: ", e), !this.currentNode)
|
|
33
|
+
if (console.debug("Formatted price changed to: ", e), !this.currentNode || O(this.currentNode))
|
|
33
34
|
return;
|
|
34
|
-
const t =
|
|
35
|
+
const t = m(this.currentNode), n = (t == null ? void 0 : t.type) ?? "CART_ITEMS", o = (t == null ? void 0 : t.priceSinglePrice) ?? !1, r = I.PAIRS_FOR_EXTENSION.price[n], i = I.PAIRS_FOR_EXTENSION.originalPrice[n], [a, R] = e ? [
|
|
35
36
|
o ? r.DEFAULT_SINGLE_PRICE : r.DEFAULT_PRICE,
|
|
36
37
|
o ? r.DEFAULT_SINGLE_PRICE_FORMATTED : r.DEFAULT_PRICE_FORMATTED
|
|
37
38
|
] : [
|
|
@@ -39,12 +40,12 @@ class k extends g {
|
|
|
39
40
|
o ? r.DEFAULT_SINGLE_PRICE : r.DEFAULT_PRICE
|
|
40
41
|
], l = o ? i.DEFAULT_SINGLE_PRICE : i.DEFAULT_PRICE, P = o ? i.DEFAULT_SINGLE_PRICE_FORMATTED : i.DEFAULT_PRICE_FORMATTED, [F, A] = e ? [l, P] : [P, l], s = this.api.getDocumentModifier();
|
|
41
42
|
D(this.currentNode, this.api, { priceFormatted: e }, s);
|
|
42
|
-
const
|
|
43
|
-
((
|
|
43
|
+
const c = this.currentNode.closest(".items-block");
|
|
44
|
+
((c == null ? void 0 : c.querySelectorAll(
|
|
44
45
|
`[esd-extension-block-id="${_.PRICE}"]`
|
|
45
46
|
)) || []).forEach((E) => {
|
|
46
|
-
this._updatePriceBlock(s, E, a,
|
|
47
|
-
}), ((
|
|
47
|
+
this._updatePriceBlock(s, E, a, R, e);
|
|
48
|
+
}), ((c == null ? void 0 : c.querySelectorAll(
|
|
48
49
|
`[esd-extension-block-id="${_.ORIGINAL_PRICE}"]`
|
|
49
50
|
)) || []).forEach((E) => {
|
|
50
51
|
this._updatePriceBlock(s, E, F, A, e);
|
|
@@ -52,8 +53,8 @@ class k extends g {
|
|
|
52
53
|
`Updated price to ${e ? "formatted" : "unformatted"}`
|
|
53
54
|
));
|
|
54
55
|
}
|
|
55
|
-
_updatePriceBlock(e, t,
|
|
56
|
-
const i = `data-formated="${r ? "true" : "false"}"`, a = t.getInnerHTML().trim().replace(
|
|
56
|
+
_updatePriceBlock(e, t, n, o, r) {
|
|
57
|
+
const i = `data-formated="${r ? "true" : "false"}"`, a = t.getInnerHTML().trim().replace(n, h(o)).replace(/data-formated=(?:"[^"]*"|'[^']*')/g, i);
|
|
57
58
|
e.modifyHtml(t).setInnerHtml(a);
|
|
58
59
|
}
|
|
59
60
|
_getFormattedPrice() {
|
|
@@ -69,6 +70,6 @@ class k extends g {
|
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
72
|
export {
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
N as CONTROL_BLOCK_ID,
|
|
74
|
+
G as PriceFormattedPriceControl
|
|
74
75
|
};
|
|
@@ -1,74 +1,85 @@
|
|
|
1
|
-
import { ModificationDescription as S, UIElementType as _, UEAttr as
|
|
2
|
-
import { CommonControl as
|
|
3
|
-
import { ItemsBlockControlId as
|
|
4
|
-
import { productPairs as
|
|
5
|
-
import { getItemsBlockConfig as
|
|
6
|
-
|
|
1
|
+
import { ModificationDescription as S, UIElementType as _, UEAttr as h } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
|
|
2
|
+
import { CommonControl as N } from "../../../common-control.js";
|
|
3
|
+
import { ItemsBlockControlId as L, ItemsBlockId as g } from "../../enums/controlEnums.js";
|
|
4
|
+
import { productPairs as T } from "../../enums/productEnums.js";
|
|
5
|
+
import { getItemsBlockConfig as a, setItemsBlockConfig as A, escapeReplacement as F } from "../../utils/nodeConfigUtils.js";
|
|
6
|
+
import { isNewPriceFormatBlock as u, applyPriceFormatChange as D } from "../priceFormat.js";
|
|
7
|
+
const f = L.PRICE_SINGLE_PRICE, P = {
|
|
7
8
|
SINGLE_PRICE: "singlePrice"
|
|
8
9
|
};
|
|
9
|
-
class
|
|
10
|
+
class x extends N {
|
|
10
11
|
getId() {
|
|
11
|
-
return
|
|
12
|
+
return f;
|
|
12
13
|
}
|
|
13
14
|
getTemplate() {
|
|
14
15
|
return `
|
|
15
|
-
<div class="container ${
|
|
16
|
+
<div class="container ${L.PRICE_SINGLE_PRICE}">
|
|
16
17
|
${this._getSinglePrice()}
|
|
17
18
|
</div>
|
|
18
19
|
`;
|
|
19
20
|
}
|
|
20
21
|
onRender() {
|
|
21
|
-
this.forgetLastPanelNode(), this.api.onValueChanged(
|
|
22
|
+
this.forgetLastPanelNode(), this.api.onValueChanged(P.SINGLE_PRICE, (e) => {
|
|
22
23
|
this._onSinglePriceChange(e);
|
|
23
24
|
});
|
|
24
25
|
}
|
|
25
26
|
onTemplateNodeUpdated(e) {
|
|
26
27
|
super.onTemplateNodeUpdated(e), this.handleBlockInstanceChange(() => {
|
|
27
|
-
const
|
|
28
|
-
this.api.updateValues({ [
|
|
28
|
+
const i = a(this.currentNode);
|
|
29
|
+
this.api.updateValues({ [P.SINGLE_PRICE]: (i == null ? void 0 : i.priceSinglePrice) ?? !1 });
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
_onSinglePriceChange(e) {
|
|
32
|
-
|
|
33
|
+
var I;
|
|
34
|
+
if (console.debug("Single price changed to: ", e), u(this.currentNode)) {
|
|
35
|
+
((I = a(this.currentNode)) == null ? void 0 : I.priceSinglePrice) !== e && D(
|
|
36
|
+
this.currentNode,
|
|
37
|
+
this.api,
|
|
38
|
+
{ priceSinglePrice: e },
|
|
39
|
+
`Updated price to ${e ? "single" : "total"} price`
|
|
40
|
+
);
|
|
33
41
|
return;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
42
|
+
}
|
|
43
|
+
if (!this.currentNode)
|
|
44
|
+
return;
|
|
45
|
+
const i = a(this.currentNode), c = (i == null ? void 0 : i.type) ?? "CART_ITEMS", r = (i == null ? void 0 : i.priceFormatted) ?? !1, t = T.PAIRS_FOR_EXTENSION.price[c], n = T.PAIRS_FOR_EXTENSION.originalPrice[c], [l, R] = e ? [
|
|
46
|
+
r ? t.DEFAULT_PRICE_FORMATTED : t.DEFAULT_PRICE,
|
|
47
|
+
r ? t.DEFAULT_SINGLE_PRICE_FORMATTED : t.DEFAULT_SINGLE_PRICE
|
|
37
48
|
] : [
|
|
38
|
-
r ?
|
|
39
|
-
r ?
|
|
40
|
-
],
|
|
41
|
-
|
|
49
|
+
r ? t.DEFAULT_SINGLE_PRICE_FORMATTED : t.DEFAULT_SINGLE_PRICE,
|
|
50
|
+
r ? t.DEFAULT_PRICE_FORMATTED : t.DEFAULT_PRICE
|
|
51
|
+
], p = r ? n.DEFAULT_PRICE_FORMATTED : n.DEFAULT_PRICE, d = r ? n.DEFAULT_SINGLE_PRICE_FORMATTED : n.DEFAULT_SINGLE_PRICE, [C, m] = e ? [p, d] : [d, p], s = this.api.getDocumentModifier();
|
|
52
|
+
A(this.currentNode, this.api, { priceSinglePrice: e }, s);
|
|
42
53
|
const o = this.currentNode.closest(".items-block");
|
|
43
54
|
((o == null ? void 0 : o.querySelectorAll(
|
|
44
|
-
`[esd-extension-block-id="${
|
|
55
|
+
`[esd-extension-block-id="${g.PRICE}"]`
|
|
45
56
|
)) || []).forEach((E) => {
|
|
46
|
-
this._updatePriceBlock(s, E, l,
|
|
57
|
+
this._updatePriceBlock(s, E, l, R, e);
|
|
47
58
|
}), ((o == null ? void 0 : o.querySelectorAll(
|
|
48
|
-
`[esd-extension-block-id="${
|
|
59
|
+
`[esd-extension-block-id="${g.ORIGINAL_PRICE}"]`
|
|
49
60
|
)) || []).forEach((E) => {
|
|
50
|
-
this._updatePriceBlock(s, E,
|
|
61
|
+
this._updatePriceBlock(s, E, C, m, e);
|
|
51
62
|
}), s.apply(new S(
|
|
52
63
|
`Updated price to ${e ? "single" : "total"} price`
|
|
53
64
|
));
|
|
54
65
|
}
|
|
55
|
-
_updatePriceBlock(e,
|
|
56
|
-
const n = `data-single_price="${
|
|
57
|
-
e.modifyHtml(
|
|
66
|
+
_updatePriceBlock(e, i, c, r, t) {
|
|
67
|
+
const n = `data-single_price="${t ? "true" : "false"}"`, l = i.getInnerHTML().trim().replace(c, F(r)).replace(/data-single_price=(?:"[^"]*"|'[^']*')/g, n);
|
|
68
|
+
e.modifyHtml(i).setInnerHtml(l);
|
|
58
69
|
}
|
|
59
70
|
_getSinglePrice() {
|
|
60
71
|
return `
|
|
61
72
|
<div class="display-flex align-items-center justify-content-between">
|
|
62
73
|
<${_.LABEL}
|
|
63
|
-
${
|
|
74
|
+
${h.LABEL.text}="${this.api.translate("Show Single Product Price")}"
|
|
64
75
|
>
|
|
65
76
|
</${_.LABEL}>
|
|
66
|
-
${this._GuToggle(
|
|
77
|
+
${this._GuToggle(P.SINGLE_PRICE)}
|
|
67
78
|
</div>
|
|
68
79
|
`;
|
|
69
80
|
}
|
|
70
81
|
}
|
|
71
82
|
export {
|
|
72
|
-
|
|
73
|
-
|
|
83
|
+
f as CONTROL_BLOCK_ID,
|
|
84
|
+
x as PriceSinglePriceControl
|
|
74
85
|
};
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
var f = Object.defineProperty;
|
|
2
|
+
var P = (o, i, t) => i in o ? f(o, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[i] = t;
|
|
3
|
+
var E = (o, i, t) => P(o, typeof i != "symbol" ? i + "" : i, t);
|
|
4
|
+
import { currencyOperators as m, currencyDecimalCounts as _ } from "../../../../enums/extensions/recommendationBlock.js";
|
|
5
|
+
import { UEAttr as d, ModificationDescription as L } from "../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
|
|
6
|
+
import { CommonControl as N } from "../../common-control.js";
|
|
7
|
+
import { priceFormatFromConfig as T, normalizeDecimalCount as U, isNewPriceFormatRoot as M } from "../constants/currency.js";
|
|
8
|
+
import { ItemsBlockControlId as I, ItemsBlockId as R } from "../enums/controlEnums.js";
|
|
9
|
+
import { getItemsBlockConfig as h, getItemsBlockContainer as g, setItemsBlockConfig as F } from "../utils/nodeConfigUtils.js";
|
|
10
|
+
import { planPriceFormatOps as w, buildPriceFormatSnapshot as b, priceTextsFromConfig as x, samePriceText as y, replacePriceText as k } from "../utils/priceFormatOps.js";
|
|
11
|
+
const B = I.PRICE_FORMAT, a = {
|
|
12
|
+
THOUSAND_SEPARATOR: "priceThousandSeparator",
|
|
13
|
+
DECIMAL_SEPARATOR: "priceDecimalSeparator",
|
|
14
|
+
DECIMAL_COUNT: "priceDecimalCount"
|
|
15
|
+
}, H = [
|
|
16
|
+
["price", R.PRICE],
|
|
17
|
+
["originalPrice", R.ORIGINAL_PRICE]
|
|
18
|
+
];
|
|
19
|
+
function V(o) {
|
|
20
|
+
return H.flatMap(([i, t]) => o.querySelectorAll(
|
|
21
|
+
`[esd-extension-block-id="${t}"]`
|
|
22
|
+
).flatMap((r) => {
|
|
23
|
+
const c = r.querySelector("p");
|
|
24
|
+
return c ? [{ kind: i, paragraph: c }] : [];
|
|
25
|
+
}));
|
|
26
|
+
}
|
|
27
|
+
function Q(o) {
|
|
28
|
+
return M(g(o));
|
|
29
|
+
}
|
|
30
|
+
function K(o, i, t, e) {
|
|
31
|
+
const r = g(o);
|
|
32
|
+
if (!r)
|
|
33
|
+
return;
|
|
34
|
+
const c = { ...h(o), ...t }, C = V(r), p = w(b({
|
|
35
|
+
rootAttr: (n) => r.getAttribute(n),
|
|
36
|
+
config: c,
|
|
37
|
+
paragraphs: C.map(({ kind: n, paragraph: s }) => ({
|
|
38
|
+
kind: n,
|
|
39
|
+
attr: (u) => s.getAttribute(u),
|
|
40
|
+
text: s.getInnerText()
|
|
41
|
+
}))
|
|
42
|
+
}), { convertLegacy: !0 }), S = p.texts ?? x(c), l = i.getDocumentModifier();
|
|
43
|
+
F(o, i, { ...t, ...p.configPatch }, l);
|
|
44
|
+
const D = l.modifyHtml(r);
|
|
45
|
+
Object.entries(p.rootSet).forEach(([n, s]) => {
|
|
46
|
+
D.setAttribute(n, s);
|
|
47
|
+
}), C.forEach(({ kind: n, paragraph: s }) => {
|
|
48
|
+
const u = l.modifyHtml(s), A = s.getInnerText().trim();
|
|
49
|
+
p.paragraphRemove.forEach((O) => {
|
|
50
|
+
u.removeAttribute(O);
|
|
51
|
+
}), y(A, S[n]) || u.setInnerHtml(k(s.getInnerHTML(), A, S[n]));
|
|
52
|
+
}), l.apply(new L(e));
|
|
53
|
+
}
|
|
54
|
+
class X extends N {
|
|
55
|
+
constructor() {
|
|
56
|
+
super(...arguments);
|
|
57
|
+
// The format of the last write, until Stripo hands back the updated node: guards the echo
|
|
58
|
+
// of the select this control itself repaints on an auto-swap.
|
|
59
|
+
E(this, "lastWritten", null);
|
|
60
|
+
}
|
|
61
|
+
getId() {
|
|
62
|
+
return B;
|
|
63
|
+
}
|
|
64
|
+
getTemplate() {
|
|
65
|
+
return `
|
|
66
|
+
<div class="${I.PRICE_FORMAT}">
|
|
67
|
+
${this._getSelectRow("Thousand Separator", a.THOUSAND_SEPARATOR, m)}
|
|
68
|
+
${this._getSelectRow("Decimal Separator", a.DECIMAL_SEPARATOR, m)}
|
|
69
|
+
${this._getSelectRow("Decimal Count", a.DECIMAL_COUNT, _)}
|
|
70
|
+
</div>
|
|
71
|
+
`;
|
|
72
|
+
}
|
|
73
|
+
onRender() {
|
|
74
|
+
this.forgetLastPanelNode(), this.api.setUIEAttribute(a.THOUSAND_SEPARATOR, d.SELECTPICKER.items, m), this.api.setUIEAttribute(a.DECIMAL_SEPARATOR, d.SELECTPICKER.items, m), this.api.setUIEAttribute(a.DECIMAL_COUNT, d.SELECTPICKER.items, _), this.api.onValueChanged(a.THOUSAND_SEPARATOR, (t) => {
|
|
75
|
+
this._onThousandSeparatorChange(t);
|
|
76
|
+
}), this.api.onValueChanged(a.DECIMAL_SEPARATOR, (t) => {
|
|
77
|
+
this._onDecimalSeparatorChange(t);
|
|
78
|
+
}), this.api.onValueChanged(a.DECIMAL_COUNT, (t) => {
|
|
79
|
+
this._onDecimalCountChange(t);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
onTemplateNodeUpdated(t) {
|
|
83
|
+
super.onTemplateNodeUpdated(t), this.lastWritten = null, this.handleBlockInstanceChange(() => {
|
|
84
|
+
this.api.updateValues(this._formValues(T(h(this.currentNode))));
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
onDestroy() {
|
|
88
|
+
super.onDestroy(), this.lastWritten = null;
|
|
89
|
+
}
|
|
90
|
+
_onThousandSeparatorChange(t) {
|
|
91
|
+
const e = this._currentFormat();
|
|
92
|
+
if (t === e.thousandSeparator)
|
|
93
|
+
return;
|
|
94
|
+
const r = t === e.decimalSeparator;
|
|
95
|
+
this._write({
|
|
96
|
+
...e,
|
|
97
|
+
thousandSeparator: t,
|
|
98
|
+
decimalSeparator: r ? e.thousandSeparator : e.decimalSeparator
|
|
99
|
+
}, "Updated price thousand separator"), r && this.api.updateValues({ [a.DECIMAL_SEPARATOR]: e.thousandSeparator });
|
|
100
|
+
}
|
|
101
|
+
_onDecimalSeparatorChange(t) {
|
|
102
|
+
const e = this._currentFormat();
|
|
103
|
+
if (t === e.decimalSeparator)
|
|
104
|
+
return;
|
|
105
|
+
const r = t === e.thousandSeparator;
|
|
106
|
+
this._write({
|
|
107
|
+
...e,
|
|
108
|
+
decimalSeparator: t,
|
|
109
|
+
thousandSeparator: r ? e.decimalSeparator : e.thousandSeparator
|
|
110
|
+
}, "Updated price decimal separator"), r && this.api.updateValues({ [a.THOUSAND_SEPARATOR]: e.decimalSeparator });
|
|
111
|
+
}
|
|
112
|
+
_onDecimalCountChange(t) {
|
|
113
|
+
const e = this._currentFormat(), r = U(t);
|
|
114
|
+
r !== e.decimalCount && this._write({ ...e, decimalCount: r }, "Updated price decimal count");
|
|
115
|
+
}
|
|
116
|
+
_currentFormat() {
|
|
117
|
+
return this.lastWritten ?? T(h(this.currentNode));
|
|
118
|
+
}
|
|
119
|
+
_write(t, e) {
|
|
120
|
+
this.lastWritten = t, K(this.currentNode, this.api, {
|
|
121
|
+
priceThousandSeparator: t.thousandSeparator,
|
|
122
|
+
priceDecimalSeparator: t.decimalSeparator,
|
|
123
|
+
priceDecimalCount: t.decimalCount
|
|
124
|
+
}, e);
|
|
125
|
+
}
|
|
126
|
+
_formValues(t) {
|
|
127
|
+
return {
|
|
128
|
+
[a.THOUSAND_SEPARATOR]: t.thousandSeparator,
|
|
129
|
+
[a.DECIMAL_SEPARATOR]: t.decimalSeparator,
|
|
130
|
+
[a.DECIMAL_COUNT]: String(t.decimalCount)
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
_getSelectRow(t, e, r) {
|
|
134
|
+
return this._GuTwoColumns([
|
|
135
|
+
this._GuLabel({ text: this.api.translate(t) }),
|
|
136
|
+
this._GuSelect({ name: e, placeholder: "", options: r })
|
|
137
|
+
], "no-separator");
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
export {
|
|
141
|
+
B as CONTROL_BLOCK_ID,
|
|
142
|
+
X as ItemsBlockPriceFormatControl,
|
|
143
|
+
K as applyPriceFormatChange,
|
|
144
|
+
Q as isNewPriceFormatBlock
|
|
145
|
+
};
|