@useinsider/guido 3.17.0-beta.3ff6ea0 → 3.17.0-beta.6255bfc
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 +12 -6
- package/dist/components/Guido.vue.js +2 -2
- package/dist/components/Guido.vue2.js +31 -30
- package/dist/components/organisms/extensions/recommendation/AssignStrategyDrawer.vue.js +18 -0
- package/dist/components/organisms/extensions/recommendation/AssignStrategyDrawer.vue2.js +66 -0
- package/dist/composables/useCustomInterfaceAppearance.js +52 -38
- package/dist/composables/useRecommendation.js +52 -44
- package/dist/composables/useStripo.js +14 -14
- package/dist/config/migrator/index.js +8 -9
- package/dist/config/migrator/recommendation/compositionMapper.js +20 -20
- package/dist/config/migrator/recommendation/extractors.js +24 -29
- package/dist/config/migrator/recommendation/htmlBuilder.js +130 -116
- package/dist/config/migrator/recommendation/settingsMapper.js +19 -17
- package/dist/config/migrator/recommendationMigrator.js +15 -16
- package/dist/enums/academy.js +2 -1
- package/dist/enums/date.js +4 -3
- package/dist/enums/extensions/recommendationBlock.js +4 -1
- package/dist/extensions/Blocks/Recommendation/block.js +26 -21
- package/dist/extensions/Blocks/Recommendation/constants/blockIds.js +1 -1
- package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +1 -1
- package/dist/extensions/Blocks/Recommendation/constants/defaultConfig.js +26 -25
- package/dist/extensions/Blocks/Recommendation/constants/selectors.js +28 -34
- package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +256 -323
- package/dist/extensions/Blocks/Recommendation/controls/main/index.js +178 -165
- package/dist/extensions/Blocks/Recommendation/controls/main/strategy.js +142 -0
- package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +0 -1
- package/dist/extensions/Blocks/Recommendation/extension.js +29 -31
- package/dist/extensions/Blocks/Recommendation/services/configService.js +35 -35
- package/dist/extensions/Blocks/Recommendation/settingsPanel.js +4 -23
- package/dist/extensions/Blocks/Recommendation/store/recommendation.js +251 -110
- package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +3 -3
- package/dist/extensions/Blocks/Recommendation/templates/utils.js +107 -85
- package/dist/extensions/Blocks/common-control.js +22 -19
- package/dist/guido.css +1 -1
- package/dist/services/recommendationApi.js +75 -30
- package/dist/src/@types/config/schemas.d.ts +12 -0
- package/dist/src/components/organisms/extensions/recommendation/AssignStrategyDrawer.vue.d.ts +3 -0
- package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
- package/dist/src/composables/useConfig.d.ts +2 -0
- package/dist/src/composables/useRecommendation.d.ts +1 -0
- package/dist/src/config/migrator/recommendation/extractors.d.ts +0 -8
- package/dist/src/enums/academy.d.ts +1 -0
- package/dist/src/enums/extensions/recommendationBlock.d.ts +2 -0
- package/dist/src/extensions/Blocks/Recommendation/constants/blockIds.d.ts +1 -2
- package/dist/src/extensions/Blocks/Recommendation/constants/controlIds.d.ts +0 -7
- package/dist/src/extensions/Blocks/Recommendation/constants/defaultConfig.d.ts +7 -7
- package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +2 -2
- package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +0 -10
- package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +0 -10
- package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +0 -1
- package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +15 -3
- package/dist/src/extensions/Blocks/Recommendation/controls/main/strategy.d.ts +30 -0
- package/dist/src/extensions/Blocks/Recommendation/controls/main/utils.d.ts +0 -1
- package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +206 -10
- package/dist/src/extensions/Blocks/Recommendation/types/nodeConfig.d.ts +6 -0
- package/dist/src/extensions/Blocks/common-control.d.ts +4 -1
- package/dist/src/mock/api/recommendation-strategies.d.ts +63 -0
- package/dist/src/services/recommendationApi.d.ts +4 -1
- package/dist/src/stores/config.d.ts +18 -0
- package/dist/src/utils/strategyInfoBox.d.ts +22 -0
- package/dist/static/assets/icons/line-change.svg.js +5 -0
- package/dist/static/assets/icons/line-delete.svg.js +5 -0
- package/dist/static/assets/icons/line-plus.svg.js +5 -0
- package/dist/static/styles/components/recommendation-strategy.css.js +188 -0
- package/dist/static/styles/customEditorStyle.css.js +1 -3
- package/dist/utils/dateUtil.js +29 -10
- package/dist/utils/strategyInfoBox.js +37 -0
- package/dist/utils/templatePreparation.js +37 -34
- package/package.json +2 -1
- package/dist/config/migrator/recommendationTitleMigrator.js +0 -119
- package/dist/extensions/Blocks/Recommendation/controls/title/index.js +0 -44
- package/dist/extensions/Blocks/Recommendation/templates/titleRows.js +0 -33
- package/dist/src/config/migrator/recommendationTitleMigrator.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/controls/title/index.d.ts +0 -86
- package/dist/src/extensions/Blocks/Recommendation/templates/titleRows.d.ts +0 -13
|
@@ -1,30 +1,29 @@
|
|
|
1
1
|
import { BlockId as f } from "../../enums/block.js";
|
|
2
|
-
import { ATTR_RECOMMENDATION_TITLE as b } from "../../extensions/Blocks/Recommendation/constants/selectors.js";
|
|
3
2
|
import { useTemplateStore as y } from "../../stores/template.js";
|
|
4
|
-
import { mapComposition as
|
|
5
|
-
import { extractCurrencyFromBlock as v, extractTitleText as C,
|
|
6
|
-
import { buildBlockHtml as
|
|
7
|
-
import { parseRecommendationId as
|
|
8
|
-
import { mapSettings as
|
|
9
|
-
const
|
|
10
|
-
function
|
|
3
|
+
import { mapComposition as b } from "./recommendation/compositionMapper.js";
|
|
4
|
+
import { extractCurrencyFromBlock as v, extractTitleText as C, extractCardBgColor as M, isPartnerManagedBlock as S } from "./recommendation/extractors.js";
|
|
5
|
+
import { buildBlockHtml as w } from "./recommendation/htmlBuilder.js";
|
|
6
|
+
import { parseRecommendationId as x, parseLegacyConfig as R } from "./recommendation/parseLegacyConfig.js";
|
|
7
|
+
import { mapSettings as T } from "./recommendation/settingsMapper.js";
|
|
8
|
+
const h = 'td[esd-dev-product-config][class*="ins-recommendation-v3-block-"]:not(.recommendation-block-v2), td.product-block[esd-handler-name*="EmailRecommendationV3"][esd-dev-product-config]:not(.recommendation-block-v2)';
|
|
9
|
+
function B(i, t, a) {
|
|
11
10
|
var d;
|
|
12
|
-
const o =
|
|
11
|
+
const o = x(t);
|
|
13
12
|
if (o === null)
|
|
14
13
|
return console.warn(
|
|
15
14
|
"[RecommendationMigrator] Skipping block — missing/invalid `ins-recommendation-v3-campaign-id`"
|
|
16
15
|
), !1;
|
|
17
|
-
const r =
|
|
16
|
+
const r = R(t);
|
|
18
17
|
if (!r)
|
|
19
18
|
return console.warn(
|
|
20
19
|
`[RecommendationMigrator] Aborting block id=${o} — \`esd-dev-product-config\` missing or unable to be parsed`
|
|
21
20
|
), !1;
|
|
22
21
|
const n = a[String(o)] ?? {
|
|
23
22
|
currencySettings: v(t)
|
|
24
|
-
}, c =
|
|
25
|
-
e.titleVariable || (e.visibility[b] = M(t));
|
|
26
|
-
const g = R(t), p = {
|
|
23
|
+
}, c = T(n, r, o), e = b((d = r.composition) == null ? void 0 : d.variables), l = C(t), g = M(t), p = {
|
|
27
24
|
...c,
|
|
25
|
+
// Legacy blocks predate RRS — never strategy-backed.
|
|
26
|
+
strategyId: "",
|
|
28
27
|
composition: e.composition,
|
|
29
28
|
visibility: e.visibility,
|
|
30
29
|
textTrimming: e.anyTextTrimming
|
|
@@ -35,7 +34,7 @@ function E(i, t, a) {
|
|
|
35
34
|
<td class="esd-structure" align="left">
|
|
36
35
|
<table width="100%" cellpadding="0" cellspacing="0">
|
|
37
36
|
<tbody>
|
|
38
|
-
<tr>${
|
|
37
|
+
<tr>${w({
|
|
39
38
|
nodeConfig: p,
|
|
40
39
|
composition: e,
|
|
41
40
|
cardBg: g,
|
|
@@ -57,7 +56,7 @@ function E(i, t, a) {
|
|
|
57
56
|
), !1) : (t.parentNode.replaceChild(s, t), !0);
|
|
58
57
|
}
|
|
59
58
|
function q(i, t = {}) {
|
|
60
|
-
const a = new DOMParser(), o = a.parseFromString(i, "text/html"), r = Array.from(o.querySelectorAll(
|
|
59
|
+
const a = new DOMParser(), o = a.parseFromString(i, "text/html"), r = Array.from(o.querySelectorAll(h));
|
|
61
60
|
try {
|
|
62
61
|
y().$patch((e) => {
|
|
63
62
|
e.migrations = {
|
|
@@ -72,7 +71,7 @@ function q(i, t = {}) {
|
|
|
72
71
|
let n = 0;
|
|
73
72
|
return r.forEach((c) => {
|
|
74
73
|
try {
|
|
75
|
-
|
|
74
|
+
B(a, c, t) && (n += 1);
|
|
76
75
|
} catch (e) {
|
|
77
76
|
console.error("[RecommendationMigrator] Unexpected error migrating block:", e);
|
|
78
77
|
}
|
package/dist/enums/academy.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
const e = "https://academy.insiderone.com", o = {
|
|
2
2
|
EMAIL_EDITOR: `${e}/docs/email-drag-and-drop-editor`,
|
|
3
3
|
GLOBAL_UNSUBSCRIBE: `${e}/docs/global-unsubscribe-preference-center`,
|
|
4
|
-
AMP_FOR_EMAILS: `${e}/docs/amp-for-emails
|
|
4
|
+
AMP_FOR_EMAILS: `${e}/docs/amp-for-emails`,
|
|
5
|
+
EMAIL_RECOMMENDATION_BLOCK: `${e}/docs/new-editor-email-recommendation-block`
|
|
5
6
|
};
|
|
6
7
|
export {
|
|
7
8
|
o as ACADEMY_LINKS
|
package/dist/enums/date.js
CHANGED
|
@@ -2,7 +2,10 @@ import { useTranslations as r } from "../../composables/useTranslations.js";
|
|
|
2
2
|
const l = {
|
|
3
3
|
RECOMMENDATION_API_URL: "https://recommendationv2.api.useinsider.com",
|
|
4
4
|
// Relative path → same-origin as the embedding inone dashboard.
|
|
5
|
-
PRODUCT_ATTRIBUTES_PATH: "/product-attributes/get-attributes"
|
|
5
|
+
PRODUCT_ATTRIBUTES_PATH: "/product-attributes/get-attributes",
|
|
6
|
+
RECOMMENDATION_STRATEGIES_PATH: "/api/recommendation-strategies",
|
|
7
|
+
// Panel route of the Recommendation Strategies listing.
|
|
8
|
+
RECOMMENDATION_STRATEGIES_PANEL_PATH: "/discovery/recommendation-strategies"
|
|
6
9
|
}, c = {
|
|
7
10
|
CLIENT_ID: "clientId"
|
|
8
11
|
}, d = () => {
|
|
@@ -1,25 +1,27 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
var R = Object.defineProperty;
|
|
2
|
+
var B = (a, c, t) => c in a ? R(a, c, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[c] = t;
|
|
3
|
+
var p = (a, c, t) => B(a, typeof c != "symbol" ? c + "" : c, t);
|
|
4
|
+
import { useConfig as D } from "../../../composables/useConfig.js";
|
|
5
|
+
import { BlockId as y } from "../../../enums/block.js";
|
|
6
|
+
import { getMigrationBannerHtml as C } from "../../../utils/migrationBannerHtml.js";
|
|
6
7
|
import { Block as b, BlockCompositionType as A, ModificationDescription as g } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
8
|
+
import { CURRENT_CONFIG_VERSION as E, PRE_RRS_CONFIG_VERSION as S } from "./constants/defaultConfig.js";
|
|
9
|
+
import { regenerateMobileProductRows as N } from "./controls/main/utils.js";
|
|
10
|
+
import { ensureMobileCssRulesExist as h, setMobileLayoutOptOut as f, hasMobileLayoutOptOut as O } from "./controls/mobileLayout/cssRules.js";
|
|
9
11
|
import { RecommendationConfigService as s } from "./services/configService.js";
|
|
10
12
|
import { useRecommendationExtensionStore as d } from "./store/recommendation.js";
|
|
11
|
-
import { getDefaultTemplate as
|
|
12
|
-
import { useRecommendationBlockWarning as
|
|
13
|
-
const _ =
|
|
13
|
+
import { getDefaultTemplate as M } from "./templates/grid/template.js";
|
|
14
|
+
import { useRecommendationBlockWarning as w } from "./useRecommendationBlockWarning.js";
|
|
15
|
+
const _ = y.Recommendation, m = "recommendation-block-v2", u = "recommendation-id", I = "hide-price";
|
|
14
16
|
let k = !1;
|
|
15
|
-
class
|
|
17
|
+
class K extends b {
|
|
16
18
|
constructor() {
|
|
17
19
|
super();
|
|
18
20
|
/**
|
|
19
21
|
* Stores the ID generated in getTemplate() so onCreated() can reuse it.
|
|
20
22
|
* This avoids generating a new (different) ID in onCreated().
|
|
21
23
|
*/
|
|
22
|
-
|
|
24
|
+
p(this, "_pendingBlockId", null);
|
|
23
25
|
}
|
|
24
26
|
getId() {
|
|
25
27
|
return _;
|
|
@@ -39,7 +41,7 @@ class P extends b {
|
|
|
39
41
|
);
|
|
40
42
|
}
|
|
41
43
|
getSettingsPanelTitleHtml() {
|
|
42
|
-
return
|
|
44
|
+
return C(
|
|
43
45
|
_,
|
|
44
46
|
this.api.translate("Recommendation Block"),
|
|
45
47
|
this.api.translate("This block is switched from the Old Version to the New Version. We recommend you check the Recommendation block and test your message to ensure it works properly.")
|
|
@@ -63,7 +65,7 @@ class P extends b {
|
|
|
63
65
|
*/
|
|
64
66
|
getTemplate() {
|
|
65
67
|
const t = this._generateNextId();
|
|
66
|
-
return this._pendingBlockId = t,
|
|
68
|
+
return this._pendingBlockId = t, M(t);
|
|
67
69
|
}
|
|
68
70
|
/**
|
|
69
71
|
* Called when a new block is dropped into the template
|
|
@@ -89,12 +91,15 @@ class P extends b {
|
|
|
89
91
|
const { config: n, wasFreshDrop: o } = s.initializeConfig(
|
|
90
92
|
this.api,
|
|
91
93
|
t,
|
|
92
|
-
{
|
|
94
|
+
{
|
|
95
|
+
recommendationId: i,
|
|
96
|
+
configVersion: D().isFeatureEnabled("reusableRecommendationStrategy") ? E : S
|
|
97
|
+
}
|
|
93
98
|
), r = d();
|
|
94
99
|
if (r.setCurrentBlock(i), this._stampHidePrice(t, n.priceHideIfSameAsDiscounted), o) {
|
|
95
|
-
|
|
100
|
+
h(this.api);
|
|
96
101
|
const l = this._getBlockElement(t);
|
|
97
|
-
l && (f(this.api, l, !0),
|
|
102
|
+
l && (f(this.api, l, !0), N({
|
|
98
103
|
currentNode: t,
|
|
99
104
|
documentModifier: this.api.getDocumentModifier()
|
|
100
105
|
}));
|
|
@@ -121,11 +126,11 @@ class P extends b {
|
|
|
121
126
|
}
|
|
122
127
|
this._healLingeringDuplicate(t), s.needsMigration(t) && this._migrateFromLegacy(t), this._healHidePriceAttr(t);
|
|
123
128
|
try {
|
|
124
|
-
k || (
|
|
129
|
+
k || (h(this.api), k = !0);
|
|
125
130
|
const e = s.getConfig(t), i = this._getBlockElement(t);
|
|
126
131
|
if (i) {
|
|
127
132
|
const n = !e.mobileLayoutEnabled;
|
|
128
|
-
|
|
133
|
+
O(i) !== n && f(this.api, i, n);
|
|
129
134
|
}
|
|
130
135
|
} catch {
|
|
131
136
|
}
|
|
@@ -155,7 +160,7 @@ class P extends b {
|
|
|
155
160
|
*/
|
|
156
161
|
_warnIfMultipleBlocks() {
|
|
157
162
|
try {
|
|
158
|
-
|
|
163
|
+
w().warnIfMultipleBlocks(this.api.getDocumentRootHtmlNode());
|
|
159
164
|
} catch {
|
|
160
165
|
}
|
|
161
166
|
}
|
|
@@ -333,5 +338,5 @@ class P extends b {
|
|
|
333
338
|
}
|
|
334
339
|
export {
|
|
335
340
|
_ as BLOCK_ID,
|
|
336
|
-
|
|
341
|
+
K as RecommendationBlock
|
|
337
342
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var b = /* @__PURE__ */ ((r) => (r.BUTTON = "recommendation-block-button", r.NAME = "recommendation-block-name", r.PRICE = "recommendation-block-price", r.OLD_PRICE = "recommendation-block-old-price", r.OMNIBUS_PRICE = "recommendation-block-omnibus-price", r.OMNIBUS_DISCOUNT = "recommendation-block-omnibus-discount", r.IMAGE = "recommendation-block-image", r.CUSTOM_ATTRIBUTE = "recommendation-block-custom-attribute", r
|
|
1
|
+
var b = /* @__PURE__ */ ((r) => (r.BUTTON = "recommendation-block-button", r.NAME = "recommendation-block-name", r.PRICE = "recommendation-block-price", r.OLD_PRICE = "recommendation-block-old-price", r.OMNIBUS_PRICE = "recommendation-block-omnibus-price", r.OMNIBUS_DISCOUNT = "recommendation-block-omnibus-discount", r.IMAGE = "recommendation-block-image", r.CUSTOM_ATTRIBUTE = "recommendation-block-custom-attribute", r))(b || {});
|
|
2
2
|
export {
|
|
3
3
|
b as RecommendationBlockId
|
|
4
4
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var o = /* @__PURE__ */ ((c) => (c.BLOCK_BACKGROUND = "recommendation-block-background-color-control", c.BUTTON_ALIGN = "recommendation-block-button-align-control", c.BUTTON_BORDER = "recommendation-block-button-border-control", c.BUTTON_BORDER_RADIUS = "recommendation-block-button-border-radius-control", c.BUTTON_COLOR = "recommendation-block-button-color-control", c.BUTTON_FIT_TO_CONTENT = "recommendation-block-button-fit-to-content-control", c.BUTTON_FONT_FAMILY = "recommendation-block-button-font-family-control", c.BUTTON_MARGINS = "recommendation-block-button-margins-control", c.BUTTON_PADDINGS = "recommendation-block-button-paddings-control", c.BUTTON_TEXT = "recommendation-block-button-text-control", c.BUTTON_TEXT_SIZE = "recommendation-block-button-text-size-control", c.BUTTON_TEXT_STYLE_AND_FONT_COLOR = "recommendation-block-button-text-style-and-font-color-control", c.NAME_ALIGN = "recommendation-block-name-align-control", c.NAME_BACKGROUND = "recommendation-block-name-background-control", c.NAME_COLOR = "recommendation-block-name-color-control", c.NAME_FONT_FAMILY = "recommendation-block-name-font-family-control", c.NAME_PADDINGS = "recommendation-block-name-paddings-control", c.NAME_SIZE = "recommendation-block-name-size-control", c.NAME_STYLE = "recommendation-block-name-style-control", c.NAME_TEXT_TRIM = "recommendation-block-name-text-trim-control", c.PRICE_ALIGN = "recommendation-block-price-align-control", c.PRICE_BACKGROUND = "recommendation-block-price-background-control", c.PRICE_COLOR = "recommendation-block-price-color-control", c.PRICE_FONT_FAMILY = "recommendation-block-price-font-family-control", c.PRICE_PADDINGS = "recommendation-block-price-paddings-control", c.PRICE_SIZE = "recommendation-block-price-size-control", c.PRICE_STYLE = "recommendation-block-price-style-control", c.OLD_PRICE_ALIGN = "recommendation-block-old-price-align-control", c.OLD_PRICE_BACKGROUND = "recommendation-block-old-price-background-control", c.OLD_PRICE_COLOR = "recommendation-block-old-price-color-control", c.OLD_PRICE_FONT_FAMILY = "recommendation-block-old-price-font-family-control", c.OLD_PRICE_PADDINGS = "recommendation-block-old-price-paddings-control", c.OLD_PRICE_SIZE = "recommendation-block-old-price-size-control", c.OLD_PRICE_STYLE = "recommendation-block-old-price-style-control", c.OMNIBUS_PRICE_ALIGN = "recommendation-block-omnibus-price-align-control", c.OMNIBUS_PRICE_BACKGROUND = "recommendation-block-omnibus-price-background-control", c.OMNIBUS_PRICE_COLOR = "recommendation-block-omnibus-price-color-control", c.OMNIBUS_PRICE_FONT_FAMILY = "recommendation-block-omnibus-price-font-family-control", c.OMNIBUS_PRICE_PADDINGS = "recommendation-block-omnibus-price-paddings-control", c.OMNIBUS_PRICE_SIZE = "recommendation-block-omnibus-price-size-control", c.OMNIBUS_PRICE_STYLE = "recommendation-block-omnibus-price-style-control", c.OMNIBUS_PRICE_TEXT_BEFORE = "recommendation-block-omnibus-price-text-before-control", c.OMNIBUS_PRICE_TEXT_AFTER = "recommendation-block-omnibus-price-text-after-control", c.OMNIBUS_DISCOUNT_ALIGN = "recommendation-block-omnibus-discount-align-control", c.OMNIBUS_DISCOUNT_BACKGROUND = "recommendation-block-omnibus-discount-background-control", c.OMNIBUS_DISCOUNT_COLOR = "recommendation-block-omnibus-discount-color-control", c.OMNIBUS_DISCOUNT_FONT_FAMILY = "recommendation-block-omnibus-discount-font-family-control", c.OMNIBUS_DISCOUNT_PADDINGS = "recommendation-block-omnibus-discount-paddings-control", c.OMNIBUS_DISCOUNT_SIZE = "recommendation-block-omnibus-discount-size-control", c.OMNIBUS_DISCOUNT_STYLE = "recommendation-block-omnibus-discount-style-control", c.OMNIBUS_DISCOUNT_TEXT_BEFORE = "recommendation-block-omnibus-discount-text-before-control", c.OMNIBUS_DISCOUNT_TEXT_AFTER = "recommendation-block-omnibus-discount-text-after-control", c.IMAGE_SIZE = "recommendation-block-image-size-control", c.IMAGE_MARGINS = "recommendation-block-image-margins-control", c.CUSTOM_ATTR_ALIGN = "recommendation-block-custom-attr-align-control", c.CUSTOM_ATTR_BACKGROUND = "recommendation-block-custom-attr-background-control", c.CUSTOM_ATTR_COLOR = "recommendation-block-custom-attr-color-control", c.CUSTOM_ATTR_FONT_FAMILY = "recommendation-block-custom-attr-font-family-control", c.CUSTOM_ATTR_PADDINGS = "recommendation-block-custom-attr-paddings-control", c.CUSTOM_ATTR_SIZE = "recommendation-block-custom-attr-size-control", c.CUSTOM_ATTR_STYLE = "recommendation-block-custom-attr-style-control", c.CUSTOM_ATTR_TEXT_TRIM = "recommendation-block-custom-attr-text-trim-control", c.
|
|
1
|
+
var o = /* @__PURE__ */ ((c) => (c.BLOCK_BACKGROUND = "recommendation-block-background-color-control", c.BUTTON_ALIGN = "recommendation-block-button-align-control", c.BUTTON_BORDER = "recommendation-block-button-border-control", c.BUTTON_BORDER_RADIUS = "recommendation-block-button-border-radius-control", c.BUTTON_COLOR = "recommendation-block-button-color-control", c.BUTTON_FIT_TO_CONTENT = "recommendation-block-button-fit-to-content-control", c.BUTTON_FONT_FAMILY = "recommendation-block-button-font-family-control", c.BUTTON_MARGINS = "recommendation-block-button-margins-control", c.BUTTON_PADDINGS = "recommendation-block-button-paddings-control", c.BUTTON_TEXT = "recommendation-block-button-text-control", c.BUTTON_TEXT_SIZE = "recommendation-block-button-text-size-control", c.BUTTON_TEXT_STYLE_AND_FONT_COLOR = "recommendation-block-button-text-style-and-font-color-control", c.NAME_ALIGN = "recommendation-block-name-align-control", c.NAME_BACKGROUND = "recommendation-block-name-background-control", c.NAME_COLOR = "recommendation-block-name-color-control", c.NAME_FONT_FAMILY = "recommendation-block-name-font-family-control", c.NAME_PADDINGS = "recommendation-block-name-paddings-control", c.NAME_SIZE = "recommendation-block-name-size-control", c.NAME_STYLE = "recommendation-block-name-style-control", c.NAME_TEXT_TRIM = "recommendation-block-name-text-trim-control", c.PRICE_ALIGN = "recommendation-block-price-align-control", c.PRICE_BACKGROUND = "recommendation-block-price-background-control", c.PRICE_COLOR = "recommendation-block-price-color-control", c.PRICE_FONT_FAMILY = "recommendation-block-price-font-family-control", c.PRICE_PADDINGS = "recommendation-block-price-paddings-control", c.PRICE_SIZE = "recommendation-block-price-size-control", c.PRICE_STYLE = "recommendation-block-price-style-control", c.OLD_PRICE_ALIGN = "recommendation-block-old-price-align-control", c.OLD_PRICE_BACKGROUND = "recommendation-block-old-price-background-control", c.OLD_PRICE_COLOR = "recommendation-block-old-price-color-control", c.OLD_PRICE_FONT_FAMILY = "recommendation-block-old-price-font-family-control", c.OLD_PRICE_PADDINGS = "recommendation-block-old-price-paddings-control", c.OLD_PRICE_SIZE = "recommendation-block-old-price-size-control", c.OLD_PRICE_STYLE = "recommendation-block-old-price-style-control", c.OMNIBUS_PRICE_ALIGN = "recommendation-block-omnibus-price-align-control", c.OMNIBUS_PRICE_BACKGROUND = "recommendation-block-omnibus-price-background-control", c.OMNIBUS_PRICE_COLOR = "recommendation-block-omnibus-price-color-control", c.OMNIBUS_PRICE_FONT_FAMILY = "recommendation-block-omnibus-price-font-family-control", c.OMNIBUS_PRICE_PADDINGS = "recommendation-block-omnibus-price-paddings-control", c.OMNIBUS_PRICE_SIZE = "recommendation-block-omnibus-price-size-control", c.OMNIBUS_PRICE_STYLE = "recommendation-block-omnibus-price-style-control", c.OMNIBUS_PRICE_TEXT_BEFORE = "recommendation-block-omnibus-price-text-before-control", c.OMNIBUS_PRICE_TEXT_AFTER = "recommendation-block-omnibus-price-text-after-control", c.OMNIBUS_DISCOUNT_ALIGN = "recommendation-block-omnibus-discount-align-control", c.OMNIBUS_DISCOUNT_BACKGROUND = "recommendation-block-omnibus-discount-background-control", c.OMNIBUS_DISCOUNT_COLOR = "recommendation-block-omnibus-discount-color-control", c.OMNIBUS_DISCOUNT_FONT_FAMILY = "recommendation-block-omnibus-discount-font-family-control", c.OMNIBUS_DISCOUNT_PADDINGS = "recommendation-block-omnibus-discount-paddings-control", c.OMNIBUS_DISCOUNT_SIZE = "recommendation-block-omnibus-discount-size-control", c.OMNIBUS_DISCOUNT_STYLE = "recommendation-block-omnibus-discount-style-control", c.OMNIBUS_DISCOUNT_TEXT_BEFORE = "recommendation-block-omnibus-discount-text-before-control", c.OMNIBUS_DISCOUNT_TEXT_AFTER = "recommendation-block-omnibus-discount-text-after-control", c.IMAGE_SIZE = "recommendation-block-image-size-control", c.IMAGE_MARGINS = "recommendation-block-image-margins-control", c.CUSTOM_ATTR_ALIGN = "recommendation-block-custom-attr-align-control", c.CUSTOM_ATTR_BACKGROUND = "recommendation-block-custom-attr-background-control", c.CUSTOM_ATTR_COLOR = "recommendation-block-custom-attr-color-control", c.CUSTOM_ATTR_FONT_FAMILY = "recommendation-block-custom-attr-font-family-control", c.CUSTOM_ATTR_PADDINGS = "recommendation-block-custom-attr-paddings-control", c.CUSTOM_ATTR_SIZE = "recommendation-block-custom-attr-size-control", c.CUSTOM_ATTR_STYLE = "recommendation-block-custom-attr-style-control", c.CUSTOM_ATTR_TEXT_TRIM = "recommendation-block-custom-attr-text-trim-control", c.SYNC_INFO_MESSAGE = "recommendation-block-sync-info-message", c))(o || {});
|
|
2
2
|
export {
|
|
3
3
|
o as RecommendationControlId
|
|
4
4
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DEFAULT_COLUMN_SPACING as
|
|
2
|
-
import { ATTR_PRODUCT_IMAGE as o, ATTR_PRODUCT_NAME as t, ATTR_PRODUCT_OLD_PRICE as _, ATTR_PRODUCT_PRICE as T, ATTR_PRODUCT_OMNIBUS_PRICE as r, ATTR_PRODUCT_OMNIBUS_DISCOUNT as I, ATTR_PRODUCT_BUTTON as i
|
|
3
|
-
const C = {
|
|
1
|
+
import { DEFAULT_COLUMN_SPACING as R, DEFAULT_ROW_SPACING as n, DEFAULT_MOBILE_ROW_SPACING as s, DEFAULT_MOBILE_COLUMN_SPACING as O, DEFAULT_MOBILE_CARDS_IN_ROW as e, DEFAULT_CARDS_IN_ROW as U } from "./layout.js";
|
|
2
|
+
import { ATTR_PRODUCT_IMAGE as o, ATTR_PRODUCT_NAME as t, ATTR_PRODUCT_OLD_PRICE as _, ATTR_PRODUCT_PRICE as T, ATTR_PRODUCT_OMNIBUS_PRICE as r, ATTR_PRODUCT_OMNIBUS_DISCOUNT as I, ATTR_PRODUCT_BUTTON as i } from "./selectors.js";
|
|
3
|
+
const C = 1, l = 2, a = {
|
|
4
4
|
code: "USD",
|
|
5
5
|
symbol: "USD",
|
|
6
6
|
alignment: "after",
|
|
@@ -10,10 +10,10 @@ const C = {
|
|
|
10
10
|
}, D = {
|
|
11
11
|
textBefore: "",
|
|
12
12
|
textAfter: ""
|
|
13
|
-
},
|
|
13
|
+
}, A = {
|
|
14
14
|
textBefore: "",
|
|
15
15
|
textAfter: ""
|
|
16
|
-
},
|
|
16
|
+
}, c = [
|
|
17
17
|
o,
|
|
18
18
|
t,
|
|
19
19
|
_,
|
|
@@ -21,8 +21,7 @@ const C = {
|
|
|
21
21
|
r,
|
|
22
22
|
I,
|
|
23
23
|
i
|
|
24
|
-
],
|
|
25
|
-
[A]: !0,
|
|
24
|
+
], E = {
|
|
26
25
|
[o]: !0,
|
|
27
26
|
[t]: !0,
|
|
28
27
|
[T]: !0,
|
|
@@ -30,31 +29,32 @@ const C = {
|
|
|
30
29
|
[r]: !1,
|
|
31
30
|
[I]: !1,
|
|
32
31
|
[i]: !0
|
|
33
|
-
},
|
|
32
|
+
}, m = {
|
|
34
33
|
// Settings
|
|
35
34
|
strategy: "mostPopular",
|
|
36
35
|
productIds: [],
|
|
37
36
|
size: "6",
|
|
38
37
|
shuffleProducts: !1,
|
|
39
38
|
language: "en_US",
|
|
40
|
-
currency:
|
|
39
|
+
currency: a,
|
|
41
40
|
filters: [],
|
|
41
|
+
strategyId: "",
|
|
42
42
|
// Layout
|
|
43
43
|
layout: "grid",
|
|
44
44
|
cardsInRow: U,
|
|
45
45
|
mobileCardsInRow: e,
|
|
46
46
|
mobileLayoutEnabled: !1,
|
|
47
47
|
previousMobileCardsInRow: e,
|
|
48
|
-
columnSpacing:
|
|
49
|
-
rowSpacing:
|
|
48
|
+
columnSpacing: R,
|
|
49
|
+
rowSpacing: n,
|
|
50
50
|
mobileColumnSpacing: O,
|
|
51
51
|
mobileRowSpacing: s,
|
|
52
52
|
// Composition
|
|
53
|
-
composition:
|
|
54
|
-
visibility:
|
|
53
|
+
composition: c,
|
|
54
|
+
visibility: E,
|
|
55
55
|
// Element settings
|
|
56
56
|
omnibusPrice: D,
|
|
57
|
-
omnibusDiscount:
|
|
57
|
+
omnibusDiscount: A,
|
|
58
58
|
textTrimming: !1,
|
|
59
59
|
// Price placement (block-level, affects all cards)
|
|
60
60
|
// Default ON = current stacked look, so existing templates are unaffected.
|
|
@@ -64,18 +64,19 @@ const C = {
|
|
|
64
64
|
// of "false" (the actual hiding happens server-side at send).
|
|
65
65
|
priceHideIfSameAsDiscounted: !1,
|
|
66
66
|
// Meta
|
|
67
|
-
//
|
|
68
|
-
//
|
|
69
|
-
configVersion:
|
|
67
|
+
// Pre-RRS fallback only — block.ts stamps the era of the live session over
|
|
68
|
+
// it on creation. See PRE_RRS_CONFIG_VERSION.
|
|
69
|
+
configVersion: C,
|
|
70
70
|
recommendationId: 0
|
|
71
|
-
}, u = [11, 12]
|
|
71
|
+
}, u = [11, 12];
|
|
72
72
|
export {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
73
|
+
l as CURRENT_CONFIG_VERSION,
|
|
74
|
+
c as DEFAULT_COMPOSITION,
|
|
75
|
+
a as DEFAULT_CURRENCY,
|
|
76
|
+
m as DEFAULT_NODE_CONFIG,
|
|
77
|
+
A as DEFAULT_OMNIBUS_DISCOUNT,
|
|
78
78
|
D as DEFAULT_OMNIBUS_PRICE,
|
|
79
|
-
|
|
80
|
-
u as EXCLUDED_ALGORITHM_IDS
|
|
79
|
+
E as DEFAULT_VISIBILITY,
|
|
80
|
+
u as EXCLUDED_ALGORITHM_IDS,
|
|
81
|
+
C as PRE_RRS_CONFIG_VERSION
|
|
81
82
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
const
|
|
1
|
+
const t = ".recommendation-block-v2", c = ".ins-recommendation-product-container", o = ".ins-recommendation-desktop-container", n = ".ins-recommendation-mobile-container", _ = ".ins-recommendation-mobile-row", R = "reco-v3-button", r = "ins-skip-compile", e = {
|
|
2
2
|
CURRENCY: "currency",
|
|
3
3
|
SYMBOL: "currency-symbol",
|
|
4
4
|
ALIGNMENT: "currency-alignment",
|
|
5
5
|
THOUSAND_SEPARATOR: "currency-thousand-separator",
|
|
6
6
|
DECIMAL_SEPARATOR: "currency-decimal-separator",
|
|
7
7
|
DECIMAL_COUNT: "currency-decimal-count"
|
|
8
|
-
},
|
|
8
|
+
}, O = "productImage", A = "productName", s = "productPrice", E = "productOldPrice", i = "productOmnibusPrice", C = "productOmnibusDiscount", u = "productButton", a = "customAttr:", I = "data-custom-attributes", S = "data-card-composition", m = "product-attr", U = ".recommendation-attribute-row", d = "data-attribute-type", N = "product_attribute.", T = /* @__PURE__ */ new Set([
|
|
9
9
|
"name",
|
|
10
10
|
// productName
|
|
11
11
|
"price",
|
|
@@ -20,40 +20,34 @@ const c = ".recommendation-block-v2", n = ".ins-recommendation-product-container
|
|
|
20
20
|
// productOmnibusPrice
|
|
21
21
|
"omnibus_discount"
|
|
22
22
|
// productOmnibusDiscount
|
|
23
|
-
]),
|
|
24
|
-
...
|
|
23
|
+
]), P = /* @__PURE__ */ new Set([
|
|
24
|
+
...T,
|
|
25
25
|
"currency",
|
|
26
26
|
"discount"
|
|
27
27
|
]);
|
|
28
28
|
export {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
C as
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
c as
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
R as MOBILE_CONTAINER_SELECTOR,
|
|
54
|
-
r as MOBILE_ROW_SELECTOR,
|
|
55
|
-
M as PRODUCT_ATTRIBUTE_PREFIX,
|
|
56
|
-
l as RECOMMENDATION_VARIABLE_BUILTIN_ATTRIBUTES,
|
|
57
|
-
P as SELECTOR_ATTRIBUTE_ROW,
|
|
58
|
-
m as SELECTOR_TITLE_CELL
|
|
29
|
+
a as ATTR_CUSTOM_PREFIX,
|
|
30
|
+
d as ATTR_DATA_ATTRIBUTE_TYPE,
|
|
31
|
+
S as ATTR_DATA_CARD_COMPOSITION,
|
|
32
|
+
I as ATTR_DATA_CUSTOM_ATTRIBUTES,
|
|
33
|
+
m as ATTR_PRODUCT_ATTR,
|
|
34
|
+
u as ATTR_PRODUCT_BUTTON,
|
|
35
|
+
O as ATTR_PRODUCT_IMAGE,
|
|
36
|
+
A as ATTR_PRODUCT_NAME,
|
|
37
|
+
E as ATTR_PRODUCT_OLD_PRICE,
|
|
38
|
+
C as ATTR_PRODUCT_OMNIBUS_DISCOUNT,
|
|
39
|
+
i as ATTR_PRODUCT_OMNIBUS_PRICE,
|
|
40
|
+
s as ATTR_PRODUCT_PRICE,
|
|
41
|
+
t as BLOCK_ROOT_SELECTOR,
|
|
42
|
+
T as BUILT_IN_DEFAULT_ATTRIBUTES,
|
|
43
|
+
c as CONTAINER_SELECTOR,
|
|
44
|
+
R as CSS_CLASS_RECO_BUTTON,
|
|
45
|
+
r as CSS_CLASS_SKIP_COMPILE,
|
|
46
|
+
e as CURRENCY_ATTR,
|
|
47
|
+
o as DESKTOP_CONTAINER_SELECTOR,
|
|
48
|
+
n as MOBILE_CONTAINER_SELECTOR,
|
|
49
|
+
_ as MOBILE_ROW_SELECTOR,
|
|
50
|
+
N as PRODUCT_ATTRIBUTE_PREFIX,
|
|
51
|
+
P as RECOMMENDATION_VARIABLE_BUILTIN_ATTRIBUTES,
|
|
52
|
+
U as SELECTOR_ATTRIBUTE_ROW
|
|
59
53
|
};
|