@useinsider/guido 2.0.0-beta.da696d5 → 2.0.0-beta.dbde199

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.
Files changed (111) hide show
  1. package/dist/extensions/Blocks/Items/controls/cardComposition.js +13 -4
  2. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +158 -68
  3. package/dist/extensions/Blocks/Recommendation/constants.js +10 -1
  4. package/dist/extensions/Blocks/Recommendation/control.js +91 -61
  5. package/dist/extensions/Blocks/Recommendation/controls/cardBackgroundColorControl.js +68 -0
  6. package/dist/extensions/Blocks/Recommendation/controls/index.js +272 -0
  7. package/dist/extensions/Blocks/Recommendation/controls/nameTextTrimControl.js +74 -0
  8. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscountTextAfterControl.js +71 -0
  9. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscountTextBeforeControl.js +71 -0
  10. package/dist/extensions/Blocks/Recommendation/controls/omnibusPriceTextAfterControl.js +71 -0
  11. package/dist/extensions/Blocks/Recommendation/controls/omnibusPriceTextBeforeControl.js +71 -0
  12. package/dist/extensions/Blocks/Recommendation/controls/priceHideControl.js +60 -0
  13. package/dist/extensions/Blocks/Recommendation/controls/priceInlineLayoutControl.js +160 -0
  14. package/dist/extensions/Blocks/Recommendation/controls/spacingControl.js +188 -0
  15. package/dist/extensions/Blocks/Recommendation/extension.js +16 -40
  16. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +124 -71
  17. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +89 -65
  18. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +56 -19
  19. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +74 -45
  20. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +25 -0
  21. package/dist/extensions/Blocks/controlFactories.js +70 -70
  22. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +363 -290
  23. package/dist/package.json.js +1 -1
  24. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +54 -3
  25. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +41 -1
  26. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +5 -2
  27. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackgroundColorControl.d.ts +25 -0
  28. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +654 -0
  29. package/dist/src/extensions/Blocks/Recommendation/controls/nameTextTrimControl.d.ts +16 -0
  30. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscountTextAfterControl.d.ts +15 -0
  31. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscountTextBeforeControl.d.ts +15 -0
  32. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPriceTextAfterControl.d.ts +15 -0
  33. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPriceTextBeforeControl.d.ts +15 -0
  34. package/dist/src/extensions/Blocks/Recommendation/controls/priceHideControl.d.ts +16 -0
  35. package/dist/src/extensions/Blocks/Recommendation/controls/priceInlineLayoutControl.d.ts +50 -0
  36. package/dist/src/extensions/Blocks/Recommendation/controls/spacingControl.d.ts +60 -0
  37. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +3 -3
  38. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +1 -1
  39. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +15 -7
  40. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +19 -0
  41. package/dist/static/styles/components/wide-panel.css.js +0 -4
  42. package/dist/static/styles/customEditorStyle.css.js +13 -0
  43. package/package.json +3 -3
  44. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  45. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  46. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  47. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  48. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  49. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  50. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  51. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  52. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  53. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  54. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  55. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  56. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  57. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  58. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  59. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  60. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  61. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  62. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  63. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  64. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  65. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  66. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  67. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  68. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  69. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  70. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  71. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  72. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  73. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  74. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  75. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  76. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  77. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  78. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  79. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  80. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  81. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  82. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  83. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  84. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  85. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  86. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  87. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  88. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  89. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  90. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  91. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  92. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  93. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  94. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  95. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  96. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  97. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  98. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  99. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  100. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  101. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  102. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  103. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  104. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  105. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  106. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  107. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  108. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  109. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  110. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  111. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
@@ -1,9 +1,12 @@
1
- import { BlockType as t, BlockAttr as n } from "../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationBlockId as o } from "../constants.js";
3
- import { generateTemplate as l, prepareProductRows as s, spacer as d, DEFAULTS as p, getDefaultProducts as i } from "./templateUtils.js";
4
- import { DEFAULT_CARD_COMPOSITION as $ } from "./templateUtils.js";
1
+ import { BlockType as e, BlockAttr as o } from "../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
+ import { RecommendationBlockId as s, ATTR_PRODUCT_BUTTON as r, ATTR_PRODUCT_OMNIBUS_DISCOUNT as c, ATTR_PRODUCT_OMNIBUS_PRICE as p, ATTR_PRODUCT_OLD_PRICE as i, ATTR_PRODUCT_PRICE as d, ATTR_PRODUCT_NAME as T, ATTR_PRODUCT_IMAGE as b, ATTR_DATA_PRICE_INLINE as _ } from "../constants.js";
3
+ import { generateTemplate as O, prepareProductRows as u, spacer as C, DEFAULTS as f, getDefaultProducts as R } from "./templateUtils.js";
4
+ import { DEFAULT_CARD_COMPOSITION as A, DEFAULT_CARD_VISIBILITY as h } from "./templateUtils.js";
5
5
  const g = `
6
- <td align="left" class="ins-recommendation-v3-block-v2 esd-block-recommendation-v3-block es-p20">
6
+ <td
7
+ align="left"
8
+ class="ins-recommendation-v3-block-v2 es-p20"
9
+ ${_}="0">
7
10
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
8
11
  <tr>
9
12
  <td align="center">
@@ -22,18 +25,18 @@ const g = `
22
25
  cellspacing="0"
23
26
  border="0">
24
27
  <tbody>
25
- <${t.BLOCK_TEXT}
28
+ <${e.BLOCK_TEXT}
26
29
  class="es-p10t es-p10b es-p20l es-p20r"
27
30
  align="center">
28
31
  <p path="1" style="font-size: 28px; color: #333333;">
29
32
  <strong path="1,0">{-{-TITLE-}-}</strong>
30
33
  </p>
31
- </${t.BLOCK_TEXT}>
34
+ </${e.BLOCK_TEXT}>
32
35
  </tbody>
33
36
  </table>
34
37
  </td>
35
38
  </tr>
36
- ${d}
39
+ ${C}
37
40
  <tr>
38
41
  <td>
39
42
  <table
@@ -53,62 +56,82 @@ const g = `
53
56
  </tr>
54
57
  </table>
55
58
  </td>
56
- `, a = {
57
- productImage: (e) => `
58
- <${t.BLOCK_IMAGE}
59
- ${n.BLOCK_IMAGE.src}="${e.image_url}"
60
- ${n.BLOCK_IMAGE.alt}="${e.name}"
61
- ${n.BLOCK_IMAGE.href}="#"
59
+ `, n = {
60
+ [b]: (t) => `
61
+ <${e.BLOCK_IMAGE}
62
+ ${o.BLOCK_IMAGE.src}="${t.image_url}"
63
+ ${o.BLOCK_IMAGE.alt}="${t.name}"
64
+ ${o.BLOCK_IMAGE.href}="#"
62
65
  class="product-image"
63
66
  align="center"
64
67
  style="max-width: 100%; height: auto; margin: 0 auto;"
65
- esd-extension-block-id="${o.IMAGE}">
66
- </${t.BLOCK_IMAGE}>
68
+ esd-extension-block-id="${s.IMAGE}">
69
+ </${e.BLOCK_IMAGE}>
67
70
  `,
68
- productName: (e) => `
69
- <${t.BLOCK_TEXT}
70
- class="product-name"
71
+ [T]: (t) => `
72
+ <${e.BLOCK_TEXT}
73
+ class="product-name es-p10t es-p10b es-p15l es-p15r"
71
74
  align="center"
72
- style="font-size: 16px; color: #333333; font-weight: 600; padding: 15px 10px; text-align: center;"
73
- esd-extension-block-id="${o.NAME}">
74
- <p path="1" contenteditable="false">
75
- <strong path="1,0">${e.name}</strong>
75
+ esd-extension-block-id="${s.NAME}">
76
+ <p path="1" contenteditable="false" style="font-size: 16px; color: #333333;">
77
+ <strong path="1,0">${t.name}</strong>
76
78
  </p>
77
- </${t.BLOCK_TEXT}>
79
+ </${e.BLOCK_TEXT}>
78
80
  `,
79
- productPrice: () => `
80
- <${t.BLOCK_TEXT}
81
- class="product-price"
81
+ [d]: () => `
82
+ <${e.BLOCK_TEXT}
83
+ class="product-price es-p15l es-p15r"
82
84
  align="center"
83
- style="padding: 10px; text-align: center;"
84
- esd-extension-block-id="${o.PRICE}">
85
- <p path="1" contenteditable="false">
86
- <span class="current-price" style="font-size: 16px; color: #333333; font-weight: bold;">
87
- <strong path="1,0">18,00 TRY</strong>
88
- </span>
85
+ esd-extension-block-id="${s.PRICE}">
86
+ <p path="1" contenteditable="false" style="font-size: 16px; color: #333333;">
87
+ <strong path="1,0">18,00 TRY</strong>
89
88
  </p>
90
- </${t.BLOCK_TEXT}>
89
+ </${e.BLOCK_TEXT}>
91
90
  `,
92
- productOldPrice: () => `
93
- <${t.BLOCK_TEXT}
94
- class="product-old-price"
91
+ [i]: () => `
92
+ <${e.BLOCK_TEXT}
93
+ class="product-old-price es-p15l es-p15r"
95
94
  align="center"
96
- style="padding: 10px; text-align: center;"
97
- esd-extension-block-id="${o.OLD_PRICE}">
98
- <p path="1" contenteditable="false">
99
- <span class="old-price" style="font-size: 14px; color: #999999; text-decoration: line-through;">
100
- <s path="1,0">20,00 TRY</s>
101
- </span>
95
+ esd-extension-block-id="${s.OLD_PRICE}">
96
+ <p path="1" contenteditable="false" style="font-size: 14px; color: #999999;">
97
+ <s path="1,0">20,00 TRY</s>
102
98
  </p>
103
- </${t.BLOCK_TEXT}>
99
+ </${e.BLOCK_TEXT}>
104
100
  `,
105
- productButton: () => `
106
- <${t.BLOCK_BUTTON}
107
- ${n.BLOCK_BUTTON.href}="#"
108
- class="product-button"
101
+ [p]: () => `
102
+ <${e.BLOCK_TEXT}
103
+ class="product-omnibus-price es-p15l es-p15r"
109
104
  align="center"
110
- style="padding: 15px 10px 20px 10px; text-align: center;"
111
- esd-extension-block-id="${o.BUTTON}">
105
+ data-text-before="Lowest 30-day price: "
106
+ data-text-after=""
107
+ esd-extension-block-id="${s.OMNIBUS_PRICE}">
108
+ <p path="1" contenteditable="false" style="font-size: 12px; color: #666666;">
109
+ <span class="omnibus-text-before">Lowest 30-day price: </span>
110
+ <span class="omnibus-price-value">17,00 TRY</span>
111
+ <span class="omnibus-text-after"></span>
112
+ </p>
113
+ </${e.BLOCK_TEXT}>
114
+ `,
115
+ [c]: () => `
116
+ <${e.BLOCK_TEXT}
117
+ class="product-omnibus-discount es-p15l es-p15r"
118
+ align="center"
119
+ data-text-before=""
120
+ data-text-after=""
121
+ esd-extension-block-id="${s.OMNIBUS_DISCOUNT}">
122
+ <p path="1" contenteditable="false" style="font-size: 12px; color: #666666;">
123
+ <span class="omnibus-text-before"></span>
124
+ <span class="omnibus-discount-value">-6%</span>
125
+ <span class="omnibus-text-after"></span>
126
+ </p>
127
+ </${e.BLOCK_TEXT}>
128
+ `,
129
+ [r]: () => `
130
+ <${e.BLOCK_BUTTON}
131
+ ${o.BLOCK_BUTTON.href}="#"
132
+ class="product-button es-p10t es-p10b"
133
+ align="center"
134
+ esd-extension-block-id="${s.BUTTON}">
112
135
  <span class="es-button-border">
113
136
  <a
114
137
  href="#"
@@ -129,32 +152,33 @@ const g = `
129
152
  Buy
130
153
  </a>
131
154
  </span>
132
- </${t.BLOCK_BUTTON}>
155
+ </${e.BLOCK_BUTTON}>
133
156
  `
134
157
  };
135
158
  function x() {
136
- const e = i();
137
- return l(
159
+ const t = R();
160
+ return O(
138
161
  g,
139
- e,
162
+ t,
140
163
  3,
141
- a,
142
- p.TITLE
164
+ n,
165
+ f.TITLE
143
166
  );
144
167
  }
145
- function f(e, r, c) {
146
- return s(
147
- e,
148
- r,
168
+ function $(t, a, l) {
169
+ return u(
170
+ t,
149
171
  a,
150
- c
172
+ n,
173
+ l
151
174
  );
152
175
  }
153
176
  export {
154
- p as DEFAULTS,
155
- $ as DEFAULT_CARD_COMPOSITION,
177
+ f as DEFAULTS,
178
+ A as DEFAULT_CARD_COMPOSITION,
179
+ h as DEFAULT_CARD_VISIBILITY,
156
180
  g as default,
157
- i as getDefaultProducts,
181
+ R as getDefaultProducts,
158
182
  x as getDefaultTemplate,
159
- f as prepareProductRows
183
+ $ as prepareProductRows
160
184
  };
@@ -1,12 +1,13 @@
1
- import { prepareProductRows as n } from "./templateUtils.js";
2
- import { DEFAULTS as i, getDefaultProducts as p } from "./templateUtils.js";
3
- const a = `
1
+ import { ATTR_PRODUCT_BUTTON as o, ATTR_PRODUCT_OMNIBUS_DISCOUNT as a, ATTR_PRODUCT_OMNIBUS_PRICE as s, ATTR_PRODUCT_OLD_PRICE as l, ATTR_PRODUCT_PRICE as r, ATTR_PRODUCT_NAME as c, ATTR_PRODUCT_IMAGE as d } from "../constants.js";
2
+ import { prepareProductRows as i } from "./templateUtils.js";
3
+ import { DEFAULTS as f, getDefaultProducts as k } from "./templateUtils.js";
4
+ const g = `
4
5
  <td
5
6
  align="left"
6
7
  esd-extension-block-id="recommendation-block"
7
8
  esd-handler-name="esd-extension-RecommendationBlock"
8
- class="ins-recommendation-v3-block-v2 esd-block-recommendation-v3-block esd-extension-block es-p20"
9
- >
9
+ class="ins-recommendation-v3-block-v2 es-p20 esd-recommendation-block esd-extension-block esd-container-frame"
10
+ data-price-inline="0">
10
11
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
11
12
  <tr>
12
13
  <td align="center">
@@ -54,8 +55,8 @@ const a = `
54
55
  </tr>
55
56
  </table>
56
57
  </td>
57
- `, l = {
58
- productImage: (t) => `
58
+ `, p = {
59
+ [d]: (t) => `
59
60
  <tr>
60
61
  <td
61
62
  class="esd-block-image product-image"
@@ -73,7 +74,7 @@ const a = `
73
74
  </td>
74
75
  </tr>
75
76
  `,
76
- productName: (t) => `
77
+ [c]: (t) => `
77
78
  <tr>
78
79
  <td
79
80
  class="esd-block-text product-name"
@@ -88,7 +89,7 @@ const a = `
88
89
  </td>
89
90
  </tr>
90
91
  `,
91
- productPrice: () => `
92
+ [r]: () => `
92
93
  <tr>
93
94
  <td
94
95
  class="esd-block-text product-price"
@@ -103,7 +104,7 @@ const a = `
103
104
  </td>
104
105
  </tr>
105
106
  `,
106
- productOldPrice: () => `
107
+ [l]: () => `
107
108
  <tr>
108
109
  <td
109
110
  class="esd-block-text product-old-price"
@@ -118,7 +119,43 @@ const a = `
118
119
  </td>
119
120
  </tr>
120
121
  `,
121
- productButton: (t) => `
122
+ [s]: () => `
123
+ <tr>
124
+ <td
125
+ class="esd-block-text product-omnibus-price"
126
+ esd-extension-block-id="recommendation-block-omnibus-price"
127
+ data-text-before="Lowest 30-day price: "
128
+ data-text-after=""
129
+ align="center">
130
+ <p
131
+ path="1"
132
+ contenteditable="false"
133
+ style="font-size: 14px; color: #666666; text-align: center;"><span
134
+ class="omnibus-text-before">Lowest 30-day price: </span><span
135
+ class="omnibus-price-value">17,00 TRY</span><span
136
+ class="omnibus-text-after"></span></p>
137
+ </td>
138
+ </tr>
139
+ `,
140
+ [a]: () => `
141
+ <tr>
142
+ <td
143
+ class="esd-block-text product-omnibus-discount"
144
+ esd-extension-block-id="recommendation-block-omnibus-discount"
145
+ data-text-before=""
146
+ data-text-after=""
147
+ align="center">
148
+ <p
149
+ path="1"
150
+ contenteditable="false"
151
+ style="font-size: 14px; color: #666666; text-align: center;"><span
152
+ class="omnibus-text-before"></span><span
153
+ class="omnibus-discount-value">-6%</span><span
154
+ class="omnibus-text-after"></span></p>
155
+ </td>
156
+ </tr>
157
+ `,
158
+ [o]: (t) => `
122
159
  <tr>
123
160
  <td
124
161
  class="esd-block-button product-button"
@@ -136,17 +173,17 @@ const a = `
136
173
  </tr>
137
174
  `
138
175
  };
139
- function d(t, e, o) {
140
- return n(
176
+ function u(t, e, n) {
177
+ return i(
141
178
  t,
142
179
  e,
143
- l,
144
- o
180
+ p,
181
+ n
145
182
  );
146
183
  }
147
184
  export {
148
- i as DEFAULTS,
149
- a as default,
150
- p as getDefaultProducts,
151
- d as prepareProductRows
185
+ f as DEFAULTS,
186
+ g as default,
187
+ k as getDefaultProducts,
188
+ u as prepareProductRows
152
189
  };
@@ -1,18 +1,19 @@
1
- const R = {
1
+ import { ATTR_PRODUCT_IMAGE as h, ATTR_PRODUCT_NAME as C, ATTR_PRODUCT_OLD_PRICE as D, ATTR_PRODUCT_PRICE as b, ATTR_PRODUCT_OMNIBUS_PRICE as P, ATTR_PRODUCT_OMNIBUS_DISCOUNT as U, ATTR_PRODUCT_BUTTON as N } from "../constants.js";
2
+ const E = {
2
3
  TITLE: "You May Also Like!"
3
- }, O = `
4
+ }, I = `
4
5
  <tr>
5
- <td class="spacer" style="height: 20px;"></td>
6
+ <td class="spacer" style="height: 10px;"></td>
6
7
  </tr>
7
- `, w = `
8
- <tr>
8
+ `, A = `
9
+ <tr class="recommendation-product-row">
9
10
  <td>
10
11
  <table width="100%" height="100%" cellpadding="0" cellspacing="0" border="0">
11
12
  {-{-PRODUCTS-}-}
12
13
  </table>
13
14
  </td>
14
15
  </tr>
15
- `, i = `
16
+ `, o = `
16
17
  <td width="{-{-COLUMN_WIDTH-}-}" style="padding: 0 5px;" valign="top" height="100%">
17
18
  <table
18
19
  width="100%"
@@ -34,14 +35,24 @@ const R = {
34
35
  </tr>
35
36
  </table>
36
37
  </td>
37
- `, b = [
38
- "productImage",
39
- "productName",
40
- "productOldPrice",
41
- "productPrice",
42
- "productButton"
43
- ];
44
- function C() {
38
+ `, Y = [
39
+ h,
40
+ C,
41
+ D,
42
+ b,
43
+ P,
44
+ U,
45
+ N
46
+ ], S = {
47
+ [h]: !0,
48
+ [C]: !0,
49
+ [b]: !0,
50
+ [D]: !0,
51
+ [P]: !1,
52
+ [U]: !1,
53
+ [N]: !0
54
+ };
55
+ function M() {
45
56
  return [
46
57
  {
47
58
  name: "Product Name",
@@ -123,58 +134,76 @@ function C() {
123
134
  }
124
135
  ];
125
136
  }
126
- function N(p, r, e, l = b) {
127
- const n = (100 / r).toFixed(2), a = [];
128
- for (let o = 0; o < p.length; o += r)
129
- a.push(p.slice(o, o + r));
137
+ function f(a, r, e, l = Y) {
138
+ const s = (100 / r).toFixed(2), p = [];
139
+ for (let i = 0; i < a.length; i += r)
140
+ p.push(a.slice(i, i + r));
130
141
  let c = "";
131
- return a.forEach((o, _) => {
132
- _ > 0 && (c += O);
133
- let s = "", u = "", d = "", m = "", g = "";
134
- o.forEach((t) => {
135
- s += i.replace(
142
+ return p.forEach((i, w) => {
143
+ w > 0 && (c += I);
144
+ let n = "", u = "", d = "", T = "", m = "", _ = "", g = "";
145
+ i.forEach((t) => {
146
+ n += o.replace(
136
147
  "{-{-PRODUCT_CONTENT-}-}",
137
148
  e.productImage(t)
138
- ), u += i.replace(
149
+ ), u += o.replace(
139
150
  "{-{-PRODUCT_CONTENT-}-}",
140
151
  e.productName(t)
141
- ), d += i.replace(
152
+ ), d += o.replace(
142
153
  "{-{-PRODUCT_CONTENT-}-}",
143
154
  e.productPrice(t)
144
- ), m += i.replace(
155
+ ), T += o.replace(
145
156
  "{-{-PRODUCT_CONTENT-}-}",
146
157
  e.productOldPrice(t)
147
- ), g += i.replace(
158
+ ), m += o.replace(
159
+ "{-{-PRODUCT_CONTENT-}-}",
160
+ e.productOmnibusPrice(t)
161
+ ), _ += o.replace(
162
+ "{-{-PRODUCT_CONTENT-}-}",
163
+ e.productOmnibusDiscount(t)
164
+ ), g += o.replace(
148
165
  "{-{-PRODUCT_CONTENT-}-}",
149
166
  e.productButton(t)
150
167
  );
151
168
  });
152
- const T = {
153
- productImage: s,
169
+ const R = {
170
+ productImage: n,
154
171
  productName: u,
155
172
  productPrice: d,
156
- productOldPrice: m,
173
+ productOldPrice: T,
174
+ productOmnibusPrice: m,
175
+ productOmnibusDiscount: _,
157
176
  productButton: g
158
- }, h = l.filter((t) => !!T[t]).map((t) => `<tr>${T[t]}</tr>`).join("");
159
- c += w.replace("{-{-PRODUCTS-}-}", h);
160
- }), c.replaceAll("{-{-COLUMN_WIDTH-}-}", `${n}%`);
177
+ }, y = l.filter((t) => !!R[t]).map((t) => {
178
+ const O = S[t] ?? !0;
179
+ return `
180
+ <tr class="recommendation-attribute-row"
181
+ data-attribute-type="${t}"
182
+ data-visibility="${O ? "1" : "0"}"${O ? "" : ' style="display: none;"'}>
183
+ ${R[t]}
184
+ </tr>
185
+ `;
186
+ }).join("");
187
+ c += A.replace("{-{-PRODUCTS-}-}", y);
188
+ }), c.replaceAll("{-{-COLUMN_WIDTH-}-}", `${s}%`);
161
189
  }
162
- function P(p, r, e, l, n = R.TITLE, a) {
163
- const c = N(
190
+ function j(a, r, e, l, s = E.TITLE, p) {
191
+ const c = f(
164
192
  r,
165
193
  e,
166
194
  l,
167
- a
195
+ p
168
196
  );
169
- return p.replace("{-{-TITLE-}-}", n).replace("{-{-PRODUCT_ROWS-}-}", c);
197
+ return a.replace("{-{-TITLE-}-}", s).replace("{-{-PRODUCT_ROWS-}-}", c);
170
198
  }
171
199
  export {
172
- R as DEFAULTS,
173
- b as DEFAULT_CARD_COMPOSITION,
174
- P as generateTemplate,
175
- C as getDefaultProducts,
176
- N as prepareProductRows,
177
- i as productCardWrapper,
178
- w as productRow,
179
- O as spacer
200
+ E as DEFAULTS,
201
+ Y as DEFAULT_CARD_COMPOSITION,
202
+ S as DEFAULT_CARD_VISIBILITY,
203
+ j as generateTemplate,
204
+ M as getDefaultProducts,
205
+ f as prepareProductRows,
206
+ o as productCardWrapper,
207
+ A as productRow,
208
+ I as spacer
180
209
  };
@@ -0,0 +1,25 @@
1
+ function a(n) {
2
+ return "getInnerHTML" in n && typeof n.getInnerHTML == "function" ? n.getInnerHTML() : "innerHTML" in n ? n.innerHTML : "";
3
+ }
4
+ function H(n, t) {
5
+ if (!n)
6
+ return t;
7
+ const r = a(n);
8
+ if (!r || r.trim() === "" || !/<(strong|em|u|s|b|i)\b/i.test(r))
9
+ return t;
10
+ const i = [], s = [];
11
+ let o = r.trim();
12
+ for (; ; ) {
13
+ const u = o.match(/^<(strong|em|u|s|b|i)(\s[^>]*)?>(.*)$/is);
14
+ if (!u)
15
+ break;
16
+ const [, e, f = "", g] = u, c = new RegExp(`</${e}>$`, "i");
17
+ if (!c.test(g))
18
+ break;
19
+ i.push(`<${e}${f}>`), s.unshift(`</${e}>`), o = g.replace(c, "").trim();
20
+ }
21
+ return i.length > 0 ? i.join("") + t + s.join("") : t;
22
+ }
23
+ export {
24
+ H as preserveTextStyles
25
+ };