@useinsider/guido 2.0.0-beta.143201d → 2.0.0-beta.1c331b8

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 (188) hide show
  1. package/README.md +2 -0
  2. package/dist/@types/config/schemas.js +3 -1
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +15 -17
  5. package/dist/composables/useStripo.js +40 -40
  6. package/dist/config/migrator/recommendationMigrator.js +2 -2
  7. package/dist/extensions/Blocks/CouponBlock/constants.js +4 -0
  8. package/dist/extensions/Blocks/CouponBlock/controls/index.js +29 -0
  9. package/dist/extensions/Blocks/CouponBlock/extension.js +5 -4
  10. package/dist/extensions/Blocks/CouponBlock/settingsPanel.js +20 -14
  11. package/dist/extensions/Blocks/CouponBlock/template.js +22 -11
  12. package/dist/extensions/Blocks/Items/controls/cardComposition.js +13 -4
  13. package/dist/extensions/Blocks/Recommendation/block.js +1 -1
  14. package/dist/extensions/Blocks/Recommendation/constants/blockIds.js +4 -0
  15. package/dist/extensions/Blocks/Recommendation/constants/controlIds.js +4 -0
  16. package/dist/extensions/Blocks/Recommendation/constants/layout.js +7 -0
  17. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +11 -0
  18. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +64 -0
  19. package/dist/extensions/Blocks/Recommendation/controls/cardBackground/index.js +80 -0
  20. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +238 -0
  21. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +19 -0
  22. package/dist/extensions/Blocks/Recommendation/controls/layout/index.js +104 -0
  23. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +86 -0
  24. package/dist/extensions/Blocks/Recommendation/controls/main/currency.js +134 -0
  25. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +54 -0
  26. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +134 -0
  27. package/dist/extensions/Blocks/Recommendation/controls/main/locale.js +64 -0
  28. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +124 -0
  29. package/dist/extensions/Blocks/Recommendation/controls/main/shuffle.js +60 -0
  30. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +112 -0
  31. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +46 -0
  32. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +76 -0
  33. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +44 -0
  34. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +48 -0
  35. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +73 -0
  36. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +73 -0
  37. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +48 -0
  38. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +73 -0
  39. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +73 -0
  40. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +44 -0
  41. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +216 -0
  42. package/dist/extensions/Blocks/Recommendation/extension.js +40 -43
  43. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +5 -0
  44. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +128 -72
  45. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +28 -25
  46. package/dist/extensions/Blocks/Recommendation/templates/horizontal/elementRenderer.js +157 -0
  47. package/dist/extensions/Blocks/Recommendation/templates/horizontal/template.js +72 -0
  48. package/dist/extensions/Blocks/Recommendation/templates/index.js +12 -0
  49. package/dist/extensions/Blocks/Recommendation/templates/utils.js +173 -0
  50. package/dist/extensions/Blocks/Recommendation/templates/vertical/elementRenderer.js +186 -0
  51. package/dist/extensions/Blocks/Recommendation/templates/vertical/migration.js +251 -0
  52. package/dist/extensions/Blocks/Recommendation/templates/vertical/template.js +62 -0
  53. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +9 -9
  54. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +36 -0
  55. package/dist/extensions/Blocks/controlFactories.js +162 -117
  56. package/dist/guido.css +1 -1
  57. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +366 -291
  58. package/dist/package.json.js +1 -1
  59. package/dist/services/stripoApi.js +6 -10
  60. package/dist/src/@types/config/schemas.d.ts +4 -0
  61. package/dist/src/composables/useConfig.d.ts +2 -0
  62. package/dist/src/extensions/Blocks/CouponBlock/constants.d.ts +14 -0
  63. package/dist/src/extensions/Blocks/CouponBlock/controls/index.d.ts +108 -0
  64. package/dist/src/extensions/Blocks/CouponBlock/template.d.ts +1 -1
  65. package/dist/src/extensions/Blocks/Recommendation/constants/blockIds.d.ts +13 -0
  66. package/dist/src/extensions/Blocks/Recommendation/{constants.d.ts → constants/controlIds.d.ts} +19 -11
  67. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +12 -0
  68. package/dist/src/extensions/Blocks/Recommendation/constants/layout.d.ts +17 -0
  69. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +19 -0
  70. package/dist/src/extensions/Blocks/Recommendation/controls/button/index.d.ts +143 -0
  71. package/dist/src/extensions/Blocks/Recommendation/controls/cardBackground/index.d.ts +31 -0
  72. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +95 -0
  73. package/dist/src/extensions/Blocks/Recommendation/controls/image/index.d.ts +35 -0
  74. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +24 -0
  75. package/dist/src/extensions/Blocks/Recommendation/controls/layout/index.d.ts +34 -0
  76. package/dist/src/extensions/Blocks/Recommendation/controls/main/algorithm.d.ts +17 -0
  77. package/dist/src/extensions/Blocks/Recommendation/controls/main/currency.d.ts +16 -0
  78. package/dist/src/extensions/Blocks/Recommendation/controls/main/filters.d.ts +22 -0
  79. package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +43 -0
  80. package/dist/src/extensions/Blocks/Recommendation/controls/main/locale.d.ts +15 -0
  81. package/dist/src/extensions/Blocks/Recommendation/controls/main/productLayout.d.ts +40 -0
  82. package/dist/src/extensions/Blocks/Recommendation/controls/main/shuffle.d.ts +15 -0
  83. package/dist/src/extensions/Blocks/Recommendation/controls/main/utils.d.ts +81 -0
  84. package/dist/src/extensions/Blocks/Recommendation/controls/name/index.d.ts +97 -0
  85. package/dist/src/extensions/Blocks/Recommendation/controls/name/textTrim.d.ts +16 -0
  86. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/index.d.ts +95 -0
  87. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.d.ts +100 -0
  88. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.d.ts +15 -0
  89. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.d.ts +15 -0
  90. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/index.d.ts +100 -0
  91. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.d.ts +15 -0
  92. package/dist/src/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.d.ts +15 -0
  93. package/dist/src/extensions/Blocks/Recommendation/controls/price/index.d.ts +95 -0
  94. package/dist/src/extensions/Blocks/Recommendation/controls/spacing/index.d.ts +72 -0
  95. package/dist/src/extensions/Blocks/Recommendation/extension.d.ts +9 -0
  96. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +16 -16
  97. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/elementRenderer.d.ts +8 -0
  98. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/migration.d.ts +25 -0
  99. package/dist/src/extensions/Blocks/Recommendation/templates/horizontal/template.d.ts +18 -0
  100. package/dist/src/extensions/Blocks/Recommendation/templates/index.d.ts +39 -0
  101. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +45 -0
  102. package/dist/src/extensions/Blocks/Recommendation/templates/vertical/elementRenderer.d.ts +7 -0
  103. package/dist/src/extensions/Blocks/Recommendation/templates/{migrationTemplate.d.ts → vertical/migration.d.ts} +11 -4
  104. package/dist/src/extensions/Blocks/Recommendation/templates/vertical/template.d.ts +33 -0
  105. package/dist/src/extensions/Blocks/Recommendation/utils/preserveTextStyles.d.ts +19 -0
  106. package/dist/src/extensions/Blocks/controlFactories.d.ts +30 -7
  107. package/dist/src/stores/config.d.ts +17 -0
  108. package/dist/static/styles/components/wide-panel.css.js +0 -4
  109. package/dist/static/styles/customEditorStyle.css.js +38 -2
  110. package/package.json +3 -3
  111. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  112. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  113. package/dist/extensions/Blocks/Recommendation/control.js +0 -306
  114. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  115. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  116. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  117. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  118. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  119. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  120. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  121. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  122. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  123. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  124. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  125. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  126. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  127. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  128. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  129. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  130. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  131. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  132. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  133. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  134. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  135. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  136. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  137. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  138. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  139. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  140. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  141. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  142. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  143. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  144. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  145. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  146. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  147. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  148. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  149. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  150. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  151. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  152. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -35
  153. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  154. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  155. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  156. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  157. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  158. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  159. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  160. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  161. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  162. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  163. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  164. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  165. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  166. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  167. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  168. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  169. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  170. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  171. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  172. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  173. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  174. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  175. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  176. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  177. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  178. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  179. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  180. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  181. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  182. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  183. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  184. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  185. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  186. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  187. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  188. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
@@ -1,306 +0,0 @@
1
- var _ = Object.defineProperty;
2
- var R = (s, n, e) => n in s ? _(s, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[n] = e;
3
- var r = (s, n, e) => R(s, typeof n != "symbol" ? n + "" : n, e);
4
- import { currencyDecimalCounts as l, currencyOperators as c, currencyLocationMaps as h } from "../../../enums/extensions/recommendationBlock.js";
5
- import { UEAttr as m, ModificationDescription as S } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
6
- import { CommonControl as g } from "../common-control.js";
7
- import { useRecommendationExtensionStore as O } from "./store/recommendation.js";
8
- import { prepareProductRows as p } from "./templates/blockTemplate.js";
9
- import { DEFAULT_CARD_COMPOSITION as C, getDefaultProducts as E } from "./templates/templateUtils.js";
10
- import { useDebounceFn as U } from "../../../node_modules/@vueuse/shared/index.js";
11
- const L = "ui-elements-recommendation-block", t = {
12
- ALGORITHM: "strategy",
13
- PRODUCT_IDS: "productIds",
14
- LOCALE: "language",
15
- CURRENCY: "value",
16
- CURRENCY_LOCATION: "alignment",
17
- CURRENCY_SYMBOL: "symbol",
18
- CURRENCY_THOUSAND_SEPARATOR: "thousandSeparator",
19
- CURRENCY_DECIMAL_SEPARATOR: "decimalSeparator",
20
- CURRENCY_DECIMAL_COUNT: "decimalCount",
21
- FILTERS: "filterStatus",
22
- PRODUCT_COUNT: "size",
23
- PRODUCT_IN_ROW: "cardsInRow",
24
- SHUFFLE_PRODUCTS: "shuffleProducts",
25
- RESPONSIVE: "unresponsive"
26
- };
27
- class b extends g {
28
- constructor() {
29
- super(...arguments);
30
- r(this, "store", O());
31
- r(this, "storeUnsubscription", () => {
32
- });
33
- r(this, "addFilterListener", () => {
34
- });
35
- r(this, "addFilterButton", null);
36
- r(this, "_debouncedRegenerateProductRows", U(() => {
37
- this._regenerateProductRows();
38
- }, 500));
39
- }
40
- getId() {
41
- return L;
42
- }
43
- getTemplate() {
44
- return `
45
- <div class="recommendation-controls-container">
46
- ${this._getAlgorithms()}
47
- ${this._getLanguages()}
48
- ${this._getCurrency()}
49
- ${this._getFilterStatus()}
50
- ${this._getProductLayout()}
51
- ${this._getShuffleProducts()}
52
- ${this._getResponsive()}
53
- </div>
54
- `;
55
- }
56
- async onRender() {
57
- await Promise.all([
58
- this.store.fetchRecommendationFilters(),
59
- this.store.fetchRecommendationCreateData(),
60
- this.store.fetchRecommendationProducts()
61
- // TODO: We need to change the location. It's just for testing
62
- ]), this._listenStateUpdates(), this._initializeSelectItems(), this._setFormValues(), this._listenToFormUpdates();
63
- }
64
- onDestroy() {
65
- var e;
66
- (e = this.addFilterButton) == null || e.removeEventListener("click", this.addFilterListener), this.storeUnsubscription();
67
- }
68
- _setFormValues() {
69
- const e = this.store.recommendationConfigs;
70
- this._setProductIdsVisibility(), this.api.updateValues({
71
- [t.ALGORITHM]: e.strategy,
72
- [t.PRODUCT_IDS]: e.productIds.join(","),
73
- [t.CURRENCY]: e.currencySettings.value,
74
- [t.LOCALE]: e.language,
75
- [t.CURRENCY_LOCATION]: e.currencySettings.alignment,
76
- [t.CURRENCY_SYMBOL]: e.currencySettings.symbol,
77
- [t.CURRENCY_THOUSAND_SEPARATOR]: e.currencySettings.thousandSeparator,
78
- [t.CURRENCY_DECIMAL_SEPARATOR]: e.currencySettings.decimalSeparator,
79
- [t.CURRENCY_DECIMAL_COUNT]: e.currencySettings.decimalCount,
80
- [t.PRODUCT_COUNT]: e.size,
81
- [t.PRODUCT_IN_ROW]: e.cardsInRow,
82
- [t.SHUFFLE_PRODUCTS]: e.shuffleProducts,
83
- [t.RESPONSIVE]: !e.unresponsive
84
- });
85
- }
86
- _initializeSelectItems() {
87
- const { store: e } = this, o = e.getActivePredictiveAlgorithms, i = e.getLanguages, a = {
88
- [t.ALGORITHM]: o,
89
- [t.LOCALE]: i,
90
- [t.CURRENCY]: e.currencyList,
91
- [t.CURRENCY_LOCATION]: h,
92
- [t.CURRENCY_SYMBOL]: e.getCurrencySymbolList,
93
- [t.CURRENCY_THOUSAND_SEPARATOR]: c,
94
- [t.CURRENCY_DECIMAL_SEPARATOR]: c,
95
- [t.CURRENCY_DECIMAL_COUNT]: l,
96
- [t.PRODUCT_COUNT]: Number(e.recommendationConfigs.size),
97
- [t.PRODUCT_IN_ROW]: e.recommendationConfigs.cardsInRow,
98
- [t.SHUFFLE_PRODUCTS]: e.recommendationConfigs.shuffleProducts,
99
- [t.RESPONSIVE]: !e.recommendationConfigs.unresponsive
100
- };
101
- Object.entries(a).forEach(([u, d]) => {
102
- this.api.setUIEAttribute(u, m.SELECTPICKER.items, d);
103
- });
104
- }
105
- _getAlgorithms() {
106
- return `
107
- ${this._GuTwoColumns([
108
- this._GuLabel({ text: "Recommendation Algorithm" }),
109
- this._GuSelect({
110
- name: t.ALGORITHM,
111
- placeholder: "Select Recommendation Algorithm",
112
- options: this.store.getActivePredictiveAlgorithms
113
- }),
114
- this._GuLabel({ text: "Product Ids", name: `${t.PRODUCT_IDS}_label` }),
115
- this._GuTextInput({
116
- name: t.PRODUCT_IDS,
117
- placeholder: "Enter Product Ids",
118
- className: "es-180w"
119
- })
120
- ])}
121
- `;
122
- }
123
- _getLanguages() {
124
- return `
125
- ${this._GuTwoColumns([
126
- this._GuLabel({ text: "Recommendation Locale" }),
127
- this._GuSelect({
128
- name: t.LOCALE,
129
- placeholder: "Select Recommendation Locale",
130
- options: this.store.getLanguages
131
- })
132
- ])}
133
- `;
134
- }
135
- _getCurrency() {
136
- return `
137
- ${this._GuTwoColumns([
138
- this._GuLabel({ text: "Currency" }),
139
- this._GuSelect({
140
- name: t.CURRENCY,
141
- placeholder: "Select Currency",
142
- options: this.store.currencyList
143
- }),
144
- this._GuLabel({ text: "Currency Location" }),
145
- this._GuSelect({
146
- name: t.CURRENCY_LOCATION,
147
- placeholder: "Select Currency Location",
148
- options: h
149
- }),
150
- this._GuLabel({ text: "Currency Symbol" }),
151
- this._GuSelect({
152
- name: t.CURRENCY_SYMBOL,
153
- placeholder: "Select Currency Symbol",
154
- options: this.store.getCurrencySymbolList
155
- }),
156
- this._GuLabel({ text: "Thousand Separator" }),
157
- this._GuSelect({
158
- name: t.CURRENCY_THOUSAND_SEPARATOR,
159
- placeholder: "Select Thousand Separator",
160
- options: c
161
- }),
162
- this._GuLabel({ text: "Decimal Separator" }),
163
- this._GuSelect({
164
- name: t.CURRENCY_DECIMAL_SEPARATOR,
165
- placeholder: "Select Decimal Separator",
166
- options: c
167
- }),
168
- this._GuLabel({ text: "Decimal Count" }),
169
- this._GuSelect({
170
- name: t.CURRENCY_DECIMAL_COUNT,
171
- placeholder: "Select Decimal Count",
172
- options: l
173
- })
174
- ])}
175
- `;
176
- }
177
- _getProductLayout() {
178
- return `
179
- ${this._GuTwoColumns([
180
- this._GuLabel({ text: "Number of Products" }),
181
- this._GuCounter({ name: t.PRODUCT_COUNT, maxValue: 9 }),
182
- this._GuLabel({ text: "Products in One Row" }),
183
- this._GuCounter({ name: t.PRODUCT_IN_ROW, maxValue: 4 })
184
- ])}
185
- `;
186
- }
187
- _getFilterStatus() {
188
- return `
189
- ${this._GuTwoColumns([
190
- this._GuLabel({ text: "Filters" }),
191
- this._GuButton({
192
- name: t.FILTERS,
193
- label: "Add Filter",
194
- id: "guido__btn-add-filter"
195
- })
196
- ])}
197
- `;
198
- }
199
- _getShuffleProducts() {
200
- return `
201
- ${this._GuTwoColumns([
202
- this._GuLabel({ text: "Shuffle Recommended Products" }),
203
- this._GuToggle(t.SHUFFLE_PRODUCTS)
204
- ])}
205
- `;
206
- }
207
- _getResponsive() {
208
- return `
209
- ${this._GuTwoColumns([
210
- this._GuLabel({ text: "Responsive Block" }),
211
- this._GuToggle(t.RESPONSIVE)
212
- ])}
213
- `;
214
- }
215
- _onFilterChange(e) {
216
- this.currentNode && this.store.$patch({
217
- filterStatus: e,
218
- filterSelectionDrawerStatus: e
219
- });
220
- }
221
- _onFilterSelectClick() {
222
- this.store.$patch({
223
- filterSelectionDrawerStatus: !0
224
- });
225
- }
226
- _onDataChange(e, o) {
227
- this.currentNode && (this.store.$patch({
228
- recommendationConfigs: {
229
- [e]: o
230
- }
231
- }), this._debouncedRegenerateProductRows());
232
- }
233
- /**
234
- * Get the current card composition from block data attribute or use default
235
- */
236
- _getCardComposition() {
237
- if (!this.currentNode)
238
- return C;
239
- const e = this.currentNode.querySelector(".ins-recommendation-v3-block-v2");
240
- if (!e || !("getAttribute" in e))
241
- return C;
242
- const o = e.getAttribute("data-card-composition");
243
- return o ? o.split(",").filter(Boolean) : C;
244
- }
245
- _regenerateProductRows() {
246
- if (!this.currentNode || !("querySelector" in this.currentNode))
247
- return;
248
- const e = this.currentNode.querySelector(".ins-recommendation-product-container");
249
- if (!e) {
250
- console.error("Could not find container table for product rows");
251
- return;
252
- }
253
- const o = this.store.recommendationProducts.length > 0 ? this.store.recommendationProducts : E(), { cardsInRow: i } = this.store.recommendationConfigs, a = this._getCardComposition(), u = p(o, i, a);
254
- this.api.getDocumentModifier().modifyHtml(e).setInnerHtml(u).apply(new S("Updated product"));
255
- }
256
- _onCurrencyConfigChange(e, o) {
257
- this.currentNode && this.store.$patch({
258
- recommendationConfigs: {
259
- currencySettings: {
260
- [e]: o
261
- }
262
- }
263
- });
264
- }
265
- _onCurrencyChange(e) {
266
- const [, o] = e.split(".");
267
- this.store.$patch({
268
- recommendationConfigs: {
269
- currencySettings: {
270
- name: o,
271
- value: o
272
- }
273
- }
274
- });
275
- }
276
- _setProductIdsVisibility() {
277
- const { recommendationConfigs: e } = this.store, o = e.strategy === "manualMerchandising";
278
- this.api.setVisibility(t.PRODUCT_IDS, o), this.api.setVisibility(`${t.PRODUCT_IDS}_label`, o);
279
- }
280
- _listenToFormUpdates() {
281
- var o;
282
- this.api.onValueChanged(t.ALGORITHM, (i) => {
283
- this._onDataChange(t.ALGORITHM, i), this._setProductIdsVisibility();
284
- }), this.api.onValueChanged(t.PRODUCT_IDS, (i) => this._onDataChange(t.PRODUCT_IDS, i.split(",") || [])), this.api.onValueChanged(t.LOCALE, (i) => this._onDataChange(t.LOCALE, i)), this.api.onValueChanged(t.CURRENCY, (i) => this._onCurrencyChange(i)), [
285
- t.CURRENCY_LOCATION,
286
- t.CURRENCY_SYMBOL,
287
- t.CURRENCY_THOUSAND_SEPARATOR,
288
- t.CURRENCY_DECIMAL_SEPARATOR,
289
- t.CURRENCY_DECIMAL_COUNT
290
- ].forEach((i) => {
291
- this.api.onValueChanged(i, (a) => this._onCurrencyConfigChange(i, a));
292
- }), this.api.onValueChanged(t.PRODUCT_COUNT, (i) => this._onDataChange(t.PRODUCT_COUNT, i.toString())), this.api.onValueChanged(t.PRODUCT_IN_ROW, (i) => this._onDataChange(t.PRODUCT_IN_ROW, i)), this.api.onValueChanged(t.SHUFFLE_PRODUCTS, (i) => this._onDataChange(t.SHUFFLE_PRODUCTS, i)), this.api.onValueChanged(t.RESPONSIVE, (i) => this._onDataChange(t.RESPONSIVE, i)), this.addFilterListener = this._onFilterSelectClick.bind(this), this.addFilterButton = this.getContainer().querySelector("#guido__btn-add-filter"), (o = this.addFilterButton) == null || o.addEventListener("click", this.addFilterListener);
293
- }
294
- _listenStateUpdates() {
295
- this.storeUnsubscription = this.store.$subscribe((e) => {
296
- if ("payload" in e) {
297
- const o = e.payload.recommendationConfigs;
298
- o && (this.api.updateValues(o), this.store.fetchRecommendationProducts());
299
- }
300
- });
301
- }
302
- }
303
- export {
304
- L as CONTROL_BLOCK_ID,
305
- b as RecommendationBlockControl
306
- };
@@ -1,13 +0,0 @@
1
- import { ButtonAlignBuiltInControl as t } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class c extends t {
4
- getId() {
5
- return e.BUTTON_ALIGN;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- c as ButtonAlignControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonBorderBuiltInControl as t } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends t {
4
- getId() {
5
- return e.BUTTON_BORDER;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- s as ButtonBorderControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonBorderRadiusBuiltInControl as t } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class i extends t {
4
- getId() {
5
- return e.BUTTON_BORDER_RADIUS;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- i as ButtonBorderRadiusControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonColorBuiltInControl as t } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class c extends t {
4
- getId() {
5
- return e.BUTTON_COLOR;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- c as ButtonColorControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonFitToContainerBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends o {
4
- getId() {
5
- return e.BUTTON_FIT_TO_CONTENT;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- s as ButtonFitToContentControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonFontFamilyBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends o {
4
- getId() {
5
- return e.BUTTON_FONT_FAMILY;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- s as ButtonFontFamilyControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonMarginsBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class m extends o {
4
- getId() {
5
- return e.BUTTON_MARGINS;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- m as ButtonMarginsControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonPaddingsBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class i extends o {
4
- getId() {
5
- return e.BUTTON_PADDINGS;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- i as ButtonPaddingsControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonTextBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class c extends o {
4
- getId() {
5
- return e.BUTTON_TEXT;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- c as ButtonTextControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonTextSizeBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as o, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends e {
4
- getId() {
5
- return o.BUTTON_TEXT_SIZE;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- s as ButtonTextSizeControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ButtonTextStyleAndFontColorBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as e, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends o {
4
- getId() {
5
- return e.BUTTON_TEXT_STYLE_AND_FONT_COLOR;
6
- }
7
- getTargetNodes(t) {
8
- return t.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.BUTTON}"]`);
9
- }
10
- }
11
- export {
12
- s as ButtonTextStyleAndFontColorControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ImageMarginsBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as n } from "../../constants.js";
3
- class l extends o {
4
- getId() {
5
- return t.IMAGE_MARGINS;
6
- }
7
- getTargetNodes(e) {
8
- return e.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.IMAGE}"]`);
9
- }
10
- }
11
- export {
12
- l as ImageMarginsControl
13
- };
@@ -1,13 +0,0 @@
1
- import { ImageSizeBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as n } from "../../constants.js";
3
- class s extends o {
4
- getId() {
5
- return t.IMAGE_SIZE;
6
- }
7
- getTargetNodes(e) {
8
- return e.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.IMAGE}"]`);
9
- }
10
- }
11
- export {
12
- s as ImageSizeControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextAlignBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as n } from "../../constants.js";
3
- class m extends o {
4
- getId() {
5
- return t.NAME_ALIGN;
6
- }
7
- getTargetNodes(e) {
8
- return e.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.NAME}"]`);
9
- }
10
- }
11
- export {
12
- m as NameAlignControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextBlockBackgroundBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class m extends e {
4
- getId() {
5
- return t.NAME_BACKGROUND;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.NAME}"]`);
9
- }
10
- }
11
- export {
12
- m as NameBackgroundControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextColorBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class m extends e {
4
- getId() {
5
- return t.NAME_COLOR;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.NAME}"]`);
9
- }
10
- }
11
- export {
12
- m as NameColorControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextFontFamilyBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as n } from "../../constants.js";
3
- class d extends e {
4
- getId() {
5
- return t.NAME_FONT_FAMILY;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.NAME}"]`);
9
- }
10
- }
11
- export {
12
- d as NameFontFamilyControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextPaddingsBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as n } from "../../constants.js";
3
- class c extends o {
4
- getId() {
5
- return t.NAME_PADDINGS;
6
- }
7
- getTargetNodes(e) {
8
- return e.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${n.NAME}"]`);
9
- }
10
- }
11
- export {
12
- c as NamePaddingsControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextSizeBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class m extends e {
4
- getId() {
5
- return t.NAME_SIZE;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.NAME}"]`);
9
- }
10
- }
11
- export {
12
- m as NameSizeControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextStyleBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class m extends e {
4
- getId() {
5
- return t.NAME_STYLE;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.NAME}"]`);
9
- }
10
- }
11
- export {
12
- m as NameStyleControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextAlignBuiltInControl as o } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class i extends o {
4
- getId() {
5
- return t.OLD_PRICE_ALIGN;
6
- }
7
- getTargetNodes(e) {
8
- return e.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.OLD_PRICE}"]`);
9
- }
10
- }
11
- export {
12
- i as OldPriceAlignControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextBlockBackgroundBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as r, RecommendationBlockId as t } from "../../constants.js";
3
- class i extends e {
4
- getId() {
5
- return r.OLD_PRICE_BACKGROUND;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${t.OLD_PRICE}"]`);
9
- }
10
- }
11
- export {
12
- i as OldPriceBackgroundControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextColorBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as r, RecommendationBlockId as t } from "../../constants.js";
3
- class i extends e {
4
- getId() {
5
- return r.OLD_PRICE_COLOR;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${t.OLD_PRICE}"]`);
9
- }
10
- }
11
- export {
12
- i as OldPriceColorControl
13
- };
@@ -1,13 +0,0 @@
1
- import { TextFontFamilyBuiltInControl as e } from "../../../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationControlId as t, RecommendationBlockId as r } from "../../constants.js";
3
- class i extends e {
4
- getId() {
5
- return t.OLD_PRICE_FONT_FAMILY;
6
- }
7
- getTargetNodes(o) {
8
- return o.closest(".ins-recommendation-product-container").querySelectorAll(`[esd-extension-block-id="${r.OLD_PRICE}"]`);
9
- }
10
- }
11
- export {
12
- i as OldPriceFontFamilyControl
13
- };